:root{--bg:#F5F2EA;--bg-admin:#F1EEE6;--ink:#1F2B24;--ink-2:#3B463F;--muted:#5F6862;--line:#E6E0D3;--card:#fff;--orange:#E07B2E;--purple:#5B3FB8;--purple-d:#2A2150;--purple-l:#ECE5FB;--purple-t:#4A2FA0;--green:#2E7A52;--green-l:#E3EFE7;--green-t:#1F5A3B;--blue:#2F6FDB;--blue-l:#E1EBFB;--blue-t:#1F4E9E;--amber-l:#FBEBDD;--amber-t:#8A4B12;--red:#B3261E;--red-l:#FBE3E0;--gray-l:#F1EEE6;--gray-t:#6B726D}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Vazirmatn,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--purple);text-decoration:none}a:hover{color:var(--ink)}button,input,select{font-family:inherit}button{cursor:pointer}.container{max-width:1200px;margin:0 auto;padding:0 24px}.btn{height:46px;padding:0 20px;border-radius:14px;border:none;font-weight:800;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:#fff}.btn.primary{background:var(--purple)}.btn.orange{background:var(--orange);color:var(--ink)}.btn.ghost{background:#fff;color:var(--ink);border:1.5px solid #E2DCCF}.btn.sm{height:34px;padding:0 12px;border-radius:10px;font-size:12px}.btn.danger{background:#fff;color:var(--red);border:1.5px solid #F0C9C4}.btn.ok{background:#fff;color:var(--green-t);border:1.5px solid var(--green)}.btn:disabled{opacity:.5;cursor:not-allowed}.chip{font-size:11px;font-weight:800;padding:4px 10px;border-radius:10px;white-space:nowrap;display:inline-block}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}.field input,.field select{height:48px;border-radius:14px;border:1.5px solid #E2DCCF;padding:0 14px;font-size:15px;background:#fff;color:var(--ink)}.field input:focus{outline:2px solid var(--purple);border-color:transparent}.card{background:var(--card);border-radius:24px;padding:20px;box-shadow:0 1px 2px #1f2b240d}.bar{position:relative;height:8px;border-radius:6px;background:#ece8de;overflow:hidden}.bar>i{position:absolute;top:0;bottom:0;right:0;border-radius:6px;background:var(--purple);transition:width .6s}.fchip{height:38px;padding:0 16px;border-radius:19px;font-size:13px;font-weight:700;border:1.5px solid #E2DCCF;background:#fff;color:var(--ink)}.fchip.on{background:var(--purple-d);border-color:var(--purple-d);color:#fff}.muted{color:var(--muted)}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:12px 20px;border-radius:14px;font-weight:700;font-size:14px;z-index:100;animation:fade .25s}@keyframes fade{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.admin{display:flex;min-height:100vh;background:var(--bg-admin)}.side{width:248px;flex:none;background:var(--purple-d);padding:22px 14px;display:flex;flex-direction:column;gap:6px;position:sticky;top:0;height:100vh}.side .nav{height:46px;border-radius:14px;display:flex;align-items:center;gap:12px;padding:0 14px;color:#cdbdf6;font-weight:600;font-size:14px;border:none;background:transparent;width:100%}.side .nav.on{background:#ffffff1f;color:#fff;font-weight:800}.side .badge{margin-right:auto;min-width:20px;height:20px;border-radius:10px;background:var(--orange);color:var(--ink);font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 6px}.main{flex:1;min-width:0;padding:28px 32px}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.table{display:flex;flex-direction:column}.row{display:grid;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line);font-size:14px}.row.head{font-size:12px;color:var(--muted);font-weight:800}.drawer-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f2b2466;z-index:50;animation:fade2 .2s}.drawer{position:fixed;top:0;bottom:0;left:0;width:min(460px,100%);background:#fff;z-index:51;padding:24px;overflow:auto;display:flex;flex-direction:column;gap:16px;animation:slide .25s}@keyframes fade2{0%{opacity:0}to{opacity:1}}@keyframes slide{0%{transform:translate(-100%)}to{transform:none}}@media(max-width:980px){.side{width:76px}.side .lbl,.side .brand-t{display:none}.main{padding:20px 16px}.row{grid-template-columns:1fr!important}.row.head{display:none}}
