:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:#f3f6fc;--card:#fff;--ink:#253449;--line:#c6d2e4;--accent:#a85506;--track:#dbe4ef}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#101b2b;--card:#1c2d42;--ink:#f3f6fc;--line:#59718e;--accent:#ffb34f;--track:#344a66}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:system-ui,sans-serif}button,input{font:inherit;border:1px solid var(--line);background:var(--card);min-height:48px;color:var(--ink);border-radius:.75rem;padding-inline:1rem}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.landing{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));place-items:center;display:grid}.landing-card{text-align:center;width:min(100%,48rem);padding:clamp(1rem,5vw,3rem)}.home-link{border:1px solid var(--line);min-height:48px;color:var(--ink);background:var(--card);border-radius:.75rem;justify-content:center;align-items:center;padding:.75rem 1rem;display:inline-flex}.home-link:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.cat{aspect-ratio:1;width:clamp(8rem,22vw,12rem);height:auto;display:inline-block}.cat img{vertical-align:middle;width:100%;height:auto}h1{margin-block:1rem 1.5rem;font-size:clamp(1.5rem,4vw,2.25rem);line-height:1.35}.progress-trigger{background:0 0;border:0;width:100%;padding:14px 0}progress{appearance:none;background:var(--track);border:none;border-radius:99px;width:100%;height:20px;display:block;overflow:hidden}progress::-webkit-progress-bar{background:var(--track)}progress::-webkit-progress-value{background:var(--accent);transition:width 1s ease-out}progress::-moz-progress-bar{background:var(--accent)}.percent{margin-block:.5rem;font-size:1.5rem;font-weight:700}dialog{border:1px solid var(--line);background:var(--card);width:min(100% - 2rem,25rem);color:var(--ink);border-radius:1.5rem;padding:1.5rem}dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#101b2bbf}dialog h2{margin-block-start:0}dialog label{margin-block:1rem .5rem;display:block}dialog input{width:100%}.dialog-actions{justify-content:space-between;gap:1rem;margin-block-start:1.5rem;display:flex}.shake{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.progress-page{min-height:100dvh;padding:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));background:linear-gradient(145deg,#14243a,#253a58)}.preview{pointer-events:none;border:0;width:100%;height:100%;position:fixed;inset:0}.task-panel{color:#f8fbff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#14243ab3;border-radius:1.5rem;width:100%;padding:clamp(1rem,3vw,2rem);position:relative}.task-panel header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.task-panel header h1{margin-block:0 .5rem}.task-panel header p{margin-block:0 1rem}.task-panel code{font-size:.8rem}.milestones{columns:1;column-gap:2rem}.milestone{break-inside:avoid;margin-block-end:1.5rem}.milestone h2{margin-block:0 .75rem;font-size:1.1rem}ul{margin:0;padding:0;list-style:none}li{gap:.6rem;padding-block:.3rem;font-size:.95rem;line-height:1.4;display:flex}li>span:first-child{flex:0 0 1rem}li[data-status=done]{color:#a5f4c7}li[data-status=doing]{color:#ffe19a}@media (min-width:600px){.milestones{columns:2}}@media (min-width:900px){.milestones{columns:3}}@media (min-width:1280px){.milestones{columns:4}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
