:root{--brand-cyan:#22d3ee;--brand-blue:#2563eb;--brand-blue-strong:#1d4ed8;--brand-amber:#f7b733;--brand-amber-strong:#f59e0b;--text:#51596b;--text-h:#0f1729;--bg:#f6f8fc;--surface:#fff;--surface-2:#eef3fb;--border:#e3e9f3;--accent:var(--brand-blue);--accent-contrast:#fff;--success:#0f9d6b;--success-bg:#0f9d6b1f;--success-border:#0f9d6b6b;--support:var(--brand-amber-strong);--support-bg:#f59e0b21;--support-border:#f59e0b73;--pending:var(--brand-blue);--pending-bg:#2563eb1a;--pending-border:#2563eb57;--gradient:linear-gradient(135deg, var(--brand-cyan) 0%, var(--brand-blue) 100%);--shadow-sm:0 1px 2px #0f17290f, 0 2px 6px #0f17290d;--shadow-md:0 10px 30px -12px #2563eb47, 0 6px 14px -10px #0f17292e;--radius:18px;--radius-sm:12px;--ring:0 0 0 4px #2563eb38;--sans:system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;font:17px/1.55 var(--sans);letter-spacing:.1px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#aab3c5;--text-h:#f3f6fc;--bg:#0c1018;--surface:#151b26;--surface-2:#1b2330;--border:#28313f;--success:#34d399;--success-bg:#34d39924;--success-border:#34d39966;--support:#fbbf24;--support-bg:#fbbf2424;--support-border:#fbbf246b;--pending:#60a5fa;--pending-bg:#60a5fa24;--pending-border:#60a5fa66;--shadow-sm:0 1px 2px #0006, 0 2px 8px #00000052;--shadow-md:0 16px 36px -16px #000000a6, 0 6px 16px -10px #00000080;--ring:0 0 0 4px #60a5fa4d}}*{box-sizing:border-box}body{background-color:var(--bg);background-image:radial-gradient(60ch 40ch at 12% -8%,#22d3ee1f,#0000 60%),radial-gradient(70ch 44ch at 110% 6%,#2563eb1f,#0000 60%);background-repeat:no-repeat;background-attachment:fixed;min-height:100svh;margin:0}#root{flex-direction:column;width:100%;max-width:100%;min-height:100svh;margin:0 auto;display:flex}p{margin:0}button{font-family:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.app-shell{align-content:start;gap:1.25rem;width:100%;max-width:600px;margin:0 auto;padding:clamp(1.5rem,5vw,3rem) clamp(1rem,4vw,1.5rem) 3rem;display:grid}.app-header{text-align:center;justify-items:center;gap:.5rem;animation:.5s both rise-in;display:grid}.brand{margin:0;line-height:0}.brand img{vertical-align:middle;filter:drop-shadow(0 6px 16px #2563eb2e);width:clamp(190px,58vw,260px);height:auto;display:inline-block}.subtitle{max-width:36ch;color:var(--text);margin:0;font-size:1.02rem}.task-form,.action-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);animation:.5s both rise-in}.task-form{gap:.85rem;padding:1.25rem;animation-delay:60ms;display:grid}.task-form label{color:var(--text-h);text-align:center;font-size:1.05rem;font-weight:650}.task-form input{font:inherit;color:var(--text-h);background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.8rem .95rem;transition:border-color .18s,box-shadow .18s,background .18s}.task-form input::placeholder{color:color-mix(in srgb, var(--text) 70%, transparent)}.task-form input:focus-visible{border-color:var(--accent);background:var(--surface);box-shadow:var(--ring);outline:none}.btn-primary,.btn-step,.btn-ghost{font:inherit;border-radius:var(--radius-sm);cursor:pointer;font-weight:650;transition:transform .12s,box-shadow .18s,background .18s,border-color .18s,opacity .18s}.btn-primary:focus-visible,.btn-step:focus-visible,.btn-ghost:focus-visible{box-shadow:var(--ring);outline:none}.btn-primary{color:var(--accent-contrast);background-image:var(--gradient);border:none;padding:.85rem 1rem;font-size:1.05rem;box-shadow:0 8px 18px -8px #2563eb99}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 22px -8px #2563ebb3}.btn-primary:active:not(:disabled){transform:translateY(0)scale(.99)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn-step{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--surface));border:1.5px solid color-mix(in srgb, var(--accent) 35%, transparent);white-space:nowrap;padding:.5rem .9rem}.btn-step:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 16%, var(--surface));transform:translateY(-1px)}.btn-step:active:not(:disabled){transform:scale(.97)}.btn-step:disabled{color:var(--success);background:var(--success-bg);border-color:var(--success-border);cursor:default;opacity:1}.btn-ghost{color:var(--text-h);background:var(--surface-2);border:1.5px solid var(--border);padding:.55rem .95rem}.btn-ghost:hover{border-color:var(--support-border);color:var(--support);background:var(--support-bg)}.btn-ghost:active{transform:scale(.98)}.status-message{border-radius:var(--radius);text-align:center;border:1px solid #0000;margin:0;padding:1rem 1.15rem;font-size:1.3rem;font-weight:700;line-height:1.35;animation:.4s cubic-bezier(.2,.9,.3,1.2) both pop-in}.status-message.success{background:var(--success-bg);border-color:var(--success-border);color:var(--text-h)}.status-message.support{background:var(--support-bg);border-color:var(--support-border);color:var(--text-h)}.status-message.pending{background:var(--pending-bg);border-color:var(--pending-border);color:var(--text-h);padding-left:2.6rem;font-size:1.08rem;position:relative}.status-message.pending:before{content:"";border:2.5px solid color-mix(in srgb, var(--pending) 35%, transparent);border-top-color:var(--pending);border-radius:999px;width:1rem;height:1rem;animation:.8s linear infinite spin;position:absolute;top:50%;left:1.1rem;transform:translateY(-50%)}.action-panel{gap:1.1rem;padding:1.25rem;display:grid}.timer{gap:.55rem;display:grid}.timer-row{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.timer-label{color:var(--text);margin:0;font-weight:600}.timer-value{font-variant-numeric:tabular-nums;letter-spacing:.5px;color:var(--text-h);margin:0;font-size:1.5rem;font-weight:800}.timer-track{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.timer-fill{background-image:var(--gradient);border-radius:999px;height:100%;transition:width 1s linear}.step-progress{justify-content:center;gap:.5rem;display:flex}.pip{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;width:36px;height:6px;transition:background .3s,border-color .3s,transform .3s}.pip.filled{background-image:var(--gradient);border-color:#0000;transform:scaleY(1.15)}.steps-list{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.steps-list li{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);animation:.4s both slide-in;animation-delay:calc(var(--row-index,0) * 80ms);align-items:center;gap:.75rem;padding:.8rem .9rem;transition:background .25s,border-color .25s,opacity .25s;display:flex}.step-index{background-image:var(--gradient);color:#fff;border-radius:999px;flex:none;place-items:center;width:1.9rem;height:1.9rem;font-size:.95rem;font-weight:800;transition:transform .25s;display:grid;box-shadow:0 4px 10px -4px #2563eb99}.step-text{color:var(--text-h);flex:auto;line-height:1.4}.steps-list li.is-done{background:var(--success-bg);border-color:var(--success-border)}.steps-list li.is-done .step-text{color:var(--text);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--success) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--success) 60%, transparent)}.steps-list li.is-done .step-index{background:0 0;background-color:var(--success);box-shadow:none;transform:scale(1.05)}.btn-step:disabled:before{content:"✓";margin-right:.35rem;font-weight:900;animation:.35s cubic-bezier(.2,.9,.3,1.4) both pop-in;display:inline-block}.actions-row{border-top:1px dashed var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding-top:.25rem;display:flex}.progress-copy{color:var(--text);margin:0;font-weight:600}@keyframes spin{to{transform:translateY(-50%)rotate(360deg)}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
