:root{--bg:#f4f1ea;--bg-raised:#ece7dd;--bg-input:#fbf9f4;--line:#ddd5c7;--line-soft:#e7e0d3;--text:#241f1a;--text-dim:#5b544a;--text-faint:#948c7e;--accent:#2f6d63;--accent-soft:#4a897c;--accent-wash:#e6efeb;--on-accent:#f8fbf9;--you:#e8efeb;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--serif:ui-serif, Georgia, "Times New Roman", serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--serif);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}button{cursor:pointer;font-family:inherit}.shell{flex-direction:column;max-width:720px;min-height:100dvh;margin:0 auto;padding:0 20px;display:flex}.opening{flex:1;justify-content:center;align-items:center;padding:48px 12px 80px;display:flex}.opening-inner{text-align:center;flex-direction:column;align-items:center;gap:22px;max-width:500px;display:flex}.wordmark{font-family:var(--serif);letter-spacing:.01em;color:var(--text);font-weight:600}.wordmark.big{font-size:34px}.opening-lede{color:var(--text);margin:0;font-size:21px;line-height:1.55}.opening-sub{font-family:var(--sans);color:var(--text-dim);margin:0;font-size:15px;line-height:1.6}.primary{background:var(--accent);color:var(--on-accent);font-family:var(--sans);letter-spacing:.02em;border:none;border-radius:999px;padding:13px 34px;font-size:15px;font-weight:600;transition:transform .12s,background .15s,opacity .15s}.primary:hover:not(:disabled){background:var(--accent-soft);transform:translateY(-1px)}.primary:disabled{opacity:.45;cursor:default}.begin{margin-top:4px}.masthead{border-bottom:1px solid var(--line);padding:26px 4px 16px}.masthead-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.brand{flex-direction:column;gap:4px;min-width:0;display:flex}.brand .wordmark{font-size:20px}.tagline{font-family:var(--sans);color:var(--text-dim);font-size:12.5px;line-height:1.4}.controls{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.voicebar{align-items:center;gap:8px;display:flex}.voicesel{background:var(--bg-input);color:var(--text);border:1px solid var(--line);font-family:var(--sans);cursor:pointer;border-radius:999px;max-width:190px;padding:6px 12px;font-size:13px}.vplay,.mute{background:var(--bg-raised);border:1px solid var(--line);width:32px;height:32px;color:var(--text-dim);border-radius:999px;flex-shrink:0;line-height:1}.vplay{font-size:10px}.vplay:hover{color:var(--accent);border-color:var(--accent)}.mute{color:var(--text);font-size:14px}.account{font-family:var(--sans);font-size:12px}.auth-chip{color:var(--text-dim);align-items:center;gap:8px;display:inline-flex}.signin{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.signin input{background:var(--bg-input);border:1px solid var(--line);color:var(--text);font-size:13px;font-family:var(--sans);border-radius:8px;padding:7px 11px}.devlink{color:var(--accent);font-size:13px;font-family:var(--sans)}.chip-btn{background:var(--bg-raised);border:1px solid var(--line);color:var(--text-dim);font-family:var(--sans);border-radius:8px;padding:6px 11px;font-size:12.5px}.chip-btn:hover{border-color:var(--accent);color:var(--accent)}.intake{padding:30px 4px 60px;animation:.5s both rise}.intake-lede{color:var(--text);margin:12px 0 20px;font-size:17px;line-height:1.6}.intake-box{resize:vertical;background:var(--bg-input);border:1px solid var(--line);width:100%;min-height:180px;color:var(--text);font-family:var(--sans);border-radius:14px;outline:none;padding:15px 16px;font-size:15px;line-height:1.55}.intake-box:focus{border-color:var(--accent-soft)}.intake-box::placeholder{color:var(--text-faint)}.intake-box:disabled{opacity:.6}.intake-actions{align-items:center;gap:18px;margin-top:18px;display:flex}.intake-note{font-family:var(--sans);color:var(--text-faint);margin-top:20px;font-size:12.5px;line-height:1.5}.intake-files{margin-top:12px}.attach-btn{font-family:var(--sans);color:var(--accent);border:1px dashed var(--line);cursor:pointer;background:0 0;border-radius:8px;padding:9px 14px;font-size:13px;transition:border-color .15s,background .15s}.attach-btn:hover:not(:disabled){border-color:var(--accent-soft);background:var(--accent-wash)}.attach-btn:disabled{opacity:.5;cursor:default}.file-list{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.file-list li{font-family:var(--sans);color:var(--text-dim);background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:7px 11px;font-size:13px;display:flex}.file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-remove{color:var(--text-faint);cursor:pointer;background:0 0;border:none;flex:none;padding:0 2px;font-size:17px;line-height:1}.file-remove:hover:not(:disabled){color:var(--text)}.thread{flex-direction:column;flex:1;gap:22px;padding:28px 4px 20px;display:flex}.turn{white-space:pre-wrap;word-wrap:break-word;max-width:82%;font-size:17px;line-height:1.55}.turn.jinni{color:var(--text);align-self:flex-start}.turn.you{background:var(--you);color:var(--text);font-family:var(--sans);border-radius:16px 16px 4px;align-self:flex-end;padding:11px 16px;font-size:15.5px}.turn .who{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);margin-bottom:7px;font-size:11px;display:block}.turn.you .who{text-align:right}.cursor{background:var(--accent);vertical-align:text-bottom;width:8px;height:1.05em;margin-left:2px;animation:1.1s steps(2,start) infinite blink;display:inline-block}@keyframes blink{to{opacity:0}}.status-line{color:var(--text-faint);font-style:italic;font-family:var(--sans);font-size:14px}.composer{background:linear-gradient(to top, var(--bg) 72%, transparent);padding:14px 0 22px;position:sticky;bottom:0}.composer-row{align-items:flex-end;gap:10px;display:flex}.composer textarea{resize:none;background:var(--bg-input);border:1px solid var(--line);color:var(--text);font-family:var(--sans);border-radius:14px;outline:none;flex:1;max-height:160px;padding:12px 15px;font-size:15.5px;line-height:1.4}.composer textarea:focus{border-color:var(--accent-soft)}.composer textarea::placeholder{color:var(--text-faint)}.mic{border:1px solid var(--line);background:var(--bg-input);width:46px;height:46px;color:var(--text);border-radius:50%;flex-shrink:0;font-size:19px;line-height:1;transition:all .15s}.mic:disabled{opacity:.4;cursor:default}.mic.rec{background:var(--accent);color:var(--on-accent);border-color:var(--accent);animation:1.3s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #2f6d6366}50%{box-shadow:0 0 0 8px #2f6d6300}}.send{background:var(--accent);color:var(--on-accent);height:46px;font-weight:600;font-family:var(--sans);border:none;border-radius:14px;padding:0 18px;font-size:14px;transition:opacity .15s,background .15s}.send:hover:not(:disabled){background:var(--accent-soft)}.send:disabled{opacity:.4;cursor:default}.composer-meta{font-family:var(--sans);justify-content:space-between;align-items:center;gap:12px;margin-top:11px;font-size:12.5px;display:flex}.hint{color:var(--text-faint)}.tap-play{background:var(--bg-raised);border:1px solid var(--accent-soft);color:var(--accent);font-family:var(--sans);border-radius:999px;align-self:center;margin:4px 0 10px;padding:8px 18px;font-size:13px}.link-btn{color:var(--accent);font-size:12.5px;font-family:var(--sans);background:0 0;border:none;border-bottom:1px solid #0000;padding:0}.link-btn:hover{border-bottom-color:var(--accent-soft)}.link-btn:disabled{color:var(--text-faint);cursor:default}.banner{background:var(--bg-raised);border:1px solid var(--accent-soft);font-family:var(--sans);color:var(--text-dim);border-radius:12px;margin:18px 0;padding:14px 16px;font-size:13.5px;line-height:1.5}.banner code{color:var(--accent);font-size:12.5px}.working{color:var(--text-dim);font-style:italic;font-family:var(--sans);text-align:center;padding:40px 4px;font-size:14px}.save-status{font-family:var(--sans);color:var(--text-dim);align-items:center;gap:8px;padding:12px 4px 0;font-size:12px;display:flex}.readout{padding:30px 4px 20px;animation:.5s both rise}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.eyebrow{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:11px}.reflection{color:var(--text);margin:0 0 18px;font-size:21px;line-height:1.5}.coverage-note{font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:26px;font-size:12px}.section-label{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);margin:32px 0 14px;font-size:11px}.tension{background:var(--accent-wash);border:1px solid var(--line-soft);border-left:3px solid var(--accent);border-radius:4px 12px 12px 4px;margin-bottom:16px;padding:14px 16px}.tension-desc{color:var(--text);margin:0 0 8px;font-size:16.5px;line-height:1.5}.tension-status{font-family:var(--sans);letter-spacing:.04em;color:var(--accent);font-size:12px}.dimension{border-bottom:1px solid var(--line-soft);padding:16px 0}.dimension.faint{opacity:.55}.dim-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.dim-name{color:var(--text);font-size:16px}.conf{flex-shrink:0;align-items:center;gap:3px;display:inline-flex}.dot{background:var(--line);border-radius:50%;width:6px;height:6px}.dot.on{background:var(--accent)}.findings{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.finding{color:var(--text);font-size:15.5px;line-height:1.5}.claim{color:var(--text)}.tag{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;vertical-align:middle;border:1px solid var(--line);color:var(--text-faint);background:var(--bg-raised);border-radius:999px;padding:2px 7px;font-size:10px;display:inline-block}.tag.revealed{color:var(--accent);border-color:var(--accent-soft);background:var(--accent-wash)}.evidence{border-left:2px solid var(--line);margin:9px 0 0;padding-left:13px;list-style:none}.evidence li{color:var(--text-dim);margin-bottom:5px;font-size:13.5px;font-style:italic;line-height:1.5}.no-read{font-family:var(--sans);color:var(--text-faint);font-size:12px;font-style:italic}.read-wrap{padding-bottom:60px}.partial-note{font-family:var(--sans);color:var(--text-dim);border-left:2px solid var(--accent-soft);margin:22px 0;padding-left:13px;font-size:13.5px;line-height:1.55}.read-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:36px;display:flex}.paths{margin-top:40px;animation:.5s both rise}.path{border:1px solid var(--line);background:var(--bg-input);border-radius:16px;margin-bottom:20px;padding:22px 22px 20px}.path-head{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.path-title{color:var(--text);font-size:19px;font-weight:600}.badge{font-family:var(--sans);letter-spacing:.03em;border:1px solid var(--line);color:var(--text-dim);background:var(--bg-raised);border-radius:999px;padding:3px 10px;font-size:11px}.badge.low-disruption{color:var(--accent);border-color:var(--accent-soft);background:var(--accent-wash)}.badge.horizon{color:var(--text-dim)}.path-narrative{color:var(--text);margin:0 0 14px;font-size:16px;line-height:1.6}.path-cost{color:var(--text-dim);background:var(--bg-raised);border-radius:10px;margin:0 0 16px;padding:12px 14px;font-size:15px;line-height:1.55}.cost-label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px;font-size:11px;display:block}.serves-sacrifices{font-family:var(--sans);flex-direction:column;gap:6px;margin-bottom:16px;font-size:13px;line-height:1.5;display:flex}.serves{color:var(--accent)}.sacrifices{color:var(--text-dim)}.milestones{border-top:1px solid var(--line-soft);flex-direction:column;gap:14px;margin:0;padding:16px 0 0;list-style:none;display:flex}.milestone{grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px 10px;display:grid}.mtype{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;background:var(--accent-wash);color:var(--accent);border:1px solid var(--accent-soft);white-space:nowrap;border-radius:999px;grid-row:1;padding:3px 8px;font-size:10px}.mtype.rest{background:var(--bg-raised);color:var(--text-dim);border-color:var(--line)}.m-desc{color:var(--text);grid-row:1;font-size:15.5px;line-height:1.45}.m-date{font-family:var(--sans);color:var(--text-faint);white-space:nowrap;grid-row:1;font-size:12px}.m-criteria{font-family:var(--sans);color:var(--text-dim);border-left:2px solid var(--line);grid-column:2/-1;padding-left:12px;font-size:13px;line-height:1.5}@media (max-width:560px){.controls{align-items:flex-start;width:100%}.voicesel{max-width:150px}.milestone{grid-template-columns:auto 1fr}.m-date{grid-area:2/2}.m-criteria{grid-column:1/-1}}.cov-panel{border:1px solid var(--line);background:var(--bg-raised);z-index:5;border-radius:12px;margin-bottom:14px;padding:12px 14px 14px;position:sticky;top:8px;box-shadow:0 6px 18px -12px #00000059}.cov-panel.ready{border-color:var(--accent);background:var(--accent-wash)}.cov-head{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.cov-title{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-size:11px}.cov-pct{font-family:var(--sans);color:var(--accent);font-size:14px;font-weight:600}.cov-bar{background:var(--line-soft);border-radius:999px;height:6px;overflow:hidden}.cov-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .5s}.cov-dims{gap:6px;margin-top:12px;display:flex}.cov-dim{flex-direction:column;flex:1;align-items:center;gap:5px;min-width:0;display:flex}.cov-dim-bar{background:var(--line-soft);border-radius:5px;align-items:flex-end;width:100%;height:34px;display:flex;overflow:hidden}.cov-dim-fill{background:var(--accent-soft);border-radius:5px 5px 0 0;width:100%;transition:height .5s}.cov-dim-label{font-family:var(--sans);color:var(--text-faint);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:9.5px;overflow:hidden}.cov-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.cov-state{font-family:var(--sans);color:var(--text-dim);font-size:12px}.cov-reveal{padding:8px 16px;font-size:13px}@media (max-width:560px){.cov-dim-label{font-size:8px}.cov-dim-bar{height:26px}}
