/* TradeInvoice V9 — Green & Ivory design system */
:root{
 --v9-forest:#0c3b32;
 --v9-forest-deep:#082e28;
 --v9-green:#176b55;
 --v9-sage:#dcebe1;
 --v9-sage-strong:#6a9d83;
 --v9-ivory:#f7f4ec;
 --v9-paper:#fffefa;
 --v9-ink:#1d2925;
 --v9-muted:#738079;
 --v9-line:#e7e4da;
 --v9-coral:#e8754d;
 --v9-coral-deep:#d75e39;
 --v9-amber:#f2b75f;
 --v9-shadow:0 8px 22px rgba(24,49,39,.065);
}
html,body{width:100%;max-width:100%;margin:0;min-height:100%;overflow-x:hidden}
body{background:var(--v9-ivory)!important;color:var(--v9-ink)!important;font-family:Inter,"Segoe UI",system-ui,-apple-system,sans-serif!important;font-size:14px}
a{color:var(--v9-green);text-decoration:none}
a:hover{color:var(--v9-coral-deep)}
h1,h2,h3,h4,h5{color:var(--v9-ink)!important;font-weight:750;letter-spacing:-.025em}
h1{font-size:clamp(1.55rem,2vw,2.15rem)}
h2{font-size:1.55rem}
h3{font-size:1.05rem}
.text-secondary,.text-muted{color:var(--v9-muted)!important}
.container,.container-fluid{max-width:none!important;box-sizing:border-box}
.global-header{
 position:sticky;top:0;z-index:1050;box-sizing:border-box;
 display:flex;align-items:center;justify-content:space-between;gap:22px;
 width:100%;height:68px;min-height:68px;padding:0 26px;
 background:rgba(255,254,250,.97);border-bottom:1px solid var(--v9-line);
 box-shadow:0 3px 16px rgba(16,48,37,.045);backdrop-filter:blur(12px)
}
.global-brand{display:flex;align-items:center;gap:14px;min-width:0;color:var(--v9-ink);text-decoration:none;white-space:nowrap}
.global-brand:hover{color:var(--v9-ink)}
.global-brand img{display:block;width:250px;height:64px;max-height:64px;object-fit:contain}
.brand-divider{height:32px;width:1px;background:#d8ddd5;flex:0 0 1px}
.brand-descriptor{font-size:11px;letter-spacing:.055em;font-weight:800;color:#3b4b43}
.global-header-right{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0;flex:1}
.business-chip{display:flex;align-items:center;gap:9px;max-width:280px;min-width:160px;padding:9px 13px;border:1px solid #cbded0;border-radius:10px;background:#eef5ee;color:#263e33}
.business-chip-icon{display:grid;place-items:center;width:23px;height:23px;border-radius:6px;background:#d8eadd;color:var(--v9-green);font-size:14px}
.business-chip-name{font-size:12px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.global-search{display:flex;align-items:center;gap:7px;max-width:360px;min-width:180px;flex:1;height:42px;padding:0 12px;border:1px solid #deded5;border-radius:10px;background:#fff}
.search-glyph{color:#63756b;font-size:23px;line-height:1}
.global-search input{width:100%;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;font-size:12px;color:var(--v9-ink)}
.global-search input::placeholder{color:#8c9790}
.global-search button{border:0;background:transparent;color:var(--v9-green);font-size:11px;font-weight:750;padding:5px 3px}
.header-notification{display:grid;place-items:center;position:relative;width:40px;height:40px;border-radius:10px;border:1px solid transparent;color:#34483d;font-size:22px}
.header-notification:hover{background:#f0f4ed;color:var(--v9-green)}

.header-user{display:flex;align-items:center;gap:9px;padding-left:12px;border-left:1px solid var(--v9-line);min-width:0}
.header-avatar{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:var(--v9-green);color:#fff;font-weight:800;font-size:13px}
.header-user-meta{display:flex;flex-direction:column;gap:2px;min-width:0;max-width:175px}
.header-user-meta b{font-size:11px;color:#26372f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-user-meta small{font-size:10px;color:#8a958d}
.header-user-menu{font-size:19px;color:#68796e;padding:3px}
.sidebar-toggle{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid #d9e3da;border-radius:10px;background:#f5f8f3;color:var(--v9-green);font-size:19px;cursor:pointer}
.sidebar-toggle:hover{background:#e8f1e8}
.app-sidebar{
 position:fixed!important;left:0!important;top:68px!important;bottom:0!important;
 display:block!important;width:258px!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;
 padding:18px 13px 26px!important;background:linear-gradient(180deg,var(--v9-forest-deep),var(--v9-forest) 72%,#104d3f)!important;
 border:0!important;box-shadow:5px 0 22px rgba(9,43,34,.11)!important;z-index:1030!important
}
.sidebar-nav{display:block!important;padding:0!important}
.sidebar-section{
 display:flex!important;align-items:center!important;gap:10px!important;
 margin:19px 7px 8px!important;padding:0!important;
 color:#b9d1c4!important;font-size:10px!important;font-weight:850!important;letter-spacing:.12em!important;
 background:none!important;border:0!important
}
.sidebar-section:after{content:"";height:1px;flex:1;background:rgba(205,229,213,.24)}
.sidebar-section:first-child{margin-top:4px!important}
.sidebar-nav .nav-link{
 display:flex!important;align-items:center!important;gap:11px!important;
 min-height:42px!important;margin:3px 0!important;padding:8px 11px!important;
 border-radius:10px!important;border:1px solid transparent!important;
 color:#e6f0e9!important;font-size:13px!important;font-weight:600!important;
 transition:background .16s ease,color .16s ease,transform .16s ease!important;
}
.sidebar-nav .nav-link span{
 display:grid!important;place-items:center!important;
 width:27px!important;height:27px!important;min-width:27px!important;
 border-radius:8px!important;background:rgba(225,241,230,.12)!important;
 color:#d8eadc!important;font-size:15px!important;line-height:1!important;
}
.sidebar-nav .nav-link b{font-weight:650!important}
.sidebar-nav .nav-link:hover{background:rgba(225,241,230,.12)!important;color:#fff!important;transform:translateX(2px)}
.sidebar-nav .nav-link.active{
 position:relative!important;background:#5d927b!important;color:#fff!important;
 border-color:rgba(255,255,255,.12)!important;box-shadow:0 4px 14px rgba(0,0,0,.12)!important
}
.sidebar-nav .nav-link.active:before{content:"";position:absolute;left:-1px;top:7px;bottom:7px;width:4px;border-radius:0 4px 4px 0;background:var(--v9-coral)}
.sidebar-nav .nav-link.active span{background:rgba(255,255,255,.2)!important;color:white!important}
.sidebar-nav .logout-link{margin-top:10px!important;color:#f6d9cf!important}
.sidebar-backdrop{display:none}
.app-main{display:block!important;margin-left:258px!important;width:calc(100% - 258px)!important;min-width:0!important;min-height:calc(100vh - 68px)!important;background:var(--v9-ivory)!important}
.app-page-container{width:100%!important;max-width:none!important;padding:22px 28px 38px!important}
.ad-slot{
 display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;
 box-sizing:border-box!important;width:100%!important;min-height:62px!important;
 margin:0 0 22px!important;padding:12px 18px!important;
 border:1px dashed #d8a17c!important;border-radius:10px!important;
 background:linear-gradient(90deg,#fff9f1,#fff5e9)!important;
 color:#91502d!important;box-shadow:none!important;text-align:center!important
}
.ad-slot:before{content:"◁";font-size:18px;color:#bd6937}
.ad-slot .ad-label{font-size:10px!important;font-weight:850!important;letter-spacing:.1em!important;color:#96562f!important}
.ad-slot .ad-copy{font-size:12px!important;color:#986a4c!important}
.card,.panel-card{
 border:1px solid var(--v9-line)!important;border-radius:16px!important;background:var(--v9-paper)!important;
 box-shadow:var(--v9-shadow)!important
}
.card{transition:box-shadow .18s ease,transform .18s ease}
.card:hover{box-shadow:0 11px 26px rgba(24,49,39,.09)!important}
.card-header{background:#f5f7f0!important;border-color:var(--v9-line)!important;color:#35483d!important}
.btn{border-radius:9px!important;font-weight:700!important;transition:filter .16s ease,transform .16s ease!important}
.btn:hover{transform:translateY(-1px)}
.btn-primary,.btn-coral{background:var(--v9-coral)!important;border-color:var(--v9-coral)!important;color:#fff!important;box-shadow:0 4px 12px rgba(216,105,69,.18)!important}
.btn-primary:hover,.btn-coral:hover{background:var(--v9-coral-deep)!important;border-color:var(--v9-coral-deep)!important}
.btn-success{background:var(--v9-green)!important;border-color:var(--v9-green)!important;color:white!important}
.btn-outline-primary{color:var(--v9-green)!important;border-color:#afc8b7!important}
.btn-outline-primary:hover{background:#e9f2eb!important}
.form-control,.form-select{border:1px solid #d9ded5!important;border-radius:9px!important;min-height:40px!important;background:#fff!important;color:#26352d!important}
.form-control:focus,.form-select:focus{border-color:#7eaa91!important;box-shadow:0 0 0 3px rgba(48,123,88,.13)!important}
.form-label{font-size:12px!important;font-weight:700!important;color:#526157!important}
.table-responsive{width:100%!important;border-radius:10px!important}
.table{width:100%!important;margin-bottom:0!important;background:transparent!important;border-color:#e8e9e1!important}
.table thead th{background:#dce9df!important;color:#31463a!important;font-size:11px!important;font-weight:800!important;letter-spacing:.035em!important;text-transform:uppercase!important;border-bottom:1px solid #d2e0d5!important;white-space:nowrap!important}
.table td,.table th{vertical-align:middle!important;padding:12px 13px!important}
.table tbody tr:hover{background:#f6f8f2!important}
.alert{border:0!important;border-radius:12px!important}
.badge{border-radius:7px!important}
.pagination .page-link{color:var(--v9-green)!important}
.pagination .active .page-link{background:var(--v9-green)!important;border-color:var(--v9-green)!important;color:#fff!important}
.metric{color:var(--v9-green)!important;font-weight:850!important}
.invoice-paper{background:#fff!important;border-radius:12px!important}
.page-title-block{margin:4px 0 18px}
.page-title-block .eyebrow,.dashboard-intro .eyebrow{margin:0 0 5px;color:var(--v9-green);font-size:10px;font-weight:850;letter-spacing:.12em}
.page-title-block h1{margin:0 0 5px}
.page-title-block p{margin-bottom:0}
.dashboard-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:2px 0 20px}
.dashboard-intro h1{font-size:clamp(1.8rem,2.5vw,2.35rem);margin:0 0 1px;font-weight:850}
.dashboard-intro h2{font-size:1.2rem;color:var(--v9-green)!important;margin:0 0 4px;font-weight:750}
.dashboard-intro .intro-copy{margin:0;color:#637268;font-size:13px}
.period-pill{display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #dfe4d9;border-radius:10px;background:#fffdfa;color:#43564a;font-size:12px;font-weight:700;white-space:nowrap}
.metric-tile{display:flex;align-items:flex-start;gap:13px;height:100%;min-height:112px;padding:18px 17px;border:1px solid var(--v9-line);border-radius:16px;background:var(--v9-paper);box-shadow:var(--v9-shadow)}
.metric-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:12px;font-size:20px;font-weight:850}
.icon-green{background:#e1f0e3;color:#176b55}.icon-teal{background:#e0f1ec;color:#157c69}.icon-amber{background:#fff0d7;color:#c47b21}.icon-coral{background:#ffebe3;color:#d75e39}
.metric-tile small{display:block;color:#69766e;font-size:11px;font-weight:650;margin:2px 0 3px}
.metric-tile strong{display:block;color:#202d26;font-size:23px;font-weight:850;letter-spacing:-.035em;line-height:1.25}
.metric-note{display:block;margin-top:3px;color:#91a096;font-size:10px}
.panel-card{height:100%;padding:19px 20px}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}
.panel-heading>div{display:flex;align-items:center;gap:10px}
.panel-heading h3{margin:0;font-size:17px;font-weight:800}
.panel-symbol{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;font-weight:850;font-size:16px}
.green-symbol{background:#e1f0e5;color:#247354}.teal-symbol{background:#e0f1ec;color:#167c69}.coral-symbol{background:#ffede5;color:#d66c45}
.panel-period{font-size:10px;color:#8a978e;font-weight:700}
.sales-chart-wrap{display:flex;align-items:stretch;gap:4px;min-height:190px}
.chart-y-labels{display:flex;flex-direction:column;justify-content:space-between;padding:35px 0 30px;color:#89968d;font-size:9px;white-space:nowrap}
.sales-chart{display:block;width:100%;height:190px;overflow:visible}
.chart-grid{stroke:#d9dfd6;stroke-width:1;stroke-dasharray:4 4}
.chart-line{fill:none;stroke:#168365;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.chart-point{fill:#fffefa;stroke:#168365;stroke-width:2.5}
.chart-month{fill:#66756b;font-size:10px}
.chart-footnote{margin:0;color:#96a198;font-size:10px}
.quick-actions-panel{display:flex;flex-direction:column;gap:10px}
.quick-actions-panel .panel-heading{margin-bottom:5px}
.quick-action{display:flex;align-items:center;gap:12px;min-height:48px;padding:11px 14px;border-radius:10px;font-size:13px;font-weight:750;text-decoration:none}
.quick-action span{font-size:18px}
.quick-action b{margin-left:auto;font-size:17px}
.primary-action{background:var(--v9-coral);color:#fff}
.primary-action:hover{background:var(--v9-coral-deep);color:#fff}
.soft-action{background:#e1eee4;color:#183d30}
.soft-action:hover{background:#d4e7da;color:#12392d}
.recent-panel{padding:18px 20px}
.recent-panel .panel-heading{margin-bottom:13px}
.view-all-link{font-size:11px;font-weight:750;color:var(--v9-green)}
.recent-invoices-table{font-size:12px}
.recent-invoices-table thead th{background:#dce9df!important}
.invoice-number{color:#176b55;font-weight:750}
.amount-cell{font-weight:800;color:#26372e}
.status-pill{display:inline-block;padding:5px 10px;border-radius:20px;font-size:10px;font-weight:800}
.status-issued,.status-paid{background:#dff0df;color:#246b3c}
.status-draft{background:#fff0d7;color:#9b641e}
.status-cancelled,.status-overdue{background:#ffe5dc;color:#b54e31}
.dashboard-empty,.empty-state{padding:26px 15px;text-align:center;color:#87958b}
.dashboard-empty>span{display:block;color:#8eb19a;font-size:24px;margin-bottom:5px}
.dashboard-empty strong,.empty-state strong{display:block;color:#405449;font-size:13px;margin-bottom:4px}
.dashboard-empty small{display:block;color:#87958b;font-size:11px}
.search-page-form{display:flex;gap:10px;padding:14px;border:1px solid var(--v9-line);background:#fffefa;border-radius:14px;box-shadow:var(--v9-shadow)}
.search-page-form input{flex:1}
.search-summary{color:#758178;font-size:13px}
.search-result-card{padding:17px 18px}
.search-result-list{display:flex;flex-direction:column}
.search-result-row{display:flex;align-items:center;gap:12px;padding:12px 2px;border-bottom:1px solid #edf0e9;color:#293a30}
.search-result-row:last-child{border-bottom:0}
.search-result-row>span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.search-result-row b{font-size:12px}
.search-result-row small{font-size:10px;color:#87958b}
.result-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#e5f0e7;color:#247354}
.result-arrow{margin-left:auto;color:#91a198}
.result-price{margin-left:auto;font-size:11px}
.result-count{padding:4px 8px;border-radius:20px;background:#e7f0e8;color:#35634a;font-size:10px;font-weight:800}
.search-empty{padding:24px;color:#728077}
.public-brand{display:flex;align-items:center;justify-content:center;gap:15px;height:75px;padding:10px 20px;background:var(--v9-paper);border-bottom:1px solid var(--v9-line)}
.public-brand a{display:flex;align-items:center;gap:14px;color:var(--v9-ink)}
.public-brand img{width:225px;height:62px;object-fit:contain}
.public-brand span{padding-left:14px;border-left:1px solid var(--v9-line);font-size:10px;font-weight:850;letter-spacing:.06em;color:#536157}
.public-main{margin:0!important;width:100%!important}
.public-main .app-page-container{max-width:1180px!important;margin:auto!important}
@media(max-width:1250px){
 .global-header{gap:12px;padding:0 18px}
 .global-brand img{width:215px}
 .brand-descriptor{font-size:9px}
 .business-chip{max-width:220px;min-width:125px}
 .global-search{max-width:290px;min-width:140px}
}
@media(max-width:1000px){
 .brand-descriptor,.brand-divider{display:none}
 .business-chip{display:none}
 .global-search{max-width:none;min-width:100px}
}
@media(max-width:900px){
 .global-header{height:66px;min-height:66px;padding:0 13px}
 .global-brand img{width:190px;height:54px}
 .app-sidebar{top:66px!important;left:0!important;width:270px!important;transform:translateX(-105%);transition:transform .2s ease;box-shadow:8px 0 30px rgba(0,0,0,.16)!important}
 body.sidebar-open .app-sidebar{transform:translateX(0)}
 .sidebar-backdrop{display:block;position:fixed;inset:66px 0 0;background:rgba(6,24,18,.42);z-index:1025;opacity:0;visibility:hidden;transition:opacity .2s ease}
 body.sidebar-open .sidebar-backdrop{opacity:1;visibility:visible}
 .app-main{margin-left:0!important;width:100%!important;min-height:calc(100vh - 66px)!important}
 .global-header-right{gap:7px}
 .header-user-meta,.header-user-menu{display:none}
 .header-user{padding-left:6px}
 .header-avatar{width:33px;height:33px;flex-basis:33px}
 .global-search{height:37px;min-width:90px;max-width:210px}
 .global-search button{display:none}
 .app-page-container{padding:17px 16px 30px!important}
}
@media(max-width:560px){
 .global-header{gap:6px;padding:0 9px}
 .global-brand img{width:155px;height:46px}
 .global-header-right{gap:5px}
 .global-search{min-width:100px;width:110px;max-width:110px;flex:0 0 110px;padding:0 8px;justify-content:flex-start}
 .global-search input{position:static;display:block;width:100%;height:auto;padding:0;border:0!important;border-radius:0;background:transparent!important;font-size:10px}
 .global-search .search-glyph{font-size:20px}
 .header-notification{width:32px;height:34px;font-size:19px}
 .sidebar-toggle{width:34px;height:34px;flex-basis:34px}
 .app-page-container{padding:14px 11px 24px!important}
 .dashboard-intro{align-items:flex-start;flex-direction:column}
 .period-pill{align-self:flex-start}
 .metric-tile{min-height:95px;padding:14px}
 .metric-tile strong{font-size:20px}
 .panel-card{padding:15px 13px}
 .panel-heading h3{font-size:15px}
 .sales-chart-wrap{min-height:160px}
 .sales-chart{height:160px}
 .chart-y-labels{font-size:8px}
 .recent-invoices-table{min-width:640px}
}
@media print{
 .global-header,.app-sidebar,.sidebar-backdrop,.ad-slot{display:none!important}
 .app-main{margin:0!important;width:100%!important;background:#fff!important}
 .app-page-container{padding:0!important}
 body{background:#fff!important}
}

/* Desktop compact navigation state */
body.sidebar-collapsed .app-sidebar{width:78px!important;padding-left:9px!important;padding-right:9px!important}
body.sidebar-collapsed .app-main{margin-left:78px!important;width:calc(100% - 78px)!important}
body.sidebar-collapsed .sidebar-section{font-size:0!important;gap:0!important;margin:14px 4px 8px!important}
body.sidebar-collapsed .sidebar-section:after{background:rgba(205,229,213,.24)}
body.sidebar-collapsed .sidebar-nav .nav-link{justify-content:center!important;gap:0!important;padding:8px 4px!important}
body.sidebar-collapsed .sidebar-nav .nav-link b{display:none!important}
body.sidebar-collapsed .sidebar-nav .nav-link span{width:34px!important;height:34px!important;min-width:34px!important;font-size:17px!important}
@media(max-width:900px){
 body.sidebar-collapsed .app-sidebar{width:270px!important;padding:18px 13px 26px!important}
 body.sidebar-collapsed .app-main{margin-left:0!important;width:100%!important}
 body.sidebar-collapsed .sidebar-section{font-size:10px!important;gap:10px!important;margin:19px 7px 8px!important}
 body.sidebar-collapsed .sidebar-nav .nav-link{justify-content:flex-start!important;gap:11px!important;padding:8px 11px!important}
 body.sidebar-collapsed .sidebar-nav .nav-link b{display:block!important}
 body.sidebar-collapsed .sidebar-nav .nav-link span{width:27px!important;height:27px!important;min-width:27px!important}
}


/* V9.1 dashboard composition refinements to match the approved reference */
html body .app-page-container > .dashboard-ad{
  min-height:58px!important;
  margin:0 0 19px!important;
  border-color:#e3a57d!important;
  background:linear-gradient(90deg,#fff9f2,#fff4e9)!important;
}
html body .dashboard-ad:before{content:none!important;display:none!important}
html body .dashboard-ad .ad-icon{font-size:18px!important;color:#b95f2f!important}
html body .dashboard-ad .ad-separator{color:#c58c68!important;font-size:17px!important}
html body .dashboard-intro{align-items:flex-end!important;margin:1px 0 16px!important}
html body .dashboard-intro .eyebrow{display:none!important}
html body .dashboard-intro h1{font-size:clamp(1.75rem,2.3vw,2.15rem)!important;margin:0 0 2px!important}
html body .dashboard-intro h2{font-size:1.22rem!important;margin:0 0 3px!important;color:var(--v9-green)!important}
html body .dashboard-intro .intro-copy{font-size:13px!important}
html body .period-pill{padding:9px 13px!important;min-width:132px!important;justify-content:center!important;background:#fffefa!important}
html body .dashboard-metrics{margin-bottom:17px!important}
html body .metric-tile{min-height:102px!important;padding:15px!important;gap:11px!important}
html body .metric-tile strong{font-size:clamp(18px,1.8vw,23px)!important;white-space:nowrap!important}
html body .metric-icon{width:42px!important;height:42px!important;flex-basis:42px!important}
html body .sales-panel,html body .quick-actions-panel{min-height:242px!important}
html body .sales-chart-wrap{min-height:166px!important}
html body .sales-chart{height:166px!important}
html body .sales-panel{padding:17px 18px 13px!important}
html body .quick-actions-panel{padding:17px 19px!important}
html body .recent-panel{padding:16px 18px!important}
html body .recent-heading{flex-wrap:wrap!important}
html body .recent-table-actions{display:flex!important;align-items:center!important;gap:12px!important;margin-left:auto!important}
html body .recent-table-actions input{width:245px!important;min-height:36px!important;font-size:11px!important}
html body .recent-invoices-table th{padding:10px 12px!important}
html body .recent-invoices-table td{padding:10px 12px!important}
html body .chart-y-labels{min-width:65px!important;padding:31px 0 30px!important;font-size:10px!important}
@media(max-width:900px){
 html body .dashboard-intro{align-items:flex-start!important}
 html body .period-pill{align-self:flex-start!important}
}
@media(max-width:620px){
 html body .recent-table-actions{width:100%!important;margin-left:0!important}
 html body .recent-table-actions input{width:100%!important;flex:1!important}
 html body .dashboard-ad{min-height:54px!important}
 html body .metric-tile strong{font-size:20px!important}
}


/* Reference finishing touches */
.global-search button{display:none!important}
.business-chip{position:relative}
.business-chip:after{content:"⌄";margin-left:6px;color:#5f7568;font-size:16px;font-weight:700}
.ad-slot:before{display:none!important;content:none!important}
.ad-icon{display:inline-block!important;color:#b85e2d!important;font-size:18px!important;line-height:1}
.ad-separator{display:inline-block!important;color:#d1a183!important;margin:0 3px!important;font-weight:400!important}
@media(min-width:901px){
 .app-sidebar{padding-top:22px!important}
 .global-brand img{width:220px!important}
}


/* V9.1.2 — prevent the first sidebar item from sitting under the brand header.
   The header is 68px tall on desktop. Keep the sidebar below it and add
   a deliberate top inset before the Overview label and Dashboard link. */
@media (min-width:901px){
  html body > header.global-header{
    position:sticky!important;
    top:0!important;
    height:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    z-index:1060!important;
  }
  html body > aside#appSidebar.app-sidebar{
    position:fixed!important;
    top:68px!important;
    bottom:0!important;
    height:auto!important;
    padding-top:30px!important;
    overflow-y:auto!important;
    z-index:1030!important;
  }
  html body > aside#appSidebar.app-sidebar > nav.sidebar-nav{
    display:block!important;
    padding-top:4px!important;
    margin-top:0!important;
  }
  html body > aside#appSidebar.app-sidebar > nav.sidebar-nav > .sidebar-section:first-child{
    margin-top:8px!important;
  }
}
@media(max-width:900px){
  html body > aside#appSidebar.app-sidebar{
    top:66px!important;
    padding-top:18px!important;
  }
}


/* V9.1.3 — double-height brand logo; keep action controls at their prior sizes */
@media(min-width:901px){
  html body > header.global-header{
    height:144px!important;
    min-height:144px!important;
    max-height:144px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    align-items:center!important;
  }
  html body .global-brand{
    flex:0 0 auto!important;
    gap:14px!important;
    align-items:center!important;
  }
  html body .global-brand img{
    display:block!important;
    width:390px!important;
    height:128px!important;
    min-height:128px!important;
    max-height:128px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  html body .brand-divider{height:32px!important}
  html body .brand-descriptor{font-size:11px!important}
  /* Do not scale the business selector, search, bell, avatar or menu. */
  html body .global-header-right{align-items:center!important;gap:14px!important}
  html body .business-chip{padding:9px 13px!important;min-height:42px!important}
  html body .global-search{height:42px!important}
  html body .header-notification{width:40px!important;height:40px!important}
  html body .header-avatar{width:36px!important;height:36px!important;flex-basis:36px!important}
  html body .sidebar-toggle{width:38px!important;height:38px!important;flex-basis:38px!important}
  /* Keep sidebar below the enlarged masthead. */
  html body > aside#appSidebar.app-sidebar{
    top:144px!important;
    padding-top:30px!important;
  }
  html body .app-main{
    min-height:calc(100vh - 144px)!important;
  }
}
/* A clean empty 90px Google AdSense reservation on every shared page. */
html body .app-page-container > .google-ad-slot{
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:90px!important;
  min-height:90px!important;
  max-height:90px!important;
  margin:0 0 22px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
html body .google-ad-slot:before,
html body .google-ad-slot:after{display:none!important;content:none!important}
html body .dashboard-ad.google-ad-slot{
  height:90px!important;min-height:90px!important;max-height:90px!important;
  margin:0 0 22px!important;
  background:transparent!important;
  border:0!important;
}
@media(max-width:900px){
  /* Compact mobile masthead remains unchanged; action controls retain their previous size. */
  html body > header.global-header{
    height:66px!important;min-height:66px!important;max-height:66px!important;
  }
  html body .global-brand img{
    width:190px!important;height:54px!important;min-height:0!important;max-height:54px!important;
  }
  html body > aside#appSidebar.app-sidebar{top:66px!important}
  html body .google-ad-slot{
    height:90px!important;min-height:90px!important;max-height:90px!important;
  }
}

@media(min-width:901px){
 html body > header.public-brand{height:144px!important;min-height:144px!important}
 html body > header.public-brand img{width:390px!important;height:128px!important;max-height:128px!important;object-fit:contain!important}
}
@media(max-width:900px){
 html body > header.public-brand{height:66px!important;min-height:66px!important}
 html body > header.public-brand img{width:190px!important;height:54px!important;max-height:54px!important}
}


/* V9.1.4 — profile dropdown, full-height sidebar scroll below masthead */
.header-user-dropdown-wrap{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  padding-left:12px!important;
  border-left:1px solid var(--v9-line)!important;
}
.header-user-trigger{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  color:inherit!important;
  box-shadow:none!important;
  cursor:pointer!important;
  font:inherit!important;
  text-align:left!important;
}
.header-user-trigger:hover .header-user-meta b,
.header-user-trigger:focus-visible .header-user-meta b{
  color:var(--v9-green)!important;
}
.header-user-trigger:focus-visible{
  outline:2px solid #8ab69a!important;
  outline-offset:4px!important;
}
.header-user-trigger .header-user-menu{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:18px!important;
  height:24px!important;
  color:#64766b!important;
  font-size:17px!important;
  transition:transform .16s ease!important;
}
.header-user-trigger[aria-expanded="true"] .header-user-menu{
  transform:rotate(180deg)!important;
}
.header-user-dropdown{
  position:absolute!important;
  top:calc(100% + 13px)!important;
  right:0!important;
  z-index:1200!important;
  width:220px!important;
  padding:7px!important;
  border:1px solid #e2e8df!important;
  border-radius:12px!important;
  background:#fffefa!important;
  box-shadow:0 14px 35px rgba(17,49,35,.16)!important;
}
.header-user-dropdown[hidden]{display:none!important}
.header-user-dropdown a{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  min-height:42px!important;
  padding:9px 11px!important;
  border-radius:8px!important;
  color:#294337!important;
  text-decoration:none!important;
  font-size:12px!important;
}
.header-user-dropdown a span{
  display:grid!important;
  place-items:center!important;
  width:26px!important;
  height:26px!important;
  border-radius:7px!important;
  background:#e9f2ea!important;
  color:#286347!important;
  font-size:14px!important;
}
.header-user-dropdown a b{font-weight:700!important}
.header-user-dropdown a:hover{background:#f0f5ee!important;color:var(--v9-green)!important}
.header-user-dropdown a.profile-logout{border-top:1px solid #edf0e9!important;margin-top:5px!important;padding-top:11px!important;color:#b34e3b!important}
.header-user-dropdown a.profile-logout span{background:#fff0e9!important;color:#c45c43!important}

/* The navigation itself owns its scroll region; the scrollbar begins below
   the 144px header/logo band rather than at the top of the browser window. */
@media(min-width:901px){
  html body > aside#appSidebar.app-sidebar{
    position:fixed!important;
    top:144px!important;
    bottom:0!important;
    height:calc(100vh - 144px)!important;
    max-height:calc(100vh - 144px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    padding-top:30px!important;
  }
  html body > aside#appSidebar.app-sidebar > nav.sidebar-nav{
    min-height:100%!important;
    overflow:visible!important;
  }
}
@media(max-width:900px){
  html body > aside#appSidebar.app-sidebar{
    top:66px!important;
    bottom:0!important;
    height:calc(100vh - 66px)!important;
    max-height:calc(100vh - 66px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  .header-user-dropdown{
    top:calc(100% + 10px)!important;
    right:-2px!important;
    width:205px!important;
  }
}


/* V9.1.5 — working dashboard period picker */
.period-picker-wrap{position:relative;display:inline-flex;align-items:center;z-index:20}
button.period-pill{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 gap:9px!important;min-height:40px!important;min-width:132px!important;
 margin:0!important;padding:9px 13px!important;
 border:1px solid #dfe4d9!important;border-radius:10px!important;
 background:#fffdfa!important;color:#43564a!important;
 font:inherit!important;font-size:12px!important;font-weight:750!important;
 cursor:pointer!important;box-shadow:none!important;
}
button.period-pill:hover,button.period-pill[aria-expanded="true"]{border-color:#9abda5!important;background:#f5f8f1!important}
.period-calendar-icon{font-size:14px;color:#416e55}
.period-chevron{font-size:15px;color:#6e8173;transition:transform .15s ease}
.period-pill[aria-expanded="true"] .period-chevron{transform:rotate(180deg)}
.period-picker-menu{
 position:absolute!important;top:calc(100% + 9px)!important;right:0!important;
 z-index:1100!important;width:286px!important;padding:9px!important;
 border:1px solid #e1e8dd!important;border-radius:13px!important;
 background:#fffefa!important;box-shadow:0 16px 36px rgba(20,49,34,.17)!important;
}
.period-picker-menu[hidden]{display:none!important}
.period-menu-title,.period-custom-title{
 padding:8px 9px 7px!important;color:#88958b!important;
 font-size:10px!important;font-weight:850!important;letter-spacing:.09em!important;text-transform:uppercase!important;
}
.period-option{
 display:flex!important;align-items:center!important;width:100%!important;
 min-height:37px!important;margin:2px 0!important;padding:8px 10px!important;
 border:0!important;border-radius:8px!important;background:transparent!important;
 color:#2d4336!important;text-align:left!important;font-size:12px!important;font-weight:650!important;
 cursor:pointer!important;box-shadow:none!important;
}
.period-option:hover,.period-option.selected{background:#eaf2e9!important;color:#176b55!important}
.period-custom-title{margin-top:7px!important;border-top:1px solid #edf0e9!important;padding-top:13px!important}
.period-custom-form{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:2px 5px 5px!important}
.period-custom-form label{display:flex!important;flex-direction:column!important;gap:5px!important;color:#65756a!important;font-size:10px!important;font-weight:750!important}
.period-custom-form input[type="date"]{
 width:100%!important;min-width:0!important;height:35px!important;padding:5px 6px!important;
 border:1px solid #dfe5dc!important;border-radius:7px!important;background:#fff!important;color:#32483a!important;font-size:10px!important;
}
.period-apply-button{
 grid-column:1/-1!important;min-height:36px!important;margin-top:3px!important;
 border:0!important;border-radius:8px!important;background:#176b55!important;color:#fff!important;
 font-size:11px!important;font-weight:800!important;cursor:pointer!important;
}
.period-apply-button:hover{background:#0c3b32!important}

/* V9.1.5 — right-side account drawer starts below the global banner,
   aligned with the left navigation start. */
.profile-drawer-backdrop{
 position:fixed!important;left:0!important;right:0!important;top:144px!important;bottom:0!important;
 z-index:1060!important;background:rgba(10,35,27,.28)!important;
}
.profile-drawer-backdrop[hidden]{display:none!important}
.header-user-dropdown{
 position:fixed!important;top:144px!important;right:0!important;bottom:0!important;
 width:310px!important;max-width:min(88vw,340px)!important;
 height:calc(100vh - 144px)!important;max-height:calc(100vh - 144px)!important;
 overflow-y:auto!important;overscroll-behavior:contain!important;
 padding:18px 15px!important;border:1px solid #dfe8dd!important;
 border-right:0!important;border-bottom:0!important;border-radius:16px 0 0 0!important;
 background:#fffefa!important;box-shadow:-12px 8px 30px rgba(17,49,35,.16)!important;
 transform:translateX(105%)!important;transition:transform .22s ease!important;
 z-index:1070!important;
}
.header-user-dropdown[hidden]{display:none!important}
.header-user-dropdown.is-open{display:block!important;transform:translateX(0)!important}
.profile-drawer-head{
 display:flex!important;flex-direction:column!important;gap:5px!important;
 margin:0 0 17px!important;padding:5px 8px 17px!important;
 border-bottom:1px solid #e9eee6!important;
}
.profile-drawer-head b{color:#203d2e!important;font-size:16px!important;font-weight:850!important}
.profile-drawer-head small{color:#819087!important;font-size:11px!important;overflow-wrap:anywhere}
.header-user-dropdown a{
 display:flex!important;align-items:center!important;gap:11px!important;
 min-height:46px!important;margin:4px 0!important;padding:10px 11px!important;
 border-radius:9px!important;color:#294337!important;text-decoration:none!important;font-size:12px!important;
}
.header-user-dropdown a:hover{background:#edf4ec!important;color:#176b55!important}
.header-user-dropdown a.profile-logout{margin-top:13px!important;padding-top:10px!important;border-top:1px solid #edf0e9!important;color:#b34e3b!important}
@media(min-width:901px){
 html body > aside#appSidebar.app-sidebar{
   top:144px!important;height:calc(100vh - 144px)!important;max-height:calc(100vh - 144px)!important;
 }
}
@media(max-width:900px){
 .profile-drawer-backdrop{top:66px!important}
 .header-user-dropdown{
   top:66px!important;right:0!important;bottom:0!important;
   width:285px!important;max-width:88vw!important;
   height:calc(100vh - 66px)!important;max-height:calc(100vh - 66px)!important;
   border-radius:14px 0 0 0!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .header-user-dropdown{transition:none!important}
 .period-chevron{transition:none!important}
}


/* V9.1.6 — profile menu layer is a sibling of the header, not nested inside it.
   That lets the menu sit above the backdrop and keeps the links clickable. */
html body > .profile-drawer-backdrop{
  position:fixed!important;
  left:0!important;right:0!important;top:144px!important;bottom:0!important;
  z-index:1060!important;
  background:rgba(10,35,27,.22)!important;
  opacity:1!important;
  visibility:visible!important;
}
html body > .profile-drawer-backdrop[hidden]{display:none!important}
html body > aside#profileDropdown.header-user-dropdown{
  position:fixed!important;
  top:144px!important;right:14px!important;bottom:auto!important;left:auto!important;
  width:320px!important;max-width:min(88vw,360px)!important;
  height:auto!important;min-height:0!important;
  max-height:min(420px,calc(100vh - 164px))!important;
  overflow-x:hidden!important;overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  padding:14px!important;
  border:1px solid #dfe8dd!important;
  border-radius:14px!important;
  background:#fffefa!important;
  box-shadow:0 16px 38px rgba(17,49,35,.22)!important;
  transform:translateY(-8px)!important;
  transition:opacity .16s ease,transform .16s ease!important;
  opacity:0!important;
  z-index:1080!important;
}
html body > aside#profileDropdown.header-user-dropdown[hidden]{display:none!important}
html body > aside#profileDropdown.header-user-dropdown.is-open{
  display:block!important;
  transform:translateY(0)!important;
  opacity:1!important;
}
html body.profile-drawer-open{
  overflow:hidden!important;
}
.profile-drawer-head{
  margin-bottom:10px!important;
  padding:7px 8px 12px!important;
}
.profile-drawer-head b{font-size:14px!important}
.profile-drawer-head small{font-size:10px!important}
html body > aside#profileDropdown.header-user-dropdown a{
  min-height:39px!important;
  margin:2px 0!important;
  padding:8px 10px!important;
  border-radius:8px!important;
  font-size:12px!important;
}
html body > aside#profileDropdown.header-user-dropdown a span{
  width:25px!important;height:25px!important;flex:0 0 25px!important;
  border-radius:7px!important;font-size:13px!important;
}
html body > aside#profileDropdown.header-user-dropdown a.profile-logout{
  margin-top:7px!important;padding-top:8px!important;
}
@media(max-width:900px){
  html body > .profile-drawer-backdrop{
    top:66px!important;
  }
  html body > aside#profileDropdown.header-user-dropdown{
    top:66px!important;right:8px!important;
    width:300px!important;max-width:calc(100vw - 16px)!important;
    max-height:min(420px,calc(100vh - 78px))!important;
    border-radius:0 0 14px 14px!important;
  }
}

/* Admin date controls, real-data trend charts and management shortcuts */
.admin-intro{
 display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
 margin:2px 0 17px;
}
.admin-intro .eyebrow{margin:0 0 5px;color:var(--v9-green);font-size:10px;font-weight:850;letter-spacing:.12em}
.admin-intro h1{margin:0 0 5px;font-size:clamp(1.65rem,2.2vw,2.1rem)}
.admin-intro p{margin:0;color:var(--v9-muted);font-size:12px}
.admin-date-badge{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #dfe4d9;border-radius:9px;background:#fffefa;color:#43564a;font-size:11px;font-weight:750;white-space:nowrap}
.admin-filter-card{margin-bottom:17px;padding:14px 16px;border:1px solid var(--v9-line);border-radius:13px;background:#fffefa;box-shadow:var(--v9-shadow)}
.admin-date-filter{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}
.admin-date-filter label{display:flex;flex-direction:column;gap:5px;color:#68766d;font-size:10px;font-weight:800}
.admin-date-filter select,.admin-date-filter input{height:37px;min-width:155px;padding:7px 10px;border:1px solid #d9ded5;border-radius:8px;background:#fff;color:#2c4034;font-size:11px}
.admin-date-filter input{min-width:145px}
.admin-custom-date[style*="none"]{display:none!important}
.admin-filter-button{height:37px;padding:0 16px;border:0;border-radius:8px;background:var(--v9-green);color:#fff;font-size:11px;font-weight:800;cursor:pointer}
.admin-filter-button:hover{background:var(--v9-forest)}
.admin-metric-card,.admin-extra-card{height:100%;min-height:86px;padding:14px 15px;border:1px solid var(--v9-line);border-radius:13px;background:#fffefa;box-shadow:var(--v9-shadow)}
.admin-metric-card small,.admin-extra-card small{display:block;color:#748178;font-size:10px;font-weight:700;margin-bottom:6px}
.admin-metric-card strong,.admin-extra-card strong{display:block;color:var(--v9-green);font-size:22px;font-weight:850;line-height:1.2}
.admin-extra-card strong{font-size:19px}
.admin-chart-card{min-height:290px;padding:17px 18px}
.admin-chart-card .panel-heading{margin-bottom:8px}
.admin-chart-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 4px;color:#87948a;font-size:10px}
.admin-chart-meta strong{color:#33483a;font-size:13px}
.admin-svg-wrap{display:flex;align-items:stretch;gap:8px}
.admin-axis{display:flex;flex-direction:column;justify-content:space-between;padding:24px 0 27px;color:#87948a;font-size:9px;white-space:nowrap}
.admin-svg-wrap svg{display:block;width:100%;height:190px;overflow:visible}
.admin-grid{stroke:#dce3d9;stroke-width:1;stroke-dasharray:4 4}
.admin-line{fill:none;stroke:#247957;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.admin-line.payments-line{stroke:var(--v9-coral)}
.admin-point{fill:#fffefa;stroke:#247957;stroke-width:2.5}
.admin-point.payment-point{stroke:var(--v9-coral)}
.admin-x-label{fill:#718078;font-size:10px}
.admin-empty-chart{fill:#8a988e;font-size:12px}
.admin-actions-card{padding:17px 18px}
.admin-action-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.admin-action-grid>a{position:relative;display:flex;flex-direction:column;gap:6px;min-height:130px;padding:13px;border:1px solid #e5e9df;border-radius:11px;background:#fffefa;color:#2d4336;text-decoration:none}
.admin-action-grid>a:hover{border-color:#a8c5ae;background:#f5f9f3;transform:translateY(-1px)}
.admin-action-grid>a>span{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#e5f0e5;color:#246b50;font-size:15px}
.admin-action-grid>a>b{font-size:11px;font-weight:800}
.admin-action-grid>a>small{color:#869389;font-size:9px;line-height:1.35}
.admin-action-grid>a>em{position:absolute;right:12px;top:13px;color:var(--v9-coral);font-style:normal;font-size:17px}
@media(max-width:1050px){.admin-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){
 .admin-intro{align-items:flex-start;flex-direction:column}
 .admin-date-filter{align-items:stretch}
 .admin-date-filter label{flex:1 1 45%}
 .admin-date-filter select,.admin-date-filter input{width:100%;min-width:0}
 .admin-filter-button{width:100%}
 .admin-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .admin-chart-card{padding:14px 12px}
 .admin-svg-wrap{gap:4px}
 .admin-axis{font-size:8px}
}


/* V9.1.6 — bounded right profile panel and reliable menu interaction */
html body > aside#profileDropdown.header-user-dropdown{
  max-height:min(380px,calc(100vh - 164px))!important;
  height:auto!important;
  bottom:auto!important;
  overscroll-behavior:contain!important;
}
.profile-drawer-title-row{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
}
.profile-drawer-close{
  display:grid!important;place-items:center!important;width:26px!important;height:26px!important;
  padding:0!important;border:0!important;border-radius:7px!important;
  background:#edf3eb!important;color:#496b55!important;font-size:19px!important;line-height:1!important;
  cursor:pointer!important;box-shadow:none!important;
}
.profile-drawer-close:hover{background:#e1ede1!important;color:#0c3b32!important}
.admin-filter-card{position:relative;z-index:1}


/* V9.1.7 — independent scroll panes below the fixed 144px banner */
@media(min-width:901px){
 html,html body[data-authenticated="1"]{
   width:100%!important;height:100%!important;min-height:100%!important;
   overflow:hidden!important;
 }
 body[data-authenticated="1"]{
   position:relative!important;height:100vh!important;min-height:100vh!important;overflow:hidden!important;
 }
 body[data-authenticated="1"] > header.global-header{
   position:fixed!important;left:0!important;right:0!important;top:0!important;
   width:100%!important;height:144px!important;min-height:144px!important;max-height:144px!important;
   z-index:1100!important;
 }
 body[data-authenticated="1"] > aside#appSidebar.app-sidebar{
   position:fixed!important;left:0!important;top:144px!important;bottom:0!important;
   width:258px!important;height:calc(100vh - 144px)!important;max-height:calc(100vh - 144px)!important;
   overflow-y:auto!important;overflow-x:hidden!important;
   overscroll-behavior:contain!important;scrollbar-gutter:stable!important;
   z-index:1030!important;
 }
 body[data-authenticated="1"] > main.app-main{
   position:fixed!important;top:144px!important;left:258px!important;right:0!important;bottom:0!important;
   width:auto!important;height:auto!important;min-height:0!important;margin:0!important;
   overflow-y:auto!important;overflow-x:hidden!important;
   overscroll-behavior:contain!important;scrollbar-gutter:stable!important;
   background:var(--v9-ivory)!important;z-index:1!important;
 }
 body[data-authenticated="1"] > main.app-main > .app-page-container{
   min-height:100%!important;width:100%!important;max-width:none!important;
   padding:22px 28px 38px!important;
 }
 body[data-authenticated="1"].sidebar-collapsed > aside#appSidebar.app-sidebar{width:78px!important}
 body[data-authenticated="1"].sidebar-collapsed > main.app-main{left:78px!important}
 body[data-authenticated="1"] > .profile-drawer-backdrop{
   position:fixed!important;left:0!important;right:0!important;top:144px!important;bottom:0!important;z-index:1060!important;
 }
 body[data-authenticated="1"] > aside#profileDropdown.header-user-dropdown{
   top:144px!important;max-height:min(380px,calc(100vh - 164px))!important;
   overflow-y:auto!important;overscroll-behavior:contain!important;
 }
}
@media(max-width:900px){
 html,html body[data-authenticated="1"]{height:100%!important;min-height:100%!important;overflow:hidden!important}
 body[data-authenticated="1"]{position:relative!important;height:100dvh!important;min-height:100dvh!important;overflow:hidden!important}
 body[data-authenticated="1"] > header.global-header{
   position:fixed!important;left:0!important;right:0!important;top:0!important;
   width:100%!important;height:66px!important;min-height:66px!important;max-height:66px!important;z-index:1100!important;
 }
 body[data-authenticated="1"] > aside#appSidebar.app-sidebar{
   position:fixed!important;left:0!important;top:66px!important;bottom:0!important;
   height:calc(100dvh - 66px)!important;max-height:calc(100dvh - 66px)!important;
   overflow-y:auto!important;overflow-x:hidden!important;
 }
 body[data-authenticated="1"] > main.app-main{
   position:fixed!important;top:66px!important;left:0!important;right:0!important;bottom:0!important;
   width:auto!important;height:auto!important;min-height:0!important;margin:0!important;
   overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
 }
 body[data-authenticated="1"] > .profile-drawer-backdrop{top:66px!important}
 body[data-authenticated="1"] > aside#profileDropdown.header-user-dropdown{
   top:66px!important;max-height:min(380px,calc(100dvh - 82px))!important;overflow-y:auto!important;
 }
}


/* V9.1.7 — trend mini-charts inside all seven Admin KPI cards */
.admin-metric-card{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) 106px!important;
 grid-template-rows:auto auto auto!important;
 align-items:center!important;
 column-gap:8px!important;row-gap:2px!important;
 min-height:112px!important;padding:13px 14px 10px!important;
 overflow:hidden!important;
}
.admin-metric-card small{grid-column:1!important;grid-row:1!important;margin:0 0 5px!important;line-height:1.25!important}
.admin-metric-card strong{grid-column:1!important;grid-row:2!important;font-size:20px!important;overflow-wrap:anywhere!important}
.admin-metric-sparkline{grid-column:2!important;grid-row:1 / span 2!important;display:block!important;width:100%!important;height:43px!important;align-self:center!important;overflow:visible!important}
.admin-metric-sparkline polyline{fill:none!important;stroke:var(--v9-green)!important;stroke-width:2.5!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.admin-metric-note{grid-column:1 / -1!important;grid-row:3!important;color:#8b978e!important;font-size:9px!important;margin-top:4px!important;line-height:1.3!important}
.admin-metrics .col-6{min-width:0!important}
@media(max-width:600px){
 .admin-metric-card{grid-template-columns:minmax(0,1fr) 78px!important;padding:11px!important;min-height:102px!important}
 .admin-metric-card strong{font-size:17px!important}
 .admin-metric-sparkline{height:35px!important}
}

/* V9.1.7 — Admin global colour preset selector */
.appearance-intro{margin:2px 0 18px}
.appearance-intro .eyebrow{margin:0 0 5px;color:var(--v9-green);font-size:10px;font-weight:850;letter-spacing:.12em}
.appearance-intro h1{margin:0 0 5px}
.appearance-intro p{margin:0;color:var(--v9-muted);font-size:12px}
.appearance-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:13px}
.appearance-option{position:relative;display:block;cursor:pointer}
.appearance-option input{position:absolute;opacity:0;pointer-events:none}
.appearance-option-card{height:100%;padding:13px;border:2px solid var(--v9-line);border-radius:14px;background:var(--v9-paper);transition:border-color .15s ease,box-shadow .15s ease}
.appearance-option input:checked + .appearance-option-card{border-color:var(--v9-green);box-shadow:0 0 0 3px rgba(23,107,85,.10)}
.appearance-option input:focus-visible + .appearance-option-card{outline:3px solid #8ab69a;outline-offset:3px}
.appearance-preview{height:104px;display:flex;overflow:hidden;border:1px solid rgba(0,0,0,.08);border-radius:9px;background:var(--preview-bg)}
.appearance-preview-sidebar{width:27%;background:var(--preview-nav);padding:11px 7px;display:flex;flex-direction:column;gap:7px}
.appearance-preview-sidebar i{display:block;height:5px;border-radius:5px;background:rgba(255,255,255,.58)}
.appearance-preview-sidebar i:nth-child(2){height:12px;background:var(--preview-active)}
.appearance-preview-main{flex:1;padding:11px;background:var(--preview-bg)}
.appearance-preview-header{height:11px;width:58%;border-radius:5px;background:var(--preview-accent);margin-bottom:10px}
.appearance-preview-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.appearance-preview-cards i{display:block;height:27px;border-radius:5px;background:var(--preview-card);border:1px solid rgba(0,0,0,.06)}
.appearance-preview-button{height:10px;width:48%;margin-top:9px;border-radius:5px;background:var(--preview-accent)}
.appearance-option-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px;color:var(--v9-ink);font-size:12px;font-weight:850}
.appearance-option-desc{margin-top:3px;color:var(--v9-muted);font-size:10px;line-height:1.4}
.appearance-active-pill{padding:3px 7px;border-radius:20px;background:#e4f1e5;color:#236545;font-size:9px;font-weight:850}
.appearance-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px;padding-top:15px;border-top:1px solid var(--v9-line)}
.appearance-actions p{margin:0;color:var(--v9-muted);font-size:11px}
.appearance-save{padding:10px 17px;border:0;border-radius:9px;background:var(--v9-green);color:white;font-size:12px;font-weight:800;cursor:pointer}
.appearance-save:hover{filter:brightness(.93)}


/* Appearance catalogue: show each theme's coordinated wordmark and palette chips */
.appearance-summary{
 display:flex;align-items:center;justify-content:space-between;gap:12px;
 margin:0 0 14px;padding:13px 15px;border:1px solid var(--v9-line);
 border-radius:12px;background:var(--v9-paper);box-shadow:var(--v9-shadow)
}
.appearance-summary>div{display:flex;flex-direction:column;gap:3px}
.appearance-summary strong{color:var(--v9-ink);font-size:12px}
.appearance-summary small{color:var(--v9-muted);font-size:10px}
.appearance-current-count{padding:6px 9px;border-radius:20px;background:var(--v9-sage);color:var(--v9-green);font-size:10px;font-weight:800}
.appearance-preview-brand{
 display:flex;align-items:center;justify-content:flex-start;
 height:24px;max-height:24px;width:100%;overflow:hidden;margin-bottom:9px
}
.appearance-preview-brand img{
 display:block;width:100%;height:24px;max-height:24px;object-fit:contain;object-position:left center
}
.appearance-colour-strip{display:flex;gap:4px;margin-top:9px;height:9px}
.appearance-colour-strip i{display:block;flex:1;min-width:0;border-radius:4px;border:1px solid rgba(32,42,35,.08)}
.appearance-option-card{display:flex;flex-direction:column}
.appearance-option-desc{min-height:29px}
.appearance-option:hover .appearance-option-card{border-color:var(--v9-sage-strong)}
.appearance-option input:checked + .appearance-option-card{border-color:var(--v9-green)!important}
@media(max-width:600px){
 .appearance-summary{align-items:flex-start;flex-direction:column}
 .appearance-preview-brand img{max-width:100%}
}
