.app-shell{background:var(--color-midnight);min-height:100vh;display:flex}.app-sidebar{background:linear-gradient(180deg, var(--color-surface) 0%, var(--color-midnight) 100%);border-right:1px solid var(--color-border);z-index:100;flex-direction:column;width:260px;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;bottom:0;left:0}.app-sidebar-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.app-sidebar-logo{align-items:center;gap:.75rem;text-decoration:none;display:flex}.app-sidebar-logo img{border-radius:.375rem}.app-sidebar-brand{background:linear-gradient(135deg, var(--color-accent-light), var(--color-cyan));-webkit-text-fill-color:transparent;background-clip:text;font-size:1.125rem;font-weight:700}.sidebar-collapse-btn{width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;transition:all .2s;display:flex}.sidebar-collapse-btn:hover{background:var(--overlay-5);color:var(--color-text-primary)}.app-sidebar-nav{flex-direction:column;flex:1;gap:.25rem;padding:1rem .75rem;display:flex;overflow-y:auto}.app-nav-section{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-top:1.5rem;margin-bottom:.5rem;padding:0 .75rem;font-size:.6875rem;font-weight:600}.app-nav-section:first-child{margin-top:0}.app-nav-link{color:var(--color-text-secondary);border-radius:.5rem;align-items:center;gap:.75rem;padding:.625rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.app-nav-link:hover{background:var(--overlay-4);color:var(--color-text-primary)}.app-nav-link.active{background:rgba(var(--accent-base-rgb), .1);color:var(--color-accent-light);border:1px solid rgba(var(--accent-base-rgb), .15)}.app-nav-link svg{opacity:.7;flex-shrink:0;width:18px;height:18px}.app-nav-link.active svg{opacity:1}.app-sidebar-footer{border-top:1px solid var(--color-border);padding:1rem 1.5rem}.app-sidebar-footer a{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.8125rem;text-decoration:none;transition:color .2s;display:flex}.app-sidebar-footer a:hover{color:var(--color-text-secondary)}.app-version{color:var(--color-text-muted);opacity:.5;font-size:.6875rem}.app-shell.sidebar-collapsed .app-sidebar{width:64px}.app-shell.sidebar-collapsed .app-sidebar-brand,.app-shell.sidebar-collapsed .app-nav-section,.app-shell.sidebar-collapsed .app-nav-link span,.app-shell.sidebar-collapsed .app-sidebar-footer a span,.app-shell.sidebar-collapsed .app-sidebar-footer .app-version,.app-shell.sidebar-collapsed .sidebar-collapse-btn svg{display:none}.app-shell.sidebar-collapsed .sidebar-collapse-btn svg{display:block;transform:rotate(180deg)}.app-shell.sidebar-collapsed .app-sidebar-header{justify-content:center;padding:1.25rem .5rem}.app-shell.sidebar-collapsed .app-sidebar-nav{align-items:center;padding:1rem .5rem}.app-shell.sidebar-collapsed .app-nav-link{justify-content:center;padding:.625rem}.app-shell.sidebar-collapsed .app-sidebar-footer{align-items:center;padding:1rem .5rem}.app-shell.sidebar-collapsed .app-main{margin-left:64px}.app-main{flex-direction:column;flex:1;min-height:100vh;margin-left:260px;display:flex}.app-topbar{z-index:50;background:var(--topbar-bg);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;height:64px;padding:0 2rem;display:flex;position:sticky;top:0}.app-topbar-left{align-items:center;gap:1rem;display:flex}.app-topbar-title{color:var(--color-text-primary);font-size:1rem;font-weight:600}.app-topbar-right{align-items:center;gap:1rem;display:flex}.app-topbar-tenant{color:var(--color-text-muted);font-size:.8125rem}.app-user-menu{position:relative}.app-user-trigger{cursor:pointer;color:inherit;background:0 0;border:none;align-items:center;gap:.75rem;padding:0;display:flex}.app-user-avatar{background:linear-gradient(135deg, var(--color-accent), var(--color-cyan));width:32px;height:32px;color:var(--color-midnight);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.app-user-dropdown{background:var(--color-bg-surface,#111827);border:1px solid var(--color-border,#ffffff1a);z-index:100;border-radius:.5rem;min-width:220px;padding:.5rem 0;display:none;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 10px 25px #0006}.app-user-dropdown.open{display:block}.app-user-dropdown-email{color:var(--color-text-muted,#94a3b8);word-break:break-all;padding:.5rem 1rem;font-size:.75rem}.app-user-dropdown-divider{background:var(--color-border,#ffffff1a);height:1px;margin:.25rem 0}.app-user-dropdown-item{color:var(--color-text-secondary,#cbd5e1);align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8125rem;text-decoration:none;transition:background .15s;display:flex}.app-user-dropdown-item:hover{background:#ffffff0d}.app-user-dropdown-logout{color:#f87171}.app-user-dropdown-logout:hover{background:#f871711a}.app-mobile-toggle{border:1px solid var(--color-border);width:36px;height:36px;color:var(--color-text-primary);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;transition:background .2s;display:none}.company-switcher{position:relative}.company-switcher-btn{color:var(--color-text-primary);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:.5rem;align-items:center;gap:.5rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:600;transition:all .2s;display:flex}.company-switcher-btn:hover{border-color:var(--color-border-light);background:#ffffff0a}.company-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.company-switcher-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.company-switcher-dropdown{background:var(--color-surface-alt);border:1px solid var(--color-border-light);z-index:200;border-radius:.75rem;min-width:240px;display:none;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden;box-shadow:0 12px 40px #0000004d}.company-switcher-dropdown.open{display:block}.company-dropdown-header{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);padding:.75rem 1rem .5rem;font-size:.6875rem;font-weight:600}.company-dropdown-item{width:100%;color:var(--color-text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.75rem;padding:.625rem 1rem;font-size:.8125rem;transition:background .15s;display:flex}.company-dropdown-item:hover{color:var(--color-text-primary);background:#ffffff0a}.company-dropdown-item.active{color:var(--color-accent-light);background:#14b8a614}.company-dropdown-info{flex-direction:column;flex:1;min-width:0;display:flex}.company-dropdown-name{color:inherit;font-weight:600}.company-dropdown-role{color:var(--color-text-muted);font-size:.6875rem}.company-check{color:var(--color-accent);flex-shrink:0}.app-footer{font-size:.6875rem;font-family:var(--font-mono);color:var(--color-text-muted);opacity:.5;border-top:1px solid var(--color-border);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 2rem;display:flex}.app-footer-sep{opacity:.4}.company-single-name{color:var(--color-text-secondary);align-items:center;gap:.5rem;padding:0 .5rem;font-size:.8125rem;font-weight:600;display:flex}.app-mobile-toggle:hover{background:var(--overlay-5)}.app-content{flex:1;padding:2rem}.app-sidebar-overlay{background:var(--backdrop-base);z-index:90;display:none;position:fixed;inset:0}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2rem;display:grid}.kpi-card{background:linear-gradient(145deg, var(--color-surface-alt), var(--color-surface));border:1px solid var(--color-border);border-radius:.875rem;padding:1.5rem;transition:border-color .3s,box-shadow .3s}.kpi-card:hover{border-color:rgba(var(--accent-base-rgb), .2);box-shadow:0 4px 20px var(--shadow-base)}.kpi-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:500}.kpi-value{font-family:var(--font-mono);color:var(--color-text-primary);font-size:1.75rem;font-weight:700;line-height:1.2}.kpi-value.positive{color:var(--color-success)}.kpi-value.negative{color:var(--color-danger)}.kpi-sub{color:var(--color-text-muted);margin-top:.375rem;font-size:.75rem}.kpi-icon{border-radius:.5rem;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:.75rem;font-size:1.125rem;display:flex}.kpi-icon.teal{background:rgba(var(--accent-base-rgb), .12);color:var(--color-accent-light)}.kpi-icon.cyan{color:var(--color-cyan);background:#06b6d41f}.kpi-icon.amber{background:var(--color-warning-bg);color:var(--color-warning)}.kpi-icon.rose{color:#fb7185;background:#fb71851f}.kpi-icon.indigo{color:#818cf8;background:#818cf81f}.kpi-icon.green{background:var(--color-success-bg);color:var(--color-success)}.app-section{margin-bottom:2rem}.app-section-title{color:var(--color-text-primary);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.125rem;font-weight:700;display:flex}.app-section-title svg{width:20px;height:20px;color:var(--color-accent)}.app-card{background:linear-gradient(145deg, var(--color-surface-alt), var(--color-surface));border:1px solid var(--color-border);border-radius:.875rem;padding:1.5rem}.mini-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem;display:grid}.mini-card{background:var(--color-surface);border:1px solid var(--color-border);text-align:center;border-radius:.75rem;padding:1.25rem}.mini-card-label{color:var(--color-text-muted);margin-bottom:.375rem;font-size:.75rem;font-weight:500}.mini-card-value{font-family:var(--font-mono);color:var(--color-text-primary);font-size:1.25rem;font-weight:700}.mini-card-sub{color:var(--color-text-muted);margin-top:.25rem;font-size:.6875rem}.status-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem;display:grid}.status-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.75rem;align-items:center;gap:1rem;padding:1.25rem;display:flex}.status-dot{border-radius:9999px;flex-shrink:0;width:10px;height:10px}.status-dot.green{background:var(--color-success);box-shadow:0 0 8px var(--color-success-border)}.status-dot.yellow{background:var(--color-warning);box-shadow:0 0 8px var(--color-warning-border)}.status-dot.red{background:var(--color-danger);box-shadow:0 0 8px var(--color-danger-border)}.status-dot.gray{background:var(--color-text-muted)}.status-info{flex:1;min-width:0}.status-label{color:var(--color-text-primary);font-size:.8125rem;font-weight:600}.status-detail{color:var(--color-text-muted);margin-top:.125rem;font-size:.75rem}.data-table-wrapper{border:1px solid var(--color-border);border-radius:.875rem;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.8125rem}.data-table thead{background:var(--color-surface);z-index:1;position:sticky;top:0}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:.875rem 1rem;font-size:.6875rem;font-weight:600}.data-table th.text-right,.data-table td.text-right{text-align:right}.data-table th.text-center,.data-table td.text-center{text-align:center}.data-table tbody tr{border-bottom:1px solid var(--color-border);transition:background .15s}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:var(--overlay-2)}.data-table tbody tr:nth-child(2n){background:var(--overlay-1)}.data-table tbody tr:nth-child(2n):hover{background:var(--overlay-3)}.data-table td{color:var(--color-text-secondary);white-space:nowrap;padding:.75rem 1rem}.data-table .mono{font-family:var(--font-mono);font-size:.8125rem}.data-table .uuid{font-family:var(--font-mono);color:var(--color-text-muted);text-overflow:ellipsis;max-width:120px;font-size:.6875rem;overflow:hidden}.data-table .amount{font-family:var(--font-mono);color:var(--color-text-primary);font-weight:600}.data-table .totals-row td{color:var(--color-text-primary);border-top:2px solid var(--color-border-light);background:var(--overlay-2);font-weight:700}.badge{letter-spacing:.02em;white-space:nowrap;border-radius:9999px;align-items:center;gap:.25rem;padding:.1875rem .625rem;font-size:.6875rem;font-weight:600;display:inline-flex}.badge-green{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.badge-yellow{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.badge-red{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border)}.badge-blue{color:#60a5fa;background:#60a5fa1f;border:1px solid #60a5fa33}.badge-gray{color:#94a3b8;background:#94a3b81f;border:1px solid #94a3b833}.badge-teal{background:rgba(var(--accent-base-rgb), .12);color:var(--color-accent-light);border:1px solid rgba(var(--accent-base-rgb), .2)}.filter-bar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.875rem;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex}.filter-group{align-items:center;gap:.5rem;display:flex}.filter-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);white-space:nowrap;font-size:.6875rem;font-weight:600}.filter-input,.filter-select{background:var(--color-midnight);border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:.5rem;padding:.5rem .75rem;font-family:inherit;font-size:.8125rem;transition:border-color .2s}.filter-input:focus,.filter-select:focus{border-color:rgba(var(--accent-base-rgb), .4);box-shadow:0 0 0 2px rgba(var(--accent-base-rgb), .1);outline:none}.filter-input::placeholder{color:var(--color-text-muted)}.filter-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right .625rem center;background-repeat:no-repeat;padding-right:2rem}.filter-toggle{border:1px solid var(--color-border);border-radius:.5rem;display:inline-flex;overflow:hidden}.filter-toggle-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:all .2s}.filter-toggle-btn.active{background:rgba(var(--accent-base-rgb), .12);color:var(--color-accent-light)}.filter-toggle-btn:hover:not(.active){background:var(--overlay-3);color:var(--color-text-secondary)}.pagination{justify-content:space-between;align-items:center;margin-top:1rem;padding:1rem 0;display:flex}.pagination-info{color:var(--color-text-muted);font-size:.8125rem}.pagination-controls{align-items:center;gap:.25rem;display:flex}.pagination-btn{min-width:36px;height:36px;color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;padding:0 .5rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:flex}.pagination-btn:hover:not(:disabled){background:var(--overlay-4);border-color:var(--color-border-light)}.pagination-btn.active{background:rgba(var(--accent-base-rgb), .12);color:var(--color-accent-light);border-color:rgba(var(--accent-base-rgb), .2)}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}.btn-action{color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-action:hover{background:var(--overlay-4);border-color:var(--color-border-light);color:var(--color-text-primary)}.btn-action svg{width:14px;height:14px}.btn-app{cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-app-primary{background:linear-gradient(135deg, var(--color-accent), var(--color-cyan));color:var(--color-midnight);border:none}.btn-app-primary:hover{box-shadow:0 4px 12px var(--color-accent-glow);transform:translateY(-1px)}.btn-app-secondary{color:var(--color-text-primary);border:1px solid var(--color-border-light);background:0 0}.btn-app-secondary:hover{background:var(--overlay-4);border-color:var(--color-accent);color:var(--color-accent-light)}.alert-list{flex-direction:column;gap:.75rem;display:flex}.alert-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.75rem;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;transition:border-color .2s;display:flex}.alert-item:hover{border-color:var(--color-border-light)}.alert-item.severity-critical{border-left:3px solid var(--color-danger)}.alert-item.severity-warning{border-left:3px solid var(--color-warning)}.alert-item.severity-info{border-left:3px solid #60a5fa}.alert-icon{flex-shrink:0;margin-top:.125rem;font-size:1.125rem}.alert-body{flex:1;min-width:0}.alert-title{color:var(--color-text-primary);margin-bottom:.25rem;font-size:.875rem;font-weight:600}.alert-desc{color:var(--color-text-muted);font-size:.8125rem;line-height:1.5}.alert-time{color:var(--color-text-muted);white-space:nowrap;margin-top:.125rem;font-size:.6875rem}.year-selector{align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.year-btn{color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s}.year-btn.active{background:rgba(var(--accent-base-rgb), .12);color:var(--color-accent-light);border-color:rgba(var(--accent-base-rgb), .2)}.year-btn:hover:not(.active){background:var(--overlay-3);color:var(--color-text-secondary)}.tax-positive{color:var(--color-danger);font-weight:600}.tax-negative{color:var(--color-success);font-weight:600}.tax-zero{color:var(--color-text-muted)}.chart-placeholder{background:var(--color-surface);border:1px dashed var(--color-border-light);min-height:200px;color:var(--color-text-muted);border-radius:.75rem;justify-content:center;align-items:center;font-size:.875rem;display:flex}.search-bar{position:relative}.search-bar input{background:var(--color-midnight);border:1px solid var(--color-border);width:100%;color:var(--color-text-primary);border-radius:.5rem;padding:.5rem .75rem .5rem 2.25rem;font-family:inherit;font-size:.8125rem;transition:border-color .2s}.search-bar input:focus{border-color:rgba(var(--accent-base-rgb), .4);box-shadow:0 0 0 2px rgba(var(--accent-base-rgb), .1);outline:none}.search-bar input::placeholder{color:var(--color-text-muted)}.search-bar svg{width:14px;height:14px;color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.two-col{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.empty-state-icon{opacity:.3;margin-bottom:1rem;font-size:3rem}.empty-state-title{color:var(--color-text-primary);margin-bottom:.5rem;font-size:1.125rem;font-weight:600}.empty-state-desc{color:var(--color-text-muted);max-width:400px;font-size:.875rem;line-height:1.6}.error-banner{border:1px solid var(--color-danger-border);color:#fca5a5;background:#f8717114;border-radius:.75rem;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.875rem;display:flex}@media (width<=1024px){.kpi-grid,.mini-grid{grid-template-columns:repeat(2,1fr)}.status-grid{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}}@media (width<=768px){.app-sidebar{width:280px;transform:translate(-100%)}.app-sidebar.open{transform:translate(0)}.app-sidebar-overlay.open{display:block}.app-main{margin-left:0}.app-mobile-toggle{display:flex}.app-content{padding:1.25rem}.kpi-grid,.mini-grid{grid-template-columns:1fr 1fr;gap:.75rem}.status-grid{grid-template-columns:1fr;gap:.75rem}.filter-bar{flex-direction:column;align-items:stretch}.filter-group{flex-wrap:wrap}.app-topbar{padding:0 1.25rem}.app-topbar-tenant{display:none}.pagination{flex-direction:column;align-items:stretch;gap:.75rem}.pagination-controls{justify-content:center}}@media (width<=480px){.kpi-grid,.mini-grid{grid-template-columns:1fr}}.demo-ribbon[data-astro-cid-44nd5zgy]{z-index:200;backdrop-filter:blur(12px);background:linear-gradient(90deg,#f59e0b1f,#ef44441f);border-bottom:1px solid #f59e0b40;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;padding:.5rem 1.5rem;font-size:.8125rem;display:flex;position:sticky;top:0}.demo-ribbon-badge[data-astro-cid-44nd5zgy]{color:#f59e0b;letter-spacing:.08em;background:#f59e0b33;border:1px solid #f59e0b4d;border-radius:9999px;padding:.125rem .5rem;font-size:.625rem;font-weight:700}.demo-ribbon-text[data-astro-cid-44nd5zgy]{color:var(--color-text-muted)}.demo-ribbon-cta[data-astro-cid-44nd5zgy]{color:var(--color-accent-light);text-underline-offset:2px;font-weight:600;text-decoration:underline}.demo-unavailable[data-astro-cid-44nd5zgy]{opacity:.4;pointer-events:auto;cursor:default}.demo-bottom-cta[data-astro-cid-44nd5zgy]{text-align:center;background:linear-gradient(135deg,#14b8a60f,#06b6d40f);border:1px solid #14b8a626;border-radius:.875rem;margin-top:3rem;padding:3rem 2rem}.demo-bottom-cta[data-astro-cid-44nd5zgy] h2[data-astro-cid-44nd5zgy]{color:var(--color-text-primary);margin-bottom:.5rem;font-size:1.25rem;font-weight:700}.demo-bottom-cta[data-astro-cid-44nd5zgy] p[data-astro-cid-44nd5zgy]{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:.875rem}.app-shell[data-astro-cid-44nd5zgy]{min-height:calc(100vh - 37px)}
