:root,
[data-bs-theme=light]{--dash-bg:#f4f3f8;--dash-surface:#fff;--dash-surface-2:#f6f5fa;--dash-surface-3:#efedf4;--dash-border:#e8e4ef;--dash-border-strong:#ddd6e8;--dash-text:#2c2335;--dash-text-soft:#574e66;--dash-text-muted:#6f6680;--dash-heading:#2a1830;--dash-sidebar-bg:#fff;--dash-sidebar-active-bg:rgba(93,37,87,0.09);--dash-topbar-bg:rgba(255,255,255,.85);--dash-accent:#5d2557;--dash-accent-rgb:93,37,87;--dash-accent-soft:rgba(93,37,87,0.1);--dash-gold:#f5b518;--dash-gold-soft:rgba(245,181,24,0.16);--dash-success:#2e8b4f;--dash-success-soft:rgba(46,139,79,.12);--dash-danger:#c4324b;--dash-danger-soft:rgba(196,50,75,.12);--dash-warning:#d99114;--dash-warning-soft:rgba(217,145,20,.15);--dash-warning-ink:#8a5a00;--dash-info:#2f7da0;--dash-info-soft:rgba(47,125,160,.12);--dash-radius:16px;--dash-radius-sm:12px;--dash-radius-lg:20px;--card-bg:var(--dash-surface);--bg-secondary:var(--dash-surface-2);--text-primary:var(--dash-text);--text-secondary:var(--dash-text-muted);--primary-color:#5d2557;--secondary-color:#f5b518;--hover-bg:var(--dash-surface-2);--input-bg:var(--dash-surface);--border-color:var(--dash-border);--shadow-color:transparent}[data-bs-theme=dark]{--dash-bg:#131019;--dash-surface:#1c1824;--dash-surface-2:#242030;--dash-surface-3:#2c2738;--dash-border:#322c3f;--dash-border-strong:#423a52;--dash-text:#ece8f3;--dash-text-soft:#c3bcd2;--dash-text-muted:#968ca8;--dash-heading:#fff;--dash-sidebar-bg:#181420;--dash-sidebar-active-bg:rgba(245,181,24,0.13);--dash-topbar-bg:rgba(24,20,32,.82);--dash-accent:#d6a4cf;--dash-accent-rgb:214,164,207;--dash-accent-soft:rgba(214,164,207,.14);--dash-gold:#f5b518;--dash-gold-soft:rgba(245,181,24,.16);--dash-success:#4cc47a;--dash-success-soft:rgba(76,196,122,.16);--dash-danger:#f0728a;--dash-danger-soft:rgba(240,114,138,.16);--dash-warning:#f5b518;--dash-warning-soft:rgba(245,181,24,.18);--dash-warning-ink:#f5b518;--dash-info:#5cb3d6;--dash-info-soft:rgba(92,179,214,.16);--shadow-color:transparent;--bs-body-bg:var(--dash-bg);--bs-body-color:var(--dash-text);--bs-emphasis-color:var(--dash-heading);--bs-secondary-color:var(--dash-text-muted);--bs-secondary-bg:var(--dash-surface-2);--bs-tertiary-bg:var(--dash-surface-3);--bs-border-color:var(--dash-border);--bs-border-color-translucent:var(--dash-border)}body.dash-body{background:var(--dash-bg);color:var(--dash-text)}.dash-app{min-height:100vh}.dash-sidebar{position:fixed;top:0;left:0;bottom:0;width:264px;display:flex;flex-direction:column;background:var(--dash-sidebar-bg);border-right:1px solid var(--dash-border);z-index:1045;transition:width 0.22s ease,transform 0.25s ease}.dash-sidebar-head{height:64px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:0.5rem;padding:0 1rem;border-bottom:1px solid var(--dash-border)}
.dash-sidebar-head .dash-brand{display:inline-flex;align-items:center;overflow:hidden}
.dash-sidebar-head .dash-brand img{height:34px;width:auto;max-width:150px}.dash-sidebar-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:0.85rem 0.75rem;scrollbar-width:thin}
.dash-sidebar-body::-webkit-scrollbar{width:6px}
.dash-sidebar-body::-webkit-scrollbar-thumb{background:var(--dash-border-strong);border-radius:6px}.dash-sidebar-foot{flex-shrink:0;border-top:1px solid var(--dash-border);padding:0.75rem}.dash-collapse-btn{width:34px;height:34px;border-radius:9px;border:1px solid var(--dash-border);background:var(--dash-surface);color:var(--dash-text-soft);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:color 0.2s ease,border-color 0.2s ease}
.dash-collapse-btn:hover{color:var(--dash-accent);border-color:var(--dash-accent)}.dash-content{margin-left:264px;min-height:100vh;display:flex;flex-direction:column;transition:margin-left 0.22s ease}.dash-main{flex:1;padding:1.6rem}.dash-footer{border-top:1px solid var(--dash-border);padding:1rem 1.6rem;color:var(--dash-text-muted);font-size:0.85rem;display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:space-between}.dash-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.45);opacity:0;visibility:hidden;transition:opacity 0.25s ease;z-index:1044}html.dash-collapsed .dash-sidebar{width:78px}
html.dash-collapsed .dash-content{margin-left:78px}
html.dash-collapsed .dash-sidebar-head{justify-content:center}
html.dash-collapsed .dash-sidebar-head .dash-brand{display:none}
html.dash-collapsed .dash-nav-title{display:none}
html.dash-collapsed .dash-nav-link{justify-content:center;padding-left:0;padding-right:0}
html.dash-collapsed .dash-nav-link span,html.dash-collapsed .dash-nav-link .dash-pill{display:none}
html.dash-collapsed .dash-nav-link.active::before{display:none}
html.dash-collapsed .dash-nav-user{justify-content:center}
html.dash-collapsed .dash-nav-user .dash-nav-utext,html.dash-collapsed .dash-nav-user .dash-nav-foot-logout{display:none}
html.dash-collapsed .dash-expand-btn i{transform:rotate(180deg)}.dash-topbar{position:sticky;top:0;z-index:1035;height:64px;display:flex;align-items:center;gap:0.85rem;padding:0 1.6rem;background:var(--dash-topbar-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--dash-border)}
.dash-topbar .dash-topbar-title{font-size:1.15rem;font-weight:800;margin:0;color:var(--dash-heading);min-width:0}.dash-search{position:relative;flex:1;max-width:380px;margin:0}
.dash-card .dash-search{max-width:none;flex:none;width:100%}
.dash-search i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--dash-text-muted);pointer-events:none}
.dash-search input{width:100%;height:42px;border:1px solid var(--dash-border);background:var(--dash-surface-2);border-radius:999px;padding:0 1rem 0 2.5rem;color:var(--dash-text);font-size:0.9rem;outline:none;transition:border-color 0.2s ease,background 0.2s ease}
.dash-search input::placeholder{color:var(--dash-text-muted)}
.dash-search input:focus{border-color:var(--dash-accent);background:var(--dash-surface)}.dash-icon-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none !important;background:transparent !important;box-shadow:none !important;color:var(--dash-text-soft);font-size:1.25rem;position:relative;padding:0 !important;transition:opacity 0.2s ease,color 0.2s ease;text-decoration:none;cursor:pointer;flex-shrink:0}
.dash-icon-btn:hover{color:var(--dash-accent);background:transparent !important;opacity:0.8}
.dash-icon-btn i{font-size:1.25rem;line-height:1}
.dash-icon-btn .dash-icon-badge{position:absolute;top:-4px;right:-6px;width:18px !important;height:18px !important;min-width:18px !important;max-width:18px !important;min-height:18px !important;max-height:18px !important;aspect-ratio:1/1 !important;padding:0 !important;margin:0 !important;border-radius:50% !important;background:var(--dash-gold) !important;color:#1a1006 !important;font-size:0.65rem;font-weight:800;display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;line-height:1 !important;border:1.5px solid var(--dash-surface) !important;box-sizing:border-box !important}.dash-theme-toggle .icon-sun{display:none}
.dash-theme-toggle .icon-moon{display:inline-block}[data-bs-theme=dark] .dash-theme-toggle .icon-sun{display:inline-block}
[data-bs-theme=dark] .dash-theme-toggle .icon-moon{display:none}.dash-logo-dark{display:none}[data-bs-theme=dark] .dash-logo-light{display:none}
[data-bs-theme=dark] .dash-logo-dark{display:inline-block}.dash-nav{display:flex;flex-direction:column;gap:0.12rem}.dash-nav-section + .dash-nav-section{margin-top:0.7rem;padding-top:0.7rem;border-top:1px solid var(--dash-border)}.dash-nav-title{display:block;font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.09em;color:var(--dash-text-muted);padding:0.3rem 0.85rem 0.4rem}.dash-nav-link{display:flex;align-items:center;gap:0.8rem;padding:0.62rem 0.85rem;border-radius:var(--dash-radius-sm);color:var(--dash-text-soft);font-weight:600;font-size:0.9rem;text-decoration:none;position:relative;transition:background 0.18s ease,color 0.18s ease}
.dash-nav-link i,.dash-nav-link .dash-nav-ic{width:22px;text-align:center;font-size:1.05rem;flex-shrink:0}
.dash-nav-link .dash-pill{margin-left:auto}
.dash-nav-link:hover{background:var(--dash-surface-2);color:var(--dash-accent)}
.dash-nav-link.active{background:var(--dash-sidebar-active-bg);color:var(--dash-accent)}
.dash-nav-link.active::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:58%;border-radius:0 4px 4px 0;background:var(--dash-accent)}
.dash-nav-link.dash-nav-soon{opacity:0.6}.dash-nav-logout{color:var(--dash-danger)}
.dash-nav-logout:hover{background:var(--dash-danger-soft);color:var(--dash-danger)}.dash-nav-user{display:flex;align-items:center;gap:0.7rem;padding:0.5rem;border-radius:var(--dash-radius-sm);transition:background 0.18s ease}
.dash-nav-user:hover{background:var(--dash-surface-2)}
.dash-nav-user .dash-nav-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#5d2557,#f5b518);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem;color:#fff;flex-shrink:0}
.dash-nav-user .dash-nav-utext{min-width:0;flex:1}
.dash-nav-user .dash-nav-uname{font-weight:700;line-height:1.15;color:var(--dash-heading);font-size:0.9rem}
.dash-nav-user .dash-nav-umail{font-size:0.72rem;color:var(--dash-text-muted)}
.dash-nav-user .dash-nav-foot-logout{color:var(--dash-text-muted);width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;text-decoration:none;flex-shrink:0}
.dash-nav-user .dash-nav-foot-logout:hover{color:var(--dash-danger);background:var(--dash-danger-soft)}.dash-shell{color:var(--dash-text)}
.dash-shell h1,.dash-shell h2,.dash-shell h3,.dash-shell h4,.dash-shell h5,.dash-shell h6,
.dash-shell .h1,.dash-shell .h2,.dash-shell .h3,.dash-shell .h4,.dash-shell .h5,.dash-shell .h6{color:var(--dash-heading)}
.dash-shell a{color:var(--dash-accent)}
.dash-shell hr{border-color:var(--dash-border);opacity:1}.dash-page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}
.dash-page-header .dash-page-title{font-size:1.5rem;font-weight:800;margin:0;display:flex;align-items:center;gap:0.65rem;color:var(--dash-heading)}
.dash-page-header .dash-page-title i{color:var(--dash-accent)}
.dash-page-header .dash-page-sub{color:var(--dash-text-muted);margin:0.15rem 0 0;font-size:0.9rem}
.dash-page-header .dash-page-actions{display:flex;gap:0.6rem;flex-wrap:wrap}.dash-breadcrumb{font-size:0.8rem;color:var(--dash-text-muted);text-decoration:none}
.dash-breadcrumb a{color:var(--dash-text-muted);text-decoration:none}
.dash-breadcrumb a:hover{color:var(--dash-accent)}
.dash-breadcrumb:hover{color:var(--dash-accent)}.dash-card{background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--dash-radius);color:var(--dash-text);padding:1.4rem;transition:border-color 0.2s ease}
.dash-card.dash-card-hover:hover{border-color:var(--dash-border-strong)}.dash-shell .card{background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--dash-radius);color:var(--dash-text);box-shadow:none;--bs-card-bg:var(--dash-surface);--bs-card-border-color:var(--dash-border)}
.dash-shell .card-body{color:var(--dash-text)}
.dash-shell .card.bg-transparent{background:transparent !important}.dash-card-head{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;margin-bottom:1.1rem}
.dash-card-head .dash-card-title{font-size:1.02rem;font-weight:700;margin:0;color:var(--dash-heading);display:flex;align-items:center;gap:0.55rem}
.dash-card-head .dash-card-title i{color:var(--dash-accent)}.bg-gradient-dark{background:linear-gradient(0deg,rgba(0,0,0,0.88) 0%,rgba(0,0,0,0.4) 60%,rgba(0,0,0,0) 100%) !important;color:#fff !important}
.bg-gradient-dark h1,.bg-gradient-dark h2,.bg-gradient-dark h3,.bg-gradient-dark h4,.bg-gradient-dark h5,.bg-gradient-dark h6,.bg-gradient-dark .fw-bold,.bg-gradient-dark p,.bg-gradient-dark span{color:#fff !important}.dash-stat{display:flex;align-items:center;gap:1rem;padding:1.3rem;background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--dash-radius);transition:border-color 0.2s ease;height:100%;text-decoration:none;color:var(--dash-text)}
.dash-stat:hover{border-color:var(--dash-border-strong);color:var(--dash-text)}
.dash-stat .dash-stat-ic{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0;background:var(--dash-accent-soft);color:var(--dash-accent)}
.dash-stat .dash-stat-label{font-size:0.82rem;color:var(--dash-text-muted);margin:0;font-weight:600}
.dash-stat .dash-stat-value{font-size:1.5rem;font-weight:800;color:var(--dash-heading);margin:0.1rem 0 0;line-height:1.1}
.dash-stat .dash-stat-meta{font-size:0.76rem}
.dash-stat.is-gold .dash-stat-ic{background:var(--dash-gold-soft);color:var(--dash-gold)}
.dash-stat.is-success .dash-stat-ic{background:var(--dash-success-soft);color:var(--dash-success)}
.dash-stat.is-danger .dash-stat-ic{background:var(--dash-danger-soft);color:var(--dash-danger)}
.dash-stat.is-info .dash-stat-ic{background:var(--dash-info-soft);color:var(--dash-info)}
.dash-stat.is-warning .dash-stat-ic{background:var(--dash-warning-soft);color:var(--dash-warning)}.dash-stat-filled{background:linear-gradient(135deg,#5d2557,rgb(22.1628959276%,8.8174962293%,20.7330316742%));border:none;color:#fff}
.dash-stat-filled .dash-stat-label,.dash-stat-filled .dash-stat-value{color:#fff}
.dash-stat-filled .dash-stat-label{opacity:0.82}
.dash-stat-filled .dash-stat-ic{background:rgba(255,255,255,0.16);color:#fff}
.dash-stat-filled:hover{color:#fff}
.dash-stat-filled.is-success .dash-stat-ic,.dash-stat-filled.is-danger .dash-stat-ic,.dash-stat-filled.is-info .dash-stat-ic,.dash-stat-filled.is-warning .dash-stat-ic,.dash-stat-filled.is-gold .dash-stat-ic{background:rgba(255,255,255,0.18);color:#fff}
.dash-stat-filled.is-gold{background:linear-gradient(135deg,#f5b518,#e0a312);color:#4a3500}
.dash-stat-filled.is-gold .dash-stat-label,.dash-stat-filled.is-gold .dash-stat-value{color:#4a3500}
.dash-stat-filled.is-gold .dash-stat-ic{background:rgba(0,0,0,0.12);color:#4a3500}.dash-shell .metric-card{background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--dash-radius);box-shadow:none;color:var(--dash-text)}
.dash-shell .metric-card:hover{border-color:var(--dash-border-strong)}
.dash-shell .metric-card .metric-icon{width:54px;height:54px;border-radius:14px;font-size:1.35rem;color:#fff}
.dash-shell .metric-card .metric-icon.savings{background:linear-gradient(135deg,#2e8b4f,#34a85e)}
.dash-shell .metric-card .metric-icon.orders{background:linear-gradient(135deg,#5d2557,rgb(53.6398190045%,21.3405731523%,50.1791855204%))}
.dash-shell .metric-card .metric-icon.groups{background:linear-gradient(135deg,#2f7da0,#3f9fc8)}
.dash-shell .metric-card .metric-icon.wallet{background:linear-gradient(135deg,#f5b518,#ffce4d);color:#4a3500}
.dash-shell .metric-card .metric-content h3{color:var(--dash-heading);font-size:1.55rem}
.dash-shell .metric-card .metric-content p{color:var(--dash-text-muted)}.dash-shell .stats-card{background:var(--dash-surface);border:1px solid var(--dash-border) !important;color:var(--dash-text);box-shadow:none}
.dash-shell .stats-card:hover{border-color:var(--dash-accent) !important}
.dash-shell .stats-card h3{color:var(--dash-text-muted);font-size:0.85rem;font-weight:600}
.dash-shell .stats-card .stat-value{color:var(--dash-heading);font-size:1.4rem;font-weight:800}.dash-shell .table{--bs-table-bg:transparent;--bs-table-color:var(--dash-text);--bs-table-border-color:var(--dash-border);--bs-table-striped-bg:var(--dash-surface-2);--bs-table-striped-color:var(--dash-text);--bs-table-hover-bg:var(--dash-accent-soft);--bs-table-hover-color:var(--dash-text);color:var(--dash-text);margin:0}
.dash-shell .table thead th{background:var(--dash-surface-2);color:var(--dash-text-muted);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;border-bottom:1px solid var(--dash-border);padding:0.85rem 1rem;white-space:nowrap}
.dash-shell .table tbody td{padding:0.9rem 1rem;vertical-align:middle;border-color:var(--dash-border);color:var(--dash-text)}
.dash-shell .table tbody tr{transition:background-color 0.18s ease}
.dash-shell .dash-table-card{background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--dash-radius);overflow:hidden}
.dash-shell .dash-table-card .table thead th:first-child,.dash-shell .dash-table-card .table tbody td:first-child{padding-left:1.25rem}
.dash-shell .dash-table-card .table thead th:last-child,.dash-shell .dash-table-card .table tbody td:last-child{padding-right:1.25rem}.dash-pill{display:inline-flex;align-items:center;gap:0.35rem;padding:0.32rem 0.7rem;border-radius:999px;font-size:0.75rem;font-weight:700;line-height:1}
.dash-pill.is-success{background:var(--dash-success-soft);color:var(--dash-success)}
.dash-pill.is-danger{background:var(--dash-danger-soft);color:var(--dash-danger)}
.dash-pill.is-warning{background:var(--dash-warning-soft);color:var(--dash-warning-ink)}
.dash-pill.is-gold{background:var(--dash-warning-soft);color:var(--dash-warning-ink)}
.dash-pill.is-info{background:var(--dash-info-soft);color:var(--dash-info)}
.dash-pill.is-accent{background:var(--dash-accent-soft);color:var(--dash-accent)}
.dash-pill.is-muted{background:var(--dash-surface-3);color:var(--dash-text-muted)}.btn-dash{background:linear-gradient(135deg,#5d2557,rgb(25.0244343891%,9.9559577677%,23.4099547511%));border:none;color:#fff !important;font-weight:600}
.btn-dash:hover,.btn-dash:focus{color:#fff !important;filter:brightness(1.07)}.btn-dash-gold{background:linear-gradient(135deg,#f5b518,#e0a312);border:none;color:#4a3500 !important;font-weight:700}
.btn-dash-gold:hover,.btn-dash-gold:focus{color:#4a3500 !important;filter:brightness(1.05)}.btn-dash-soft{background:var(--dash-accent-soft);border:1px solid transparent;color:var(--dash-accent) !important;font-weight:600}
.btn-dash-soft:hover,.btn-dash-soft:focus{background:var(--dash-accent);color:#fff !important}.btn-dash-ghost{background:var(--dash-surface);border:1px solid var(--dash-border);color:var(--dash-text-soft) !important;font-weight:600}
.btn-dash-ghost:hover,.btn-dash-ghost:focus{border-color:var(--dash-accent);color:var(--dash-accent) !important}.dash-shell .form-control,
.dash-shell .form-select{background:var(--dash-surface);border:1px solid var(--dash-border-strong);color:var(--dash-text);border-radius:var(--dash-radius-sm) !important}
.dash-shell .form-control::placeholder,
.dash-shell .form-select::placeholder{color:var(--dash-text-muted)}
.dash-shell .form-control:focus,
.dash-shell .form-select:focus{background:var(--dash-surface);border-color:var(--dash-accent);box-shadow:0 0 0 0.2rem var(--dash-accent-soft);color:var(--dash-text)}
.dash-shell label,.dash-shell .form-label{color:var(--dash-text-soft);font-weight:600;font-size:0.88rem;margin-bottom:0.35rem}
.dash-shell .input-group-text{background:var(--dash-surface-2);border-color:var(--dash-border-strong);color:var(--dash-text-muted)}.dash-shell .progress{background:var(--dash-surface-3);border-radius:999px;overflow:hidden;height:10px}
.dash-shell .progress-bar{background:linear-gradient(90deg,#5d2557,#f5b518);border-radius:999px}.dash-shell .order-timeline{background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--dash-radius);box-shadow:none}
.dash-shell .order-timeline .timeline-item:not(:last-child)::after{background:var(--dash-border-strong)}
.dash-shell .order-timeline .timeline-icon.pending{background:var(--dash-surface-3);color:var(--dash-text-muted);border:2px solid var(--dash-border-strong)}
.dash-shell .order-timeline .timeline-step{color:var(--dash-text)}
.dash-shell .order-timeline .timeline-date{color:var(--dash-text-muted)}.dash-shell .empty-icon{width:80px;height:80px;border-radius:50%;background:var(--dash-accent-soft);color:var(--dash-accent);display:inline-flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:1rem}
.dash-shell .empty-title{color:var(--dash-heading);font-weight:700}
.dash-shell .empty-description{color:var(--dash-text-muted);max-width:460px;margin-inline:auto}
.dash-shell .start-shopping-btn{display:inline-flex;align-items:center;margin-top:0.5rem;padding:0.6rem 1.4rem;border-radius:999px;background:linear-gradient(135deg,#5d2557,#f5b518);color:#fff;font-weight:600;text-decoration:none}
.dash-shell .start-shopping-btn:hover{color:#fff;filter:brightness(1.05)}.dash-empty{text-align:center;padding:3rem 1.5rem;background:var(--dash-surface);border:1px dashed var(--dash-border-strong);border-radius:var(--dash-radius)}
.dash-empty .dash-empty-ic{width:84px;height:84px;border-radius:50%;background:var(--dash-accent-soft);color:var(--dash-accent);display:inline-flex;align-items:center;justify-content:center;font-size:2.1rem;margin-bottom:1rem}
.dash-empty h3,.dash-empty h6{color:var(--dash-heading);font-weight:700}
.dash-empty p{color:var(--dash-text-muted);max-width:460px;margin-inline:auto}.dash-shell .quick-action-btn{background:var(--dash-surface);border:1px solid var(--dash-border);color:var(--dash-text-soft);border-radius:var(--dash-radius);box-shadow:none}
.dash-shell .quick-action-btn i{color:var(--dash-accent)}
.dash-shell .quick-action-btn span{color:inherit}
.dash-shell .quick-action-btn:hover{border-color:var(--dash-accent);color:var(--dash-accent);transform:none;box-shadow:none}
.dash-shell .category-card,.dash-shell .notification-card,.dash-shell .service-block,.dash-shell .blog-card,
.dash-shell .group-visual-card,.dash-shell .group-benefit-card,.dash-shell .sub-advantage-card,.dash-shell .action-card,
.dash-shell .overview-card,.dash-shell .chart-container,.dash-shell .budget-card,.dash-shell .category-expense{background:var(--dash-surface) !important;border:1px solid var(--dash-border);color:var(--dash-text);border-radius:var(--dash-radius);box-shadow:none}
.dash-shell .action-card{padding:1.25rem;transition:border-color 0.2s ease}
.dash-shell .action-card h5{color:var(--dash-heading);font-weight:700}
.dash-shell .action-card p{color:var(--dash-text-muted);font-size:0.88rem}
.dash-shell .action-card:hover{border-color:var(--dash-border-strong)}
.dash-shell .group-card{background:var(--dash-surface);border:1px solid var(--dash-border);color:var(--dash-text);box-shadow:none}
.dash-shell .group-card:hover{border-color:var(--dash-border-strong);transform:none;box-shadow:none}
.dash-shell .group-card .group-description{color:var(--dash-text-soft)}
.dash-shell .expense-item{border-color:var(--dash-border);color:var(--dash-text)}
.dash-shell .expense-item:hover{background:var(--dash-surface-2)}
.dash-shell .category-stats{background:var(--dash-surface-2)}
.dash-shell .overview-card:hover,.dash-shell .category-expense:hover,.dash-shell .metric-card:hover,
.dash-shell .notification-card:hover,.dash-shell .blog-card:hover,.dash-shell .category-card:hover,
.dash-shell .stats-card:hover,.dash-shell .dash-stat:hover,.dash-shell .service-block:hover{transform:none !important;box-shadow:none !important}
.dash-shell .alert{border-radius:var(--dash-radius-sm)}.dash-shell .dataTables_wrapper .dataTables_length,.dash-shell .dataTables_wrapper .dataTables_filter,.dash-shell .dataTables_wrapper .dataTables_info,.dash-shell .dataTables_wrapper .dataTables_paginate{color:var(--dash-text-muted);font-size:0.85rem}
.dash-shell .dataTables_wrapper label{color:var(--dash-text-muted)}
.dash-shell .page-link{background:var(--dash-surface);border-color:var(--dash-border);color:var(--dash-text-soft)}
.dash-shell .page-link:hover{background:var(--dash-surface-2);color:var(--dash-accent)}
.dash-shell .page-item.active .page-link{background:var(--dash-accent);border-color:var(--dash-accent);color:#fff}
.dash-shell .page-item.disabled .page-link{background:var(--dash-surface);color:var(--dash-text-muted)}.dash-chat{background:var(--dash-surface-2);border:1px solid var(--dash-border);border-radius:var(--dash-radius);height:400px;overflow-y:auto;padding:1rem;scrollbar-width:thin}
.dash-chat::-webkit-scrollbar{width:6px}
.dash-chat::-webkit-scrollbar-thumb{background:var(--dash-border-strong);border-radius:6px}
.dash-chat #messages{display:flex;flex-direction:column;gap:0.65rem;min-height:100%}.dash-chat-row{display:flex;align-items:flex-end;gap:0.5rem;max-width:82%}
.dash-chat-row.is-me{flex-direction:row-reverse;margin-left:auto}.dash-chat-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:0.82rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#2f7da0,#3f9fc8)}.is-me .dash-chat-avatar{background:linear-gradient(135deg,#5d2557,#f5b518)}.dash-chat-bubble{background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:14px;padding:0.55rem 0.85rem;color:var(--dash-text)}
.dash-chat-bubble .dash-chat-meta{display:flex;gap:0.5rem;align-items:baseline;margin-bottom:0.15rem}
.dash-chat-bubble .dash-chat-name{font-weight:700;font-size:0.8rem;color:var(--dash-heading)}
.dash-chat-bubble .dash-chat-time{font-size:0.68rem;color:var(--dash-text-muted)}
.dash-chat-bubble .dash-chat-text{margin:0;font-size:0.9rem;word-break:break-word}.is-me .dash-chat-bubble{background:linear-gradient(135deg,#5d2557,rgb(27.8859728507%,11.0944193062%,26.0868778281%));border-color:transparent;color:#fff}
.is-me .dash-chat-bubble .dash-chat-name,.is-me .dash-chat-bubble .dash-chat-text{color:#fff}
.is-me .dash-chat-bubble .dash-chat-time{color:rgba(255,255,255,0.8)}.dash-chat-empty{margin:auto;text-align:center;color:var(--dash-text-muted);padding:1.5rem}.dash-chat-form{display:flex;gap:0.5rem;align-items:center}
.dash-chat-form .form-control{flex:1;min-height:44px;border-radius:999px !important}
.dash-chat-form .dash-chat-send{flex-shrink:0;width:44px;height:44px;padding:0;border-radius:50% !important;display:inline-flex;align-items:center;justify-content:center;font-size:1rem}[data-bs-theme=dark] .bg-light,[data-bs-theme=dark] .bg-white{background-color:var(--dash-surface-2) !important}
[data-bs-theme=dark] .text-dark{color:var(--dash-text) !important}
[data-bs-theme=dark] .border-light{border-color:var(--dash-border) !important}
[data-bs-theme=dark] .bg-transparent .text-primary{color:var(--dash-accent) !important}
[data-bs-theme=dark] .table .bg-white{background-color:var(--dash-surface-3) !important}
[data-bs-theme=dark] .modal-content,[data-bs-theme=dark] .offcanvas,[data-bs-theme=dark] .dropdown-menu,[data-bs-theme=dark] .toast{background:var(--dash-surface);color:var(--dash-text)}
[data-bs-theme=dark] .offcanvas .bg-light,[data-bs-theme=dark] .dropdown-menu .bg-light,[data-bs-theme=dark] .toast-body.bg-white{background-color:var(--dash-surface-2) !important}
[data-bs-theme=dark] .toast-body{color:var(--dash-text)}
[data-bs-theme=dark] .list-group-item{background:var(--dash-surface);color:var(--dash-text)}
[data-bs-theme=dark] .btn-light{--bs-btn-bg:var(--dash-surface-2);--bs-btn-border-color:var(--dash-border);--bs-btn-color:var(--dash-text);--bs-btn-hover-bg:var(--dash-surface-3);--bs-btn-hover-border-color:var(--dash-border-strong);--bs-btn-hover-color:var(--dash-text)}@media (max-width:991.98px){.dash-sidebar{transform:translateX(-100%);box-shadow:0 0 40px rgba(0,0,0,0.25)}.dash-content{margin-left:0 !important}html.dash-mobile-open .dash-sidebar{transform:translateX(0);width:264px}html.dash-mobile-open .dash-backdrop{opacity:1;visibility:visible}html.dash-mobile-open .dash-nav-title,html.dash-mobile-open .dash-nav-link span,html.dash-mobile-open .dash-nav-link .dash-pill{display:revert}html.dash-mobile-open .dash-nav-link{justify-content:flex-start}html.dash-collapsed .dash-content{margin-left:0 !important}.dash-main{padding:1.1rem}.dash-topbar{padding:0 1.1rem;gap:0.5rem}.dash-topbar .dash-topbar-title{font-size:1.05rem}}
@media (max-width:575.98px){.dash-page-header .dash-page-title{font-size:1.25rem}.dash-card{padding:1.1rem}}
[data-bs-theme=dark] .mobile-bottom-nav{background:var(--dash-surface);border-top-color:var(--dash-border);box-shadow:0 -2px 10px rgba(0,0,0,0.25)}
[data-bs-theme=dark] .mobile-bottom-nav .mobile-nav-item{color:var(--dash-text-muted)}
[data-bs-theme=dark] .mobile-bottom-nav .mobile-nav-item.active{color:var(--dash-accent)}
[data-bs-theme=dark] .mobile-bottom-nav .mobile-nav-item:hover{color:var(--dash-accent)}