@font-face{font-family:Electrolux Sans;src:url(/fonts/ElectroluxSans_1_Thin.otf)format("opentype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Electrolux Sans;src:url(/fonts/ElectroluxSans_2_Light.otf)format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Electrolux Sans;src:url(/fonts/ElectroluxSans_3_Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Electrolux Sans;src:url(/fonts/ElectroluxSans_4_Semibold.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Electrolux Sans;src:url(/fonts/ElectroluxSans_4_Semibold.otf)format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Electrolux Sans;src:url(/fonts/ElectroluxSans_5_Bold.otf)format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Electrolux Sans;src:url(/fonts/ElectroluxSans_5_Bold.otf)format("opentype");font-weight:800;font-style:normal;font-display:swap}*,:before,:after{font-family:Electrolux Sans,sans-serif!important}:root{--bg:#f1f5f9;--surface:#fff;--surface2:#ebf0f6;--border:#d4deec;--border-hi:#b0c2d8;--text:#0a1628;--muted:#5a6a80;--dim:#8a9bb0;--accent:#1a2d6b;--accent-lt:#e6ebf7;--accent-md:#2d4a9a;--green:#2d4a3e;--green-lt:#e8f0ec;--green-md:#3d6450;--amber:#8a6410;--amber-lt:#f8f2e0;--amber-md:#c49a1a;--red:#7a2028;--red-lt:#faecee;--red-md:#c0303c;--teal:#4a6e8a;--teal-lt:#e8eff5;--slate:#2d3d5a;--sb:240px;--topbar:54px;--radius:10px;--shadow:0 1px 3px #1a2d6b12,0 1px 2px #1a2d6b0a;--shadow-md:0 4px 16px #1a2d6b1a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:13px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Electrolux Sans,DM Sans,Helvetica Neue,Arial,sans-serif;line-height:1.5}input,select,button{font-family:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-hi);border-radius:3px}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}input[type=number]{-moz-appearance:textfield}.shell{height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sb);color:#d4dcf0;background:#011e41;border-right:1px solid #01142d;flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.sb-brand{border-bottom:1px solid #0a3163;flex-direction:column;gap:6px;padding:16px 16px 14px;display:flex}.sb-logo-row{align-items:center;gap:10px;display:flex}.sb-logo-svg{flex-shrink:0}.sb-tagline-brand{color:#8aa0c8;letter-spacing:.12em;text-transform:uppercase;padding-left:2px;font-size:9px;font-weight:400}.sb-section{color:#c49a1a;text-transform:uppercase;letter-spacing:.14em;padding:20px 14px 6px;font-size:9px;font-weight:700}.nav-btn{cursor:pointer;color:#a8bcd8;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:9px;width:calc(100% - 12px);margin:1px 6px;padding:8px 12px;font-size:12.5px;font-weight:500;transition:all .12s;display:flex}.nav-btn:hover{color:#e4ecf8;background:#314380}.nav-btn.active{color:#fff;background:#314380;font-weight:700}.nav-btn .ni{text-align:center;opacity:.9;flex-shrink:0;width:16px;font-size:14px}.nav-btn .nb{background:var(--red-md);color:#fff;border-radius:10px;margin-left:auto;padding:1px 6px;font-size:9px;font-weight:700}.nav-btn .ng{background:var(--green-md);color:#fff;border-radius:10px;margin-left:auto;padding:1px 6px;font-size:9px;font-weight:700}.sb-footer{border-top:1px solid #0a3163;margin-top:auto;padding:14px 16px}.week-display{color:#8aa0c8;background:#01142d;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-family:IBM Plex Mono,monospace;font-size:11px;display:flex}.week-display .wd-period{flex-direction:column;gap:1px;line-height:1.2;display:flex}.week-display strong{color:#c49a1a;font-size:13px}.week-display .wd-week{color:#01142d;white-space:nowrap;background:#c49a1a;border-radius:6px;padding:4px 9px;font-size:12px;font-weight:700}.refresh-time{color:#6a80a8;text-align:center;margin-top:6px;font-size:9.5px}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.topbar{height:var(--topbar);background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow);flex-shrink:0;align-items:center;gap:14px;padding:0 24px;display:flex}.tb-breadcrumb{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.tb-breadcrumb .sep{color:var(--dim)}.tb-page{color:var(--text);font-family:Instrument Serif,serif;font-size:14px;font-weight:700}.tb-space{flex:1}.tb-profile{background:var(--surface2);border:1px solid var(--border);cursor:default;border-radius:6px;align-items:center;margin-left:auto;padding:7px 14px;display:flex}.tb-profile-name{color:var(--text);font-size:12.5px;font-weight:700}.account-selector{background:var(--surface2);border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;transition:all .12s;display:flex}.account-selector:hover{border-color:var(--accent-md)}.account-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.account-selector select{color:var(--text);cursor:pointer;background:0 0;border:none;outline:none;padding-right:4px;font-size:12px;font-weight:600}.tb-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;transition:all .12s;display:flex}.tb-btn:hover{border-color:var(--accent-md);color:var(--accent)}.tb-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.tb-btn.primary:hover{background:#1e40af;border-color:#1e40af}.tb-btn.success{background:var(--green);color:#fff;border-color:var(--green);font-weight:600}.tb-btn.success:hover{background:#065f46;border-color:#065f46}.content{flex:1;overflow:auto}.page{animation:.2s fadeUp;display:none}.page.active{display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.pg-inner{padding:20px 24px}.pg-header{margin-bottom:20px}.pg-h1{letter-spacing:-.02em;color:var(--text);font-family:Electrolux Sans,DM Sans,sans-serif;font-size:22px;font-weight:700}.pg-sub{color:var(--muted);margin-top:3px;font-size:12px}.kpi-row{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:140px;box-shadow:var(--shadow);flex:1;padding:16px 18px;position:relative;overflow:hidden}.kpi:before{content:"";background:var(--kpi-color,var(--accent));height:2px;position:absolute;top:0;left:0;right:0}.kpi-l{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;font-size:10px;font-weight:600}.kpi-v{color:var(--kpi-color,var(--accent));font-family:IBM Plex Mono,monospace;font-size:24px;font-weight:500;line-height:1}.kpi-d{align-items:center;gap:4px;margin-top:6px;font-size:11px;display:flex}.d-up{color:var(--green)}.d-dn{color:var(--red)}.d-nt{color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.card-title{align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex}.card-sub{color:var(--muted);margin-top:2px;font-size:11px}.card-body{padding:16px 20px}.card-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.card-grid-3{grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.pill{white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.psi-dot{vertical-align:middle;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-left:3px;display:inline-block}.psi-ok{background:#3d6450}.psi-warn{background:#c49a1a}.psi-crit{background:#c0303c}.alert-filter-btn.active{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.alert-filter-btn{transition:all .15s}.health-filter-btn.active{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.health-filter-btn{transition:all .15s}.psi-health-row td{border-bottom:1px solid var(--border);padding:2px 4px 6px;font-size:10.5px}.psi-health-row .psi-chip{background:var(--surface2);white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.psi-health-row .psi-chip.ok{background:var(--green-lt);color:var(--green)}.psi-health-row .psi-chip.warn{background:var(--amber-lt);color:var(--amber)}.psi-health-row .psi-chip.crit{background:var(--red-lt);color:var(--red)}.psi-banner{border:1px solid;border-radius:8px;align-items:center;gap:10px;margin-bottom:12px;padding:8px 14px;font-size:12px;font-weight:600;display:flex}.psi-banner.ok{background:var(--green-lt);color:var(--green);border-color:var(--green)}.psi-banner.warn{background:var(--amber-lt);color:var(--amber);border-color:var(--amber)}.psi-banner.crit{background:var(--red-lt);color:var(--red);border-color:var(--red)}.conf-legend{color:var(--muted);align-items:center;gap:5px;margin-left:10px;font-size:10px;display:inline-flex}.conf-legend-swatch{background:#04785726;border:1px solid #0478574d;border-radius:3px;width:18px;height:6px}.psi-row-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:3px 0;font-size:12px;display:flex}.psi-row-toggle input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:14px;height:14px}.row-expso td{background:#6366f10a!important}.row-manual td{background:#f59e0b0a!important}.eol-locked{pointer-events:none;background:#c0303c0f!important}.pred-linked .row-metric-label:after{content:" (PRED)";color:#6366f1;font-size:9px;font-weight:400}.row-manual .si-input{font-size:11px!important}.row-projwos td{background:#6366f10f!important}.expso-label{font-weight:700;color:#6366f1!important}.projwos-label{font-weight:600;color:#6366f1!important}.row-sugg td{border-bottom:none;background:#10b98108!important}.sugg-label{font-weight:700;color:var(--green)!important}.row-price td{border-bottom:none;background:#1d4ed808!important}.row-price.price-changed td{background:#f59e0b0f!important}.price-input{text-align:right!important;font-size:12px!important;font-weight:600!important}.pill-active{background:var(--accent);color:#fff;cursor:pointer;border:none}.pill:not(.pill-active):not(.pill-red):not(.pill-green):not(.pill-amber):not(.pill-teal):not(.pill-blue):not(.pill-gray){background:var(--surface2);color:var(--muted);border:1px solid var(--border);cursor:pointer}.pill-blue{background:var(--accent-lt);color:var(--accent)}.pill-green{background:var(--green-lt);color:var(--green)}.pill-amber{background:var(--amber-lt);color:var(--amber)}.pill-red{background:var(--red-lt);color:var(--red)}.pill-teal{background:var(--teal-lt);color:var(--teal)}.pill-gray{background:var(--surface2);color:var(--muted);border:1px solid var(--border)}.wos-v{border-radius:4px;padding:2px 7px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600;display:inline-block}.model-card{background:var(--surface2);border:1.5px solid var(--border);cursor:pointer;border-radius:10px;padding:12px 14px;transition:all .15s;position:relative}.model-card:hover{border-color:var(--accent-md);background:var(--accent-lt)}.mc-active{box-shadow:0 0 0 2px #003ea51f;border-color:var(--accent)!important;background:var(--accent-lt)!important}.mc-active:after{content:"✓ Active";color:var(--accent);background:#003ea51f;border-radius:8px;padding:2px 6px;font-size:9px;font-weight:700;position:absolute;top:8px;right:8px}.mc-icon{margin-bottom:5px;font-size:18px}.mc-name{color:var(--text);margin-bottom:4px;font-size:12px;font-weight:700}.mc-desc{color:var(--muted);margin-bottom:7px;font-size:10.5px;line-height:1.5}.mc-tags{flex-wrap:wrap;gap:4px;display:flex}.mc-tag{background:var(--border);color:var(--muted);border-radius:8px;padding:1px 7px;font-size:9.5px;font-weight:600}.mc-tag-best{color:#2d4a3e;background:#0478571f;border-radius:8px}.wos-critical{background:var(--red-lt);color:var(--red)}.wos-low{background:var(--amber-lt);color:var(--amber)}.wos-healthy{background:var(--green-lt);color:var(--green)}.wos-over{color:#6d28d9;background:#f5f3ff}.wos-na{color:var(--dim);font-family:IBM Plex Mono,monospace;font-size:11px}.tbl-wrap{border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto}.scroll-always{overflow:scroll auto}.scroll-always::-webkit-scrollbar{width:8px;height:8px}.scroll-always::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.scroll-always::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.scroll-always::-webkit-scrollbar-thumb:hover{background:#94a3b8}.tbl{border-collapse:collapse;width:100%;min-width:900px}.tbl thead tr{background:var(--surface2)}.tbl th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;text-align:right;border-bottom:2px solid var(--border);white-space:nowrap;padding:9px 12px;font-size:10px;font-weight:700}.tbl th.left,th.tl{text-align:left}.tbl td{border-bottom:1px solid var(--border);text-align:right;padding:7px 12px;font-family:IBM Plex Mono,monospace;font-size:11.5px}.tbl td.left,.tbl td.tl{text-align:left;font-family:Plus Jakarta Sans,sans-serif}.tbl tr:last-child td{border-bottom:none}.tbl tr:hover td{background:#fafbfc}.tbl .sticky{background:var(--surface);z-index:3;position:sticky}.tbl th.sticky{background:var(--surface2);z-index:4}.tbl .col-l0{left:0}.tbl .col-l1{left:130px}.tbl .col-l2{left:260px}.tbl .col-l3{left:390px}.fc-hdr{color:var(--green)!important;background:#f0fdf4!important;border-left:1.5px solid #bbf7d0!important}.fc-cell{background:#fafff7;border-left:1.5px solid #bbf7d0}.fc-cell.override-active{background:var(--amber-lt);border-color:var(--amber-md)}.si-input{text-align:right;width:70px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:3px 6px;font-family:IBM Plex Mono,monospace;font-size:12px;transition:all .12s}.si-input:hover{background:var(--accent-lt);border-color:#bae6fd}.si-input:focus{background:var(--accent-lt);border-color:var(--accent-md);cursor:text;outline:none}.si-input.modified{color:var(--amber);font-weight:600}.si-input.modified::placeholder{color:var(--amber)}.row-group-start td{border-top:2px solid var(--border-hi)}.row-group-end td{border-bottom:2px solid var(--border-hi)}.row-si td.left{color:var(--accent)}.row-so td.left{color:var(--green)}.row-inv td.left{color:#6d28d9}.row-wos td.left{color:var(--amber)}.row-metric-label{text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:700;font-family:Plus Jakarta Sans,sans-serif!important}.cat-badge{white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}.acct-badge{white-space:nowrap;border-radius:5px;padding:3px 9px;font-size:11px;font-weight:600}.alert{border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 16px;font-size:12.5px;display:flex}.alert-warn{background:var(--amber-lt);color:#78350f;border:1px solid #fde68a}.alert-info{background:var(--accent-lt);color:#1e3a8a;border:1px solid #bfdbfe}.alert-success{background:var(--green-lt);color:#064e3b;border:1px solid #a7f3d0}.alert-error{background:var(--red-lt);color:#7f1d1d;border:1px solid #fecaca}.chart-2col{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.chart-3col{grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.chart-span2{grid-column:span 2}canvas{max-height:240px}.promo-form-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.form-group{flex-direction:column;gap:4px;display:flex}.form-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;font-weight:700}.form-ctrl{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;outline:none;padding:7px 10px;font-family:Plus Jakarta Sans,sans-serif;font-size:12.5px;transition:border-color .12s}.form-ctrl:focus{border-color:var(--accent-md)}.week-toggle-row{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.wk-tog{border:1px solid var(--border);cursor:pointer;background:var(--surface);color:var(--muted);border-radius:5px;padding:5px 10px;font-size:11px;font-weight:700;transition:all .12s}.wk-tog.on{background:var(--green-lt);border-color:var(--green-md);color:var(--green)}.lift-bar-track{background:var(--border);border-radius:3px;width:100%;height:6px;overflow:hidden}.lift-bar-fill{background:linear-gradient(90deg,var(--accent-md),var(--green-md));border-radius:3px;height:100%;transition:width .3s}.exec-row{grid-template-columns:2fr 1fr;gap:14px;margin-bottom:14px;display:grid}.exec-row-3{grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.risk-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.risk-item:last-child{border-bottom:none}.risk-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.risk-info{flex:1}.risk-name{font-size:12px;font-weight:600}.risk-detail{color:var(--muted);margin-top:1px;font-size:10.5px}.fc-status-bar{background:var(--green-lt);border:1px solid #a7f3d0;border-radius:8px;align-items:center;gap:8px;margin-bottom:14px;padding:10px 16px;display:flex}.fc-status-bar .pulse{background:var(--green-md);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.8)}}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.tab-bar{border-bottom:2px solid var(--border);gap:0;margin-bottom:16px;display:flex}.tab{cursor:pointer;color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 18px;font-size:12.5px;font-weight:600;transition:all .12s}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tab:hover:not(.active){color:var(--text)}.tab-panel{display:none}.tab-panel.active{animation:.2s fadeUp;display:block}.search-box{background:var(--surface2);border:1px solid var(--border);border-radius:7px;align-items:center;gap:7px;padding:7px 12px;display:flex}.search-box input{color:var(--text);background:0 0;border:none;outline:none;width:200px;font-size:12.5px}.toast-wrap{z-index:200;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--text);color:#f8fafc;border-radius:8px;align-items:center;gap:8px;min-width:220px;padding:10px 16px;font-size:12.5px;animation:.2s toastIn;display:flex;box-shadow:0 8px 24px #0000002e}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ai-result{background:linear-gradient(135deg,#e6ebf7,#f0fdf4);border:1px solid #bfdbfe;border-radius:10px;margin-bottom:14px;padding:18px 20px}.ai-badge{background:var(--accent);color:#fff;letter-spacing:.04em;border-radius:5px;align-items:center;gap:5px;margin-bottom:12px;padding:3px 10px;font-size:10.5px;font-weight:700;display:inline-flex}.ai-bullet{color:var(--slate);gap:9px;margin-bottom:8px;font-size:13px;line-height:1.5;display:flex}.ai-bullet:before{content:"›";color:var(--accent);flex-shrink:0;margin-top:1px;font-weight:700}.spark{vertical-align:middle;width:60px;height:24px;display:inline-block}@media (width<=900px){.sidebar{display:none}.card-grid,.card-grid-3,.chart-2col,.chart-3col,.exec-row,.exec-row-3{grid-template-columns:1fr}.chart-span2{grid-column:auto}}.login-page{background:radial-gradient(circle at top right, #1a2d6b1f, transparent 42%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:min(440px,100%);padding:28px;box-shadow:0 18px 50px #0a162814}.login-brand{align-items:center;gap:14px;margin-bottom:24px;display:flex}.login-logo{background:var(--accent);color:#fff;border-radius:12px;place-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:grid}.login-logo svg{width:25px;height:25px}.login-brand h1{color:var(--text);margin:0;font-size:22px}.login-brand p{color:var(--muted);margin:4px 0 0;font-size:14px}.login-form h2{margin:0 0 8px;font-size:20px}.login-hint{color:var(--muted);margin:0 0 18px;font-size:14px;line-height:1.5}.login-label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.login-input{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:10px;margin-bottom:14px;padding:12px 14px;font-size:15px}.login-input:focus{border-color:var(--accent-md);box-shadow:0 0 0 3px var(--accent-lt);outline:none}.login-otp{letter-spacing:.25em;text-align:center;font-weight:700}.login-error{background:var(--red-lt);color:var(--red-md);border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:13px}.login-notice{background:var(--blue-lt,var(--surface-2,#eef2f7));color:var(--blue-md,var(--text-2,#33475b));border-radius:8px;margin-bottom:16px;padding:10px 12px;font-size:13px}.login-submit{width:100%}.login-page .btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;padding:12px 18px;font-size:15px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.login-page .btn:disabled{opacity:.6;cursor:not-allowed}.login-page .btn.primary{background:var(--accent);color:#fff}.login-page .btn.primary:hover:not(:disabled){background:var(--accent-md)}.login-page .btn.ghost{background:var(--surface2);border:1px solid var(--border);color:var(--text)}.login-page .btn.ghost:hover:not(:disabled){border-color:var(--accent-md);color:var(--accent)}.login-actions{flex-direction:column;gap:10px;margin-top:4px;display:flex}.login-actions .btn{width:100%}.login-actions-row{gap:10px;display:flex}.login-actions-row .btn{flex:1}.login-back{margin-top:2px}.user-menu{flex-direction:column;gap:10px;padding-top:8px;display:flex}.user-menu-card{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:10px;padding:10px 12px}.user-menu-name{color:#fff;font-size:13px;font-weight:700;line-height:1.3}.user-menu-meta{color:#ffffffb8;margin-top:4px;font-size:11px;line-height:1.4}.user-menu-role{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#ffffff24;border-radius:999px;margin-top:6px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.user-menu-signout{color:#fff;background:0 0;border-color:#ffffff59;width:100%}.user-menu-signout:hover{background:#ffffff14}.ld-scope{--bg:#f1f5f9;--surface:#fff;--surface-alt:#f8fafc;--border:#e3e8ef;--border-strong:#cbd5e1;--text:#1e293b;--text-muted:#64748b;--text-soft:#94a3b8;--primary:#314380;--primary-hover:#011e41;--primary-soft:#e9edf8;--success:#16a34a;--danger:#dc2626;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 4px 16px #0f172a14;--radius:12px;--radius-sm:8px;color:var(--text);background:var(--bg);font-family:Electrolux Sans,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}.app{flex-direction:column;min-height:100%;display:flex}.ld-topbar{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:22px 36px;display:flex}.brand{align-items:center;gap:16px;display:flex}.logo{color:#fff;background:linear-gradient(135deg,#011e41,#314380);border-radius:14px;place-items:center;width:54px;height:54px;font-size:22px;font-weight:700;display:grid;box-shadow:0 6px 16px #011e414d}.logo svg{width:28px;height:28px}.brand h1{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:700}.brand p{color:var(--text-muted);margin:4px 0 0;font-size:15px}.topbar-right{align-items:center;gap:16px;display:flex}.steps{color:var(--text-soft);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.steps span.on{color:var(--primary);background:var(--primary-soft);border-radius:999px;padding:4px 10px}.steps span.done{color:var(--success)}.steps .sep{color:var(--text-soft)}.db-preview-wrap{position:relative}.db-preview{background:var(--surface-alt);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:9px 14px;font-size:14px;transition:border-color .15s,background .15s;display:inline-flex}.db-preview:hover{border-color:var(--primary);background:var(--primary-soft)}.db-preview b{color:var(--primary);font-weight:700}.db-preview .db-sep{color:var(--text-soft)}.db-dot{background:var(--success);border-radius:50%;flex-shrink:0;width:8px;height:8px}.db-preview.offline .db-dot{background:var(--text-soft)}.db-preview.offline{color:var(--text-muted)}.db-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:340px;box-shadow:var(--shadow-md);z-index:40;padding:16px;animation:.12s ld-fade;position:absolute;top:calc(100% + 8px);right:0}.db-panel-head{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:15px;display:flex}.link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.db-panel-row{color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:14px;display:flex}.db-panel-row b{color:var(--text);text-align:right}.db-panel-sub{text-transform:uppercase;letter-spacing:.05em;color:var(--text-soft);border-top:1px solid var(--border);margin:12px 0 6px;padding-top:12px;font-size:11px;font-weight:700}.db-breakdown{flex-direction:column;gap:6px;max-height:220px;display:flex;overflow-y:auto}.db-breakdown-row{text-align:left;background:var(--surface-alt);cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:7px 10px;font-family:inherit;font-size:13px;transition:border-color .15s,background .15s;display:flex}.db-breakdown-row:hover{border-color:var(--primary);background:var(--primary-soft)}.db-breakdown-row span{color:var(--text)}.db-breakdown-row b{color:var(--primary);flex-shrink:0}.db-viewer-msg{height:100%;color:var(--text-muted);text-align:center;place-items:center;padding:24px;font-size:15px;display:grid}.db-viewer-msg.error{color:var(--danger)}.ld-content{flex:1;padding:36px;display:flex}.intro{flex-direction:column;flex:1;gap:24px;width:100%;margin:0;display:flex}.select-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:28px}.select-card-head{margin-bottom:22px}.select-card-head h2{margin:10px 0 4px;font-size:22px}.select-card-head p{color:var(--text-muted);margin:0;font-size:15px}.badge{background:var(--primary-soft);color:var(--primary);text-transform:uppercase;letter-spacing:.05em;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-block}.select-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field>span{color:var(--text);font-size:14px;font-weight:600}.field select,.field input{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;height:48px;color:var(--text);background:var(--surface);outline:none;padding:0 14px;font-family:inherit;font-size:15px;line-height:1.2}.field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:38px}.field-span{grid-column:1/-1}.period-type-radios{flex-wrap:wrap;gap:10px;display:flex}.period-type-option{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:48px;color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.period-type-option input[type=radio]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.period-type-option:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.period-preview{border-radius:var(--radius-sm);background:var(--primary-soft,#f1f5f9);color:var(--text-muted);margin:0;padding:10px 12px;font-size:13px}.period-preview b{color:var(--text)}.period-existing-warning{border-radius:var(--radius-sm);background:#fffbeb;border:1px solid #fde68a;flex-direction:column;gap:12px;padding:14px 16px;display:flex}.period-existing-warning .dup-head strong{color:#92400e;font-size:15px}.existing-upload-files{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.existing-upload-files li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:baseline;gap:8px 12px;padding:10px 12px;display:flex}.existing-upload-meta{color:var(--muted);font-size:13px}.existing-upload-file{color:var(--primary);font-size:14px;font-weight:600;text-decoration:none}.existing-upload-file:hover{text-decoration:underline}.existing-upload-file-missing{font-size:13px}.period-preview-range{color:var(--muted);margin-left:6px;font-size:12px;font-weight:400}.month-picker{grid-template-columns:1fr 1fr;gap:8px;display:grid}.weekly-picker{grid-template-columns:minmax(140px,200px) minmax(0,1fr);align-items:end;gap:18px;display:grid}@media (width<=560px){.weekly-picker{grid-template-columns:1fr}}.tsel.tsel-wrap-label .tsel-val{white-space:normal;text-overflow:unset;flex:1;min-width:0;line-height:1.35;overflow:visible}.tsel.tsel-wrap-label .tsel-btn{align-items:flex-start;height:auto;min-height:48px;padding-top:12px;padding-bottom:12px}.tsel.tsel-wrap-label .tsel-list{width:100%;min-width:100%}.tsel.tsel-wrap-label .tsel-opt{align-items:flex-start;padding-top:10px;padding-bottom:10px}.tsel.tsel-wrap-label .tsel-opt-label{white-space:normal;text-overflow:unset;line-height:1.35;overflow:visible}.period-picker{flex-direction:column;gap:8px;display:flex}.week-check{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);height:48px;color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}.week-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.week-check:has(input:disabled){opacity:.6;cursor:not-allowed}.field select:disabled,.field input:disabled{background:var(--primary-soft,#f1f5f9);color:var(--text-muted);cursor:not-allowed;opacity:.7}.field select:focus,.field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.dropzone{background:var(--surface);border:2px dashed var(--border-strong);text-align:center;cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;min-height:300px;padding:36px;transition:border-color .2s,background .2s,transform .1s;display:flex}.dropzone:hover{border-color:var(--primary);background:var(--primary-soft)}.dropzone.dragging{border-color:var(--primary);background:var(--primary-soft);transform:scale(1.01)}.dropzone.disabled{cursor:not-allowed;opacity:.6;background:var(--surface-alt);border-color:var(--border)}.dropzone.disabled:hover{border-color:var(--border);background:var(--surface-alt)}.dropzone .badge{margin-bottom:4px}.drop-icon{background:var(--primary-soft);width:76px;height:76px;color:var(--primary);border-radius:50%;place-items:center;margin-bottom:8px;font-size:32px;display:grid}.dropzone h2{margin:0;font-size:24px}.dropzone p{color:var(--text-muted);margin:0;font-size:15px}.error{font-weight:500;color:var(--danger)!important;margin-top:8px!important}.file-chip{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:8px;margin-bottom:14px;padding:8px 10px;display:flex}.file-chip .dot{background:var(--success);border-radius:50%;flex-shrink:0;width:8px;height:8px}.file-name{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:500;overflow:hidden}.muted{color:var(--text-muted);font-size:13px}.btn{border-radius:var(--radius-sm);border:none;padding:11px 18px;font-size:15px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-hover)}.btn.primary:disabled{opacity:.55;cursor:not-allowed}.btn.outline{background:var(--surface);border:1px solid var(--border-strong);color:var(--text)}.btn.outline:hover{border-color:var(--primary);color:var(--primary)}.btn.ghost{background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted)}.btn.ghost:hover{color:var(--primary);border-color:var(--primary)}.btn.danger{color:#fff;background:#c0392b}.btn.danger:hover{background:#a93226}.btn.full{width:100%;margin-top:12px}.btn.sm{padding:7px 12px;font-size:13px}.configure{flex-direction:column;flex:1;gap:18px;width:100%;min-width:0;display:flex}.config-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.config-actions{gap:10px;display:flex}.head-info{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.context-tags{flex-wrap:wrap;gap:8px;display:flex}.ctx{background:var(--surface-alt);border:1px solid var(--border);color:var(--text);border-radius:6px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex}.ctx b{text-transform:uppercase;letter-spacing:.05em;color:var(--text-soft);font-size:10px;font-weight:700}.file-chip.lg{margin-bottom:0;padding:10px 14px;font-size:14px}.config-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:18px}.block-label{color:var(--text);flex-direction:column;gap:4px;margin-bottom:16px;font-size:17px;font-weight:700;display:flex}.block-hint{color:var(--text-muted);font-size:13px;font-weight:400}.sheet-select{width:100%;max-width:420px}.header-row-input{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.header-row-input label{color:var(--text-muted);font-size:15px;font-weight:600}.header-row-input input{border:1px solid var(--border-strong);border-radius:8px;outline:none;width:90px;padding:10px 12px;font-size:15px}.header-row-input input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.source-line{flex-wrap:wrap;gap:10px;display:flex}.source-line .sheet-file{margin-bottom:0}.sheet-file{background:var(--surface-alt);border:1px solid var(--border);color:var(--text);border-radius:8px;align-items:center;gap:8px;max-width:100%;margin-bottom:12px;padding:9px 14px;font-size:14px;font-weight:600;display:inline-flex}.sheet-file .dot{background:var(--primary);border-radius:50%;flex:none;width:9px;height:9px}.sheet-file .file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.num-stepper{border:1px solid var(--border-strong);background:var(--surface);border-radius:8px;align-items:stretch;display:inline-flex;overflow:hidden}.num-stepper input{border:none;border-left:1px solid var(--border);border-right:1px solid var(--border);text-align:center;-moz-appearance:textfield;border-radius:0;outline:none;width:64px;padding:10px 8px;font-size:15px;font-weight:600}.num-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.num-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.num-stepper input:focus{box-shadow:inset 0 0 0 2px var(--primary-soft)}.step-btn{background:var(--surface-alt);color:var(--text);cursor:pointer;border:none;width:40px;font-size:20px;font-weight:700;line-height:1;transition:background .12s}.step-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.step-btn:disabled{opacity:.4;cursor:not-allowed}.config-footer{justify-content:flex-end;gap:10px;display:flex}.detected-cols{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:16px;padding:12px 14px}.detected-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);margin-bottom:12px;font-size:13px;font-weight:700}.tag-list{flex-wrap:wrap;gap:8px;display:flex}.tag{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm);border:1px solid #3143804d;border-radius:6px;align-items:center;gap:8px;padding:8px 14px 8px 8px;font-size:14px;font-weight:600;display:inline-flex}.tag-idx{background:var(--primary);color:#fff;border-radius:4px;place-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:inline-grid}.mapper{width:100%;max-width:none}.map-table{flex-direction:column;gap:10px;display:flex}.preset-hint{background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-sm);border:1px solid #31438033;align-items:center;gap:8px;margin-bottom:12px;padding:9px 12px;font-size:13px;font-weight:500;display:flex}.preset-hint-icon{font-size:15px;font-weight:700}.map-row{grid-template-columns:minmax(180px,240px) 36px minmax(0,1fr);align-items:center;gap:12px;display:grid}.map-group{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-alt);flex-direction:column;gap:10px;padding-bottom:10px;display:flex}.map-group-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:9px 12px;display:flex}.map-group-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text);font-size:12px;font-weight:700}.map-group-note{color:var(--text-muted);font-size:12px}.map-group.is-satisfied{background:#f4fbf7;border-color:#b7e0c6}.map-group.is-satisfied .map-group-head{border-bottom-color:#cdeada}.map-group.is-satisfied .map-group-note{color:#1d7a45}.map-group .map-row{padding:0 12px}.map-row-hint{color:var(--text-muted);grid-column:3;margin:2px 0 0;font-size:12px;line-height:1.45}.map-actions{border-top:1px solid var(--border-strong);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:14px;padding-top:14px;display:flex}.map-actions-status{align-items:center;gap:14px;margin-right:auto;display:flex}.map-actions-status .v-status{white-space:nowrap;font-size:13px;font-weight:600}.v-status.ok{color:#15803d}.v-status.warn{color:#b45309}.v-status.err{color:var(--danger)}.map-row.map-head{text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);margin-bottom:2px;font-size:12px;font-weight:700}.db-field{background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-sm);border:1px solid #31438033;align-items:center;padding:11px 14px;font-size:15px;font-weight:600;display:inline-flex}.db-field .req{color:#dc2626;font-style:normal;font-weight:700}.map-arrow{text-align:center;color:var(--text-soft);font-size:18px;font-weight:700}.tsel{width:100%;position:relative}.tsel-btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);background:var(--surface);cursor:pointer;text-align:left;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:11px 12px 11px 14px;font-size:15px;display:flex}.tsel-btn:hover{border-color:var(--primary)}.tsel.open .tsel-btn,.tsel-btn:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.tsel-btn.placeholder .tsel-val{color:var(--text-soft)}.tsel-val{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tsel-caret{color:var(--text-soft);flex-shrink:0;transition:transform .15s;display:inline-flex}.tsel.open .tsel-caret{color:var(--primary);transform:rotate(180deg)}.tsel-list{z-index:50;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);max-height:420px;box-shadow:var(--shadow-md);margin:0;padding:4px;list-style:none;animation:.1s ld-fade;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.tauto .tauto-control{align-items:center;display:flex;position:relative}.tauto .tauto-input{text-align:left;cursor:text;width:100%;padding-right:34px}.tauto.has-clear .tauto-input{padding-right:56px}.tauto .tauto-input::placeholder{color:var(--text-soft)}.tauto .tauto-caret{pointer-events:none;color:var(--text-muted);display:flex;position:absolute;right:10px}.tauto.open .tauto-caret{transform:rotate(180deg)}.tauto .tauto-clear{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;font-size:15px;line-height:1;display:grid;position:absolute;right:32px}.tauto .tauto-clear:hover{color:var(--text);background:var(--primary-soft)}.tauto-empty{cursor:default;justify-content:center}.tauto-mark{color:inherit;background:#fde68a;border-radius:2px;padding:0 1px;font-weight:700}.tsel.disabled .tsel-btn{background:var(--primary-soft,#f1f5f9);color:var(--text-muted);cursor:not-allowed;opacity:.7}.field .tsel-btn{height:48px}.tsel-opt{color:var(--text);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:9px 10px;font-size:14px;display:flex}.tsel-opt.muted .tsel-opt-label{color:var(--text-soft)}.tsel-opt.active{background:var(--primary-soft)}.tsel-opt.selected{color:var(--primary);font-weight:600}.tsel-opt-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tsel-check{color:var(--primary);flex-shrink:0;width:14px;font-weight:700}.tsel.tsel-compact{width:auto;min-width:82px}.tsel-compact .tsel-btn{border-radius:6px;height:30px;padding:0 8px 0 10px;font-size:13px}.tsel-compact .tsel-list{padding:3px;top:auto;bottom:calc(100% + 4px)}.tsel-compact .tsel-opt{padding:6px 8px;font-size:13px}.save-block{flex-direction:column;gap:14px;display:flex}.dup-warning{border-radius:var(--radius-sm);background:#fffbeb;border:1px solid #fde68a;flex-direction:column;gap:14px;padding:14px 16px;display:flex}.dup-head{align-items:flex-start;gap:12px;display:flex}.dup-icon{color:#fff;background:#f59e0b;border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;font-size:15px;font-weight:800;display:grid}.dup-head strong{color:#92400e;font-size:15px}.dup-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dup-opt{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;align-items:flex-start;gap:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.dup-opt.on{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.dup-opt input{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex-shrink:0;margin-top:3px}.dup-opt span{flex-direction:column;gap:3px;display:flex}.dup-opt b{color:var(--text);font-size:14px}.dup-opt small{color:var(--text-muted);font-size:12.5px;line-height:1.4}@media (width<=620px){.ld-scope .dup-options{grid-template-columns:1fr}}.save-info{color:var(--text);flex-wrap:wrap;align-items:center;gap:10px;font-size:15px;display:flex}.save-info strong{font-size:18px}.save-info-totals{color:var(--text-muted)}.save-info-totals strong{color:var(--text);font-size:15px}.save-msg{border-radius:var(--radius-sm);padding:11px 14px;font-size:14px;font-weight:500}.save-msg.ok{color:#15803d;background:#ecfdf3;border:1px solid #abefc6}.save-msg.warn{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.save-msg.err{color:var(--danger);background:#fef2f2;border:1px solid #fecaca}.validate-results{flex-direction:column;gap:12px;display:flex}.validate-result-card{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.validate-result-card--model{border-left:4px solid #6366f1}.validate-result-card--store{border-left:4px solid #0284c7}.validate-result-card--date{border-left:4px solid #d97706}.validate-result-card--rule{border-left:4px solid #7c3aed}.validate-result-card.ok{background:#f8fafc}.validate-result-card.warn{background:#fffbeb;border-color:#fde68a}.validate-result-card.err{background:#fef2f2;border-color:#fecaca}.validate-result-card-head{align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.validate-result-card-icon{border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;margin-top:1px;font-size:14px;font-weight:700;display:inline-flex}.validate-result-card-icon.ok{color:#15803d;background:#dcfce7}.validate-result-card-icon.warn{color:#b45309;background:#fef3c7}.validate-result-card-icon.err{color:#dc2626;background:#fee2e2}.validate-result-card-copy{min-width:0}.account-groups{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.account-group-card{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:#f8fafc;padding:12px 16px}.account-group-card.warn{background:#fffbeb;border-color:#fde68a}.account-group-card.err{background:#fef2f2;border-color:#fecaca}.account-group-head{align-items:center;gap:10px;margin-bottom:4px;display:flex}.account-group-icon{border-radius:50%;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.account-group-icon.ok{color:#15803d;background:#dcfce7}.account-group-icon.warn{color:#b45309;background:#fef3c7}.account-group-icon.err{color:#dc2626;background:#fee2e2}.account-group-counts{font-size:13px}.validate-result-card-title{color:var(--text);margin:0;font-size:16px;font-weight:700;line-height:1.35}.validate-result-card.warn .validate-result-card-title{color:#92400e}.validate-result-card.ok .validate-result-card-title{color:#166534}.validate-result-card-detail{color:var(--text-soft);margin:4px 0 0;font-size:13px;line-height:1.45}.validate-result-card-body{flex-direction:column;gap:10px;padding:0 16px 14px 56px;display:flex}.validate-result-card-actions{flex-wrap:wrap;gap:8px;display:flex}.validate-result-extra{border-radius:var(--radius-sm);color:#92400e;background:#ffffffb3;border:1px dashed #fcd34d;flex-wrap:wrap;align-items:center;gap:8px;margin:0 16px 14px;padding:10px 12px;font-size:13px;display:flex}.validate-result-extra .v-show-btn{margin-left:auto}.validate-panel{border-radius:var(--radius-sm);border:1px solid;flex-direction:column;gap:10px;padding:14px 16px;font-size:14px;display:flex}.validate-panel.ok{color:#15803d;background:#ecfdf3;border-color:#abefc6}.validate-panel.warn{color:#b45309;background:#fefce8;border-color:#fde68a}.validate-panel.err{color:var(--danger);background:#fef2f2;border-color:#fecaca}.validate-line{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.validate-summary{border-radius:var(--radius-sm);color:#3730a3;background:#eef2ff;border:1px solid #c7d2fe;flex-wrap:wrap;align-items:center;gap:6px;padding:12px 16px;font-size:14px;display:flex}.validate-summary .v-icon{color:#fff;background:#15803d;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:inline-flex}.validate-summary .v-show-btn{margin-left:auto}.validate-panel .v-icon{color:#fff;background:currentColor;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-right:6px;font-size:12px;font-weight:700;display:inline-flex}.validate-panel.ok .v-icon{color:#15803d}.validate-block{flex-direction:column;gap:8px;display:flex}.v-warn-title{font-weight:600}.v-show-btn{flex:none;margin-left:10px}.validate-line .v-show-btn{margin-left:auto}.v-chips{flex-wrap:wrap;gap:6px;display:flex}.v-chip{color:#92400e;background:#b453091a;border:1px solid #b4530940;border-radius:999px;padding:3px 9px;font-size:13px;font-weight:500;display:inline-block}.bulk-mapping-actions{border-top:1px dashed var(--border);flex-wrap:wrap;gap:10px;margin-top:4px;padding-top:10px;display:flex}.bulk-upload-label{cursor:pointer;margin:0}.bulk-upload-label.disabled{opacity:.6;pointer-events:none}.bulk-upload-label input{display:none}.v-chip.more{background:0 0;border-style:dashed}.validate-panel .muted{color:inherit;opacity:.85}.save-actions{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.save-actions-left,.save-actions-right{align-items:center;display:flex}.db-status{color:var(--text-muted);align-items:center;gap:12px;font-size:14px;display:flex}.modal-overlay{z-index:9500;background:#0f172a73;place-items:center;padding:28px;animation:.12s ld-fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius);width:min(1100px,100%);height:min(80vh,760px);box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-head h3{margin:0 0 2px;font-size:16px}.preview-tabs{gap:8px;padding:10px 20px 0;display:flex}.preview-tab{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-soft);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600}.preview-tab:hover{border-color:var(--primary)}.preview-tab.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.modal-grid{flex:1;min-height:0;padding:10px}.modal-grid>*{width:100%;height:100%}.modal.confirm-modal{overflow:visible}.confirm-modal{width:min(440px,100%);height:auto}.confirm-body{color:var(--text);padding:20px;font-size:15px;line-height:1.55;overflow:visible}.confirm-body p{margin:0}.delete-modal{width:min(480px,100%)}.sync-confirm-modal{width:min(500px,100%)}.sync-confirm-warning{border-radius:var(--radius-sm);color:#704c00;background:#fff8e7;border:1px solid #f0c36a;align-items:flex-start;gap:12px;padding:14px;display:flex}.sync-confirm-icon{color:#fff;background:#e8a400;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:800;display:inline-flex}.sync-confirm-details{color:var(--text-muted);font-size:13px;margin-top:16px!important}.delete-reason-block{flex-direction:column;gap:16px;margin-top:20px;display:flex;overflow:visible}.delete-reason-block .tsel-list{z-index:9600;max-height:240px}.delete-reason-block .field>span{color:var(--text);font-size:13px;font-weight:600}.delete-details{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);background:var(--surface);resize:vertical;outline:none;min-height:96px;padding:10px 12px;font-family:inherit;font-size:14px;line-height:1.45}.delete-details:focus{border-color:var(--primary)}.field-hint{color:var(--text-muted);font-size:12px}.confirm-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.leave-upload-modal{width:min(560px,100%);position:relative}.modal-close{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:15px;line-height:1;transition:background .15s,color .15s;display:inline-flex;position:absolute;top:12px;right:12px}.modal-close:hover{background:var(--surface-alt);color:var(--text)}.leave-upload-modal .modal-head{padding-right:52px}.leave-upload-modal .confirm-body p+p{margin-top:10px}.leave-upload-modal .confirm-actions{flex-wrap:wrap}.leave-upload-modal .confirm-actions .btn{white-space:nowrap}@media (width<=620px){.leave-upload-modal .confirm-actions{flex-direction:column-reverse;align-items:stretch}.leave-upload-modal .confirm-actions .btn{width:100%}}.success-modal{width:min(420px,100%);height:auto;position:relative}.success-close{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:15px;display:inline-flex;position:absolute;top:12px;right:12px}.success-close:hover{background:var(--surface-alt);color:var(--text)}.success-body{text-align:center;padding:32px 24px 20px}.success-icon{color:#1d7a45;background:#e3f6ea;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:28px;font-weight:700;display:flex}.success-body h3{color:var(--text);margin:0 0 8px;font-size:19px}.success-body p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.5}.success-breakdown{text-align:left;border:1px solid var(--border-strong);border-radius:var(--radius-sm);margin:16px 0 0;padding:0;list-style:none;overflow:hidden}.success-breakdown li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 14px;font-size:14px;display:flex}.success-breakdown li:last-child{border-bottom:none}.alias-modal{width:min(920px,100%);height:auto;max-height:88vh}.alias-body{grid-template-columns:1fr auto 1fr;gap:14px;min-height:0;padding:16px 20px;display:grid}.alias-col{flex-direction:column;min-height:0;display:flex}.alias-col-head{text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.alias-count{color:var(--primary);text-transform:none;letter-spacing:0}.alias-search{border:1px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;margin-bottom:8px;padding:9px 12px;font-size:14px}.alias-search:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.alias-list{flex-direction:column;flex:1;gap:6px;max-height:320px;padding-right:4px;display:flex;overflow-y:auto}.account-picker-actions{align-items:center;gap:8px;margin-bottom:8px;display:flex}.field .account-picker-search{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-width:0;height:38px;color:var(--text);background:var(--surface);outline:none;flex:220px;padding:0 12px;font-family:inherit;font-size:14px}.field .account-picker-search:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.account-picker-list{flex-flow:wrap;max-height:none}.account-picker-list .alias-tag{width:auto}.alias-tag,.alias-db{text-align:left;border:1px solid var(--border-strong);background:var(--surface);border-radius:var(--radius-sm);width:100%;color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:9px 12px;font-size:14px;display:flex}.alias-tag:hover,.alias-db:hover{border-color:var(--primary)}.alias-tag.on,.alias-db.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:600}.alias-tag.drafted{opacity:.6}.alias-check,.alias-radio{text-align:center;width:16px;color:var(--primary);font-weight:700}.alias-done{text-transform:uppercase;letter-spacing:.04em;color:#15803d;margin-left:auto;font-size:11px}.alias-mid{flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.alias-arrow{color:var(--text-soft);font-size:22px}.alias-draft{border-top:1px solid var(--border);background:#e8f4ec;flex-direction:column;gap:8px;max-height:200px;padding:14px 20px;display:flex;overflow-y:auto}.alias-draft-head{text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);font-size:12px;font-weight:700}.alias-draft-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.alias-canonical{color:var(--primary);font-weight:700}.alias-eq{color:var(--text-soft)}.alias-draft-tags{flex-wrap:wrap;gap:6px;display:flex}.alias-pill{background:var(--primary-soft);color:var(--primary);border-radius:999px;align-items:center;gap:6px;padding:4px 6px 4px 12px;font-size:13px;font-weight:600;display:inline-flex}.alias-x{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.alias-saved{border-top:1px solid var(--border);flex-direction:column;gap:8px;max-height:160px;padding:14px 20px;display:flex;overflow-y:auto}.alias-saved-head{text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);font-size:12px;font-weight:700}.alias-saved-list{flex-wrap:wrap;gap:6px;display:flex}.alias-pill.saved{background:var(--surface);border:1px solid var(--border-strong);color:var(--text)}.alias-pill .alias-pill-eq{color:var(--text-soft);font-weight:700}.alias-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.alias-footer-actions{gap:10px;display:flex}@keyframes ld-fade{0%{opacity:0}to{opacity:1}}.uploads{flex-direction:column;flex:1;gap:20px;width:100%;margin:0;display:flex}.uploads-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.uploads-head h2{margin:0 0 4px;font-size:24px}.uploads-head p{max-width:540px;color:var(--text-muted);margin:0;font-size:15px}.uploads-empty{border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;color:var(--text-muted);background:var(--surface);padding:48px 24px}.uploads-summary{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 4px 2px;font-size:14px;display:flex}.uploads-export-btn{margin-left:auto}.uploads-export-btn+.uploads-export-btn{margin-left:0}.uploads-summary-count b{color:var(--text);font-size:16px}.uploads-summary-sep{opacity:.45;margin:0 4px}.uploads-summary-filtered,.uploads-summary-totals{font-size:13px}.uploads-summary-totals b{color:var(--text);font-size:14px}.uploads-pagination{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 20px;margin-top:16px;padding:14px 16px;display:flex}.uploads-page-info{color:var(--text-muted);text-align:center;font-size:14px}.uploads-page-info b{color:var(--text)}.uploads-page-range{color:var(--text-soft);margin-top:2px;font-size:12px;display:block}@media (width>=640px){.uploads-page-range{margin-top:0;margin-left:4px;display:inline}}.uploads-filters{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:14px 16px;display:flex}.uploads-filters-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.uploads-filters-row-bottom .filter-field{flex:180px}.filter-field{flex-direction:column;flex:160px;gap:6px;min-width:140px;display:flex}.filter-field>span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.filter-field input:not(.tdate-native){box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;height:42px;color:var(--text);background:var(--surface);outline:none;padding:0 12px;font-family:inherit;font-size:14px}.filter-field input:not(.tdate-native):focus{border-color:var(--primary)}.tdate{width:100%;position:relative}.tdate-btn{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;height:42px;color:var(--text);background:var(--surface);cursor:pointer;text-align:left;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:0 12px 0 14px;font-family:inherit;font-size:14px;display:flex}.tdate-btn:hover{border-color:var(--primary)}.tdate.open .tdate-btn,.tdate-btn:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.tdate-btn.placeholder .tdate-val{color:var(--text-soft)}.tdate-val{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tdate-icon{color:var(--text-soft);flex-shrink:0;transition:color .15s;display:inline-flex}.tdate.open .tdate-icon,.tdate-btn:hover .tdate-icon{color:var(--primary)}.tdate.disabled .tdate-btn{background:var(--primary-soft,#f1f5f9);color:var(--text-muted);cursor:not-allowed;opacity:.7}.tdate-native{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.filter-field .tsel-btn,.filter-field .tdate-btn{height:42px;padding-top:0;padding-bottom:0;font-size:14px}.filter-field .tauto .tauto-input{padding-right:34px}.filter-field .tauto.has-clear .tauto-input{padding-right:56px}.filter-clear{flex:none;height:42px}.uploads-list{flex-direction:column;gap:12px;display:flex}.upload-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);box-shadow:var(--shadow-sm);align-items:center;gap:8px;padding:16px 20px;transition:border-color .15s,box-shadow .15s;display:flex}.upload-row:hover{border-color:var(--primary);box-shadow:0 4px 14px #3143801f}.upload-open{text-align:left;min-width:0;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;gap:18px;margin:0;padding:0;display:flex}.upload-open:active{transform:translateY(1px)}.upload-delete{border-radius:var(--radius-sm);width:38px;height:38px;color:var(--text-muted);cursor:pointer;opacity:.55;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:background .15s,color .15s,opacity .15s,border-color .15s;display:inline-flex}.upload-row:hover .upload-delete{opacity:1}.upload-row-actions{flex:none;align-items:center;gap:6px;display:flex}.upload-sync{border-radius:var(--radius-sm);min-width:58px;height:34px;color:var(--primary);cursor:pointer;background:#eef2ff;border:1px solid #aebcea;padding:0 12px;font-size:12px;font-weight:700}.upload-sync:hover{border-color:var(--primary);background:#e2e8ff}.upload-sync-locked{color:var(--text-muted);flex:none;padding:8px;font-size:15px}.upload-delete:hover{color:#c0392b;background:#fdecec;border-color:#f3c2c2}.upload-main{flex-direction:column;gap:8px;min-width:0;display:flex}.upload-title{align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.upload-sep{color:var(--text-muted);font-weight:400}.upload-account{color:var(--text);font-weight:600}.upload-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.upload-chip{background:var(--primary-soft);color:var(--primary);border-radius:6px;padding:3px 10px;font-weight:600;display:inline-block}.upload-accounts{text-overflow:ellipsis;white-space:nowrap;max-width:420px;overflow:hidden}.upload-side{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.upload-count{color:var(--text);font-size:15px}.upload-count b{font-size:18px}.upload-totals{color:var(--text-muted);font-size:13px}.upload-totals b{color:var(--text);font-size:15px}.upload-totals-sep{opacity:.5;margin:0 6px}.upload-by{color:var(--text-muted);font-size:12px}.upload-status{white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;background:var(--border);width:fit-content;color:var(--text-muted);border-radius:999px;flex:none;align-items:center;margin-top:2px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.upload-status.status-pending{color:#b06f00;background:#fff4e0}.upload-status.status-approved,.upload-status.status-active,.upload-status.status-success{color:#1d7a45;background:#e3f6ea}.upload-status.status-deleted{color:#b42318;background:#fde8e8}.upload-status.status-overwritten{color:#2c3d78;background:#e0e7ff;box-shadow:inset 0 0 0 1px #b3c0ec}.upload-status.status-unsynced{color:#a86400;background:#fff4e0}.upload-status.status-synced{color:#1d7a45;background:#e3f6ea}.upload-row-deleted{background:#fdeaea;border-color:#f3c4c4}.upload-row-deleted:hover{background:#fce4e4;border-color:#e8a8a8;box-shadow:0 4px 14px #b423181a}.upload-row-deleted .upload-open{background:0 0}.upload-file-link{color:var(--primary);margin-top:6px;font-size:12px;font-weight:600;text-decoration:none;display:inline-block}.upload-file-link:hover{text-decoration:underline}.modal-file-link{margin-top:8px}.upload-audit-line{margin-top:4px;font-size:12px;line-height:1.5;display:block}.uploads-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-height:min(640px,62vh);box-shadow:var(--shadow-sm);overflow:auto}.uploads-table{border-collapse:collapse;width:100%;font-size:14px}.uploads-table th,.uploads-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;max-width:260px;padding:9px 12px;overflow:hidden}.uploads-table th{background:var(--surface-alt);letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:700}.uploads-table thead th{z-index:3;box-shadow:inset 0 -1px 0 var(--border);position:sticky;top:0}.uploads-table tbody tr:last-child td{border-bottom:none}.uploads-table tbody tr:hover td{background:#fbfcfe}.uploads-table tbody tr.is-deleted td{background:#fdeaea}.uploads-table tbody tr.is-deleted:hover td{background:#fce4e4}.uploads-table .num-col{text-align:right;font-variant-numeric:tabular-nums}.uploads-table th.num-col .col-sort-btn{justify-content:flex-end}.uploads-table .uploads-table-retailer{color:var(--text);font-weight:600}.uploads-table .upload-chip,.uploads-table .upload-status{white-space:nowrap;margin-top:0}.uploads-table-status{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.uploads-table .upload-file-link{margin-top:0}.uploads-table-actions{align-items:center;gap:6px;display:flex}.row-actions-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:26px;color:var(--text);cursor:pointer;align-items:center;gap:4px;padding:0 8px;font-size:11px;font-weight:700;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.row-actions-btn:hover,.row-actions-btn.is-open{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.row-actions-caret{transition:transform .15s;display:inline-flex}.row-actions-btn.is-open .row-actions-caret{transform:rotate(180deg)}.row-actions-menu{z-index:3000;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:170px;padding:4px;position:fixed;box-shadow:0 10px 28px #0f172a29}.row-actions-item{box-sizing:border-box;border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:7px 9px;font-family:inherit;font-size:12px;font-weight:600;text-decoration:none;display:flex}.row-actions-item:hover{background:var(--primary-soft);color:var(--primary)}.row-actions-item.is-danger:hover{color:#c0392b;background:#fdecec}.row-actions-item:disabled{background:var(--surface-alt);color:var(--text-muted);cursor:default}.row-actions-item:disabled .row-actions-item-icon{opacity:.7}.row-actions-item:disabled:hover{background:var(--surface-alt);color:var(--text-muted)}.row-actions-item-icon{text-align:center;width:16px;font-size:13px}.uploads-table th.row-serial-col,.uploads-table td.row-serial-col{z-index:1;text-align:right;width:46px;min-width:46px;max-width:46px;color:var(--text-muted);font-variant-numeric:tabular-nums;padding-left:8px;padding-right:8px;position:sticky;left:0}.uploads-table th.row-actions-col,.uploads-table td.row-actions-col{z-index:1;width:92px;min-width:92px;box-shadow:inset -1px 0 0 var(--border);position:sticky;left:46px}.uploads-table thead th.row-serial-col,.uploads-table thead th.row-actions-col{z-index:4}.uploads-table thead th.row-actions-col{box-shadow:inset 0 -1px 0 var(--border), inset -1px 0 0 var(--border)}.uploads-table tbody td.row-serial-col,.uploads-table tbody td.row-actions-col{background:var(--surface)}.uploads-table tbody tr:hover td.row-serial-col,.uploads-table tbody tr:hover td.row-actions-col{background:#fbfcfe}.uploads-table tbody tr.is-deleted td.row-serial-col,.uploads-table tbody tr.is-deleted td.row-actions-col{background:#fdeaea}.uploads-table tbody tr.is-deleted:hover td.row-serial-col,.uploads-table tbody tr.is-deleted:hover td.row-actions-col{background:#fce4e4}.uploads-table th.sortable-col{padding:0}.uploads-table th.sortable-col .col-sort-btn{width:100%;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:9px 12px;display:flex}.uploads-table th.sortable-col .col-sort-btn:hover{color:var(--text)}.uploads-table th.sortable-col .col-sort-btn:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.uploads-table .col-sort-icon{opacity:.3;font-size:10px;line-height:1}.uploads-table th.sortable-col .col-sort-btn:hover .col-sort-icon{opacity:.65}.uploads-table thead th.is-sorted{background:var(--primary-soft);color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}.uploads-table thead th.is-sorted .col-sort-icon{opacity:1}.uploads-summary-sort{align-items:center;gap:8px;font-size:13px;display:inline-flex}.uploads-summary-sort strong{color:var(--text)}.uploads-summary .sort-clear-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:1px 9px;font-size:11px}.uploads-summary .sort-clear-btn:hover{color:var(--primary);border-color:var(--primary)}@media (width<=880px){.ld-scope .ld-content{padding:18px}.ld-scope .select-grid{grid-template-columns:1fr}.ld-scope .upload-row{flex-direction:column;align-items:stretch}.ld-scope .upload-side{text-align:left;align-items:flex-start}.ld-scope .upload-accounts{white-space:normal;max-width:100%}}.mappings-content{flex-direction:column;align-items:stretch;gap:0;width:100%;padding:24px 36px 40px}.mappings-toolbar{flex-direction:column;align-items:stretch;gap:12px;width:100%;margin-bottom:24px;display:flex}.mappings-toolbar-filters{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);width:100%;padding:16px 18px}.mappings-filter-summary{margin:0;font-size:13px}.mappings-filter-summary-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;display:flex}.master-data-actions{flex:none;align-items:center;gap:10px;display:flex}.view-toggle{border:1px solid var(--border-strong);border-radius:8px;flex:none;display:inline-flex;overflow:hidden}.view-toggle-btn{background:var(--surface);color:var(--text-soft);cursor:pointer;border:none;padding:7px 14px;font-size:13px;font-weight:600}.view-toggle-btn+.view-toggle-btn{border-left:1px solid var(--border-strong)}.view-toggle-btn.active{background:var(--primary-soft);color:var(--primary)}.status-pill{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.status-pill.is-active{color:var(--success);background:#16a34a1f}.status-pill.is-inactive{color:var(--danger);background:#dc26261f}.bulk-actions-bar{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px;margin-top:12px;padding-top:12px;display:flex}.bulk-select-all{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.bulk-selected-count{color:var(--text-soft);font-size:13px;font-weight:600}.bulk-actions-buttons{gap:8px;margin-left:auto;display:flex}.select-col{text-align:center;width:36px}.row-actions-col{white-space:nowrap;width:64px}.row-actions-col .btn.sm{padding:3px 10px;font-size:12px}.mappings-table td.audit-time{white-space:nowrap}.mappings-table tr.is-selected{background:var(--primary-soft)}.store-card-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.store-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.store-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.store-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:10px;padding-bottom:10px;display:flex}.store-card-title{flex-direction:column;flex:auto;align-items:flex-start;gap:6px;min-width:0;display:flex}.store-card-name{white-space:normal;overflow-wrap:anywhere;word-break:break-word;max-width:100%;font-size:15px;line-height:1.3;display:block}.store-card-head-actions{flex:none;align-items:center;gap:8px;display:flex}.store-card-check{flex:none;width:18px;height:18px;margin-top:2px}.store-card-details{grid-template-columns:repeat(2,1fr);gap:10px 14px;margin:0;display:grid}.store-card-field{min-width:0}.store-card-field dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 2px;font-size:11px}.store-card-field dd{color:var(--text);overflow-wrap:break-word;margin:0;font-size:13px}.store-edit-modal{width:min(1040px,100%);height:auto;max-height:min(88vh,900px)}.store-edit-body{flex:auto;gap:16px;min-height:0;padding:18px 20px 140px;overflow-y:auto}.store-edit-body .tsel-list{max-height:240px}.store-edit-body .store-panel{box-shadow:none;background:0 0;border:0;padding:0 0 4px}.store-edit-body .store-panel-primary{border-top:0}.store-edit-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.store-edit-foot p{margin:0;font-size:12px}.store-edit-foot-actions{gap:9px;margin-left:auto;display:flex}.mappings-refresh-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.mappings-refresh-time{font-size:12px;line-height:1.4}.mappings-sections{flex-direction:column;gap:28px;width:100%;display:flex}.mappings-filters{flex-flow:wrap;align-items:flex-end;gap:16px;width:100%;display:flex}.mappings-page .mappings-filters .filter-field{flex:200px;min-width:0}.mappings-filters input[type=search]{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;height:42px;color:var(--text);padding:0 12px;font-size:14px}.mappings-page .mappings-filters .mappings-search-field{flex-basis:320px}.mapping-search-highlight{color:inherit;background:#ffe66d;border-radius:2px;padding:0 1px}.mappings-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.mappings-section-head h2{margin:0;font-size:18px;font-weight:700}.mappings-section-count{color:var(--text-muted);font-size:13px;font-weight:600}.mappings-empty-inline{padding:24px 16px;font-size:14px}.mappings-tabs{flex-wrap:wrap;gap:8px;display:flex}.mappings-tab{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:600;transition:border-color .15s,background .15s;display:inline-flex}.mappings-tab.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.mappings-tab-count{color:var(--primary);background:#3143801f;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700}.mappings-tab.on .mappings-tab-count{background:#3143802e}.mappings-empty{text-align:center;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);padding:48px 24px}.mappings-section{width:100%}.mappings-view-all{text-align:center;margin:12px 0 0}.mappings-view-all-link{color:var(--primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:14px;font-weight:600;text-decoration:underline}.mappings-view-all-link:hover{color:var(--primary-hover)}.mappings-columns-modal{width:min(1200px,100%);height:min(85vh,820px)}.mappings-modal-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px 20px 20px;display:flex;overflow:hidden}.mappings-modal-body .mappings-table-wrap{flex:1;min-height:0;overflow:auto}.mappings-modal-pagination{flex-shrink:0;margin-top:0}.mappings-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:auto}.mappings-table{border-collapse:collapse;width:100%;font-size:14px}.mappings-table th,.mappings-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:12px 14px}.mappings-table th{background:var(--surface-alt);letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:700}.mappings-table tbody tr:last-child td{border-bottom:none}.mappings-table tbody tr:hover td{background:#fbfcfe}.mapping-col{background:var(--primary-soft);color:var(--primary);border-radius:4px;padding:2px 6px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px}.mapping-alias-list{flex-wrap:wrap;gap:6px;display:flex}.mapping-alias-tag{background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:13px;display:inline-block}.rules-legend{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin-bottom:16px;display:grid}.rules-legend-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;align-items:flex-start;gap:8px;padding:14px 16px;display:flex}.rules-legend-item p{margin:0;font-size:13px;line-height:1.5}.rule-badge{letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.rule-badge.standard{background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted)}.rule-badge.custom{color:#6b21a8;background:#f3e8ff;border:1px solid #d8b4fe}.rule-badge-stack{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rule-badge-plus{color:var(--text-muted);font-size:13px;font-weight:700}.rules-loads{flex-direction:column;gap:4px;font-size:13px;display:flex}.rules-summary{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);border-left:4px solid #7c3aed;flex-wrap:wrap;gap:10px 20px;margin-bottom:12px;padding:12px 16px;font-size:13px;display:flex}.rules-summary-stat strong{font-size:15px}.rules-condition{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:inline-block}.rules-condition-note{margin-top:4px;font-size:12px}.rules-description{max-width:420px;font-size:13px;line-height:1.5}.rules-flag{color:#b91c1c;font-size:12px;font-weight:700}.rules-accounts-wrap{max-height:620px}.rules-accounts-wrap th{z-index:1;position:sticky;top:0}@media (width<=900px){.mappings-content{padding:16px}.mappings-toolbar{flex-direction:column;align-items:stretch}.mappings-refresh-row{align-items:stretch}}#page-masterdata.page.active,#page-masterdata>#masterdata-root{height:100%}.master-data-page{height:100%;min-height:0}.master-data-page .ld-content,.master-data-page .mappings-section{min-height:0}.master-data-page .mappings-section{flex-direction:column;flex:1;display:flex}.master-data-page .mappings-table-wrap,.master-data-page .store-card-grid{flex:1;min-height:min(440px,52vh);overflow:auto}.master-data-page .ld-topbar{padding:14px 24px}.master-data-page .mappings-content{padding:16px 24px}.master-data-page .mappings-toolbar{margin-bottom:14px}.master-data-page .mappings-toolbar-filters{padding:12px 14px}.master-data-page .mappings-filters{gap:10px 14px}.master-data-page .mappings-filter-summary-row{margin-top:10px}.master-data-page .mappings-table th,.master-data-page .mappings-table td{vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;max-width:240px;padding:9px 12px;overflow:hidden}.master-data-page .store-card-grid{align-content:start;padding-bottom:4px}.master-data-page .uploads-pagination{flex:none}.master-data-page .products-pagination{justify-content:space-between}.master-data-page .products-pager{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.master-data-page .products-page-size{align-items:center;gap:8px;display:flex}.master-data-page .products-page-size>span{color:var(--text-muted);font-size:12px;font-weight:600}.master-data-page .products-page-size .tsel{flex:none}.master-data-page .mappings-table thead th{z-index:3;box-shadow:inset 0 -1px 0 var(--border);position:sticky;top:0}.master-data-page .mappings-table th.row-serial-col,.master-data-page .mappings-table td.row-serial-col{z-index:1;text-align:right;width:46px;min-width:46px;max-width:46px;color:var(--text-muted);font-variant-numeric:tabular-nums;padding-left:8px;padding-right:8px;position:sticky;left:0}.master-data-page .mappings-table th.select-col,.master-data-page .mappings-table td.select-col{width:36px;min-width:36px;max-width:36px;padding-left:8px;padding-right:8px}.master-data-page .mappings-table th.row-actions-col,.master-data-page .mappings-table td.row-actions-col,.master-data-page .mappings-table.is-select-mode th.select-col,.master-data-page .mappings-table.is-select-mode td.select-col{z-index:1;position:sticky;left:46px}.master-data-page .mappings-table.is-select-mode th.row-actions-col,.master-data-page .mappings-table.is-select-mode td.row-actions-col{left:82px}.master-data-page .mappings-table thead th.row-serial-col,.master-data-page .mappings-table thead th.select-col,.master-data-page .mappings-table thead th.row-actions-col{z-index:4}.master-data-page .mappings-table tbody td.row-serial-col,.master-data-page .mappings-table tbody td.select-col,.master-data-page .mappings-table tbody td.row-actions-col{background:var(--surface)}.master-data-page .mappings-table tbody tr.is-selected td.row-serial-col,.master-data-page .mappings-table tbody tr.is-selected td.select-col,.master-data-page .mappings-table tbody tr.is-selected td.row-actions-col{background:var(--primary-soft)}.master-data-page .mappings-table tbody tr:hover td.row-serial-col,.master-data-page .mappings-table tbody tr:hover td.select-col,.master-data-page .mappings-table tbody tr:hover td.row-actions-col{background:#fbfcfe}.master-data-page .mappings-table th.row-actions-col,.master-data-page .mappings-table td.row-actions-col{box-shadow:inset -1px 0 0 var(--border)}.master-data-page .mappings-table thead th.row-actions-col{box-shadow:inset 0 -1px 0 var(--border), inset -1px 0 0 var(--border)}.master-data-page .master-data-search{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:160px;height:42px;color:var(--text);padding:0 12px;font-size:14px}.master-data-page .master-data-search:focus{border-color:var(--primary);outline:none}.master-data-stats{color:var(--muted);flex-wrap:wrap;gap:16px 24px;margin-bottom:16px;font-size:13px;display:flex}.master-data-stats strong{color:var(--text);font-weight:600}.master-data-page .mappings-filter-summary-row .master-data-stats{align-items:center;gap:8px 20px;margin-bottom:0}.master-data-stats .master-data-stat-active strong{color:#167247}.master-data-stats .master-data-stat-inactive strong{color:#64748b}.master-data-stats .master-data-stat-sort{align-items:center;gap:8px;display:inline-flex}.mappings-table th.sortable-col{padding:0}.mappings-table th.sortable-col .col-sort-btn{width:100%;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:9px 12px;display:flex}.mappings-table th.sortable-col .col-sort-btn:hover{color:var(--text)}.mappings-table th.sortable-col .col-sort-btn:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.mappings-table .col-sort-icon{opacity:.3;font-size:10px;line-height:1}.mappings-table th.sortable-col .col-sort-btn:hover .col-sort-icon{opacity:.65}.mappings-table thead th.is-sorted{background:var(--primary-soft);color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}.mappings-table thead th.is-sorted .col-sort-icon{opacity:1}.master-data-page .sort-clear-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:999px;margin-left:8px;padding:1px 9px;font-size:11px}.master-data-page .sort-clear-btn:hover{color:var(--primary);border-color:var(--primary)}.create-store-page{background:var(--bg);scrollbar-gutter:stable;min-height:100%}.create-store-page .store-status{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);align-items:center;padding:8px 11px;font-size:12px;display:inline-flex}.store-status span{background:#c49a1a;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.store-content{width:100%;padding:24px 36px 40px}.store-form{gap:18px;display:grid}.store-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:6px;padding:24px 28px}.store-panel-primary{border-top:4px solid var(--accent)}.store-section-title{border-bottom:1px solid var(--border);gap:13px;margin-bottom:20px;padding-bottom:20px;display:flex}.store-section-title>b{background:var(--accent-lt);color:var(--accent);border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;display:grid}.store-section-title h2{color:var(--text);margin:0 0 3px;font-size:17px}.store-section-title p{color:var(--muted);margin:0;font-size:13px}.store-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 18px;display:grid}.store-field{flex-direction:column;gap:6px;display:flex}.store-field>span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.store-field input{border:1px solid var(--border-hi);height:40px;font:inherit;color:var(--text);background:var(--surface);border-radius:4px;padding:8px 10px}.store-field input:focus{outline:2px solid var(--accent-lt);border-color:var(--accent-md)}.store-field .tsel,.store-field .tsel-btn{width:100%}.store-wide{grid-column:span 2}.store-actions{justify-content:space-between;align-items:center;padding:4px 4px 0;display:flex}.store-actions p{color:var(--muted);margin:0;font-size:12px}.store-actions>div{gap:9px;display:flex}@media (width<=800px){.create-store-page .ld-topbar{padding:20px}.create-store-page .brand{gap:12px}.create-store-page .logo{width:44px;height:44px;font-size:18px}.create-store-page .topbar-right{display:none}.store-content{padding:20px}.store-grid{grid-template-columns:1fr}.store-wide{grid-column:auto}.store-actions{flex-direction:column;align-items:flex-start;gap:15px}}.store-field .tauto .tauto-input{border-color:var(--border-strong);border-radius:var(--radius-sm);height:auto;padding:11px 34px 11px 14px;font-size:15px}.store-field .tauto.has-clear .tauto-input{padding-right:56px}.store-field .tauto .tauto-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.store-name-input-wrap{flex-direction:column;display:flex;position:relative}.store-name-field input.is-duplicate{background:#fff6f5;border-color:#c0392b}.store-name-field input.is-duplicate:focus{outline-color:#f3c4bf}.store-name-suggestions{z-index:30;background:var(--surface);border:1px solid var(--border-hi);border-radius:6px;max-height:260px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 26px #011e4129}.store-name-suggestions-head{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--surface-alt);border-bottom:1px solid var(--border);padding:8px 11px;font-size:11px;font-weight:700;position:sticky;top:0}.store-name-suggestion{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:8px 11px;display:flex}.store-name-suggestion:last-child{border-bottom:none}.store-name-suggestion strong{color:var(--text);font-size:13px;font-weight:600}.store-name-suggestion-meta{color:var(--muted);font-size:11px}.store-name-suggestion.is-duplicate{background:#fff6f5}.store-name-suggestion.is-duplicate strong{color:#c0392b}.store-name-note{color:var(--muted);min-height:32px;font-size:11px;line-height:1.45}.store-name-note.is-error{color:#c0392b}.store-name-note.is-warn{color:#9a6b00}.activity-logs-page .ld-content{box-sizing:border-box;flex-direction:column;align-items:stretch;width:100%;padding:24px 36px 40px}.activity-logs-filters{flex-wrap:wrap;flex-shrink:0;align-items:flex-end;gap:14px;width:100%;margin-bottom:20px;display:flex}.activity-logs-live{white-space:nowrap;align-self:center;padding-bottom:10px;font-size:12px}.activity-logs-results{flex-direction:column;flex:1;gap:16px;width:100%;min-width:0;display:flex}.activity-logs-filters .filter-field{flex-direction:column;flex:220px;gap:6px;min-width:220px;max-width:320px;display:flex}.activity-logs-filters .filter-field .tsel,.activity-logs-filters .filter-field .tsel-btn{width:100%}.activity-logs-filters .filter-field>span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.activity-logs-filters input[type=date]{border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-sizing:border-box;background:var(--surface);height:42px;color:var(--text);padding:0 12px;font-size:14px}.activity-logs-table-wrap{border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow:auto}.activity-logs-table{border-collapse:collapse;width:100%;font-size:14px}.activity-logs-table th,.activity-logs-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:12px 14px}.activity-logs-table th{background:var(--surface-alt);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:12px}.activity-logs-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.activity-logs-empty,.activity-logs-forbidden{border:1px dashed var(--border-strong);background:var(--surface-alt);color:var(--text-muted);border-radius:12px;padding:28px}.activity-pill{letter-spacing:.03em;text-transform:uppercase;background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.activity-pill--delete{color:#b42318;background:#fdecec}.activity-pill--upload{color:#027a48;background:#ecfdf3}.activity-pill--export_uploads_csv,.activity-pill--export_batch_file,.activity-pill--export_bulk_mapping_template{color:#175cd3;background:#eff8ff}.activity-pill--upload_bulk_mapping{color:#5925dc;background:#f4f3ff}.user-management-page .user-management-content{flex-direction:column;align-items:stretch;gap:22px;width:100%;padding:24px 36px 40px;display:flex}.user-create-card,.user-list-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px}.user-management-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.user-management-heading h2{margin:0 0 4px;font-size:18px}.user-management-heading p,.country-picker p{color:var(--text-muted);margin:0;font-size:13px}.user-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.user-form>label,.country-picker{flex-direction:column;gap:6px;display:flex}.user-form label>span,.country-picker legend{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:700}.user-form input{border:1px solid var(--border);background:var(--surface);height:42px;color:var(--text);font:inherit;border-radius:8px;padding:8px 10px}.user-form .tsel,.user-form .tsel-btn{width:100%}.country-picker{border:1px solid var(--border);border-radius:8px;grid-column:1/-1;padding:13px 14px}.country-picker legend{padding:0 4px}.country-picker em{color:#b42318}.country-options{flex-wrap:wrap;gap:9px 16px;margin-top:5px;display:flex}.country-option{cursor:pointer;color:var(--text);align-items:center;gap:7px;font-size:14px;flex-direction:row!important;display:flex!important}.country-option small{color:var(--text-muted);font-weight:600}.user-form-actions{grid-column:1/-1;gap:10px;display:flex}.user-message{border-radius:7px;grid-column:1/-1;padding:10px 12px}.user-message.error{color:#b42318;background:#fdecec}.user-message.success{color:#087443;background:#e9f8ef}.user-table-wrap{border:1px solid var(--border);border-radius:9px;overflow:auto}.user-table{border-collapse:collapse;width:100%;min-width:900px}.user-table th,.user-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:12px 14px}.user-table th{background:var(--surface-alt);color:var(--text-muted);text-transform:uppercase;font-size:12px}.user-role{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-block}.user-empty{text-align:center;color:var(--text-muted)}.btn.danger{color:#fff;background:#b42318;border-color:#b42318}.btn.danger:hover:not(:disabled){background:#8f1c13;border-color:#8f1c13}.btn.danger:disabled{opacity:.5;cursor:not-allowed}.user-delete-modal{max-width:460px}.user-delete-modal>p{margin:0 0 20px;line-height:1.5}@media (width<=700px){.user-management-page .user-management-content{padding:18px}.user-form{grid-template-columns:1fr}.user-create-card,.user-list-card{padding:16px}}.store-success-dialog{z-index:1000;background:#011e4180;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.store-success-card{text-align:center;background:#fff;border-radius:8px;width:min(420px,100%);padding:28px;box-shadow:0 18px 44px #011e4147}.store-success-icon{color:#167247;background:#e7f7ee;border-radius:50%;place-items:center;width:46px;height:46px;margin:0 auto 13px;font-size:25px;font-weight:700;display:grid}.store-success-card h2{color:#011e41;margin:0 0 8px;font-size:21px}.store-success-card p{color:#52657f;margin:0 0 21px;line-height:1.5}.create-product-page{background:var(--bg);min-height:100%;color:var(--text)}.product-topline{border-bottom:1px solid var(--border);background:var(--surface);letter-spacing:.1em;height:58px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 48px;font-size:11px;font-weight:800;display:flex}.product-back{letter-spacing:0;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none}.product-content{width:100%;padding:52px 36px 60px}.product-intro{justify-content:space-between;align-items:end;margin-bottom:36px;display:flex}.product-kicker,.product-card-head p{color:var(--accent);letter-spacing:.12em;margin:0 0 9px;font-size:11px;font-weight:800}.product-intro h1{letter-spacing:-.045em;color:var(--text);margin:0 0 10px;font-size:38px}.product-copy{color:var(--muted);max-width:520px;margin:0;font-size:15px}.product-progress{color:var(--accent);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.product-progress b{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.product-progress i{background:var(--border-hi);width:26px;height:1px;margin:0 3px}.product-progress .muted-step{color:var(--dim);background:var(--surface);border-color:var(--border-hi)}.product-form{gap:17px;display:grid}.product-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;padding:25px 27px}.product-card-code{border-left:4px solid var(--accent)}.product-card-commercial{background:var(--surface2)}.product-card-head{margin-bottom:22px}.product-card-head h2{letter-spacing:-.025em;color:var(--text);margin:0;font-size:20px}.product-fields{gap:17px;display:grid}.product-fields.three,.product-fields.four{grid-template-columns:repeat(3,1fr)}.product-field{flex-direction:column;gap:7px;display:flex}.product-field>span{color:var(--muted);font-size:12px;font-weight:700}.product-field input{border:1px solid var(--border-hi);background:var(--surface);height:42px;font:inherit;color:var(--text);border-radius:7px;padding:9px 11px}.product-field input:focus{outline:2px solid var(--accent-lt);border-color:var(--accent-md)}.product-field .tsel,.product-field .tsel-btn{width:100%}.product-actions{justify-content:space-between;align-items:center;padding:10px 2px;display:flex}.product-actions>div{align-items:center;gap:14px;display:flex}.product-actions>div>p{max-width:420px;margin:0;font-size:12.5px;font-weight:600}.product-save-error{color:var(--danger,#c0392b)}.product-save-success{color:var(--ok,#167247)}.product-submit:disabled{opacity:.6;cursor:default}.product-text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-weight:700}.product-submit{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:7px;height:40px;padding:0 16px;font-weight:700}.product-submit:hover{background:var(--accent-md)}.product-submit span{padding-left:8px}.product-card-review{border-left:4px solid var(--accent)}.product-review{grid-template-columns:repeat(2,1fr);gap:0 34px;margin:0;display:grid}.product-review-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:16px;padding:11px 0;display:flex}.product-review-row dt{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:700}.product-review-row dd{color:var(--text);text-align:right;word-break:break-word;margin:0;font-size:14px;font-weight:600}@media (width<=800px){.product-review{grid-template-columns:1fr}}.product-note{border-top:1px solid var(--border);color:var(--muted);gap:12px;margin-top:28px;padding-top:18px;font-size:12px;display:flex}.product-note b{color:var(--accent);white-space:nowrap}@media (width<=800px){.product-topline{padding:0 22px}.product-content{padding:35px 20px}.product-intro{flex-direction:column;align-items:flex-start;gap:24px}.product-fields.three,.product-fields.four{grid-template-columns:1fr}.product-actions{flex-direction:column;align-items:flex-start;gap:18px}.product-intro h1{font-size:32px}}.products-page .products-table-wrap{min-height:260px;max-height:62vh;overflow:auto}.products-page .products-table{min-width:1560px}.products-page .products-table th,.products-page .products-table td{white-space:nowrap}.products-page .products-table thead th{z-index:2;box-shadow:inset 0 -1px 0 var(--border);padding:0;position:sticky;top:0}.products-page .products-table th.products-serial,.products-page .products-table td.products-serial{z-index:1;position:sticky;left:0}.products-page .products-table th.products-model,.products-page .products-table td.products-model{z-index:1;position:sticky;left:52px}.products-page .products-table thead th.products-serial,.products-page .products-table thead th.products-model{z-index:3}.products-page .products-table td.products-serial,.products-page .products-table td.products-model{background:var(--surface);box-shadow:inset -1px 0 0 var(--border)}.products-page .products-table th.products-model{box-shadow:inset 0 -1px 0 var(--border),inset -1px 0 0 var(--border)}.products-page .products-sort{width:100%;font:inherit;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:12px 14px;font-size:12px;font-weight:700;display:flex}.products-page .products-sort:hover{color:var(--text)}.products-page .products-sort.is-sorted{color:var(--primary)}.products-page .products-sort-arrow{opacity:.45;font-size:9px}.products-page .products-sort.is-sorted .products-sort-arrow{opacity:1}.products-page .products-row-inactive td{background:var(--surface-alt);color:var(--text-muted)}.products-page .products-row-inactive td.products-serial,.products-page .products-row-inactive td.products-model{background:var(--surface-alt)}.products-page .products-pill{letter-spacing:.02em;border-radius:11px;padding:2px 9px;font-size:11px;font-weight:700;display:inline-block}.products-page .products-pill.is-active{color:#167247;background:#e7f7ee}.products-page .products-pill.is-inactive{color:#64748b;background:#f1f3f7}.products-page .products-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.products-page .products-summary .master-data-stats{flex:auto;margin:0}.products-page .products-download{white-space:nowrap;flex:none}.products-page .products-stats .products-stat-active strong{color:#167247}.products-page .products-stats .products-stat-inactive strong{color:#64748b}.products-page .products-table th.products-serial{width:52px}.products-page .products-table td.products-serial{text-align:right;width:52px;color:var(--text-muted);font-variant-numeric:tabular-nums}.upload-dialog{z-index:1000;background:#011e4180;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.upload-card{background:var(--surface);border-radius:10px;flex-direction:column;gap:16px;width:min(760px,100%);max-height:min(80vh,720px);padding:24px 26px;display:flex;box-shadow:0 18px 44px #011e4147}.upload-card-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.upload-card-head h2{color:var(--text);margin:0;font-size:20px}.upload-file{color:var(--text-muted);word-break:break-all;font-size:12px}.upload-status{color:var(--text);margin:0;font-size:14px}.upload-error{color:#b42318;margin:0;font-size:14px;font-weight:600}.upload-note{color:var(--text);background:var(--primary-soft);border-radius:8px;margin:0;padding:10px 12px;font-size:13px;line-height:1.45}.upload-summary{color:var(--text-muted);flex-wrap:wrap;gap:8px 18px;font-size:13px;display:flex}.upload-summary b{color:var(--text)}.upload-summary .upload-bad b{color:#b42318}.upload-issues{border:1px solid var(--border-strong);border-radius:8px;overflow:auto}.upload-issues table{width:100%}.upload-issue-text{white-space:normal;line-height:1.45}.upload-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.upload-actions-right{gap:10px;margin-left:auto;display:flex}.products-page .products-filters{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px 14px;width:100%;display:grid}.products-page .products-filters .filter-field{min-width:0}.products-page .products-filters .filter-field input[type=search]{width:100%}.products-page .products-clear-filters{white-space:nowrap;align-self:flex-start;margin-top:12px}.products-page .products-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.products-page .products-pager{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.products-page .products-page-size{align-items:center;gap:8px;display:flex}.products-page .products-page-size>span{color:var(--text-muted);font-size:12px;font-weight:600}.products-page .products-page-size .tsel{flex:none}
