/* SMPower color modes: shared by public, account and admin screens. */
:root{
  color-scheme:dark;
  --theme-bg:#090d12;
  --theme-surface:#111920;
  --theme-surface-soft:#0b171d;
  --theme-border:rgba(145,196,207,.18);
  --theme-text:#edf8f5;
  --theme-muted:#98b2ba;
  --theme-shadow:rgba(0,0,0,.28);
}

html[data-theme="light"]{
  color-scheme:light;
  --theme-bg:#eef3f4;
  --theme-surface:#ffffff;
  --theme-surface-soft:#f6f9f9;
  --theme-border:rgba(16,55,62,.17);
  --theme-text:#102329;
  --theme-muted:#587078;
  --theme-shadow:rgba(22,54,59,.12);
}

html[data-theme="dark"]{color-scheme:dark}

/* Authenticated application shell. */
html[data-theme="light"] .app-shell{
  --bg:#eef3f4;
  --bg-2:#f7faf9;
  --surface:#ffffff;
  --surface-2:#f2f7f5;
  --surface-3:#e8f5f0;
  --border:rgba(16,55,62,.15);
  --border-2:#c4d5d4;
  --text:#102329;
  --text-muted:#5b7178;
  --link:#087a54;
  --shadow:rgba(22,54,59,.10);
  --shadow-2:rgba(22,54,59,.16);
  --app-bg:#edf3f3;
  --app-bg-deep:#f8fbfa;
  --app-panel:#ffffff;
  --app-panel-soft:#f3f8f6;
  --app-field:#f8fbfa;
  --app-border:#bfd2d1;
  --app-border-soft:rgba(20,63,68,.16);
  --app-text:#102329;
  --app-muted:#5c737a;
  background:
    radial-gradient(900px 460px at 88% -12%,rgba(31,218,141,.10),transparent 60%),
    linear-gradient(145deg,#f9fbfa,#edf3f3 50%,#e8efef);
}
html[data-theme="light"] .app-shell .layout{background:transparent}
html[data-theme="light"] .app-shell .sidebar{
  background:linear-gradient(180deg,rgba(250,252,251,.99),rgba(239,246,243,.98));
  border-color:rgba(20,63,68,.15);box-shadow:12px 0 40px rgba(22,54,59,.08)
}
html[data-theme="light"] .app-shell .main-menu li.section{color:#52777a}
html[data-theme="light"] .app-shell .main-menu li a{color:#28464e}
html[data-theme="light"] .app-shell .main-menu li a:hover{background:#e7f1ee;border-color:#d2e2de;color:#0c332b}
html[data-theme="light"] .app-shell .main-menu li.active>a{
  background:linear-gradient(90deg,rgba(20,182,113,.16),rgba(37,132,137,.08));
  border-color:rgba(18,145,96,.24);color:#073d2b
}
html[data-theme="light"] .app-shell h1,
html[data-theme="light"] .app-shell h2,
html[data-theme="light"] .app-shell h3,
html[data-theme="light"] .app-shell h4,
html[data-theme="light"] .app-shell summary{color:#102329}
html[data-theme="light"] .app-shell .hero,
html[data-theme="light"] .app-shell .page-head{
  border-color:rgba(17,145,96,.24);
  background:radial-gradient(70% 160% at 0 0,rgba(31,218,141,.14),transparent 57%),linear-gradient(125deg,#f4fbf8,#eaf5f2 60%,#f8fbfa);
  box-shadow:0 18px 48px rgba(22,54,59,.09)
}
html[data-theme="light"] .app-shell .hero p,
html[data-theme="light"] .app-shell .page-head p{color:#577178}
html[data-theme="light"] .app-shell .card{
  background:linear-gradient(155deg,#fff,#f7faf9);border-color:rgba(20,63,68,.16);box-shadow:0 16px 40px rgba(22,54,59,.09)
}
html[data-theme="light"] .app-shell .kpi strong,
html[data-theme="light"] .app-shell .num{color:#102329}
html[data-theme="light"] .app-shell label{color:#35555d}
html[data-theme="light"] .app-shell input:not([type]),
html[data-theme="light"] .app-shell input[type="text"],
html[data-theme="light"] .app-shell input[type="email"],
html[data-theme="light"] .app-shell input[type="tel"],
html[data-theme="light"] .app-shell input[type="number"],
html[data-theme="light"] .app-shell input[type="password"],
html[data-theme="light"] .app-shell input[type="url"],
html[data-theme="light"] .app-shell input[type="date"],
html[data-theme="light"] .app-shell input[type="datetime-local"],
html[data-theme="light"] .app-shell input[type="search"],
html[data-theme="light"] .app-shell select,
html[data-theme="light"] .app-shell textarea{
  background:#fbfdfc;color:#102329;border-color:#bfd2d1;color-scheme:light;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)
}
html[data-theme="light"] .app-shell input::placeholder,
html[data-theme="light"] .app-shell textarea::placeholder{color:#789096}
html[data-theme="light"] .app-shell input:focus,
html[data-theme="light"] .app-shell select:focus,
html[data-theme="light"] .app-shell textarea:focus{background:#fff}
html[data-theme="light"] .app-shell .btn,
html[data-theme="light"] .app-shell .btn-ghost,
html[data-theme="light"] .app-shell button:not(.menu-toggle):not(.sp-theme-toggle){
  border-color:#bdd0cf;background:linear-gradient(180deg,#fff,#edf4f2);color:#18343b;box-shadow:0 8px 20px rgba(22,54,59,.10)
}
html[data-theme="light"] .app-shell .btn.primary,
html[data-theme="light"] .app-shell .btn-primary,
html[data-theme="light"] .app-shell button.primary,
html[data-theme="light"] .app-shell button[type="submit"]:not(.btn-ghost):not(.danger){
  border-color:#0ba66a;background:linear-gradient(135deg,#08b86d,#59dca1);color:#052117;
  box-shadow:0 12px 28px rgba(8,143,86,.22)
}
html[data-theme="light"] .app-shell .btn.primary:hover,
html[data-theme="light"] .app-shell .btn-primary:hover,
html[data-theme="light"] .app-shell button.primary:hover,
html[data-theme="light"] .app-shell button[type="submit"]:not(.btn-ghost):not(.danger):hover{
  border-color:#078654;background:linear-gradient(135deg,#079d5d,#45ca8d);color:#031d14;
  box-shadow:0 15px 32px rgba(8,143,86,.28)
}
html[data-theme="light"] .app-shell :is(.btn.danger,.btn-ghost.danger,button.danger){
  border-color:#dfa2a8;background:#fff1f2;color:#9b2934;box-shadow:0 8px 20px rgba(132,36,47,.08)
}
html[data-theme="light"] .app-shell :is(.btn.danger,.btn-ghost.danger,button.danger):hover{
  border-color:#c96d78;background:#ffe5e7;color:#7f1e29
}
html[data-theme="light"] .app-shell :is(button,.btn,.btn-ghost):disabled{
  opacity:.52;cursor:not-allowed;transform:none;box-shadow:none
}
html[data-theme="light"] .app-shell .badge,
html[data-theme="light"] .app-shell .pill{border-color:#bfd2d1;background:#edf5f2;color:#294a51}
html[data-theme="light"] .app-shell .alert,
html[data-theme="light"] .app-shell .msg{background:#f2f8f6;border-color:#c5d8d5}
html[data-theme="light"] .app-shell table thead th{background:#edf5f3;color:#496b72;border-color:#c7d8d6}
html[data-theme="light"] .app-shell table tbody td{border-color:rgba(20,63,68,.12)}
html[data-theme="light"] .app-shell table tbody tr:hover td{background:rgba(18,165,104,.055)}
html[data-theme="light"] .app-shell .mobile-bar,
html[data-theme="light"] .app-shell .mobile-actions{background:rgba(249,252,251,.96);border-color:#d3e0de}
html[data-theme="light"] .app-shell .mobile-actions a{color:#24464d;border-color:#c9d9d7;background:#fff}
html[data-theme="light"] .app-shell .menu-toggle{
  border-color:#bcd0ce;background:#fff;color:#17343b;box-shadow:0 8px 20px rgba(22,54,59,.10)
}

/* Commercial dashboard uses local dark surfaces. */
html[data-theme="light"] .app-shell .dash-grid .topbar{
  border-color:rgba(17,145,96,.24);
  background:radial-gradient(70% 160% at 0 0,rgba(31,218,141,.14),transparent 57%),linear-gradient(125deg,#f4fbf8,#eaf5f2 60%,#f8fbfa);
  color:#102329;box-shadow:0 18px 48px rgba(22,54,59,.09)
}
html[data-theme="light"] .app-shell .dash-grid .topbar h2{color:#102329}
html[data-theme="light"] .app-shell .dash-grid .topbar p{color:#526e76}
html[data-theme="light"] .app-shell .dash-grid :is(.kpi-card,.mini-card,.feed-item){
  position:relative;border-color:#c7d8d5;background:linear-gradient(155deg,#fff,#f5f9f7);
  color:#102329;box-shadow:0 12px 30px rgba(22,54,59,.08)
}
html[data-theme="light"] .app-shell .dash-grid .kpi-card{overflow:hidden}
html[data-theme="light"] .app-shell .dash-grid .kpi-card::before{
  content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#18c982,#87dfb5)
}
html[data-theme="light"] .app-shell .dash-grid .kpi-card .eyebrow,
html[data-theme="light"] .app-shell .dash-grid .mini-card .mini,
html[data-theme="light"] .app-shell .dash-grid .feed-item .meta,
html[data-theme="light"] .app-shell .dash-grid .feed-item .when{color:#587078}
html[data-theme="light"] .app-shell .dash-grid .kpi-card strong,
html[data-theme="light"] .app-shell .dash-grid .mini-card .big,
html[data-theme="light"] .app-shell .dash-grid .mini-card h4,
html[data-theme="light"] .app-shell .dash-grid .feed-item .title{color:#103b31}
html[data-theme="light"] .app-shell .dash-grid .kpi-card .meta{color:#294b53}
html[data-theme="light"] .app-shell .dash-grid .kpi-card .submeta{color:#60777d}

/* Traffic analytics uses a separate card vocabulary. */
html[data-theme="light"] .app-shell .traffic-grid :is(.traffic-card,.traffic-box,.traffic-row){
  border-color:#c7d8d5;background:linear-gradient(155deg,#fff,#f5f9f7);
  color:#102329;box-shadow:0 12px 30px rgba(22,54,59,.075)
}
html[data-theme="light"] .app-shell .traffic-grid :is(.traffic-card,.traffic-box) small,
html[data-theme="light"] .app-shell .traffic-grid .traffic-card span,
html[data-theme="light"] .app-shell .traffic-grid .traffic-row .muted{color:#587078}
html[data-theme="light"] .app-shell .traffic-grid .traffic-card strong,
html[data-theme="light"] .app-shell .traffic-grid .traffic-row .title{color:#103b31}
html[data-theme="light"] .app-shell .traffic-grid .traffic-badge{border-color:#bfd2d1;background:#edf5f2;color:#294a51}

html[data-theme="light"] .app-shell details{
  border-color:#c8d9d6;background:#f8fbfa;color:#17343b
}
html[data-theme="light"] .app-shell details summary{color:#17343b}
html[data-theme="light"] .app-shell :is(pre,code){color:#294b53}

/* Custom back-office modules define dark surfaces locally. Keep them aligned with light mode. */
html[data-theme="light"] .app-shell :is(
  .inv-card,.fin-kpi,.fin-pay,.cm-card,.cm-kpi,.cm-step,.cm-filter,.cm-health-head,.cm-check,
  .plan-card,.route-item,.cs-card,.rv-card,.price-kpi,.price-panel,.pricing-kpi,.pricing-panel,.pricing-channel,
  .pricing-note,.pricing-block,.pricing-method,.pricing-target,.pricing-strategy,.pricing-explainer,
  .mgr-card,.channel,.pdv-surface,.pdv-section-head,.pdv-sale-toolbar,.pdv-lines,.pdv-line,
  .pdv-cart-actions,.pdv-checkout,.pdv-checkout-head,.pdv-payment-option,.pdv-modal,
  .pdv-modal-summary,.pdv-modal-list,.customer-card,.master-card,.master-promote,.master-count
){
  background:linear-gradient(155deg,#fff,#f7faf9);
  border-color:rgba(20,63,68,.16);
  color:#102329;
  box-shadow:0 14px 34px rgba(22,54,59,.075)
}
html[data-theme="light"] .app-shell :is(
  .inv-hero,.fin-hero,.cm-hero,.plan-hero,.cs-hero,.rv-hero,.price-hero,.pricing-hero,
  .mgr-hero,.customer-hero,.master-hero,.pdv-register-head
){
  background:radial-gradient(70% 160% at 0 0,rgba(31,218,141,.13),transparent 57%),linear-gradient(125deg,#f4fbf8,#eaf5f2 60%,#f8fbfa);
  border-color:rgba(17,145,96,.24);
  color:#102329;
  box-shadow:0 18px 48px rgba(22,54,59,.09)
}

/* PDV: clear operation area with a high-contrast payment terminal. */
html[data-theme="light"] .app-shell .pdv-register-head p{color:#526f76}
html[data-theme="light"] .app-shell .pdv-register-mark{
  background:linear-gradient(135deg,#08b86d,#59dca1);color:#04291c;
  box-shadow:0 10px 24px rgba(8,143,86,.22)
}
html[data-theme="light"] .app-shell .pdv-surface{
  border-color:#bcd2ce;background:#fff;color:#102329;
  box-shadow:0 16px 38px rgba(22,54,59,.095)
}
html[data-theme="light"] .app-shell .pdv-surface:focus-within{border-color:#70ba9b;box-shadow:0 18px 42px rgba(22,105,77,.12)}
html[data-theme="light"] .app-shell .pdv-section-head{
  border-color:#c9dad7;background:linear-gradient(180deg,#f8fbfa,#edf5f2);color:#102329;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-section-head h3{color:#102329}
html[data-theme="light"] .app-shell .pdv-section-kicker{color:#08754d}
html[data-theme="light"] .app-shell .pdv-customer-search label,
html[data-theme="light"] .app-shell .pdv-fields label{color:#294b53}
html[data-theme="light"] .app-shell .pdv-customer-search input,
html[data-theme="light"] .app-shell .pdv-fields input,
html[data-theme="light"] .app-shell .pdv-fields select,
html[data-theme="light"] .app-shell .pdv-sale-toolbar input,
html[data-theme="light"] .app-shell .pdv-line input,
html[data-theme="light"] .app-shell .pdv-line select{
  border-color:#b8cecb;background:#fbfdfc;color:#102329;color-scheme:light
}
html[data-theme="light"] .app-shell .pdv-customer-more{border-color:#d1dfdc;background:transparent}
html[data-theme="light"] .app-shell .pdv-customer-more summary{color:#294b53}
html[data-theme="light"] .app-shell .pdv-customer-more summary::before{border-color:#8ebfaf;background:#e7f6ef;color:#08754d}
html[data-theme="light"] .app-shell .pdv-sale-toolbar{
  border-color:#c9dad7;background:#edf5f2;color:#102329;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-lines{
  background:linear-gradient(180deg,#f8fbfa,#f2f7f5);box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-line{
  border-color:#d2dfdd;background:#fff;color:#102329;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-line:hover{background:#f1f8f5}
html[data-theme="light"] .app-shell .pdv-line label{color:#526f76}
html[data-theme="light"] .app-shell .pdv-line-total{color:#075f42;font-weight:900}
html[data-theme="light"] .app-shell .pdv-stock-label{color:#536f76;font-weight:700}
html[data-theme="light"] .app-shell .pdv-thumb{border-color:#c1d3d0;background:#fff}
html[data-theme="light"] .app-shell .pdv-qty-control button{
  border-color:#9dc7b7;background:#e5f4ed;color:#07563c;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-qty-control button:hover{border-color:#36a879;background:#d4eee2;color:#043e2b}
html[data-theme="light"] .app-shell .pdv-add-item{
  border-color:#0a9d63!important;background:linear-gradient(135deg,#0bb66e,#55d89d)!important;
  color:#04291c!important;box-shadow:0 9px 22px rgba(8,143,86,.18)!important;font-weight:900
}
html[data-theme="light"] .app-shell .pdv-remove{
  border-color:#dea0a7!important;background:#fff1f2!important;color:#982b36!important;box-shadow:none!important
}
html[data-theme="light"] .app-shell .pdv-cart-actions{
  border-color:#c9dad7;background:#f5f9f7;color:#102329;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-cart-actions button{
  border-color:#b9cecb;background:#fff;color:#21434b;box-shadow:0 5px 13px rgba(22,54,59,.06)
}
html[data-theme="light"] .app-shell .pdv-cart-actions button:hover{border-color:#58af8a;background:#e9f6f0;color:#07563c}

html[data-theme="light"] .app-shell .pdv-checkout{
  border-color:#1a4a43;background:linear-gradient(165deg,#0d2d2b 0%,#0a211f 48%,#081715 100%);
  color:#edf9f5;box-shadow:0 24px 54px rgba(5,39,31,.24)
}
html[data-theme="light"] .app-shell .pdv-checkout-head{
  border-color:rgba(142,218,190,.2);background:linear-gradient(135deg,rgba(25,113,84,.36),rgba(6,35,31,.2));
  color:#edf9f5;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-checkout-head h3{color:#f2fff9}
html[data-theme="light"] .app-shell .pdv-checkout-head p{color:#b4ccc7}
html[data-theme="light"] .app-shell .pdv-checkout .pdv-section-kicker{color:#61e8aa}
html[data-theme="light"] .app-shell .pdv-checkout-fields label{color:#d2e7e1}
html[data-theme="light"] .app-shell .pdv-checkout-fields input,
html[data-theme="light"] .app-shell .pdv-checkout-fields select{
  border-color:#7fa69e;background:#f8fbfa;color:#102329;color-scheme:light;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-payment-option{
  border-color:#35645d;background:#102f2c;color:#dceee9;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-payment-option:hover{border-color:#65d7a7;background:#174039;color:#fff}
html[data-theme="light"] .app-shell .pdv-payment-option.is-active{
  border-color:#5cf0ae;background:linear-gradient(135deg,#078f59,#18c77d);color:#fff;
  box-shadow:0 9px 24px rgba(16,199,123,.22)
}
html[data-theme="light"] .app-shell .pdv-checkout .pdv-helper{color:#a9c3bd}
html[data-theme="light"] .app-shell .pdv-summary{border-color:rgba(151,209,188,.25)}
html[data-theme="light"] .app-shell .pdv-summary .rowline{color:#d9ebe6}
html[data-theme="light"] .app-shell .pdv-summary .rowline strong{color:#f4fff9}
html[data-theme="light"] .app-shell .pdv-checkout .pdv-muted{color:#a9c3bd}
html[data-theme="light"] .app-shell .pdv-total-label{color:#9ec1b8}
html[data-theme="light"] .app-shell .pdv-total{color:#69efab;text-shadow:0 0 28px rgba(50,223,146,.14)}
html[data-theme="light"] .app-shell .pdv-checkout-actions .btn{
  border:0;background:linear-gradient(135deg,#14cf82,#69eeb0);color:#042117;
  box-shadow:0 13px 30px rgba(18,204,128,.25);font-weight:900
}
html[data-theme="light"] .app-shell .pdv-checkout-actions .btn-ghost{
  border-color:#48736c;background:rgba(255,255,255,.04);color:#e5f4ef;box-shadow:none
}
html[data-theme="light"] .app-shell .pdv-pill{border-color:#b7ceca;background:#fff;color:#294b53}
html[data-theme="light"] .app-shell .pdv-modal{background:#fff;color:#102329;border-color:#bfd2d1}
html[data-theme="light"] .app-shell .pdv-modal p,
html[data-theme="light"] .app-shell .pdv-modal .pdv-muted{color:#587078}
html[data-theme="light"] .app-shell .pdv-modal-summary,
html[data-theme="light"] .app-shell .pdv-modal-list{background:#f3f8f6;border-color:#cbdad8;color:#102329;box-shadow:none}
html[data-theme="light"] .app-shell .pdv-modal-summary strong,
html[data-theme="light"] .app-shell .pdv-modal-item strong{color:#103b31}
html[data-theme="light"] .app-shell .pdv-modal-list h4{color:#496b72}
html[data-theme="light"] .app-shell .pdv-modal .pdv-status-badge.is-paid{background:#e3f7ed;color:#08754d;border-color:#75c8a4}
html[data-theme="light"] .app-shell .pdv-modal .pdv-status-badge.is-pending{background:#eaf4ff;color:#17669a;border-color:#9ac8e5}
html[data-theme="light"] .app-shell .pdv-modal .pdv-status-badge.is-problem{background:#fff0f1;color:#9b2934;border-color:#dfa2a8}
html[data-theme="light"] .app-shell #pdv-confirm-submit{
  border-color:#0a9d63;background:linear-gradient(135deg,#0bb66e,#55d89d);color:#04291c;
  box-shadow:0 10px 24px rgba(8,143,86,.2);font-weight:900
}
html[data-theme="light"] .app-shell :is(
  .inv-muted,.fin-muted,.cm-muted,.plan-muted,.cs-muted,.rv-muted,.price-muted,.pricing-muted,.mgr-muted
){color:#587078}

/* Inventory has its own complete visual system and needs explicit light counterparts. */
html[data-theme="light"] .app-shell .inv{color:#102329}
html[data-theme="light"] .app-shell .inv-card{
  background:linear-gradient(155deg,#fff,#f6faf8);
  border-color:#c6d8d5
}
html[data-theme="light"] .app-shell .inv-kpi span,
html[data-theme="light"] .app-shell .inv-table th{color:#496b72}
html[data-theme="light"] .app-shell .inv input,
html[data-theme="light"] .app-shell .inv select{
  background:#fbfdfc;color:#102329;border-color:#bfd2d1;color-scheme:light
}
html[data-theme="light"] .app-shell .inv-btn:not(.primary):not(.danger){
  border-color:#bdd0cf;background:linear-gradient(180deg,#fff,#edf4f2);color:#18343b;
  box-shadow:0 8px 20px rgba(22,54,59,.09)
}
html[data-theme="light"] .app-shell .inv-btn.primary{
  border-color:transparent;background:linear-gradient(135deg,#18c982,#67dda0);color:#052117
}
html[data-theme="light"] .app-shell .inv-btn.danger{
  border-color:#e0aeb3;background:#fff5f5;color:#a72938
}
html[data-theme="light"] .app-shell .inv-alert{
  border-color:#9fd2bc;background:#eaf8f1;color:#155d42
}
html[data-theme="light"] .app-shell .inv-alert.err{
  border-color:#e0aeb3;background:#fff0f1;color:#922f3c
}
html[data-theme="light"] .app-shell .inv-table th,
html[data-theme="light"] .app-shell .inv-table td{border-color:#d4e0de}
html[data-theme="light"] .app-shell .inv .badge{
  border-color:#b9ceca;background:#eef6f3;color:#244d45
}
html[data-theme="light"] .app-shell .inv :is(.good,.plus){color:#087a54}
html[data-theme="light"] .app-shell .inv :is(.low,.minus){color:#b83242}
html[data-theme="light"] .app-shell .inv [style*="color:#79c9ff"]{color:#176b9a!important}

/* Pricing studio: local dark declarations need complete light-mode equivalents. */
html[data-theme="light"] .app-shell .pricing{color:#102329}
html[data-theme="light"] .app-shell .pricing-hero p,
html[data-theme="light"] .app-shell .pricing-kpi :is(span,small){color:#587078}
html[data-theme="light"] .app-shell .pricing-jump{
  border-color:#c5d7d4;background:rgba(250,252,251,.94);
  box-shadow:0 12px 28px rgba(22,54,59,.10)
}
html[data-theme="light"] .app-shell .pricing-jump a{color:#49676e}
html[data-theme="light"] .app-shell .pricing-jump a::before{background:#9db2b4}
html[data-theme="light"] .app-shell .pricing-jump a:hover,
html[data-theme="light"] .app-shell .pricing-jump a.is-active{background:#dff3ea;color:#07543a}
html[data-theme="light"] .app-shell .pricing-block{
  border-color:#cbdad8;background:rgba(255,255,255,.76)
}
html[data-theme="light"] .app-shell .pricing-block:focus-within{border-color:#70af96}
html[data-theme="light"] .app-shell .pricing-block legend{color:#17363d}
html[data-theme="light"] .app-shell .pricing-step{
  border-color:#70b89a;background:#dff4ea;color:#08764f
}
html[data-theme="light"] .app-shell .pricing label{color:#294b53}
html[data-theme="light"] .app-shell .pricing input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="light"] .app-shell .pricing select,
html[data-theme="light"] .app-shell .pricing textarea{
  border-color:#b9cfcd;background:#fbfdfc;color:#102329;color-scheme:light
}
html[data-theme="light"] .app-shell .pricing input:focus,
html[data-theme="light"] .app-shell .pricing select:focus,
html[data-theme="light"] .app-shell .pricing textarea:focus{
  border-color:#4cae83;background:#fff;box-shadow:0 0 0 3px rgba(22,170,105,.12);outline:0
}
html[data-theme="light"] .app-shell .pricing input:disabled,
html[data-theme="light"] .app-shell .pricing input[readonly]{background:#e9efee;color:#52666b}
html[data-theme="light"] .app-shell .pricing-strategy{
  border-color:#9fcdb9;background:radial-gradient(circle at 100% 0,rgba(34,190,125,.12),transparent 42%),linear-gradient(160deg,#f8fcfa,#edf7f3);
  box-shadow:0 18px 42px rgba(22,54,59,.11)
}
html[data-theme="light"] .app-shell .pricing-method{
  border-color:#c6d7d5;background:#fff;color:#17363d;box-shadow:none
}
html[data-theme="light"] .app-shell .pricing-method strong{color:#17363d}
html[data-theme="light"] .app-shell .pricing-method small{color:#59747a}
html[data-theme="light"] .app-shell .pricing-method:hover{border-color:#78bda0;background:#f4faf7}
html[data-theme="light"] .app-shell .pricing-method:has(input:checked),
html[data-theme="light"] .app-shell .pricing-method.is-active{
  border-color:#1ba46c;background:#dff5e9;box-shadow:inset 0 0 0 1px rgba(27,164,108,.15)
}
html[data-theme="light"] .app-shell .pricing-target{
  border-color:#c7d8d5;background:#fff
}
html[data-theme="light"] .app-shell .pricing-target.is-muted{opacity:.68}
html[data-theme="light"] .app-shell .pricing-target.is-muted :is(label,.pricing-muted){color:#60767b}
html[data-theme="light"] .app-shell .pricing-live{border-color:#bfd5cc}
html[data-theme="light"] .app-shell .pricing-live-main span,
html[data-theme="light"] .app-shell .pricing-live-grid span{color:#5b747a}
html[data-theme="light"] .app-shell .pricing-live-main strong{color:#087a54}
html[data-theme="light"] .app-shell .pricing-live-delta{background:#dff3ea;color:#176047}
html[data-theme="light"] .app-shell .pricing-live-grid div{background:#edf5f2;color:#17363d}
html[data-theme="light"] .app-shell .pricing-live-track,
html[data-theme="light"] .app-shell .pricing-meter{background:#d7e3e1}
html[data-theme="light"] .app-shell .pricing-explainer{
  border-color:#acd1c0;background:#edf8f2
}
html[data-theme="light"] .app-shell .pricing-explainer summary{color:#155d42}
html[data-theme="light"] .app-shell .pricing-explainer div{color:#496b60}
html[data-theme="light"] .app-shell .pricing-savebar{border-color:#cfdddb}
html[data-theme="light"] .app-shell .pricing-savebar span{color:#5b747a}
html[data-theme="light"] .app-shell .pricing-badge{
  border-color:#b9ceca;background:#eef6f3;color:#31575e
}
html[data-theme="light"] .app-shell .pricing-channel .suggested{border-color:#c5d9d1;color:#087a54}
html[data-theme="light"] .app-shell .pricing-note{background:#edf5f2;color:#49686f}
html[data-theme="light"] .app-shell .pricing-positive{color:#087a54}
html[data-theme="light"] .app-shell .pricing-warning{color:#946000}
html[data-theme="light"] .app-shell .pricing-negative{color:#b83242}

/* Public homepage keeps its visual sections while the surrounding chrome follows the selected mode. */
html[data-theme="light"] .home-shell{
  --home-bg:#edf3f4;--home-surface:#ffffff;--home-surface-soft:#f5f9f7;
  --home-card:#ffffff;--home-line:rgba(15,52,59,.15);--home-text:#102329;--home-muted:#526f79;
  --home-brand:#249d61;--home-brand-2:#36bd70;--home-brand-soft:rgba(36,157,97,.11);
  background:radial-gradient(760px 420px at 85% -10%,rgba(91,241,31,.10),transparent 62%),#edf3f4;color:#102329
}
html[data-theme="light"] .home-shell .home-topbar{background:rgba(250,252,251,.94);border-color:rgba(15,52,59,.13)}
html[data-theme="light"] .home-shell .main-nav a{color:#29474f}
html[data-theme="light"] .home-shell .main-nav a:hover{color:#087a54}
html[data-theme="light"] .home-shell .icon-btn,
html[data-theme="light"] .home-shell .ghost-btn{border-color:rgba(15,52,59,.17);background:rgba(255,255,255,.78);color:#16343b}
html[data-theme="light"] .home-shell .cta-btn{background:linear-gradient(135deg,#36bd70,#74d99a);box-shadow:0 12px 28px rgba(36,157,97,.16)}
html[data-theme="light"] .home-shell .hero-copy h1 span{color:#249d61}
html[data-theme="light"] .home-shell .hero-copy .eyebrow{
  color:#35636c;background:rgba(255,255,255,.72);border-color:rgba(35,91,99,.18)
}
html[data-theme="light"] .home-shell .hero-copy>p{color:#526f79}
html[data-theme="light"] .home-shell .hero-proof span{
  color:#3f626c;background:rgba(255,255,255,.64);border-color:rgba(35,91,99,.15)
}
html[data-theme="light"] .home-shell .hero-stage{color:#eef8f5}
html[data-theme="light"] .home-shell .hero-hotspot strong{color:#dff5eb}
html[data-theme="light"] .home-shell .hero-hotspot span{color:#c9dce2}
html[data-theme="light"] .home-shell .proof-panel,
html[data-theme="light"] .home-shell .featured-panel,
html[data-theme="light"] .home-shell .product-demo__panel,
html[data-theme="light"] .home-shell .sim-card,
html[data-theme="light"] .home-shell .confidence-section,
html[data-theme="light"] .home-shell .installer-panel,
html[data-theme="light"] .home-shell .contact-card{color:#edf5f7}
html[data-theme="light"] .home-shell .cta-band__copy .section-kicker{
  border-color:rgba(24,145,94,.22);background:rgba(31,174,112,.09);color:#13734e
}
html[data-theme="light"] .home-shell .cta-band__copy p{color:#526f79}
html[data-theme="light"] .home-shell .contact-card{
  border-color:#c7d8d5;background:linear-gradient(155deg,#fff,#f7faf9);color:#102329;
  box-shadow:0 20px 52px rgba(22,54,59,.11)
}
html[data-theme="light"] .home-shell .contact-card :is(label,span){color:#294b53}
html[data-theme="light"] .home-shell .contact-card input,
html[data-theme="light"] .home-shell .contact-card textarea{
  border-color:#b9cfcd;background:#f7faf9;color:#102329;color-scheme:light;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)
}
html[data-theme="light"] .home-shell .contact-card input::placeholder,
html[data-theme="light"] .home-shell .contact-card textarea::placeholder{color:#647b81;opacity:1}
html[data-theme="light"] .home-shell .contact-card input:focus,
html[data-theme="light"] .home-shell .contact-card textarea:focus{
  border-color:#3aa878;background:#fff;outline:0;box-shadow:0 0 0 3px rgba(25,164,105,.13)
}
html[data-theme="light"] .home-shell .contact-card .form-feedback{color:#405f66}
html[data-theme="light"] .home-shell .contact-card .form-feedback.success{color:#087a54}
html[data-theme="light"] .home-shell .contact-card .form-feedback.error{color:#b83242}

/* Product and other stand-alone public pages. */
html[data-theme="dark"] body:not(.app-shell):not(.home-shell){
  --bg:#071116;--surface:#101a20;--line:rgba(255,255,255,.14);--text:#edf5f7;--muted:#9ab1bc;--topbar-bg:#09191f;
  --bg-grad-a:radial-gradient(95% 90% at 12% -12%,rgba(27,207,132,.16),transparent 60%);
  --bg-grad-b:radial-gradient(80% 80% at 90% -6%,rgba(17,110,85,.10),transparent 60%);
  --bg-grad-c:linear-gradient(180deg,#071116 0%,#0b171d 100%);
  --card-grad:linear-gradient(180deg,rgba(20,31,38,.98),rgba(12,22,28,.98))
}
html[data-theme="dark"] body:not(.app-shell):not(.home-shell) .card,
html[data-theme="dark"] body:not(.app-shell):not(.home-shell) .wrap{color:var(--text)}
html[data-theme="dark"] body:not(.app-shell):not(.home-shell) .desc,
html[data-theme="dark"] body:not(.app-shell):not(.home-shell) .review{background:rgba(255,255,255,.035)}

/* Login, registration and simple public shell. */
html[data-theme="light"] body:not(.app-shell):not(.home-shell){background:#eef3f4;color:#102329}
html[data-theme="light"] body:not(.app-shell):not(.home-shell){
  --bg:#eef3f4;--surface:#ffffff;--line:rgba(16,55,62,.17);--text:#102329;--muted:#587078;--topbar-bg:#f7faf9;
  --bg-grad-a:radial-gradient(95% 90% at 12% -12%,rgba(27,207,132,.10),transparent 60%);
  --bg-grad-b:radial-gradient(80% 80% at 90% -6%,rgba(17,110,85,.07),transparent 60%);
  --bg-grad-c:linear-gradient(180deg,#f4f8f7 0%,#e8f0ef 100%);
  --card-grad:linear-gradient(180deg,#fff,#f8fbfa)
}
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .topbar{background:#f7faf9;border-color:rgba(16,55,62,.15)}
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .nav-links a{color:#29474f}
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .card{background:linear-gradient(180deg,#fff,#f8fbfa);box-shadow:0 16px 40px rgba(22,54,59,.09)}
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .hero{color:#edf5f7}
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .hero .muted,
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .hero p{color:#c6dce4}
html[data-theme="light"] body:not(.app-shell):not(.home-shell)>.wrap,
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .public-wrap{
  background:#fff;color:#102329;border-color:rgba(16,55,62,.16);box-shadow:0 18px 50px rgba(22,54,59,.10)
}
html[data-theme="light"] body:not(.app-shell):not(.home-shell) label,
html[data-theme="light"] body:not(.app-shell):not(.home-shell) .muted{color:#5b7178}
html[data-theme="light"] body:not(.app-shell):not(.home-shell) input,
html[data-theme="light"] body:not(.app-shell):not(.home-shell) select,
html[data-theme="light"] body:not(.app-shell):not(.home-shell) textarea{
  background:#f8fbfa;color:#102329;border-color:#bfd2d1;color-scheme:light
}

/* Theme control. */
.sp-theme-toggle{
  position:fixed;right:18px;bottom:18px;z-index:10000;display:inline-flex;align-items:center;gap:9px;
  min-height:44px;padding:9px 13px;border:1px solid var(--theme-border);border-radius:999px;
  background:color-mix(in srgb,var(--theme-surface) 92%,transparent);color:var(--theme-text);
  box-shadow:0 12px 34px var(--theme-shadow);backdrop-filter:blur(14px);cursor:pointer;font:700 13px/1 system-ui,sans-serif
}
body.app-shell .sp-theme-toggle{
  min-height:44px;padding:9px 13px;border:1px solid var(--theme-border);border-radius:999px;
  background:color-mix(in srgb,var(--theme-surface) 92%,transparent);color:var(--theme-text);
  box-shadow:0 12px 34px var(--theme-shadow)
}
.sp-theme-toggle:hover{transform:translateY(-1px);border-color:rgba(31,218,141,.55)}
.sp-theme-toggle:focus-visible{outline:2px solid #42df9e;outline-offset:3px}
.sp-theme-toggle svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sp-theme-toggle .sp-theme-toggle__sun,
.sp-theme-toggle .sp-theme-toggle__moon{display:none}
html[data-theme="dark"] .sp-theme-toggle__sun,
html[data-theme="light"] .sp-theme-toggle__moon{display:block}
.sp-theme-toggle--inline{position:static;right:auto;bottom:auto;flex:0 0 auto;box-shadow:none}
.home-topbar .sp-theme-toggle--inline,.topbar .sp-theme-toggle--inline{min-height:46px;background:transparent}
.app-shell .sidebar .sp-theme-toggle--inline{width:100%;justify-content:flex-start;margin:0 0 12px;padding-inline:12px}

@media(max-width:700px){
  .sp-theme-toggle{right:12px;bottom:76px;width:44px;padding:0;justify-content:center}
  body.app-shell .sp-theme-toggle{padding:0}
  .sp-theme-toggle--inline{right:auto;bottom:auto}
  .app-shell .sidebar .sp-theme-toggle--inline{width:100%;padding:9px 12px}
  .sp-theme-toggle__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  html[data-theme="light"] .app-shell .dash-grid :is(.kpi-card,.mini-card,.feed-item){box-shadow:0 8px 20px rgba(22,54,59,.07)}
  html[data-theme="light"] .app-shell .traffic-grid :is(.traffic-card,.traffic-box,.traffic-row){box-shadow:0 8px 20px rgba(22,54,59,.065)}
}
@media(prefers-reduced-motion:reduce){.sp-theme-toggle{transition:none}}
@media print{.sp-theme-toggle{display:none!important}}
