:root{--imp-primary: #0F5BA8;--imp-primary-600: #0C4E90;--imp-primary-50: #EAF2FB;--imp-accent: #33A35B;--bg: #F7F8FA;--surface: #FFFFFF;--surface-2: #FBFCFD;--border: #E5E8EE;--border-strong: #D2D7E0;--ink: #0F1626;--ink-2: #2A3447;--ink-3: #5A647A;--ink-4: #8A93A6;--ok: #1F8A56;--warn:#B97A0E;--err: #B6353A;--info:#1F6FB2;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--shadow-1: 0 1px 0 rgba(15,22,38,.04), 0 1px 2px rgba(15,22,38,.04);--shadow-2: 0 1px 2px rgba(15,22,38,.06), 0 8px 24px rgba(15,22,38,.06);--pad: 20px;--row-h: 40px;--font: "Inter Tight", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*:focus-visible{outline:2px solid var(--imp-primary);outline-offset:2px}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid var(--imp-primary);outline-offset:2px;box-shadow:0 0 0 4px var(--imp-primary-50)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--imp-primary);outline-offset:1px}[data-density=compact]{--pad: 14px;--row-h: 32px}[data-density=comfortable]{--pad: 24px;--row-h: 44px}[data-theme=dark]{--bg: #0B1220;--surface: #121A2B;--surface-2: #0F1727;--border: #1F2A3F;--border-strong: #2A3850;--ink: #EEF2F8;--ink-2: #C7D0DE;--ink-3: #8C97AB;--ink-4: #6B768B;--imp-primary-50: #0E2A45;--shadow-1: 0 1px 0 rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.25);--shadow-2: 0 1px 2px rgba(0,0,0,.3), 0 8px 24px rgba(0,0,0,.25)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--ink);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.005em}button,input,select,textarea{font-family:inherit;color:inherit}.app{min-height:100vh;display:grid;grid-template-columns:240px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"side topbar" "side main";background:var(--bg)}.app[data-nav=top]{grid-template-columns:1fr;grid-template-areas:"topbar" "main"}.app[data-density=compact]{font-size:13px}.app-main{grid-area:main;padding:24px;min-width:0}.mobile-nav-btn{display:none;align-items:center;justify-content:center;width:38px;height:38px;margin-left:-6px;flex:none;border:0;background:transparent;color:var(--ink-2);border-radius:8px;cursor:pointer}.mobile-nav-btn:hover{background:var(--surface-2);color:var(--ink)}.mobile-nav-backdrop{display:none}.dashboard-grid,.order-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px;align-items:start}.order-layout{gap:16px}@media (max-width: 900px){.dashboard-grid,.order-layout{grid-template-columns:1fr}}.dash-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.dash-stat-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}@media (max-width: 900px){.dash-two-col{grid-template-columns:1fr}}@media (max-width: 560px){.dash-stat-strip{grid-template-columns:1fr}}.pdp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:32px;align-items:start}.oe-addline{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:end}.list-card{width:100%;border-collapse:collapse;font-size:13px}.list-card th{text-align:left;padding:11px 12px;background:var(--surface-2);color:var(--ink-3);font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border)}.list-card td{padding:12px;border-bottom:1px solid var(--border);vertical-align:middle}.list-card tbody tr:last-child td{border-bottom:0}.sidebar{grid-area:side;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:hidden}.app[data-nav=top] .sidebar{display:none}.brand{display:flex;align-items:center;gap:10px;padding:18px 20px;border-bottom:1px solid var(--border);height:64px}.brand-mark{width:32px;height:32px;border-radius:8px;background:var(--imp-primary);display:grid;place-items:center;color:#fff;font-weight:700;letter-spacing:.02em;font-size:11px;flex:none}.brand-mark svg{width:22px;height:22px}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-text b{font-size:14px;letter-spacing:.01em;color:var(--ink)}.brand-text span{font-size:11px;color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase}.nav{flex:1;overflow-y:auto;padding:8px 10px;display:flex;flex-direction:column;gap:1px}.nav-section{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4);padding:9px 10px 3px}.nav-section:first-child{padding-top:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:8px;color:var(--ink-2);text-decoration:none;font-size:13.5px;font-weight:500;cursor:default;-webkit-user-select:none;user-select:none;border:1px solid transparent}.nav-item:hover{background:var(--surface-2)}.nav-item.active{background:var(--imp-primary-50);color:var(--imp-primary);font-weight:600}[data-theme=dark] .nav-item.active{color:#b5d0ee}.nav-item svg{width:16px;height:16px;flex:none;opacity:.85}.nav-item .badge{margin-left:auto;font-size:10.5px;font-weight:600;background:var(--surface-2);border:1px solid var(--border);color:var(--ink-3);padding:1px 6px;border-radius:999px;font-variant-numeric:tabular-nums}.nav-item.active .badge{background:#fff;color:var(--imp-primary);border-color:transparent}[data-theme=dark] .nav-item.active .badge{background:#ffffff1a;color:#fff}.sidebar-foot{border-top:1px solid var(--border);padding:12px;display:flex;align-items:center;gap:10px}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--imp-primary),var(--imp-accent));color:#fff;display:grid;place-items:center;font-size:12px;font-weight:600;flex:none}.user-meta{display:flex;flex-direction:column;line-height:1.2;min-width:0;flex:1}.user-meta b{font-size:12.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-meta span{font-size:11px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-toggle{display:flex;align-items:center;justify-content:center;margin:6px 10px 0;padding:5px;height:26px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--ink-3);cursor:pointer}.nav-toggle:hover{background:var(--surface-2);color:var(--ink-2)}.nav-toggle svg{width:15px;height:15px}.app:not(.nav-collapsed) .nav-toggle svg{transform:rotate(180deg)}.app.nav-collapsed{grid-template-columns:64px 1fr}.app.nav-collapsed .brand-text,.app.nav-collapsed .nav-section,.app.nav-collapsed .nav-item>span,.app.nav-collapsed .nav-item .badge,.app.nav-collapsed .user-meta{display:none}.app.nav-collapsed .brand{padding:18px 0;justify-content:center;gap:0}.app.nav-collapsed .nav{padding:8px}.app.nav-collapsed .nav-toggle{margin:6px 8px 0}.app.nav-collapsed .nav-item{justify-content:center;padding:8px 0}.app.nav-collapsed .sidebar-foot{justify-content:center;padding:12px 0}.topbar{grid-area:topbar;height:64px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;gap:16px;position:sticky;top:0;z-index:5}.topbar .brand{border:0;padding:0;height:auto;display:none}.app[data-nav=top] .topbar .brand,.app[data-nav=top] .topbar-nav{display:flex}.topbar-nav{display:none;gap:2px;margin-left:8px}.topbar-nav .nav-item{padding:8px 12px;font-size:13px}.search{flex:1;max-width:480px;position:relative}.search input{width:100%;height:36px;padding:0 12px 0 34px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:13px;outline:none;color:var(--ink)}.search input:focus{border-color:var(--imp-primary);background:var(--surface)}.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--ink-3)}.search kbd{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:10px;border:1px solid var(--border);border-radius:4px;padding:1px 5px;color:var(--ink-3);background:var(--surface)}.topbar-spacer{flex:1}.topbar-actions{display:flex;align-items:center;gap:6px}.icon-btn{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;background:transparent;border:1px solid transparent;color:var(--ink-2);cursor:default;position:relative}.icon-btn:hover{background:var(--surface-2);border-color:var(--border)}.icon-btn svg{width:18px;height:18px}.icon-btn .dot{position:absolute;top:8px;right:9px;width:7px;height:7px;border-radius:50%;background:var(--err);border:1.5px solid var(--surface)}.market-pill{display:flex;align-items:center;gap:8px;padding:6px 10px 6px 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-size:12.5px;font-weight:500;color:var(--ink-2);cursor:default}.market-pill:hover{background:var(--surface);border-color:var(--border-strong)}.market-pill .flag{width:20px;height:14px;border-radius:2px;overflow:hidden;flex:none;background:#ddd;display:grid;place-items:center;font-size:9px;font-weight:700;color:#fff}.main{grid-area:main;padding:24px 28px 64px;min-width:0;max-width:100%}.app[data-nav=top] .main{padding:20px 32px 64px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px;flex-wrap:wrap}.page-head h1{margin:0;font-size:24px;font-weight:600;letter-spacing:-.015em;color:var(--ink)}.crumbs{font-size:12px;color:var(--ink-3);margin-bottom:6px;letter-spacing:.01em;display:flex;align-items:center;flex-wrap:wrap}.crumbs span+span:before{content:"/";margin:0 6px;color:var(--ink-4)}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--imp-primary)}.page-head .sub{font-size:13px;color:var(--ink-3);margin-top:4px;max-width:56ch}.page-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-size:13px;font-weight:500;cursor:default;white-space:nowrap;transition:background .12s,border-color .12s}.btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg{width:15px;height:15px}.btn.primary{background:var(--imp-primary);border-color:var(--imp-primary);color:#fff}.btn.primary:hover:not(:disabled){background:var(--imp-primary-600);border-color:var(--imp-primary-600)}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover{background:var(--surface-2)}.btn.sm{height:30px;padding:0 10px;font-size:12.5px}.btn.lg{height:42px;padding:0 18px;font-size:14px}.app[data-density=compact] .btn{height:30px;padding:0 10px;font-size:12.5px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-1)}.card.flat{box-shadow:none}.card-h{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--border)}.card-h h3{margin:0;font-size:14px;font-weight:600;letter-spacing:-.005em}.card-h .sub{font-size:12px;color:var(--ink-3);margin-top:2px}.card-b{padding:18px}.card-b.tight{padding:0}.kpi{display:flex;flex-direction:column;gap:10px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-height:112px;position:relative;overflow:hidden}.kpi .label{font-size:12px;color:var(--ink-3);font-weight:500;letter-spacing:.01em;display:flex;align-items:center;gap:6px}.kpi .label svg{width:14px;height:14px;color:var(--ink-4)}.kpi .val{font-size:28px;font-weight:600;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}.kpi .delta{font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:4px}.kpi .delta.up{color:var(--ok)}.kpi .delta.down{color:var(--err)}.kpi .spark{position:absolute;right:12px;bottom:12px;opacity:.9}.tag{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:500;background:var(--surface-2);border:1px solid var(--border);color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums}.tag.dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.tag.ok{color:var(--ok);background:#eaf6f0;border-color:#cfe7db}.tag.warn{color:var(--warn);background:#fbf1de;border-color:#ebd9b3}.tag.err{color:var(--err);background:#fbeaeb;border-color:#efcfd0}.tag.info{color:var(--info);background:#e6f0f8;border-color:#c5dded}.tag.neutral{color:var(--ink-2)}[data-theme=dark] .tag.ok{background:#1f8a5626;border-color:#1f8a564d}[data-theme=dark] .tag.warn{background:#b97a0e26;border-color:#b97a0e4d}[data-theme=dark] .tag.err{background:#b6353a26;border-color:#b6353a4d}[data-theme=dark] .tag.info{background:#1f6fb226;border-color:#1f6fb24d}.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.tbl th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap;position:sticky;top:0}.tbl td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--ink-2)}.tbl tr:last-child td{border-bottom:0}.tbl tr:hover td{background:var(--surface-2)}.tbl td.num{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.tbl th.num{text-align:right}.tbl td.mono{font-family:var(--mono);font-size:12px;color:var(--ink)}.tbl td b{color:var(--ink);font-weight:600}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:18px}.tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:10px 14px;font-size:13.5px;font-weight:500;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:default}.tabs button:hover{color:var(--ink)}.tabs button.active{color:var(--imp-primary);border-bottom-color:var(--imp-primary);font-weight:600}[data-theme=dark] .tabs button.active{color:#b5d0ee;border-bottom-color:#b5d0ee}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:12.5px;color:var(--ink-2);font-weight:500;cursor:default;white-space:nowrap}.chip:hover{border-color:var(--border-strong)}.chip.active{background:var(--imp-primary);color:#fff;border-color:var(--imp-primary)}.chip svg{width:13px;height:13px}.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:36px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);font-size:13px;outline:none}.input:focus{border-color:var(--imp-primary)}textarea.input{height:auto;padding:10px 12px}select.input{padding-right:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='none' stroke='%235A647A' stroke-width='1.5' d='M1 1l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}select:not(.bare){-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;background-color:var(--surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='none' stroke='%235A647A' stroke-width='1.5' d='M1 1l4 4 4-4'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 12px center!important;padding-right:32px!important;border:1px solid var(--border);border-radius:8px;color:var(--ink);font-size:13px;font-family:inherit;line-height:1.4;outline:none;cursor:pointer;transition:border-color .12s,box-shadow .12s}select:not(.bare):hover{border-color:var(--border-strong)}select:not(.bare):focus,select:not(.bare):focus-visible{border-color:var(--imp-primary);box-shadow:0 0 0 3px #0b3a6f14}select:not(.bare):disabled{opacity:.6;cursor:not-allowed;background-color:var(--surface-2)}[data-theme=dark] select:not(.bare){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='none' stroke='%23a3acc2' stroke-width='1.5' d='M1 1l4 4 4-4'/%3E%3C/svg%3E")!important}label.field{display:flex;flex-direction:column;gap:6px}label.field>span{font-size:11.5px;font-weight:600;color:var(--ink-3);letter-spacing:.02em;text-transform:uppercase}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}@media (max-width: 1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}.dash-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}@media (max-width: 1100px){.dash-grid{grid-template-columns:1fr}}.dash-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:18px}@media (max-width: 1100px){.dash-grid-3{grid-template-columns:1fr 1fr}}.activity{display:flex;flex-direction:column}.activity-row{display:grid;grid-template-columns:24px 1fr auto;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px dashed var(--border)}.activity-row:first-child{border-top:0;padding-top:4px}.activity-icon{width:24px;height:24px;border-radius:50%;background:var(--imp-primary-50);color:var(--imp-primary);display:grid;place-items:center;margin-top:1px}.activity-icon svg{width:13px;height:13px}.activity-row .body{font-size:13px;color:var(--ink-2);line-height:1.5}.activity-row .body b{color:var(--ink);font-weight:600}.activity-row time{font-size:11.5px;color:var(--ink-4);white-space:nowrap;font-variant-numeric:tabular-nums}.catalog-layout{display:grid;grid-template-columns:240px 1fr;gap:22px;align-items:start}@media (max-width: 1000px){.catalog-layout{grid-template-columns:1fr}.cat-side{position:static;top:auto;max-height:none;overflow:visible;padding-right:0}}.cat-side{position:sticky;top:84px;display:flex;flex-direction:column;gap:18px;max-height:calc(100vh - 100px);overflow-y:auto;padding-right:4px}.cat-side::-webkit-scrollbar{width:6px}.cat-side::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:6px}.cat-side::-webkit-scrollbar-track{background:transparent}.cat-side h4{margin:0 0 8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.cat-side .group{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:14px}.cat-list{display:flex;flex-direction:column;gap:2px}.cat-list button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;text-align:left;padding:7px 10px;border-radius:7px;font-size:13px;font-weight:500;color:var(--ink-2);display:flex;justify-content:space-between;align-items:center;cursor:default}.cat-list button:hover{background:var(--surface-2)}.cat-list button.active{background:var(--imp-primary-50);color:var(--imp-primary);font-weight:600}.cat-list button .n{font-size:11px;color:var(--ink-4);font-variant-numeric:tabular-nums}.cat-list button.active .n{color:var(--imp-primary);opacity:.6}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:16px;display:flex;flex-direction:column;gap:10px;cursor:default;transition:border-color .12s,box-shadow .12s,transform .12s,background .12s}.product-card:hover{border-color:var(--imp-primary);box-shadow:var(--shadow-2);background:#0b3a6f0a}.tm-status-opt:hover{background:var(--surface-2)}.product-card .btn:hover:not(:disabled),.sparepart-card .btn:hover:not(:disabled){background:var(--imp-primary);border-color:var(--imp-primary);color:#fff}.product-card .btn:hover:not(:disabled) svg,.sparepart-card .btn:hover:not(:disabled) svg{color:#fff}.product-card .draw{aspect-ratio:1 / 1;width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;display:grid;place-items:center;position:relative;overflow:hidden;padding:12px}.product-card .draw svg{max-width:80%;max-height:80%;color:var(--ink-3)}.product-card .draw img{width:100%;height:100%;object-fit:contain;display:block}.product-card .meta{display:flex;flex-direction:column;gap:2px}.product-card .meta .sku{font-family:var(--mono);font-size:11px;color:var(--ink-4)}.product-card .meta .nm{font-size:14px;font-weight:600;color:var(--ink);letter-spacing:-.005em}.product-card .specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:6px;font-size:11.5px;border-top:1px dashed var(--border);padding-top:10px}.product-card .specs div{display:flex;flex-direction:column}.product-card .specs span{color:var(--ink-4);font-size:10.5px;text-transform:uppercase;letter-spacing:.05em}.product-card .specs b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums;font-size:12.5px}.cat-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.cat-toolbar .left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cat-toolbar .right{margin-left:auto;display:flex;gap:6px;align-items:center}.view-switch{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.view-switch button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;width:32px;height:30px;display:grid;place-items:center;color:var(--ink-3);cursor:default}.view-switch button.active{background:var(--imp-primary-50);color:var(--imp-primary)}.view-switch button svg{width:14px;height:14px}.sel-grid{display:grid;grid-template-columns:320px 1fr 320px;gap:18px;align-items:start}@media (max-width: 1300px){.sel-grid{grid-template-columns:280px 1fr}}@media (max-width: 1300px){.sel-results{grid-column:1 / -1}}.duty-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fluid-grid{display:flex;flex-direction:column;gap:14px}.system-types{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sys-tile{border:1px solid var(--border);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:6px;cursor:default;background:var(--surface)}.sys-tile:hover{border-color:var(--border-strong)}.sys-tile.active{border-color:var(--imp-primary);background:var(--imp-primary-50)}.sys-tile .ic{width:28px;height:28px;color:var(--ink-2)}.sys-tile.active .ic{color:var(--imp-primary)}.sys-tile span{font-size:12px;font-weight:600;color:var(--ink)}.sys-tile small{font-size:10.5px;color:var(--ink-3)}.qh-chart{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:16px}.qh-svg{width:100%;height:auto;display:block}.legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:12px;color:var(--ink-3)}.legend i{display:inline-block;width:14px;height:3px;border-radius:1px;vertical-align:middle;margin-right:6px}.match-list{display:flex;flex-direction:column;gap:10px}.match{border:1px solid var(--border);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:8px;background:var(--surface);cursor:default}.match:hover{border-color:var(--border-strong)}.match.best{border-color:var(--imp-primary);background:var(--imp-primary-50)}[data-theme=dark] .match.best{background:#0b4a8f2e}.match-h{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.match-h b{font-size:13.5px;color:var(--ink);display:block;line-height:1.2}.match-h small{font-family:var(--mono);font-size:11px;color:var(--ink-4)}.match-rating{display:flex;gap:2px;align-items:center;font-size:11.5px;color:var(--ink-3)}.bars{display:flex;gap:2px}.bars i{display:inline-block;width:5px;height:10px;background:var(--border-strong);border-radius:1px}.bars i.on{background:var(--imp-primary)}.match-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;font-size:11.5px}.match-stats span{color:var(--ink-4);display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em}.match-stats b{font-variant-numeric:tabular-nums;color:var(--ink);font-size:12.5px}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.toolbar .left{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.toolbar .right{margin-left:auto;display:flex;gap:8px;align-items:center}.summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}@media (max-width: 1000px){.summary-row{grid-template-columns:repeat(2,1fr)}}.forecast-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}@media (max-width: 1100px){.forecast-grid{grid-template-columns:1fr}}.fc-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.fc-table th,.fc-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.fc-table th{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-2)}.fc-table td.num input{width:84px;height:30px;border:1px solid var(--border);border-radius:6px;padding:0 8px;text-align:right;font-variant-numeric:tabular-nums;font-family:var(--mono);font-size:12.5px;background:var(--surface);color:var(--ink);outline:none}.fc-table td.num input:focus{border-color:var(--imp-primary)}.fc-table td.sticky-l,.fc-table th.sticky-l{position:sticky;left:0;background:var(--surface);z-index:1;border-right:1px solid var(--border);min-width:220px}.fc-table th.sticky-l{background:var(--surface-2);z-index:2}.fc-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.fc-total td{background:var(--surface-2);font-weight:600;color:var(--ink)}.fc-total td.num{font-family:var(--mono);font-size:12.5px}.bar{display:inline-flex;height:6px;width:100%;max-width:120px;background:var(--surface-2);border-radius:3px;overflow:hidden;vertical-align:middle}.bar i{display:block;height:100%;background:var(--imp-primary);border-radius:3px}.contract-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}@media (max-width: 1100px){.contract-grid{grid-template-columns:1fr}}.contract-doc{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:32px 36px;font-size:13.5px;line-height:1.6;color:var(--ink-2);min-height:600px}.contract-doc h2{margin:0 0 6px;font-size:18px;font-weight:600;color:var(--ink);letter-spacing:-.01em}.contract-doc h3{margin:22px 0 8px;font-size:13px;font-weight:600;color:var(--ink);text-transform:uppercase;letter-spacing:.05em}.contract-doc .doc-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:18px;margin-bottom:22px}.contract-doc .doc-meta{font-size:11.5px;color:var(--ink-3);font-family:var(--mono);text-align:right}.contract-doc p{margin:6px 0}.contract-doc ol{padding-left:18px;margin:8px 0}.contract-doc li{margin:4px 0}.contract-doc .signbox{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:36px}.contract-doc .signbox div{border-top:1px solid var(--ink-3);padding-top:8px;font-size:11.5px;color:var(--ink-3)}.contract-side h4{margin:18px 18px 6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.contract-side h4:first-child{margin-top:0}.contract-side .row{display:flex;justify-content:space-between;gap:10px;padding:10px 18px;border-top:1px dashed var(--border);font-size:13px}.contract-side .row span{color:var(--ink-3)}.contract-side .row b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500}.contract-side .row:first-of-type{border-top:0}.timeline{padding:0 18px 14px}.tl-row{display:grid;grid-template-columns:24px 1fr auto;gap:10px;padding:8px 0;font-size:12.5px}.tl-dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface);margin:5px auto;position:relative}.tl-dot.done{background:var(--ok);border-color:var(--ok)}.tl-dot.now{background:var(--imp-primary);border-color:var(--imp-primary);box-shadow:0 0 0 4px var(--imp-primary-50)}.tl-row b{color:var(--ink)}.tl-row time{font-size:11px;color:var(--ink-4);font-variant-numeric:tabular-nums;white-space:nowrap}.mat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.mat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column}.mat-card .thumb{height:150px;background:var(--surface-2);display:grid;place-items:center;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.mat-card .meta{padding:12px 14px;display:flex;flex-direction:column;gap:4px}.mat-card .meta b{font-size:13px;color:var(--ink);font-weight:600}.mat-card .meta span{font-size:11.5px;color:var(--ink-3);display:flex;gap:8px;font-family:var(--mono)}.mat-card .actions{display:flex;gap:6px;padding:10px 12px 12px;border-top:1px dashed var(--border);margin-top:auto}.mat-card .actions .btn{flex:1;height:30px;font-size:12px;padding:0 10px}.mat-folders{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.svc-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}@media (max-width: 1100px){.svc-grid{grid-template-columns:1fr}}.tutorial-list{display:flex;flex-direction:column}.tut-row{display:grid;grid-template-columns:96px 1fr auto;gap:14px;padding:14px 18px;border-top:1px solid var(--border);align-items:center;cursor:default}.tut-row:first-child{border-top:0}.tut-row:hover{background:var(--surface-2)}.tut-row .thumb{width:96px;height:60px;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,var(--imp-primary-50),var(--surface-2));display:grid;place-items:center;border:1px solid var(--border);position:relative}.tut-row .thumb svg{width:22px;height:22px;color:var(--imp-primary)}.tut-row .thumb .dur{position:absolute;right:4px;bottom:4px;background:#0f1626c7;color:#fff;font-size:10px;padding:1px 5px;border-radius:3px;font-variant-numeric:tabular-nums;font-family:var(--mono)}.tut-row .body b{display:block;font-size:13.5px;color:var(--ink);font-weight:600}.tut-row .body p{margin:2px 0 0;font-size:12px;color:var(--ink-3)}.tut-row .body .meta{font-size:11px;color:var(--ink-4);margin-top:4px;font-family:var(--mono)}.faq{display:flex;flex-direction:column}.faq-item{border-top:1px solid var(--border)}.faq-item:first-child{border-top:0}.faq-q{display:flex;align-items:center;gap:10px;padding:14px 18px;cursor:default;font-size:13.5px;font-weight:500;color:var(--ink)}.faq-q .ix{font-family:var(--mono);font-size:11px;color:var(--ink-4);width:28px}.faq-q .arr{margin-left:auto;transition:transform .2s;color:var(--ink-3)}.faq-item.open .faq-q .arr{transform:rotate(90deg)}.faq-a{padding:0 18px 16px 60px;font-size:13px;color:var(--ink-2);line-height:1.6;display:none}.faq-item.open .faq-a{display:block}.news-grid{display:grid;grid-template-columns:2fr 1fr;gap:22px;align-items:start}@media (max-width: 1000px){.news-grid{grid-template-columns:1fr}}.news-feature{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.news-feature .hero{height:280px;background:linear-gradient(135deg,var(--imp-primary),#1a6cb8 60%,var(--imp-accent));position:relative;overflow:hidden}.news-feature .hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(60% 60% at 80% 20%,rgba(255,255,255,.18),transparent 60%)}.news-feature .body{padding:22px 26px}.news-feature .body h2{margin:0;font-size:22px;font-weight:600;letter-spacing:-.01em;color:var(--ink);text-wrap:pretty}.news-feature .body p{margin:8px 0 0;font-size:14px;color:var(--ink-2);line-height:1.6;max-width:70ch}.news-feature .body .meta{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--ink-3);margin-bottom:10px}.news-list{display:flex;flex-direction:column;gap:10px}.news-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:14px;display:flex;gap:12px;cursor:default}.news-card:hover{border-color:var(--border-strong)}.news-card .ic{width:42px;height:42px;border-radius:8px;background:var(--imp-primary-50);color:var(--imp-primary);display:grid;place-items:center;flex:none}.news-card .ic svg{width:18px;height:18px}.news-card .body{flex:1;min-width:0}.news-card .body b{font-size:13.5px;color:var(--ink);font-weight:600;display:block;line-height:1.3}.news-card .body p{margin:4px 0 0;font-size:12.5px;color:var(--ink-3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-card .body .meta{font-size:11px;color:var(--ink-4);margin-top:6px;font-family:var(--mono)}.news-body{color:#1f2937;font-size:16px;line-height:1.75}.news-body>*+*{margin-top:1em}.news-body p{margin:0 0 1em}.news-body h2{font-size:22px;color:var(--ink, #0b3a6f);margin:1.5em 0 .6em;line-height:1.3}.news-body h3{font-size:18px;color:var(--ink, #0b3a6f);margin:1.3em 0 .5em;line-height:1.35}.news-body a{color:var(--imp-primary, #0b3a6f);text-decoration:underline;text-underline-offset:2px}.news-body ul,.news-body ol{margin:0 0 1em 1.2em;padding:0}.news-body li{margin:.3em 0}.news-body blockquote{margin:1em 0;padding:.8em 1em;border-left:3px solid var(--imp-primary, #0b3a6f);background:#f8fafc;color:#374151;font-style:italic}.news-body img,.news-body figure img{display:block;width:100%;max-width:100%;height:auto;border-radius:8px;margin:1.2em auto;box-shadow:0 1px 6px #0f172a14}.news-body figure{margin:1.2em 0}.news-body figcaption{font-size:12px;color:#6b7280;text-align:center;margin-top:6px}.news-tile:hover,.news-hero-tile:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0f172a1a}.news-tile img,.news-hero-tile img{transition:transform .4s ease}.news-tile:hover img,.news-hero-tile:hover img{transform:scale(1.03)}@media (max-width: 720px){.news-hero-tile{grid-template-columns:1fr!important}}.empty{padding:40px 20px;text-align:center;color:var(--ink-3);font-size:13px}.divider{height:1px;background:var(--border);margin:16px 0}.spacer-12{height:12px}.spacer-18{height:18px}.muted{color:var(--ink-3)}.right{text-align:right}.spark-up{stroke:var(--ok)}.spark-down{stroke:var(--err)}.spark-flat{stroke:var(--imp-primary)}@keyframes fadein{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.fadein{animation:fadein .25s ease}.tm-rte-content{font-size:14px;color:var(--ink);line-height:1.55}.tm-rte-content p{margin:0 0 8px}.tm-rte-content p:last-child{margin-bottom:0}.tm-rte-content h2{font-size:18px;margin:12px 0 6px}.tm-rte-content h3{font-size:15px;margin:10px 0 4px}.tm-rte-content ul,.tm-rte-content ol{margin:4px 0 8px;padding-left:22px}.tm-rte-content li{margin:2px 0}.tm-rte-content blockquote{border-left:3px solid var(--border-strong);padding:2px 10px;margin:8px 0;color:var(--ink-3)}.tm-rte-content code{background:var(--surface-2);padding:1px 4px;border-radius:3px;font-size:12.5px}.tm-rte-content pre{background:var(--surface-2);padding:8px 12px;border-radius:6px;overflow-x:auto}.tm-rte-content a{color:var(--imp-primary);text-decoration:underline}.tm-prose{font-size:14px;color:var(--ink-2);line-height:1.55}.tm-prose p{margin:0 0 8px}.tm-prose p:last-child{margin-bottom:0}.tm-prose h2{font-size:18px;margin:12px 0 6px;color:var(--ink)}.tm-prose h3{font-size:15px;margin:10px 0 4px;color:var(--ink)}.tm-prose ul,.tm-prose ol{margin:4px 0 8px;padding-left:22px}.tm-prose li{margin:2px 0}.tm-prose blockquote{border-left:3px solid var(--border-strong);padding:2px 10px;margin:8px 0;color:var(--ink-3)}.tm-prose code{background:var(--surface-2);padding:1px 4px;border-radius:3px;font-size:12.5px}.tm-prose pre{background:var(--surface-2);padding:8px 12px;border-radius:6px;overflow-x:auto}.tm-prose a{color:var(--imp-primary);text-decoration:underline}@keyframes sd-bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes sd-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes sd-stroke-draw{0%{stroke-dashoffset:var(--sd-len, 1000)}to{stroke-dashoffset:0}}@keyframes sd-donut-sweep{0%{transform:rotate(-90deg) scale(.6);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}@keyframes sd-width-grow{0%{width:0}to{width:var(--sd-w, 100%)}}.sd-card{transition:transform .18s ease,box-shadow .18s ease;will-change:transform;animation:sd-fade-up .35s ease both}.sd-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0f172a1a}.sd-bar{transform-origin:bottom center;animation:sd-bar-grow .55s cubic-bezier(.2,.7,.2,1) both;transition:opacity .15s ease,filter .15s ease}.sd-bar:hover{filter:brightness(1.12);cursor:pointer}.sd-bar.sd-dim{opacity:.35}.sd-spark-line{stroke-dasharray:var(--sd-len, 600);animation:sd-stroke-draw 1.1s ease-out both}.sd-donut-slice{transform-origin:center;animation:sd-donut-sweep .55s cubic-bezier(.2,.7,.2,1) both;transition:transform .15s ease,filter .15s ease;cursor:pointer}.sd-donut-slice:hover{transform:scale(1.04);filter:brightness(1.1)}.sd-donut-slice.sd-dim{opacity:.35}.sd-hbar-track{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden;position:relative}.sd-hbar-fill{height:100%;background:var(--imp-primary);border-radius:999px;animation:sd-width-grow .9s cubic-bezier(.2,.7,.2,1) both;transition:filter .12s ease}.sd-hbar-row:hover .sd-hbar-fill{filter:brightness(1.1)}.sd-tab-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);padding:4px 10px;font-size:12px;font-weight:600;border-radius:6px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.sd-tab-btn:hover{background:var(--surface-2)}.sd-tab-btn[aria-pressed=true]{background:var(--imp-primary);border-color:var(--imp-primary);color:#fff}.sd-tooltip{position:fixed;z-index:50;pointer-events:none;background:var(--ink);color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;box-shadow:0 4px 12px #0000002e;animation:sd-fade-up .12s ease both;white-space:nowrap}.ord-search-icon svg{width:16px;height:16px}.ord-kpi-icon svg{width:16px;height:16px}.ord-late-icon svg{width:11px;height:11px}.ord-row-action:hover{background:#fef3c78c!important}.ord-fresh-dot{width:8px;height:8px;border-radius:999px;background:#f59e0b;flex-shrink:0;box-shadow:0 0 #f59e0b8c;animation:ord-fresh-pulse 1.6s ease-out infinite}@keyframes ord-fresh-pulse{0%{box-shadow:0 0 #f59e0b8c}70%{box-shadow:0 0 0 8px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.tool-card-icon svg{width:18px;height:18px}.tool-card-chev svg{width:16px;height:16px}.tool-card:hover{transform:translateY(-1px);border-color:var(--border-strong);box-shadow:var(--shadow-2)}.dd-scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;overscroll-behavior:contain}.dd-scroll::-webkit-scrollbar{width:10px}.dd-scroll::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px;border:2px solid var(--surface)}.dd-scroll::-webkit-scrollbar-thumb:hover{background:var(--ink-4)}.dd-scroll::-webkit-scrollbar-track{background:transparent}.qty-stepper{display:inline-flex;align-items:stretch;height:36px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);overflow:hidden}.qty-stepper:focus-within{border-color:var(--imp-primary);box-shadow:0 0 0 3px #0b3a6f1a}.qty-stepper-btn{width:34px;flex:none;display:grid;place-items:center;background:var(--surface-2);border:none;cursor:pointer;color:var(--ink-2);transition:background .12s,color .12s}.qty-stepper-btn:hover:not(:disabled){background:var(--imp-primary);color:#fff}.qty-stepper-btn:disabled{opacity:.4;cursor:not-allowed}.qty-stepper-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round}.qty-stepper-val{flex:1;min-width:0;width:100%;border:none;outline:none;background:transparent;text-align:center;font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums;border-left:1px solid var(--border);border-right:1px solid var(--border)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.oi-stepper{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.oi-step{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid transparent;border-radius:8px;padding:4px 8px;font-size:12.5px;font-weight:600;color:var(--ink-4);cursor:default}.oi-step.done{color:var(--ink-2)}.oi-step.done.clickable{cursor:pointer}.oi-step.done.clickable:hover{background:var(--imp-primary-50);color:var(--imp-primary)}.oi-step.current{color:var(--imp-primary)}[data-theme=dark] .oi-step.current{color:#b5d0ee}.oi-dot{width:24px;height:24px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums;border:1.5px solid var(--border-strong);background:var(--surface);color:var(--ink-3)}.oi-step.done .oi-dot{background:var(--imp-primary);border-color:var(--imp-primary);color:#fff}.oi-step.current .oi-dot{border-color:var(--imp-primary);color:var(--imp-primary);box-shadow:0 0 0 4px var(--imp-primary-50)}.oi-dot svg{width:13px;height:13px}.oi-conn{width:28px;height:2px;border-radius:1px;background:var(--border);flex:none}.oi-conn.done{background:var(--imp-primary)}@keyframes oi-spin{to{transform:rotate(360deg)}}@keyframes oi-pulse{0%{box-shadow:0 0 #0b4a8f59}70%{box-shadow:0 0 0 9px #0b4a8f00}to{box-shadow:0 0 #0b4a8f00}}@keyframes oi-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.oi-panel{max-width:560px;margin:0 auto;padding:28px 32px}.oi-stage-row{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;padding:11px 0}.oi-stage-row+.oi-stage-row{border-top:1px dashed var(--border)}.oi-stage-ic{width:24px;height:24px;border-radius:50%;margin-top:-1px;display:grid;place-items:center;flex:none;border:1.5px solid var(--border-strong);background:var(--surface);color:var(--ink-4)}.oi-stage-ic svg{width:12px;height:12px}.oi-stage-row.done .oi-stage-ic{background:var(--ok);border-color:var(--ok);color:#fff}.oi-stage-row.active .oi-stage-ic{border-color:var(--imp-primary);color:var(--imp-primary);animation:oi-pulse 1.6s ease-out infinite}.oi-stage-label{font-size:13.5px;font-weight:500;color:var(--ink-4);padding-top:2px}.oi-stage-row.done .oi-stage-label{color:var(--ink-2)}.oi-stage-row.active .oi-stage-label{font-weight:600;background:linear-gradient(90deg,var(--imp-primary) 25%,var(--imp-accent) 50%,var(--imp-primary) 75%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:oi-shimmer 2.4s linear infinite}.oi-spinner{width:14px;height:14px;flex:none;border-radius:50%;border:2px solid var(--imp-primary-50);border-top-color:var(--imp-primary);animation:oi-spin .8s linear infinite}.oi-progress-track{height:6px;border-radius:999px;overflow:hidden;background:var(--imp-primary-50);margin-top:8px}.oi-progress-fill{height:100%;border-radius:999px;background:var(--imp-primary);transition:width .6s cubic-bezier(.2,.7,.2,1)}.oi-summary{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px}@media (max-width:720px){.oi-summary{grid-template-columns:1fr}}.oi-summary-tile{display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 16px}.oi-summary-tile b{font-size:22px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink)}.oi-summary-tile span{font-size:11.5px;color:var(--ink-3);font-weight:500}.oi-summary-tile.ok b{color:var(--ok)}.oi-summary-tile.warn b{color:var(--warn)}.oi-summary-tile.info b{color:var(--info)}.oi-doc-frame{width:100%;height:min(72vh,760px);border:0;display:block;background:var(--surface-2);border-radius:0 0 var(--r-md) var(--r-md)}.oi-success-ic svg{width:26px;height:26px}.oi-doc-ic svg{width:32px;height:32px}.oi-banner svg{width:14px;height:14px;flex:none;color:var(--imp-primary)}@keyframes salesPopIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}.sales-pop{animation:salesPopIn .3s cubic-bezier(.2,.75,.2,1) both}.sales-rep-row{transition:background .12s,color .12s}.sales-rep-row:hover{background:#0b3a6f12}.sales-pop-close{transition:background .12s}.sales-pop-close:hover{background:#ffffff47}.ai-chat-fab{transition:transform .15s,box-shadow .15s}.ai-chat-fab:hover{transform:translateY(-1px);box-shadow:0 16px 32px #0b4a8f6b}.ai-chat-fab svg{width:24px;height:24px}.ai-chat-head-icon svg{width:19px;height:19px}.ai-chat-send svg{width:18px;height:18px}.ai-chat-subtitle{font-size:11.5px;font-weight:500;color:#ffffffb8;margin-top:1px}.ai-chat-panel{animation:salesPopIn .3s cubic-bezier(.2,.75,.2,1) both}.ai-chat-x{transition:background .12s}.ai-chat-x:hover{background:#ffffff47}.ai-chat-input:focus{border-color:var(--imp-primary);background:var(--surface)}.ai-chat-send{transition:background .12s,opacity .12s}.ai-chat-send:hover:not(:disabled){background:var(--imp-primary-600)}.ai-chat-send:disabled{opacity:.5;cursor:default}.ai-chat-welcome{display:flex;flex-direction:column;gap:14px;padding:2px}.ai-chat-greeting{font-size:13.5px;color:var(--ink-2);line-height:1.55}.ai-suggest{display:flex;flex-wrap:wrap;gap:8px}.ai-suggest-chip{font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;color:var(--imp-primary);background:var(--imp-primary-50);border:1px solid var(--border);border-radius:999px;padding:8px 14px;transition:background .12s,border-color .12s,transform .1s}.ai-suggest-chip:hover{background:var(--surface);border-color:var(--imp-primary)}.ai-suggest-chip:active{transform:translateY(1px)}.ai-msg{display:flex;flex-direction:column;gap:6px;max-width:100%}.ai-msg-user{align-items:flex-end}.ai-msg-assistant{align-items:flex-start}.ai-bubble{max-width:86%;padding:10px 13px;border-radius:14px;font-size:13.5px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.ai-bubble-user{background:var(--imp-primary);color:#fff;border-bottom-right-radius:4px}.ai-bubble-assistant{background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-bottom-left-radius:4px}.ai-cards{display:flex;flex-direction:column;gap:6px;width:100%;margin-top:2px}.ai-card{display:flex;flex-direction:column;gap:1px;text-align:left;cursor:pointer;padding:8px 11px;border-radius:8px;background:var(--surface);border:1px solid var(--border);transition:background .12s,border-color .12s}.ai-card:hover{background:var(--imp-primary-50);border-color:var(--imp-primary)}.ai-card-title{font-size:12.5px;font-weight:600;color:var(--imp-primary)}.ai-card-sub{font-size:11.5px;color:var(--ink-3)}.ai-thinking{display:flex;align-items:center;gap:8px;padding:2px 0}.ai-thinking-label{font-size:13px;font-weight:600;background:linear-gradient(90deg,var(--imp-primary) 25%,var(--imp-accent) 50%,var(--imp-primary) 75%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:oi-shimmer 2.4s linear infinite}@media (max-width: 820px){.app{grid-template-columns:1fr;grid-template-areas:"topbar" "main"}.sidebar{position:fixed;top:0;left:0;width:272px;max-width:84vw;height:100vh;height:100dvh;z-index:60;transform:translate(-100%);transition:transform .24s ease}.app.mobile-nav-open .sidebar{transform:translate(0);box-shadow:0 12px 44px #0000004d}.app.mobile-nav-open .mobile-nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#0f172a73}.mobile-nav-btn{display:inline-flex}.nav-toggle{display:none}.topbar{padding:0 12px;gap:8px}.app-main{padding:14px}.app-main table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}input,textarea,select,.input,.search input{font-size:16px}.ai-chat-panel{top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;max-width:100%!important;height:100vh!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;display:flex!important;flex-direction:column!important}.notif-panel{position:fixed!important;top:60px!important;left:8px!important;right:8px!important;width:auto!important;max-width:none!important;max-height:72vh!important}.modal-overlay{padding:12px!important;box-sizing:border-box}.modal-panel{width:100%!important;max-width:100%!important;max-height:88dvh!important;overflow-y:auto!important}.form-grid-2{grid-template-columns:1fr!important}.form-row-wrap{flex-wrap:wrap!important}.addline-grid,.oe-addline{grid-template-columns:1fr!important;align-items:stretch!important}.oe-addline>button{width:100%;justify-content:center;height:44px}.order-layout-grid{grid-template-columns:1fr!important}.pdp-grid{grid-template-columns:1fr!important;gap:20px}.locale-label{display:none}.topbar-search{min-width:0}.topbar-icon-btn,.topbar-logout{min-height:40px}.list-card thead{display:none!important}.list-card tbody{display:flex;flex-direction:column;gap:10px}.list-card tr{display:block;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-1);padding:10px 12px}.list-card td{display:flex!important;justify-content:space-between!important;align-items:center;gap:12px;padding:6px 0!important;border:0!important;text-align:right!important}.list-card td:before{content:attr(data-label);text-align:left;color:var(--ink-3);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.list-card td.card-actions{justify-content:stretch;flex-wrap:wrap;gap:8px}.list-card td.card-actions:before{display:none}.list-card td.card-actions>*{flex:1}.list-card td.card-actions .btn,.list-card td.card-actions button{min-height:40px}.list-card td a{min-height:40px;display:inline-flex;align-items:center}.list-card td.oe-line-hide-mobile{display:none}.product-card .btn.sm{height:40px}.cat-sort{width:100%!important;height:40px!important;font-size:16px!important}.qty-box{height:44px!important}.qty-btn{width:44px!important}.qty-input{width:56px!important;font-size:16px!important}.load-more-row{flex-wrap:wrap!important}.load-more-row .btn{flex:1 1 auto}.cat-filters-btn{display:inline-flex}.cat-filters-close{display:inline-flex;width:100%;justify-content:center;margin-bottom:12px}.widget-more-link{min-height:40px;display:inline-flex;align-items:center;padding-inline:8px;margin-inline:-8px}.sd-head{flex-direction:column}.sd-head .btn{align-self:flex-start}.catalog-layout .cat-side{position:fixed!important;top:8px;bottom:8px;left:8px;right:8px;z-index:70;max-height:none!important;overflow-y:auto!important;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:var(--shadow-2);transform:translate(112%);transition:transform .24s ease}.catalog-layout.filters-open .cat-side{transform:none!important}.catalog-layout.filters-open:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:69;background:#0f172a66}}.cat-filters-btn,.cat-filters-close{display:none}@media (max-width: 520px){.app-main{padding:12px}.topbar{gap:6px}.kpi-grid,.summary-row{grid-template-columns:1fr}.topbar .topbar-search{display:none}}
