:root{font-family:system-ui,'Khmer OS',sans-serif;color:#17372a;background:#f4f6f2;font-size:15px;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{border:1px solid #d9e1d8;background:#fff;color:#17372a;padding:9px 15px;border-radius:10px;cursor:pointer}button:hover{background:#eaf1e7}button:disabled{opacity:.5;cursor:wait}input,textarea,select{width:100%;padding:12px;border:1px solid #d5ded4;border-radius:10px;background:white;color:#17372a}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid #94b783}label{display:block;margin:15px 0 6px;font-size:.9rem}label input,label textarea{display:block;margin-top:7px}h1{font-size:2.5rem;line-height:1.5;letter-spacing:-1px}h2{font-size:1.15rem;margin:0}p{margin:8px 0}.muted{color:#778676}.small{font-size:.78rem}.primary{background:#254e36;color:#fff;border-color:#254e36}.primary:hover{background:#163c28}.brand{display:flex;align-items:center;gap:10px;font-size:1.5rem;font-weight:750;letter-spacing:-1px}.brand:first-letter{color:#adcc79}.eyebrow{font-size:.7rem;letter-spacing:2px;font-weight:700;margin-top:40px}.login{max-width:470px;margin:7vh auto;padding:30px}.login form button{width:100%;margin-top:24px}.login .small{margin-top:24px}.badge{font-size:.65rem;letter-spacing:1.5px;background:#e4edda;padding:4px 12px;border-radius:20px}header{height:76px;display:flex;gap:20px;align-items:center;padding:0 30px;background:white;border-bottom:1px solid #dce4d9}header #logout{margin-left:auto}.card{max-width:500px;margin:40px auto;padding:28px;background:white;border-radius:20px}.card .eyebrow{margin-top:0}main{display:grid;grid-template-columns:300px 1fr;max-width:1440px;margin:auto;height:calc(100dvh - 76px)}aside{padding:24px 18px;border-right:1px solid #dce4d9;overflow:auto;background:#f8faf6}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-title button{border:0}#chatList{margin-top:18px}.chat{display:block;width:100%;text-align:left;border:0;background:transparent;padding:16px 12px;margin-bottom:5px;overflow-wrap:anywhere}.chat.active{background:#e2ecd9}.chat small{float:right;background:#cadcb8;border-radius:12px;padding:0 7px}.danger{color:#a44a35;margin-top:24px;width:100%}.conversation{display:flex;flex-direction:column;min-width:0;overflow:hidden}.chat-heading{padding:18px 25px;display:flex;align-items:center;gap:15px;background:white;border-bottom:1px solid #e0e7dc}.chat-heading>button:last-child{margin-left:auto}#messages{flex:1;overflow-y:auto;padding:26px;display:flex;flex-direction:column;gap:12px}.bubble{align-self:flex-start;max-width:80%;border:1px solid #e0e6db;background:white;padding:12px 16px;border-radius:15px 15px 15px 3px;overflow-wrap:anywhere;white-space:pre-wrap}.bubble.out{align-self:flex-end;background:#e4efd9;border-color:#d8e7ca;border-radius:15px 15px 3px 15px}.bubble time{display:block;font-size:.65rem;color:#7c8e75;text-align:right}.media-label{font-size:.8rem;border-top:1px solid #d7e0d0;padding-top:9px;margin-top:6px}.media-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.media-actions button{font-size:.73rem;padding:6px 9px}.empty{margin:auto;text-align:center;color:#7b8c73}.empty span{display:block;font-size:4rem;color:#3b613b}.empty h2{color:#254e36}#composer{background:white;border-top:1px solid #dce4d9;padding:12px 24px}#sendForm{display:flex;align-items:stretch;gap:10px;margin:10px 0}#sendForm textarea{background:#f5f7f1}#sendForm button{flex-shrink:0}.tools{display:flex;gap:8px}.tools button,#older{font-size:.8rem}#older{border:0;padding:0}dialog{width:min(560px,94vw);max-height:88dvh;border:1px solid #d2ddce;border-radius:18px;padding:24px;color:#17372a;box-shadow:0 30px 100px #10251e40}dialog::backdrop{background:#10251e80}dialog form button{margin-top:14px}#quickList{max-height:35vh;overflow:auto;margin:15px 0}.quick-row{display:flex;gap:7px;margin:8px 0}.quick-row>button:first-child{text-align:left;flex:1}.quick-row small{display:block;color:#778676;white-space:pre-wrap}details{border-top:1px solid #e0e6db;padding-top:12px}summary{cursor:pointer}#preview img,#preview video{max-width:100%;max-height:60dvh}#preview audio{width:100%}#notice{position:fixed;top:15px;left:50%;transform:translateX(-50%);z-index:10;max-width:90vw;background:#17372a;color:#fff;border-radius:12px;padding:10px 20px;display:none}#notice.show{display:block}#back{display:none}[hidden]{display:none!important}@media(max-width:680px){header{padding:0 17px;height:65px;gap:12px}.brand{font-size:1.25rem}.badge{font-size:.55rem}main{height:calc(100dvh - 65px);display:block}aside{height:100%;border:0}.conversation{display:none;height:100%}body.in-chat aside{display:none}body.in-chat .conversation{display:flex}#back{display:block;padding:6px 10px}.chat-heading{padding:12px}#messages{padding:16px}.bubble{max-width:92%}#composer{padding:10px 12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.card{margin:20px 12px}.login{margin:3vh auto}h1{font-size:2.15rem}}
