@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Ma+Shan+Zheng&family=Noto+Serif+SC:wght@400;500;600;700;900&display=swap";:root{--ink:#20201e;--muted:#716d64;--paper:#f5f0e7;--card:#fffaf1;--red:#a84232;--red-dark:#7d2d24;--line:#d9d0c1;--sand:#e7dac4;--mono:"DM Mono", monospace;--serif:"Noto Serif SC", "Songti SC", serif}*{box-sizing:border-box}html{background:var(--paper)}body{min-width:320px;color:var(--ink);background:var(--paper);font-family:var(--serif);margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #d29057}.shell{width:min(100%,520px);min-height:100dvh;padding:calc(26px + env(safe-area-inset-top)) 23px calc(28px + env(safe-area-inset-bottom));margin:0 auto;position:relative;overflow:hidden}.welcome-page{isolation:isolate;background:linear-gradient(148deg,#eee1cb 0%,#f7f0e4 53%,#eed0a7 100%);flex-direction:column;justify-content:center;display:flex}.welcome-page:before,.welcome-page:after{content:"";z-index:-1;filter:blur(1px);border-radius:50%;position:absolute}.welcome-page:before{border:1px solid #a8423242;width:330px;height:330px;top:-55px;right:-180px;box-shadow:0 0 0 36px #a842320d,0 0 0 73px #a8423209}.welcome-page:after{opacity:.18;background:#b6503c;width:270px;height:270px;bottom:-168px;left:-135px}.sun-disc{z-index:-1;opacity:.88;background:#d16040;border-radius:50%;width:130px;height:130px;position:absolute;top:14%;right:32px;box-shadow:0 0 0 14px #d1604021}.welcome-copy{margin-top:auto}.eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.13em;color:var(--red);margin:0 0 14px;font-size:11px}h1,h2,p{margin-top:0}h1{letter-spacing:-.06em;margin-bottom:17px;font-size:clamp(34px,9vw,48px);font-weight:700;line-height:1.18}h1 i{color:var(--red);font-weight:500}h2{letter-spacing:-.04em;font-size:21px}.lede{color:var(--muted);max-width:330px;font-size:16px;line-height:1.8}.paper-card{border:1px solid var(--line);background:#fffaf1b8;margin:36px 0 20px;padding:20px;box-shadow:9px 9px #7f553014}.paper-card p:not(.card-label){color:#555047;margin-bottom:10px;font-size:14px;line-height:1.7}.paper-card p:last-child{margin-bottom:0}.card-label{color:var(--red);font-family:var(--mono);letter-spacing:.1em;font-size:11px}.primary,.secondary,.danger-button{border:0;min-height:54px;padding:14px 18px;font-size:16px;font-weight:600;transition:transform .2s,background .2s}.primary{color:#fff8ec;background:var(--red);box-shadow:4px 4px 0 var(--red-dark)}.primary:hover{background:var(--red-dark);transform:translate(1px,1px);box-shadow:2px 2px #5e211a}.wide{width:100%}.arrow{font-family:var(--mono);margin-left:8px}.micro{color:var(--muted);text-align:center;max-width:310px;margin:18px auto 0;font-size:12px;line-height:1.6}.home-page,.story-page{background:radial-gradient(circle at 100% 0%, #ecdfcb 0, transparent 35%), var(--paper)}.topbar,.interview-top{justify-content:space-between;align-items:center;min-height:34px;display:flex}.top-actions{gap:12px;display:flex}.brand{font-family:"Ma Shan Zheng", var(--serif);color:var(--red);font-size:27px;transform:rotate(-4deg)}.date,.interview-top span{color:var(--muted);font-family:var(--mono);letter-spacing:.04em;font-size:10px}.privacy-link{color:var(--muted);background:0 0;border:0;padding:9px 0 9px 12px;font-size:12px}.home-hero{padding:67px 0 27px}.home-hero h1{margin-bottom:13px;font-size:clamp(37px,9vw,48px)}.home-hero p:last-child{color:var(--muted);font-size:15px}.mode-grid{grid-template-columns:1fr;gap:9px;margin-bottom:21px;display:grid}.mode-card{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fffaf180;grid-template-columns:37px 1fr;align-items:center;padding:13px 14px;transition:all .2s;display:grid}.mode-card>span{color:var(--red);font:11px var(--mono)}.mode-card strong{letter-spacing:-.03em;font-size:16px}.mode-card small{color:var(--muted);grid-column:2;margin-top:3px;font-size:12px}.mode-card.selected{border-color:var(--red);background:#f8e6d1;transform:translate(-1px,-1px);box-shadow:4px 4px #a8423226}.trigger-list{gap:10px;margin:20px 0 12px;display:grid}.trigger-card{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fffaf1b3;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:14px;transition:transform .18s,border-color .18s;display:grid}.trigger-card:hover{border-color:var(--red);transform:translate(2px)}.trigger-icon{width:36px;height:36px;color:var(--red);background:#e8d4b9;border-radius:50%;place-items:center;font-weight:700;display:grid}.trigger-card strong{letter-spacing:-.03em;font-size:16px;display:block}.trigger-card small{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.55;display:block}.trigger-card em{color:var(--red);margin-top:6px;font-size:10px;font-style:normal;display:block}.swap-triggers{color:var(--red);text-underline-offset:4px;background:0 0;border:0;margin:11px auto 22px;font-size:13px;text-decoration:underline;display:block}.home-nav{grid-template-columns:repeat(4,1fr);gap:7px;margin:0 0 18px;display:grid}.home-nav button{border:1px solid var(--line);min-height:47px;color:var(--ink);background:0 0;font-size:12px}.free-entry{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:8px 0 20px}.free-entry summary{color:var(--muted);cursor:pointer;padding:14px 0;font-size:13px}.free-entry .mode-grid{padding-bottom:14px}.queue-card,.milestone-card{text-align:left;width:100%;color:var(--ink);background:#f7ead8;border:1px solid #c8ad8e;margin:15px 0;padding:16px}.queue-card p:last-child{color:var(--muted);margin:7px 0 0;font-size:13px}.milestone-card{background:#d9c1a0;border-color:#aa8456;justify-content:space-between;align-items:center;display:flex}.milestone-card .eyebrow{margin-bottom:5px}.resume-card{text-align:left;width:100%;color:var(--ink);background:#f7e4ca;border:1px solid #bb8a62;grid-template-columns:1fr auto;align-items:center;gap:4px 14px;margin:-6px 0 17px;padding:14px 16px;display:grid;box-shadow:4px 4px #a842321a}.resume-card span{color:var(--red);font:10px var(--mono);letter-spacing:.08em}.resume-card strong{letter-spacing:-.03em;font-size:15px}.resume-card .arrow{grid-area:span 2/2}.story-list{margin-top:55px}.section-head{justify-content:space-between;align-items:baseline;margin-bottom:13px;display:flex}.section-head h2{margin-bottom:0}.section-head span{color:var(--muted);font-size:11px;font-family:var(--mono)}.empty-state{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);text-align:center;padding:26px 18px;font-size:14px}.photo-entry{border:1px solid var(--line);background:#fffaf199;margin:20px 0;padding:17px}.photo-entry .eyebrow{margin-bottom:8px}.photo-entry>p:not(.eyebrow){color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.6}.photo-upload{cursor:pointer;place-items:center;min-height:48px;margin:0;font-size:14px;display:grid}.photo-chip-row{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.photo-chip-row span{background:#ead8bf;align-items:center;gap:5px;max-width:100%;padding:5px 8px;font-size:11px;display:inline-flex}.photo-chip-row button{color:var(--red);background:0 0;border:0;padding:0 0 0 2px;font-size:16px;line-height:1}.people-index{margin:26px 0 0}.people-index .section-head span{color:var(--muted);font-size:11px}.people-index>div:last-child{flex-wrap:wrap;gap:8px;display:flex}.people-index button{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fffaf1b3;padding:8px 12px;font-size:13px}.conflict-note{color:#5d4730;background:#f3e2c9;border-left:3px solid #b47b43;margin:0 0 20px;padding:13px 14px;font-size:13px;line-height:1.65}.story-row{appearance:none;border:0;border-top:1px solid var(--line);text-align:left;width:100%;color:var(--ink);background:0 0;grid-template-columns:68px 1fr auto;align-items:center;gap:7px;padding:16px 0;display:grid}.story-row:last-child{border-bottom:1px solid var(--line)}.story-row:hover strong{color:var(--red)}.story-date{font:10px var(--mono);color:var(--muted);grid-row:span 2}.story-row strong{letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;font-size:16px;overflow:hidden}.story-row small{color:var(--muted);grid-column:2;font-size:11px}.story-row .arrow{grid-area:1/3/span 2}.interview-page{background:linear-gradient(#f5f0e7 0%,#f7f1e7 65%,#e7d3b8 100%);flex-direction:column;display:flex}.icon-button,.text-button,.listen-button,.ghost-button{color:var(--ink);background:0 0;border:0}.icon-button{font-family:var(--mono);width:48px;min-height:48px;margin-left:-13px;font-size:26px}.text-button{color:var(--red);padding:12px 0 12px 12px;font-size:14px}.thread-mark{font:10px var(--mono);color:var(--muted);letter-spacing:.08em;margin-top:39px}.question-panel{border-top:2px solid var(--ink);margin-top:18px;padding:27px 0 22px}.question-panel h1{font-size:clamp(31px,8.4vw,43px);line-height:1.29}.listen-button{color:var(--red);border-bottom:1px solid #a842324d;padding:8px 0;font-size:13px}.sound{font-family:var(--mono);letter-spacing:-3px;margin-left:7px;font-size:10px}.answer-history{color:#655e53;border-left:2px solid var(--red);background:#fffaf18c;margin:18px 0 auto;padding:12px 13px;font-size:13px;line-height:1.55}.input-dock{margin-top:auto;padding-top:22px}.status{color:#6a6357;text-align:center;min-height:20px;margin:0 0 10px;font-size:12px}.recording-status{color:var(--red)}.record-area{text-align:center}.record-button{cursor:pointer;background:#fffaf1;border:1px solid #b7aa96;border-radius:50%;width:88px;height:88px;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;position:relative;box-shadow:0 5px #cbbda8,0 0 0 11px #fffaf180}.record-button span{background:var(--red);border-radius:12px;width:22px;height:27px;margin:auto;display:block}.record-button:active{transform:translateY(4px);box-shadow:0 1px #cbbda8,0 0 0 11px #fffaf180}.record-button.arming{background:#f4dcc0;border-color:#b77943;transform:translateY(3px);box-shadow:0 2px #b77943,0 0 0 13px #b7794329}.record-button.arming span{background:#8f4b21}.record-button.recording{background:var(--red);border-color:#8f1a0a;animation:1.5s infinite record-breathe;transform:translateY(4px);box-shadow:0 1px #8f1a0a,0 0 0 13px #a8423229,0 0 0 27px #a8423214}.record-button.recording span{background:#fffaf1;border-radius:3px;height:22px}.record-button.recording:active{transform:translateY(5px)scale(.98);box-shadow:0 0 #8f1a0a,0 0 0 13px #a8423229,0 0 0 27px #a8423214}.recording-live{background:#a8423214;border:1px solid #a8423233;border-radius:18px;justify-content:center;align-items:center;gap:10px;width:fit-content;min-height:34px;margin:0 auto 14px;padding:7px 12px;display:flex}.recording-dot{background:var(--red);border-radius:50%;width:9px;height:9px;animation:1.2s infinite record-dot;box-shadow:0 0 0 6px #a842321f}.recording-label{color:var(--red);font-size:13px;font-weight:600}.recording-timer{min-width:44px;font-family:var(--mono);color:#7b2d23;text-align:right;font-size:13px}.record-area p{color:var(--muted);margin:13px 0 19px;font-size:13px}.text-answer{border-top:1px solid var(--line);align-items:center;gap:8px;padding-top:13px;display:flex}.text-answer input{border:1px solid var(--line);min-width:0;height:47px;color:var(--ink);background:#fffaf1b3;flex:1;padding:0 14px;font-size:15px}.text-answer button{background:var(--ink);width:52px;min-height:47px;color:var(--paper);border:0;font-size:19px}.text-answer button:disabled{background:#b9b0a3}.modal-backdrop{z-index:10;background:#28221b6b;align-items:end;padding:20px;display:flex;position:fixed;inset:0}.modal{width:min(100%,480px);padding:29px 23px calc(23px + env(safe-area-inset-bottom));background:#fffaf1;margin:0 auto;animation:.28s ease-out rise;box-shadow:0 -15px 50px #2f23182e}.modal h2{margin-bottom:11px;font-size:29px}.modal p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.65}.transcript-editor,.fact-input{border:1px solid var(--line);width:100%;min-height:108px;color:var(--ink);resize:vertical;background:#fffdf7;margin:6px 0 12px;padding:13px;line-height:1.65}.fact-input{resize:none;min-height:49px}.secondary{color:var(--ink);border:1px solid var(--line);background:0 0;margin-top:11px}.danger-button{color:#fff;background:#8a3229}.story-article{border-bottom:1px solid var(--line);padding:54px 0 25px}.story-context{border-bottom:1px solid var(--line);padding:20px 0}.story-context .eyebrow{margin-bottom:9px}.stage-choice{flex-wrap:wrap;gap:7px;display:flex}.stage-choice button{border:1px solid var(--line);color:var(--ink);background:0 0;padding:7px 9px;font-size:12px}.stage-choice button.selected{border-color:var(--red);color:var(--red);background:#f7e3ca}.stage-choice span,.context-line{color:var(--muted);font-size:12px;line-height:1.6}.context-line{margin:11px 0 0}.candidate-card{background:#e8dbc7;border:1px dashed #9d7957;margin-top:20px;padding:20px}.candidate-card .eyebrow{margin-bottom:7px}.candidate-card strong{font-size:17px;line-height:1.45;display:block}.candidate-card p:not(.eyebrow){color:#685544;margin:9px 0 13px;font-size:13px;line-height:1.6}.privacy-page,.list-page{background:radial-gradient(circle at 100% 0%, #ecdfcb 0, transparent 35%), var(--paper)}.page-intro{padding:48px 0 23px}.page-intro h1{font-size:clamp(33px,8.8vw,45px)}.page-intro p:last-child{color:var(--muted);font-size:14px;line-height:1.7}.add-form{gap:8px;margin-bottom:22px;display:flex}.add-form input{border:1px solid var(--line);background:#fffdf7;flex:1;min-width:0;min-height:47px;padding:0 12px}.add-form button{background:var(--red);color:#fff;border:0;padding:0 14px}.stage-list,.person-list{gap:12px;display:grid}.stage-card,.person-card{border:1px solid var(--line);background:#fffaf1a6;padding:17px}.stage-card h2,.person-card h2{margin-bottom:8px}.stage-card div{gap:7px;display:grid}.stage-card button,.person-card button,.milestone-page-card button{text-align:left;width:100%;color:var(--red);background:0 0;border:0;border-top:1px solid #d9d0c1bf;justify-content:space-between;gap:8px;padding:7px 0;display:flex}.person-card{grid-template-columns:1fr;gap:11px;display:grid}.person-card p{color:var(--muted);margin-bottom:0;font-size:13px}.person-initial{float:right;width:38px;height:38px;color:var(--red);background:#ddc09b;border-radius:50%;place-items:center;display:inline-grid}.hidden-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.photo-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px;display:grid}.photo-card{border:1px solid var(--line);background:#fffaf1;padding:8px}.photo-card img{aspect-ratio:1;object-fit:cover;background:#e8dfd1;width:100%;display:block}.photo-card p{text-overflow:ellipsis;white-space:nowrap;margin:8px 0 5px;font-size:12px;overflow:hidden}.photo-card button{color:var(--red);background:0 0;border:0;padding:0;font-size:11px}.preference-panel{border:1px solid var(--line);background:#fffaf1b3;gap:12px;padding:17px;display:grid}.preference-panel h2{margin:10px 0 0;font-size:17px}.preference-panel label{font-size:14px;display:block}.choice-row{gap:8px;display:flex}.choice-row button{border:1px solid var(--line);background:0 0;flex:1;min-height:41px}.choice-row button.selected{border-color:var(--red);color:var(--red);background:#f4dcc0}.milestone-page-card{background:#dfc29c;border:1px solid #ae8655;padding:21px}.milestone-page-card h2{font-size:25px}.milestone-page-card p:not(.eyebrow){color:#5e4833;line-height:1.65}.privacy-copy{padding:54px 0 25px}.privacy-copy h1{font-size:clamp(34px,8.8vw,45px)}.privacy-block{border-top:1px solid var(--line);padding:17px 0}.privacy-block strong{font-size:16px}.privacy-block p{color:var(--muted);margin:8px 0 0;font-size:14px;line-height:1.75}.clear-card{background:#f2e0d7;border:1px solid #d7a798;margin-top:18px;padding:20px}.clear-card h2{margin-bottom:9px}.clear-card p:not(.eyebrow){color:#6d5349;font-size:13px;line-height:1.65}.story-article h1{margin-bottom:29px;font-size:clamp(37px,9vw,47px)}.story-draft{white-space:pre-line;color:#36332e;font-size:17px;line-height:2}.ghost-button{color:var(--red);text-underline-offset:4px;padding:15px 0 0;font-size:14px;text-decoration:underline}.draft-editor{resize:vertical;border:1px solid var(--line);width:100%;min-height:250px;color:var(--ink);background:#fffdf7;padding:15px;font-size:16px;line-height:1.8}.fact-sheet{border-bottom:1px solid var(--line);padding:28px 0}.fact-row{border-top:1px solid #d9d0c1bf;grid-template-columns:66px 1fr auto;align-items:center;gap:8px;padding:12px 0;font-size:14px;display:grid}.fact-row span{color:var(--muted)}.fact-row strong{font-weight:500}.fact-row small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.fact-edit{border:1px solid var(--line);color:var(--red);background:#fffaf1;padding:7px 9px;font-size:11px}.contradiction-note{color:#5d4730;background:#f3e2c9;border-left:3px solid #b47b43;margin:18px 0 0;padding:15px}.contradiction-note .eyebrow{color:#9a6129;margin-bottom:7px}.contradiction-note p:last-child{margin-bottom:0;font-size:13px;line-height:1.65}.candidate-suggestions{background:#f7ead8;border:1px solid #c8ad8e;margin-top:18px;padding:16px}.candidate-suggestions .eyebrow{margin-bottom:7px}.candidate-suggestions>p:not(.eyebrow){color:#695443;font-size:13px;line-height:1.6}.candidate-suggestions button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-top:1px solid #9d795766;justify-content:space-between;gap:8px;padding:11px 0;font-size:13px;line-height:1.55;display:flex}.candidate-suggestions button:last-child{padding-bottom:0}.transcript-sheet{padding:28px 0 0}.transcript-row{border-top:1px solid #d9d0c1bf;grid-template-columns:30px 1fr auto;column-gap:10px;padding:14px 0;display:grid}.transcript-row>span{color:var(--red);font:10px var(--mono);padding-top:3px}.transcript-row p{color:#454038;margin:0;font-size:14px;line-height:1.7}.transcript-row small{color:var(--muted);grid-column:2;margin-top:6px;font-size:10px}.transcript-actions{flex-direction:column;grid-area:1/3/span 2;align-self:center;gap:8px;display:flex}.transcript-edit{color:var(--red);white-space:nowrap;text-underline-offset:3px;background:0 0;border:0;font-size:11px;text-decoration:underline}.audio-sheet{border-bottom:1px solid var(--line);padding:20px 0}.audio-sheet .eyebrow{margin-bottom:7px}.audio-sheet strong{font-size:16px;display:block}.audio-sheet small{max-width:230px;color:var(--muted);margin-top:5px;font-size:11px;line-height:1.55;display:block}.audio-sheet .text-button{text-underline-offset:4px;flex:none;text-decoration:underline}.audio-sheet .section-head{margin-bottom:10px}.audio-row{border-top:1px solid #d9d0c1bf;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;display:flex}.audio-row>div:last-child{align-items:center;gap:12px;display:flex}.audio-row .listen-button{white-space:nowrap}.continue-card{color:#3d2b1f;background:#d7b78d;margin-top:25px;padding:24px 19px 20px}.continue-card p{font:10px var(--mono);letter-spacing:.1em;margin-bottom:8px}.continue-card strong{margin-bottom:20px;font-size:19px;display:block}.continue-card .secondary{background:#fffaf19e;border-color:#3d2b1f4d;margin:0}.reveal{animation:.55s both fade-up}.delay-1{animation-delay:90ms}.delay-2{animation-delay:.18s}.delay-3{animation-delay:.27s}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes rise{0%{transform:translateY(40px)}to{transform:translateY(0)}}@keyframes pulse{50%{box-shadow:0 4px #75251d,0 0 0 18px #a8423226}}@keyframes record-breathe{50%{box-shadow:0 1px #8f1a0a,0 0 0 18px #a842322e,0 0 0 34px #a842320f}}@keyframes record-dot{50%{opacity:.42;transform:scale(.82)}}@media (width>=650px){body{background:#d7cbb8}.shell{box-shadow:0 0 50px #3a2d1f1f}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.life-welcome{min-height:100dvh}.timeline-home .home-hero{padding-bottom:31px}.timeline-home .home-hero h1{max-width:420px}.gap-card{width:100%;color:var(--ink);text-align:left;background:#ead7bb;border:1px solid #caa87e;margin:17px 0 35px;padding:18px;position:relative;overflow:hidden}.life-resume{margin:18px 0 0}.gap-card:after{content:"···";color:var(--red);font:20px var(--mono);letter-spacing:3px;position:absolute;top:18px;right:16px}.gap-card span{color:var(--red);font:10px var(--mono);letter-spacing:.1em;display:block}.gap-card strong{letter-spacing:-.06em;margin:9px 0 3px;font-size:25px;display:block}.gap-card p{color:#66513d;margin:0;font-size:13px}.mini-timeline{margin-top:38px}.mini-timeline .section-head button{color:var(--red);background:0 0;border:0;font-size:12px}.mini-stage{border:0;border-top:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:0 0;grid-template-columns:68px 1fr auto;align-items:center;gap:8px;padding:14px 0;display:grid}.mini-stage span:first-child{color:var(--muted);font:10px var(--mono)}.mini-stage strong{letter-spacing:-.03em;font-size:15px}.life-interview-page{background:radial-gradient(circle at 50% 37%,#f8e4c7 0,#f8e4c766 17%,#0000 45%),linear-gradient(#f2ede3 0%,#f8f0e4 60%,#e4c6a0 100%)}.life-orbit{pointer-events:none;border:1px solid #a8423240;border-radius:50%;width:274px;height:274px;position:absolute;top:96px;right:-71px}.life-orbit i{border:1px solid #a8423229;border-radius:50%;position:absolute;inset:24px}.life-orbit i:nth-child(2){inset:54px}.life-orbit i:nth-child(3){background:#a8423214;inset:84px}.interview-progress{background:#fffaf194;border:1px solid #a8423229;border-radius:8px;margin:26px 0 6px;padding:14px 15px;box-shadow:0 3px 12px #3a2d1f0a}.interview-progress p{color:var(--red);font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px}.interview-progress strong{color:var(--ink);letter-spacing:-.03em;font-size:15px;line-height:1.45;display:block}.interview-progress span{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.55;display:block}.interview-progress div{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.interview-progress em{color:#7b3a2f;background:#a8423217;border-radius:12px;padding:4px 7px;font-size:10px;font-style:normal}.chat-history{scroll-behavior:smooth;flex-direction:column;flex:1;gap:14px;margin-top:24px;padding-bottom:16px;display:flex;overflow-y:auto}.chat-bubble{border-radius:18px;max-width:88%;padding:14px 17px;font-size:16px;line-height:1.7;animation:.35s both bubble-in}.ai-bubble{color:var(--ink);background:#fffaf1e0;border-bottom-left-radius:5px;align-self:flex-start;box-shadow:0 2px 10px #3a2d1f0f}.user-bubble{background:var(--ink);color:var(--paper);border-bottom-right-radius:5px;align-self:flex-end}.chat-bubble.latest{animation:.45s both bubble-in}.chat-text{margin:0}.chat-bubble .brief-summary{border-top:1px solid #a842321f;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding-top:10px;animation:.4s both summary-in;display:flex}.chat-bubble .brief-summary span{color:#694331;background:#fffaf18c;border:1px solid #a8423238;padding:5px 8px;font-size:11px}.quick-replies{gap:8px;margin:0 0 12px;padding-left:2px;display:flex}.quick-replies .chip{border:1px solid var(--line);color:var(--muted);background:#fffaf1b3;border-radius:16px;padding:7px 11px;font-size:12px}.quick-replies .chip:hover{border-color:var(--red);color:var(--red)}.sensitive-choices{border:1px solid var(--line);background:#fffaf1bf;border-radius:6px;margin:0 0 14px;padding:14px}.sensitive-choices p{color:var(--muted);margin:0 0 10px;font-size:13px}.sensitive-choices .choice-row{flex-wrap:wrap;gap:8px;display:flex}.sensitive-choices .chip{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:18px;padding:8px 12px;font-size:13px}.sensitive-choices .chip:hover{border-color:var(--red);color:var(--red)}.quiet-timeline{color:var(--muted);text-underline-offset:4px;background:0 0;border:0;align-self:flex-start;margin:12px 0 0;font-size:12px;text-decoration:underline}.life-input-dock{padding-bottom:8px}.listen-disc{color:#fff9ef;background:#a84232;border:1px solid #a84232;border-radius:50%;place-items:center;width:112px;height:112px;margin:0 auto;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 0 0 10px #a8423217,0 7px #7d2d24}.listen-disc:hover{transform:translateY(-2px)}.listen-disc.listening{background:#762d25;animation:1.25s infinite listen-pulse}.listen-disc span{font-size:14px;font-weight:600}.fallback-record{margin:0 auto;display:block}.voice-edit-button{color:#733024;background:#f5e1c6;border:1px solid #b78761;width:100%;min-height:46px;margin:4px 0 10px;font-size:14px}.voice-edit-button.listening{color:#fffaf1;background:#a84232;animation:1.25s infinite listen-pulse}.voice-note{max-width:280px;color:var(--muted);text-align:center;margin:16px auto 13px;font-size:12px;line-height:1.6}.live-transcript{border-left:3px solid var(--red);color:#3d2b22;background:#fffaf1b8;margin:0 0 13px;padding:10px 12px;font-size:14px;line-height:1.65}.pending-audio-card{background:#fffaf1b8;border:1px solid #a8423233;border-radius:8px;margin:12px 0;padding:12px 13px}.pending-audio-card div{justify-content:space-between;align-items:center;gap:10px;display:flex}.pending-audio-card span{color:var(--red);font:10px var(--mono);letter-spacing:.1em}.pending-audio-card strong{color:#743429;font:13px var(--mono)}.pending-audio-card p{color:var(--muted);margin:7px 0 0;font-size:12px;line-height:1.55}@keyframes bubble-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.timeline-page{background:#f5f0e7}.timeline-intro{padding:46px 0 25px}.timeline-intro h1{font-size:clamp(34px,9vw,47px)}.timeline-intro p:last-child{max-width:330px;color:var(--muted);font-size:14px;line-height:1.7}.timeline-rail{margin:10px 0 9px;padding:0 0 26px 20px;position:relative}.timeline-rail:before{content:"";background:#b9aa97;width:1px;position:absolute;top:10px;bottom:30px;left:4px}.timeline-stage,.timeline-gap{width:100%;min-height:61px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:82px 1fr auto;align-items:center;gap:8px;display:grid;position:relative}.timeline-stage .dot,.timeline-gap .dot{border:2px solid var(--red);background:var(--paper);border-radius:50%;width:10px;height:10px;position:absolute;left:-21px}.timeline-stage.pending .dot,.timeline-gap .dot{border-style:dashed}.timeline-year,.timeline-gap>span:nth-child(2){color:var(--muted);font:10px var(--mono)}.timeline-stage strong,.timeline-gap strong{letter-spacing:-.035em;font-size:16px}.timeline-gap{color:#827668}.timeline-gap strong{font-weight:500}.timeline-whisper{color:var(--muted);text-align:center;margin:8px 0 17px;font-size:12px;animation:.4s both fade-up}.chapter-page{background:radial-gradient(circle at 100% 0%, #ecdfcb 0, transparent 34%), var(--paper)}.chapter-hero{border-bottom:1px solid var(--line);padding:58px 0 35px}.chapter-hero h1{font-size:clamp(37px,9vw,48px)}.chapter-facts{margin:0}.chapter-facts dt{color:var(--red);font:10px var(--mono);letter-spacing:.1em;margin-top:25px}.chapter-facts dd{letter-spacing:-.03em;margin:8px 0 0;font-size:19px;line-height:1.5}.chapter-page>.primary{margin-top:44px}.source-materials{border-top:1px solid var(--line);margin-top:32px;padding-top:20px}.source-materials .eyebrow{margin-bottom:8px}.source-materials button{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-top:1px solid #d9d0c1bf;grid-template-columns:1fr auto;gap:10px;padding:11px 0;font-size:14px;line-height:1.55;display:grid}.material-text{white-space:pre-line;color:#51493f!important}.material-modal audio{width:100%;margin:4px 0 12px}.chapter-safety{border-top:1px solid var(--line);justify-content:space-between;gap:14px;margin-top:28px;padding-top:18px;display:flex}.chapter-safety button{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.chapter-safety button:last-child{color:#9a3d31}@keyframes listen-pulse{50%{transform:scale(1.03);box-shadow:0 0 0 18px #a842321f,0 7px #7d2d24}}@keyframes summary-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.birth-year-page{min-height:100dvh}.birth-year-form{flex-direction:column;gap:14px;margin-top:8px;display:flex}.birth-year-field{width:100%;color:var(--ink);text-align:center;background:#fffaf1;border:1px solid #c8ad8e;border-radius:10px;padding:16px 14px;font-size:20px;line-height:1.4}.birth-year-field::placeholder{color:#a99a85}.birth-year-field:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #a842321a}.input-error{color:#a84232;margin:0;font-size:13px;line-height:1.5}.diagnostics-page{min-height:100dvh;color:var(--ink);background:#f5f0e7;padding:34px}.diagnostics-hero{border-bottom:1px solid var(--line);width:min(100%,980px);margin:0 auto 26px;padding-bottom:22px}.diagnostics-hero h1{max-width:720px;margin-bottom:10px;font-size:clamp(34px,6vw,56px)}.diagnostics-hero p:not(.eyebrow){max-width:680px;color:var(--muted);line-height:1.7}.diagnostics-hero a{color:var(--red);text-underline-offset:4px}.diagnostics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:min(100%,980px);margin:0 auto;display:grid}.diagnostic-card{border:1px solid var(--line);background:#fffaf1b8;flex-direction:column;gap:14px;min-height:310px;padding:18px;display:flex}.diagnostic-card.ok{background:#e6f6ebb8;border-color:#26765073}.diagnostic-card.warn{background:#f9e9cfc7;border-color:#b7794373}.diagnostic-card.fail{background:#f8e2dbc7;border-color:#a842328c}.diagnostic-card.running{background:#e5ecf7b8;border-color:#4360916b}.diagnostic-top{justify-content:space-between;align-items:start;gap:12px;display:flex}.diagnostic-top h2{margin:0;font-size:22px}.diagnostic-top span{color:var(--muted);font:10px var(--mono);letter-spacing:.08em;background:#20201e14;padding:4px 7px}.diagnostic-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.65}.diagnostic-card pre{white-space:pre-wrap;word-break:break-word;max-height:120px;font:11px/1.5 var(--mono);background:#ffffff73;border:1px solid #20201e1a;margin:0;padding:10px;overflow:auto}.diagnostic-card button{background:var(--ink);min-height:44px;color:var(--paper);border:0;margin-top:auto;font-weight:600}.diagnostic-card button:disabled{opacity:.55;cursor:wait}.diagnostics-note{border-left:3px solid var(--red);background:#fffaf1ad;width:min(100%,980px);margin:18px auto 0;padding:16px 18px}.diagnostics-note p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.65}@media (width<=780px){.diagnostics-page{padding:24px 18px}.diagnostics-grid{grid-template-columns:1fr}}.skeleton-page .timeline-intro h1{font-size:clamp(30px,8vw,44px)}.skeleton-hint{color:var(--muted);max-width:330px;font-size:14px;line-height:1.6}
