@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/spa/assets/montserrat-cyrillic-ext-400-normal-Xqov12YL.woff2)format("woff2"),url(/spa/assets/montserrat-cyrillic-ext-400-normal-DRPPeomZ.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/spa/assets/montserrat-cyrillic-400-normal-BPq32Q8K.woff2)format("woff2"),url(/spa/assets/montserrat-cyrillic-400-normal-jEs4Tk-Z.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/spa/assets/montserrat-vietnamese-400-normal-D4oHqQTd.woff2)format("woff2"),url(/spa/assets/montserrat-vietnamese-400-normal-BeEscFYY.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/spa/assets/montserrat-latin-ext-400-normal-B8bwfy6Y.woff2)format("woff2"),url(/spa/assets/montserrat-latin-ext-400-normal-BffdBkAA.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/spa/assets/montserrat-latin-400-normal-BLhwKU8k.woff2)format("woff2"),url(/spa/assets/montserrat-latin-400-normal-xItZbAXg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/spa/assets/montserrat-cyrillic-ext-500-normal-11xBT7e1.woff2)format("woff2"),url(/spa/assets/montserrat-cyrillic-ext-500-normal-DOzfAZ45.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/spa/assets/montserrat-cyrillic-500-normal-T0SG181k.woff2)format("woff2"),url(/spa/assets/montserrat-cyrillic-500-normal-CyGtXmN9.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/spa/assets/montserrat-vietnamese-500-normal-NT-t8RG1.woff2)format("woff2"),url(/spa/assets/montserrat-vietnamese-500-normal-DpeZlV_K.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/spa/assets/montserrat-latin-ext-500-normal-BKtbrd6n.woff2)format("woff2"),url(/spa/assets/montserrat-latin-ext-500-normal-DWPqqZgs.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/spa/assets/montserrat-latin-500-normal-DRFEGfly.woff2)format("woff2"),url(/spa/assets/montserrat-latin-500-normal-Dok2oTci.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/montserrat-cyrillic-ext-700-normal-MyDreaeu.woff2)format("woff2"),url(/spa/assets/montserrat-cyrillic-ext-700-normal-D-Mk2xRJ.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/montserrat-cyrillic-700-normal-D-Pqjtdp.woff2)format("woff2"),url(/spa/assets/montserrat-cyrillic-700-normal-BvLYcGP1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/montserrat-vietnamese-700-normal-C0x1De3p.woff2)format("woff2"),url(/spa/assets/montserrat-vietnamese-700-normal-DnwGT2D9.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/montserrat-latin-ext-700-normal-BOP2Nhf0.woff2)format("woff2"),url(/spa/assets/montserrat-latin-ext-700-normal-DdDFr05Z.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/montserrat-latin-700-normal-BdjcYUrC.woff2)format("woff2"),url(/spa/assets/montserrat-latin-700-normal-BWkrl476.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:600;src:url(/spa/assets/league-spartan-vietnamese-600-normal-Cot-T8d4.woff2)format("woff2"),url(/spa/assets/league-spartan-vietnamese-600-normal-DkVdIeVx.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:600;src:url(/spa/assets/league-spartan-latin-ext-600-normal-nMNwaRqy.woff2)format("woff2"),url(/spa/assets/league-spartan-latin-ext-600-normal-BYU5cLYt.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:600;src:url(/spa/assets/league-spartan-latin-600-normal-DHjw6l_K.woff2)format("woff2"),url(/spa/assets/league-spartan-latin-600-normal-DXHl7Rg9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/league-spartan-vietnamese-700-normal-BhNxTXKp.woff2)format("woff2"),url(/spa/assets/league-spartan-vietnamese-700-normal-Dn0E2a1W.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/league-spartan-latin-ext-700-normal-BwN75zDi.woff2)format("woff2"),url(/spa/assets/league-spartan-latin-ext-700-normal-DQ9i1Vnk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:700;src:url(/spa/assets/league-spartan-latin-700-normal-CtwlLP3z.woff2)format("woff2"),url(/spa/assets/league-spartan-latin-700-normal-D-5a3uka.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}:root{color:var(--text-main);background:var(--app-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Montserrat,Segoe UI,sans-serif}body{--app-bg:#f2f7f2;--topbar-bg:#fff;--topbar-border:#2b8d372e;--sidebar-bg:#f8fbf8;--sidebar-border:#2b8d372e;--page-surface:#edf5ef;--card-surface:#fff;--card-surface-soft:#f4f8f4;--card-border:#6a7f9a2e;--shadow-lg:0 14px 34px #1c32541a;--text-main:#151b16;--text-soft:#52555f;--text-muted:#6f7a70;--line-strong:#617d9e38;--line-soft:#7896be29;--input-bg:#fff;--input-border:#6883a43d;--accent:#5bb359;--accent-strong:#2b8d37;--accent-soft:#5bb35929;--danger-soft:#fff0f0;--danger-text:#a24b61;background:var(--app-bg);min-height:100vh;margin:0}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.app-shell{grid-template-rows:68px 1fr auto;min-height:100vh;display:grid}.topbar{border-bottom:1px solid var(--topbar-border);background:var(--topbar-bg);grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:0 1.25rem;display:grid}.topbar-title,.sidebar-brand strong,.page-header h1,.module-header h2,.kpi-card strong{font-family:League Spartan,Montserrat,sans-serif}.topbar-title{font-size:1.45rem}.topbar-meta{color:var(--text-soft);justify-self:end;font-size:.9rem}.topbar-session{color:var(--text-soft);justify-self:end;align-items:center;gap:.7rem;font-size:.9rem;display:flex}.workspace{grid-template-columns:260px minmax(0,1fr);display:grid}.sidebar{border-right:1px solid var(--sidebar-border);background:var(--sidebar-bg);padding:1rem}.sidebar-brand{align-items:center;gap:.8rem;padding:.4rem .45rem 1.1rem;display:flex}.sidebar-brand small,.nav-section-title,.page-header p,.kpi-card span{color:var(--text-muted)}.brand-mark{grid-template-columns:repeat(2,1fr);gap:3px;width:28px;height:28px;display:grid}.brand-mark span{background:var(--accent);border-radius:50%}.nav-stack{gap:.35rem;display:grid}.nav-section-title{letter-spacing:.08em;text-transform:uppercase;margin:.8rem 0 .35rem;font-size:.72rem;font-weight:700}.nav-link{min-height:42px;color:var(--text-soft);border:1px solid #0000;border-radius:12px;align-items:center;gap:.7rem;padding:0 .75rem;display:flex}.nav-link.active,.nav-link:hover{border-color:var(--line-soft);background:var(--accent-soft);color:var(--accent-strong)}.page-wrapper{background:var(--page-surface);min-width:0;padding:1rem}.page-frame{border:1px solid var(--card-border);min-height:calc(100vh - 118px);box-shadow:var(--shadow-lg);background:linear-gradient(#fffffffa,#f6fafffa);border-radius:18px;padding:1rem}.page-stack{gap:1rem;display:grid}.page-header,.module-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.page-header h1,.page-header p,.module-header h2{margin:0}.toolbar-actions,.form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.primary-button,.ghost-button{border:1px solid var(--line-strong);background:var(--card-surface);min-height:38px;color:var(--text-main);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:.45rem;padding:0 .9rem;display:inline-flex}.icon-button{width:36px;padding:0}.filter-grid,.entity-form{grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem;display:grid}input,select,textarea{border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:38px;color:var(--text-main);border-radius:12px;padding:.55rem .7rem}textarea{resize:vertical;min-height:76px}label{color:var(--text-soft);gap:.35rem;font-size:.84rem;font-weight:700;display:grid}.form-actions{grid-column:1/-1}.year-select{width:132px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.kpi-card,.module-panel,.import-panel{border:1px solid var(--card-border);background:var(--card-surface);border-radius:16px;box-shadow:0 8px 18px #030c180d}.header-panel{display:block}.kpi-card{gap:.35rem;padding:1rem;display:grid}.kpi-card strong{font-size:1.55rem}.module-panel,.import-panel{gap:1rem;padding:1rem;display:grid}.table-wrap{border:1px solid var(--line-soft);background:var(--card-surface);border-radius:14px;width:100%;overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:1480px;font-size:.86rem}.compact-table{min-width:760px}.compact-filter{grid-template-columns:minmax(240px,420px)}.forecast-table{min-width:1700px}.data-table th,.data-table td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:.65rem .7rem}.data-table th{z-index:1;background:var(--card-surface-soft);color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.74rem;position:sticky;top:0}.code-cell{white-space:nowrap;font-family:League Spartan,Montserrat,sans-serif}.status-pill{background:var(--accent-soft);min-height:26px;color:var(--accent-strong);white-space:nowrap;border-radius:999px;align-items:center;padding:0 .6rem;font-size:.78rem;font-weight:700;display:inline-flex}.row-actions{gap:.35rem;display:flex}.totals-row td{background:var(--card-surface-soft);font-weight:700}.notice{border:1px solid var(--line-strong);border-radius:12px;padding:.8rem 1rem}.notice.danger{background:var(--danger-soft);color:var(--danger-text);border-color:#a24b6133}.modal-backdrop{z-index:50;background:#182b4d3d;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-panel{border:1px solid var(--card-border);background:var(--card-surface);width:min(980px,100%);max-height:min(86vh,900px);box-shadow:var(--shadow-lg);border-radius:18px;gap:1rem;padding:1rem;display:grid;overflow:auto}.modal-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.modal-header h2{margin:0}.summary-grid{flex-wrap:wrap;gap:.65rem;display:flex}.summary-grid span{background:var(--card-surface-soft);color:var(--text-soft);border-radius:999px;padding:.6rem .8rem}.summary-grid strong{color:var(--text-main)}.error-list{color:var(--danger-text);gap:.4rem;display:grid}.error-list p{margin:0}.footer-shell{border-top:1px solid var(--topbar-border);background:var(--topbar-bg);color:var(--text-muted);text-align:center;padding:.65rem 1rem;font-size:.8rem}.footer-separator{color:color-mix(in srgb, var(--text-muted) 55%, transparent)}.footer-shell a{color:var(--accent-strong);font-weight:800;text-decoration:none}.footer-shell a:hover{text-underline-offset:3px;text-decoration:underline}.app-loading,.login-shell{background:var(--app-bg);place-items:center;min-height:100vh;padding:1rem;display:grid}.login-panel{border:1px solid var(--card-border);background:var(--card-surface);width:min(420px,100%);box-shadow:var(--shadow-lg);border-radius:16px;gap:1rem;padding:1.25rem;display:grid}.login-panel h1,.login-panel p{margin:0}.checkbox-field{align-content:end}.checkbox-field input{width:auto;min-height:auto}@media (width<=1180px){.workspace{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--sidebar-border)}.nav-stack{grid-template-columns:repeat(4,minmax(0,1fr))}.nav-section-title{grid-column:1/-1}.filter-grid,.entity-form,.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.topbar,.page-header,.module-header{grid-template-columns:1fr;display:grid}.topbar-meta,.topbar-session{justify-self:start}.page-wrapper{padding:.65rem}.page-frame{border-radius:14px;padding:.75rem}.nav-stack,.filter-grid,.entity-form,.kpi-grid{grid-template-columns:1fr}.wide{grid-column:auto}.toolbar-actions,.primary-button,.ghost-button{width:100%}}:root[data-theme=dark] .page-frame{background:#050705}:root[data-theme=dark] .module-panel,:root[data-theme=dark] .import-panel,:root[data-theme=dark] .modal-panel,:root[data-theme=dark] .table-wrap,:root[data-theme=dark] .sidebar-brand,:root[data-theme=dark] .user-chip{background:var(--module-surface);border-color:var(--card-border)}:root[data-theme=dark] .sidebar-profile,:root[data-theme=dark] .form-section,:root[data-theme=dark] .summary-grid span{background:var(--card-surface-soft);border-color:var(--card-border)}:root[data-theme=dark] .kpi-card{background:linear-gradient(135deg, #182737fa, #111d2afa), var(--card-surface)}:root[data-theme=dark] .data-table th,:root[data-theme=dark] .totals-row td{color:var(--text-soft);background:#081008}:root[data-theme=dark] .data-table td{color:var(--text-main)}:root[data-theme=dark] .data-table tbody tr:hover td{background:#5bb35914}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:var(--input-bg);border-color:var(--input-border);color:var(--text-main)}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:var(--text-muted)}:root[data-theme=dark] .select-field-trigger{border-color:var(--input-border);background:linear-gradient(180deg, #111611fa, #081008fa), var(--input-bg);color:var(--text-main);box-shadow:inset 0 1px #ffffff0a,0 1px 2px #0000002e}:root[data-theme=dark] .select-field-trigger:hover{background:linear-gradient(180deg, #152215, #081008), var(--input-bg)}:root[data-theme=dark] .select-field-trigger svg{color:var(--text-muted)}:root[data-theme=dark] .select-field-menu{border-color:var(--input-border);background:#081008;box-shadow:0 18px 38px #00000057,inset 0 0 0 1px #ffffff0a}:root[data-theme=dark] .select-field-option{color:var(--text-main)}:root[data-theme=dark] .select-field-option:hover,:root[data-theme=dark] .select-field-option:focus-visible{background:var(--accent-soft);color:var(--accent-strong);border-color:#5bb3593d}:root[data-theme=dark] .select-field-menu::-webkit-scrollbar-thumb{background:#89a7c775;border-color:#081008}:root[data-theme=dark] .modal-backdrop{background:#040a129e}:root[data-theme=dark] .ghost-button{background:var(--card-surface)}:root[data-theme=dark] .status-pill{background:var(--accent-soft);color:var(--accent-strong)}body{--bmsys-green:#5bb359;--bmsys-green-dark:#2b8d37;--bmsys-orange:#ee7532;--bmsys-charcoal:#52555f;--bmsys-gray:#d4d4d7;--app-bg:#eef5f0;--topbar-bg:#fffffff2;--topbar-border:#2b8d3729;--sidebar-bg:#f8fbf8;--sidebar-border:#2b8d372e;--page-surface:#edf4ef;--module-surface:#fff;--card-surface:#fff;--card-surface-soft:#f4f8f4;--card-border:#2b8d3729;--text-main:#17221b;--text-soft:#52555f;--text-muted:#748078;--line-strong:#2b8d3742;--line-soft:#2b8d3724;--input-bg:#fff;--input-border:#2b8d3738;--accent:var(--bmsys-green);--accent-strong:var(--bmsys-green-dark);--accent-soft:#5bb35929}:root[data-theme=dark] body{--app-bg:#000;--topbar-bg:#000000f0;--topbar-border:#5bb3593d;--sidebar-bg:#060806;--sidebar-border:#5bb35938;--page-surface:#050705;--module-surface:#0c100d;--card-surface:#111611;--card-surface-soft:#081008;--card-border:#5bb3593d;--shadow-lg:0 18px 44px #00000073;--panel-shadow:0 12px 30px #00000057;--text-main:#f4fff5;--text-soft:#c4d4c7;--text-muted:#8ba991;--line-strong:#5bb35957;--line-soft:#5bb3592e;--input-bg:#050a06;--input-border:#5bb35957;--accent:var(--bmsys-green);--accent-strong:#78d476;--accent-soft:#5bb35933}.topbar-title,.sidebar-brand strong,.page-title,.modal-header h2,.form-section-heading strong,.kpi-card strong,.code-cell{font-family:League Spartan,Montserrat,sans-serif}.topbar-title,.sidebar-brand strong{color:var(--accent-strong);letter-spacing:.01em}.brand-mark{width:38px;height:28px;display:block;position:relative}.brand-mark span{background:var(--accent);border-radius:999px;height:3px;position:absolute;left:4px}.brand-mark span:before{content:"";border:2px solid var(--accent);background:var(--module-surface);border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:-4px;transform:translateY(-50%)}.brand-mark span:first-child{width:31px;top:4px}.brand-mark span:nth-child(2){width:22px;top:12px}.brand-mark span:nth-child(3){width:31px;top:20px}.brand-mark span:nth-child(4){display:none}.primary-button{border-color:var(--bmsys-green);background:var(--bmsys-green);color:#fff}.primary-button:hover{border-color:var(--bmsys-green-dark);background:var(--bmsys-green-dark)}.danger-button{color:var(--bmsys-orange)}.status-pill{color:var(--bmsys-green-dark);background:#5bb35929}:root[data-theme=dark] .status-pill{color:#78d476}:root[data-theme=dark] .data-table th,:root[data-theme=dark] .totals-row td,:root[data-theme=dark] .select-field-menu{background:#081008}:root[data-theme=dark] .select-field-menu::-webkit-scrollbar-thumb{border-color:#081008}body{--app-bg:#f2f7f2;--topbar-bg:#fffffff0;--topbar-border:#2b8d372e;--sidebar-bg:#f8fbf8;--sidebar-border:#2b8d372e;--page-surface:#edf5ef;--module-surface:#fff;--card-surface:#fff;--card-surface-soft:#f4f8f4;--card-border:#596f8b2e;--shadow-lg:0 18px 44px #1427401c;--panel-shadow:0 9px 22px #14274012;--text-main:#151b16;--text-soft:#52555f;--text-muted:#6f7a70;--line-strong:#56729447;--line-soft:#6783a429;--accent:#5bb359;--accent-strong:#2b8d37;--accent-soft:#5bb35929;--success-soft:#eaf7f0;--success-text:#2c7254}:root[data-theme=dark] body{--app-bg:#000;--topbar-bg:#121c27f0;--topbar-border:#7997b72e;--sidebar-bg:#060806;--sidebar-border:#7997b72e;--page-surface:#050705;--module-surface:#0c100d;--card-surface:#111611;--card-surface-soft:#081008;--card-border:#84a3c433;--shadow-lg:0 18px 44px #00000057;--panel-shadow:0 12px 28px #0000003d;--text-main:#f4fff5;--text-soft:#c4d4c7;--text-muted:#8ba991;--line-strong:#89a7c752;--line-soft:#89a7c729;--input-bg:#050a06;--input-border:#89a7c747;--accent:#5bb359;--accent-strong:#78d476;--accent-soft:#5bb35933;--danger-soft:#a24b6129;--danger-text:#ff9daf;--success-soft:#327a5633;--success-text:#8ee0b8}.app-shell{grid-template-rows:68px 1fr 42px}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:1fr auto 1fr}.topbar-brand{justify-items:center;gap:.1rem;display:grid}.topbar-brand span{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700}.topbar-session,.topbar-actions{justify-self:end}.topbar-action{border-color:var(--line-soft);background:var(--card-surface)}.user-chip{border:1px solid var(--line-soft);background:var(--card-surface);min-height:38px;color:var(--text-main);border-radius:999px;align-items:center;gap:.55rem;padding:.25rem .7rem .25rem .3rem;font-weight:700;display:inline-flex}.user-avatar,.sidebar-avatar{background:var(--accent);color:#fff;border-radius:50%;place-items:center;font-family:League Spartan,Montserrat,sans-serif;font-weight:700;display:inline-grid}.user-avatar{width:28px;height:28px}.workspace{grid-template-columns:280px minmax(0,1fr)}.sidebar{align-content:start;gap:1rem;padding:1rem .9rem;display:grid}.sidebar-brand{border:1px solid var(--line-soft);background:var(--card-surface);box-shadow:var(--panel-shadow);border-radius:16px;padding:.45rem .55rem}.brand-mark span{border-radius:8px}.sidebar-profile{border:1px solid var(--line-soft);background:var(--card-surface-soft);border-radius:16px;align-items:center;gap:.75rem;padding:.85rem;display:flex}.sidebar-avatar{width:44px;height:44px}.sidebar-profile div{gap:.15rem;min-width:0;display:grid}.sidebar-profile strong,.sidebar-profile small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-profile small{color:var(--text-muted)}.nav-stack{gap:1rem}.nav-section{gap:.45rem;display:grid}.nav-section-links{gap:.4rem;display:grid}.nav-link{border-radius:12px;min-height:44px;font-weight:700}.nav-link-icon{background:#5bb3591f;border-radius:10px;place-items:center;width:28px;height:28px;display:inline-grid}.nav-link.active .nav-link-icon,.nav-link:hover .nav-link-icon{background:var(--accent);color:#fff}.page-wrapper{padding:1rem}.page-frame{background:var(--page-surface);border:1px solid var(--line-soft);min-height:calc(100vh - 110px - 2rem);box-shadow:none;border-radius:20px;padding:.9rem}.module-shell,.page-stack{gap:1rem;display:grid}.module-panel,.import-panel{border:1px solid var(--card-border);background:var(--module-surface);width:100%;box-shadow:var(--panel-shadow);border-radius:16px;padding:1.15rem 1.2rem}.page-header{grid-template-columns:1fr;gap:.35rem;width:100%;display:grid}.page-header-main{justify-content:space-between;align-items:flex-start;gap:1rem;width:100%;display:flex}.page-header-copy{flex:auto;gap:.35rem;min-width:0;display:grid}.page-header-toolbar{flex:none;justify-content:flex-end;justify-self:end;margin-left:auto;display:flex}.eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:800}.page-title{color:var(--text-main);text-transform:uppercase;margin:0;font-family:League Spartan,Montserrat,sans-serif;font-size:clamp(2rem,3.5vw,3rem);line-height:1}.page-header-copy p,.modal-header p{color:var(--text-soft);margin:0}.page-header-rule{background:linear-gradient(90deg, var(--accent), #5bb3591f);border-radius:999px;width:100%;min-width:100%;height:3px;margin-top:.45rem;display:block}.module-inline-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:inline-flex}.filter-panel{grid-template-columns:minmax(260px,1.4fr) repeat(5,minmax(150px,1fr));gap:.65rem;padding:.85rem;display:grid}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-card{border:1px solid var(--card-border);background:linear-gradient(135deg, #fffffff5, #f2f7fcf5), var(--card-surface);min-height:120px;box-shadow:var(--panel-shadow);border-radius:16px;padding:1rem;position:relative;overflow:hidden}.kpi-card:before{content:"";background:var(--accent);width:4px;position:absolute;inset:0 auto 0 0}.kpi-card span{letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.kpi-card strong{align-self:end;font-size:clamp(1.35rem,2vw,1.9rem)}.table-wrap{box-shadow:var(--panel-shadow);border-radius:16px}.data-table{font-size:.84rem}.data-table th{color:#52555f;letter-spacing:.08em;background:#edf5ef;padding:.7rem .75rem;font-size:.7rem}.data-table td{padding:.78rem .75rem}.status-pill{border:1px solid #2b8d3738}.primary-button,.ghost-button{border-radius:12px;min-height:40px;font-weight:800;transition:transform .12s,border-color .14s,box-shadow .14s,background-color .14s}.primary-button:hover,.ghost-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #14274017}input,select,textarea{border-radius:12px;outline:none;transition:border-color .14s,box-shadow .14s,background-color .14s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}select{appearance:none;color:var(--text-main);background-color:#fff;background-image:linear-gradient(135deg,#0000 50%,#2b8d37 50%),linear-gradient(45deg,#2b8d37 50%,#0000 50%),linear-gradient(#f4f8fcf5,#fffffff5);background-position:calc(100% - 1.15rem),calc(100% - .82rem),0 0;background-repeat:no-repeat;background-size:.36rem .36rem,.36rem .36rem,100% 100%;border-color:#6883a447;padding-right:2.65rem;font-weight:700;box-shadow:inset 0 1px #fffc,0 1px 2px #1427400a}select:hover{background-image:linear-gradient(135deg, transparent 50%, var(--accent-strong) 50%), linear-gradient(45deg, var(--accent-strong) 50%, transparent 50%), linear-gradient(180deg, #eff6fc, #fff);border-color:#2b8d3761}select:focus{background-image:linear-gradient(135deg, transparent 50%, var(--accent-strong) 50%), linear-gradient(45deg, var(--accent-strong) 50%, transparent 50%), linear-gradient(180deg, #fff, #fff)}select::-ms-expand{display:none}.select-field{width:100%;position:relative}.select-field-trigger{background:linear-gradient(180deg, #f4f8fcf5, #fffffff5), var(--input-bg);width:100%;min-height:44px;color:var(--text-main);font:inherit;text-align:left;cursor:pointer;border:1px solid #6883a447;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:0 .75rem 0 .9rem;font-weight:700;transition:border-color .14s,box-shadow .14s,background-color .14s;display:flex;box-shadow:inset 0 1px #ffffffd9,0 1px 2px #1427400a}.select-field-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.select-field-trigger svg{color:#2b8d37;flex:none;transition:color .14s,transform .14s}.select-field-trigger:hover{background:linear-gradient(180deg, #eff6fc, #fff), var(--input-bg);border-color:#2b8d3761}.select-field.is-open .select-field-trigger{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.select-field.is-open .select-field-trigger svg{color:var(--accent-strong);transform:rotate(180deg)}.select-field-menu{z-index:90;opacity:0;pointer-events:none;background:#fff;border:1px solid #6883a447;border-radius:14px;gap:.2rem;max-height:260px;padding:.35rem;transition:opacity .12s,transform .12s;display:grid;position:absolute;top:calc(100% + .4rem);left:0;right:0;overflow:auto;transform:translateY(-4px);box-shadow:0 18px 38px #14274029,inset 0 0 0 1px #ffffffe6}.select-field.is-open .select-field-menu{opacity:1;pointer-events:auto;transform:translateY(0)}.select-field-option{width:100%;min-height:36px;color:var(--text-main);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;gap:.75rem;padding:0 .65rem 0 .75rem;font-weight:700;display:flex}.select-field-option:hover,.select-field-option:focus-visible{background:var(--accent-soft);color:var(--accent-strong);border-color:#2b8d3738;outline:none}.select-field-menu::-webkit-scrollbar{width:8px}.select-field-menu::-webkit-scrollbar-thumb{background:#6883a473;border:2px solid #fff;border-radius:999px}.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0f191270}.modal-panel{border-radius:18px;grid-template-rows:auto minmax(0,1fr);width:min(880px,100%)}.modal-panel-wide{width:min(1380px,100vw - 2rem);max-height:calc(100vh - 2rem);padding:.9rem 1rem;overflow:hidden}.modal-header{border-bottom:1px solid var(--line-soft);padding-bottom:.85rem}.modal-header h2{text-transform:uppercase;margin:.15rem 0;font-family:League Spartan,Montserrat,sans-serif;font-size:1.65rem}.modal-content{gap:1rem;min-height:0;padding-right:.35rem;display:grid;overflow-y:auto}.entity-form{grid-template-columns:1fr;gap:1rem}.form-section{border:1px solid var(--card-border);background:var(--card-surface-soft);border-radius:16px;gap:.85rem;padding:1rem;display:grid}.opportunity-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.opportunity-form .form-section{border-radius:14px;gap:.55rem;padding:.75rem .9rem}.opportunity-form .form-section:nth-of-type(2),.opportunity-form .form-section:nth-of-type(4),.opportunity-form .form-actions{grid-column:1/-1}.opportunity-form .form-section:nth-of-type(2) .entity-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.opportunity-form .entity-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .75rem}.opportunity-form .form-section-heading{gap:.05rem}.opportunity-form .form-section-heading strong{font-size:.92rem}.opportunity-form .entity-form label{gap:.3rem}.opportunity-form label>span,.opportunity-form .entity-form label>span{font-size:.76rem}.opportunity-form input,.opportunity-form .select-field-trigger{min-height:38px}.opportunity-form textarea{min-height:58px}.opportunity-form .form-actions{padding-top:.1rem}.quote-form .quote-stepper,.quote-form .form-section,.quote-form .form-actions{grid-column:1/-1}.quote-stepper{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.quote-step{border:1px solid var(--card-border);background:var(--input-bg);min-height:40px;color:var(--text-muted);font:inherit;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:.55rem;font-weight:800;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.quote-step span{background:var(--card-surface-soft);width:24px;height:24px;color:var(--text-muted);border-radius:999px;place-items:center;font-size:.78rem;display:inline-grid}.quote-step.is-active{border-color:color-mix(in srgb, var(--accent-strong) 50%, var(--card-border));background:color-mix(in srgb, var(--accent-strong) 10%, var(--input-bg));color:var(--text-main)}.quote-step.is-active span{background:var(--accent-strong);color:#fff}.quote-items-editor{border:1px solid var(--card-border);background:var(--input-bg);border-radius:14px;grid-column:1/-1;gap:.65rem;padding:.75rem;display:grid}.quote-items-heading,.quote-totals{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.quote-items-heading strong{color:var(--text-main);text-transform:uppercase;font-family:League Spartan,Montserrat,sans-serif;display:block}.quote-items-grid{grid-template-columns:1fr minmax(240px,2.6fr) .75fr 1fr 1fr 40px;align-items:center;gap:.5rem;display:grid}.quote-items-grid-head{background:var(--accent-strong);color:#fff;text-transform:uppercase;border-radius:10px;padding:.45rem .5rem;font-size:.72rem;font-weight:900}.quote-items-grid textarea{min-height:44px;max-height:140px;overflow-y:auto}.quote-items-grid>strong{color:var(--text-main);text-align:right}.quote-totals{border-top:1px solid var(--line-soft);flex-wrap:wrap;justify-content:flex-end;padding-top:.3rem}.quote-totals label{max-width:120px}.quote-totals div{text-align:right;gap:.15rem;min-width:130px;display:grid}.quote-totals span{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.quote-totals strong{color:var(--text-main)}.rich-text-field{grid-column:span 2}.rich-text-toolbar{border:1px solid var(--input-border);background:var(--card-surface-soft);border-bottom:0;border-radius:12px 12px 0 0;gap:.35rem;padding:.35rem;display:flex}.rich-text-editor{border:1px solid var(--input-border);background:var(--input-bg);min-height:120px;max-height:260px;color:var(--text-main);border-radius:0 0 12px 12px;outline:none;padding:.75rem .85rem;line-height:1.55;overflow-y:auto}.rich-text-editor:focus{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-soft)}.rich-text-editor p,.rich-text-editor ul,.rich-text-editor ol{margin:0 0 .65rem}.rich-text-editor ul,.rich-text-editor ol{padding-left:1.25rem}.rich-text-editor :last-child{margin-bottom:0}.form-section-heading{gap:.15rem;display:grid}.form-section-heading strong{color:var(--text-main);text-transform:uppercase;font-family:League Spartan,Montserrat,sans-serif;font-size:1rem}.entity-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;display:grid}.entity-form label{gap:.45rem}.entity-form label>span{color:var(--text-muted);font-size:.82rem;font-weight:800}.entity-form input,.entity-form select,.entity-form textarea{min-height:44px}.money-input{border:1px solid var(--input-border);background:var(--input-bg);min-height:44px;color:var(--text-main);border-radius:12px;grid-template-columns:auto 1fr;align-items:center;transition:border-color .18s,box-shadow .18s;display:grid}.money-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.money-input>span{color:var(--text-muted);padding-left:1rem;font-weight:800}.money-input input{width:100%;min-height:42px;box-shadow:none;background:0 0;border:0}.money-input input:focus{box-shadow:none;outline:0}.invoice-balance-summary{border:1px solid color-mix(in srgb, var(--accent) 26%, var(--card-border));background:color-mix(in srgb, var(--accent) 7%, var(--card-surface));border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding:.8rem;display:grid}.invoice-balance-summary div{gap:.25rem;display:grid}.invoice-balance-summary span{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:900}.invoice-balance-summary strong{color:var(--text-main);font-size:1.05rem}.wide{grid-column:span 2}.checkbox-field{align-items:center;gap:.55rem;padding:.75rem 0;display:flex}.checkbox-field input{width:18px;height:18px}.footer-shell{justify-content:center;align-items:center;gap:.4rem;display:inline-flex}@media (width<=1180px){.workspace{grid-template-columns:1fr}.filter-panel,.entity-form-grid,.kpi-grid,.nav-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.topbar,.page-header-main{grid-template-columns:1fr;display:grid}.topbar-brand,.topbar-session,.page-header-toolbar{justify-self:start}.filter-panel,.entity-form-grid,.kpi-grid,.nav-stack{grid-template-columns:1fr}.wide{grid-column:auto}}body{--bmsys-green:#5bb359;--bmsys-green-dark:#2b8d37;--bmsys-orange:#ee7532;--bmsys-charcoal:#52555f;--bmsys-gray:#d4d4d7;--app-bg:#f2f7f2;--topbar-bg:#fffffff5;--topbar-border:#2b8d372e;--sidebar-bg:#f8fbf8;--sidebar-border:#2b8d372e;--page-surface:#edf5ef;--module-surface:#fff;--card-surface:#fff;--card-surface-soft:#f4f8f4;--card-border:#2b8d372e;--shadow-lg:0 18px 44px #2b55311c;--panel-shadow:0 9px 22px #2b553114;--text-main:#151b16;--text-soft:var(--bmsys-charcoal);--text-muted:#6f7a70;--line-strong:#2b8d374d;--line-soft:#2b8d3729;--input-bg:#fff;--input-border:#2b8d3742;--accent:var(--bmsys-green);--accent-strong:var(--bmsys-green-dark);--accent-soft:#5bb35929;--success-soft:#5bb3592e;--success-text:var(--bmsys-green-dark)}:root[data-theme=dark] body{--app-bg:#000;--topbar-bg:#000000f0;--topbar-border:#5bb35947;--sidebar-bg:#060806;--sidebar-border:#5bb35938;--page-surface:#050705;--module-surface:#0c100d;--card-surface:#111611;--card-surface-soft:#081008;--card-border:#5bb3593d;--shadow-lg:0 22px 54px #00000073;--panel-shadow:0 14px 34px #00000059;--text-main:#f4fff5;--text-soft:#c4d4c7;--text-muted:#8ba991;--line-strong:#5bb35952;--line-soft:#5bb3592e;--input-bg:#050a06;--input-border:#5bb35947;--accent:var(--bmsys-green);--accent-strong:#78d476;--accent-soft:#5bb35933;--success-soft:#5bb3592e;--success-text:#91e28f}.topbar-title,.sidebar-brand strong{color:var(--accent-strong)}.topbar-subtitle,.sidebar-brand span,.sidebar-email,.section-label,.page-kicker,.footer-shell{color:var(--text-muted)}.brand-mark span,.user-avatar,.sidebar-avatar{background:var(--bmsys-green);color:#fff}.brand-mark span:before{border-color:var(--bmsys-green)}.topbar-action,.ghost-button,.icon-button{border-color:var(--line-soft);color:var(--text-main)}.topbar-action:hover,.ghost-button:hover,.icon-button:hover{color:var(--accent-strong);background:#5bb3591a;border-color:#2b8d3752}.nav-link{color:var(--text-soft)}.nav-link:hover,.nav-link.active{color:var(--accent-strong);background:#5bb35924;border-color:#2b8d3738}.nav-link-icon{color:var(--accent-strong);background:#5bb3591f}.nav-link:hover .nav-link-icon,.nav-link.active .nav-link-icon{background:var(--bmsys-green);color:#fff}.page-frame{border-color:var(--line-soft);background:var(--page-surface)}.page-header,.filter-panel,.content-card,.table-card,.modal-panel,.auth-card,.sidebar-card{border-color:var(--card-border);background:var(--card-surface);box-shadow:var(--panel-shadow)}.page-header-rule,.kpi-card:before{background:linear-gradient(90deg, var(--bmsys-green), var(--bmsys-green-dark))}.primary-button{background:var(--bmsys-green);color:#fff;border-color:#0000}.primary-button:hover{background:var(--bmsys-green-dark);color:#fff}.secondary-button{border-color:var(--line-soft);color:var(--text-main)}.secondary-button:hover{color:var(--accent-strong);background:#5bb3591a;border-color:#2b8d3752}input,select,textarea,.select-field-trigger{border-color:var(--input-border);background-color:var(--input-bg);color:var(--text-main)}input:hover,select:hover,textarea:hover,.select-field-trigger:hover{border-color:#2b8d3761}input:focus,select:focus,textarea:focus,.select-field.is-open .select-field-trigger{border-color:var(--bmsys-green);box-shadow:0 0 0 3px #5bb3592e}.select-field-trigger svg,.select-field.is-open .select-field-trigger svg{color:var(--accent-strong)}.select-field-menu{background:var(--card-surface);border-color:#2b8d373d;box-shadow:0 18px 32px #2b553129}.select-field-option:hover,.select-field-option:focus-visible{color:var(--accent-strong);background:#5bb35924;border-color:#2b8d3738}.select-field-option.is-selected{background:var(--bmsys-green);color:#fff}.select-field-option.is-selected svg{color:#fff}.select-field-menu::-webkit-scrollbar-thumb{border-color:var(--card-surface);background:#2b8d378c}.data-table th{color:var(--bmsys-charcoal);background:#edf5ef}.data-table tbody tr:hover td{background:#5bb3590f}.table-wrap,.forecast-table-wrap{border-color:var(--line-soft)}.status-pill{color:var(--accent-strong);background:#5bb3592e;border-color:#2b8d3738}.modal-backdrop{background:#0f191270}:root[data-theme=dark] .data-table th{color:#c4d4c7;background:#081008}:root[data-theme=dark] .select-field-menu{box-shadow:0 18px 32px #0000006b}.brand-logo{object-fit:contain;width:auto;display:block}.brand-logo-topbar{max-width:118px;height:28px}.brand-logo-sidebar{flex:none;max-width:96px;height:30px}.brand-logo-login{max-width:190px;height:48px}.topbar-brand{gap:.15rem}.sidebar-brand>div{min-width:0}.login-brand{justify-items:start;gap:.5rem;display:grid}.login-brand p{margin:0}.topbar-session{gap:.55rem}.topbar-action.icon-button{border-radius:12px;place-items:center;width:38px;height:38px;min-height:38px;padding:0;display:inline-grid;position:relative;box-shadow:inset 0 1px #ffffffb8,0 8px 18px #2b553112}.theme-toggle-button{background:var(--card-surface);color:var(--text-main);border-color:#2b8d372e}.theme-toggle-button:hover{color:var(--accent-strong);background:#5bb35914;border-color:#2b8d3752}.logout-button{background:linear-gradient(135deg, #ee753221, #ee75320a), var(--card-surface);color:var(--bmsys-orange);border-color:#ee753242}.logout-button:hover{background:linear-gradient(135deg, #ee753238, #ee753214), var(--card-surface);color:var(--bmsys-orange);border-color:#ee753275}.topbar-action.icon-button:focus-visible{outline:none;box-shadow:0 0 0 3px #5bb35938,0 8px 18px #2b55311a}.logout-button:focus-visible{box-shadow:0 0 0 3px #ee753238,0 8px 18px #2b55311a}:root[data-theme=dark] .topbar-action.icon-button{box-shadow:inset 0 1px #ffffff14,0 10px 22px #0000003d}:root[data-theme=dark] .theme-toggle-button{background:var(--card-surface);color:#f4fff5;border-color:#5bb35938}:root[data-theme=dark] .theme-toggle-button:hover{color:#91e28f;background:#5bb3591f;border-color:#5bb35961}:root[data-theme=dark] .logout-button{background:linear-gradient(135deg, #ee75322e, #ee75320f), var(--card-surface);color:#ff9b66;border-color:#ee753257}.user-menu{position:relative}.user-chip-button{cursor:pointer;border-color:#2b8d3733;min-height:42px;padding:.28rem .65rem .28rem .32rem;transition:border-color .14s,box-shadow .14s,background-color .14s}.user-chip-button:hover,.user-chip-button[aria-expanded=true]{background:linear-gradient(135deg, #5bb3591a, #fffffff0), var(--card-surface);border-color:#2b8d376b;box-shadow:0 10px 22px #2b55311a}.user-chip-button:focus-visible{outline:none;box-shadow:0 0 0 3px #5bb35933}.user-chip-caret{color:var(--text-muted);transition:transform .14s,color .14s}.user-chip-button[aria-expanded=true] .user-chip-caret{color:var(--accent-strong);transform:rotate(180deg)}.user-dropdown{z-index:120;background:var(--card-surface);border:1px solid #2b8d3729;border-radius:16px;gap:.35rem;width:220px;padding:.75rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0;box-shadow:0 22px 48px #2b553129,inset 0 0 0 1px #ffffffb8}.user-dropdown:before{content:"";background:var(--card-surface);border-top:1px solid #2b8d3729;border-left:1px solid #2b8d3729;width:13px;height:13px;position:absolute;top:-7px;right:30px;transform:rotate(45deg)}.user-dropdown-item{width:100%;min-height:42px;color:var(--text-main);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:.7rem;padding:0 .7rem;font-weight:700;display:flex}.user-dropdown-item svg{color:var(--accent-strong)}.user-dropdown-item:hover,.user-dropdown-item:focus-visible{background:#5bb3591a;border-color:#2b8d372e;outline:none}.logout-menu-item,.logout-menu-item svg{color:#b0445b}.logout-menu-item:hover,.logout-menu-item:focus-visible{color:#9d334a;background:#ee75321a;border-color:#ee753233}:root[data-theme=dark] .user-chip-button:hover,:root[data-theme=dark] .user-chip-button[aria-expanded=true]{background:linear-gradient(135deg, #5bb35933, #081008f5), var(--card-surface)}:root[data-theme=dark] .user-dropdown{border-color:#5bb3593d;box-shadow:0 22px 48px #00000061,inset 0 0 0 1px #ffffff0a}:root[data-theme=dark] .user-dropdown:before{border-color:#5bb3593d}:root[data-theme=dark] .logout-menu-item,:root[data-theme=dark] .logout-menu-item svg{color:#ff9b66}.nav-accordion{gap:.35rem;display:grid}.nav-accordion-trigger{text-align:left;cursor:pointer;border:1px solid #0000;width:100%}.nav-accordion-caret{color:var(--text-muted);margin-left:auto;transition:color .14s,transform .14s}.nav-accordion.is-open .nav-accordion-caret{color:var(--accent-strong);transform:rotate(180deg)}.nav-submenu{gap:.25rem;padding-left:2.3rem;display:grid}.nav-subitem{min-height:34px;color:var(--text-soft);border:1px solid #0000;border-radius:10px;align-items:center;padding:0 .75rem;font-size:.86rem;font-weight:700;display:flex}.nav-subitem:hover,.nav-subitem.active{color:var(--accent-strong);background:#5bb3591a;border-color:#2b8d3733}.nav-subitem:before{content:"";opacity:.5;background:currentColor;border-radius:999px;width:6px;height:6px;margin-right:.55rem}input,textarea,.rich-text-editor{font-weight:400}select,.select-field-trigger,.select-field-option{font-weight:600}.rich-text-editor strong,.rich-text-editor b{font-weight:700}.icon-button[aria-label]{position:relative}.icon-button[aria-label]:after,.icon-button[aria-label]:before{pointer-events:none;opacity:0;z-index:50;transition:opacity .12s,transform .12s;position:absolute;left:50%;transform:translate(-50%,6px)}.icon-button[aria-label]:after{content:attr(aria-label);background:color-mix(in srgb, var(--card-surface) 92%, var(--accent-strong));max-width:180px;color:var(--text-main);text-align:center;white-space:nowrap;border:1px solid #2b8d3738;border-radius:8px;padding:.42rem .58rem;font-size:.75rem;font-weight:700;line-height:1.2;bottom:calc(100% + 9px);box-shadow:0 10px 24px #14274029}.icon-button[aria-label]:before{content:"";background:color-mix(in srgb, var(--card-surface) 92%, var(--accent-strong));border-bottom:1px solid #2b8d3738;border-right:1px solid #2b8d3738;width:9px;height:9px;bottom:calc(100% + 4px);rotate:45deg}.icon-button[aria-label]:hover:after,.icon-button[aria-label]:hover:before,.icon-button[aria-label]:focus-visible:after,.icon-button[aria-label]:focus-visible:before{opacity:1;transform:translate(-50%)}:root[data-theme=dark] .icon-button[aria-label]:after,:root[data-theme=dark] .icon-button[aria-label]:before{background:color-mix(in srgb, var(--card-surface) 88%, var(--accent-strong));border-color:#5bb35947;box-shadow:0 12px 28px #00000061}.table-wrap{overflow:visible}.forecast-table-wrap{overflow:auto}.row-actions .icon-button[aria-label]:after{top:calc(100% + 9px);bottom:auto;transform:translate(-50%,-6px)}.row-actions .icon-button[aria-label]:before{top:calc(100% + 4px);bottom:auto;transform:translate(-50%,-6px)rotate(225deg)}.row-actions .icon-button[aria-label]:hover:after,.row-actions .icon-button[aria-label]:hover:before,.row-actions .icon-button[aria-label]:focus-visible:after,.row-actions .icon-button[aria-label]:focus-visible:before{transform:translate(-50%)}.quotes-table th,.quotes-table td{text-align:center;vertical-align:middle}.quotes-table .code-cell{text-align:center}.quotes-table .row-actions{justify-content:center;align-items:center}.quotes-table .status-pill{margin-inline:auto}
