:root{font-family:Vazirmatn,system-ui,sans-serif;color:#e9edf7;background:#0a0d14;font-synthesis:none;text-rendering:optimizeLegibility;--panel:#111725;--panel2:#151e2e;--line:#263247;--muted:#9aa8bd;--accent:#86a9ff;--accent2:#547fe2;--danger:#d76f75}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 78% -10%,#1d3153 0,transparent 38%),#0a0d14}.shell{max-width:1440px;margin:auto;padding:28px 28px 14px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.eyebrow{font:600 10px system-ui;letter-spacing:2px;color:#8499bc}.topbar h1{font-size:30px;margin:3px 0 0}.sub,.muted{color:var(--muted)}.sub{margin:2px 0;font-size:13px}.account{display:flex;align-items:center;gap:12px;font-size:13px;color:#c7d2e5}.app-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;min-height:calc(100vh - 190px)}.sidebar{display:flex;flex-direction:column;gap:14px}.status-card,.hint-card,.chat-card,.login-card{background:linear-gradient(145deg,#121a29,#101622);border:1px solid var(--line);border-radius:17px;box-shadow:0 18px 50px #0003}.status-card,.hint-card{padding:17px}.card-title{font-size:13px;font-weight:700;margin-bottom:12px}.status-line{display:flex;align-items:center;gap:9px;font-size:14px}.dot{width:9px;height:9px;border-radius:50%;background:#778399;box-shadow:0 0 0 4px #77839922}.dot.ok{background:#5bd2a1;box-shadow:0 0 0 4px #5bd2a122}.dot.bad{background:#e07b82;box-shadow:0 0 0 4px #e07b8222}.tiny{font-size:11px;line-height:1.8}.muted{font-size:12px}.hint-card strong{font-size:13px}.hint-card p{font-size:12px;line-height:2;color:var(--muted);margin-bottom:0}.admin-controls{border-top:1px solid var(--line);margin-top:15px;padding-top:14px}.spaced{margin-top:0}button{font:inherit;cursor:pointer;border:0;border-radius:10px;padding:10px 16px;transition:.15s}button:disabled{opacity:.5;cursor:wait}.primary{color:#081324;background:linear-gradient(135deg,#a5c0ff,#6f96f0);font-weight:700}.primary:hover{filter:brightness(1.08)}.danger{background:#432329;color:#ffc4c7}.ghost{background:#1b2638;border:1px solid #34445e;color:#cbd8ec}.ghost:hover{background:#223149}.small{width:100%;padding:8px 10px;font-size:12px;margin-bottom:8px}.full{width:100%}.chat-card{display:flex;flex-direction:column;min-height:680px;overflow:hidden}.chat-head{padding:17px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.chat-head h2{font-size:16px;margin:0 0 2px}.messages{flex:1;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:16px;max-height:calc(100vh - 370px);min-height:400px}.welcome{margin:auto;text-align:center;max-width:400px;color:var(--muted)}.welcome-mark{height:52px;width:52px;border-radius:16px;background:linear-gradient(135deg,#8fb2ff,#486fc3);display:grid;place-items:center;color:#0b1423;font-size:28px;font-weight:800;margin:0 auto 14px}.welcome h3{color:#e5ecf9;margin:0 0 8px;font-size:18px}.welcome p{font-size:13px;line-height:2}.message{max-width:min(850px,92%);border:1px solid var(--line);border-radius:15px;padding:13px 16px;line-height:2;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.message.user{align-self:flex-start;background:#1a2a45;border-color:#2f466b}.message.assistant{align-self:flex-end;background:#141e2d}.message .role{font-size:10px;color:#91a6c8;margin-bottom:5px}.message img{display:block;max-width:280px;max-height:220px;object-fit:contain;border-radius:9px;margin-top:9px;border:1px solid #394963}.composer{border-top:1px solid var(--line);padding:14px 17px 13px;background:#0f1622}.composer textarea{display:block;width:100%;resize:vertical;min-height:58px;max-height:180px;background:#151f30;border:1px solid #30415d;border-radius:12px;color:#f0f4fb;font:inherit;font-size:13px;padding:12px;outline:none}.composer textarea:focus,input:focus{border-color:#769cec;box-shadow:0 0 0 3px #779ded22}.composer-actions{display:flex;align-items:center;gap:12px;margin-top:10px}.composer-actions .tiny{margin-inline-start:auto}.attach{font-size:12px;color:#b2c7ef;cursor:pointer}.image-preview{padding:6px 0}.image-preview img{height:68px;width:68px;object-fit:cover;border-radius:9px}.image-preview button{padding:3px 9px;margin-inline-start:8px}.error{color:#ff9da4;font-size:12px;min-height:20px;margin-top:7px}.chat-error{padding:0 18px}.login-card{max-width:420px;margin:7vh auto;padding:26px}.login-card h2{font-size:19px;margin:0 0 5px}.login-card form{display:grid;gap:14px;margin-top:22px}.login-card label{display:grid;gap:6px;font-size:12px;color:#c5d2e7}.login-card input{border:1px solid #34445e;background:#0d1420;border-radius:9px;padding:11px;color:#fff;font:inherit;outline:none}.login-card button{margin-top:4px}.hidden{display:none!important}footer{text-align:center;color:#64748b;font:10px system-ui;margin:15px 0 0}
@media(max-width:850px){.shell{padding:17px 13px}.app-layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr}.sidebar .full{grid-column:1/-1}.chat-card{min-height:70vh}.messages{max-height:55vh;min-height:300px}.topbar h1{font-size:25px}}
@media(max-width:520px){.sidebar{grid-template-columns:1fr}.account{font-size:11px}.messages{padding:15px}.message{max-width:100%}.composer-actions{gap:9px}.composer-actions .tiny{display:none}}
