@font-face{font-family:Vazirmatn;src:local("Vazirmatn"),url(/Vazirmatn.woff2)}
:root{--p:#1e3a8a;--a:#3b82f6;--bg:#f4f6fa;--c:#fff;--t:#1f2937;--m:#6b7280;--b:#e5e7eb;--ok:#16a34a;--bad:#dc2626}
*{box-sizing:border-box}body{margin:0;font-family:Vazirmatn,Tahoma,system-ui,sans-serif;background:var(--bg);color:var(--t);font-size:15px}
button,input,select,textarea{font:inherit}
.shell{display:flex;min-height:100vh}
.side{width:230px;background:var(--p);color:#fff;padding:18px 12px;position:sticky;top:0;height:100vh;flex-shrink:0}
.side h2{font-size:17px;margin:4px 8px 18px}.side a{display:block;color:#dbe4ff;padding:10px 12px;border-radius:8px;text-decoration:none;margin-bottom:4px}
.side a.on,.side a:hover{background:rgba(255,255,255,.14);color:#fff}.side .who{font-size:12px;color:#aab8e8;margin:16px 8px 8px}
.top{display:none}main{flex:1;padding:22px;min-width:0;max-width:1200px}
h1{font-size:21px;margin:0 0 16px;color:var(--p)}h3{margin:0 0 10px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}
.card,.box{background:var(--c);border:1px solid var(--b);border-radius:12px;padding:14px}.box{margin-bottom:16px}
.card small{color:var(--m);display:block}.card b{font-size:20px;color:var(--p)}
table{width:100%;border-collapse:collapse}th,td{text-align:right;padding:9px 8px;border-bottom:1px solid var(--b);white-space:nowrap}
th{color:var(--m);font-weight:600;font-size:13px}.scroll{overflow-x:auto}
.btn{background:var(--p);color:#fff;border:0;border-radius:8px;padding:9px 16px;cursor:pointer}.btn.sm{padding:5px 10px;font-size:13px}
.btn.ghost{background:#eef2ff;color:var(--p)}.btn.red{background:#fee2e2;color:var(--bad)}
.chip{border:1px solid var(--b);background:#fff;border-radius:99px;padding:5px 13px;cursor:pointer}.chip.on{background:var(--a);color:#fff;border-color:var(--a)}
.filter{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px;align-items:center}
input,select,textarea{border:1px solid var(--b);border-radius:8px;padding:8px 10px;background:#fff;width:100%}
label{display:block;font-size:13px;color:var(--m);margin-bottom:10px}label input,label select,label textarea{margin-top:4px;color:var(--t)}
.filter input{width:auto}
.bars{display:flex;gap:4px;height:190px;align-items:flex-end;overflow-x:auto;padding-top:4px}
.bar{flex:1;min-width:44px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;font-size:11px;color:var(--m)}
.bar i{display:block;width:70%;background:var(--a);border-radius:5px 5px 0 0;min-height:2px}.bar .v{color:var(--t)}.bar .l{margin-top:4px;white-space:nowrap;text-align:center;line-height:1.35}
.row{display:grid;grid-template-columns:2fr repeat(7,1fr) auto;gap:8px;align-items:end;margin-bottom:8px;padding:10px;background:#f8fafc;border-radius:10px}
.row label{margin:0}.row.bad{outline:2px solid var(--bad)}
.rep{border:1px solid var(--b);border-radius:10px;padding:12px;margin-bottom:10px;background:#fff}
.rep header{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}.muted{color:var(--m);font-size:13px}
.tag{padding:2px 8px;border-radius:99px;font-size:12px;background:#dcfce7;color:var(--ok)}.tag.off{background:#fee2e2;color:var(--bad)}
.login{max-width:360px;margin:12vh auto;padding:0 16px}.login .box{padding:26px}.err{color:var(--bad);min-height:1em;font-size:13px}
dialog{border:0;border-radius:14px;padding:20px;width:min(420px,92vw)}dialog::backdrop{background:rgba(0,0,0,.4)}.acts{display:flex;gap:8px}
#toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:9}
#toast div{background:#111827;color:#fff;padding:10px 18px;border-radius:10px;margin-top:6px}#toast .e{background:var(--bad)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:800px){.side{position:fixed;right:0;z-index:5;transform:translateX(100%);transition:.2s}.side.open{transform:none}
 .top{display:flex;align-items:center;gap:10px;background:var(--p);color:#fff;padding:10px 14px;position:sticky;top:0;z-index:4}
 .top button{background:none;border:0;color:#fff;font-size:22px}.shell{display:block}main{padding:14px}.two{grid-template-columns:1fr}
 .row{grid-template-columns:1fr 1fr 1fr}.row label:first-child{grid-column:1/-1}}
@media print{.side,.top,.btn,.filter,#toast,.noprint{display:none!important}body{background:#fff}main{padding:0}}
@media print{.bar i{-webkit-print-color-adjust:exact;print-color-adjust:exact}.two{grid-template-columns:1fr 1fr}}
.pr{display:none}
@media print{.pr{display:block}.bars{overflow:visible}.bar{min-width:0}.bar .l{font-size:9px;white-space:normal}.noprint{display:none!important}}
