/* ============================================================
   AMULY.FR - ADMIN DASHBOARD
   Theme bleu - Sidebar icons - Inspired by short.io
   ============================================================ */

/* --- RESET & BASE --- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;background:#f1f5f9;color:#1e293b;min-height:100vh;font-size:14px;line-height:1.5;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
button{cursor:pointer;border:none;background:none;font:inherit;}
input,select,textarea{font:inherit;}

/* --- VARIABLES --- */
:root{
    --sidebar-w:68px;
    --sidebar-expanded:220px;
    --header-h:56px;
    --primary:#2563eb;
    --primary-hover:#1d4ed8;
    --primary-light:#dbeafe;
    --primary-bg:#eff6ff;
    --dark:#0f172a;
    --dark-light:#1e293b;
    --dark-lighter:#334155;
    --gray-50:#f8fafc;
    --gray-100:#f1f5f9;
    --gray-200:#e2e8f0;
    --gray-300:#cbd5e1;
    --gray-400:#94a3b8;
    --gray-500:#64748b;
    --gray-600:#475569;
    --gray-700:#334155;
    --gray-800:#1e293b;
    --gray-900:#0f172a;
    --success:#10b981;
    --success-light:#d1fae5;
    --warning:#f59e0b;
    --warning-light:#fef3c7;
    --danger:#ef4444;
    --danger-light:#fee2e2;
    --purple:#7c3aed;
    --purple-light:#ede9fe;
    --radius:10px;
    --radius-sm:6px;
    --shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.06);
    --shadow-md:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06);
    --shadow-lg:0 10px 15px rgba(0,0,0,.1),0 4px 6px rgba(0,0,0,.05);
    --transition:all .2s ease;
}

/* ============================================================
   SIDEBAR
   ============================================================ */
.sidebar{
    position:fixed;top:0;left:0;bottom:0;
    width:var(--sidebar-w);
    background:var(--dark);
    z-index:100;
    display:flex;flex-direction:column;
    transition:width .25s cubic-bezier(.4,0,.2,1);
    overflow:hidden;
}
.sidebar:hover{width:var(--sidebar-expanded);}

/* Logo */
.sidebar-logo{
    height:var(--header-h);
    display:flex;align-items:center;
    padding:0 18px;
    border-bottom:1px solid rgba(255,255,255,.08);
    flex-shrink:0;
}
.sidebar-logo .logo-icon{
    width:32px;height:32px;flex-shrink:0;
    background:var(--primary);
    border-radius:8px;
    display:flex;align-items:center;justify-content:center;
    font-weight:800;font-size:14px;color:#fff;
    letter-spacing:-0.5px;
}
.sidebar-logo .logo-text{
    margin-left:12px;
    font-size:18px;font-weight:700;color:#fff;
    white-space:nowrap;opacity:0;
    transition:opacity .2s ease .05s;
}
.sidebar-logo .logo-text span{color:var(--primary);}
.sidebar:hover .logo-text{opacity:1;}

/* Navigation */
.sidebar-nav{
    flex:1;
    padding:12px 0;
    overflow-y:auto;overflow-x:hidden;
}
.sidebar-nav::-webkit-scrollbar{width:0;}

.nav-section{margin-bottom:8px;}
.nav-section-title{
    padding:8px 20px 4px;
    font-size:10px;font-weight:600;
    text-transform:uppercase;letter-spacing:1px;
    color:var(--gray-500);
    white-space:nowrap;opacity:0;
    transition:opacity .2s ease .05s;
}
.sidebar:hover .nav-section-title{opacity:1;}

