:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f172a;--panel:#0f172adb;--panel-strong:#111827;--card:#1f2937;--muted:#94a3b8;--text:#f8fafc;--accent:#f97316;--accent-2:#facc15;--green:#22c55e;--blue:#38bdf8;--red:#fb7185;--line:#94a3b833;font-family:Inter,Pretendard,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #f973162e, transparent 36rem), radial-gradient(circle at 90% 10%, #38bdf81f, transparent 28rem), var(--bg);color:var(--text);margin:0}button,select,input{font:inherit}button{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#ffffff0f;border-radius:14px;padding:.85rem 1rem;transition:transform .12s,background .12s,border-color .12s}button:hover:not(:disabled){background:#f9731621;border-color:#f97316a6;transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{color:#fff;background:linear-gradient(135deg,#fb923c,#ef4444);border:0;font-weight:800}select,input[type=range]{width:100%}select{border:1px solid var(--line);color:var(--text);background:#111827;border-radius:12px;margin-top:.4rem;padding:.75rem}input[type=range]{accent-color:var(--accent);margin-top:.8rem}label{color:#dbeafe;font-size:.93rem;line-height:1.45;display:block}label+label,.controls .toggles{margin-top:1rem}.app-shell{width:min(1480px,100% - 32px);margin:0 auto;padding:2rem 0 4rem}.hero{grid-template-columns:1fr auto;align-items:end;gap:1rem;margin-bottom:1.5rem;display:grid}.eyebrow{color:var(--accent-2);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .4rem;font-size:.75rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1{margin-bottom:1rem;font-size:clamp(2rem,4vw,4.7rem);line-height:.98}h2{margin-bottom:1rem;font-size:1.35rem}h3{color:#e2e8f0;margin:1.3rem 0 .5rem;font-size:1rem}.wake-lock-status{color:var(--muted);margin:-.65rem 0 0;font-size:.82rem;font-weight:700}.wake-lock-status.active{color:var(--green)}.wake-lock-status.error,.wake-lock-status.unsupported{color:var(--red)}.hero-copy{color:var(--muted);max-width:760px;margin-bottom:0;font-size:1.04rem;line-height:1.7}.hero-card{background:linear-gradient(135deg,#f9731633,#111827f2);border:1px solid #f9731659;border-radius:24px;min-width:260px;padding:1.2rem;box-shadow:0 22px 60px #00000047}.hero-card-label,.hero-card span:last-child{color:var(--muted);font-size:.85rem;display:block}.hero-card strong{margin:.35rem 0;font-size:1.18rem;display:block}.layout{grid-template-columns:330px minmax(420px,1fr) 360px;align-items:start;gap:1rem;display:grid}.panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:28px;padding:1.15rem;box-shadow:0 16px 50px #0000002e}.controls,.plan-panel{position:sticky;top:1rem}.toggles{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.check{border:1px solid var(--line);background:#ffffff0a;border-radius:14px;align-items:center;gap:.55rem;padding:.7rem;display:flex}.check input{accent-color:var(--accent)}.vibration-control{grid-template-columns:1fr auto;gap:.5rem;display:grid}.vibration-control .check{min-width:0}.vibration-control span{color:var(--muted);grid-column:1/-1;font-size:.78rem}button.compact{border-radius:12px;padding:.7rem .75rem;font-size:.86rem;font-weight:700}.timer-panel{min-height:620px}.timer-top{justify-content:space-between;align-items:start;gap:1rem;display:flex}.pill{border:1px solid var(--line);color:#e0f2fe;white-space:nowrap;background:#38bdf814;border-radius:999px;padding:.4rem .7rem;font-size:.82rem}.pill.flip,.pill.sear,.pill.baste{color:#fed7aa;background:#f9731621}.pill.rest{color:#bbf7d0;background:#22c55e1f}.pill.checkpoint{color:#fef3c7;background:#facc151f}.timer-display{letter-spacing:-.07em;font-variant-numeric:tabular-nums;margin:1.4rem 0 1rem;font-size:clamp(4.5rem,12vw,10rem);font-weight:900;line-height:1}.progress-wrap{margin-bottom:1rem}.progress-bar{background:#ffffff14;border-radius:999px;height:13px;overflow:hidden}.progress-bar span{border-radius:inherit;background:linear-gradient(90deg,#f97316,#facc15);height:100%;transition:width .2s;display:block}.progress-meta{color:var(--muted);justify-content:space-between;margin-top:.45rem;font-size:.8rem;display:flex}.instruction{border-left:4px solid var(--accent);color:#ffedd5;background:#f9731614;border-radius:14px;min-height:68px;padding:.85rem 1rem;line-height:1.65}.hold-note{color:#fef3c7;background:#facc151a;border:1px solid #facc1559;border-radius:14px;margin-bottom:1rem;padding:.85rem}.timer-actions{grid-template-columns:1.2fr 1fr .8fr .8fr;gap:.65rem;margin:1rem 0;display:grid}.phase-list{gap:.5rem;max-height:380px;padding-right:.25rem;display:grid;overflow:auto}.phase{text-align:left;background:#ffffff09;border-radius:14px;justify-content:space-between;align-items:center;gap:.7rem;padding:.75rem .9rem;display:flex}.phase small{color:var(--muted);white-space:nowrap}.phase.active{background:#f9731621;border-color:#f97316a6}.phase.done{opacity:.72}.stat-grid{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.stat-grid div{border:1px solid var(--line);background:#ffffff0a;border-radius:16px;padding:.78rem}.stat-grid span{color:var(--muted);margin-bottom:.3rem;font-size:.78rem;display:block}.stat-grid strong{font-size:1rem;display:block}.notice{color:#e0f2fe;background:#38bdf814;border:1px solid #38bdf847;border-radius:16px;margin-top:.85rem;padding:.85rem;line-height:1.55}.notice.danger{color:#ffe4e6;background:#fb71851f;border-color:#fb718566}.notice.subtle{border-color:var(--line);color:#e2e8f0;background:#ffffff09}ul{color:#cbd5e1;margin-top:.4rem;padding-left:1.1rem;line-height:1.58}li+li{margin-top:.25rem}.source-panel{margin-top:1rem}.source-panel p{color:#cbd5e1;line-height:1.7}.source-grid{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.source-grid a{color:#bfdbfe;border:1px solid var(--line);background:#ffffff0a;border-radius:14px;padding:.85rem;text-decoration:none}.source-grid a:hover{border-color:#38bdf88c}@media (width<=1180px){.layout{grid-template-columns:1fr}.controls,.plan-panel{position:static}.hero{grid-template-columns:1fr}.source-grid{grid-template-columns:1fr 1fr}}@media (width<=680px){.app-shell{width:min(100% - 20px,100%);padding-top:1rem}.panel,.hero-card{border-radius:20px}.timer-actions,.stat-grid,.toggles,.source-grid{grid-template-columns:1fr}.timer-display{font-size:5rem}}
