:root{--font: "Inter", "Noto Sans Devanagari", "Noto Sans Bengali", "Noto Sans Tamil", "Noto Sans Arabic", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--bg: #f3f4f6;--bg-elevated: #f8f9fa;--surface: #ffffff;--surface-2: #f8fafc;--surface-hover: #f3f4f6;--border: #e6e8ec;--border-strong: #d6d9df;--text: #111827;--text-2: #374151;--muted: #6b7280;--subtle: #9ca3af;--overlay: rgba(15, 23, 42, .42);--primary: #12a06e;--primary-hover: #0e8a5e;--primary-soft: #e7f6ef;--primary-soft-2: #cfeedf;--primary-text: #0b7a52;--on-primary: #ffffff;--ring: rgba(18, 160, 110, .28);--success: #16a34a;--success-soft: #e9f7ee;--success-text: #15803d;--warning: #d97706;--warning-soft: #fef5e6;--warning-text: #b45309;--danger: #dc2626;--danger-soft: #fdecec;--danger-text: #b91c1c;--info: #2563eb;--info-soft: #eaf1fe;--info-text: #1d4ed8;--violet: #7c3aed;--violet-soft: #f1ebfe;--violet-text: #6d28d9;--neutral-soft: #f1f2f4;--neutral-text: #4b5563;--chart-1: #3cc0e8;--chart-2: #5b6cf0;--chart-3: #22b37a;--chart-4: #f2b441;--chart-5: #a78bfa;--chart-6: #f47295;--chart-grid: #eef0f3;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--radius-xl: 18px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .04);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .06), 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 8px 24px -6px rgba(16, 24, 40, .12);--shadow-lg: 0 24px 48px -12px rgba(16, 24, 40, .22);--sidebar-w: 248px;--header-h: 64px;color-scheme:light}[data-accent=emerald]{--primary: #12a06e;--primary-hover: #0e8a5e;--primary-soft: #e7f6ef;--primary-soft-2: #cfeedf;--primary-text: #0b7a52;--ring: rgba(18,160,110,.28)}[data-accent=blue]{--primary: #2563eb;--primary-hover: #1d4ed8;--primary-soft: #eaf1fe;--primary-soft-2: #d4e3fd;--primary-text: #1d4ed8;--ring: rgba(37,99,235,.28)}[data-accent=teal]{--primary: #0d9488;--primary-hover: #0b7d73;--primary-soft: #e6f6f4;--primary-soft-2: #cbede9;--primary-text: #0f766e;--ring: rgba(13,148,136,.28)}[data-accent=violet]{--primary: #7c3aed;--primary-hover: #6d28d9;--primary-soft: #f1ebfe;--primary-soft-2: #e3d6fd;--primary-text: #6d28d9;--ring: rgba(124,58,237,.28)}[data-accent=indigo]{--primary: #4f46e5;--primary-hover: #4338ca;--primary-soft: #eeedfd;--primary-soft-2: #dddbfb;--primary-text: #4338ca;--ring: rgba(79,70,229,.28)}[data-accent=rose]{--primary: #e11d48;--primary-hover: #be123c;--primary-soft: #fdeaef;--primary-soft-2: #fbd3dd;--primary-text: #be123c;--ring: rgba(225,29,72,.26)}[data-accent=amber]{--primary: #d97706;--primary-hover: #b45309;--primary-soft: #fef4e6;--primary-soft-2: #fde6c4;--primary-text: #b45309;--ring: rgba(217,119,6,.28)}[data-accent=slate]{--primary: #334155;--primary-hover: #1e293b;--primary-soft: #eef1f5;--primary-soft-2: #dde3eb;--primary-text: #1e293b;--ring: rgba(51,65,85,.28)}[data-theme=dark]{--bg: #0b1120;--bg-elevated: #0f172a;--surface: #111a2e;--surface-2: #0f1729;--surface-hover: #18233b;--border: #1f2a40;--border-strong: #2b3953;--text: #e6e9f0;--text-2: #c7cdd9;--muted: #94a0b4;--subtle: #6b7891;--overlay: rgba(2, 6, 23, .66);--success-soft: rgba(34,197,94,.14);--success-text: #4ade80;--warning-soft: rgba(245,158,11,.14);--warning-text: #fbbf24;--danger-soft: rgba(239,68,68,.15);--danger-text: #f87171;--info-soft: rgba(59,130,246,.15);--info-text: #93b4fd;--violet-soft: rgba(139,92,246,.16);--violet-text: #c4b5fd;--neutral-soft: rgba(148,163,184,.12);--neutral-text: #cbd5e1;--chart-grid: #1f2a40;--shadow-sm: 0 1px 2px rgba(0,0,0,.35);--shadow-md: 0 10px 28px -8px rgba(0,0,0,.55);--shadow-lg: 0 24px 48px -12px rgba(0,0,0,.7);color-scheme:dark}[data-theme=dark] [data-accent],[data-theme=dark][data-accent]{--primary-soft: color-mix(in srgb, var(--primary) 16%, transparent);--primary-soft-2: color-mix(in srgb, var(--primary) 26%, transparent);--primary-text: color-mix(in srgb, var(--primary) 70%, white)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--primary-text);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;color:var(--text);font-weight:600;letter-spacing:-.01em}h1{font-size:22px}h2{font-size:17px}h3{font-size:15px}h4{font-size:14px}p{margin:0}img{max-width:100%}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}::selection{background:var(--primary-soft-2)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--muted)}.subtle{color:var(--subtle)}.small{font-size:12px}.tiny{font-size:11px}.mono{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strong{font-weight:600}.right{text-align:end}.center{text-align:center}.row{display:flex;align-items:center;gap:8px}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.col{display:flex;flex-direction:column;gap:8px}.grow{flex:1;min-width:0}.gap-4{gap:4px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-16{margin-bottom:16px}.only-mobile{display:none!important}[dir=rtl] .flip-rtl{transform:scaleX(-1)}@media(max-width:1100px){.only-desktop{display:none!important}}.shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;inline-size:var(--sidebar-w);flex:0 0 var(--sidebar-w);display:flex;flex-direction:column;background:var(--surface);border-inline-end:1px solid var(--border);z-index:30;transition:inline-size .2s ease,transform .25s ease}.sidebar.collapsed{inline-size:72px;flex-basis:72px}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:18px 18px 12px;min-height:var(--header-h)}.brand-mark{inline-size:32px;block-size:32px;border-radius:9px;background:var(--primary);display:grid;place-items:center;color:#fff;flex:0 0 auto;box-shadow:0 4px 10px -2px var(--ring)}.brand-text{line-height:1.1;min-width:0}.brand-text b{font-size:17px;letter-spacing:-.02em;display:block}.brand-text span{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.sidebar-collapse{margin-inline-start:auto}.sidebar-search{padding:4px 14px 10px}.sidebar-nav{flex:1;overflow-y:auto;padding:4px 10px 12px;scrollbar-width:thin}.nav-section{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--subtle);padding:14px 10px 6px}.nav-item{display:flex;align-items:center;gap:10px;inline-size:100%;padding:8px 10px;border-radius:8px;color:var(--text-2);font-weight:500;border:0;background:none;cursor:pointer;font:inherit;text-align:start;text-decoration:none!important;position:relative}.nav-item svg{flex:0 0 auto;color:var(--muted)}.nav-item:hover{background:var(--surface-hover);color:var(--text)}.nav-item.active{background:var(--primary-soft);color:var(--primary-text);font-weight:600}.nav-item.active svg{color:var(--primary)}.nav-item .chev{margin-inline-start:auto;transition:transform .15s}.nav-item.open .chev{transform:rotate(90deg)}[dir=rtl] .nav-item .chev{transform:scaleX(-1)}[dir=rtl] .nav-item.open .chev{transform:rotate(90deg)}.nav-children{padding-inline-start:30px;display:grid;gap:1px;margin:2px 0 4px}.nav-child{padding:6px 10px;border-radius:7px;color:var(--muted);font-weight:500;font-size:13px;text-decoration:none!important}.nav-child:hover{color:var(--text);background:var(--surface-hover)}.nav-child.active{color:var(--primary-text);background:var(--primary-soft)}.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-section,.sidebar.collapsed .nav-children,.sidebar.collapsed .chev,.sidebar.collapsed .brand-text,.sidebar.collapsed .sidebar-search,.sidebar.collapsed .sidebar-user-info{display:none}.sidebar.collapsed .nav-item{justify-content:center}.sidebar.collapsed .sidebar-brand{justify-content:center;padding-inline:8px}.sidebar-footer{border-top:1px solid var(--border);padding:10px;display:grid;gap:2px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:10px;margin-top:6px;background:var(--surface-2)}.main{flex:1;min-width:0;display:flex;flex-direction:column}.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;min-height:var(--header-h);padding:10px 24px;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(8px);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--border)}.header-title{font-size:18px;font-weight:600;letter-spacing:-.01em}.header-actions{margin-inline-start:auto;display:flex;align-items:center;gap:8px}.content{padding:20px 24px 40px;max-width:1600px;inline-size:100%;margin-inline:auto}.footer{padding:16px 24px;color:var(--subtle);font-size:12px;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 14px;border-radius:9px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,box-shadow .12s;box-shadow:var(--shadow-xs);text-decoration:none!important}.btn:hover{background:var(--surface-hover)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);box-shadow:0 1px 2px var(--ring)}.btn.primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger-ghost{color:var(--danger-text);border-color:var(--border)}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--text-2)}.btn.ghost:hover{background:var(--surface-hover)}.btn.soft{background:var(--primary-soft);color:var(--primary-text);border-color:transparent;box-shadow:none}.btn.sm{min-height:30px;padding:0 10px;font-size:13px;border-radius:8px}.btn.lg{min-height:44px;padding:0 20px;font-size:15px;border-radius:10px}.btn.block{inline-size:100%}.icon-btn{inline-size:36px;padding:0}.icon-btn.sm{inline-size:30px;min-height:30px}.btn .spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);min-width:0}.card-header{display:flex;align-items:center;gap:10px;padding:16px 18px 0}.card-header h3{font-size:15px}.card-header .icon-chip{margin-inline-end:2px}.card-body{padding:16px 18px 18px}.card-footer{padding:12px 18px;border-top:1px solid var(--border)}.card.flat{box-shadow:none}.icon-chip{inline-size:32px;block-size:32px;border-radius:9px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);flex:0 0 auto;border:1px solid var(--primary-soft-2)}.icon-chip.info{background:var(--info-soft);color:var(--info);border-color:transparent}.icon-chip.warning{background:var(--warning-soft);color:var(--warning);border-color:transparent}.icon-chip.danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}.icon-chip.violet{background:var(--violet-soft);color:var(--violet);border-color:transparent}.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))}.kpi-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.split{display:grid;gap:16px;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}.split-rev{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.stat{padding:16px 18px;display:flex;flex-direction:column;gap:8px;position:relative;color:inherit;text-decoration:none!important;transition:box-shadow .15s,border-color .15s}a.stat:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.stat-label{color:var(--text-2);font-weight:500;display:flex;align-items:center;gap:8px}.stat-value{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.stat-value b{font-size:26px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-foot{font-size:12px;color:var(--muted)}.delta{display:inline-flex;align-items:center;gap:2px;font-size:12px;font-weight:600}.delta.up{color:var(--success-text)}.delta.down{color:var(--danger-text)}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:600;letter-spacing:.02em;background:var(--neutral-soft);color:var(--neutral-text);white-space:nowrap;line-height:1.6}.badge.caps{text-transform:uppercase;font-size:10.5px;letter-spacing:.06em;border-radius:6px;padding:2px 8px}.badge.success{background:var(--success-soft);color:var(--success-text)}.badge.warning{background:var(--warning-soft);color:var(--warning-text)}.badge.danger{background:var(--danger-soft);color:var(--danger-text)}.badge.info{background:var(--info-soft);color:var(--info-text)}.badge.violet{background:var(--violet-soft);color:var(--violet-text)}.badge.primary{background:var(--primary-soft);color:var(--primary-text)}.dot{inline-size:8px;block-size:8px;border-radius:50%;display:inline-block;background:currentColor;flex:0 0 auto}.alert{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;border:1px solid var(--primary-soft-2);background:var(--primary-soft);color:var(--text-2)}.alert.warning{background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}.alert.danger{background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.alert.info{background:var(--info-soft);border-color:color-mix(in srgb,var(--info) 25%,transparent)}.alert .alert-action{margin-inline-start:auto;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label,.label{font-size:13px;font-weight:500;color:var(--text-2)}.field .req{color:var(--danger);margin-inline-start:2px}.input,.select,.textarea{inline-size:100%;min-height:38px;padding:8px 12px;border-radius:9px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;transition:border-color .12s,box-shadow .12s;appearance:none}.textarea{min-height:84px;resize:vertical}.select{background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 16px) 16px,calc(100% - 11px) 16px;background-size:5px 5px;background-repeat:no-repeat;padding-inline-end:32px}[dir=rtl] .select{background-position:16px 16px,11px 16px}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.input::placeholder,.textarea::placeholder{color:var(--subtle)}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger-text);font-size:12px}.field-hint{color:var(--muted);font-size:12px}.input-group{position:relative;display:flex;align-items:center}.input-group>svg{position:absolute;inset-inline-start:11px;color:var(--subtle);pointer-events:none}.input-group>.input{padding-inline-start:34px}.input-group .kbd{position:absolute;inset-inline-end:8px}.kbd{font-size:11px;padding:1px 6px;border-radius:5px;border:1px solid var(--border-strong);color:var(--muted);background:var(--surface-2);font-family:inherit}.form-grid{display:grid;gap:14px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.span-all{grid-column:1 / -1}.form-section{padding:18px 0;border-top:1px solid var(--border)}.form-section:first-child{border-top:0;padding-top:0}.form-section-head{margin-bottom:14px}.form-section-head h3{font-size:14px}.form-section-head p{color:var(--muted);font-size:12.5px}.check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500;color:var(--text-2)}.check input{inline-size:16px;block-size:16px;accent-color:var(--primary)}.switch{position:relative;inline-size:36px;block-size:20px;flex:0 0 auto}.switch input{opacity:0;inline-size:100%;block-size:100%;margin:0;position:absolute;cursor:pointer;z-index:1}.switch span{position:absolute;inset:0;border-radius:99px;background:var(--border-strong);transition:background .15s}.switch span:after{content:"";position:absolute;inset-block-start:2px;inset-inline-start:2px;inline-size:16px;block-size:16px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:var(--shadow-sm)}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:after{transform:translate(16px)}[dir=rtl] .switch input:checked+span:after{transform:translate(-16px)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;font:inherit;font-weight:500;color:var(--text-2)}.chip.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-text)}.segmented{display:inline-flex;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;gap:2px}.segmented button{border:0;background:none;padding:5px 12px;border-radius:7px;font:inherit;font-weight:500;color:var(--muted);cursor:pointer}.segmented button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.table-wrap{overflow-x:auto}.table{inline-size:100%;border-collapse:separate;border-spacing:0}.table th{text-align:start;font-size:12.5px;font-weight:500;color:var(--muted);padding:10px 14px;background:var(--surface-2);border-block:1px solid var(--border);white-space:nowrap}.table th:first-child{border-start-start-radius:8px;border-end-start-radius:8px;border-inline-start:1px solid var(--border)}.table th:last-child{border-start-end-radius:8px;border-end-end-radius:8px;border-inline-end:1px solid var(--border)}.table th button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.table td{padding:13px 14px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text-2)}.table tbody tr{transition:background .1s}.table tbody tr:hover td{background:var(--surface-2)}.table tbody tr.clickable{cursor:pointer}.table td.num,.table th.num{text-align:end;font-variant-numeric:tabular-nums}.table .cell-main{color:var(--text);font-weight:500}.table tr:last-child td{border-bottom:0}.table.compact td{padding:8px 12px}.avatar{inline-size:28px;block-size:28px;border-radius:50%;display:inline-grid;place-items:center;font-size:10.5px;font-weight:600;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);flex:0 0 auto;overflow:hidden}.avatar.lg{inline-size:56px;block-size:56px;font-size:18px}.avatar.xl{inline-size:72px;block-size:72px;font-size:22px}.avatar img{inline-size:100%;block-size:100%;object-fit:cover}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 18px}.toolbar .search{min-width:220px;flex:0 1 280px}.pagination{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:12px 18px;border-top:1px solid var(--border);color:var(--muted);font-size:13px;flex-wrap:wrap}.kebab{color:var(--muted)}.page-head{display:flex;align-items:flex-end;gap:12px;margin-bottom:18px;flex-wrap:wrap}.page-head .titles{min-width:0}.crumbs{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);margin-bottom:4px;flex-wrap:wrap}.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--text)}.page-head .actions{margin-inline-start:auto;display:flex;gap:8px;flex-wrap:wrap}.page-head p{color:var(--muted);margin-top:2px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.tab{border:0;background:none;font:inherit;font-weight:500;color:var(--muted);padding:10px 14px;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;display:inline-flex;gap:6px;align-items:center}.tab:hover{color:var(--text)}.tab.on{color:var(--primary-text);border-bottom-color:var(--primary)}.tab .count{font-size:11px;background:var(--surface-2);border:1px solid var(--border);border-radius:99px;padding:0 6px;color:var(--muted)}.overlay{position:fixed;inset:0;background:var(--overlay);z-index:60;display:grid;place-items:center;padding:20px;animation:fade .12s ease}.modal{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);inline-size:min(560px,100%);max-block-size:calc(100vh - 40px);display:flex;flex-direction:column;animation:pop .16s ease;border:1px solid var(--border)}.modal.lg{inline-size:min(860px,100%)}.modal.xl{inline-size:min(1120px,100%)}.modal.sm{inline-size:min(420px,100%)}.modal-head{display:flex;align-items:center;gap:10px;padding:18px 20px 12px}.modal-head h2{font-size:16px}.modal-head p{color:var(--muted);font-size:13px}.modal-body{padding:6px 20px 18px;overflow-y:auto}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border);background:var(--surface-2);border-end-start-radius:var(--radius-xl);border-end-end-radius:var(--radius-xl)}.drawer-wrap{position:fixed;inset:0;z-index:60;background:var(--overlay);animation:fade .12s}.drawer{position:absolute;inset-block:0;inset-inline-end:0;inline-size:min(520px,100%);background:var(--surface);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slide-in .2s ease}.drawer.start{inset-inline-start:0;inset-inline-end:auto;animation-name:slide-in-start}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(6px) scale(.985)}}@keyframes slide-in{0%{transform:translate(30px);opacity:0}}@keyframes slide-in-start{0%{transform:translate(-30px);opacity:0}}[dir=rtl] .drawer{animation-name:slide-in-start}.menu{position:absolute;z-index:50;min-inline-size:200px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);padding:6px;animation:pop .12s ease}.menu-item{display:flex;align-items:center;gap:10px;inline-size:100%;padding:8px 10px;border-radius:8px;border:0;background:none;font:inherit;color:var(--text-2);cursor:pointer;text-align:start;text-decoration:none!important}.menu-item:hover,.menu-item.active{background:var(--surface-hover);color:var(--text)}.menu-item.danger{color:var(--danger-text)}.menu-sep{block-size:1px;background:var(--border);margin:6px 4px}.menu-label{font-size:11px;color:var(--subtle);text-transform:uppercase;letter-spacing:.06em;padding:6px 10px 4px;font-weight:600}.popover-anchor{position:relative}.toasts{position:fixed;inset-block-end:20px;inset-inline-end:20px;z-index:80;display:grid;gap:8px;inline-size:min(380px,calc(100vw - 40px))}.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);animation:pop .18s ease}.toast .t-icon{color:var(--success)}.toast.error .t-icon{color:var(--danger)}.toast.info .t-icon{color:var(--info)}.state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:48px 20px;color:var(--muted)}.state .state-icon{inline-size:56px;block-size:56px;border-radius:16px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);margin-bottom:4px}.state.error .state-icon{background:var(--danger-soft);color:var(--danger)}.state h3{color:var(--text)}.skeleton{background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-hover) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:shimmer 1.3s infinite;border-radius:8px}@keyframes shimmer{to{background-position:-200% 0}}.spinner{inline-size:22px;block-size:22px;border:2.5px solid var(--border-strong);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}.donut-legend{display:grid;gap:14px}.donut-legend .li{display:flex;align-items:center;gap:10px;color:var(--text-2)}.donut-legend .li b{margin-inline-start:auto;font-size:15px;color:var(--text);font-variant-numeric:tabular-nums}.progress{block-size:6px;border-radius:99px;background:var(--surface-hover);overflow:hidden}.progress>span{display:block;block-size:100%;background:var(--primary);border-radius:inherit;transition:inline-size .3s}.timeline{display:grid;gap:0}.tl-item{display:grid;grid-template-columns:28px 1fr;gap:10px;position:relative;padding-bottom:16px}.tl-item:before{content:"";position:absolute;inset-inline-start:13px;inset-block:26px 0;inline-size:2px;background:var(--border)}.tl-item:last-child:before{display:none}.tl-dot{inline-size:28px;block-size:28px;border-radius:50%;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary)}.kv{display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:8px 12px;font-size:13.5px}.kv dt{color:var(--muted)}.kv dd{margin:0;color:var(--text);font-weight:500;overflow-wrap:anywhere}.bed-board{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.bed{border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--surface);display:grid;gap:4px;text-align:start;cursor:pointer;font:inherit;color:inherit;border-inline-start-width:4px;transition:box-shadow .12s,transform .12s}.bed:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.bed.Available{border-inline-start-color:var(--success)}.bed.Occupied{border-inline-start-color:var(--info);background:color-mix(in srgb,var(--info-soft) 55%,var(--surface))}.bed.Reserved{border-inline-start-color:var(--violet)}.bed.Cleaning{border-inline-start-color:var(--warning)}.bed.Maintenance{border-inline-start-color:var(--subtle);background:var(--surface-2)}.triage{inline-size:10px;align-self:stretch;border-radius:6px}.triage-1{background:#dc2626}.triage-2{background:#f97316}.triage-3{background:#eab308}.triage-4{background:#22c55e}.triage-5{background:#3b82f6}.queue-token{inline-size:38px;block-size:38px;border-radius:10px;background:var(--primary-soft);color:var(--primary-text);display:grid;place-items:center;font-weight:700;flex:0 0 auto}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-inline-start:1px solid var(--border);border-top:1px solid var(--border);border-radius:10px;overflow:hidden}.cal-head{padding:8px;font-size:12px;color:var(--muted);font-weight:600;background:var(--surface-2);border-inline-end:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center}.cal-cell{min-block-size:112px;padding:6px;border-inline-end:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:3px;background:var(--surface);cursor:pointer}.cal-cell.other{background:var(--surface-2);color:var(--subtle)}.cal-cell.today .cal-date{background:var(--primary);color:#fff}.cal-date{inline-size:24px;block-size:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600}.cal-ev{font-size:11.5px;padding:2px 6px;border-radius:5px;background:var(--primary-soft);color:var(--primary-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-inline-start:3px solid var(--primary)}.cal-ev.Cancelled{opacity:.5;text-decoration:line-through}.cal-ev.CheckedIn,.cal-ev.InConsultation{background:var(--warning-soft);color:var(--warning-text);border-color:var(--warning)}.cal-ev.Completed{background:var(--success-soft);color:var(--success-text);border-color:var(--success)}.day-view{display:grid;grid-template-columns:64px 1fr}.slot-time{font-size:12px;color:var(--muted);padding:10px 8px;border-top:1px solid var(--border)}.slot-row{border-top:1px solid var(--border);padding:6px;display:flex;gap:6px;flex-wrap:wrap;min-block-size:44px}.slot-pill{padding:6px 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;font:inherit;font-size:13px}.slot-pill.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-text);font-weight:600}.slot-pill:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}.steps{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.step{display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:500;font-size:13px}.step .n{inline-size:26px;block-size:26px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--border-strong);font-size:12px;font-weight:600;background:var(--surface)}.step.on{color:var(--text)}.step.on .n{border-color:var(--primary);color:var(--primary)}.step.done .n{background:var(--primary);border-color:var(--primary);color:#fff}.step-line{inline-size:32px;block-size:2px;background:var(--border);border-radius:2px}.otp-inputs{display:flex;gap:10px;justify-content:center;direction:ltr}.otp-inputs input{inline-size:48px;block-size:56px;text-align:center;font-size:22px;font-weight:600;border-radius:12px;border:1.5px solid var(--border-strong);background:var(--surface);color:var(--text)}.otp-inputs input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.swatch{inline-size:28px;block-size:28px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--border-strong);cursor:pointer;padding:0}.swatch.on{box-shadow:0 0 0 2px var(--text)}.perm-matrix th,.perm-matrix td{padding:8px 10px}.perm-module{background:var(--surface-2);font-weight:600;color:var(--text)}.notif{display:flex;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border);text-decoration:none!important;color:inherit}.notif.unread{background:color-mix(in srgb,var(--primary-soft) 50%,transparent)}.notif:hover{background:var(--surface-hover)}.search-results{position:absolute;inset-inline:0;top:calc(100% + 6px);max-block-size:420px;overflow-y:auto}.auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);background:var(--surface)}.auth-visual{position:relative;overflow:hidden;color:#fff;padding:40px 48px;display:flex;flex-direction:column;background:radial-gradient(1200px 600px at -10% -10%,color-mix(in srgb,var(--primary) 70%,#0b2a20) 0%,transparent 60%),linear-gradient(160deg,#0d3b2c,#0a2a22 55%,#071c17)}[data-accent]:not([data-accent=emerald]) .auth-visual{background:radial-gradient(1200px 600px at -10% -10%,color-mix(in srgb,var(--primary) 75%,#000) 0%,transparent 60%),linear-gradient(160deg,color-mix(in srgb,var(--primary) 45%,#0b1120),#0b1120)}.auth-visual h1{color:#fff;font-size:34px;line-height:1.15;letter-spacing:-.03em;max-width:520px}.auth-visual p{color:#ffffffc7;max-width:480px;font-size:15px}.auth-feature{display:flex;gap:12px;align-items:flex-start;color:#ffffffe0}.auth-feature .icon-chip{background:#ffffff1f;border-color:#ffffff2e;color:#fff}.auth-panel{display:flex;flex-direction:column;justify-content:center;padding:64px clamp(20px,6vw,88px) 40px;position:relative}.auth-lang{position:absolute;inset-block-start:20px;inset-inline-end:24px}.auth-card{inline-size:min(420px,100%);margin-inline:auto;display:grid;gap:18px}.auth-card.wide{inline-size:min(760px,100%)}.glass{background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:16px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.divider{display:flex;align-items:center;gap:12px;color:var(--subtle);font-size:12px}.divider:before,.divider:after{content:"";flex:1;block-size:1px;background:var(--border)}.dev-banner{font-size:12px;padding:8px 12px;border-radius:10px;background:var(--warning-soft);color:var(--warning-text);border:1px dashed color-mix(in srgb,var(--warning) 50%,transparent)}.bottom-nav{display:none}@media(max-width:1280px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1100px){.split,.split-rev{grid-template-columns:minmax(0,1fr)}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{position:fixed;inset-block:0;inset-inline-start:0;transform:translate(-105%);box-shadow:var(--shadow-lg)}[dir=rtl] .sidebar{transform:translate(105%)}.sidebar.mobile-open{transform:translate(0)!important}.sidebar.collapsed{inline-size:var(--sidebar-w)}.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-section,.sidebar.collapsed .brand-text,.sidebar.collapsed .sidebar-search,.sidebar.collapsed .sidebar-user-info{display:initial}.sidebar-backdrop{position:fixed;inset:0;background:var(--overlay);z-index:25}.only-tablet{display:inline-flex!important}}@media(min-width:1101px){.only-tablet{display:none!important}.sidebar-backdrop{display:none}}@media(max-width:760px){body{font-size:14.5px}.content{padding:14px 14px 96px}.header{padding:8px 12px;gap:8px}.header-title{font-size:16px}.hide-mobile{display:none!important}.only-mobile{display:initial!important}.grid-2,.grid-3,.grid-4,.form-grid,.form-grid.cols-3,.form-grid.cols-4{grid-template-columns:minmax(0,1fr)}.span-2,.span-3{grid-column:auto}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:12px 14px}.stat-value b{font-size:21px}.stat-label .truncate{white-space:normal;line-height:1.25;font-size:13px}.stat-label .kebab{display:none}.page-head{align-items:flex-start}.page-head .actions{inline-size:100%;margin-inline-start:0}.page-head .actions .btn{flex:1}.toolbar .search{flex:1 1 100%}.modal,.modal.lg,.modal.xl{inline-size:100%;max-block-size:92vh;border-end-start-radius:0;border-end-end-radius:0;align-self:end}.overlay{padding:0;place-items:end center}.auth{grid-template-columns:1fr}.auth-visual{padding:28px 22px;min-height:auto}.auth-visual .hide-mobile{display:none}.auth-visual h1{font-size:24px}.btn{min-height:42px}.btn.sm{min-height:34px}.input,.select{min-height:44px;font-size:16px}.otp-inputs input{inline-size:42px;block-size:52px}.calendar .cal-cell{min-block-size:64px}.cal-ev{display:none}.cal-cell .cal-count{display:inline-flex!important}.table.responsive thead{display:none}.table.responsive,.table.responsive tbody,.table.responsive tr,.table.responsive td{display:block;inline-size:100%}.table.responsive tr{border:1px solid var(--border);border-radius:12px;margin-bottom:10px;padding:8px 12px;background:var(--surface)}.table.responsive td{border:0;padding:5px 0;display:flex;justify-content:space-between;gap:12px;text-align:end}.table.responsive td:before{content:attr(data-label);color:var(--muted);font-size:12.5px;text-align:start;font-weight:500}.table.responsive td.td-main{font-size:15px;padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:4px;justify-content:flex-start;text-align:start}.table.responsive td.td-main:before,.table.responsive td.td-actions:before{content:none}.table.responsive td.td-actions{justify-content:flex-end}.table.responsive tbody tr:hover td{background:none}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;inset-inline:0;inset-block-end:0;z-index:40;background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.bottom-nav a,.bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10.5px;color:var(--muted);padding:4px;border:0;background:none;font-family:inherit;text-decoration:none!important;cursor:pointer}.bottom-nav .active{color:var(--primary-text)}.toasts{inset-block-end:80px;inset-inline:12px;inline-size:auto}}.cal-count{display:none}.print-page{background:#fff;color:#111;max-width:820px;margin:24px auto;padding:36px 40px;border-radius:12px;box-shadow:var(--shadow-md);font-size:13px}.print-page h1{font-size:20px;color:#111}.print-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #111;padding-bottom:12px;margin-bottom:16px}.print-head img{max-block-size:56px}.print-table{inline-size:100%;border-collapse:collapse;margin-top:10px}.print-table th,.print-table td{border:1px solid #d4d4d8;padding:7px 9px;text-align:start}.print-table th{background:#f4f4f5;font-weight:600}.print-table td.num,.print-table th.num{text-align:end}.print-toolbar{position:sticky;top:0;display:flex;gap:8px;justify-content:center;padding:12px;background:var(--bg);z-index:5}.flag-High,.flag-CriticalHigh{color:#b91c1c;font-weight:700}.flag-Low,.flag-CriticalLow{color:#1d4ed8;font-weight:700}@media print{@page{margin:12mm}body{background:#fff!important}.no-print,.sidebar,.header,.bottom-nav,.print-toolbar,.toasts{display:none!important}.print-page{box-shadow:none;margin:0;padding:0;max-width:none;border-radius:0}.content{padding:0}.card{box-shadow:none;break-inside:avoid}.table th{background:#f4f4f5!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