.nav-item{
    display:flex;align-items:center;
    padding:0 10px;margin:2px 8px;
    height:42px;
    border-radius:8px;
    color:var(--gray-400);
    transition:var(--transition);
    white-space:nowrap;
    position:relative;
}
.nav-item:hover{background:rgba(255,255,255,.08);color:#fff;}
.nav-item.active{background:var(--primary);color:#fff;}

.nav-item .nav-icon{
    width:48px;height:42px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
}
.nav-item .nav-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

.nav-item .nav-label{
    font-size:13px;font-weight:500;
    opacity:0;
    transition:opacity .2s ease .05s;
}
.sidebar:hover .nav-label{opacity:1;}

/* Badge notification */
.nav-badge{
    margin-left:auto;
    background:var(--danger);
    color:#fff;
    font-size:10px;font-weight:700;
    padding:2px 6px;border-radius:10px;
    opacity:0;transition:opacity .2s ease .05s;
}
.sidebar:hover .nav-badge{opacity:1;}

/* Sidebar footer */
.sidebar-footer{
    border-top:1px solid rgba(255,255,255,.08);
    padding:12px;
    flex-shrink:0;
}
.sidebar-user{
    display:flex;align-items:center;
    padding:6px 6px;
    border-radius:8px;
    transition:var(--transition);
}
.sidebar-user:hover{background:rgba(255,255,255,.08);}
.sidebar-user .user-avatar{
    width:36px;height:36px;flex-shrink:0;
    border-radius:8px;
    background:var(--primary);
    display:flex;align-items:center;justify-content:center;
    font-weight:700;font-size:13px;color:#fff;
}
.sidebar-user .user-info{
    margin-left:10px;
    white-space:nowrap;opacity:0;
    transition:opacity .2s ease .05s;
}
.sidebar:hover .user-info{opacity:1;}
.sidebar-user .user-name{font-size:13px;font-weight:600;color:#fff;}
.sidebar-user .user-role{font-size:11px;color:var(--gray-500);}

/* ============================================================
   MAIN LAYOUT
   ============================================================ */
.main{
    margin-left:var(--sidebar-w);
    min-height:100vh;
    transition:margin-left .25s cubic-bezier(.4,0,.2,1);
}

/* Top header */
.topbar{
    height:var(--header-h);
    background:#fff;
    border-bottom:1px solid var(--gray-200);
    display:flex;align-items:center;
    padding:0 24px;
    position:sticky;top:0;z-index:50;
}
.topbar-left{display:flex;align-items:center;gap:16px;flex:1;}
.topbar-title{font-size:18px;font-weight:700;color:var(--dark);}
.topbar-breadcrumb{font-size:13px;color:var(--gray-500);}
.topbar-breadcrumb a{color:var(--primary);}
.topbar-breadcrumb a:hover{text-decoration:underline;}

.topbar-right{display:flex;align-items:center;gap:12px;}

.topbar-search{
    position:relative;
}
.topbar-search input{
    width:240px;height:36px;
    padding:0 12px 0 36px;
    border:1px solid var(--gray-200);
    border-radius:8px;
    background:var(--gray-50);
    font-size:13px;color:var(--dark);
    transition:var(--transition);
}
.topbar-search input:focus{
    outline:none;border-color:var(--primary);
    background:#fff;box-shadow:0 0 0 3px rgba(37,99,235,.1);
}
.topbar-search .search-icon{
    position:absolute;left:10px;top:50%;transform:translateY(-50%);
    color:var(--gray-400);
}
.topbar-search .search-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;}

.topbar-btn{
    width:36px;height:36px;
    display:flex;align-items:center;justify-content:center;
    border-radius:8px;color:var(--gray-500);
    transition:var(--transition);
    position:relative;
}
.topbar-btn:hover{background:var(--gray-100);color:var(--dark);}
.topbar-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;}
.topbar-btn .notif-dot{
    position:absolute;top:6px;right:6px;
    width:8px;height:8px;
    background:var(--danger);border-radius:50%;
    border:2px solid #fff;
}

/* ============================================================
   CONTENT AREA
   ============================================================ */
.content{padding:24px;}
.content-header{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:24px;
}
.content-header h1{font-size:24px;font-weight:700;color:var(--dark);}
.content-header .header-actions{display:flex;gap:8px;}

/* ============================================================
   CARDS & STATS
   ============================================================ */
.stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:24px;
}
.stat-card{
    background:#fff;
    border-radius:var(--radius);
    padding:20px;
    box-shadow:var(--shadow);
    transition:var(--transition);
    border:1px solid var(--gray-200);
}
.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px);}
.stat-card .stat-header{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:12px;
}
.stat-card .stat-icon{
    width:40px;height:40px;
    border-radius:10px;
    display:flex;align-items:center;justify-content:center;
}
.stat-card .stat-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;}
.stat-card .stat-icon.blue{background:var(--primary-light);color:var(--primary);}
.stat-card .stat-icon.green{background:var(--success-light);color:var(--success);}
.stat-card .stat-icon.purple{background:var(--purple-light);color:var(--purple);}
.stat-card .stat-icon.orange{background:var(--warning-light);color:var(--warning);}

