:root{--bordeaux: #7A1A45;--bordeaux-d: #5A1033;--rose: #C2185B;--rose-l: #FCE4EC;--gold: #C9A227;--gold-l: #FBF3DC;--gold-t: #6d540a;--bg: #F6F1F3;--card: #FFFFFF;--ink: #2A1A22;--muted: #7D6A73;--line: #EADDE3;--side: #2A0F1D;--side-ink: #E9D9E0;--ok: #1E8E5A;--ok-l: #E3F5EC;--warn: #D97706;--warn-l: #FEF3E2;--ko: #C62828;--ko-l: #FDECEC;--wa: #25D366;--f-display: "Playfair Display", Georgia, serif;--f-body: Inter, system-ui, sans-serif;--f-ar: Cairo, Tahoma, sans-serif}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:14px}[dir=rtl] body{font-family:var(--f-ar)}h1,h2,h3{margin:0}.display{font-family:var(--f-display);color:var(--bordeaux)}[dir=rtl] .display{font-family:var(--f-ar)}.page-title{font-family:var(--f-display);font-size:22px;color:var(--bordeaux)}[dir=rtl] .page-title{font-family:var(--f-ar);font-weight:700}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.kpi{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px}.kpi span{color:var(--muted);font-size:12.5px}.kpi b{display:block;font-family:var(--f-display);font-size:28px;color:var(--bordeaux);font-variant-numeric:tabular-nums;margin-top:4px}.kpi em{font-style:normal;font-size:12px;font-weight:600}.kpi em.up{color:var(--ok)}.kpi em.down,.kpi.ko b{color:var(--ko)}.kpi.gold{background:var(--gold-l);border-color:#efdfa8}.kpi.gold b{color:#8a6a0a}.grid2{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;min-width:0}.panel h3{margin:0 0 12px;font-size:15px;display:flex;align-items:center;gap:8px}.panel h3 small{margin-inline-start:auto;color:var(--muted);font-weight:500;font-size:12px}.tbl-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13.5px}th{text-align:start;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap}tr:last-child td{border-bottom:0}tbody tr.click{cursor:pointer}tbody tr:hover{background:#fbf7f9}td.num,th.num{text-align:end;font-variant-numeric:tabular-nums}.chip{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px;white-space:nowrap}.c-ok{background:var(--ok-l);color:var(--ok)}.c-warn{background:var(--warn-l);color:var(--warn)}.c-ko{background:var(--ko-l);color:var(--ko)}.c-rose{background:var(--rose-l);color:var(--rose)}.c-gold{background:var(--gold-l);color:#8a6a0a}.c-grey{background:#eee;color:#666}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.search{flex:1;min-width:200px;font:inherit;background:var(--card);border:1.5px solid var(--line);border-radius:10px;padding:9px 12px;color:var(--ink)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips button{all:unset;cursor:pointer;background:var(--card);border:1px solid var(--line);border-radius:99px;padding:6px 12px;font-weight:600;color:var(--muted);font-size:12.5px}.chips button.on{background:var(--bordeaux);border-color:var(--bordeaux);color:#fff}.btn{all:unset;cursor:pointer;background:var(--bordeaux);color:#fff;padding:9px 16px;border-radius:10px;font-weight:600;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn.o{background:var(--card);color:var(--bordeaux);border:1.5px solid var(--bordeaux);padding:7.5px 14.5px}.btn.danger{background:var(--card);color:var(--ko);border:1.5px solid var(--ko);padding:7.5px 14.5px}.btn.wa{background:var(--wa)}.btn.sm{padding:4px 10px;font-size:12px}.btn[disabled]{opacity:.45;pointer-events:none}.btn:focus-visible,.chips button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.thumb{width:30px;height:36px;border-radius:7px;display:inline-block;vertical-align:middle;margin-inline-end:8px;object-fit:cover}.cat-CAFTAN{background:linear-gradient(160deg,#7a1a45,#c2185b)}.cat-TAKCHITA{background:linear-gradient(160deg,#3a2e6e,#7b6cd9)}.cat-JABADOR{background:linear-gradient(160deg,#4e342e,#a1887f)}.cat-KARAKOU{background:linear-gradient(160deg,#0f4c5c,#2a9d8f)}.cat-OTHER{background:linear-gradient(160deg,#c9a227,#8a6a0a)}.alert-row{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}.alert-row:last-child{border-bottom:0}.alert-row p{margin:2px 0 0;color:var(--muted);font-size:12.5px}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form label{display:grid;gap:5px;font-size:12.5px;font-weight:600;color:var(--muted)}.form input,.form select{font:inherit;color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:10px;padding:10px 12px}.form input:focus,.form select:focus,.search:focus{outline:2px solid var(--bordeaux);outline-offset:-1px}.form .full{grid-column:1/-1}.hint{color:var(--muted);font-size:12.5px;margin:6px 0 0}.err{color:var(--ko);font-size:13px}.modal-bg{position:fixed;inset:0;background:#2a0f1d73;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:var(--card);border-radius:16px;padding:22px;width:min(600px,100%);display:grid;gap:14px;max-height:92vh;overflow:auto}.modal h3{font-family:var(--f-display);color:var(--bordeaux);font-size:21px}.modal .actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.empty{color:var(--muted);text-align:center;padding:30px 10px}.kv{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px dashed var(--line)}.kv span{color:var(--muted)}.kv:last-child{border-bottom:0}.bars{display:flex;align-items:flex-end;gap:8px;height:170px;padding-top:18px;border-bottom:1px solid var(--line)}.bars div{flex:1;background:var(--rose-l);border-radius:6px 6px 0 0;position:relative;min-height:2px}.bars div.cur{background:var(--bordeaux)}.bars div span{position:absolute;top:-18px;left:50%;transform:translate(-50%);font-size:10.5px;color:var(--muted);white-space:nowrap}.bars-x{display:flex;gap:8px;margin-top:6px}.bars-x span{flex:1;text-align:center;font-size:11px;color:var(--muted)}@media (max-width: 860px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grid2,.form{grid-template-columns:1fr}}
