:root{--paper:#111B25;--panel:#162430;--field:#192B39;--ink:#EEE8DC;--muted:#A2B1BC;--rule:#30424E;--light:#F5C531;--kata:#BDD8EA;--error:#FFB4AB;--shadow:0 25px 90px #0006;color-scheme:dark}
:root[data-theme="paper"]{--paper:#FBF8EE;--panel:#FFFDF6;--field:#FFFEF9;--ink:#24231E;--muted:#726E62;--rule:#DCD6C8;--light:#D6A913;--kata:#4A555D;--error:#A12626;--shadow:0 25px 90px #201B1225;color-scheme:light}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink)}body{font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.62}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:1px solid var(--rule);border-radius:8px;padding:.5rem .85rem;cursor:pointer;min-height:42px}button:hover{border-color:var(--light)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--light);outline-offset:3px}input,select,textarea{background:var(--field);border:1px solid var(--rule);border-radius:8px;padding:.6rem .8rem;max-width:100%}input:not([type="checkbox"]),textarea{width:100%}textarea{resize:vertical;line-height:1.55}label{display:block;margin:.9rem 0 .3rem;font-size:.93rem}.primary{background:var(--light);border-color:var(--light);color:#18222A;font-weight:bold}.quiet{border-color:transparent;color:var(--muted);font-size:.9rem;padding:.35rem .55rem}.quiet:hover{color:var(--ink);border-color:var(--rule)}.wide{width:100%}.muted{color:var(--muted)}.small{font-size:.85rem;line-height:1.55}.error{color:var(--error);font-size:.9rem;white-space:pre-wrap;overflow-wrap:anywhere}.error:empty{display:none}.check{display:flex;gap:.65rem;align-items:flex-start;font-size:.85rem;margin:1rem 0}.check input{margin-top:.4rem;accent-color:var(--light)}[hidden]{display:none!important}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden;white-space:nowrap}.login-view{min-height:100dvh;display:grid;place-items:center;padding:2rem 1rem}.login-card{width:100%;max-width:420px;padding:2rem 2rem 1.5rem;background:var(--panel);border:1px solid var(--rule);border-radius:16px;box-shadow:var(--shadow)}.eyebrow{font-family:system-ui,sans-serif;font-size:.65rem;letter-spacing:.22em;color:var(--muted)}h1{font-weight:normal;font-size:4rem;line-height:1.1;margin:1rem 0 .3rem}.sun{color:var(--light)}.intro{font-size:1.05rem;color:var(--muted);margin:0}.gold-rule{width:42px;height:2px;background:var(--light);margin:1.4rem 0}.home{max-width:920px;min-height:100dvh;margin:auto;display:flex;flex-direction:column;border-left:1px solid var(--rule);border-right:1px solid var(--rule)}header{position:sticky;top:0;background:var(--paper);z-index:2;border-bottom:1px solid var(--rule);padding:.9rem 1.4rem .5rem}.topline{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.brand #name{font-size:1.8rem;color:var(--light)}.brand .tagline{display:block;font-family:system-ui,sans-serif;font-size:.62rem;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}.header-right{display:flex;gap:.35rem;align-items:center}.header-right time{font-family:system-ui,sans-serif;font-size:.72rem;color:var(--muted)}.rooms{display:flex;gap:.15rem;overflow-x:auto;margin-top:.9rem;scrollbar-width:thin}.tab{border:0;border-bottom:2px solid transparent;border-radius:0;padding:.3rem .8rem;color:var(--muted);white-space:nowrap;font-size:.95rem}.tab.on{border-bottom-color:var(--light);color:var(--ink)}.toolsbar{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;margin-top:.5rem}.toolsbar select{font-size:.8rem;padding:.4rem;max-width:230px;min-height:36px}.toolsbar .quiet{font-size:.8rem;min-height:36px}main{flex:1;padding:1.5rem 1.6rem;min-height:240px}.msg{margin:0 0 1.7rem;overflow-wrap:anywhere}.msg.kata{color:var(--kata);padding-left:1rem;border-left:2px solid var(--rule)}.who{font-family:system-ui,sans-serif;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}.lumen .who{color:var(--light)}.message-text{white-space:pre-wrap}.message-photo{display:block;max-width:260px;max-height:300px;border:1px solid var(--rule);border-radius:9px;margin:.65rem 0;object-fit:contain}.attachment-link,.artifact-link{display:inline-block;font-family:system-ui,sans-serif;font-size:.8rem;color:var(--kata);border:1px solid var(--rule);border-radius:7px;padding:.4rem .6rem;margin:.4rem .3rem .2rem 0;overflow-wrap:anywhere}.message-action{font-family:system-ui,sans-serif;font-size:.72rem;min-height:30px;margin-top:.35rem}.empty{margin:2rem auto 4rem;max-width:430px;text-align:center;color:var(--muted)}.empty h2{font-weight:normal;color:var(--ink)}.empty .small{max-width:320px;margin:auto}.context-info{font: .72rem/1.5 system-ui,sans-serif;color:var(--muted);padding:.6rem 0}.notice,.connection,.demo{font:.8rem/1.5 system-ui,sans-serif;padding:.55rem 1rem}.notice{background:var(--field);border-bottom:1px solid var(--rule)}.connection{background:#6C2929;color:#fff;text-align:center;position:sticky;top:0;z-index:4}.demo{background:#614D16;color:#FFF5D4;text-align:center}.pending-text{white-space:pre-wrap}.breathe{animation:breathe 1.6s infinite}@keyframes breathe{50%{opacity:.45}}footer{position:sticky;bottom:0;background:var(--paper);border-top:1px solid var(--rule);padding:.7rem 1.4rem max(.6rem,env(safe-area-inset-bottom));z-index:2}.composer textarea{min-height:80px;max-height:220px;resize:none;font-size:1rem}.compose-actions{display:flex;align-items:center;gap:.3rem;margin-top:.4rem;justify-content:space-between}.compose-actions>div{display:flex;gap:.15rem}.footer-note{font:.65rem/1.4 system-ui,sans-serif;color:var(--muted);text-align:center;margin:.4rem 0 .1rem}.chips{display:flex;gap:.4rem;flex-wrap:wrap}.chip{font:.75rem system-ui,sans-serif;display:flex;align-items:center;gap:.4rem;padding:.3rem .5rem;background:var(--panel);border:1px solid var(--rule);border-radius:7px;margin-bottom:.4rem}.chip button{border:0;padding:0 .3rem;min-height:28px}.chip img{width:32px;height:32px;object-fit:cover;border-radius:4px}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:12px;width:calc(100% - 2rem);max-width:700px;max-height:90dvh;padding:1.3rem 1.5rem;box-shadow:var(--shadow)}dialog::backdrop{background:#0009}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{margin:0;font-weight:normal;font-size:1.5rem}.close{border:0;font-size:1.6rem;padding:0 .5rem}.long{min-height:45dvh;margin-top:.8rem;font-size:.9rem}.medium{min-height:180px;font-size:.95rem}.row{display:flex;justify-content:flex-end;gap:.7rem;margin-top:1rem;flex-wrap:wrap}dialog p{font-size:.9rem}dialog h3{font-size:1.1rem;font-weight:normal;border-top:1px solid var(--rule);margin-top:1.6rem;padding-top:1rem}.session{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.8rem 0;font-size:.85rem}.search-row{display:flex;gap:.5rem;margin:1rem 0}.hit{display:block;text-align:left;width:100%;margin-bottom:.5rem;white-space:pre-wrap;font-size:.85rem}.archive-read{font: .9rem/1.6 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--panel);padding:1rem}.status-pill{font-family:system-ui,sans-serif;font-size:.66rem;color:var(--error);margin-left:.7rem}@media(max-width:600px){body{font-size:17px}.home{border:0}header{padding:.65rem .75rem .4rem}.brand #name{font-size:1.6rem}.tagline{display:none!important}.header-right{gap:0}.header-right time{font-size:.65rem}.quiet{padding:.35rem .4rem}.rooms{margin-top:.5rem}.toolsbar{gap:.1rem}.toolsbar select{max-width:155px;font-size:.73rem}.toolsbar .quiet{font-size:.73rem;padding:.3rem .4rem}main{padding:1.2rem 1rem}footer{padding:.55rem .7rem max(.5rem,env(safe-area-inset-bottom))}.compose-actions .quiet{font-size:.8rem;min-height:44px}.composer textarea{min-height:75px}.message-photo{max-width:min(260px,100%)}.login-card{padding:1.6rem}.footer-note{font-size:.6rem}dialog{padding:1rem;max-height:94dvh}.row button{font-size:.9rem}}@media(prefers-reduced-motion:reduce){.breathe{animation:none}}

/* Internet search is an explicit, visible per-send choice. */
.web-controls{display:flex;flex-wrap:wrap;gap:.2rem .8rem;align-items:center;margin:.25rem 0 .45rem}
.web-controls .check{margin:0;white-space:nowrap;font-size:.85rem}
.web-controls input{width:auto}
.web-controls .small{font-size:.76rem;flex:1;min-width:10rem}
.source-links{display:flex;flex-wrap:wrap;gap:.2rem .8rem;font:13px/1.5 system-ui,sans-serif;margin:.3rem 0 .8rem}
.source-link{color:var(--kata);overflow-wrap:anywhere}
.web-details{font:13px/1.5 system-ui,sans-serif;margin:.5rem 0;overflow-wrap:anywhere}
.web-details summary{cursor:pointer}