.stat-card .stat-trend{
    font-size:12px;font-weight:600;
    padding:2px 8px;border-radius:20px;
}
.stat-card .stat-trend.up{background:var(--success-light);color:var(--success);}
.stat-card .stat-trend.down{background:var(--danger-light);color:var(--danger);}

.stat-card .stat-value{font-size:28px;font-weight:800;color:var(--dark);line-height:1.2;}
.stat-card .stat-label{font-size:13px;color:var(--gray-500);margin-top:2px;}

/* ============================================================
   TABLES
   ============================================================ */
.card{
    background:#fff;
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    border:1px solid var(--gray-200);
    overflow:hidden;
}
.card-header{
    padding:16px 20px;
    border-bottom:1px solid var(--gray-200);
    display:flex;align-items:center;justify-content:space-between;
}
.card-header h3{font-size:15px;font-weight:700;color:var(--dark);}
.card-body{padding:20px;}
.card-body.no-padding{padding:0;}

.table-container{overflow-x:auto;}
table{width:100%;border-collapse:collapse;}
thead{background:var(--gray-50);}
th{
    padding:10px 16px;
    text-align:left;
    font-size:12px;font-weight:600;
    text-transform:uppercase;letter-spacing:.5px;
    color:var(--gray-500);
    border-bottom:1px solid var(--gray-200);
}
td{
    padding:12px 16px;
    font-size:13px;
    color:var(--gray-700);
    border-bottom:1px solid var(--gray-100);
}
tr:last-child td{border-bottom:none;}
tr:hover td{background:var(--gray-50);}

/* ============================================================
   BUTTONS
   ============================================================ */
.btn{
    display:inline-flex;align-items:center;gap:6px;
    padding:8px 16px;
    border-radius:8px;
    font-size:13px;font-weight:600;
    transition:var(--transition);
    border:1px solid transparent;
    white-space:nowrap;
}
.btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;}

.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary);}
.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);}

.btn-outline{background:transparent;color:var(--gray-600);border-color:var(--gray-300);}
.btn-outline:hover{background:var(--gray-50);border-color:var(--gray-400);}

.btn-sm{padding:6px 12px;font-size:12px;border-radius:6px;}
.btn-sm svg{width:14px;height:14px;}

