:root{color-scheme:light;--forest:#122b25;--green:#1e4a3d;--paper:#f7f7f1;--cream:#eeeede;--gold:#c6a16a;--ink:#25362e;--muted:#6e796d;--border:#e1e4d8}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px}button,input,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:9px;font-weight:600;padding:11px 16px;transition:background .15s}button:disabled{cursor:wait;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button.primary{background:var(--green);color:white}.primary:hover{background:#28634f}.secondary{background:var(--cream);color:var(--forest)}.quiet{background:transparent;color:var(--muted);font-size:12px;padding:8px}.quiet:hover{color:var(--green);background:var(--cream)}input,textarea{width:100%;border:1px solid var(--border);background:#fff;border-radius:8px;padding:11px;color:var(--ink)}textarea{resize:vertical;line-height:1.55}label:not(.checkbox){display:block;font-size:12px;font-weight:600;margin:16px 0 7px}h1,h2,p{margin-top:0}h2{font-size:21px;font-weight:600;letter-spacing:-.5px;line-height:1.3}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:var(--muted);line-height:1.5}.muted{color:var(--muted);line-height:1.65}.tiny{font-size:11px;color:var(--muted);line-height:1.6}.small-text{font-size:13px}.error{color:#963d29;font-size:13px;line-height:1.6;min-height:0}.error:empty{display:none}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.emblem{display:grid;place-items:center;width:62px;height:62px;border:1px solid var(--gold);border-radius:18px;font:600 38px Georgia,serif;color:var(--gold);background:var(--forest)}.emblem.small{width:40px;height:40px;font-size:26px;border-radius:12px}.login-page{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 0%,#294c3c 0%,var(--forest) 60%);padding:25px}.login-card{width:min(400px,100%);padding:40px 35px;background:var(--paper);border-radius:22px;box-shadow:0 25px 90px #07170f77}.login-card .emblem{margin-bottom:22px}.login-card h1{font:600 43px Georgia,serif;letter-spacing:3px;margin-bottom:15px}.login-card .eyebrow{font-size:9px}.login-card button{width:100%;margin:22px 0 14px;display:flex;justify-content:space-between}.login-card>.tiny{margin:22px 0 0;text-align:center}.workspace{min-height:100dvh;display:grid;grid-template-columns:230px minmax(340px,1fr) 290px}.sidebar{background:var(--forest);color:#e6e9dc;padding:28px 18px;display:flex;flex-direction:column;height:100dvh;position:sticky;top:0}.brand{display:flex;align-items:center;gap:12px;margin-bottom:36px}.brand strong{font:600 24px Georgia,serif;letter-spacing:2px}.brand span{display:block;font-size:10px;color:#a4b7a6;margin-top:3px}.sidebar .primary{border:1px solid #52705e;background:#29483b;font-size:13px}.section-label{margin:30px 10px 12px;color:#99ad9b;font-size:9px}.sidebar nav{overflow:auto;flex:1}.chat-link{width:100%;text-align:left;background:transparent;color:#c0ccbf;font-size:12px;font-weight:450;line-height:1.5;margin-bottom:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-link.active{background:#315344;color:#fff}.chat-link:hover{background:#27493a}.sidebar-footer{border-top:1px solid #354c3e;padding-top:15px;display:flex;flex-wrap:wrap}.sidebar-footer .quiet{color:#b5c4b3}.conversation{padding:26px 38px 14px;display:flex;flex-direction:column;min-width:0;min-height:100dvh;max-height:100dvh}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);padding-bottom:20px}.topbar .eyebrow{margin-bottom:5px}.topbar h2{font-size:17px;margin:0}.topbar #toggle-notes{display:none}.messages{flex:1;overflow:auto;padding:28px 0;scroll-behavior:smooth}.welcome{max-width:480px;margin:9vh auto 20px}.welcome .eyebrow{color:#8c734e}.welcome h2{font:400 clamp(28px,3vw,40px)/1.18 Georgia,serif;letter-spacing:-1px;margin:14px 0 20px}.welcome p{font-size:14px;line-height:1.7}.suggestions{display:grid;gap:9px;margin-top:28px}.suggestion{background:#fff;border:1px solid var(--border);text-align:left;font-size:12px;font-weight:500;color:var(--green);padding:14px}.message{padding:0 0 25px}.message .speaker{font-size:10px;font-weight:700;letter-spacing:1.7px;margin-bottom:10px;color:var(--muted)}.message.user .body{background:var(--cream);border-radius:13px 13px 3px 13px;padding:16px 19px;margin-left:25px}.message .body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8}.message.assistant .speaker{color:var(--green)}.composer{border:1px solid #d6dccd;border-radius:14px;padding:12px 15px 6px;background:#fff;box-shadow:0 4px 15px #233e2510}.composer textarea{border:0;padding:2px;max-height:180px;min-height:62px;resize:vertical}.composer textarea:focus{outline:none}.composer:focus-within{border-color:var(--green)}.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:7px}.checkbox{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.checkbox input{width:14px;accent-color:var(--green)}.composer .primary{font-size:12px}.composer .tiny{margin:7px 0 0;font-size:10px}.model-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;font-size:10px;color:var(--muted);flex-wrap:wrap}.notes-panel{background:#eeefe5;border-left:1px solid var(--border);padding:32px 25px;height:100dvh;overflow:auto}.notes-panel h2{font:400 25px/1.2 Georgia,serif;margin:12px 0 18px}.note{border-bottom:1px solid #d6ddce;padding:15px 0}.note h3{font-size:13px;margin:0 0 5px}.note p{font-size:12px;white-space:pre-wrap;line-height:1.65;margin:0;overflow-wrap:anywhere}.note .quiet{padding-left:0;font-size:10px}.notes-panel form{margin-top:20px}.notes-panel form button{width:100%;margin-top:13px;background:#d9dfce}.roles-card{margin-top:30px;padding-top:22px;border-top:1px solid #d5ddcb}.roles-card p:not(.eyebrow){font-size:12px;line-height:1.7;margin-bottom:13px}.roles-card span{color:var(--muted)}.banner{padding:13px;margin-top:15px;background:#fff1cf;border-radius:9px;color:#715321;font-size:12px;line-height:1.6}.run-panel{border-left:3px solid var(--gold);padding:9px 15px;margin-bottom:15px;max-height:180px;overflow:auto;background:#eeefe7;border-radius:0 8px 8px 0}.run-panel>p{font-size:12px;margin:0 0 6px}.run-panel details{font-size:11px;line-height:1.7}.run-panel summary{cursor:pointer;font-weight:600}.run-panel details p{white-space:pre-wrap;overflow-wrap:anywhere;padding-top:7px}.app-error{margin-bottom:10px}.busy::before{content:'';display:inline-block;width:7px;height:7px;background:var(--gold);border-radius:50%;margin-right:8px;animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.25}}
@media(min-width:1600px){.conversation{padding-left:70px;padding-right:70px}.workspace{grid-template-columns:250px minmax(340px,1fr) 320px}}
@media(max-width:1150px){.workspace{grid-template-columns:200px minmax(340px,1fr)}.notes-panel{display:none;position:fixed;right:0;top:0;width:300px;z-index:4;box-shadow:-20px 0 60px #122b2520;padding-top:75px}.notes-panel.open{display:block}.topbar #toggle-notes{display:block;position:relative;z-index:5}.conversation{padding:24px}.sidebar{padding:24px 14px}}
@media(max-width:650px){.workspace{display:flex;flex-direction:column;min-height:100dvh}.sidebar{position:relative;top:auto;height:auto;display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px}.brand{margin:0}.brand strong{font-size:21px}.brand .emblem{width:34px;height:34px}.sidebar .section-label,.sidebar-footer{display:none}.sidebar nav{grid-column:1/-1;display:flex;gap:5px;max-height:40px;overflow:auto}.chat-link{width:auto;max-width:170px;flex-shrink:0;font-size:11px;padding:8px 11px}.conversation{min-height:calc(100dvh - 112px);max-height:none;height:calc(100dvh - 112px);padding:16px}.topbar{padding-bottom:14px}.topbar h2{font-size:14px}.messages{padding-top:20px}.welcome{margin:5vh 0 20px}.welcome h2{font-size:33px}.composer-actions .checkbox{font-size:10px}.model-footer{font-size:9px}.model-footer .quiet{font-size:10px}.notes-panel{width:min(320px,92vw)}.login-card{padding:30px}.message .body{font-size:13px}.message.user .body{margin-left:10px}}

.mobile-only{display:none}@media(max-width:650px){.mobile-only{display:block}}
