:root{--g:#0c4a3e;--g2:#12805f;--acc:#17a673;--bg:#f3f7f6;--card:#fff;--tx:#14201d;--mu:#6f827d;--ln:#e0e9e7;--out:#dcf6e8}
*{box-sizing:border-box;margin:0}html,body{height:100%}
body{font-family:Vazirmatn,Tahoma,sans-serif;background:var(--bg);color:var(--tx);padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}
button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}
input,select{border:1px solid var(--ln);background:var(--bg);border-radius:12px;padding:11px 14px;width:100%;min-width:0}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px}[hidden]{display:none!important}
.mu{color:var(--mu);font-size:13px}.err{color:#c0392b;font-size:13px;min-height:18px}
.btn{background:var(--g2);color:#fff;border-radius:12px;padding:11px 18px;font-weight:500}.btn.sm{padding:7px 12px;font-size:13px;white-space:nowrap}.btn.ghost{background:var(--out);color:var(--g)}
#auth{min-height:100%;display:grid;place-items:center;padding:20px;background:linear-gradient(160deg,var(--g),#0f7a5c)}
.card{background:var(--card);border-radius:22px;padding:26px;width:min(420px,100%);display:flex;flex-direction:column;gap:10px}
#regf{display:flex;flex-direction:column;gap:10px}
.logo{font-weight:700;letter-spacing:1px}.big{font-size:28px;color:var(--g2);text-align:center}
.tabs{display:flex;gap:6px;background:var(--bg);border-radius:12px;padding:4px}.tabs button{flex:1;padding:8px;border-radius:9px}.tabs .on{background:var(--card);font-weight:700;color:var(--g2);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.app{display:grid;grid-template-columns:88px 340px 1fr;height:100%;max-width:1500px;margin:auto;background:var(--bg)}
.rail{background:var(--g);display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 6px;color:#fff}.rail .logo{margin-bottom:16px;font-size:15px}
.nav{color:#cfe8df;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:20px;padding:8px 4px;border-radius:12px;width:100%}.nav span{font-size:10px}.nav.on,.nav:hover{background:rgba(255,255,255,.13)}.grow{flex:1}
.list{background:var(--card);border-inline-start:1px solid var(--ln);display:flex;flex-direction:column;min-height:0}
.list header{padding:16px 16px 8px;display:flex;justify-content:space-between;align-items:center}.list h2{font-size:18px}
#search{margin:4px 14px 10px;width:auto}
#chats{list-style:none;overflow:auto;padding:0 8px 8px}
#chats li{display:flex;gap:10px;align-items:center;padding:10px;border-radius:14px;cursor:pointer}#chats li:hover{background:var(--bg)}#chats li.on{background:var(--out)}
.av{width:44px;height:44px;border-radius:50%;background:var(--g2);color:#fff;display:grid;place-items:center;font-weight:700;flex:none}
.meta{flex:1;min-width:0}.meta b{font-size:14px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta p{font-size:12px;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.chat{display:none;grid-column:3;grid-row:1;flex-direction:column;min-height:0}.chat.open{display:flex}
.empty{grid-column:3;grid-row:1;display:grid;place-items:center;text-align:center;padding:20px}.chat.open~.empty{display:none}
.empty h1{font-size:26px;margin-bottom:6px}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:12px;margin-top:22px}.tiles button{background:var(--card);border-radius:16px;padding:18px 10px;display:flex;flex-direction:column;gap:6px;font-size:26px;box-shadow:0 2px 10px rgba(12,74,62,.07)}.tiles b{font-size:13px;font-weight:500}
.chat header{display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--card);border-bottom:1px solid var(--ln)}.hn{flex:1;min-width:0}.hn small{display:block;color:var(--mu);font-size:12px}
.back{display:none;font-size:28px;line-height:1}
.t2{margin:10px 16px 0;align-self:flex-start;min-width:260px}
.msgs{flex:1;overflow:auto;padding:16px 18px;display:flex;flex-direction:column;gap:8px}
.m{max-width:min(70%,520px);padding:9px 13px;border-radius:16px;background:var(--card);box-shadow:0 1px 2px rgba(0,0,0,.06);font-size:14px;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}
.m.me{align-self:flex-start;background:var(--out);border-end-start-radius:4px}.m.th{align-self:flex-end;border-end-end-radius:4px}
.m small{display:block;font-size:10px;color:var(--mu)}.m .who{color:var(--g2);font-size:12px;font-weight:700}
.compose{display:flex;gap:8px;padding:12px 14px;background:var(--card);border-top:1px solid var(--ln)}.compose input{border-radius:22px}
.send{background:var(--acc);color:#fff;width:44px;height:44px;border-radius:50%;transform:scaleX(-1);flex:none}
.docs{flex:1;overflow:auto;padding:16px}#df{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}#df input:nth-of-type(2){grid-column:1/-1}
#dl{list-style:none;display:flex;flex-direction:column;gap:8px}#dl li{background:var(--card);border-radius:14px;padding:12px 14px;font-size:14px}#dl b{color:var(--g2)}#dl small{display:block;color:var(--mu);margin-top:4px;font-size:11px}
dialog{border:0;border-radius:20px;padding:22px;width:min(460px,92vw);max-height:86vh;background:var(--card);color:var(--tx);font-family:inherit}dialog::backdrop{background:rgba(5,30,24,.5)}
dialog .x{text-align:start}dialog h3{margin-bottom:10px}.fm{display:flex;flex-direction:column;gap:10px}
.row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--ln);font-size:14px}
.score{font-size:34px;font-weight:700;color:var(--g2)}.chip{background:var(--out);color:var(--g);border-radius:20px;padding:2px 10px;font-size:12px}
@media(max-width:820px){
 .app{grid-template-columns:1fr;grid-template-rows:1fr auto}.rail{grid-row:2;flex-direction:row;justify-content:space-around;padding:6px}.rail .logo,.grow{display:none}.nav{width:auto}
 .list{grid-row:1}.empty{display:none}.chat.open{display:flex;position:fixed;inset:0;z-index:9;background:var(--bg);padding-top:env(safe-area-inset-top)}.back{display:block}.m{max-width:85%}
}
