:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Noto Sans",sans-serif;color:#243b35;background:#f4f2e9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}main{max-width:880px;margin:auto;padding:28px 24px 16px}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #d6ddd1;background:#fffdf7;color:#314c41;border-radius:10px;padding:10px 14px}button:hover{background:#e6ebdf}button:disabled{opacity:.5;cursor:wait}.primary{background:#315c48;color:#fff;border-color:#315c48}.primary:hover{background:#264a39}.quiet{border:0;background:none;font-size:13px}header{display:flex;align-items:center;gap:14px}header button{margin-left:auto}.logo{font-family:Georgia,serif;font-size:40px;font-weight:bold}.logo span{color:#a98950}.eyebrow{font-size:10px;letter-spacing:2px;color:#6c7c70}h1{font-size:24px;margin:4px 0;font-weight:600}h1 small{font-size:13px;font-weight:400;color:#7b897e;margin-left:8px}.intro{display:flex;align-items:center;justify-content:space-between;padding:32px 0 22px}.pill{font-size:11px;border:1px solid #cbd5c7;padding:5px 10px;border-radius:30px;color:#617760}h2{font-size:29px;line-height:1.55;font-weight:500;margin:17px 0 10px;letter-spacing:1px}.intro p,.muted{font-size:12px;color:#7b8778;line-height:1.7}.symbol{color:#9da88b;font:150px Georgia;transform:rotate(-15deg);padding-right:28px}.status{border-top:1px solid #d7dccf;border-bottom:1px solid #d7dccf;display:flex;align-items:center;gap:8px;font-size:12px;padding:8px 0}.status button{margin-left:auto}#light{width:7px;height:7px;border-radius:50%;background:#c4a16b}#light.ready{background:#608e6e}#chat{height:36vh;min-height:260px;overflow-y:auto;padding:22px 2px;scroll-behavior:smooth}.empty{text-align:center;padding:40px 0;color:#87927f}.empty b{font-size:23px;font-family:serif}.empty p{font-size:13px;line-height:1.9}.message{display:flex;flex-direction:column;margin:0 0 22px;max-width:88%;align-items:flex-start;gap:6px}.message.user{margin-left:auto;align-items:flex-end}.message .name{font-size:10px;letter-spacing:1px;color:#85917c}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;background:#fffdf7;border:1px solid #e2e4d8;border-radius:3px 16px 16px;padding:13px 17px;font-size:15px}.user .bubble{background:#e1e8da;border:0;border-radius:16px 3px 16px 16px}.message button{font-size:11px;padding:3px 8px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin:5px 0 12px}.chips button{font-size:12px;border-radius:25px;background:transparent;padding:7px 12px}#composer{padding:13px;background:#fffdf7;border:1px solid #cfd7c7;border-radius:15px}textarea{resize:vertical}#input{width:100%;background:none;border:0;outline:none;color:#243b35;line-height:1.6;max-height:180px;font-size:16px}.tools,.tools>div{display:flex;align-items:center;gap:6px}.tools{justify-content:space-between;margin-top:8px}.tools button{font-size:12px;padding:9px}.tools label{font-size:11px;white-space:nowrap}#hint{min-height:18px;font-size:12px;color:#8c6041;line-height:1.6;margin:8px 0}footer{text-align:center;font-size:10px;color:#8b9384;padding:8px}dialog{border:1px solid #d6ddce;border-radius:18px;background:#faf9f1;color:#243b35;width:min(560px,94vw);padding:28px;max-height:90dvh}dialog::backdrop{background:#1a302b77}dialog h2{font-size:23px}dialog label{display:block;font-size:13px;margin:13px 0}dialog textarea,dialog input,select{display:block;width:100%;border:1px solid #cbd5c7;background:#fffef8;border-radius:8px;padding:10px;margin:7px 0}dialog textarea{min-height:90px}.close{float:right}hr{border:0;border-top:1px solid #d7dccf;margin:25px 0}.memory{padding:12px 0;border-bottom:1px solid #e2e6d9;font-size:13px}.memory p{white-space:pre-wrap;overflow-wrap:anywhere}.memory button{font-size:11px;padding:5px 9px;margin-right:5px}#loginError{color:#9f4e3e}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #a98950;outline-offset:3px}@media(max-width:550px){main{padding:18px 14px}.intro{padding:24px 0 15px}.symbol{font-size:100px;padding-right:8px}h2{font-size:25px}.eyebrow{font-size:8px;letter-spacing:1px}#chat{height:38dvh}.tools label{font-size:10px}.tools button{padding:9px 6px}.message{max-width:94%}header{gap:9px}header button{padding:8px 0}.intro p{font-size:10px}}

#mockBanner{background:#f5ead3;border:1px solid #dbc797;border-radius:12px;padding:14px;margin-top:14px;font-size:12px;color:#775b2d}#mockBanner p{line-height:1.7;margin:7px 0 10px}#mockBanner .chips{margin-bottom:0}#mockBanner[hidden]{display:none}
#apiPanel{width:min(820px,96vw)}fieldset{border:1px solid #d7dccf;border-radius:12px;margin:20px 0;padding:12px 18px}legend{font-size:14px;font-weight:600;padding:0 8px}.lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lab-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.lab-actions button{font-size:12px}.lab-notice{background:#ece9da;border-radius:8px;padding:12px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}#labResult{white-space:pre-wrap;overflow-wrap:anywhere;background:#e8eddf;padding:14px;border-radius:9px;font-size:13px;max-height:320px;overflow:auto}#apiPanel audio{width:100%;margin:15px 0}#apiPanel input[type=file]{font-size:12px}#downloadVoice,a{color:#315c48}header{flex-wrap:wrap}#apiSettings{margin-left:auto}header #settings{margin-left:0}[hidden]{display:none!important}@media(max-width:550px){#apiPanel{padding:20px 14px}fieldset{padding:10px}.lab-grid{gap:7px}header .quiet{font-size:11px}header{gap:6px}}

.archive-linkbar{margin-top:20px;padding:13px 0;border-top:1px solid #d7dccf;border-bottom:1px solid #d7dccf}.archive-linkbar a{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;text-decoration:none;color:#315c48;font-size:12px}.archive-linkbar span{color:#84917b;font-size:11px}
