@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-ext-600-normal-B85nYjL1.woff2) format("woff2"),url(/assets/outfit-latin-ext-600-normal-CWJcPgd7.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-600-normal-B7SfZ07L.woff2) format("woff2"),url(/assets/outfit-latin-600-normal-BEfTtDA7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-ext-700-normal-CI4iH74K.woff2) format("woff2"),url(/assets/outfit-latin-ext-700-normal-fjS8-Gm7.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-700-normal-Cu9v6i1X.woff2) format("woff2"),url(/assets/outfit-latin-700-normal-D4itBLBr.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Nastaliq Urdu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-nastaliq-urdu-arabic-400-normal-BVDOj1dq.woff2) format("woff2"),url(/assets/noto-nastaliq-urdu-arabic-400-normal-Df9iHKj9.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Noto Nastaliq Urdu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-nastaliq-urdu-latin-ext-400-normal-ULxojL9g.woff2) format("woff2"),url(/assets/noto-nastaliq-urdu-latin-ext-400-normal-BwovpPbk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Nastaliq Urdu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-nastaliq-urdu-latin-400-normal-uocoWRvS.woff2) format("woff2"),url(/assets/noto-nastaliq-urdu-latin-400-normal-BlOzo2Ia.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Nastaliq Urdu;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-nastaliq-urdu-arabic-600-normal-Bim-T0zK.woff2) format("woff2"),url(/assets/noto-nastaliq-urdu-arabic-600-normal-CV1nlLWd.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Noto Nastaliq Urdu;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-nastaliq-urdu-latin-ext-600-normal-DNrZYccb.woff2) format("woff2"),url(/assets/noto-nastaliq-urdu-latin-ext-600-normal-Dlo0hw6X.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Nastaliq Urdu;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-nastaliq-urdu-latin-600-normal-DsDLZnI4.woff2) format("woff2"),url(/assets/noto-nastaliq-urdu-latin-600-normal-CsvZvVPT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand: #1a56b8;--brand-hover: #15479a;--brand-soft: #e8f0fc;--brand-ink: #0f2547;--accent: #0ea5e9;--nav-bg: #0f2547;--nav-ink: #c9d6ee;--nav-active: #1a56b8;--ink: #1b2433;--ink-2: #4b5768;--ink-3: #7b8799;--bg: #f4f7fc;--surface: #ffffff;--surface-2: #f8fafd;--line: #e1e7f0;--line-2: #cfd8e6;--ok: #15803d;--ok-soft: #e7f6ec;--warn: #b45309;--warn-soft: #fdf3e2;--bad: #c0262d;--bad-soft: #fdecec;--info: #0369a1;--info-soft: #e5f3fb;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(15, 37, 71, .06);--shadow: 0 4px 14px rgba(15, 37, 71, .08);--font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-head: "Outfit", "Inter", sans-serif;--font-ur: "Noto Nastaliq Urdu", "Jameel Noori Nastaleeq", serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:15px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}[dir=rtl] body,[dir=rtl]{font-family:var(--font-ur),var(--font)}[dir=rtl]{line-height:1.9}h1,h2,h3,h4{font-family:var(--font-head);color:var(--brand-ink);margin:0 0 .4em;line-height:1.25}[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3,[dir=rtl] h4{font-family:var(--font-ur)}h1{font-size:1.5rem;font-weight:700}h2{font-size:1.2rem;font-weight:600}h3{font-size:1.02rem;font-weight:600}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}.num,td.num,th.num{font-variant-numeric:tabular-nums;text-align:end;white-space:nowrap;direction:ltr}.muted{color:var(--ink-3)}.small{font-size:.85rem}.nowrap{white-space:nowrap}.ltr{direction:ltr;unicode-bidi:embed}.shell{display:flex;min-height:100%}.sidebar{width:248px;flex:none;background:var(--nav-bg);color:var(--nav-ink);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:18px 18px 14px;color:#fff}.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--brand);display:grid;place-items:center;color:#fff;flex:none}.brand-name{font-family:var(--font-head);font-weight:700;font-size:1.05rem;line-height:1.1}.brand-sub{font-size:.75rem;color:var(--nav-ink);opacity:.8}.nav{padding:6px 10px 20px}.nav-group{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#7f93b6;padding:14px 10px 6px}.nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:var(--nav-ink);font-size:.92rem;text-decoration:none}.nav a:hover{background:#ffffff12;color:#fff}.nav a.active{background:var(--nav-active);color:#fff}.nav .badge{margin-inline-start:auto}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:60px;display:flex;align-items:center;gap:12px;padding:0 22px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar .spacer{flex:1}.content{padding:22px;max-width:1400px;width:100%;margin:0 auto}.menu-btn,.backdrop{display:none}@media (max-width: 900px){.sidebar{position:fixed;inset:0 auto 0 0;z-index:50;transform:translate(-100%);transition:transform .2s ease}[dir=rtl] .sidebar{inset:0 0 0 auto;transform:translate(100%)}.sidebar.open{transform:none}.backdrop.open{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0a142873;z-index:40}.menu-btn{display:inline-flex}.topbar{padding:0 12px}.content{padding:14px 12px 80px}.hide-sm{display:none!important}}.page-head{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:18px}.page-head .grow{flex:1;min-width:200px}.page-head p{margin:2px 0 0;color:var(--ink-3)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-body{padding:18px}.card-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}.card-head h2,.card-head h3{margin:0;flex:1}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 1100px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.stat{padding:16px 18px}.stat .label{color:var(--ink-3);font-size:.82rem;display:flex;align-items:center;gap:6px}.stat .value{font-family:var(--font-head);font-size:1.55rem;font-weight:700;color:var(--brand-ink);margin-top:4px;direction:ltr;text-align:start}[dir=rtl] .stat .value{text-align:right}.stat .hint{font-size:.8rem;color:var(--ink-3);margin-top:2px}.stat.accent{background:linear-gradient(135deg,var(--brand),#2f74d8);border:none}.stat.accent .label,.stat.accent .hint{color:#dbe7fb}.stat.accent .value{color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 14px;border-radius:8px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);font:inherit;font-weight:500;font-size:.9rem;cursor:pointer;white-space:nowrap;text-decoration:none}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-hover)}.btn-ok{background:var(--ok);border-color:var(--ok);color:#fff}.btn-ok:hover{background:#116632}.btn-danger{background:var(--surface);border-color:#efc2c4;color:var(--bad)}.btn-danger:hover{background:var(--bad-soft)}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:var(--brand-soft)}.btn-sm{height:30px;padding:0 10px;font-size:.82rem}.btn-lg{height:48px;padding:0 20px;font-size:1rem}.btn-block{width:100%}.icon-btn{width:38px;padding:0}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.field label{font-size:.84rem;font-weight:500;color:var(--ink-2)}.field .help{font-size:.78rem;color:var(--ink-3)}.field .error{font-size:.8rem;color:var(--bad)}.input,select.input,textarea.input{height:40px;padding:0 11px;border:1px solid var(--line-2);border-radius:8px;background:var(--surface);font:inherit;color:var(--ink);width:100%}textarea.input{height:auto;min-height:80px;padding:9px 11px;resize:vertical}.input:focus{outline:2px solid color-mix(in srgb,var(--brand) 35%,transparent);border-color:var(--brand)}.input.big{height:56px;font-size:1.4rem;font-weight:600;text-align:center;direction:ltr}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}@media (max-width: 600px){.form-grid{grid-template-columns:minmax(0,1fr)}}.check{display:flex;align-items:center;gap:8px;font-size:.9rem;margin-bottom:12px}.table-wrap{overflow-x:auto}table.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th{text-align:start;font-weight:600;color:var(--ink-2);font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;background:var(--surface-2);padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap;-webkit-user-select:none;user-select:none}[dir=rtl] .table th{text-transform:none;letter-spacing:0;font-size:.85rem}.table th.sortable{cursor:pointer}.table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.table tbody tr:hover{background:#fafcff}.table tfoot td{font-weight:600;background:var(--surface-2)}.table .actions{text-align:end;white-space:nowrap}.table-foot{display:flex;align-items:center;gap:10px;padding:10px 14px;color:var(--ink-3);font-size:.85rem}.table-foot .spacer{flex:1}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--brand-soft);color:var(--brand);white-space:nowrap}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.info{background:var(--info-soft);color:var(--info)}.badge.gray{background:#eef1f6;color:var(--ink-2)}.badge.count{background:#ef4444;color:#fff;min-width:20px;justify-content:center;padding:1px 6px}.alert{padding:11px 14px;border-radius:var(--radius);font-size:.9rem;margin-bottom:14px;display:flex;gap:10px;align-items:flex-start}.alert.bad{background:var(--bad-soft);color:#8d1c21}.alert.ok{background:var(--ok-soft);color:#0f5c2c}.alert.warn{background:var(--warn-soft);color:#7c3a06}.alert.info{background:var(--info-soft);color:#075075}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a142880;z-index:100;display:grid;place-items:center;padding:16px}.modal{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:560px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 20px 50px #00000040}.modal.wide{max-width:880px}.modal-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;flex:1}.modal-body{padding:18px;overflow-y:auto;flex:1 1 auto;min-height:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 18px;border-top:1px solid var(--line)}.modal{max-height:calc(100dvh - 32px)}@media (max-width: 600px){.modal-backdrop{place-items:end center;padding:0}.modal{border-radius:16px 16px 0 0;max-height:92vh;max-height:92dvh}}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:16px;overflow-x:auto}.tabs button{background:none;border:0;padding:10px 14px;font:inherit;color:var(--ink-2);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}.tabs button.active{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.empty{text-align:center;padding:34px 16px;color:var(--ink-3)}.empty svg{color:var(--line-2)}.spinner{width:22px;height:22px;border:3px solid var(--brand-soft);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.center{display:grid;place-items:center;padding:40px}@keyframes spin{to{transform:rotate(360deg)}}.toast-wrap{position:fixed;bottom:18px;inset-inline-end:18px;z-index:200;display:flex;flex-direction:column;gap:8px}.toast{background:var(--brand-ink);color:#fff;padding:11px 16px;border-radius:10px;box-shadow:var(--shadow);max-width:380px;font-size:.9rem}.toast.bad{background:var(--bad)}.toast.ok{background:var(--ok)}.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;font-size:.9rem}.kv dt{color:var(--ink-3)}.kv dd{margin:0}.gauge{height:10px;border-radius:999px;background:#e7edf6;overflow:hidden}.gauge>span{display:block;height:100%;background:var(--brand);border-radius:999px}.gauge.low>span{background:var(--bad)}.divider{height:1px;background:var(--line);margin:14px 0}.pill-select{display:flex;gap:6px;flex-wrap:wrap}.pill-select button{border:1px solid var(--line-2);background:var(--surface);border-radius:999px;padding:6px 12px;font:inherit;font-size:.85rem;cursor:pointer}.pill-select button.active{background:var(--brand);border-color:var(--brand);color:#fff}.tile{display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);cursor:pointer;text-align:start;width:100%;font:inherit;color:inherit}.tile:hover{border-color:var(--brand)}.tile .tile-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);flex:none}.tile .tile-title{font-weight:600;font-size:1rem}.login-page{min-height:100%;display:grid;grid-template-columns:1.1fr 1fr}.login-hero{background:linear-gradient(150deg,#0f2547,#1a56b8 70%,#2b7be0);color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:space-between}.login-hero h1{color:#fff;font-size:2.2rem;max-width:460px}.login-hero p{color:#cddcf5;max-width:420px}.login-form-wrap{display:grid;place-items:center;padding:24px}.login-form{width:100%;max-width:380px}@media (max-width: 860px){.login-page{grid-template-columns:1fr}.login-hero{padding:26px}.login-hero h1{font-size:1.5rem}.login-hero .hide-sm{display:none}}.print-only{display:none}@media print{body{background:#fff}.sidebar,.topbar,.no-print,.toast-wrap{display:none!important}.content{padding:0;max-width:none}.card{border:none;box-shadow:none}.print-only{display:block}}.receipt{max-width:320px;margin:0 auto;font-family:Courier New,monospace;font-size:13px}.receipt h3{text-align:center;font-family:inherit}.receipt table{width:100%}
