/* ====== DASHLITE-INSPIRED ADMIN CSS ====== */
:root {
  --white: #fff; --black: #000;
  --lighter: #f5f6fa;
  --light-100: #ebeef2; --light-200: #e5e9f2; --light-300: #dbdfea; --light-400: #b7c2d0; --light-500: #8091a7;
  --light-600: #3c4d62; --light-700: #344357; --light-800: #2b3748; --light-900: #1f2b3a;
  --darker: #101924;
  --red: #e85347; --yellow: #f4bd0e; --green: #1ee0ac; --cyan: #09c2de;
  --blue: #559bfb; --azure: #1676fb; --indigo: #2c3782; --purple: #816bff; --pink: #ff63a5; --orange: #ffa353; --teal: #20c997;
  --base-100: #ecf2ff; --base-200: #dfe9fe; --base-300: #b6c6e3; --base-400: #8094ae; --base-500: #526484;
  --base-color: #364a63; --base-dark: #1c2b46; --base-text: var(--base-500); --base-light: var(--base-400);
  --body-bg: var(--lighter); --card-bg: var(--white); --card-border: var(--light-200);
  --sidebar-bg: var(--white); --sidebar-border: var(--light-200);
  --text-heading: var(--base-color); --text-body: var(--base-500); --text-muted: var(--base-400);
  --nav-color: var(--base-500); --nav-hover-bg: var(--lighter); --nav-hover-color: var(--base-color); --nav-active-bg: #e8f0fe; --nav-active-color: var(--azure);
  --input-bg: var(--white); --input-border: var(--light-300); --input-focus-border: var(--azure); --input-focus-shadow: rgba(22,118,251,0.1);
  --shadow-sm: 0 1px 3px rgba(28,43,70,0.04);
}
.dark-mode {
  --white: #1f2b3a; --black: #fff; --lighter: #151e2b; --light-100: #1a2535; --light-200: #233046; --light-300: #2b3c58; --light-400: #526484;
  --light-500: #8094ae; --light-600: #b7c2d0; --light-700: #dbdfea; --light-800: #e5e9f2; --light-900: #ebeef2; --darker: #0b1219;
  --body-bg: #0f1925; --card-bg: #152235; --card-border: #1f3048;
  --sidebar-bg: #142032; --sidebar-border: #1a2a40;
  --text-heading: #ebeef2; --text-body: #b7c2d0; --text-muted: #8094ae;
  --nav-color: #8094ae; --nav-hover-bg: #192c44; --nav-hover-color: #dbdfea; --nav-active-bg: #192c44; --nav-active-color: var(--azure);
  --input-bg: #1a2a40; --input-border: #2b3c58; --input-focus-shadow: rgba(22,118,251,0.15); --shadow-sm: 0 1px 3px rgba(0,0,0,0.2);
}
@media (prefers-color-scheme: dark) {
  :root:not(.light-mode) {
    --white: #1f2b3a; --black: #fff; --lighter: #151e2b; --light-100: #1a2535; --light-200: #233046; --light-300: #2b3c58; --light-400: #526484;
    --light-500: #8094ae; --light-600: #b7c2d0; --light-700: #dbdfea; --light-800: #e5e9f2; --light-900: #ebeef2; --darker: #0b1219;
    --body-bg: #0f1925; --card-bg: #152235; --card-border: #1f3048;
    --sidebar-bg: #142032; --sidebar-border: #1a2a40;
    --text-heading: #ebeef2; --text-body: #b7c2d0; --text-muted: #8094ae;
    --nav-color: #8094ae; --nav-hover-bg: #192c44; --nav-hover-color: #dbdfea; --nav-active-bg: #192c44; --nav-active-color: var(--azure);
    --input-bg: #1a2a40; --input-border: #2b3c58; --input-focus-shadow: rgba(22,118,251,0.15); --shadow-sm: 0 1px 3px rgba(0,0,0,0.2);
  }
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;background:var(--body-bg);color:var(--text-body);line-height:1.6;-webkit-font-smoothing:antialiased;font-size:.9375rem}
a{color:var(--azure);text-decoration:none;transition:color .15s}a:hover{color:var(--blue)}
.nk-app{display:flex;min-height:100vh}
.nk-sidebar{width:300px;height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;flex-shrink:0;position:fixed;left:0;top:0;z-index:100;overflow-y:auto}.nk-app{padding-left:300px}.nk-content{flex:1;overflow-y:auto;padding:2rem;min-height:100vh}
.nk-sidebar-brand{padding:1.5rem 1.25rem;border-bottom:1px solid var(--sidebar-border);display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem}
.nk-sidebar-brand img{max-width:160px;max-height:48px;object-fit:contain;display:block}
.nk-sidebar-brand-logo{height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;overflow:hidden}
.nk-sidebar-brand-logo img{max-height:100%;max-width:none;object-fit:contain}
.nk-sidebar-brand-text{font-size:1.0625rem;font-weight:600;color:var(--text-heading);line-height:1.2}
.nk-sidebar-brand-sub{font-size:.8125rem;color:var(--text-muted);font-weight:400}
.nk-sidebar-user{padding:.875rem 1.5rem;border-bottom:1px solid var(--sidebar-border)}
.nk-sidebar-user-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.25rem}
.nk-sidebar-user-name{font-size:1rem;font-weight:600;color:var(--text-heading)}
.nk-sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}
.nk-sidebar-nav-title{padding:.5rem 1.75rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:700}
.nk-menu-link{display:flex;align-items:center;gap:.75rem;padding:.625rem 1.25rem;margin:.125rem .75rem;border-radius:.5rem;font-size:.9375rem;font-weight:500;color:var(--nav-color);transition:all .15s}
.nk-menu-link:hover{color:var(--nav-hover-color);background:var(--nav-hover-bg)}
.nk-menu-link.active{color:var(--nav-active-color);background:var(--nav-active-bg)}
.nk-menu-link .icon{width:22px;text-align:center;font-size:1.25rem}
.nk-sidebar-footer{padding:1rem 1.5rem;border-top:1px solid var(--sidebar-border);font-size:.8125rem;color:var(--text-muted)}
.card{background:var(--card-bg);border-radius:.75rem;box-shadow:var(--shadow-sm);margin-bottom:1.5rem}
.card-bordered{border:1px solid var(--card-border)}
.card-inner{padding:2rem}
.card-head{margin-bottom:1.25rem}
.card-title{font-size:1.0625rem;font-weight:600;color:var(--text-heading)}
.nk-block-head{margin-bottom:1.5rem}
.nk-block-title{font-size:1.375rem;font-weight:600;color:var(--text-heading)}
.nk-block-des{font-size:.9375rem;color:var(--text-muted);margin-top:.25rem}
.nk-block-between{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.form-group{margin-bottom:1.25rem}
.form-label{display:block;font-size:.9375rem;font-weight:500;color:var(--text-heading);margin-bottom:.375rem}
.form-note{display:block;font-size:.8125rem;color:var(--text-muted);margin-top:.25rem}
.form-control{display:block;width:100%;padding:.625rem .875rem;font-size:.9375rem;color:var(--text-heading);background:var(--input-bg);border:1px solid var(--input-border);border-radius:.375rem;transition:border-color .15s,box-shadow .15s;outline:none;font-family:inherit}
.form-control:focus{border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--input-focus-shadow)}
.form-control::placeholder{color:var(--text-muted);opacity:.7}
select.form-control,select.input{color:var(--text-heading)}
select.form-control option,select.input option{color:#364a63;background:#fff}
.form-control-sm{padding:.4375rem .75rem;font-size:.875rem}
textarea.form-control{resize:vertical;min-height:80px}
select.form-control{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238094ae' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}
.form-control-wrap{position:relative}
.custom-file{position:relative}
.custom-file-input{width:100%;padding:.5rem;font-size:.8rem;color:var(--text-body);background:var(--input-bg);border:1px dashed var(--input-border);border-radius:.375rem;cursor:pointer}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5625rem 1.25rem;font-size:.9375rem;font-weight:600;border-radius:.375rem;border:1px solid transparent;cursor:pointer;transition:all .15s;font-family:inherit;text-decoration:none;line-height:1.5}
.btn .icon{font-size:1.25rem}
.btn-primary{background:var(--azure);color:#fff;border-color:var(--azure)}
.btn-primary:hover{background:#0d5fd9;border-color:#0d5fd9;color:#fff}
.btn-success{background:var(--green);color:#fff;border-color:var(--green)}.btn-success:hover{background:#17b88d;border-color:#17b88d;color:#fff}
.btn-danger{background:var(--red);color:#fff;border-color:var(--red)}.btn-danger:hover{background:#cc3a2e;border-color:#cc3a2e;color:#fff}
.btn-outline{background:transparent;border-color:var(--light-300);color:var(--text-heading)}.btn-outline:hover{background:var(--lighter);color:var(--azure)}
.btn-lg{padding:.6875rem 1.75rem;font-size:1rem}.btn-sm{padding:.5rem .875rem;font-size:.875rem;gap:.5rem;min-width:2rem;justify-content:center}.btn-sm .fa-xs,.btn-sm .fas.fa-xs{font-size:1rem!important}.btn-sm i{font-size:.9375rem}
.badge{display:inline-flex;align-items:center;padding:.1875rem .6875rem;border-radius:9999px;font-size:.8125rem;font-weight:600}
.badge-success{background:rgba(30,224,172,.12);color:var(--green)}
.badge-danger{background:rgba(232,83,71,.12);color:var(--red)}
.badge-warning{background:rgba(244,189,14,.12);color:var(--yellow)}
.badge-info{background:rgba(22,118,251,.12);color:var(--azure)}
.badge-purple{background:rgba(129,107,255,.12);color:var(--purple)}
.badge-teal{background:rgba(32,201,151,.12);color:var(--teal)}
.badge-orange{background:rgba(255,163,83,.12);color:var(--orange)}
.stat{display:flex;align-items:center;gap:1rem}
.stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
.stat-icon-blue{background:rgba(22,118,251,.1);color:var(--azure)}
.stat-icon-green{background:rgba(30,224,172,.1);color:var(--green)}
.stat-icon-purple{background:rgba(129,107,255,.1);color:var(--purple)}
.stat-icon-orange{background:rgba(255,163,83,.1);color:var(--orange)}
.stat-icon-cyan{background:rgba(9,194,222,.1);color:var(--cyan)}
.stat-icon-pink{background:rgba(255,99,165,.1);color:var(--pink)}
.stat-value{font-size:1.75rem;font-weight:700;color:var(--text-heading);line-height:1.2}
.stat-label{font-size:.8125rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.nk-tb-list{width:100%;border-collapse:collapse}
.nk-tb-list th{text-align:left;padding:.75rem 1rem;font-size:.8125rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--card-border);background:var(--lighter)}
.nk-tb-list td{padding:.875rem 1rem;font-size:.9375rem;color:var(--text-body);border-bottom:1px solid var(--card-border)}
.nk-tb-list tbody tr:hover td{background:var(--lighter)}
.quick-action{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem .875rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:.5rem;text-align:center;cursor:pointer;transition:all .15s;text-decoration:none;color:var(--text-body)}
.quick-action:hover{border-color:var(--azure);box-shadow:0 0 0 1px var(--azure)}
.quick-action-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}
.quick-action-text{font-size:.8125rem;font-weight:600;color:var(--text-heading);line-height:1.3}
.alert{padding:.875rem 1.25rem;border-radius:.5rem;font-size:.9375rem;margin-bottom:1rem}
.alert-success{background:rgba(30,224,172,.1);color:#0f7b53;border:1px solid rgba(30,224,172,.2)}
.alert-danger{background:rgba(232,83,71,.1);color:#b1342a;border:1px solid rgba(232,83,71,.2)}
.row{display:flex;flex-wrap:wrap;margin:0 -.75rem}
.col-lg-5{flex:0 0 41.666%;max-width:41.666%;padding:0 .75rem}
.col-lg-7{flex:0 0 58.333%;max-width:58.333%;padding:0 .75rem}
.col-lg-6{flex:0 0 50%;max-width:50%;padding:0 .75rem}
.col-12{flex:0 0 100%;max-width:100%;padding:0 .75rem}
.col-6{flex:0 0 50%;max-width:50%;padding:0 .75rem}
.col-4{flex:0 0 33.333%;max-width:33.333%;padding:0 .75rem}
.col-3{flex:0 0 25%;max-width:25%;padding:0 .75rem}
.col-lg-3{flex:0 0 25%;max-width:25%;padding:0 .75rem}
.col-lg-4{flex:0 0 33.333%;max-width:33.333%;padding:0 .75rem}
.g-3{margin:0 -.75rem}.g-3>[class*="col-"]{padding:0 .75rem}
.offset-lg-5{margin-left:41.666%}
.wide-lg{max-width:1140px;margin:0 auto}
.gy-3>*+*{margin-top:1rem}
.mt-2{margin-top:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.5rem}
.d-flex{display:flex}.align-center{align-items:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.flex-wrap{flex-wrap:wrap}.fw-normal{font-weight:400}
.font-mono{font-family:'SF Mono','Fira Code',monospace}.w-full{width:100%}.p-0{padding:0}
.theme-toggle{background:none;border:1px solid var(--input-border);color:var(--text-muted);cursor:pointer;padding:.4rem .6rem;border-radius:.375rem;font-size:.9rem;transition:all .15s;position:fixed;bottom:1.5rem;right:1.5rem;z-index:9999;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.1rem}
.theme-toggle:hover{background:var(--lighter);color:var(--text-heading)}

/* ===== LEGACY ALIASES ===== */
.card-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--card-border);display:flex;align-items:center;justify-content:space-between}
.card-body{padding:2rem}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.table{width:100%;border-collapse:collapse;min-width:600px}
.table th{text-align:left;padding:.75rem 1rem;font-size:.8125rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--card-border);background:var(--lighter);white-space:nowrap}
.table td{padding:.875rem 1rem;font-size:.9375rem;color:var(--text-body);border-bottom:1px solid var(--card-border);vertical-align:middle}
.table tbody tr:hover td{background:var(--lighter)}
.table td .btn-sm{white-space:nowrap}
.input{display:block;width:100%;padding:.625rem .875rem;font-size:.9375rem;color:var(--text-heading);background:var(--input-bg);border:1px solid var(--input-border);border-radius:.375rem;transition:border-color .15s,box-shadow .15s;outline:none;font-family:inherit}
.input:focus{border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--input-focus-shadow)}
.form-control::placeholder,.input::placeholder{color:var(--text-muted);opacity:.7}
select.form-control,select.input{color:var(--text-heading)}
select.form-control option,select.input option{color:var(--text-heading);background:var(--input-bg)}
.input-sm{padding:.4375rem .75rem;font-size:.875rem}
select.input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238094ae' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}
textarea.input{resize:vertical;min-height:80px}
.label{display:block;font-size:.9375rem;font-weight:500;color:var(--text-heading);margin-bottom:.375rem}

/* Utility classes for views */
.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-full{width:100%}.h-full{height:100%}
.mx-auto{margin-left:auto;margin-right:auto}.mr-4{margin-right:1rem}.ml-4{margin-left:1rem}.mt-1{margin-top:.25rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}
.p-0{padding:0}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.pb-2{padding-bottom:.5rem}.pt-4{padding-top:1rem}.pl-10{padding-left:2.5rem}
.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}
.border{border:1px solid var(--card-border)}.border-b{border-bottom:1px solid var(--card-border)}.border-t{border-top:1px solid var(--card-border)}
.border-gray-700{border-color:var(--input-border)}.border-gray-800{border-color:var(--card-border)}.border-blue-200{border-color:rgba(22,118,251,.3)}
.bg-white{background:var(--card-bg)}.bg-gray-50{background:var(--lighter)}.bg-gray-100{background:var(--light-100)}.bg-gray-200{background:var(--light-200)}.bg-gray-800{background:var(--input-bg)}.bg-gray-900{background:var(--body-bg)}.bg-gray-950{background:var(--darker)}
.bg-blue-50{background:rgba(22,118,251,.08)}.bg-green-50{background:rgba(30,224,172,.08)}.bg-purple-50{background:rgba(129,107,255,.08)}.bg-orange-50{background:rgba(255,163,83,.08)}.bg-teal-50{background:rgba(32,201,151,.08)}.bg-amber-50{background:rgba(255,163,83,.08)}.bg-rose-50{background:rgba(255,99,165,.08)}.bg-cyan-50{background:rgba(9,194,222,.08)}.bg-lime-50{background:rgba(132,204,22,.08)}.bg-fuchsia-50{background:rgba(217,70,239,.08)}.bg-red-50{background:rgba(232,83,71,.08)}.bg-indigo-50{background:rgba(44,55,130,.08)}
.text-blue-600{color:var(--azure)}.text-green-600{color:var(--green)}.text-red-400{color:var(--red)}.text-red-500{color:var(--red)}.text-red-600{color:var(--red)}.text-purple-600{color:var(--purple)}.text-orange-600{color:var(--orange)}.text-yellow-600{color:var(--yellow)}.text-indigo-600{color:var(--indigo)}.text-teal-600{color:var(--teal)}.text-gray-300{color:var(--light-500)}.text-gray-400{color:var(--text-muted)}.text-gray-500{color:var(--text-muted)}.text-gray-600{color:var(--text-body)}.text-gray-700{color:var(--text-heading)}.text-gray-800{color:var(--text-heading)}.text-white{color:var(--white)}
.text-xs{font-size:.8125rem}.text-sm{font-size:.9375rem}.text-base{font-size:1rem}.text-lg{font-size:1.25rem}.text-xl{font-size:1.375rem}.text-2xl{font-size:1.75rem}.text-3xl{font-size:2rem}
.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-mono{font-family:'SF Mono','Fira Code',monospace}
.text-center{text-align:center}.text-right{text-align:right}
.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-wrap{flex-wrap:wrap}.inline-flex{display:inline-flex}.inline-block{display:inline-block}.hidden{display:none}
.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}
.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}
.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-5>*+*{margin-top:1.25rem}.space-y-6>*+*{margin-top:1.5rem}
.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-5{grid-template-columns:repeat(5,1fr)}.lg\:col-span-2{grid-column:span 2}
.relative{position:relative}.absolute{position:absolute}.inset-y-0{top:0;bottom:0}.left-3{left:.75rem}
.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}
.hover\:border-blue-400:hover{border-color:var(--azure)}.hover\:bg-gray-100:hover{background:var(--lighter)}.hover\:text-gray-400:hover{color:var(--text-muted)}
.group:hover .group-hover\:bg-blue-100{background:rgba(22,118,251,.15)}.group:hover .group-hover\:bg-green-100{background:rgba(30,224,172,.15)}.group:hover .group-hover\:bg-teal-100{background:rgba(32,201,151,.15)}.group:hover .group-hover\:bg-purple-100{background:rgba(129,107,255,.15)}.group:hover .group-hover\:bg-indigo-100{background:rgba(44,55,130,.15)}
.transition-colors{transition:all .15s}.transition-all{transition:all .15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:ease-in-out}
.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-50{opacity:.5}
.hover\:bg-blue-500:hover{background:#3b82f6}.hover\:bg-red-500:hover{background:#ef4444}.hover\:bg-gray-700:hover{background:var(--light-700)}.hover\:bg-gray-800:hover{background:var(--light-800)}.hover\:text-white:hover{color:var(--white)}
.focus\:border-blue-500:focus{border-color:#3b82f6}.focus\:ring-1:focus{box-shadow:0 0 0 1px var(--azure)}.focus\:ring-2:focus{box-shadow:0 0 0 2px var(--azure)}.focus\:outline-none:focus{outline:none}
.backdrop-blur{backdrop-filter:blur(8px)}.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}
.placeholder-gray-500::placeholder{color:var(--text-muted)}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}
.from-blue-500{--tw-gradient-from:#3b82f6}.to-blue-700{--tw-gradient-to:#1d4ed8}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-from),var(--tw-gradient-to))}
.sm\:block{display:block}@media(min-width:640px){.sm\:block{display:block}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}

/* ===== SPACING ===== */
.card+.card,.card-bordered+.card-bordered,.card+.card-bordered,.card-bordered+.card{margin-top:1.5rem}
[class*="grid-cols-"]{gap:1.25rem}
[class*="gap-4"]{gap:1rem}
.card-body > .grid > * {min-width:0}
.label + .input,.label + select.input,.label + .form-control{margin-top:.25rem}
.card + .card{margin-top:1.5rem!important}
.row > [class*="col-"]{margin-bottom:1rem}
.row > [class*="col-"]:last-child{margin-bottom:0}

/* ===== MOBILE TOP BAR ===== */
.mobile-topbar{display:none;position:sticky;top:0;z-index:50;background:var(--sidebar-bg);border-bottom:1px solid var(--sidebar-border);padding:.625rem 1rem;align-items:center;justify-content:space-between}
.mobile-topbar-brand{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1rem;color:var(--text-heading)}
.mobile-topbar-brand img{max-height:32px}
.mobile-menu-btn{width:40px;height:40px;border-radius:.5rem;background:var(--lighter);color:var(--text-heading);border:none;cursor:pointer;font-size:1.25rem;display:flex;align-items:center;justify-content:center}
.mobile-menu-dropdown{display:none;position:fixed;top:56px;left:.5rem;right:.5rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:.75rem;box-shadow:0 10px 40px rgba(0,0,0,.15);z-index:9999;max-height:70vh;overflow-y:auto;padding:.5rem 0}
.mobile-menu-dropdown.open{display:block}
.mobile-menu-dropdown .nk-menu-link{margin:.125rem .5rem;border-radius:.5rem}
.mobile-menu-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:9998}
.mobile-menu-backdrop.open{display:block}

