:root{color-scheme:light;--ink:#18372f;--paper:#f7f7f0;--green:#245e4d;--line:#dbe1d7}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,sans-serif}main{max-width:920px;margin:auto;padding:24px}header{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:0 0 22px}.brand{display:flex;align-items:center;gap:12px;font:italic 28px Georgia}.brand span{font:600 22px system-ui}#connection{font-size:13px;margin-left:auto;color:#63776d}h1{font:normal clamp(30px,5vw,44px)/1.2 Georgia,serif;letter-spacing:-1px;margin:18px 0}p{color:#52675c}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--green)}#loginPanel{max-width:440px;margin:80px auto}label{display:block;font-size:14px;margin:15px 0}input,textarea,select{display:block;width:100%;font:inherit;color:var(--ink);border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px;margin:8px 0}textarea{resize:vertical}button{font:600 14px system-ui;border:1px solid var(--green);border-radius:30px;padding:12px 22px;background:var(--green);color:white;cursor:pointer}button:hover{filter:brightness(1.08)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #9aab64;outline-offset:3px}nav{display:flex;gap:10px;margin:24px 0}nav button{background:transparent;color:var(--green);border-color:transparent}nav .active{border-color:var(--line);background:white}.intro{margin:45px 0}.actions{display:flex;justify-content:space-between;gap:10px}.actions button:first-child{background:transparent;color:var(--green)}.hint,footer{font-size:12px;color:#6a7a70}footer{border-top:1px solid var(--line);margin-top:40px;padding-top:16px}.bubble{padding:18px 22px;margin:15px 0;background:white;border:1px solid var(--line);border-radius:16px;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.user{margin-left:12%;background:#e8eee3}.bubble strong{display:block;font-size:12px;margin-bottom:6px}.card{border-bottom:1px solid var(--line);padding:18px 0;overflow-wrap:anywhere}.card p{white-space:pre-wrap}.card a{display:block;color:var(--green)}#composer{position:sticky;bottom:0;background:var(--paper);padding-top:8px}#status{min-height:26px;color:#8c3c26}details{margin-top:25px}summary{cursor:pointer}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:550px){main{padding:18px}header{gap:10px}#connection{font-size:11px}button{padding:11px 16px}.intro{margin:28px 0}#loginPanel{margin:45px auto}.bubble.user{margin-left:7%}}
