:root{--tblr-primary:#1a1a2e;--tblr-primary-rgb:26,26,46;--tblr-primary-fg:#fff;--lb-sidebar-bg:#1a1a2e;--lb-sidebar-border:hsla(0,0%,100%,.07);--lb-active-bg:#ffd400;--lb-active-color:#1a1a2e}.navbar-vertical{background-color:var(--lb-sidebar-bg)!important;border-right:1px solid var(--lb-sidebar-border)}.navbar-vertical .navbar-brand{color:#ffd400!important;font-weight:700;font-size:1.05rem;max-width:calc(100% - 64px)}.navbar-vertical .navbar-brand .lb-sidebar-logo{max-width:240px;width:auto!important;height:58px!important}.navbar-vertical .nav-link{color:hsla(0,0%,100%,.65)!important;border-radius:8px;margin:3px 0;padding:.55rem .75rem!important}.navbar-vertical .nav-link:hover{color:#fff!important;background-color:hsla(0,0%,100%,.07)}.navbar-vertical .nav-link.active{color:#1a1a2e!important;background-color:#ffd400!important;font-weight:600;box-shadow:0 1px 0 rgba(0,0,0,.12)}.navbar-vertical .nav-link-title{font-size:.855rem}.navbar-vertical .navbar-nav{padding-left:.35rem;padding-right:.35rem}.lb-nav-header{color:hsla(0,0%,100%,.3);font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;font-weight:600;padding:.7rem .75rem .2rem;display:block}.navbar-vertical .nav .nav-link{padding-left:2rem!important;padding-right:.75rem!important;font-size:.82rem;margin:2px 0}.navbar-vertical .nav .nav-link.active{background-color:rgba(255,212,0,.12)!important;color:#ffd400!important;box-shadow:none}.btn-brand{background-color:#ffd400;color:#1a1a2e;border-color:#ffd400;font-weight:600}.btn-brand:hover{background-color:#f0c800;border-color:#f0c800;color:#1a1a2e}.btn-save{background-color:#206bc4;color:#fff!important;border-color:#206bc4;font-weight:600}.btn-save:focus,.btn-save:hover{background-color:#1a5caa;border-color:#1a5caa;color:#fff!important}.btn-save:disabled{opacity:.65}.btn-cancel{background-color:#d63939;color:#fff!important;border-color:#d63939;font-weight:600}.btn-cancel:focus,.btn-cancel:hover{background-color:#b92b2b;border-color:#b92b2b;color:#fff!important}.btn-add{background-color:#d4a017;color:#fff!important;border-color:#d4a017;font-weight:600}.btn-add:focus,.btn-add:hover{background-color:#b8880f;border-color:#b8880f;color:#fff!important}.modal-footer .btn-cancel{margin-right:auto}.modal-footer .btn-save,.nav-arrow{margin-left:auto}.nav-arrow{transition:transform .2s ease;opacity:.5}.nav-arrow.open{transform:rotate(90deg)}.nav-submenu-wrapper{transition:max-height .25s ease-out}.navbar-vertical .nav-submenu-wrapper .nav{padding-left:0}.page-body-loading{min-height:200px}.page-body-loading .spinner-border{border-width:.2em;color:var(--lb-active-bg)}.page-content-transition{animation:pageFadeIn .2s ease-out}@keyframes pageFadeIn{0%{opacity:0}to{opacity:1}}.app-home-header{text-align:center;margin-bottom:.25rem}.app-home-title{font-size:1.5rem;font-weight:700;color:#1a1a2e;letter-spacing:-.02em}.app-launcher{margin:0 auto 1.5rem;max-width:920px}.app-launcher-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.app-launcher-tile{--app-accent:#206bc4;display:flex;align-items:center;gap:.9rem;text-decoration:none;color:inherit;min-height:96px;padding:1rem 1rem 1rem 1.05rem;background:#fff;border:1px solid rgba(26,26,46,.08);border-radius:14px;border-left:4px solid var(--app-accent);box-shadow:0 1px 3px rgba(26,26,46,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease}.app-launcher-tile:focus-visible,.app-launcher-tile:hover{color:inherit;text-decoration:none;transform:translateY(-3px);background:color-mix(in srgb,var(--app-accent) 4%,#fff);border-color:color-mix(in srgb,var(--app-accent) 35%,rgba(26,26,46,.08));border-left-color:var(--app-accent);box-shadow:0 10px 24px rgba(26,26,46,.1)}.app-launcher-tile:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.app-launcher-icon{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:12px;background:color-mix(in srgb,var(--app-accent) 14%,#fff);color:var(--app-accent);transition:transform .18s ease,background-color .18s ease}.app-launcher-tile:hover .app-launcher-icon{transform:scale(1.05);background:color-mix(in srgb,var(--app-accent) 20%,#fff)}.app-launcher-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.2rem}.app-launcher-label{font-size:1.02rem;font-weight:700;line-height:1.3;color:#1a1a2e}.app-launcher-desc{font-size:.84rem;font-weight:400;line-height:1.4;color:#667382;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-launcher-arrow{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;color:#667382;background:rgba(26,26,46,.04);transition:color .18s ease,background-color .18s ease,transform .18s ease}.app-launcher-tile:hover .app-launcher-arrow{color:var(--app-accent);background:color-mix(in srgb,var(--app-accent) 14%,#fff);transform:translateX(2px)}@media (max-width:767.98px){.app-launcher-grid{grid-template-columns:1fr;gap:.7rem}.app-home-title{font-size:1.3rem}.app-launcher-tile{min-height:88px;padding:.9rem;gap:.75rem}.app-launcher-icon{width:46px;height:46px}.app-launcher-label{font-size:.95rem}.app-launcher-desc{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.app-launcher-arrow,.app-launcher-icon,.app-launcher-tile{transition:none}.app-launcher-tile:focus-visible,.app-launcher-tile:hover{transform:none}.app-launcher-tile:hover .app-launcher-arrow,.app-launcher-tile:hover .app-launcher-icon{transform:none}}.sap-b1-hub .btn-azure{background:#2b9ed9;border-color:#2b9ed9;color:#fff}.sap-b1-hub .btn-azure:hover{background:#2289c0;border-color:#2289c0;color:#fff}.sap-b1-hub .btn-yellow{background:#ffd400;border-color:#ffd400;color:#1a1a2e;font-weight:600}.sap-b1-hub .btn-yellow:hover:not(:disabled){background:#f0c800;border-color:#f0c800;color:#1a1a2e}.sap-b1-hub .btn-yellow:disabled{opacity:.7}.sap-b1-hero{position:relative;overflow:hidden;border-radius:14px;padding:1.25rem 1.4rem;color:#f4fafc;background:radial-gradient(ellipse 80% 120% at 100% 0,rgba(43,158,217,.45),transparent 55%),radial-gradient(ellipse 60% 80% at 0 100%,rgba(20,138,138,.35),transparent 50%),linear-gradient(135deg,#0b3d5c,#0f5570 48%,#148a8a);box-shadow:0 10px 28px rgba(11,61,92,.22)}.sap-b1-hero-kicker{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;opacity:.78;font-weight:600}.sap-b1-hero-title{font-size:1.45rem;font-weight:700;color:#fff}.sap-b1-hero-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:rgba(255,212,0,.95);color:#0b3d5c}.sap-b1-hero-sub{font-size:.9rem;opacity:.88}.sap-b1-hero-sub code{color:#ffd400;background:rgba(0,0,0,.2);padding:.1rem .35rem;border-radius:4px}.sap-b1-hero-meta{display:flex;flex-wrap:wrap;gap:.4rem}.sap-b1-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;padding:.28rem .65rem;border-radius:999px;background:hsla(0,0%,100%,.14);border:1px solid hsla(0,0%,100%,.18)}.sap-b1-chip-sync{background:rgba(232,163,23,.95);color:#1a1a2e;border-color:transparent;font-weight:600;animation:sap-b1-pulse 1.4s ease-in-out infinite}.sap-b1-hint{border-radius:10px;padding:.75rem 1rem;background:linear-gradient(90deg,#e8f6f6,#eef6fb);border:1px solid #c5e4e8;color:#0b3d5c;font-size:.9rem}.sap-b1-kpi{display:flex;flex-direction:column;gap:.2rem;border-radius:12px;padding:1rem 1.05rem .95rem;background:#fff;box-shadow:0 4px 14px rgba(11,61,92,.06);border:1px solid transparent;border-left:4px solid #94a3b8;transition:transform .15s ease,box-shadow .15s ease;min-height:118px}button.sap-b1-kpi{cursor:pointer}button.sap-b1-kpi:focus-visible:not(:disabled),button.sap-b1-kpi:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px rgba(11,61,92,.12);outline:none}button.sap-b1-kpi:disabled{opacity:.85;cursor:default}.sap-b1-kpi-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;margin-bottom:.35rem;color:#fff}.sap-b1-kpi-label{font-size:.8rem;color:#64748b;font-weight:600}.sap-b1-kpi-value{font-size:1.65rem;font-weight:700;line-height:1.15;color:#0f172a}.sap-b1-kpi-sub{font-size:.78rem;color:#94a3b8}.sap-b1-kpi-teal{border-left-color:var(--sap-teal)}.sap-b1-kpi-teal .sap-b1-kpi-icon{background:var(--sap-teal)}.sap-b1-kpi-blue{border-left-color:var(--sap-sky)}.sap-b1-kpi-blue .sap-b1-kpi-icon{background:var(--sap-sky)}.sap-b1-kpi-coral{border-left-color:var(--sap-coral)}.sap-b1-kpi-coral .sap-b1-kpi-icon{background:var(--sap-coral)}.sap-b1-kpi-amber{border-left-color:var(--sap-amber)}.sap-b1-kpi-amber .sap-b1-kpi-icon{background:var(--sap-amber);color:#1a1a2e}.sap-b1-kpi-navy{border-left-color:var(--sap-navy)}.sap-b1-kpi-navy .sap-b1-kpi-icon{background:var(--sap-navy)}.sap-b1-panel{border:1px solid #d7e6ee;box-shadow:0 6px 18px rgba(11,61,92,.05)}.sap-b1-panel-header{background:linear-gradient(180deg,#f3fafb,#eef5f8);border-bottom-color:#d7e6ee}.sap-b1-tabs .nav-link{color:#4a6578;font-weight:600;border:none;border-bottom:2px solid transparent;border-radius:0}.sap-b1-tabs .nav-link:hover{color:var(--sap-navy);background:transparent}.sap-b1-tabs .nav-link.active{color:var(--sap-teal);background:transparent;border-bottom-color:var(--sap-teal)}.sap-b1-overview-help{color:#64748b;font-size:.9rem}.sap-b1-money{border-radius:12px;padding:.95rem 1rem;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #94a3b8;min-height:88px}.sap-b1-money-label{font-size:.8rem;color:#64748b;font-weight:600;margin-bottom:.25rem}.sap-b1-money-value{font-size:1.2rem;font-weight:700}.sap-b1-money-in{border-left-color:var(--sap-green);background:linear-gradient(135deg,#f0faf2,#fff)}.sap-b1-money-in .sap-b1-money-value{color:#1f7a32}.sap-b1-money-out{border-left-color:var(--sap-coral);background:linear-gradient(135deg,#fff5f3,#fff)}.sap-b1-money-out .sap-b1-money-value{color:#b93a2e}.sap-b1-money-mid{border-left-color:var(--sap-sky);background:linear-gradient(135deg,#f0f8fd,#fff)}.sap-b1-money-mid .sap-b1-money-value{color:#176a96}.sap-b1-money-net{border-left-color:var(--sap-navy);background:linear-gradient(135deg,#eef4f8,#fff)}.sap-b1-money-net .sap-b1-money-value{color:var(--sap-navy)}@keyframes sap-b1-pulse{0%,to{opacity:1}50%{opacity:.72}}@media (prefers-reduced-motion:reduce){.sap-b1-chip-sync,.sap-b1-kpi{transition:none;animation:none}button.sap-b1-kpi:hover:not(:disabled){transform:none}}.sap-b1-year-select{min-width:110px;background:hsla(0,0%,100%,.95);border:none;font-weight:600;color:#0b3d5c}.sap-b1-chart-card{border-radius:12px;padding:1rem;background:linear-gradient(180deg,#f7fcfd,#fff 40%);border:1px solid #d7e6ee}.sap-b1-dash-stat{border-radius:12px;padding:.95rem 1rem;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #94a3b8;min-height:96px;box-shadow:0 4px 12px rgba(11,61,92,.05);height:100%}.sap-b1-dash-stat-label{font-size:.8rem;color:#64748b;font-weight:600;margin-bottom:.25rem}.sap-b1-dash-stat-value{font-size:1.25rem;font-weight:700;color:#0f172a;line-height:1.2}.sap-b1-dash-stat-sub{font-size:.78rem;color:#94a3b8;margin-top:.2rem}.sap-b1-dash-stat-teal{border-left-color:var(--sap-teal)}.sap-b1-dash-stat-blue{border-left-color:var(--sap-sky)}.sap-b1-dash-stat-coral{border-left-color:var(--sap-coral)}.sap-b1-dash-stat-amber{border-left-color:var(--sap-amber)}.sap-b1-dash-stat-navy{border-left-color:var(--sap-navy)}.sap-b1-dash-stat-green,.sap-b1-dash-stat-in{border-left-color:var(--sap-green);background:linear-gradient(135deg,#f0faf2,#fff)}.sap-b1-dash-stat-green .sap-b1-dash-stat-value,.sap-b1-dash-stat-in .sap-b1-dash-stat-value{color:#1f7a32}.sap-b1-dash-stat-out{border-left-color:var(--sap-coral);background:linear-gradient(135deg,#fff5f3,#fff)}.sap-b1-dash-stat-out .sap-b1-dash-stat-value{color:#b93a2e}.sap-b1-dash-stat-mid{border-left-color:var(--sap-sky);background:linear-gradient(135deg,#f0f8fd,#fff)}.sap-b1-dash-stat-mid .sap-b1-dash-stat-value{color:#176a96}.sap-b1-dash-stat-net{border-left-color:var(--sap-navy);background:linear-gradient(135deg,#eef4f8,#fff)}.sap-b1-dash-stat-net .sap-b1-dash-stat-value{color:var(--sap-navy)}.sap-b1-dash-stat-coral .sap-b1-dash-stat-value{color:#b93a2e}.sap-b1-dash-stat-amber .sap-b1-dash-stat-value{color:#9a6b00}.sap-b1-dash-stat-blue .sap-b1-dash-stat-value{color:#176a96}.sap-b1-dash-stat-teal .sap-b1-dash-stat-value{color:#0f6b6b}.sap-b1-dash-stat-navy .sap-b1-dash-stat-value{color:var(--sap-navy)}