:root{--volus-font-display: "Poppins", ui-sans-serif, system-ui, sans-serif;--volus-font-body: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;--volus-bg: #f3f6fb;--volus-surface: #ffffff;--volus-surface-2: #eef2f8;--volus-surface-sunken: #e8eef6;--volus-border: #e1e7f0;--volus-border-strong: #cbd5e3;--volus-ink: #131e30;--volus-text: #3c4a60;--volus-text-muted: #5e6b81;--volus-text-faint: #5c6e8a;--volus-accent: #1c8fe3;--volus-accent-hover: #136fb8;--volus-accent-ink: #0c5a94;--volus-accent-soft: #e6f3fd;--volus-accent-soft-strong: #d2e9fb;--volus-accent-ring: rgba(28, 143, 227, .25);--volus-green: #4fa83a;--volus-green-ink: #357c2a;--volus-green-soft: #e8f6e3;--volus-btn-primary-bg: #1878bf;--volus-btn-primary-bg-hover: #0f62a3;--volus-btn-primary-text: #ffffff;--volus-btn-success-bg: #3e842e;--volus-btn-success-bg-hover: #2f6e25;--volus-btn-success-text: #ffffff;--volus-btn-secondary-bg: var(--volus-text-muted);--volus-btn-secondary-bg-hover: var(--volus-ink);--volus-btn-secondary-text: #ffffff;--volus-btn-secondary-text-hover: #ffffff;--volus-indigo: #6366f1;--volus-indigo-ink: #4338ca;--volus-indigo-soft: #eef2ff;--volus-warning-ink: #8a5300;--volus-danger-ink: #b83434;--volus-chart-1: #1c8fe3;--volus-chart-2: #4fa83a;--volus-chart-3: #e87ba4;--volus-chart-4: #eda100;--volus-chart-5: #1baf7a;--volus-chart-6: #eb6834;--volus-chart-7: #6250d6;--volus-chart-8: #e34948;--volus-chart-neutro: #cbd5e3;--volus-btn-danger-bg: #c53d3d;--volus-btn-danger-bg-hover: #a83131;--volus-btn-danger-text: #ffffff;--volus-btn-warning-bg: #dc9a2e;--volus-btn-warning-bg-hover: #c4861f;--volus-btn-warning-text: #131e30;--volus-btn-dark-bg: #131e30;--volus-btn-dark-bg-hover: #26344d;--volus-btn-dark-text: #ffffff;--volus-warning: #dc9a2e;--volus-warning-soft: #fbf0dc;--volus-danger: #dd4b4b;--volus-danger-soft: #fbe3e3;--volus-grad-brand: linear-gradient(100deg, #1c8fe3, #4fa83a);--volus-shadow-sm: 0 2px 10px rgba(19, 30, 48, .06);--volus-shadow-md: 0 12px 30px rgba(19, 30, 48, .1);--volus-shadow-glow: none;--volus-ease-spring: cubic-bezier(.18, 1, .28, 1.02);--volus-ease-pop: cubic-bezier(.34, 1.56, .64, 1)}[data-bs-theme=dark]{--volus-bg: #0a0f1a;--volus-surface: #121b2c;--volus-surface-2: #182338;--volus-surface-sunken: #0d1522;--volus-border: #243149;--volus-border-strong: #37476a;--volus-ink: #f1f5fb;--volus-text: #b7c2d6;--volus-text-muted: #8492ac;--volus-text-faint: #7e8ba8;--volus-accent: #4fa8ee;--volus-accent-hover: #6fbcf4;--volus-accent-ink: #8fcbf6;--volus-accent-soft: rgba(79, 168, 238, .14);--volus-accent-soft-strong: rgba(79, 168, 238, .24);--volus-accent-ring: rgba(79, 168, 238, .35);--volus-green: #7ed957;--volus-green-ink: #9ce87f;--volus-green-soft: rgba(126, 217, 87, .14);--volus-btn-primary-bg: #4fa8ee;--volus-btn-primary-bg-hover: #6fbcf4;--volus-btn-primary-text: #0a0f1a;--volus-btn-success-bg: #7ed957;--volus-btn-success-bg-hover: #9ce87f;--volus-btn-success-text: #0a0f1a;--volus-btn-secondary-bg: var(--volus-text-muted);--volus-btn-secondary-bg-hover: var(--volus-text);--volus-btn-secondary-text: #0a0f1a;--volus-btn-secondary-text-hover: #0a0f1a;--volus-indigo: #818cf8;--volus-indigo-ink: #a5b4fc;--volus-indigo-soft: rgba(129, 140, 248, .16);--volus-warning-ink: #f0c25e;--volus-danger-ink: #f0685f;--volus-chart-1: #2f8fe0;--volus-chart-2: #4fa83a;--volus-chart-3: #d55181;--volus-chart-4: #c98500;--volus-chart-5: #199e70;--volus-chart-6: #d95926;--volus-chart-7: #9085e9;--volus-chart-8: #e66767;--volus-chart-neutro: #37476a;--volus-btn-danger-bg: #f0685f;--volus-btn-danger-bg-hover: #f3847d;--volus-btn-danger-text: #0a0f1a;--volus-btn-warning-bg: #e8b84d;--volus-btn-warning-bg-hover: #eec56b;--volus-btn-warning-text: #0a0f1a;--volus-btn-dark-bg: #f1f5fb;--volus-btn-dark-bg-hover: #b7c2d6;--volus-btn-dark-text: #121b2c;--volus-warning: #e8b84d;--volus-warning-soft: rgba(232, 184, 77, .14);--volus-danger: #f0685f;--volus-danger-soft: rgba(240, 104, 95, .14);--volus-grad-brand: linear-gradient(100deg, #4fa8ee, #7ed957);--volus-shadow-sm: 0 2px 10px rgba(0, 0, 0, .35);--volus-shadow-md: 0 16px 40px rgba(0, 0, 0, .5);--volus-shadow-glow: 0 0 0 1px rgba(79, 168, 238, .15), 0 0 40px rgba(79, 168, 238, .08)}body{background-color:var(--volus-bg);color:var(--volus-text);font-family:var(--volus-font-body)}h1,h2,h3,h4,h5,h6{font-family:var(--volus-font-display);color:var(--volus-ink)}:is(h1,h2,h3,h4,h5,h6):is(.h1,.h2,.h3,.h4,.h5,.h6){color:var(--volus-ink)}a{color:var(--volus-accent-ink)}@media (prefers-reduced-motion: no-preference){body,.card{transition:background-color .2s var(--volus-ease-spring),color .2s var(--volus-ease-spring)}}.app-shell{display:flex;min-height:100vh;position:relative}.sidebar{width:264px;flex:none;background:var(--volus-surface);border-right:1px solid var(--volus-border);display:flex;flex-direction:column;transition:width .3s var(--volus-ease-spring);position:relative;z-index:20}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.app-shell.collapsed .sidebar{width:76px}.sidebar-head{display:flex;align-items:center;gap:10px;padding:16px;border-bottom:1px solid var(--volus-border)}.sidebar-brand{display:block;line-height:0}.sidebar-brand img{height:24px;width:auto}.sidebar-brand .brand-mark{display:none;height:26px}.app-shell.collapsed .sidebar-head{justify-content:center}.app-shell.collapsed .sidebar-brand .brand-full{display:none}.app-shell.collapsed .sidebar-brand .brand-mark{display:block}.sb-collapse{position:absolute;top:21px;right:-13px;width:26px;height:26px;border-radius:50%;border:1px solid var(--volus-border);background:var(--volus-surface);color:var(--volus-text-muted);display:flex;align-items:center;justify-content:center;box-shadow:var(--volus-shadow-sm);z-index:25;transition:transform .3s var(--volus-ease-spring)}.app-shell.collapsed .sb-collapse{transform:rotate(180deg)}.sb-nav{padding:6px 12px 12px}.sb-group-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--volus-text-faint);padding:14px 10px 6px}.app-shell.collapsed .sb-group-label{display:none}.sb-link{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:10px;text-decoration:none;color:var(--volus-text);font-size:13px;font-weight:600;margin-bottom:2px;position:relative;transition:background-color .15s,color .15s}.sb-link svg{width:17px;height:17px;flex:none}.sb-link:hover{background:var(--volus-surface-2);color:var(--volus-ink)}.sb-link.current{background:var(--volus-accent-soft);color:var(--volus-accent-ink)}.sb-link.current:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--volus-grad-brand)}.app-shell.collapsed .sb-link{justify-content:center;padding:10px}.app-shell.collapsed .sb-link .lbl{display:none}.sidebar-foot{border-top:1px solid var(--volus-border);padding:12px}.sb-guest-links{display:flex;flex-direction:column}.sb-user{display:flex;align-items:center;gap:10px;padding:8px;border-radius:12px;text-decoration:none;color:inherit}.sb-user:hover{background:var(--volus-surface-2)}.avatar-img{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:none}.who-role{display:flex;align-items:center;gap:6px;min-width:0}.who-role .who{font-size:12.5px;font-weight:700;color:var(--volus-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-logo{width:20px;height:20px;border-radius:50%;object-fit:contain;background:#fff;flex:none}.app-shell.collapsed .who-role,.app-shell.collapsed .sb-guest-links .lbl{display:none}.app-shell.collapsed .sb-user{justify-content:center}.sb-overlay,.mobile-topbar{display:none}.main-col{flex:1;min-width:0;display:flex;flex-direction:column}.icon-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--volus-border);background:var(--volus-surface);color:var(--volus-text-muted);display:flex;align-items:center;justify-content:center;flex:none;font:inherit;text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}.icon-btn:hover,.icon-btn:focus-visible{background:var(--volus-surface-2);color:var(--volus-ink)}.icon-btn svg{width:16px;height:16px}.icon-btn.dropdown-toggle:after{display:none}.icon-btn--danger{color:var(--volus-danger)}.icon-btn--danger:hover,.icon-btn--danger:focus-visible{background:var(--volus-danger-soft);color:var(--volus-danger);border-color:var(--volus-danger)}.icon-btn--success{color:var(--volus-green-ink)}.icon-btn--success:hover,.icon-btn--success:focus-visible{background:var(--volus-green-soft);color:var(--volus-green-ink);border-color:var(--volus-green)}.row-actions{display:flex;gap:6px}.row-actions .icon-btn{width:30px;height:30px}.row-actions .icon-btn svg{width:14px;height:14px}.app-main{padding:24px 26px 40px;flex:1}.app-main:focus{outline:none}.skip-link{position:absolute;top:12px;left:12px;z-index:2000;padding:10px 16px;border-radius:10px;background-color:var(--volus-btn-primary-bg);color:var(--volus-btn-primary-text);font-weight:700;text-decoration:none;transform:translateY(-200%)}.skip-link:focus{transform:none;outline:2px solid var(--volus-accent);outline-offset:2px}@media (max-width: 780px){.sidebar{position:fixed;top:0;bottom:0;left:0;width:264px!important;transform:translate(-100%);transition:transform .3s var(--volus-ease-spring);z-index:60}.app-shell.mobile-open .sidebar{transform:translate(0)}.sb-collapse{display:none}.sb-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#060a1273;opacity:0;pointer-events:none;transition:opacity .25s;z-index:50}.app-shell.mobile-open .sb-overlay{opacity:1;pointer-events:auto}.mobile-topbar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--volus-border);background:var(--volus-surface)}.mobile-brand img{height:20px}.app-main{padding:18px 16px 32px}}.card{background-color:var(--volus-surface);border:1px solid var(--volus-border);border-radius:16px;box-shadow:var(--volus-shadow-sm);color:var(--volus-text);overflow:hidden}.card>.card-header{background-color:var(--volus-surface-2);border-bottom:1px solid var(--volus-border)}.card>.card-footer{background-color:var(--volus-surface-2);border-top:1px solid var(--volus-border)}.btn{border-radius:10px}.btn-primary{--bs-btn-color: var(--volus-btn-primary-text);--bs-btn-bg: var(--volus-btn-primary-bg);--bs-btn-border-color: var(--volus-btn-primary-bg);--bs-btn-hover-color: var(--volus-btn-primary-text);--bs-btn-hover-bg: var(--volus-btn-primary-bg-hover);--bs-btn-hover-border-color: var(--volus-btn-primary-bg-hover);--bs-btn-active-color: var(--volus-btn-primary-text);--bs-btn-active-bg: var(--volus-btn-primary-bg-hover);--bs-btn-active-border-color: var(--volus-btn-primary-bg-hover);--bs-btn-disabled-color: var(--volus-btn-primary-text);--bs-btn-disabled-bg: var(--volus-btn-primary-bg);--bs-btn-disabled-border-color: var(--volus-btn-primary-bg)}.btn-success{--bs-btn-color: var(--volus-btn-success-text);--bs-btn-bg: var(--volus-btn-success-bg);--bs-btn-border-color: var(--volus-btn-success-bg);--bs-btn-hover-color: var(--volus-btn-success-text);--bs-btn-hover-bg: var(--volus-btn-success-bg-hover);--bs-btn-hover-border-color: var(--volus-btn-success-bg-hover);--bs-btn-active-color: var(--volus-btn-success-text);--bs-btn-active-bg: var(--volus-btn-success-bg-hover);--bs-btn-active-border-color: var(--volus-btn-success-bg-hover);--bs-btn-disabled-color: var(--volus-btn-success-text);--bs-btn-disabled-bg: var(--volus-btn-success-bg);--bs-btn-disabled-border-color: var(--volus-btn-success-bg)}.btn-secondary{--bs-btn-color: var(--volus-btn-secondary-text);--bs-btn-bg: var(--volus-btn-secondary-bg);--bs-btn-border-color: var(--volus-btn-secondary-bg);--bs-btn-hover-color: var(--volus-btn-secondary-text-hover);--bs-btn-hover-bg: var(--volus-btn-secondary-bg-hover);--bs-btn-hover-border-color: var(--volus-btn-secondary-bg-hover);--bs-btn-active-color: var(--volus-btn-secondary-text-hover);--bs-btn-active-bg: var(--volus-btn-secondary-bg-hover);--bs-btn-active-border-color: var(--volus-btn-secondary-bg-hover);--bs-btn-disabled-color: var(--volus-btn-secondary-text);--bs-btn-disabled-bg: var(--volus-btn-secondary-bg);--bs-btn-disabled-border-color: var(--volus-btn-secondary-bg)}.btn-danger{--bs-btn-color: var(--volus-btn-danger-text);--bs-btn-bg: var(--volus-btn-danger-bg);--bs-btn-border-color: var(--volus-btn-danger-bg);--bs-btn-hover-color: var(--volus-btn-danger-text);--bs-btn-hover-bg: var(--volus-btn-danger-bg-hover);--bs-btn-hover-border-color: var(--volus-btn-danger-bg-hover);--bs-btn-active-color: var(--volus-btn-danger-text);--bs-btn-active-bg: var(--volus-btn-danger-bg-hover);--bs-btn-active-border-color: var(--volus-btn-danger-bg-hover);--bs-btn-disabled-color: var(--volus-btn-danger-text);--bs-btn-disabled-bg: var(--volus-btn-danger-bg);--bs-btn-disabled-border-color: var(--volus-btn-danger-bg)}.btn-warning{--bs-btn-color: var(--volus-btn-warning-text);--bs-btn-bg: var(--volus-btn-warning-bg);--bs-btn-border-color: var(--volus-btn-warning-bg);--bs-btn-hover-color: var(--volus-btn-warning-text);--bs-btn-hover-bg: var(--volus-btn-warning-bg-hover);--bs-btn-hover-border-color: var(--volus-btn-warning-bg-hover);--bs-btn-active-color: var(--volus-btn-warning-text);--bs-btn-active-bg: var(--volus-btn-warning-bg-hover);--bs-btn-active-border-color: var(--volus-btn-warning-bg-hover);--bs-btn-disabled-color: var(--volus-btn-warning-text);--bs-btn-disabled-bg: var(--volus-btn-warning-bg);--bs-btn-disabled-border-color: var(--volus-btn-warning-bg)}.btn-dark{--bs-btn-color: var(--volus-btn-dark-text);--bs-btn-bg: var(--volus-btn-dark-bg);--bs-btn-border-color: var(--volus-btn-dark-bg);--bs-btn-hover-color: var(--volus-btn-dark-text);--bs-btn-hover-bg: var(--volus-btn-dark-bg-hover);--bs-btn-hover-border-color: var(--volus-btn-dark-bg-hover);--bs-btn-active-color: var(--volus-btn-dark-text);--bs-btn-active-bg: var(--volus-btn-dark-bg-hover);--bs-btn-active-border-color: var(--volus-btn-dark-bg-hover);--bs-btn-disabled-color: var(--volus-btn-dark-text);--bs-btn-disabled-bg: var(--volus-btn-dark-bg);--bs-btn-disabled-border-color: var(--volus-btn-dark-bg)}.btn-info{--bs-btn-color: var(--volus-accent-ink);--bs-btn-bg: var(--volus-accent-soft);--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--volus-accent-ink);--bs-btn-hover-bg: var(--volus-accent-soft-strong);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--volus-accent-ink);--bs-btn-active-bg: var(--volus-accent-soft-strong);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: var(--volus-accent-ink);--bs-btn-disabled-bg: var(--volus-accent-soft);--bs-btn-disabled-border-color: transparent}.btn-outline-secondary{--bs-btn-color: var(--volus-text);--bs-btn-border-color: var(--volus-border-strong);--bs-btn-hover-color: var(--volus-ink);--bs-btn-hover-bg: var(--volus-surface-2);--bs-btn-hover-border-color: var(--volus-border-strong);--bs-btn-active-color: var(--volus-ink);--bs-btn-active-bg: var(--volus-surface-sunken);--bs-btn-active-border-color: var(--volus-border-strong);--bs-btn-disabled-color: var(--volus-text-muted);--bs-btn-disabled-border-color: var(--volus-border)}.btn-outline-primary{--bs-btn-color: var(--volus-accent-ink);--bs-btn-border-color: var(--volus-accent);--bs-btn-hover-color: var(--volus-accent-ink);--bs-btn-hover-bg: var(--volus-accent-soft);--bs-btn-hover-border-color: var(--volus-accent);--bs-btn-active-color: var(--volus-accent-ink);--bs-btn-active-bg: var(--volus-accent-soft-strong);--bs-btn-active-border-color: var(--volus-accent);--bs-btn-disabled-color: var(--volus-accent-ink);--bs-btn-disabled-border-color: var(--volus-accent)}.bg-primary{background-color:var(--volus-btn-primary-bg)!important;color:var(--volus-btn-primary-text)}.bg-success{background-color:var(--volus-btn-success-bg)!important;color:var(--volus-btn-success-text)}.bg-secondary{background-color:var(--volus-btn-secondary-bg)!important;color:var(--volus-btn-secondary-text)}.bg-danger{background-color:var(--volus-btn-danger-bg)!important;color:var(--volus-btn-danger-text)}.bg-light{background-color:var(--volus-surface-2)!important}.bg-warning,.bg-warning.text-dark{background-color:var(--volus-btn-warning-bg)!important;color:var(--volus-btn-warning-text)!important}.text-primary{color:var(--volus-accent-ink)!important}.border-primary{border-color:var(--volus-accent)}.text-success{color:var(--volus-green-ink)!important}.border-success{border-color:var(--volus-green)}.text-secondary{color:var(--volus-text-muted)!important}.text-danger{color:var(--volus-danger-ink)!important}.text-dark{color:var(--volus-ink)!important}.border-secondary{border-color:var(--volus-border-strong)}.btn:focus-visible{outline:2px solid var(--volus-accent);outline-offset:2px}.form-control,.form-select{background-color:var(--volus-surface-2)}.form-control::placeholder,html .select2-container .select2-search__field::placeholder,html .select2-container--default .select2-selection .select2-selection__placeholder{color:var(--volus-text-muted);opacity:1}.form-control:focus,.form-select:focus,.form-check-input:focus{border-color:var(--volus-accent)!important;box-shadow:0 0 0 .25rem var(--volus-accent-ring)!important}.form-control:focus,.form-select:focus{background-color:var(--volus-surface)}.badge{border-radius:999px;font-weight:700;letter-spacing:.01em;padding:.4em .75em;font-size:max(.75em,.6875rem)}.alert{border:none;border-radius:12px}.alert-info{max-width:40rem}.table{font-size:13.5px}.table>:not(caption)>*>*{padding:12px 16px;color:var(--volus-text);border-color:var(--volus-border);vertical-align:middle}.table-bordered>:not(caption)>*{border-width:0}.table-bordered>:not(caption)>*>*{border-width:0 0 1px 0}.table thead th{background-color:var(--volus-surface-2);color:var(--volus-text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.table>tbody>tr:hover>*{background-color:var(--volus-surface-2)}.kpi-tile{background-color:var(--volus-surface);border:1px solid var(--volus-border);border-radius:16px;box-shadow:var(--volus-shadow-sm);padding:17px 17px 15px;display:flex;flex-direction:column;gap:9px}.kpi-tile__top{display:flex;align-items:center;justify-content:space-between}.kpi-tile__icon{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--volus-accent-soft);color:var(--volus-accent-ink)}.kpi-tile__icon svg{width:16px;height:16px}.kpi-tile__trend{font-size:11px;font-weight:800;color:var(--volus-green-ink)}.kpi-tile__value{font-family:var(--volus-font-display);font-size:25px;font-weight:700;color:var(--volus-ink);font-variant-numeric:tabular-nums}.kpi-tile__label{font-size:12px;color:var(--volus-text-muted);font-weight:600}.app-footer{margin-top:auto;border-top:1px solid var(--volus-border);padding:18px 26px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}.app-footer__col{display:flex;align-items:center;gap:18px;font-size:12.5px;color:var(--volus-text-faint)}.app-footer__col--start{justify-content:flex-start}.app-footer__col--center{justify-content:center}.app-footer__col--end{justify-content:flex-end}.app-footer__col--center img{height:18px;width:auto;opacity:.75}.app-footer__col--end a{color:var(--volus-text-muted);text-decoration:none;font-size:12.5px}.app-footer__col--end a:hover{color:var(--volus-accent-ink);text-decoration:underline}.app-footer__actions{display:flex;align-items:center}.app-footer__actions .icon-btn{width:28px;height:28px;border:none;background:transparent}.app-footer__actions .icon-btn svg{width:15px;height:15px}@media (max-width: 780px){.app-footer{grid-template-columns:1fr;justify-items:center;text-align:center;gap:10px;padding:16px}.app-footer__col--start,.app-footer__col--end{justify-content:center}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.fade-up{opacity:1}@media (prefers-reduced-motion: no-preference){.fade-up{opacity:0;animation:volus-fade-up .5s var(--volus-ease-spring) forwards;animation-delay:var(--anim-delay, 0ms)}}@keyframes volus-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card-interactive{cursor:pointer;transition:transform .2s var(--volus-ease-pop),box-shadow .2s}.card-interactive:hover{transform:translateY(-4px);box-shadow:var(--volus-shadow-md),var(--volus-shadow-glow)}.btn{transition:transform .15s var(--volus-ease-pop),background-color .15s,border-color .15s}.btn:active{transform:scale(.97)}.greeting{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;flex-wrap:wrap}.greeting .sub{color:var(--volus-text-muted);font-size:13px;margin-top:5px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.content-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:14px}@media (max-width: 980px){.content-grid{grid-template-columns:1fr}}.panel{padding:19px 19px 6px;margin-bottom:16px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.panel-head h2{font-size:15px}.panel-head a{font-size:12px;font-weight:700;color:var(--volus-accent-ink);text-decoration:none}.event-row,.activity-row{display:flex;gap:12px;align-items:center;padding:11px 0;border-top:1px solid var(--volus-border)}.event-row:first-child,.activity-row:first-child{border-top:none}.event-date{width:42px;height:42px;border-radius:10px;background:var(--volus-surface-2);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}.event-date .day{font-family:var(--volus-font-display);font-weight:700;font-size:14px;color:var(--volus-ink);line-height:1}.event-date .month{font-size:11px;text-transform:uppercase;color:var(--volus-text-muted);font-weight:800}.row-title{font-size:13px;font-weight:600;color:var(--volus-ink)}.row-meta{font-size:11.5px;color:var(--volus-text-muted);margin-top:2px}@media (max-width: 980px){.kpi-grid{grid-template-columns:1fr 1fr}}@media (max-width: 560px){.kpi-grid{grid-template-columns:1fr}}.obiettivo-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:999px;background:var(--volus-accent-soft);color:var(--volus-accent-ink);font-size:11.5px;font-weight:700;margin:0 4px 4px 0}.obiettivo-badge__icon{width:18px;height:18px;border-radius:50%;object-fit:contain;background:#fff;flex:none}.obiettivo-badge__label{line-height:1}.auth-logo{display:block;width:55%;max-width:220px;margin:0 auto .75rem}.auth-card .card-header{display:flex;flex-direction:column;align-items:center;gap:.25rem;background:transparent;border-bottom:none}.auth-card.border-primary{border:none}.auth-card .card-body>p:first-child{margin-bottom:1rem}.auth-shell{flex:1 1 auto;display:flex;min-height:0;background-color:var(--volus-bg);background-repeat:no-repeat;background-size:cover;background-position:center}.auth-shell__brand{flex:0 0 62%;max-width:720px;display:none;flex-direction:column;justify-content:center;padding:4rem 3.5rem}.auth-shell__brand-logo{width:min(45%,170px);margin-bottom:2rem}.auth-shell__brand .auth-shell__brand-title{font-family:var(--volus-font-display);line-height:1.2;font-size:1.65rem;font-weight:800;color:var(--volus-ink);text-wrap:balance;margin-bottom:.75rem;text-shadow:0 1px 16px var(--volus-surface),0 1px 2px var(--volus-surface)}.auth-shell__brand p{color:var(--volus-text);max-width:34ch;margin-bottom:0;text-shadow:0 1px 16px var(--volus-surface),0 1px 2px var(--volus-surface)}.auth-shell__form{flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.auth-shell__form-toolbar{display:flex;justify-content:flex-end;padding:1.25rem 1.5rem 0}.auth-shell__form-content{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-shell__form-content .auth-card{width:100%;max-width:340px}.auth-shell__form-content .btn{border-radius:999px;font-weight:700;padding:.65rem 1.5rem}@media (min-width: 992px){.auth-shell__brand{display:flex}.auth-shell__form{background-color:var(--volus-surface)}.auth-shell__form-content .auth-card{border:0;box-shadow:none;background:transparent}.auth-shell__form-content .auth-card .card-header{background:transparent;border-bottom:0;padding:0 0 1.5rem}.auth-shell__form-content .auth-card .card-body{padding-left:0;padding-right:0}.auth-shell__form-content .auth-card .auth-logo{display:none}}.page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.page-header h1{font-size:1.5rem;margin:0}.page-header__actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.detail-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem 2rem}.detail-list--single{grid-template-columns:1fr}.detail-row{min-width:0}.detail-row--full{grid-column:1 / -1}.detail-row__label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--volus-text-muted);margin-bottom:.25rem}.detail-row__value{color:var(--volus-ink);word-wrap:break-word}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:3rem 1rem;color:var(--volus-text-muted);text-align:center}.empty-state svg{width:40px;height:40px;color:var(--volus-text-faint)}.area-geografica__toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.area-geografica__toolbar .form-control{flex:1 1 220px}.area-geografica__regioni{max-height:420px;overflow-y:auto;border-top:1px solid var(--volus-border-strong);border-bottom:1px solid var(--volus-border-strong)}.area-geografica__regione+.area-geografica__regione{border-top:1px solid var(--volus-border)}.area-geografica__regione-header{display:flex;align-items:center;gap:.75rem;padding:0 .25rem}.area-geografica__regione-header .form-check-input{flex-shrink:0;margin-top:0}.area-geografica__espandi{display:flex;flex:1;align-items:center;gap:.5rem;padding:.6rem 0;border:0;background:none;color:var(--volus-ink);font-weight:600;text-align:left}.area-geografica__nome{flex:1}.area-geografica__conteggio{color:var(--volus-text-muted);font-size:12px;font-variant-numeric:tabular-nums}.area-geografica__chevron{width:.5rem;height:.5rem;border-right:2px solid var(--volus-text-muted);border-bottom:2px solid var(--volus-text-muted);transform:rotate(-45deg);transition:transform .15s ease}.area-geografica__espandi[aria-expanded=true] .area-geografica__chevron{transform:rotate(45deg)}.area-geografica__province{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.25rem 1rem;padding:.25rem .75rem .75rem 2.5rem;background-color:var(--volus-surface-2)}.area-geografica [hidden]{display:none!important}.filter-multi-select .placeholder{opacity:1;color:var(--volus-text-muted)}html .select2-container--default .select2-selection--multiple{background-color:var(--volus-surface-2);border-color:var(--volus-border-strong)}html .select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:var(--volus-surface);border-color:var(--volus-border-strong);color:var(--volus-ink)}@media (pointer: coarse){.icon-btn,.row-actions .icon-btn,.app-footer__actions .icon-btn{width:44px;height:44px}.row-actions{gap:8px}.btn{--bs-btn-padding-y: .6rem}.btn-sm{--bs-btn-padding-y: .7rem}.sb-link,.form-control,.form-select{min-height:44px}}
