
:root{color-scheme:light}
html.dark{color-scheme:dark}
html,
body {
    font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
}

button,
input,
select,
textarea {
    /*font: inherit;*/
}
body{font-feature-settings:"cv02","cv03","cv04","cv11";background:#f3f4f6}
.dark body{background:#09090b}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:999px}
.dark ::-webkit-scrollbar-thumb{background:#3f3f46}
.page-shell{min-height:100vh}
.sidebar{width:16rem;background:#f4f4f5;border-right:1px solid #e4e4e7}
.dark .sidebar{background:#09090b;border-color:#27272a}
.main-wrap{padding-left:0}
@media (min-width:1024px){.main-wrap{padding-left:16rem}}
.content-panel{background:#fff;border:1px solid #e4e4e7;border-radius:4px;min-height:calc(100vh - 2rem)}
.dark .content-panel{background:#0a0a0b;border-color:#27272a}
.brand-trigger,.user-trigger{display:flex;align-items:center;width:100%;gap:.75rem;padding:1rem 1.25rem;color:#18181b;font-size:.9375rem;font-weight:400}
.dark .brand-trigger,.dark .user-trigger{color:#fafafa}
.brand-trigger:hover,.user-trigger:hover{background:rgba(255,255,255,.45)}
.dark .brand-trigger:hover,.dark .user-trigger:hover{background:rgba(255,255,255,.03)}
.nav-section{padding:1rem 0}
.nav-group{display:flex;flex-direction:column;gap:.125rem;padding:0 .75rem}
.nav-label{padding:.5rem .75rem .25rem;color:#71717a;font-size:.75rem;font-weight:400}
.dark .nav-label{color:#a1a1aa}
.nav-link{position:relative;display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem .6rem 1rem;color:#27272a;font-weight:400;border-radius:4px}
.nav-link:hover{background:rgba(255,255,255,.68)}
.nav-link.active{color:#111827;font-weight:600}
.nav-link.active::before{content:"";position:absolute;left:-.75rem;top:.55rem;bottom:.55rem;width:3px;border-radius:999px;background:#111827}
.dark .nav-link{color:#e4e4e7}
.dark .nav-link:hover{background:rgba(255,255,255,.03)}
.dark .nav-link.active{color:#fafafa}
.dark .nav-link.active::before{background:#fafafa}
.nav-muted{padding:.25rem 1.5rem .5rem;color:#71717a;font-size:.875rem}
.dark .nav-muted{color:#a1a1aa}
.sidebar-footer{margin-top:auto;border-top:1px solid #e4e4e7}
.dark .sidebar-footer{border-color:#27272a}
.dropdown-menu{position:absolute;min-width:13rem;border:1px solid #e4e4e7;background:#fff;border-radius:4px;padding:.375rem;box-shadow:0 16px 32px rgba(17,24,39,.08);z-index:60}
.dark .dropdown-menu{background:#09090b;border-color:#27272a;box-shadow:none}
.dropdown-item{display:flex;align-items:center;gap:.625rem;padding:.625rem .75rem;border-radius:8px;font-size:.875rem;color:#18181b}
.dropdown-item:hover{background:#f4f4f5}
.dark .dropdown-item{color:#fafafa}
.dark .dropdown-item:hover{background:#18181b}
.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.page-title{font-size:1.675rem;line-height:2.25rem;font-weight:600;letter-spacing:-.02em;color:#18181b}
.dark .page-title{color:#fafafa}
.breadcrumbs{margin-top:.35rem;display:flex;flex-wrap:wrap;gap:.5rem;font-size:.875rem;color:#71717a}
.dark .breadcrumbs{color:#a1a1aa}
.breadcrumbs a:hover{text-decoration:underline}
.page-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.overview-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1.75rem 1.5rem}
@media (min-width:768px){.overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1280px){.overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.metric{border-top:1px solid #e4e4e7;padding-top:1.25rem}
.dark .metric{border-color:#27272a}
.metric-label{font-size:.95rem;color:#27272a}
.dark .metric-label{color:#d4d4d8}
.metric-value{margin-top:.7rem;font-size:2rem;line-height:2.25rem;font-weight:600;letter-spacing:-.02em;color:#111827}
.dark .metric-value{color:#fafafa}
.metric-note{margin-top:.75rem;display:flex;align-items:center;gap:.45rem;font-size:.875rem;color:#71717a}
.dark .metric-note{color:#a1a1aa}
.pill{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .55rem;font-size:.75rem;font-weight:400}
.pill-green{background:#d9f99d;color:#3f6212}
.pill-yellow{background:#fef08a;color:#854d0e}
.pill-red{background:#fbcfe8;color:#be185d}
.pill-blue{background:#dbeafe;color:#1d4ed8}
.dark .pill-green{background:rgba(101,163,13,.2);color:#bef264}
.dark .pill-yellow{background:#854d0e;color:#fef08a}
.dark .pill-red{background:rgba(190,24,93,.2);color:#f9a8d4}
.dark .pill-blue{background:rgba(29,78,216,.2);color:#93c5fd}
.input,.select,.textarea{
  min-height:2rem;background:#fff;border:1px solid #d4d4d8;border-radius:4px;
  padding:.4rem;font-size:.9rem;line-height:1.35;color:#18181b;transition:border-color .15s ease, box-shadow .15s ease;
}
.input-with-icon {
    width:100%;
    padding-left: 2.5rem !important;
    padding-right: 0.875rem;
}
.dark .input,.dark .select,.dark .textarea{background:#09090b;border-color:#3f3f46;color:#fafafa}
.input:focus,.select:focus,.textarea:focus{outline:none;border-color:#a1a1aa;box-shadow:0 0 0 3px rgba(228,228,231,.8)}
.dark .input:focus,.dark .select:focus,.dark .textarea:focus{border-color:#71717a;box-shadow:0 0 0 3px rgba(39,39,42,.9)}
.textarea{min-height:7.25rem;resize:vertical}
.field-label{display:block;margin-bottom:.45rem;font-size:.875rem;font-weight:400;color:#27272a}
.dark .field-label{color:#d4d4d8}
.field-help{margin-top:.4rem;font-size:.8125rem;color:#71717a}
.dark .field-help{color:#a1a1aa}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:4px;padding:.625rem .625rem;font-size:.875rem;font-weight:400;line-height:.325rem}
.btn-primary{background:#111827;color:#fff}
.btn-primary:hover{background:#1f2937}
.btn-secondary{border:1px solid #d4d4d8;background:#fff;color:#18181b}
.btn-secondary:hover{background:#fafafa}
.btn-ghost{color:#52525b}
.btn-ghost:hover{color:#18181b}
.btn-danger{background:#dc2626;color:#fff}
.btn-danger:hover{background:#b91c1c}
.dark .btn-secondary{background:#09090b;border-color:#3f3f46;color:#fafafa}
.dark .btn-secondary:hover{background:#18181b}
.dark .btn-primary{background:#fafafa;color:#09090b}
.dark .btn-primary:hover{background:#e4e4e7}
.table-wrap{overflow:auto}
.data-table{width:100%;border-collapse:collapse}
.data-table thead th{padding:.75rem .3rem;color:#71717a;font-size:.9375rem;font-weight:400;text-align:left}
.data-table thead th.text-center{text-align: center;}
.data-table thead th.text-right{text-align: right;}
.dark .data-table thead th{color:#a1a1aa}
.data-table tbody td{padding:.9rem .3rem;border-top:1px solid #ececf0;font-size:.9rem;vertical-align:top;color:#18181b}
.dark .data-table tbody td{border-color:#27272a;color:#fafafa}
.data-table tbody tr:hover{background:#fafafa}
.dark .data-table tbody tr:hover{background:#111111}
.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.25rem .65rem;font-size:.75rem;font-weight:600;text-transform: capitalize;}
.status-active,.status-approved{background:#dcfce7;color:#166534}
.status-pending{background:#fef3c7;color:#92400e}
.status-inactive,.status-rejected{background:#fee2e2;color:#b91c1c}
.status-violet{background:#ede9fe;color:#6d28d9}
.dark .status-active,.dark .status-approved{background:rgba(22,101,52,.2);color:#86efac}
.dark .status-pending{background:rgba(146,64,14,.22);color:#fcd34d}
.dark .status-inactive,.dark .status-rejected{background:rgba(185,28,28,.22);color:#fca5a5}
.dark .status-violet{background:rgba(109,40,217,.22);color:#c4b5fd}
.toggle{position:relative;display:inline-flex;height:1.55rem;width:2.75rem;align-items:center;border-radius:999px;background:#d4d4d8;transition:background .2s ease}
.toggle::after{content:"";position:absolute;left:2px;top:2px;height:1.15rem;width:1.15rem;border-radius:999px;background:#fff;transition:transform .2s ease}
.toggle.on{background:#111827}
.toggle.on::after{transform:translateX(1.2rem)}
.dark .toggle{background:#3f3f46}
.dark .toggle.on{background:#fafafa}
.dark .toggle.on::after{background:#09090b}
.mask-button{font-size:.875rem;font-weight:400;color:#4f46e5}
.mask-button:hover{text-decoration:underline}
.radio-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:.625rem}
.radio-item{display:inline-flex;align-items:center;gap:.5rem;font-size:.9375rem;color:#27272a}
.dark .radio-item{color:#d4d4d8}
.summary-strip{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:4px;background:#eef2ff;padding:1.125rem 1.25rem}
.dark .summary-strip{background:rgba(79,70,229,.14)}
.mobile-overlay{background:rgba(24,24,27,.45)}
.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:#f3f4f6}
.dark .auth-shell{background:#09090b}
.auth-card{width:min(100%,28rem);border:1px solid #e4e4e7;background:#fff;border-radius:14px;padding:1.5rem}
.dark .auth-card{background:#0a0a0b;border-color:#27272a}
@media (max-width:1023px){
  .sidebar{transform:translateX(-100%);transition:transform .2s ease;z-index:50}
  .sidebar.open{transform:translateX(0)}
  .content-panel{min-height:calc(100vh - 1rem)}
}

.form-grid-2{display:grid;gap:1.5rem}
@media (min-width:768px){.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.form-grid-3{display:grid;gap:1.5rem}
@media (min-width:768px){.form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1280px){.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
