*{box-sizing:border-box}html{font-family:var(--font-sans);-webkit-text-size-adjust:100%;font-synthesis:none;text-rendering:optimizeLegibility}html,body{margin:0;padding:0;width:100%;max-width:100%}body{background:var(--bg);color:var(--ink);font-size:var(--text-md);line-height:1.5;padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px))}body.timer-visible{padding-bottom:var(--dock-space, calc(var(--nav-height) + env(safe-area-inset-bottom, 0px)))}#app{display:flex;flex-direction:column;min-height:100dvh}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-muted)}.app-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:var(--gap-md);min-height:var(--header-height);padding:8px clamp(14px,4vw,28px);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}:root[data-embed="1"] .app-header{display:none}.header-brand{display:flex;align-items:center;gap:var(--gap-sm);min-width:0}.brand-logo{height:30px;width:auto;object-fit:contain}.brand-mark{height:30px;width:30px;object-fit:contain;flex:none}.brand-text{display:flex;flex-direction:column;line-height:1.15;min-width:0}.brand-text b{font-size:var(--text-sm);letter-spacing:.01em}.brand-text span{font-size:var(--text-xs);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.12em}.header-actions{display:flex;gap:var(--gap-xs)}.app-shell{display:flex;min-height:100dvh}.app-main{flex:1;min-width:0;display:flex;flex-direction:column}.app-sidebar{display:flex;flex-direction:column;gap:2px;padding:12px 10px calc(12px + env(safe-area-inset-bottom,0px))}.sidebar-head{display:flex;align-items:center;gap:6px;padding:2px 4px 12px}.sidebar-brand{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:4px 6px;border:0;border-radius:var(--radius-md);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.sidebar-brand:hover{background:var(--surface-soft)}.sidebar-brand .brand-text{display:flex;flex-direction:column;line-height:1.1;min-width:0}.sidebar-brand .brand-text b{font-size:var(--text-sm)}.sidebar-brand .brand-text span{font-size:var(--text-xs);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.1em}.sidebar-collapse{flex:none;color:var(--ink-muted)}.sidebar-collapse .icon{transform:rotate(90deg)}.sidebar-foot{display:flex;flex-direction:column;gap:2px}.sidebar-version{padding:8px 12px 2px;font-size:var(--text-xs);color:var(--ink-muted)}.sidebar-new{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;margin-bottom:8px;padding:8px 12px;border:0;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-ink);font:inherit;font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:background .15s ease}.sidebar-new:hover{background:var(--accent-strong)}.sidebar-new .icon{width:18px;height:18px;flex:none}.sidebar-item{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--ink-soft);font:inherit;font-size:var(--text-sm);font-weight:650;text-align:left;cursor:pointer}.sidebar-item:hover{background:var(--surface-soft)}.sidebar-item.active{background:var(--accent-soft);color:var(--accent-strong)}.sidebar-icon{width:18px;height:18px;flex:none}.sidebar-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-badge{flex:none;min-width:20px;text-align:center;font-size:11px;font-weight:750;color:var(--accent-strong);background:var(--accent-soft);border-radius:var(--radius-pill);padding:1px 6px}.sidebar-item.active .sidebar-badge{background:var(--surface-raised)}.sidebar-sep{height:1px;background:var(--line);margin:6px 4px}.sidebar-spacer{flex:1}@media (min-width: 900px){:root{--sidebar-w: 210px}body.sidebar-collapsed{--sidebar-w: 66px}.app-header,.sidebar-backdrop{display:none}.app-sidebar{width:var(--sidebar-w);flex:none;position:sticky;top:0;height:100dvh;overflow:hidden;border-right:1px solid var(--line);background:var(--surface);transition:width .18s ease}body.sidebar-collapsed .app-sidebar{padding-left:8px;padding-right:8px}body.sidebar-collapsed .sidebar-label,body.sidebar-collapsed .sidebar-new-label,body.sidebar-collapsed .sidebar-brand .brand-text{display:none}body.sidebar-collapsed .sidebar-new{padding-left:0;padding-right:0}body.sidebar-collapsed .sidebar-head{flex-direction:column;gap:8px;padding-bottom:10px}body.sidebar-collapsed .sidebar-brand{justify-content:center;padding:4px}body.sidebar-collapsed .sidebar-item{justify-content:center;padding-left:0;padding-right:0}body.sidebar-collapsed .sidebar-collapse .icon{transform:rotate(-90deg)}body.sidebar-collapsed .sidebar-badge{position:absolute;top:4px;right:12px;min-width:8px;width:8px;height:8px;padding:0;font-size:0;line-height:0}}@media (max-width: 899.98px){:root{--nav-height: 52px}.app-sidebar{position:fixed;z-index:90;top:0;left:0;bottom:0;width:min(78vw,280px);background:var(--surface-raised);border-right:1px solid var(--line-strong);transform:translate(-105%);transition:transform .2s ease}body.sidebar-open .app-sidebar{transform:none;box-shadow:var(--shadow-float)}.sidebar-backdrop{position:fixed;inset:0;z-index:89;background:color-mix(in srgb,var(--ink) 32%,transparent);opacity:0;pointer-events:none;transition:opacity .2s ease}body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}}.phase-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;min-height:var(--nav-height);padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line)}.phase-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 2px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--ink-muted);font:inherit;font-size:var(--text-xs);font-weight:620;cursor:pointer;transition:background .15s ease,color .15s ease}.phase-btn .nav-icon{width:22px;height:22px}.phase-btn:hover{color:var(--ink-soft)}.phase-btn.active{color:var(--accent);background:var(--accent-soft)}.phase-btn:disabled{opacity:.35;cursor:default}.phase-btn{position:relative}.phase-btn.done:after{content:"\2713";position:absolute;top:2px;right:calc(50% - 20px);width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-radius:99px;background:var(--ok);color:#fff;font-size:9px;font-weight:900;line-height:1}@media (min-width: 900px){.phase-btn.done:after{top:4px;right:6px}}@media (max-width: 899.98px){.phase-nav{padding:3px 8px calc(3px + env(safe-area-inset-bottom,0px))}.phase-btn{gap:2px;padding:3px 2px}.phase-btn .nav-icon{width:18px;height:18px}.phase-btn .phase-label{font-size:10px}}body.no-session .phase-nav{display:none}body.no-session{padding-bottom:0}.warnings{margin:var(--gap-md) auto 0;width:min(860px,calc(100% - 28px));display:grid;gap:var(--gap-xs)}.warnings.hidden{display:none}.warnings p{margin:0;padding:10px 14px;border-radius:var(--radius-md);background:var(--warn-soft);color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent);font-size:var(--text-sm);font-weight:560}.screen-row{flex:1;display:flex;flex-direction:column}.screen{width:min(860px,calc(100% - 28px));margin:var(--gap-md) auto var(--gap-lg);display:grid;gap:var(--gap-md);align-content:start;flex:1}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.card-head{display:flex;align-items:center;gap:var(--gap-sm);min-height:52px;padding:6px 18px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.card-icon{width:20px;height:20px;color:var(--accent);flex:none}.card-title{margin:0;font-size:var(--text-md);font-weight:700;letter-spacing:.01em;flex:1;min-width:0}.card-actions{display:flex;align-items:center;gap:var(--gap-xs)}.card-body{padding:16px 18px;display:grid;gap:var(--gap-md)}.head-meta{font-size:var(--text-sm);font-weight:700;color:var(--ink-soft);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-pill);padding:3px 10px;white-space:nowrap;font-variant-numeric:tabular-nums}.temp-badge{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--touch);padding:8px 18px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink);font:inherit;font-size:var(--text-sm);font-weight:650;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .05s ease}.btn:hover{border-color:var(--accent)}.btn:active{transform:scale(.985)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn.ghost{background:transparent}.btn.small{min-height:36px;padding:5px 14px}.btn.danger{border-color:var(--danger);color:var(--danger)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--ink-soft);cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.icon-btn .icon{width:20px;height:20px}.icon-btn:hover{border-color:var(--accent);color:var(--accent)}.icon-btn.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.icon-btn.accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.icon-btn.accent:hover{background:var(--accent-strong)}.icon-btn.subtle{border-color:transparent;background:transparent}.icon-btn.small-btn{width:32px;height:32px}.icon-btn.small-btn .icon{width:15px;height:15px}input[type=text],input[type=date],input[type=time],textarea{font:inherit;color:var(--ink);background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:8px 10px;min-height:40px;width:100%;transition:border-color .15s ease,box-shadow .15s ease}input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}input::placeholder{color:var(--ink-muted);opacity:.8}.field{display:grid;gap:5px;min-width:0}.field-label{font-size:var(--text-sm);font-weight:620;color:var(--ink-soft)}.field-line{display:flex;align-items:center;gap:8px;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding-right:10px}.field-line input{border:0;background:transparent;min-height:var(--touch);font-size:var(--text-lg);font-weight:650;font-variant-numeric:tabular-nums}.field-line input:focus-visible{box-shadow:none}.field-line:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.field-unit{color:var(--ink-muted);font-size:var(--text-sm);font-weight:650;white-space:nowrap}.cell-edit{display:inline-flex;align-items:center;gap:6px;min-width:0}.cell-edit input{width:82px;min-height:40px;text-align:right;font-weight:650;font-variant-numeric:tabular-nums;background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface-raised));border-color:color-mix(in srgb,var(--accent) 35%,var(--line-strong))}.cell-edit b{font-size:var(--text-sm);color:var(--ink-muted);font-weight:650}.toast{position:fixed;left:50%;bottom:calc(var(--nav-height) + 18px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:90;max-width:min(480px,calc(100vw - 32px));padding:10px 18px;border-radius:var(--radius-pill);background:var(--ink);color:var(--bg);font-size:var(--text-sm);font-weight:650;box-shadow:var(--shadow-float);animation:toast-in .18s ease}.toast.error{background:var(--danger);color:#fff}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.timer-dock{position:fixed;left:50%;transform:translate(-50%);bottom:calc(var(--nav-height) + 10px + env(safe-area-inset-bottom,0px));z-index:50;width:min(560px,calc(100vw - 20px));display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--gap-sm);padding:10px 14px;border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--line-strong);box-shadow:var(--shadow-float)}.timer-dock.hidden{display:none}.timer-dock.guide-controller{display:block;left:0;right:0;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));transform:none;width:auto;max-width:none;padding:3px 4px 5px;border:0;border-top:1px solid var(--line-strong);border-radius:0;box-shadow:none;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.timer-dock.guide-controller .guide-c-row{max-width:860px}.guide-reopen{position:fixed;left:14px;bottom:calc(var(--nav-height) + 12px + env(safe-area-inset-bottom,0px));z-index:45;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 14px 6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--surface-raised) 92%,transparent);backdrop-filter:blur(10px);color:var(--ink);font:inherit;font-size:var(--text-sm);font-weight:700;cursor:pointer;box-shadow:var(--shadow-float)}.guide-reopen .icon{width:16px;height:16px;color:var(--accent)}.guide-reopen.hidden{display:none}.guide-c-row{display:flex;align-items:center;gap:8px;padding:5px 10px 7px;max-width:760px;margin:0 auto}.guide-nav{width:34px;height:34px;flex:none;border-radius:var(--radius-pill)}.guide-nav.disabled-look{opacity:.3;pointer-events:none}.guide-c-main{flex:1;min-width:0;display:grid;gap:0}.guide-c-main.is-done{opacity:.6}.guide-c-main.linkable{cursor:pointer}.guide-c-main.linkable:hover .guide-c-title{text-decoration:underline dotted color-mix(in srgb,var(--accent) 60%,transparent);text-underline-offset:3px}.guide-kicker{display:inline-flex;align-items:center;gap:4px;min-width:0;font-size:10px;color:var(--ink-muted);font-weight:700;text-transform:uppercase;letter-spacing:.05em;line-height:1.3}.guide-kicker>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-kicker-icon{width:12px;height:12px;color:var(--accent)}.guide-c-title{font-size:var(--text-md);font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-c-detail{color:var(--ink-muted);font-weight:500;font-size:var(--text-sm)}.guide-c-next{color:var(--ink-muted);font-weight:500;font-size:var(--text-sm);opacity:.8}.guide-next-label{color:var(--accent)}.guide-c-time{font-size:var(--text-lg);font-weight:750;letter-spacing:.01em;flex:none}.guide-c-time.peek{font-size:var(--text-sm);font-weight:650;color:var(--ink-muted)}.guide-now-link{border:0;background:transparent;color:var(--accent);font:inherit;font-size:10px;font-weight:700;text-transform:none;letter-spacing:0;cursor:pointer;padding:0 0 0 4px}.guide-c-btn{flex:none;min-height:32px;padding:3px 14px;font-size:var(--text-sm);font-weight:700}.guide-c-btn.confirm,.guide-c-btn-accent{animation:pulse 1.4s ease infinite}.guide-done-tag{flex:none;font-size:var(--text-sm);font-weight:700;color:var(--accent)}.icon-btn.guide-x{width:28px;height:28px;flex:none;color:var(--ink-muted);border:0;background:transparent}.guide-dock.copilot .guide-c-main{gap:2px}.guide-dock.copilot .guide-c-title{font-size:var(--text-lg);white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.guide-c-why{color:var(--ink-muted);font-weight:500;font-size:var(--text-sm);line-height:1.35;overflow:hidden;text-overflow:ellipsis}.guide-dock.copilot .guide-kicker-icon{width:14px;height:14px}@media (max-width: 560px){.guide-c-detail,.guide-c-next{display:none}.guide-c-row{gap:6px;padding:4px 6px 6px}.guide-nav{width:30px;height:30px}.guide-c-time{font-size:var(--text-md)}.guide-dock.copilot .guide-c-why .guide-c-next{display:none}}@media (max-width: 899.98px){.guide-nav{width:40px;height:40px}.icon-btn.guide-x{width:38px;height:38px}}.guide-flash{animation:guideFlash 1.8s ease}@keyframes guideFlash{0%{outline:3px solid transparent;outline-offset:2px}15%,55%{outline:3px solid color-mix(in srgb,var(--accent) 65%,transparent);outline-offset:2px}to{outline:3px solid transparent;outline-offset:2px}}[data-guide-anchor]{scroll-margin:90px}.card.guide-current-card{outline:2px solid var(--accent);outline-offset:-1px;box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 18%,transparent)}.timer-dock.done{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent),var(--shadow-float)}.dock-info{display:flex;flex-direction:column;min-width:0}.dock-action{font-size:var(--text-xs);color:var(--ink-muted);font-weight:650;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-target{font-size:var(--text-md);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-clock{display:flex;flex-direction:column;align-items:flex-end}.dock-time{font-size:var(--text-xl);font-weight:750;line-height:1.05;letter-spacing:.01em}.dock-stage{font-size:var(--text-xs);color:var(--ink-muted);font-weight:600;white-space:nowrap}.dock-controls{display:flex;gap:4px}.dock-btn{width:42px;height:42px;border-radius:var(--radius-pill)}.dock-btn.main{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.dock-btn.main:hover{background:var(--accent-strong)}.dock-btn.main.confirm{animation:pulse 1.4s ease infinite}.dock-confirm{grid-column:1 / -1;order:5;min-height:46px;animation:pulse 1.4s ease infinite}@keyframes pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 45%,transparent)}50%{box-shadow:0 0 0 8px transparent}}@media (min-width: 900px){:root{--nav-height: 52px}.phase-nav{left:var(--sidebar-w);grid-template-columns:repeat(5,minmax(0,150px));justify-content:center;min-height:52px;padding:6px 16px}.phase-btn{flex-direction:row;gap:8px;font-size:var(--text-sm);padding:8px 12px}.phase-btn .nav-icon{width:19px;height:19px}.screen{margin-top:var(--gap-lg)}.timer-dock{left:auto;right:24px;transform:none;bottom:24px;width:380px}.timer-dock.guide-controller{left:var(--sidebar-w);right:0;transform:none;width:auto}.guide-reopen{left:calc(var(--sidebar-w) + 16px)}.toast{bottom:24px}}.guide-column{display:none}body.guide-col .screen-row{display:grid;grid-template-columns:minmax(0,860px) 340px;gap:24px;justify-content:center;align-items:start;padding:0 14px}body.guide-col .screen{width:100%;max-width:860px;margin-left:0;margin-right:0}body.guide-col .guide-column{display:flex;flex-direction:column;gap:12px;position:sticky;top:14px;margin-top:var(--gap-lg);max-height:calc(100dvh - 14px - var(--gap-lg))}body.guide-col .guide-column .copilot-checklist{overflow-y:auto;min-height:0;overscroll-behavior:contain}body.guide-col .guide-column .copilot-checklist .card-head{position:sticky;top:0;background:var(--surface);z-index:1}body.guide-col .guide-column .timer-dock.guide-controller{position:static;width:100%;padding:0;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none;overflow:hidden}body.guide-col .guide-c-row{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:22px 62px 40px 44px;align-items:center;gap:6px 8px;max-width:none;margin:0;padding:12px 16px 14px}body.guide-col .guide-c-row>.guide-x{grid-area:1 / 1 / 2 / -1;justify-self:end;margin:-2px -6px 0 0}body.guide-col .guide-c-row>.guide-c-main{grid-area:2 / 1 / 3 / -1;align-self:start;gap:3px}body.guide-col .guide-c-row>.guide-c-time{grid-area:3 / 1 / 4 / -1;justify-self:start;font-size:34px;line-height:1}body.guide-col .guide-c-row>.guide-c-time.peek{font-size:var(--text-md)}body.guide-col .guide-c-row>.guide-nav-prev{grid-area:4 / 1 / 5 / 2;justify-self:start}body.guide-col .guide-c-row>.guide-c-btn,body.guide-col .guide-c-row>.guide-done-tag{grid-area:4 / 2 / 5 / 3;justify-self:stretch;text-align:center;min-height:42px}body.guide-col .guide-c-row>.guide-nav-next{grid-area:4 / 3 / 5 / 4;justify-self:end}body.guide-col .guide-c-title{white-space:normal;font-size:var(--text-md);line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}body.guide-col .guide-c-next{display:none}.guide-reopen.at-corner{left:auto;right:24px}.guide-c-time.is-empty{color:transparent}@media (min-width: 900px){.guide-c-row>.guide-c-time{min-width:58px;text-align:right}.guide-c-row>.guide-c-btn{min-width:116px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.guide-dock .guide-c-tip{display:block;margin-top:3px;font-size:var(--text-sm);color:var(--ink-muted);line-height:1.35;white-space:normal}.guide-dock .guide-c-tip:before{content:"\26a1  "}.guide-dock.copilot .guide-c-row{padding:8px 10px 10px}.guide-dock.copilot .guide-c-btn{min-height:40px;padding:6px 18px;font-size:var(--text-md)}body.guide-col .guide-dock.copilot .guide-c-row{grid-template-rows:22px minmax(72px,auto) 44px 48px}body.guide-col .guide-dock.copilot .guide-c-title{font-size:var(--text-lg);-webkit-line-clamp:3}
