:root{--bg:#090c11;--chrome:#1a222c;--surface:#232e3a;--surface-2:#303d4c;--text:#e8edf2;--muted:#97a4b1;--accent:#4da3ff;--ok:#4cc38a;--warn:#ffb84d;--danger:#ff6b6b;--record:#e5484d;--border:#38485a}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px}html{height:100%}body{height:100dvh;height:var(--app-height,100dvh);flex-direction:column;display:flex;overflow:hidden}.app-main{flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.bottom-nav{background:var(--chrome);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);z-index:50;flex:none;display:flex}.bottom-nav a{text-align:center;min-width:0;min-height:48px;color:var(--muted);letter-spacing:-.01em;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;flex:1;justify-content:center;align-items:center;padding:3px;font-size:clamp(.76rem,3.4vw,.9rem);line-height:1.2;text-decoration:none;display:flex}.bottom-nav a>span{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;min-width:0;max-width:100%}.bottom-nav a.active{color:var(--accent);font-weight:600}.nav-badge{background:var(--danger);color:#fff;vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;font-size:.68rem;line-height:1;display:inline-flex}.page{width:100%;max-width:720px;margin:0 auto;padding:16px}.project-bar{background:var(--chrome);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:8px;width:100%;padding:10px max(16px,50% - 360px);display:flex}.project-bar select{flex:1}.project-bar input{flex:1;min-height:38px}.page h1{margin-bottom:12px;font-size:1.15rem}.row h1{margin-bottom:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:14px;padding:12px}.muted{color:var(--muted);font-size:.85rem}button{background:var(--surface-2);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:10px;min-height:44px;padding:10px 14px;font-size:.95rem}button.compact{min-height:36px;padding:6px 12px;font-size:.85rem}button.primary{background:var(--accent);border-color:var(--accent);color:#06111f;font-weight:600}button.danger{color:var(--danger)}button:disabled{opacity:.45;cursor:default}.decision-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.decision-button[aria-busy=true]:disabled{opacity:.8}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite button-spin}@keyframes button-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.button-spinner,.dock-btn.mic.stop{animation:none}}input,textarea{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:10px;width:100%;min-height:44px;padding:10px 12px;font-size:1rem}.chat-page{flex-direction:column;flex:auto;min-height:0;display:flex}.chat-list{overscroll-behavior:contain;flex-direction:column;flex:auto;gap:8px;min-height:0;padding:16px;display:flex;overflow-y:auto}.chat-list>:first-child{margin-top:auto}.chat-empty{flex-direction:column;gap:6px;display:flex}.chat-slow{text-align:center}.chat-error{padding:6px 12px 0}.chat-tools{padding:8px 16px 10px}.bubble{word-break:break-word;border-radius:14px;max-width:82%;padding:10px 12px}.chat-decision{border:1px solid var(--border);background:var(--surface-2);max-width:92%;color:var(--muted);text-align:center;border-radius:999px;align-self:center;padding:6px 12px;font-size:.82rem}.bubble.in,.bubble.pending{white-space:pre-wrap}.bubble.out p{margin:0 0 6px}.bubble.out p:last-child{margin-bottom:0}.bubble.out ul,.bubble.out ol{margin:4px 0 6px;padding-left:1.25rem}.bubble.out li{margin:2px 0}.bubble.out h1,.bubble.out h2,.bubble.out h3{margin:6px 0 4px;font-size:1rem}.bubble.out code{background:var(--bg);border-radius:4px;padding:1px 4px;font-size:.9em}.bubble.in{background:#1d3a5f;align-self:flex-end}.bubble.out{background:var(--surface-2);align-self:flex-start}.bubble-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.feedback-btn{min-height:36px;color:var(--muted);border:1px solid var(--surface-2);cursor:pointer;background:0 0;border-radius:8px;align-items:center;padding:6px 10px;font-size:.75rem;line-height:1.4;display:inline-flex}.feedback-btn:hover{color:var(--text)}.feedback-btn:disabled{opacity:.6;cursor:default}.bubble.pending{opacity:.6}.bubble.typing{align-items:center;gap:5px;padding:14px;display:inline-flex}.bubble.typing span{background:var(--muted);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typing-blink}.bubble.typing span:nth-child(2){animation-delay:.15s}.bubble.typing span:nth-child(3){animation-delay:.3s}@keyframes typing-blink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat-bar{background:var(--chrome);border-top:1px solid var(--border);flex:none;gap:8px;padding:10px 12px;display:flex}.board-col{margin-bottom:18px}.board-col h2{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px;font-size:.85rem}.badge{background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;margin-right:6px;padding:3px 9px;font-size:.8rem;display:inline-block}.badge.ok{color:var(--ok)}.badge.warn{color:var(--warn)}.badge.danger{color:var(--danger)}.search-hit{background:var(--warn);color:#161006;border-radius:3px;padding:0 2px}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.stack{flex-direction:column;gap:14px;display:flex}.center{flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100dvh;padding:24px;display:flex}.brand-lockup{align-items:center;gap:12px;display:flex}.brand-lockup h1{margin:0}.brand-icon{border-radius:14px;flex:none;width:56px;height:56px;display:block}.err{color:var(--danger);font-size:.9rem}.ok{color:var(--ok);font-size:.9rem}.modal-overlay{z-index:100;background:#06090c99;justify-content:center;align-items:flex-start;padding:48px 16px 24px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;width:100%;max-width:480px;padding:16px;display:flex}.modal label input:not([type=radio]){margin-top:6px}.modal-choice{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.modal-choice input[type=radio]{width:auto;min-height:auto;accent-color:var(--accent);margin-top:4px}.board-filters{scrollbar-width:none;-ms-overflow-style:none;gap:8px;padding-bottom:16px;display:flex;overflow-x:auto}.board-filters::-webkit-scrollbar{display:none}.page>.row:first-child{margin-bottom:12px}.chip{background:var(--surface);min-height:40px;color:var(--muted);border:1px solid var(--border);border-radius:999px;flex:none;padding:8px 14px;font-size:.9rem}.chip.active{background:var(--accent);border-color:var(--accent);color:#06111f;font-weight:600}.task-card{text-align:left;cursor:pointer;width:100%;padding:12px;display:block}.task-card.critical{border-left:3px solid var(--danger)}.task-title{font-weight:600}.task-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.badge.prio-low{color:var(--muted)}.badge.prio-medium{color:var(--accent)}.badge.prio-high{color:var(--warn)}.badge.prio-critical{color:var(--danger)}.path-list{flex-direction:column;gap:6px;margin:8px 0 0 18px;display:flex}.link{color:var(--accent);text-align:left;cursor:pointer;background:0 0;border:none;min-height:0;padding:4px 0;font-size:.95rem}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-grid label{flex-direction:column;gap:4px;font-size:.85rem;display:flex}select{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:10px;width:100%;min-height:44px;padding:10px 12px;font-size:1rem}.sheet-backdrop{z-index:100;background:#0000008c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);border-top:1px solid var(--border);border-radius:16px 16px 0 0;width:100%;max-width:720px;max-height:88dvh;padding:16px;overflow-y:auto}.sheet-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.sheet-header button{min-height:36px;padding:6px 12px}.seg{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.seg button{flex:1 0 auto;min-height:38px;padding:8px 10px;font-size:.85rem}.seg button.active{background:var(--accent);border-color:var(--accent);color:#06111f;font-weight:600}.dep-row{margin-top:4px}.blocker-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.blocker-row.resolved{opacity:.6}.check-row{align-items:center;gap:10px;padding:6px 0;display:flex}.check-row input{width:auto;min-height:0}.done-text{color:var(--muted);text-decoration:line-through}.approval-card{border-color:var(--accent)}.section-title{color:var(--muted);margin:14px 0 8px;font-size:1rem;font-weight:700}.decision-card{gap:8px;display:grid}.decision-card.compact{border-color:var(--accent)}.decision-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.decision-head p{color:var(--text);margin-top:4px}.decision-route{letter-spacing:.01em;margin-top:6px;font-size:.72rem}.decision-route.plan{color:var(--accent);border-color:var(--accent)}.decision-route.direct{color:var(--text)}.task-owner-hint{margin-top:4px;font-size:.75rem;font-weight:400;line-height:1.35;display:block}.decision-status{white-space:normal;text-align:right;flex:none;max-width:55%;line-height:1.25}.decision-target,.decision-reason,.decision-meta,.decision-expiry{font-size:.85rem}.decision-voice-source{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;gap:5px;padding:8px 10px;display:grid}.decision-voice-head{flex-wrap:wrap;gap:8px}.decision-voice-head .badge{align-items:center;gap:4px;display:inline-flex}.decision-voice-source blockquote{border-left:2px solid var(--accent);color:var(--text);overflow-wrap:anywhere;margin:0;padding-left:10px;font-size:.9rem}.decision-voice-compact{justify-items:start;gap:5px;display:grid}.decision-voice-edit{gap:6px;display:grid}.decision-voice-edit textarea{resize:vertical;width:100%;min-height:76px;font-size:.9rem}.decision-voice-edit-link{justify-self:start;min-height:32px;padding:4px 0}.decision-target a{color:var(--accent)}.decision-changes{gap:4px;display:grid}.decision-change{grid-template-columns:minmax(84px,auto) 1fr;align-items:baseline;gap:8px;display:grid}.decision-change dt,.decision-details dt{color:var(--muted);font-size:.8rem}.decision-change dd{overflow-wrap:anywhere;min-width:0}.decision-before{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.decision-after{color:var(--text);font-weight:600}.decision-impact{border-left:3px solid var(--border);background:var(--surface-2);border-radius:8px;padding:7px 10px;font-size:.85rem}.decision-impact.ok{border-left-color:var(--ok)}.decision-impact.warn{border-left-color:var(--warn)}.decision-impact.danger{border-left-color:var(--danger)}.decision-impact ul{gap:2px;margin:5px 0 0;padding-left:16px;display:grid}.decision-outcome.ok{color:var(--ok)}.decision-outcome.danger{color:var(--danger)}.decision-outcome.muted{color:var(--muted)}.decision-details summary{cursor:pointer;color:var(--accent);align-items:center;min-height:36px;display:flex}.decision-details dl{gap:4px;margin-top:6px;display:grid}.decision-details dl>div{grid-template-columns:minmax(110px,auto) 1fr;gap:8px;font-size:.82rem;display:grid}.decision-details dd{overflow-wrap:anywhere;min-width:0}.decision-actions{margin-top:4px}.decision-status-strip{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;gap:4px;padding:8px 10px;display:grid}.decision-status-strip.approved{border-color:var(--ok)}.decision-status-strip.rejected,.decision-status-strip.expired{border-color:var(--danger)}.plan-draft{border-color:var(--accent)}.plan-change{border-inline-start:3px solid var(--border);padding-inline-start:10px}.plan-change.added{border-inline-start-color:var(--ok);background:color-mix(in srgb, var(--ok) 6%, var(--surface))}.plan-change.updated{border-inline-start-color:var(--warn);background:color-mix(in srgb, var(--warn) 6%, var(--surface))}.plan-change.removed{border-inline-start-color:var(--danger);background:color-mix(in srgb, var(--danger) 6%, var(--surface))}.plan-change-details{flex-basis:100%;width:100%;margin-top:4px}.plan-change-label{align-items:center;gap:4px;font-size:.85rem;font-weight:600;display:inline-flex}.plan-change-label.added{color:var(--ok)}.plan-change-label.updated{color:var(--warn)}.plan-change-label.removed{color:var(--danger)}.plan-change-field{overflow-wrap:break-word;margin-top:4px}.plan-change-before{color:var(--muted);font-size:.9rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.plan-change-impact{color:var(--warn);align-items:center;gap:5px;margin-top:4px;font-size:.85rem;display:flex}.plan-review-mode{margin:10px 0}.plan-review-link{color:var(--accent);min-height:36px;padding:8px 0;display:inline-block}.plan-draft-chips{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.plan-legend{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.plan-milestone-title{font-size:1rem;font-weight:600}.plan-milestone-meta{margin-top:4px}.plan-milestone-actions{align-items:center;gap:6px;display:inline-flex}.plan-state{border-left-width:4px;gap:5px;display:grid}.plan-state.live{border-left-color:var(--ok)}.plan-state.draft,.plan-state.applying{border-left-color:var(--warn)}.plan-state.updating{border-left-color:var(--accent)}.plan-state.updating .button-spinner{color:var(--accent)}.plan-draft.is-updating{border-color:var(--accent)}.plan-draft-updating{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;align-items:flex-start;gap:8px;margin:8px 0;padding:9px 10px;font-size:.9rem;display:flex}.plan-draft-updating .button-spinner{color:var(--accent);margin-top:2px}.plan-state.planning{border-left-color:var(--border)}.plan-state-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plan-context-link{min-height:32px;color:var(--accent);white-space:nowrap;align-items:center;font-size:.8rem;display:inline-flex}.plan-context-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plan-task-title-row{justify-content:space-between;align-items:baseline;gap:8px;width:100%;display:flex}.plan-task-title-row .task-title{flex:auto;width:auto}.plan-finding{border-top:1px dashed var(--border);margin-top:8px;padding-top:8px}.plan-finding-links{flex-wrap:wrap;gap:10px;margin-top:2px}.plan-milestone-card{scroll-margin-top:16px}.project-actions{margin-top:12px}.project-card-title{font-size:1.05rem}.project-card-pills{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.project-card-pills .badge{margin-right:0}.plan-tasks{border-left:2px solid var(--border);flex-direction:column;margin-top:8px;padding-left:10px;display:flex}.plan-review-mode{width:fit-content;min-height:44px;color:var(--text);cursor:pointer;align-items:center;gap:10px;font-size:.92rem;display:inline-flex}.plan-task{border-bottom:1px dashed var(--border);flex-direction:column;align-items:flex-start;gap:5px;padding:7px 0;display:flex}.plan-task .task-title{width:100%}.plan-task-pills{flex-wrap:wrap;gap:6px;display:flex}.plan-schedule-intro,.plan-schedule-help{color:var(--muted);margin:8px 0;font-size:.88rem}.plan-schedule-input{flex-direction:column;align-items:stretch;gap:10px;margin:10px 0 6px;display:flex}.plan-schedule-input label{width:100%;color:var(--muted);flex-direction:column;gap:5px;font-size:.85rem;display:flex}.plan-schedule-input input{width:100%;min-height:44px}.plan-schedule-input button{align-self:flex-start}.plan-schedule-note{border:1px solid var(--border);background:var(--surface-2);color:var(--muted);border-radius:10px;margin:8px 0;padding:9px 11px;font-size:.88rem}.plan-schedule-errors{color:var(--danger);margin:8px 0 0;padding-left:20px;font-size:.86rem}.plan-schedule-errors li{margin:3px 0}.plan-task:last-child{border-bottom:none}.plan-task.cancel .task-title{color:var(--muted);text-decoration:line-through}.badge.marker-new{color:var(--ok);border-color:var(--ok)}.badge.marker-edited{color:var(--warn);border-color:var(--warn)}.badge.marker-cancel{color:var(--danger);border-color:var(--danger)}.plan-toggle{color:var(--accent);background:0 0;border:none;min-height:36px;padding:6px 8px;font-size:.85rem}.mic-dock{background:var(--chrome);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);z-index:40;flex:none;position:relative}.rec-pill{background:var(--surface);border:1px solid var(--border);white-space:normal;pointer-events:none;border-radius:18px;align-items:center;gap:12px;width:min(440px,100vw - 24px);max-width:none;padding:12px 20px 12px 12px;transition:background .12s,border-color .12s,transform .12s,box-shadow .12s;display:flex;position:absolute;bottom:calc(100% + 14px);left:50%;transform:translate(-50%);box-shadow:0 10px 28px #00000080}.rec-pill.cancel-armed{background:var(--danger);border-color:var(--danger);color:#fff;transform:translate(-50%)scale(1.02);box-shadow:0 0 0 4px #ff6b6b2e,0 10px 28px #00000080}.rec-pill.cancel-armed .rec-pill-text,.rec-pill.cancel-armed .rec-pill-text strong{color:#fff}.rec-pill.cancel-armed .rec-pill-icon{background:#00000038;animation:none}.rec-countdown{color:var(--warn);font-variant-numeric:tabular-nums;font-weight:700}.rec-pill.cancel-armed .rec-countdown{color:#fff}.rec-pill-icon{background:var(--danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;animation:1.2s ease-in-out infinite mic-pulse;display:flex}.rec-pill-text{min-width:0;color:var(--muted);flex-direction:column;gap:3px;font-size:.85rem;line-height:1.3;display:flex}.rec-pill-text strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.15rem}@keyframes mic-pulse{50%{transform:scale(1.08);box-shadow:0 0 0 12px #ff6b6b29}}.mic-dock-band{justify-content:center;align-items:center;min-width:0;height:48px;padding:0 14px;display:flex;overflow:hidden}.mic-dock-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:4px 12px 8px;display:grid;overflow:visible}.dock-side{align-items:center;gap:8px;min-width:0;display:flex}.dock-side.left{justify-content:flex-start}.dock-side.right{justify-content:flex-end}.dock-mic-slot{justify-content:center;align-items:center;margin:-6px 0 0;display:flex}.dock-btn{border:1px solid var(--border);background:var(--surface-2);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.dock-btn.mic{background:var(--record);color:#fff;z-index:1;touch-action:none;border-color:#ffffff2e;width:64px;min-width:64px;height:64px;min-height:64px;position:relative;box-shadow:0 0 0 6px #e5484d24,0 8px 20px #00000059}.dock-btn.mic.stop{background:var(--danger);animation:1.6s ease-in-out infinite mic-live}.dock-btn.stop{background:var(--danger);color:#fff}@keyframes mic-live{50%{box-shadow:0 0 0 12px #ff6b6b2e,0 8px 20px #00000059}}.dock-speed{border:1px solid var(--border);background:var(--surface-2);width:48px;min-width:48px;height:48px;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.03em;white-space:nowrap;cursor:pointer;border-radius:50%;padding:0;font-size:.7rem;font-weight:700}.dock-btn.busy{opacity:.6;cursor:default}.dock-status{text-align:center;min-width:0;max-width:100%;color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 auto;font-size:.85rem;text-decoration:none;display:-webkit-box;overflow:hidden}.dock-status.muted{color:var(--muted)}.dock-status.alert{color:var(--danger)}.dock-status.waiting{color:var(--text);white-space:normal;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.voice-dots{flex:none;align-items:center;gap:3px;display:inline-flex}.voice-dots>span{background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite voice-dot-blink}.voice-dots>span:nth-child(2){animation-delay:.15s}.voice-dots>span:nth-child(3){animation-delay:.3s}@keyframes voice-dot-blink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.dock-progress,.bubble-player{align-items:center;gap:8px;display:grid}.dock-progress{grid-template-columns:auto minmax(0,1fr) auto auto;width:100%}.bubble-player{grid-template-columns:auto 1fr auto;width:100%;margin-top:8px}.player-skip{width:32px;min-width:32px;height:32px;color:var(--muted);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;font-size:.78rem;font-weight:700}.player-skip:hover{color:var(--text)}.player-range{width:100%;min-width:0;accent-color:var(--accent);cursor:pointer}.player-time{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;grid-column:1/-1;font-size:.72rem}.dock-progress .player-time{grid-column:auto}.voice-coach{border:1px solid var(--border);background:var(--surface);z-index:45;border-radius:14px;gap:10px;width:min(360px,100vw - 32px);padding:12px;font-size:.85rem;display:grid;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);box-shadow:0 12px 30px #00000080}.voice-coach p{color:var(--muted)}.voice-coach strong{color:var(--text)}.voice-coach button{justify-self:end}.settings-row{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}input[type=checkbox].switch{appearance:none;background:var(--surface-2);border:1px solid var(--border);cursor:pointer;border-radius:999px;flex:none;width:44px;height:24px;min-height:0;padding:0;transition:background .15s,border-color .15s;position:relative}input[type=checkbox].switch:after{content:"";background:var(--muted);border-radius:50%;width:18px;height:18px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}input[type=checkbox].switch:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox].switch:checked:after{background:#06111f;transform:translate(20px)}input[type=checkbox].switch:disabled{opacity:.45;cursor:default}.button-link{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.plan-start-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.plan-start-grid button{min-height:44px}.onboarding-steps{flex-wrap:wrap;gap:6px;display:flex}.onboarding-step{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:.82rem}.onboarding-step.active{color:var(--text);border-color:var(--accent);background:var(--surface-2)}.invitation-panel{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.share-panel{border-color:var(--accent)}.account-advanced{margin-top:10px}.account-advanced summary{cursor:pointer}.install-overlay{z-index:110;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));background:#06090cb8;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.install-sheet{border:1px solid var(--border);background:var(--surface);border-radius:22px;flex-direction:column;gap:14px;width:100%;max-width:480px;max-height:min(88dvh,680px);padding:18px;animation:.18s ease-out install-sheet-in;display:flex;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000008c}.install-sheet:focus{outline:none}@keyframes install-sheet-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.install-handle{background:var(--border);border-radius:2px;width:40px;height:4px;margin:0 auto 2px}.install-close{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:12px;right:12px}.install-head{align-items:flex-start;gap:12px;padding-right:44px;display:flex}.install-icon{border-radius:14px;flex:none;width:56px;height:56px}.install-head h2{margin:0;font-size:1.1rem;line-height:1.25}.install-head p{margin:5px 0 0;font-size:.9rem;line-height:1.4}.install-steps{color:var(--text);flex-direction:column;gap:8px;margin:0;padding-left:20px;font-size:.95rem;line-height:1.4;display:flex}.install-share-glyph{vertical-align:-4px;color:var(--accent);margin-left:4px;display:inline-block}.install-note{color:var(--muted);margin:0;font-size:.84rem;line-height:1.4}.install-actions{flex-direction:column;gap:8px;margin-top:2px;display:flex}.install-actions .primary{width:100%;min-height:46px}.install-actions .install-later{text-align:center;align-self:center;min-height:44px}@media (prefers-reduced-motion:reduce){.install-sheet{animation:none}}@media (max-width:520px){.plan-start-grid{grid-template-columns:1fr}}