.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger);}
.btn-danger:hover{background:#dc2626;border-color:#dc2626;}

.btn-success{background:var(--success);color:#fff;border-color:var(--success);}
.btn-success:hover{background:#059669;border-color:#059669;}

.btn-icon{padding:8px;border-radius:8px;}

/* ============================================================
   BADGES
   ============================================================ */
.badge{
    display:inline-flex;align-items:center;
    padding:3px 10px;border-radius:20px;
    font-size:11px;font-weight:600;
}
.badge-blue{background:var(--primary-light);color:var(--primary);}
.badge-green{background:var(--success-light);color:var(--success);}
.badge-orange{background:var(--warning-light);color:var(--warning);}
.badge-red{background:var(--danger-light);color:var(--danger);}
.badge-purple{background:var(--purple-light);color:var(--purple);}
.badge-gray{background:var(--gray-200);color:var(--gray-600);}

/* ============================================================
   FORMS
   ============================================================ */
.form-group{margin-bottom:16px;}
.form-label{
    display:block;
    font-size:13px;font-weight:600;
    color:var(--gray-700);
    margin-bottom:6px;
}
.form-input{
    width:100%;height:40px;
    padding:0 12px;
    border:1px solid var(--gray-300);
    border-radius:8px;
    background:#fff;
    font-size:14px;color:var(--dark);
    transition:var(--transition);
}
.form-input:focus{
    outline:none;border-color:var(--primary);
    box-shadow:0 0 0 3px rgba(37,99,235,.1);
}
.form-input::placeholder{color:var(--gray-400);}

.form-select{
    width:100%;height:40px;
    padding:0 12px;
    border:1px solid var(--gray-300);
    border-radius:8px;
    background:#fff;
    font-size:14px;color:var(--dark);
    appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2394a3b8' fill='none' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 12px center;
    padding-right:32px;
    transition:var(--transition);
}
.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(37,99,235,.1);}

textarea.form-input{height:auto;padding:10px 12px;resize:vertical;}

.form-hint{font-size:12px;color:var(--gray-500);margin-top:4px;}
.form-error{font-size:12px;color:var(--danger);margin-top:4px;}

/* ============================================================
   LINKS LIST SPECIFIC
   ============================================================ */
.link-url{
    display:flex;align-items:center;gap:8px;
}
.link-short{
    font-weight:600;color:var(--primary);
    font-size:13px;
}
.link-short:hover{text-decoration:underline;}
.link-dest{
    font-size:12px;color:var(--gray-500);
    max-width:300px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.link-copy{
    width:28px;height:28px;
    display:flex;align-items:center;justify-content:center;
    border-radius:6px;color:var(--gray-400);
    transition:var(--transition);
}
.link-copy:hover{background:var(--gray-100);color:var(--primary);}
.link-copy svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;}

/* ============================================================
   CHART PLACEHOLDER
   ============================================================ */
.chart-container{
    height:280px;
    display:flex;align-items:center;justify-content:center;
    color:var(--gray-400);font-size:13px;
}

/* Mini bar chart CSS-only */
.mini-chart{display:flex;align-items:flex-end;gap:3px;height:36px;}
.mini-chart .bar{
    width:6px;border-radius:2px;
    background:var(--primary);opacity:.6;
    transition:var(--transition);
}
.mini-chart .bar:hover{opacity:1;}

/* ============================================================
   EMPTY STATE
   ============================================================ */
.empty-state{
    text-align:center;padding:60px 20px;
}
.empty-state .empty-icon{
    width:64px;height:64px;margin:0 auto 16px;
    background:var(--primary-light);
    border-radius:16px;
    display:flex;align-items:center;justify-content:center;
}
.empty-state .empty-icon svg{width:28px;height:28px;stroke:var(--primary);fill:none;stroke-width:1.5;}
.empty-state h3{font-size:16px;font-weight:700;color:var(--dark);margin-bottom:8px;}
.empty-state p{font-size:13px;color:var(--gray-500);margin-bottom:20px;}

/* ============================================================
   MODAL
   ============================================================ */
.modal-overlay{
    position:fixed;inset:0;
    background:rgba(0,0,0,.5);
    z-index:200;
    display:none;align-items:center;justify-content:center;
    opacity:0;transition:opacity .2s ease;
}
.modal-overlay.show{display:flex;opacity:1;}
.modal{
    background:#fff;
    border-radius:var(--radius);
    box-shadow:var(--shadow-lg);
    width:100%;max-width:520px;
    max-height:90vh;overflow-y:auto;
}
.modal-header{
    padding:16px 20px;
    border-bottom:1px solid var(--gray-200);
    display:flex;align-items:center;justify-content:space-between;
}
.modal-header h3{font-size:16px;font-weight:700;}
.modal-close{
    width:32px;height:32px;
    display:flex;align-items:center;justify-content:center;
    border-radius:8px;color:var(--gray-400);
    transition:var(--transition);
}
.modal-close:hover{background:var(--gray-100);color:var(--dark);}
.modal-body{padding:20px;}
.modal-footer{
    padding:16px 20px;
    border-top:1px solid var(--gray-200);
    display:flex;justify-content:flex-end;gap:8px;
}

/* ============================================================
   PAGINATION
   ============================================================ */
.pagination{
    display:flex;align-items:center;justify-content:center;gap:4px;
    padding:16px;
}
.page-btn{
    width:34px;height:34px;
    display:flex;align-items:center;justify-content:center;
    border-radius:8px;font-size:13px;font-weight:500;
    color:var(--gray-600);
    transition:var(--transition);
}
.page-btn:hover{background:var(--gray-100);}
.page-btn.active{background:var(--primary);color:#fff;}
.page-btn.disabled{opacity:.4;pointer-events:none;}
.page-btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;}

/* ============================================================
   DROPDOWN
   ============================================================ */
.dropdown{position:relative;display:inline-block;}
.dropdown-menu{
    position:absolute;top:calc(100% + 4px);right:0;
    background:#fff;
    border:1px solid var(--gray-200);
    border-radius:var(--radius-sm);
    box-shadow:var(--shadow-lg);
    min-width:160px;
    padding:4px;
    z-index:60;
    display:none;
}
.dropdown-menu.show{display:block;}
.dropdown-item{
    display:flex;align-items:center;gap:8px;
    padding:8px 12px;
    border-radius:4px;
    font-size:13px;color:var(--gray-700);
    transition:var(--transition);
}
.dropdown-item:hover{background:var(--gray-50);}
.dropdown-item svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;}
.dropdown-item.danger{color:var(--danger);}
.dropdown-divider{height:1px;background:var(--gray-200);margin:4px 0;}

/* ============================================================
   ALERTS / TOAST
   ============================================================ */
.alert{
    padding:12px 16px;
    border-radius:var(--radius-sm);
    font-size:13px;font-weight:500;
    display:flex;align-items:center;gap:10px;
    margin-bottom:16px;
}
.alert svg{width:18px;height:18px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2;}
.alert-info{background:var(--primary-light);color:var(--primary);border:1px solid #93c5fd;}
.alert-success{background:var(--success-light);color:#065f46;border:1px solid #6ee7b7;}
.alert-warning{background:var(--warning-light);color:#92400e;border:1px solid #fcd34d;}
.alert-danger{background:var(--danger-light);color:#991b1b;border:1px solid #fca5a5;}

.toast-container{
    position:fixed;top:16px;right:16px;
    z-index:300;
    display:flex;flex-direction:column;gap:8px;
}
.toast{
    background:#fff;
    border-radius:var(--radius-sm);
    box-shadow:var(--shadow-lg);
    padding:12px 16px;
    font-size:13px;
    display:flex;align-items:center;gap:10px;
    min-width:280px;
    border-left:4px solid var(--primary);
    animation:toastIn .3s ease;
}
.toast.success{border-left-color:var(--success);}
.toast.error{border-left-color:var(--danger);}
@keyframes toastIn{from{opacity:0;transform:translateX(40px);}to{opacity:1;transform:translateX(0);}}

/* ============================================================
   QR CODE PREVIEW
   ============================================================ */
.qr-preview{
    width:120px;height:120px;
    border-radius:var(--radius-sm);
    border:1px solid var(--gray-200);
    padding:8px;
    background:#fff;
    display:flex;align-items:center;justify-content:center;
}
.qr-preview img{width:100%;height:100%;object-fit:contain;}
.qr-preview-lg{width:200px;height:200px;padding:12px;}

/* ============================================================
   TABS
   ============================================================ */
.tabs{
    display:flex;gap:0;
    border-bottom:2px solid var(--gray-200);
    margin-bottom:20px;
}
.tab{
    padding:10px 20px;
    font-size:13px;font-weight:600;
    color:var(--gray-500);
    border-bottom:2px solid transparent;
    margin-bottom:-2px;
    transition:var(--transition);
}
.tab:hover{color:var(--dark);}
.tab.active{color:var(--primary);border-bottom-color:var(--primary);}

/* ============================================================
   TOGGLE SWITCH
   ============================================================ */
.toggle{
    position:relative;
    width:44px;height:24px;
    display:inline-block;
}
.toggle input{opacity:0;width:0;height:0;}
.toggle-slider{
    position:absolute;inset:0;
    background:var(--gray-300);
    border-radius:12px;
    cursor:pointer;
    transition:var(--transition);
}
.toggle-slider::before{
    content:'';position:absolute;
    width:18px;height:18px;
    border-radius:50%;
    background:#fff;
    left:3px;top:3px;
    transition:var(--transition);
    box-shadow:0 1px 3px rgba(0,0,0,.2);
}
.toggle input:checked + .toggle-slider{background:var(--primary);}
.toggle input:checked + .toggle-slider::before{transform:translateX(20px);}

/* ============================================================
   SUPER ADMIN SPECIFIC
   ============================================================ */
.super-badge{
    display:inline-flex;align-items:center;gap:4px;
    background:linear-gradient(135deg,var(--primary),var(--purple));
    color:#fff;
    padding:3px 10px;border-radius:20px;
    font-size:10px;font-weight:700;
    text-transform:uppercase;letter-spacing:.5px;
}

/* ============================================================
   LOGIN PAGE
   ============================================================ */
.login-page{
    min-height:100vh;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,#eff6ff 0%,#e0e7ff 50%,#dbeafe 100%);
}
.login-card{
    width:100%;max-width:400px;
    background:#fff;
    border-radius:16px;
    box-shadow:var(--shadow-lg);
    padding:40px;
}
.login-logo{
    text-align:center;margin-bottom:32px;
}
.login-logo .logo-mark{
    display:inline-flex;align-items:center;justify-content:center;
    width:56px;height:56px;
    background:var(--primary);
    border-radius:14px;
    margin-bottom:16px;
}
.login-logo .logo-mark svg{width:28px;height:28px;stroke:#fff;fill:none;stroke-width:2;}
.login-logo h1{font-size:22px;font-weight:700;color:var(--dark);}
.login-logo h1 span{color:var(--primary);}
.login-logo p{font-size:13px;color:var(--gray-500);margin-top:4px;}

.login-form .form-group{margin-bottom:20px;}
.login-form .form-input{height:44px;font-size:14px;}

.login-btn{
    width:100%;height:44px;
    background:var(--primary);color:#fff;
    border:none;border-radius:8px;
    font-size:14px;font-weight:600;
    cursor:pointer;
    transition:var(--transition);
}
.login-btn:hover{background:var(--primary-hover);}

.login-footer{
    text-align:center;margin-top:24px;
    font-size:12px;color:var(--gray-500);
}
.login-footer a{color:var(--primary);font-weight:500;}
.login-footer a:hover{text-decoration:underline;}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1200px){
    .stats-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
    .sidebar{
        width:0;
        transform:translateX(-100%);
    }
    .sidebar.mobile-open{
        width:var(--sidebar-expanded);
        transform:translateX(0);
    }
    .main{margin-left:0;}
    .content{padding:16px;}
    .stats-grid{grid-template-columns:1fr;}
    .topbar{padding:0 16px;}
    .content-header{flex-direction:column;align-items:flex-start;gap:12px;}
    .mobile-toggle{display:flex !important;}
}
@media(min-width:769px){
    .mobile-toggle{display:none !important;}
}