/* ===== GLOBAL RESPONSIVE ===== */
img,svg,iframe,video{max-width:100%;height:auto}
.form-control,select.form-control,.input,select.input{max-width:100%}
.tradingview-widget-container{max-width:100%;overflow-x:auto}

@media(max-width:991px){
  .mobile-topbar{display:flex}
  .nk-sidebar{display:none!important}
  .nk-app{padding-left:0!important}
  .nk-content{padding:1rem}
  .col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.offset-lg-5{flex:0 0 100%;max-width:100%;margin-left:0;padding:0}
  .col-3,.col-4,.col-6{flex:0 0 50%;max-width:50%}
  .grid-cols-2,.grid-cols-3,.grid-cols-4,.grid-cols-5{grid-template-columns:repeat(1,1fr)}
  .row{flex-direction:column}
  .nk-block-between{flex-direction:column;align-items:flex-start;gap:.5rem}
  .quick-action{min-width:auto;padding:.75rem}
  .stat{flex-wrap:wrap}
  .stat-value{font-size:1.25rem}
  .wide-lg{max-width:100%;padding:0}
}
@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.md\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.md\:grid-cols-5{grid-template-columns:repeat(5,1fr)}}
@media(min-width:992px){.lg\:col-span-2{grid-column:span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.lg\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.lg\:grid-cols-6{grid-template-columns:repeat(6,1fr)}.lg\:px-8{padding-left:2rem;padding-right:2rem}}

