:root{--bg0:#0f1c24;--bg1:#16303a;--bg2:#1d3f4a;--accent:#2bb673;--accent-2:#f0b429;--text:#e8f1f4;--muted:#9bb4bd;--user:#245c6b;--bot:#1a2e36;--danger:#e35d6a;--radius:18px;--font-display:"Vazirmatn", "Segoe UI", Tahoma, sans-serif;--font-body:"Vazirmatn", "Segoe UI", Tahoma, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{font-family:var(--font-body);color:var(--text);background:radial-gradient(1200px 600px at 10% -10%, #1f5a4a55, transparent 60%), radial-gradient(900px 500px at 100% 0%, #c9a22733, transparent 55%), linear-gradient(160deg, var(--bg0), var(--bg1) 45%, #0c161c)}button,input,textarea{font:inherit}.admin-shell{flex-direction:column;gap:16px;max-width:1180px;min-height:100%;margin:0 auto;padding:28px 18px 32px;display:flex}.admin-hero{justify-content:space-between;align-items:flex-start;gap:16px;animation:.7s both rise;display:flex}.admin-hero h1{font-family:var(--font-display);margin:6px 0 8px;font-size:clamp(1.5rem,3.5vw,2.1rem);font-weight:800}.admin-hero-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-keybar{background:#122029cc;border:1px solid #2a4550;border-radius:16px;padding:12px 14px}.admin-keybar label,.admin-editor label{color:var(--muted);flex-direction:column;gap:6px;font-size:.92rem;display:flex}.admin-keybar input,.admin-editor input,.admin-editor textarea,.admin-list-toolbar input{color:var(--text);background:#0c171c;border:1px solid #35545e;border-radius:12px;outline:none;padding:10px 12px}.admin-keybar input:focus,.admin-editor input:focus,.admin-editor textarea:focus,.admin-list-toolbar input:focus{border-color:var(--accent)}.admin-banner{border:1px solid #0000;border-radius:12px;padding:10px 12px}.admin-banner.error{color:#ffc1c8;border-color:var(--danger);background:#3a1c22}.admin-banner.ok{color:#b6f0d0;background:#153528;border-color:#2bb67366}.admin-grid{grid-template-columns:minmax(260px,.95fr) minmax(320px,1.25fr);align-items:start;gap:14px;min-height:0;display:grid}.admin-list-panel,.admin-editor{background:linear-gradient(#13262ecc,#102028ee);border:1px solid #2a4550;border-radius:20px;padding:14px;animation:.85s both rise}.admin-list-toolbar{grid-template-columns:1fr auto auto;gap:8px;margin-bottom:12px;display:grid}.admin-list{flex-direction:column;gap:8px;max-height:min(62vh,640px);display:flex;overflow-y:auto}.admin-list-item{text-align:right;color:var(--text);cursor:pointer;background:#0f1c22;border:1px solid #2a4550;border-radius:14px;flex-direction:column;gap:4px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.admin-list-item span{color:var(--muted);font-size:.82rem}.admin-list-item:hover,.admin-list-item.active{border-color:var(--accent);background:#14332d}.admin-editor{flex-direction:column;gap:12px;display:flex}.admin-editor h2{margin:0;font-size:1.15rem}.admin-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.admin-form-actions{flex-wrap:wrap;gap:10px;display:flex}.accent{background:linear-gradient(160deg, var(--accent), #1f8f5c);color:#062016;cursor:pointer;border:none;border-radius:12px;padding:.65rem 1.1rem;font-weight:700}.accent:disabled{opacity:.55;cursor:not-allowed}.danger{color:#ffc1c8;cursor:pointer;background:#3a1c22;border:1px solid #8a3a44;border-radius:12px;padding:.65rem 1.1rem}.muted{color:var(--muted);margin:0}.mono{word-break:break-all;font-family:ui-monospace,Consolas,monospace;font-size:.8rem}.count{margin-top:10px;font-size:.85rem}.admin-taxonomy{background:linear-gradient(#13262ecc,#102028ee);border:1px solid #2a4550;border-radius:20px;padding:14px 16px 16px;animation:.7s both rise}.admin-taxonomy h2,.admin-taxonomy h3{margin:0 0 8px}.admin-taxonomy-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:12px;display:grid}.admin-chip-list{flex-direction:column;gap:8px;max-height:220px;margin:0 0 12px;padding:0;list-style:none;display:flex;overflow-y:auto}.admin-chip-list li{background:#0f1c22;border:1px solid #2a4550;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.admin-chip-list small{color:var(--muted);font-size:.78rem;display:block}.admin-inline-add{gap:8px;display:grid}.admin-editor select{color:var(--text);background:#0c171c;border:1px solid #35545e;border-radius:12px;outline:none;padding:10px 12px}.admin-editor select:focus{border-color:var(--accent)}.tiny{padding:.3rem .65rem;font-size:.82rem}@media (width<=900px){.admin-taxonomy-grid,.admin-grid{grid-template-columns:1fr}.admin-list{max-height:280px}.admin-list-toolbar,.admin-row{grid-template-columns:1fr}.admin-hero{flex-direction:column}}.shell{flex-direction:column;gap:18px;max-width:880px;min-height:100%;margin:0 auto;padding:28px 18px 20px;display:flex}.hero{justify-content:space-between;align-items:flex-start;gap:16px;animation:.7s both rise;display:flex}.brand{color:var(--accent);letter-spacing:.08em;margin:0;font-size:.95rem;font-weight:700}.hero h1{font-family:var(--font-display);margin:6px 0 8px;font-size:clamp(1.6rem,4vw,2.3rem);font-weight:800;line-height:1.25}.subtitle{color:var(--muted);max-width:36ch;margin:0}.hero-actions{flex-wrap:wrap;gap:8px;display:flex}.ghost{color:var(--text);cursor:pointer;background:0 0;border:1px solid #3d5c66;border-radius:999px;padding:.55rem 1rem;transition:border-color .2s,background .2s}.ghost:hover{border-color:var(--accent);background:#1a3a34}.chat{background:linear-gradient(#13262ecc,#102028ee);border:1px solid #2a4550;border-radius:24px;flex-direction:column;flex:1;min-height:0;animation:.85s both rise;display:flex;overflow:hidden}.transcript{flex-direction:column;flex:1;gap:12px;padding:20px 16px;display:flex;overflow-y:auto}.bubble{border-radius:var(--radius);white-space:pre-wrap;max-width:min(92%,640px);padding:12px 14px;line-height:1.7;animation:.35s both pop}.bubble p{margin:0}.bubble.user{background:linear-gradient(135deg, var(--user), #1d4a56);border-bottom-right-radius:6px;align-self:flex-start}.bubble.assistant{background:var(--bot);border:1px solid #2f4b55;border-bottom-left-radius:6px;align-self:flex-end}.typing{align-items:center;gap:6px;min-width:64px;display:inline-flex}.typing span{background:var(--muted);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite blink}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}.composer{background:#0f1c22cc;border-top:1px solid #2a4550;grid-template-columns:1fr auto;gap:10px;padding:14px;display:grid}.composer textarea{resize:none;color:var(--text);background:#0c171c;border:1px solid #35545e;border-radius:14px;outline:none;padding:12px 14px}.composer textarea:focus{border-color:var(--accent)}.composer button{background:linear-gradient(160deg, var(--accent), #1f8f5c);color:#062016;cursor:pointer;border:none;border-radius:14px;padding:0 1.2rem;font-weight:700;transition:transform .15s,filter .15s}.composer button:disabled{opacity:.5;cursor:not-allowed}.composer button:not(:disabled):hover{filter:brightness(1.08);transform:translateY(-1px)}.error{color:#ffc1c8;border:1px solid var(--danger);background:#3a1c22;border-radius:12px;margin:0 14px 10px;padding:10px 12px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:none}}@keyframes blink{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media (width<=640px){.hero{flex-direction:column}.hero-actions{width:100%}.composer{grid-template-columns:1fr}.composer button{height:46px}}
