*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--text-base)/1.55 var(--font-sans)}
h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:500;line-height:1.12;letter-spacing:-.035em}h2{font-size:var(--text-heading)}h3{font-size:var(--text-xl)}
button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-underline-offset:4px}button{color:inherit}svg{display:block}img{max-width:100%}[hidden]{display:none!important}
button:disabled{cursor:not-allowed;opacity:.45}button,a,input,textarea,select{touch-action:manipulation}
:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.dark :focus-visible{outline-color:var(--amber-light)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:8px;left:16px;transform:translateY(-150%);z-index:20;padding:12px;background:var(--amber);color:var(--ink)}.skip-link:focus{transform:none}
.container{width:min(100%,var(--content-width));margin-inline:auto;padding-inline:var(--page-gutter)}
.eyebrow{font:400 var(--text-xs)/1.5 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.dark{background:var(--ink);color:var(--paper)}.dark .muted{color:var(--gray)}.flow>*+*{margin-top:var(--space-4)}
.wordmark{font-size:1.55rem;font-weight:600;letter-spacing:-.065em;text-decoration:none;line-height:1}.wordmark::after{content:"";display:inline-block;width:7px;height:7px;background:var(--amber);margin-left:5px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:12px 20px;border:1px solid transparent;border-radius:var(--radius);background:var(--ink);color:var(--paper);text-decoration:none;font-weight:500;line-height:1.4;transition:background var(--duration),border-color var(--duration)}
.button:hover{background:#303034}.button--primary{background:var(--amber);color:var(--ink)}.button--primary:hover{background:var(--amber-light)}.button--secondary{background:transparent;border-color:var(--control-line);color:inherit}.button--secondary:hover{background:var(--wash)}.dark .button--secondary:hover{background:#242426}.button--small{min-height:44px;padding:10px 14px;font-size:var(--text-sm)}.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-weight:500}.icon-button{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid var(--control-line);border-radius:var(--radius);background:transparent;font-size:24px;line-height:1;flex-shrink:0}.icon-button:hover{background:var(--wash)}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:16px}.section-heading>p{max-width:48ch;justify-self:end;color:var(--muted)}
.switcher{display:flex;flex-wrap:wrap;gap:4px}.switcher button{border:0;background:transparent;padding:11px 16px;min-height:44px;color:var(--muted);font-size:var(--text-sm)}.switcher button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.switcher button:hover:not([aria-pressed=true]){background:var(--wash)}
.review-note{border-left:2px solid var(--amber-deep);padding:2px 0 2px 16px;color:var(--muted);font-size:var(--text-sm)}
.conversation{background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:0 14px 48px #0a0a0c08;min-width:0}
.mobile-open-chat{display:none;margin-bottom:16px}
@keyframes answer-arrive{from{opacity:.45}to{opacity:1}}
.message{animation:answer-arrive var(--duration) var(--ease)}
@media(max-width:700px){.mobile-open-chat{display:inline-flex}}
.conversation-top{padding:18px 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.conversation-id{display:flex;align-items:center;gap:12px}.gf-mark{display:inline-grid;place-items:center;flex-shrink:0;width:27px;height:27px;background:var(--amber);color:var(--ink);font:500 17px/1 var(--font-sans)}.conversation-top .eyebrow{font-size:11px;letter-spacing:.04em}.conversation-tools{display:flex;gap:8px;align-items:center}.conversation-tools button{padding:8px 10px;min-height:44px;background:transparent;border:0;font-size:var(--text-sm);text-decoration:underline;text-underline-offset:4px}
.transcript{padding:36px 40px;min-height:360px;max-height:560px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.message{max-width:900px;margin-inline:auto;overflow-wrap:anywhere}.message+.message{margin-top:28px}.message-label{font:400 11px/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px;display:flex;align-items:center;gap:10px}.message-label--answer::before{content:"";width:6px;height:6px;background:var(--amber-deep)}.question{font-size:clamp(1.1rem,2vw,1.5rem);letter-spacing:-.025em;line-height:1.35}.answer-lead{font-size:clamp(1.15rem,2.15vw,1.75rem);letter-spacing:-.03em;line-height:1.35;max-width:38ch}.answer-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:24px}.answer-split h4{font-size:var(--text-sm);font-weight:600;letter-spacing:0;margin-bottom:10px}.answer-split ul{margin:0;padding:0;list-style:none}.answer-split li{padding:8px 0;border-top:1px solid var(--line);font-size:var(--text-sm)}.answer-source{margin-top:20px;color:var(--muted);font-size:var(--text-xs)}.answer-source a{display:inline-block;padding-block:8px}
.conversation-bottom{border-top:1px solid var(--line);padding:20px 28px 16px}.prompts{display:flex;flex-wrap:wrap;gap:4px 20px;margin-bottom:12px}.prompts button{border:0;background:transparent;text-align:left;min-height:44px;padding:6px 0;font-size:var(--text-sm);color:var(--muted)}.prompts button:hover{text-decoration:underline;color:var(--ink)}.prompts button::before{content:"↗";margin-right:8px;color:var(--ink)}.composer{display:flex;gap:16px;align-items:center;padding:12px 12px 12px 16px;border:1px solid var(--control-line);border-bottom:2px solid var(--amber-deep);background:#fff}.composer:focus-within{outline:2px solid var(--amber-deep);outline-offset:3px}.composer textarea{border:0;background:transparent;resize:none;min-height:28px;max-height:108px;width:100%;padding:4px 0;font-size:16px;line-height:1.5;color:var(--ink)}.composer textarea:focus-visible{outline:none}.composer textarea::placeholder{color:var(--muted)}.composer button{height:44px;width:44px;min-width:44px;border:0;background:var(--amber);font-size:24px}.composer button:hover{background:var(--amber-light)}.composer-foot{display:flex;gap:16px;justify-content:space-between;margin-top:10px;font-size:var(--text-xs);color:var(--muted)}.conversation-status{font-size:var(--text-sm);color:var(--muted);padding:14px 0 0;max-width:65ch}.inline-fit{width:100%;border-collapse:collapse;margin-top:20px;font-size:var(--text-sm)}.inline-fit th,.inline-fit td{text-align:left;border-top:1px solid var(--line);padding:12px 8px 12px 0;vertical-align:top}.inline-fit th{font-weight:500;width:30%}
.agenda{margin-top:20px;padding:24px;border:1px solid var(--line);background:var(--paper)}.agenda-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin-bottom:16px}.agenda label{display:block;font-size:var(--text-sm);font-weight:500}.agenda textarea{width:100%;min-height:92px;margin:8px 0 14px;background:var(--surface);border:1px solid var(--control-line);padding:12px;resize:vertical;font-size:16px;line-height:1.5}.agenda .small{margin-bottom:16px;color:var(--muted)}
.relationship{padding:40px;background:var(--ink);color:var(--paper)}.relationship-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}.relationship-app{padding:26px 24px;border:1px solid #656366;border-top:2px solid var(--amber);max-width:380px;margin:auto;display:flex;justify-content:space-between;align-items:center;font-size:var(--text-lg)}.relationship-app span:last-child{color:var(--gray);font-size:var(--text-xs)}.relationship-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative;padding-top:52px}.relationship-branches:before{content:"";height:25px;border-top:1px solid #656366;border-left:1px solid #656366;border-right:1px solid #656366;position:absolute;top:26px;left:16.66%;right:16.66%}.relationship-branches:after{content:"";height:52px;border-left:1px solid #656366;position:absolute;top:0;left:50%;pointer-events:none}.relationship-node{position:relative;z-index:1;text-align:left;padding:22px 20px;border:1px solid #656366;background:var(--ink);color:var(--paper);min-height:100px;transition:border-color var(--duration),background var(--duration)}.relationship-node[aria-pressed=true]{border-color:var(--amber);background:#201b13}.relationship-node .eyebrow{color:var(--gray);display:block;margin-bottom:8px}.relationship-node strong{font-size:var(--text-lg);font-weight:500}.relationship-detail{margin-top:28px;padding-top:24px;border-top:1px solid var(--dark-line);display:grid;grid-template-columns:1fr 2fr;gap:24px}.relationship-detail p{color:var(--gray);max-width:56ch}.relationship .review-note{margin-top:32px;color:var(--gray)}
.table-shell{border:1px solid var(--line);background:var(--surface)}.table-heading{padding:24px 28px;display:flex;gap:20px;justify-content:space-between;align-items:start}.table-heading h3{font-size:1.35rem;margin-bottom:8px}.table-heading .eyebrow{color:var(--muted)}.table-scroll{overflow-x:auto;isolation:isolate;overscroll-behavior-x:contain}.data-table{width:100%;min-width:740px;border-collapse:separate;border-spacing:0;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.data-table th,.data-table td{padding:18px 24px;text-align:right;border-top:1px solid var(--line);white-space:nowrap}.data-table thead th{font-size:var(--text-xs);font-weight:500;background:var(--wash)}.data-table th:first-child{position:sticky;left:0;text-align:left;background:var(--surface);z-index:1;border-right:1px solid var(--line);min-width:155px}.data-table thead th:first-child{background:var(--wash)}.data-table td{font-family:var(--font-mono)}.data-table tbody th{font-weight:500}.data-table tr:last-child>*{background:#f4ead8}.table-notes{padding:20px 28px;border-top:1px solid var(--line);font-size:var(--text-xs);color:var(--muted);display:grid;gap:8px}.table-hint{display:none;font-size:var(--text-xs);color:var(--muted);padding:0 28px 16px}
dialog{border:1px solid var(--line);border-radius:0;padding:0;max-width:calc(100% - 32px);background:var(--surface);color:var(--ink);box-shadow:0 20px 90px #0004}dialog::backdrop{background:#0a0a0cbf}body:has(dialog[open]){overflow:hidden}.session-dialog{width:680px;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}.dialog-top{padding:24px 32px 0;display:flex;justify-content:space-between;gap:24px;align-items:center}.dialog-content{padding:24px 32px 32px}.dialog-content h2{font-size:2rem;margin-bottom:16px}.dialog-content>p{color:var(--muted);margin-bottom:24px}.session-form{display:grid;gap:20px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{display:block;font-size:var(--text-sm);font-weight:500;margin-bottom:8px}.field label span{font-weight:400;color:var(--muted)}.field input,.field select,.field textarea{width:100%;min-height:48px;border:1px solid var(--control-line);border-radius:var(--radius);padding:11px 12px;color:var(--ink);background:#fff;font-size:16px}.field textarea{resize:vertical;min-height:90px}.field input[aria-invalid=true]{border:2px solid var(--amber-deep);background:#fff8eb}.field-error{font-size:var(--text-sm);margin-top:6px;color:#784907}.form-notice{background:var(--wash);padding:16px;font-size:var(--text-sm);color:var(--muted)}.form-feedback{padding:16px;border-left:3px solid var(--amber-deep);background:#fff3dd;font-size:var(--text-sm)}.form-feedback ul{margin:8px 0 0;padding-left:20px}.form-feedback a{display:inline-block;padding-block:5px}.form-review{border:1px solid var(--line);padding:20px;overflow-wrap:anywhere}.form-review h3{margin-bottom:16px}.form-review dl{display:grid;grid-template-columns:100px 1fr;gap:12px;font-size:var(--text-sm)}.form-review dt{color:var(--muted)}.form-review dd{margin:0;white-space:pre-wrap}.form-review p{margin-top:20px}.conversation-dialog{margin:0;position:fixed;inset:var(--viewport-top,0px) 0 auto;width:100%;max-width:100%;height:var(--viewport-height,100dvh);max-height:100dvh;border:0;overflow:hidden}.conversation-dialog[open]{display:flex;flex-direction:column}.conversation-dialog>.dialog-top{padding:12px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.conversation-dialog .conversation{display:flex;flex-direction:column;min-height:0;flex:1;border:0;box-shadow:none}.conversation-dialog .transcript{min-height:0;max-height:none;flex:1}.conversation-dialog .conversation-bottom{flex-shrink:0;padding-bottom:max(16px,env(safe-area-inset-bottom))}.conversation-dialog .conversation-top{flex-shrink:0}.conversation-dialog .prompts{display:none}
@media(max-width:800px){.section-heading{grid-template-columns:1fr;gap:20px}.section-heading>p{justify-self:start}.table-hint{display:block}.relationship{padding:28px}.relationship-branches{gap:12px}.relationship-node{padding:16px 12px}.relationship-node strong{font-size:1rem}}
@media(max-width:600px){.conversation-top{padding:12px 16px;gap:4px}.conversation-tools{gap:0}.conversation-tools button{font-size:12px;padding-inline:8px}.transcript{padding:24px 20px;min-height:330px;max-height:490px}.answer-split{grid-template-columns:1fr;gap:20px}.conversation-bottom{padding:16px}.prompts{gap:0 14px}.prompts button{font-size:12px}.composer-foot{display:block}.composer-foot span:last-child{display:none}.answer-source{margin-top:12px}.agenda{padding:16px}.agenda-head{align-items:start}.relationship{padding:24px 20px}.relationship-toolbar{align-items:start}.relationship-branches{grid-template-columns:1fr;padding:24px 0 0 20px;gap:12px}.relationship-branches:before{top:0;bottom:49px;left:0;right:auto;height:auto;width:20px;border:0;border-left:1px solid #656366;border-bottom:1px solid #656366}.relationship-branches:after{display:none}.relationship-node{min-height:80px;padding:16px}.relationship-node:before{content:"";position:absolute;top:50%;left:-21px;width:20px;border-top:1px solid #656366}.relationship-app{max-width:none;padding:20px}.relationship-detail{grid-template-columns:1fr;gap:12px}.relationship .review-note{margin-top:24px}.table-heading{padding:20px;display:block}.table-heading .eyebrow{margin-top:12px}.table-notes{padding:20px}.table-hint{padding-inline:20px}.data-table th,.data-table td{padding:16px}.data-table th:first-child{min-width:130px}.field-grid{grid-template-columns:1fr}.dialog-top{padding:20px 20px 0}.dialog-content{padding:20px}.agenda-head h4{font-size:1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
