html{background:var(--color-page-background)}body{margin:0;background:var(--color-page-background);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-base);font-variant-numeric:tabular-nums}bdi,.ltr{unicode-bidi:isolate}.muted{color:var(--color-muted-text)}.shell{display:flex;flex-wrap:wrap;min-height:100vh}.side-menu{flex:1 1 248px;max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:22px;padding:20px 14px;background:var(--color-side-menu);border-inline-start:1px solid var(--color-side-menu-border);color:var(--color-side-menu-text)}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px}.brand-mark{width:30px;height:30px;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-accent-text);display:flex;align-items:center;justify-content:center;font-weight:700}.brand-name{font-weight:700;font-size:17px;color:#fff}.menu-group{display:flex;flex-direction:column;gap:2px}.menu-heading{font-size:var(--font-size-small);font-weight:600;padding:6px 10px;opacity:.8}.menu-link{display:block;padding:10px;border-radius:var(--radius-control);color:var(--color-side-menu-text);text-decoration:none}.menu-link:hover{background:var(--color-side-menu-border)}.menu-link[aria-current=page]{background:var(--color-side-menu-active);color:#fff;font-weight:600}.user-block{margin-top:auto;border-top:1px solid var(--color-side-menu-border);padding:14px 10px 0;display:flex;flex-direction:column;gap:4px}.user-name{color:#fff;font-weight:600}.user-role{font-size:var(--font-size-small);opacity:.8}.theme-switch{margin-top:10px;font:inherit;font-size:13px;min-height:40px;padding:9px 10px;background:transparent;color:var(--color-side-menu-text);border:1px solid var(--color-side-menu-border);border-radius:var(--radius-control);cursor:pointer}.theme-switch:hover{border-color:var(--color-accent)}.page{flex:999 1 560px;min-width:0;box-sizing:border-box;padding:24px 28px 32px;display:flex;flex-direction:column;gap:18px}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}.page-header h1{margin:0;font-size:26px;font-weight:700}.page-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.field{display:flex;flex-direction:column;gap:4px;font-size:var(--font-size-small);color:var(--color-muted-text)}.control{font:inherit;font-size:var(--font-size-base);color:var(--color-text);min-height:37px;box-sizing:border-box;padding:8px 10px;border:1px solid var(--color-input-border);border-radius:var(--radius-control);background:var(--color-surface)}.company-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-color:var(--color-accent);background:var(--color-accent-soft)}.gate{max-width:480px;margin:15vh auto 0;padding:0 16px;display:flex;flex-direction:column;gap:12px}.button{align-self:flex-start;padding:10px 18px;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-accent-text);text-decoration:none;font-weight:600}.button:hover{background:var(--color-accent-hover)}.button-secondary{font:inherit;font-size:13px;min-height:44px;padding:9px 14px;background:transparent;color:var(--color-text);border:1px solid var(--color-input-border);border-radius:var(--radius-control);cursor:pointer}.button-secondary:hover{border-color:var(--color-accent)}.link-button{font:inherit;align-self:flex-start;padding:4px 0;background:none;border:0;color:var(--color-accent);cursor:pointer}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:16px 18px;display:flex;flex-direction:column;gap:6px}.card h2{margin:0;font-size:15px;font-weight:600}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.slicer{position:relative}.slicer-summary{display:flex;flex-direction:column;gap:2px;min-width:130px;cursor:pointer;list-style:none}.slicer-summary::-webkit-details-marker{display:none}.slicer-label{font-size:var(--font-size-small);color:var(--color-muted-text)}.slicer-panel{position:absolute;inset-inline-start:0;z-index:10;margin-top:4px;min-width:220px;max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.slicer-option{display:flex;align-items:center;gap:8px;min-height:32px}.filters-toggle>summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.kpi{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:16px 18px;display:flex;flex-direction:column;gap:6px}.kpi-label{font-size:13px;color:var(--color-muted-text)}.kpi-value{font-size:28px;font-weight:700}.kpi-value.negative{color:var(--color-negative)}.kpi-note{font-size:var(--font-size-small);color:var(--color-muted-text)}.error-box{padding:10px 14px;border-radius:var(--radius-control);background:var(--color-negative-background);color:var(--color-negative)}.grid-block{display:flex;flex-direction:column;gap:8px}.grid-toolbar{display:flex;justify-content:flex-end}.mobile-shell{display:flex;flex-direction:column;height:100dvh}.mobile-header{flex:0 0 auto;padding:12px 14px 10px;background:var(--color-side-menu);border-bottom:1px solid var(--color-side-menu-border);color:var(--color-side-menu-text)}.page-picker{display:flex;flex-direction:column;gap:2px;font-size:var(--font-size-small)}.page-picker select{font:inherit;font-size:18px;font-weight:700;color:var(--color-text);background:transparent;border:0;padding:2px 0;min-height:44px;max-width:100%}.mobile-main{flex:1 1 auto;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px}.tab-bar{flex:0 0 auto;display:flex;background:var(--color-side-menu);border-top:1px solid var(--color-side-menu-border)}.tab{flex:1 1 0;min-height:56px;display:flex;align-items:center;justify-content:center;color:var(--color-side-menu-text);text-decoration:none;font-size:13px}.tab[aria-current=page]{color:var(--color-accent);font-weight:600;box-shadow:inset 0 3px 0 var(--color-accent)}.mobile-main .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-main .kpi{padding:12px}.mobile-main .kpi-value{font-size:22px}.account{display:flex;flex-direction:column;gap:12px}.pivot-card-title{font-weight:600}.pivot-card-rows{display:grid;grid-template-columns:1fr auto;gap:4px 12px;font-size:13px}.mobile-main .page-header h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.editor{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.editor-tables{flex:1 1 210px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:8px;display:flex;flex-direction:column;gap:2px}.editor-tables-title{font-size:var(--font-size-small);font-weight:600;padding:6px 8px}.editor-table-link{font:inherit;font-size:13.5px;text-align:start;padding:8px;min-height:36px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--color-text);cursor:pointer}.editor-table-link:hover{background:var(--color-accent-soft)}.editor-table-link[aria-current=page]{background:var(--color-accent-soft);font-weight:600}.editor-main{flex:999 1 640px;min-width:0;display:flex;flex-direction:column;gap:12px}.editor-actions{display:flex;flex-wrap:wrap;gap:8px}.button-secondary.danger{color:var(--color-negative)}.button-secondary:disabled,.button:disabled{opacity:.5;cursor:not-allowed}button.button{font:inherit;border:0;cursor:pointer;min-height:44px}.admin-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--color-border)}.admin-tab{padding:10px 14px;min-height:24px;color:var(--color-muted-text);text-decoration:none;border-bottom:3px solid transparent}.admin-tab[aria-selected=true]{color:var(--color-text);font-weight:600;border-bottom-color:var(--color-accent)}.admin-stack{display:flex;flex-direction:column;gap:16px}.admin-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;align-items:start}.admin-split{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.admin-list{flex:1 1 260px;display:flex;flex-direction:column;gap:8px}.admin-list ul{list-style:none;margin:0;padding:0;max-height:520px;overflow-y:auto;display:flex;flex-direction:column}.admin-list .editor-table-link{width:100%}.admin-detail{flex:999 1 420px;min-width:0;display:flex;flex-direction:column;gap:12px}.admin-form{display:flex;flex-direction:column;gap:12px}.check-list{border:1px solid var(--color-border);border-radius:var(--radius-control);padding:8px 12px;display:flex;flex-wrap:wrap;gap:4px 16px;max-height:220px;overflow-y:auto}.check-list legend{font-size:var(--font-size-small);color:var(--color-muted-text);padding:0 4px}.check{display:inline-flex;align-items:center;gap:6px;min-height:32px}.admin-table{width:100%;border-collapse:collapse;font-size:13.5px}.admin-table th,.admin-table td{text-align:start;padding:8px 10px;border-bottom:1px solid var(--color-border);vertical-align:top}.admin-table th{font-size:var(--font-size-small);color:var(--color-muted-text);font-weight:600}.inline-form{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}.control.narrow{width:110px}.time-list{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.notice-box{padding:10px 14px;border-radius:var(--radius-control);background:var(--color-accent-soft)}.request-list{margin:0;padding-inline-start:18px;font-size:13px}.alert-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.alert-item{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--color-border);border-inline-start:4px solid var(--color-muted-text);border-radius:var(--radius-control)}.alert-item.error{border-inline-start-color:var(--color-negative)}.alert-item.warning{border-inline-start-color:var(--color-accent)}.alert-message{white-space:pre-line}.log-value{max-width:260px;overflow-wrap:anywhere;font-size:12px}.warning-box{padding:10px 14px;border-radius:var(--radius-control);background:var(--color-negative-background);color:var(--color-text);border-inline-start:4px solid var(--color-negative)}.warning-box p{margin:0 0 4px}.form-actions{display:flex;flex-wrap:wrap;gap:8px}.report-view{max-width:none;padding:16px}.report-view .grid-toolbar{display:none}.login{--login-brand: #4054b2;--login-brand-xlight: #eef0fb;--login-accent: #ff6900;--login-text: #1e2547;--login-muted: #94a3b8;--login-border: #e4e7f0;position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;display:flex;align-items:center;justify-content:center;padding:16px;background:#f0f2f8;color:var(--login-text);font-family:Segoe UI,Arial,sans-serif}.login *,.login:before,.login:after{box-sizing:border-box}.login:before,.login:after{content:"";position:fixed;border-radius:50%;pointer-events:none}.login:before{width:500px;height:500px;background:radial-gradient(circle,rgba(64,84,178,.12) 0%,transparent 70%);top:-150px;right:-150px}.login:after{width:400px;height:400px;background:radial-gradient(circle,rgba(255,105,0,.08) 0%,transparent 70%);bottom:-100px;left:-100px}.login-card{position:relative;z-index:1;width:100%;max-width:420px;padding:48px 52px;text-align:center;background:#fff;border-radius:20px;box-shadow:0 8px 32px #4054b226}.login-logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:32px}.login-logo-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--login-accent);color:#fff;font-size:1.5rem;font-weight:900}.login-logo-name{font-size:1.4rem;font-weight:800;color:var(--login-brand);letter-spacing:.3px}.login-divider{width:60px;height:3px;margin:0 auto 28px;border-radius:2px;background:linear-gradient(90deg,var(--login-brand),var(--login-accent))}.login-headline{margin:0 0 8px;font-size:1.35rem;font-weight:700;color:var(--login-text)}.login-subline{margin:0 0 32px;font-size:.875rem;line-height:1.5;color:var(--login-muted)}.login-ms{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px 20px;margin-bottom:20px;background:#fff;border:1.5px solid var(--login-border);border-radius:8px;box-shadow:0 2px 6px #0000000f;font-size:.9375rem;font-weight:600;color:var(--login-text);text-decoration:none;transition:all .18s ease}.login-ms:hover{border-color:var(--login-brand);background:var(--login-brand-xlight);color:var(--login-brand);box-shadow:0 4px 12px #4054b226;transform:translateY(-1px)}.login-ms svg{flex-shrink:0}.login-footer{margin-top:28px;font-size:.72rem;color:var(--login-muted)}.login-footer a{color:var(--login-brand);text-decoration:none}.login-footer a:hover{text-decoration:underline}@media(max-width:480px){.login-card{padding:32px 24px}}.period-toggle{align-self:flex-start;display:inline-flex;border:1px solid var(--color-input-border);border-radius:var(--radius-control);overflow:hidden}.period-toggle-option{font:inherit;font-size:13px;min-height:36px;padding:6px 18px;background:var(--color-surface);color:var(--color-text);border:0;cursor:pointer}.period-toggle-option+.period-toggle-option{border-inline-start:1px solid var(--color-input-border)}.period-toggle-option[aria-pressed=true]{background:var(--color-accent);color:var(--color-accent-text);font-weight:600}.stmt-number{direction:ltr;text-align:right}.stmt-negative{color:var(--color-negative)}.stmt-label-metric{padding-inline-start:28px}.stmt-label-group,.stmt-label-total{font-weight:700}.stmt-label-accent{color:var(--color-accent)}.stmt-row-group{background:var(--color-table-header)}.stmt-row-profit{font-weight:600}.stmt-row-total{background:var(--color-table-header);font-weight:700}.stmt-total-column{font-weight:700}.grid-block .ag-layout-auto-height .ag-center-cols-clipper,.grid-block .ag-layout-auto-height .ag-center-cols-container,.grid-block .ag-layout-auto-height .ag-center-cols-viewport{min-height:0!important}.ceo-row{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:12px;align-items:stretch}@media(max-width:800px){.ceo-row{grid-template-columns:minmax(0,1fr)}}.refresh-button{width:100%;background:none;border:0;font:inherit;text-align:start;cursor:pointer}.refresh-button:disabled{opacity:.7;cursor:progress}.refresh-dot{display:inline-block;width:8px;height:8px;margin-inline-start:8px;border-radius:50%;background:var(--color-accent)}.refresh-banner{display:grid;gap:8px;margin-bottom:16px;padding:12px 16px;background:var(--color-accent-soft);border:1px solid var(--color-border);border-radius:8px}.refresh-banner-text{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.refresh-bar{height:8px;overflow:hidden;background:var(--color-surface);border-radius:999px}.refresh-bar-fill{height:100%;background:var(--color-accent);border-radius:999px;transition:width .4s ease}.refresh-bar-fill.indeterminate{width:35%;animation:refresh-slide 1.2s ease-in-out infinite alternate}@keyframes refresh-slide{0%{margin-inline-start:0}to{margin-inline-start:65%}}@media(prefers-reduced-motion:reduce){.refresh-bar-fill.indeterminate{animation:none;width:100%;opacity:.5}}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:16px;background:#0006}.dialog{display:grid;gap:12px;width:min(520px,100%);padding:20px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px}.refresh-modes{display:grid;gap:8px;margin:0;padding:0;border:0}.refresh-mode{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;cursor:pointer}.refresh-mode>span{display:grid;gap:2px}.dialog-actions{display:flex;flex-wrap:wrap;gap:8px}.rise-arrow{color:#d92d20;margin-inline-start:3px;font-size:.8em}
