:root {
      --bg: #f5f5f7;
      --surface: #ffffff;
      --surface-2: #fbfbfd;
      --surface-elevated: #ffffff;
      --border: rgba(0, 0, 0, 0.08);
      --border-strong: rgba(0, 0, 0, 0.12);
      --hairline: rgba(0, 0, 0, 0.06);
      --text: #1d1d1f;
      --text-muted: #6e6e73;
      --text-tertiary: #86868b;
      --accent: #0071e3;
      --accent-hover: #0077ed;
      --accent-soft: rgba(0, 113, 227, 0.12);
      --ozon: #005bff;
      --ozon-soft: #e8f1ff;
      --ozon-mid: rgba(0, 91, 255, 0.14);
      --wb: #7c3aed;
      --wb-soft: #f3ebff;
      --wb-mid: rgba(124, 58, 237, 0.14);
      --tasks-accent: #5856d6;
      --tasks-soft: #f0efff;
      --warn: #bf4800;
      --warn-soft: #fff4e6;
      --ok: #248a3d;
      --ok-soft: #e8f7ec;
      --danger: #d70015;
      --danger-soft: #ffecee;
      --radius: 14px;
      --radius-sm: 10px;
      --radius-pill: 980px;
      --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04);
      --shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
      --shadow-md: 0 12px 40px rgba(0, 0, 0, 0.08);
      --shadow-lg: 0 18px 50px rgba(0, 0, 0, 0.1);
      --muted: var(--text-muted);
      --font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Segoe UI", system-ui, sans-serif;
      --ease: cubic-bezier(0.25, 0.1, 0.25, 1);
    }
    * { box-sizing: border-box; }

    /* portal-ui-kit v1 */
    .st-btn,
    .toolbar button,
    .health-toolbar button,
    .memory-actions button,
    .task-detail-foot button,
    .dlg-btns button,
    .summary-hero button,
    .wm-panel-body > button,
    .wm-filter-bar button,
    .ads-drill-bar button,
    .conn-actions button,
    .finance-toolbar button,
    .btn {
      font: inherit;
      font-size: 0.875rem;
      font-weight: 500;
      line-height: 1.2;
      padding: 0.5rem 1rem;
      border-radius: var(--radius-pill);
      border: 1px solid var(--border-strong);
      background: var(--surface);
      color: var(--text);
      cursor: pointer;
      box-shadow: var(--shadow-sm);
      transition: background 0.2s var(--ease), border-color 0.2s var(--ease),
        color 0.2s var(--ease), box-shadow 0.2s var(--ease), transform 0.12s var(--ease);
    }
    .st-btn:hover,
    .toolbar button:hover,
    .health-toolbar button:hover,
    .memory-actions button:hover,
    .task-detail-foot button:hover:not(.st-btn--danger),
    .dlg-btns button:hover,
    .summary-hero button:hover,
    .wm-panel-body > button:hover,
    .wm-filter-bar button:hover,
    .ads-drill-bar button:hover,
    .conn-actions button:hover,
    .finance-toolbar button:hover,
    .btn:hover {
      background: var(--surface-2);
      border-color: rgba(0, 0, 0, 0.14);
    }
    .st-btn:active,
    .toolbar button:active,
    .health-toolbar button:active,
    .task-detail-foot button:active,
    .dlg-btns button:active,
    .btn:active { transform: scale(0.98); }
    .st-btn:focus-visible,
    .toolbar button:focus-visible,
    .health-toolbar button:focus-visible,
    .dlg-btns button:focus-visible,
    .btn:focus-visible {
      outline: none;
      box-shadow: 0 0 0 4px var(--accent-soft);
    }
    .st-btn--secondary,
    .btn.secondary,
    #matrixCsv,
    #wbMatrixCsv,
    #taskReloadBtn,
    #journalReloadBtn,
    #taskAddColumnBtn,
    #taskEditCancel,
    .task-detail-foot #taskEditCancel {
      background: var(--surface);
      color: var(--text);
      border-color: var(--border-strong);
      box-shadow: var(--shadow-sm);
    }
    .st-btn--primary,
    .wm-btn-primary,
    #taskCreateBtn,
    #journalAddBtn,
    #timelineLoadBtn,
    #taskEditSave,
    #financeReload,
    #healthReload,
    #syncStatusReload,
    #costMatrixGo,
    #abcGo,
    #warehouseGo,
    #inviteSendBtn,
    #authLoginBtn,
    #authVerifyBtn,
    #authSendCodeBtn {
      background: var(--accent) !important;
      color: #fff !important;
      border: none !important;
      box-shadow: 0 2px 10px rgba(0, 113, 227, 0.28) !important;
    }
    .st-btn--primary:hover,
    .wm-btn-primary:hover,
    #taskCreateBtn:hover,
    #journalAddBtn:hover,
    #timelineLoadBtn:hover,
    #taskEditSave:hover,
    #financeReload:hover,
    #healthReload:hover,
    #syncStatusReload:hover,
    #costMatrixGo:hover,
    #abcGo:hover,
    #warehouseGo:hover,
    #inviteSendBtn:hover,
    #authLoginBtn:hover,
    #authVerifyBtn:hover,
    #authSendCodeBtn:hover {
      background: var(--accent-hover) !important;
    }
    .st-btn--ozon,
    #go, #pricesGo, #funnelGo, #analyticsGo, #adsGo,
    #ozonSyncBtn, #pricesSyncBtn, #funnelSyncBtn {
      background: var(--ozon) !important;
      color: #fff !important;
      border: none !important;
      box-shadow: 0 2px 10px rgba(0, 91, 255, 0.32) !important;
    }
    .st-btn--ozon:hover,
    #go:hover, #pricesGo:hover, #funnelGo:hover, #analyticsGo:hover, #adsGo:hover,
    #ozonSyncBtn:hover, #pricesSyncBtn:hover, #funnelSyncBtn:hover {
      background: #0047cc !important;
    }
    .st-btn--wb,
    #wbGo, #wbPricesGo, #wbPricesSyncBtn {
      background: var(--wb) !important;
      color: #fff !important;
      border: none !important;
      box-shadow: 0 2px 10px rgba(124, 58, 237, 0.32) !important;
    }
    .st-btn--wb:hover,
    #wbGo:hover, #wbPricesGo:hover, #wbPricesSyncBtn:hover {
      background: #6d28d9 !important;
    }
    .st-btn--tasks,
    #taskCreateBtn, #journalAddBtn, #timelineLoadBtn, #taskEditSave {
      background: var(--tasks-accent) !important;
      box-shadow: 0 2px 10px rgba(88, 86, 214, 0.32) !important;
    }
    .st-btn--tasks:hover,
    #taskCreateBtn:hover, #journalAddBtn:hover, #timelineLoadBtn:hover, #taskEditSave:hover {
      background: #4745c7 !important;
    }
    .st-btn--danger,
    .task-btn-delete,
    #taskEditDelete {
      margin-right: auto;
      background: var(--surface) !important;
      color: var(--danger) !important;
      border: 1px solid rgba(215, 0, 21, 0.25) !important;
      box-shadow: none !important;
    }
    .st-btn--danger:hover,
    .task-btn-delete:hover,
    #taskEditDelete:hover {
      background: var(--danger-soft) !important;
      border-color: rgba(215, 0, 21, 0.4) !important;
    }
    #authRegisterBtn, #authBackBtn {
      background: #64748b !important;
      color: #fff !important;
      border: none !important;
      box-shadow: none !important;
    }
    #authRegisterBtn:hover, #authBackBtn:hover { background: #475569 !important; }
    #summaryReloadBtn {
      background: var(--surface) !important;
      color: var(--text) !important;
      border: 1px solid var(--border-strong) !important;
      box-shadow: var(--shadow-sm) !important;
    }

    #ni_save, #wbni_save { background: var(--accent) !important; color: #fff !important; border: none !important; box-shadow: 0 2px 10px rgba(0, 113, 227, 0.28) !important; }
    #ni_save:hover, #wbni_save:hover { background: var(--accent-hover) !important; }
    .task-card .task-actions button {
      font-size: 0.74rem; padding: 0.3rem 0.65rem; border-radius: var(--radius-pill);
      background: var(--surface); border: 1px solid var(--border-strong);
      box-shadow: none;
    }

    .st-select,
    .toolbar select,
    .health-toolbar select,
    .wm-form-grid select,
    .wm-filter-bar select,
    .portal-shop-wrap select,
    .finance-toolbar select,
    .view-panel .toolbar select,
    .summary-hero select {
      font: inherit;
      font-size: 0.9375rem;
      font-weight: 400;
      color: var(--text);
      padding: 0.5rem 2.25rem 0.5rem 0.7rem;
      border: 1px solid var(--border-strong);
      border-radius: var(--radius-sm);
      background-color: var(--surface);
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236e6e73' d='M2.5 4.5 6 8 9.5 4.5'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right 0.65rem center;
      background-size: 0.75rem;
      appearance: none;
      -webkit-appearance: none;
      cursor: pointer;
      min-height: 2.35rem;
      transition: border-color 0.2s var(--ease), box-shadow 0.2s var(--ease);
    }
    .st-select:hover,
    .toolbar select:hover,
    .health-toolbar select:hover,
    .wm-form-grid select:hover,
    .wm-filter-bar select:hover,
    .portal-shop-wrap select:hover { border-color: rgba(0, 0, 0, 0.18); }
    .st-select:focus,
    .toolbar select:focus,
    .health-toolbar select:focus,
    .wm-form-grid select:focus,
    .wm-filter-bar select:focus,
    .portal-shop-wrap select:focus {
      outline: none;
      border-color: var(--accent);
      box-shadow: 0 0 0 4px var(--accent-soft);
    }
    .portal-shop-wrap--ozon select:focus {
      border-color: var(--ozon);
      box-shadow: 0 0 0 4px var(--ozon-mid);
    }
    .portal-shop-wrap--wb select:focus {
      border-color: var(--wb);
      box-shadow: 0 0 0 4px var(--wb-mid);
    }
    .portal-shop-wrap select {
      min-width: 10rem;
      max-width: 16rem;
      font-size: 0.9375rem;
      font-weight: 500;
      padding: 0.45rem 2rem 0.45rem 0.6rem;
      border: 1px solid var(--border);
      background-color: var(--surface);
    }

    body {
      font-family: var(--font); margin: 0; min-height: 100vh;
      background:
        radial-gradient(ellipse 80% 50% at 0% 0%, rgba(0, 91, 255, 0.07) 0%, transparent 55%),
        radial-gradient(ellipse 60% 40% at 100% 0%, rgba(124, 58, 237, 0.06) 0%, transparent 50%),
        var(--bg);
      color: var(--text); line-height: 1.47;
      -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
    }
    .portal-shell { padding: 1.25rem 1.5rem 2.5rem; max-width: 100%; }
    .portal-topbar {
      display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
      gap: 0.75rem 1.25rem; margin-bottom: 0.85rem; padding: 0.65rem 1rem;
      background: var(--surface); border: 1px solid var(--hairline);
      border-radius: var(--radius); box-shadow: var(--shadow-sm);
    }
    .portal-brand {
      display: inline-flex; align-items: center; gap: 0.7rem;
      text-decoration: none; color: inherit; flex-shrink: 0;
      border-radius: var(--radius-sm); padding: 0.15rem 0.35rem 0.15rem 0.15rem;
      margin: -0.15rem 0 -0.15rem -0.15rem;
      transition: background 0.2s var(--ease);
    }
    .portal-brand:hover { background: rgba(0, 0, 0, 0.03); }
    .portal-brand:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
    .portal-brand-mark {
      width: 2.5rem; height: 2.5rem; flex-shrink: 0;
      filter: drop-shadow(0 2px 6px rgba(0, 91, 255, 0.25));
      transition: transform 0.25s var(--ease);
    }
    .portal-brand:hover .portal-brand-mark { transform: scale(1.04); }
    .portal-brand-text { display: flex; flex-direction: column; gap: 0.05rem; line-height: 1.15; }
    .portal-brand-name {
      font-size: 1.35rem; font-weight: 700; letter-spacing: -0.045em;
      background: linear-gradient(118deg, var(--ozon) 0%, #2d2d35 42%, var(--wb) 100%);
      -webkit-background-clip: text; background-clip: text; color: transparent;
    }
    .portal-brand-tagline {
      font-size: 0.6875rem; font-weight: 500; color: var(--text-tertiary);
      letter-spacing: 0.03em; text-transform: uppercase;
    }
    .portal-brand--auth { flex-direction: column; align-items: center; text-align: center; gap: 0.65rem; margin: 0 0 0.25rem; padding: 0; }
    .portal-brand--auth:hover { background: transparent; }
    .portal-brand--auth .portal-brand-mark { width: 3.25rem; height: 3.25rem; }
    .portal-brand--auth .portal-brand-name { font-size: 1.85rem; }
    .portal-brand--auth .portal-brand-tagline { text-transform: none; font-size: 0.8125rem; letter-spacing: 0; color: var(--text-muted); }
    .portal-header {
      margin-bottom: 1.25rem; display: flex; flex-wrap: wrap; align-items: flex-end;
      justify-content: space-between; gap: 1rem;
    }
    .portal-header--compact { display: none; }
    .cabinet-bar { font-size: 0.8125rem; color: var(--text-muted); text-align: right; max-width: 320px; line-height: 1.5; }
    .cabinet-bar strong { color: var(--text); font-weight: 600; }
    .cabinet-bar a { color: var(--accent); cursor: pointer; text-decoration: none; }
    .cabinet-bar a:hover { text-decoration: underline; }
    .cabinet-bar .cabinet-logout {
      display: inline-block; margin-top: 0.5rem; padding: 0.35rem 0.75rem;
      font-size: 0.8125rem; border: none; border-radius: var(--radius-pill);
      color: var(--text); text-decoration: none; background: var(--surface);
      box-shadow: var(--shadow-sm); transition: background 0.2s var(--ease);
    }
    .cabinet-bar .cabinet-logout:hover { background: var(--surface-2); }
    .portal-support-ref {
      position: fixed; right: 0.65rem; bottom: 0.45rem; z-index: 40;
      font-size: 0.6875rem; line-height: 1.35; color: var(--text-muted);
      font-family: ui-monospace, "Cascadia Code", monospace;
      opacity: 0.72; user-select: all; cursor: pointer;
      padding: 0.2rem 0.45rem; border-radius: var(--radius-sm);
      background: rgba(255, 255, 255, 0.85);
      box-shadow: var(--shadow-sm); max-width: min(22rem, 92vw);
    }
    .portal-support-ref:hover { opacity: 1; }
    .portal-support-ref--copied { color: var(--accent); opacity: 1; }
    .auth-box { font-size: 0.8125rem; max-width: 20rem; }
    .auth-box input { font: inherit; padding: 0.35rem 0.5rem; border: 1px solid var(--border); border-radius: var(--radius-sm); width: 100%; margin: 0.2rem 0 0.45rem; }
    .auth-box label { display: block; color: var(--text-muted); font-size: 0.75rem; }
    .auth-box .auth-actions { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-top: 0.35rem; }
    .auth-box button { font: inherit; padding: 0.4rem 0.85rem; border-radius: var(--radius-pill); border: none; background: var(--accent); color: #fff; cursor: pointer; }
    .portal-shell--locked .portal-nav,
    .portal-shell--locked .view-panel { display: none !important; }
    .portal-shell--locked .portal-topbar { display: none; }
    .portal-auth-gate.portal-landing {
      display: block; min-height: 100vh; padding: 0;
      background: #f6f8fc;
      color: var(--text);
    }
    .portal-auth-gate[hidden] { display: none !important; }
    body.landing-modal-open { overflow: hidden; }
    .landing-header {
      position: sticky; top: 0; z-index: 50;
      display: flex; align-items: center; justify-content: space-between; gap: 1rem;
      padding: 0.75rem clamp(1rem, 3vw, 2rem);
      background: rgba(255, 255, 255, 0.92);
      backdrop-filter: blur(12px); border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    }
    .landing-header .portal-brand { margin: 0; }
    .landing-nav { display: flex; flex-wrap: wrap; gap: 0.25rem 1.35rem; align-items: center; }
    .landing-nav a {
      font-size: 0.8125rem; font-weight: 500; color: var(--text-muted); text-decoration: none;
      transition: color 0.2s var(--ease);
    }
    .landing-nav a:hover { color: var(--accent); }
    .landing-header-actions { display: flex; gap: 0.5rem; flex-shrink: 0; }
    .landing-btn {
      font: inherit; font-size: 0.8125rem; font-weight: 600;
      padding: 0.5rem 1.05rem; border-radius: var(--radius-pill); cursor: pointer;
      border: 1px solid var(--border); background: var(--surface); color: var(--text);
      transition: transform 0.15s var(--ease), box-shadow 0.2s var(--ease), background 0.2s var(--ease);
    }
    .landing-btn:hover { background: var(--surface-2); transform: translateY(-1px); }
    .landing-btn--primary {
      border: none; background: linear-gradient(135deg, #0071e3 0%, #005bff 55%, #6d28d9 100%);
      color: #fff; box-shadow: 0 4px 18px rgba(0, 91, 255, 0.35);
    }
    .landing-btn--primary:hover { filter: brightness(1.05); }
    .landing-btn--ghost {
      background: transparent; border-color: transparent; color: var(--accent);
      box-shadow: none;
    }
    .landing-btn--ghost:hover { background: var(--accent-soft); transform: none; }
    .landing-main { max-width: 72rem; margin: 0 auto; padding: 0 clamp(1rem, 3vw, 2rem) 2rem; }
    .landing-eyebrow {
      display: inline-block; margin: 0 0 0.65rem; font-size: 0.6875rem; font-weight: 600;
      letter-spacing: 0.08em; text-transform: uppercase; color: var(--accent);
    }
    .landing-hero {
      padding: clamp(2rem, 5vw, 3.5rem) 0 clamp(2.5rem, 6vw, 4rem);
      background:
        radial-gradient(ellipse 80% 60% at 10% -10%, rgba(0, 91, 255, 0.14), transparent 55%),
        radial-gradient(ellipse 70% 50% at 95% 20%, rgba(124, 58, 237, 0.1), transparent 50%);
    }
    .landing-hero-grid {
      display: grid; gap: 2rem; align-items: center;
      grid-template-columns: 1fr;
    }
    @media (min-width: 900px) {
      .landing-hero-grid { grid-template-columns: 1.05fr 0.95fr; gap: 2.5rem; }
    }
    .landing-hero h1 {
      margin: 0 0 0.85rem; font-size: clamp(2rem, 5vw, 3rem);
      font-weight: 700; letter-spacing: -0.045em; line-height: 1.08; color: #0f172a;
    }
    .landing-hero h1 em {
      font-style: normal;
      background: linear-gradient(118deg, var(--ozon) 0%, #334155 42%, var(--wb) 100%);
      -webkit-background-clip: text; background-clip: text; color: transparent;
    }
    .landing-hero-lead {
      margin: 0 0 1.35rem; max-width: 34rem;
      font-size: 1.0625rem; line-height: 1.6; color: #475569;
    }
    .landing-hero-actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }
    .landing-stats {
      display: flex; flex-wrap: wrap; gap: 1.25rem 2rem; margin: 1.75rem 0 0;
      padding: 0; list-style: none;
    }
    .landing-stats li { min-width: 5.5rem; }
    .landing-stats strong {
      display: block; font-size: 1.35rem; font-weight: 700; letter-spacing: -0.03em; color: #0f172a;
    }
    .landing-stats span { font-size: 0.75rem; color: #64748b; }
    .landing-preview {
      border-radius: 1rem; border: 1px solid rgba(0, 0, 0, 0.08);
      background: var(--surface); box-shadow: 0 24px 48px rgba(15, 23, 42, 0.1);
      overflow: hidden;
    }
    .landing-preview-top {
      display: flex; align-items: center; justify-content: space-between; gap: 0.5rem;
      padding: 0.75rem 1rem; background: #f8fafc; border-bottom: 1px solid var(--hairline);
    }
    .landing-preview-dots { display: flex; gap: 0.35rem; }
    .landing-preview-dots i {
      width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #cbd5e1; font-style: normal;
    }
    .landing-preview-dots i:first-child { background: #f87171; }
    .landing-preview-dots i:nth-child(2) { background: #fbbf24; }
    .landing-preview-dots i:nth-child(3) { background: #4ade80; }
    .landing-preview-mp { display: flex; gap: 0.35rem; }
    .landing-mp-pill {
      font-size: 0.625rem; font-weight: 700; padding: 0.2rem 0.5rem; border-radius: 999px;
      letter-spacing: 0.02em;
    }
    .landing-mp-pill--ozon { background: var(--ozon-soft); color: var(--ozon); }
    .landing-mp-pill--wb { background: var(--wb-soft); color: var(--wb); }
    .landing-preview-body { padding: 1.1rem 1rem 1.25rem; }
    .landing-preview-body h3 {
      margin: 0 0 0.85rem; font-size: 0.75rem; font-weight: 600;
      text-transform: uppercase; letter-spacing: 0.06em; color: #94a3b8;
    }
    .landing-preview-metrics {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.65rem;
    }
    .landing-preview-metric {
      padding: 0.65rem 0.55rem; border-radius: var(--radius-sm);
      background: #f8fafc; border: 1px solid var(--hairline);
    }
    .landing-preview-metric span {
      display: block; font-size: 0.625rem; color: #94a3b8; margin-bottom: 0.2rem;
    }
    .landing-preview-metric b { font-size: 0.95rem; font-weight: 700; color: #0f172a; }
    .landing-preview-metric--up b { color: #16a34a; }
    .landing-preview-bar {
      margin-top: 1rem; height: 0.45rem; border-radius: 999px;
      background: linear-gradient(90deg, var(--ozon) 0%, var(--ozon) 52%, var(--wb) 52%, var(--wb) 100%);
      opacity: 0.85;
    }
    .landing-preview-v2 .landing-preview-tabs {
      display: flex; gap: 0.35rem; margin-bottom: 0.75rem;
    }
    .landing-preview-tab {
      font-size: 0.625rem; font-weight: 600; padding: 0.28rem 0.55rem; border-radius: 6px;
      border: 1px solid var(--hairline); background: #fff; color: #64748b;
    }
    .landing-preview-tab--on {
      background: var(--accent-soft); border-color: rgba(0, 113, 227, 0.2); color: var(--accent);
    }
    .landing-preview-status {
      display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem 0.5rem;
      margin-bottom: 0.65rem; font-size: 0.625rem; color: #64748b;
    }
    .landing-preview-pill {
      display: inline-flex; align-items: center; gap: 0.25rem;
      padding: 0.2rem 0.45rem; border-radius: 999px; font-weight: 600;
    }
    .landing-preview-pill--ok { background: #ecfdf5; color: #047857; }
    .landing-preview-pill--warn { background: #fffbeb; color: #b45309; }
    .landing-preview-table {
      width: 100%; border-collapse: collapse; font-size: 0.625rem;
    }
    .landing-preview-table th {
      text-align: left; font-weight: 600; color: #94a3b8; padding: 0.35rem 0.4rem;
      border-bottom: 1px solid var(--hairline);
    }
    .landing-preview-table td {
      padding: 0.4rem; border-bottom: 1px solid #f1f5f9; color: #334155;
    }
    .landing-preview-table code { font-size: 0.58rem; color: #0f172a; }
    .landing-steps {
      display: grid; gap: 1.25rem;
      grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
      counter-reset: landing-step;
    }
    .landing-step {
      position: relative; padding: 1.25rem 1.2rem 1.2rem 3.25rem;
      border-radius: 1rem; background: var(--surface);
      border: 1px solid rgba(0, 0, 0, 0.06);
      box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
    }
    .landing-step::before {
      counter-increment: landing-step;
      content: counter(landing-step);
      position: absolute; left: 1.1rem; top: 1.15rem;
      width: 1.65rem; height: 1.65rem; border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      font-size: 0.75rem; font-weight: 700; color: #fff;
      background: linear-gradient(135deg, var(--ozon), var(--wb));
    }
    .landing-step h3 { margin: 0 0 0.4rem; font-size: 0.95rem; font-weight: 600; color: #0f172a; }
    .landing-step p { margin: 0; font-size: 0.8125rem; line-height: 1.55; color: #64748b; }
    .landing-platform {
      display: grid; gap: 1rem;
      grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
    }
    .landing-platform-col {
      padding: 1.35rem 1.3rem; border-radius: 1rem;
      border: 1px solid rgba(0, 0, 0, 0.06); background: var(--surface);
      box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04);
    }
    .landing-platform-col--ozon { border-top: 3px solid var(--ozon); }
    .landing-platform-col--wb { border-top: 3px solid var(--wb); }
    .landing-platform-col h3 {
      margin: 0 0 0.75rem; font-size: 1.05rem; font-weight: 700;
    }
    .landing-platform-col--ozon h3 { color: var(--ozon); }
    .landing-platform-col--wb h3 { color: var(--wb); }
    .landing-platform-col ul {
      margin: 0; padding: 0; list-style: none;
      font-size: 0.8125rem; line-height: 1.6; color: #64748b;
    }
    .landing-platform-col li {
      padding: 0.22rem 0 0.22rem 1.1rem; position: relative;
    }
    .landing-platform-col li::before {
      content: "✓"; position: absolute; left: 0; color: #22c55e; font-size: 0.7rem; font-weight: 700;
    }
    .landing-highlight {
      display: grid; gap: 1.5rem; align-items: center;
      grid-template-columns: 1fr;
      padding: 1.75rem 1.5rem; border-radius: 1.15rem;
      background: linear-gradient(135deg, #f0f7ff 0%, #f5f3ff 55%, #faf5ff 100%);
      border: 1px solid rgba(0, 113, 227, 0.15);
    }
    @media (min-width: 768px) {
      .landing-highlight { grid-template-columns: 1fr 1.1fr; padding: 2rem 2rem; }
    }
    .landing-highlight h3 { margin: 0 0 0.5rem; font-size: 1.2rem; font-weight: 700; color: #0f172a; }
    .landing-highlight p { margin: 0 0 0.65rem; font-size: 0.875rem; line-height: 1.6; color: #475569; }
    .landing-highlight-list {
      margin: 0; padding: 0; list-style: none; font-size: 0.8125rem; color: #64748b;
    }
    .landing-highlight-list li { padding: 0.25rem 0; }
    .landing-highlight-mock {
      border-radius: 0.75rem; background: #fff; border: 1px solid var(--hairline);
      padding: 0.85rem 1rem; font-size: 0.75rem; color: #334155;
      box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
    }
    .landing-highlight-mock strong { display: block; color: #0f172a; margin-bottom: 0.35rem; }
    .landing-card-icon--amber { background: #fffbeb; color: #d97706; }
    .landing-features-grid {
      display: grid; gap: 1rem;
      grid-template-columns: repeat(auto-fit, minmax(15.5rem, 1fr));
    }
    .landing-section { padding: 3rem 0 0.25rem; scroll-margin-top: 5rem; }
    .public-calculator-section { scroll-margin-top: 5rem; }
    .public-calculator { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr); gap:1.25rem; padding:1.25rem; border:1px solid #dbe5f3; border-radius:1.5rem; background:linear-gradient(145deg,#fff 0%,#f8fbff 100%); box-shadow:0 18px 55px rgba(15,23,42,.08); }
    .public-calculator-form { min-width:0; }
    .public-calculator-platform { display:flex; width:max-content; padding:.28rem; margin-bottom:1rem; background:#eef3fa; border-radius:.9rem; }
    .public-calculator-platform button { border:0; border-radius:.68rem; padding:.65rem 1.15rem; background:transparent; color:#64748b; font-weight:700; cursor:pointer; }
    .public-calculator-platform button.is-active { color:#fff; background:linear-gradient(135deg,#005bff,#6d4aff); box-shadow:0 5px 15px rgba(0,91,255,.22); }
    .public-calculator-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; }
    .public-calculator-grid label { display:flex; flex-direction:column; gap:.38rem; color:#334155; font-size:.78rem; font-weight:650; }
    .public-calculator-grid [hidden] { display:none !important; }
    .public-calculator-grid input,.public-calculator-grid select { width:100%; min-height:2.8rem; box-sizing:border-box; border:1px solid #cbd8e8; border-radius:.72rem; padding:.65rem .75rem; background:#fff; color:#172033; font:inherit; font-size:.9rem; outline:none; }
    .public-calculator-grid input:focus,.public-calculator-grid select:focus { border-color:#4f7fff; box-shadow:0 0 0 3px rgba(0,91,255,.1); }
    .public-calculator-grid small { min-height:1em; color:#8a97a9; font-weight:400; line-height:1.3; }
    .public-calculator-disclaimer { margin:.9rem 0 0; color:#718096; font-size:.72rem; line-height:1.5; }
    .public-calculator-result { align-self:start; position:sticky; top:5rem; padding:1.35rem; border-radius:1.15rem; color:#fff; background:linear-gradient(155deg,#102044,#172c61 60%,#244aa5); box-shadow:0 15px 35px rgba(20,43,92,.2); }
    .public-calculator-result-label { display:block; color:#bfcef0; font-size:.78rem; }
    .public-calculator-result-value { display:block; margin:.3rem 0 .2rem; font-size:2rem; line-height:1.1; letter-spacing:-.04em; }
    .public-calculator-result-value.is-positive { color:#7ef0b0; }
    .public-calculator-result-value.is-negative { color:#ff9d9d; }
    .public-calculator-margin { display:block; color:#d7e2ff; font-size:.78rem; }
    .public-calculator-breakdown { margin-top:1.15rem; padding-top:.8rem; border-top:1px solid rgba(255,255,255,.14); }
    .public-calculator-breakdown div,.public-calculator-gross { display:flex; justify-content:space-between; gap:1rem; padding:.32rem 0; font-size:.76rem; }
    .public-calculator-breakdown span { color:#bfcceb; }
    .public-calculator-gross { margin-top:.65rem; padding-top:.75rem; border-top:1px solid rgba(255,255,255,.14); }
    .public-calculator-tariff { margin:.8rem 0 0; padding:.7rem; border-radius:.65rem; background:rgba(255,255,255,.1); color:#dbe6ff; font-size:.7rem; line-height:1.45; }
    .public-calculator-cta { display:flex; align-items:center; justify-content:center; gap:1rem; padding:1rem; color:#526075; font-size:.84rem; }
    @media (max-width:760px) {
      .public-calculator { grid-template-columns:1fr; padding:.85rem; }
      .public-calculator-grid { grid-template-columns:1fr; }
      .public-calculator-result { position:static; }
      .public-calculator-cta { flex-direction:column; text-align:center; }
    }
    .landing-section-head { text-align: center; max-width: 36rem; margin: 0 auto 1.75rem; }
    .landing-section-head .landing-eyebrow { margin-bottom: 0.5rem; }
    .landing-section h2 {
      margin: 0 0 0.5rem; font-size: clamp(1.35rem, 3vw, 1.75rem); font-weight: 700;
      letter-spacing: -0.035em; color: #0f172a;
    }
    .landing-section-sub {
      margin: 0; font-size: 0.9375rem; color: #64748b; line-height: 1.55;
    }
    .landing-grid {
      display: grid; gap: 1rem;
      grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    }
    .landing-card {
      padding: 1.35rem 1.3rem; border-radius: 1rem;
      background: var(--surface); border: 1px solid rgba(0, 0, 0, 0.06);
      box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04);
      transition: transform 0.2s var(--ease), box-shadow 0.2s var(--ease);
    }
    .landing-card:hover {
      transform: translateY(-3px);
      box-shadow: 0 12px 32px rgba(15, 23, 42, 0.08);
    }
    .landing-card-icon {
      width: 2.5rem; height: 2.5rem; border-radius: 0.65rem;
      display: flex; align-items: center; justify-content: center;
      font-size: 0.7rem; font-weight: 800; letter-spacing: 0.02em;
      margin-bottom: 0.85rem;
    }
    .landing-card-icon--blue { background: var(--ozon-soft); color: var(--ozon); }
    .landing-card-icon--purple { background: var(--wb-soft); color: var(--wb); }
    .landing-card-icon--slate { background: #f1f5f9; color: #475569; }
    .landing-card-icon--green { background: #ecfdf5; color: #059669; }
    .landing-card h3 { margin: 0 0 0.45rem; font-size: 1.05rem; font-weight: 600; color: #0f172a; }
    .landing-card p { margin: 0; font-size: 0.875rem; line-height: 1.55; color: #64748b; }
    .landing-pricing .landing-card { display: flex; flex-direction: column; position: relative; }
    .landing-card-badge {
      position: absolute; top: -0.55rem; left: 50%; transform: translateX(-50%);
      font-size: 0.625rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em;
      padding: 0.25rem 0.65rem; border-radius: 999px;
      background: linear-gradient(135deg, var(--ozon), var(--wb)); color: #fff;
    }
    .landing-price {
      margin: 0.35rem 0 0.5rem; font-size: 2rem; font-weight: 700;
      letter-spacing: -0.04em; color: #0f172a;
    }
    .landing-price span { font-size: 0.8rem; font-weight: 500; color: #94a3b8; }
    .landing-price--muted { font-size: 1.25rem; color: #94a3b8; }
    .landing-price-note { font-size: 0.75rem; color: #94a3b8; margin-bottom: 0.85rem; }
    .landing-card ul {
      margin: 0; padding: 0; list-style: none; flex: 1;
      font-size: 0.8125rem; line-height: 1.65; color: #64748b;
    }
    .landing-card ul li {
      padding: 0.3rem 0 0.3rem 1.35rem; position: relative;
    }
    .landing-card ul li::before {
      content: ""; position: absolute; left: 0; top: 0.65rem;
      width: 0.4rem; height: 0.4rem; border-radius: 50%; background: var(--accent);
      opacity: 0.55;
    }
    .landing-card--featured {
      border-color: rgba(0, 113, 227, 0.25);
      box-shadow: 0 16px 40px rgba(0, 113, 227, 0.12);
    }
    .landing-card--muted { opacity: 0.92; background: #fafbfc; }
    .landing-pricing-grid {
      display: grid; gap: 1rem;
      grid-template-columns: repeat(auto-fit, minmax(14.25rem, 1fr));
    }
    @media (min-width: 900px) {
      .landing-pricing-grid { grid-template-columns: repeat(3, 1fr); }
    }
    @media (min-width: 1280px) {
      .landing-pricing-grid--wide { grid-template-columns: repeat(3, 1fr); }
    }
    .landing-card-mp {
      display: flex; flex-wrap: wrap; gap: 0.35rem; margin-bottom: 0.65rem;
    }
    .landing-card-mp span {
      font-size: 0.625rem; font-weight: 700; padding: 0.2rem 0.45rem; border-radius: 6px;
    }
    .landing-card-mp .landing-mp-pill--ozon { background: rgba(0, 91, 255, 0.1); color: var(--ozon); }
    .landing-card-mp .landing-mp-pill--wb { background: rgba(203, 17, 171, 0.1); color: var(--wb); }
    .landing-pricing-hint {
      text-align: center; margin: 1.25rem auto 0; max-width: 40rem;
      font-size: 0.8125rem; line-height: 1.55; color: #94a3b8;
    }
    .landing-personas {
      display: grid; gap: 1rem;
      grid-template-columns: repeat(auto-fit, minmax(13.5rem, 1fr));
    }
    .landing-persona {
      padding: 1.2rem 1.15rem; border-radius: 1rem;
      background: var(--surface); border: 1px solid rgba(0, 0, 0, 0.06);
      box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
    }
    .landing-persona-role {
      font-size: 0.625rem; font-weight: 700; text-transform: uppercase;
      letter-spacing: 0.06em; color: #94a3b8; margin-bottom: 0.35rem;
    }
    .landing-persona h3 { margin: 0 0 0.4rem; font-size: 0.95rem; font-weight: 600; color: #0f172a; }
    .landing-persona p { margin: 0; font-size: 0.8125rem; line-height: 1.55; color: #64748b; }
    .landing-cases-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr)); }
    .landing-case {
      padding: 1.35rem 1.3rem; border-radius: 1rem;
      background: var(--surface); border: 1px solid rgba(0, 0, 0, 0.06);
      box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
    }
    .landing-case-tag {
      display: inline-block; font-size: 0.625rem; font-weight: 700;
      text-transform: uppercase; letter-spacing: 0.06em;
      color: var(--accent); margin-bottom: 0.5rem;
    }
    .landing-case strong {
      display: block; margin-bottom: 0.5rem; font-size: 1rem; font-weight: 600; color: #0f172a;
    }
    .landing-case p { margin: 0; font-size: 0.875rem; line-height: 1.55; color: #64748b; }
    .landing-faq { max-width: 42rem; margin: 0 auto; }
    .landing-faq details {
      border: 1px solid rgba(0, 0, 0, 0.06); border-radius: 0.75rem;
      background: var(--surface); margin-bottom: 0.55rem; padding: 0.85rem 1rem;
      transition: border-color 0.2s var(--ease);
    }
    .landing-faq details[open] { border-color: rgba(0, 113, 227, 0.25); }
    .landing-faq summary {
      cursor: pointer; font-weight: 600; font-size: 0.9rem; color: #0f172a;
      list-style: none;
    }
    .landing-faq summary::-webkit-details-marker { display: none; }
    .landing-faq details[open] summary { color: var(--accent); margin-bottom: 0.5rem; }
    .landing-faq p { margin: 0; font-size: 0.8125rem; line-height: 1.55; color: #64748b; }
    .landing-cta {
      margin-top: 3rem; padding: 2.25rem 1.75rem; text-align: center; border-radius: 1.25rem;
      background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 50%, #312e81 100%);
      color: #fff; box-shadow: 0 20px 50px rgba(15, 23, 42, 0.2);
    }
    .landing-cta h2 { margin: 0 0 0.5rem; font-size: 1.5rem; font-weight: 700; letter-spacing: -0.03em; }
    .landing-cta p { margin: 0 auto 1.25rem; max-width: 28rem; font-size: 0.9375rem; line-height: 1.5; color: rgba(255,255,255,0.82); }
    .landing-cta .landing-btn--primary { box-shadow: 0 4px 20px rgba(0,0,0,0.25); }
    .landing-cta .landing-btn { border-color: rgba(255,255,255,0.25); color: #fff; background: rgba(255,255,255,0.08); }
    .landing-cta .landing-btn:hover { background: rgba(255,255,255,0.14); }
    .landing-footer {
      text-align: center; padding: 2.5rem 1rem 2rem;
      font-size: 0.8125rem; color: #94a3b8;
    }
    .landing-footer a { color: var(--accent); text-decoration: none; }
    .landing-footer a:hover { text-decoration: underline; }
    .landing-auth-modal {
      position: fixed; inset: 0; z-index: 200;
      display: flex; align-items: center; justify-content: center;
      padding: 1rem;
    }
    .landing-auth-modal[hidden] { display: none !important; }
    .landing-auth-modal-backdrop {
      position: absolute; inset: 0; background: rgba(15, 23, 42, 0.55);
      backdrop-filter: blur(4px);
    }
    .landing-auth-modal-dialog {
      position: relative; width: 100%; max-width: 24rem;
      padding: 1.65rem 1.5rem 1.5rem; border-radius: 1.1rem;
      background: var(--surface); box-shadow: 0 24px 64px rgba(15, 23, 42, 0.28);
      border: 1px solid rgba(255, 255, 255, 0.8);
    }
    .landing-auth-modal-dialog h2 {
      margin: 0 0 0.35rem; font-size: 1.35rem; font-weight: 700; letter-spacing: -0.03em;
    }
    .landing-auth-modal-dialog .auth-lead {
      margin: 0 0 1rem; color: var(--text-muted); font-size: 0.875rem; line-height: 1.45;
    }
    .landing-auth-modal-dialog .auth-box { max-width: none; font-size: 0.875rem; }
    .landing-auth-modal-dialog .auth-actions button#authRegisterBtn { background: #64748b; }
    .landing-auth-modal-close {
      position: absolute; top: 0.65rem; right: 0.65rem;
      width: 2rem; height: 2rem; border: none; border-radius: 50%;
      background: var(--surface-2); color: var(--text-muted); font-size: 1.25rem;
      line-height: 1; cursor: pointer;
    }
    .landing-auth-modal-close:hover { background: #e2e8f0; color: var(--text); }
    @media (max-width: 640px) {
      .landing-nav { display: none; }
      .landing-header { padding: 0.6rem 1rem; }
      .landing-preview-metrics { grid-template-columns: 1fr 1fr; }
    }
    .landing-btn--link {
      display: inline-flex; align-items: center; justify-content: center;
      text-decoration: none;
    }
    .landing-proof-list {
      display: flex; flex-wrap: wrap; gap: 0.6rem 1rem;
      margin: 1.5rem 0 0; padding: 0; list-style: none;
      color: #475569; font-size: 0.78rem; font-weight: 500;
    }
    .landing-proof-list li { position: relative; padding-left: 1.15rem; }
    .landing-proof-list li::before {
      content: "✓"; position: absolute; left: 0; color: #059669; font-weight: 800;
    }
    .landing-kpi-grid {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.55rem; margin: 0.8rem 0;
    }
    .landing-kpi-grid > div {
      padding: 0.65rem; border: 1px solid #e8edf5; border-radius: 0.65rem;
      background: linear-gradient(180deg, #fff, #f8fafc);
    }
    .landing-kpi-grid span, .landing-kpi-grid small {
      display: block; color: #94a3b8; font-size: 0.58rem;
    }
    .landing-kpi-grid strong {
      display: block; margin: 0.18rem 0; color: #0f172a; font-size: 0.82rem;
    }
    .landing-kpi-grid small { color: #059669; }
    .landing-preview-profit {
      display: flex; align-items: center; justify-content: space-between; gap: 1rem;
      margin-top: 0.8rem; padding: 0.7rem 0.8rem; border-radius: 0.65rem;
      background: #ecfdf5; color: #047857; font-size: 0.68rem;
    }
    .landing-preview-profit strong { font-size: 0.82rem; }
    .landing-features-grid--primary { grid-template-columns: repeat(4, 1fr); }
    .landing-card--primary { min-height: 13rem; }
    .landing-product-story {
      display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 2rem; align-items: center;
      padding: clamp(1.5rem, 4vw, 2.5rem); border-radius: 1.25rem;
      background: linear-gradient(135deg, #fff 0%, #f5f3ff 100%);
      border: 1px solid rgba(124, 58, 237, 0.14);
    }
    .landing-product-story h2, .landing-data-panel h2, .landing-access-card h2 {
      margin: 0 0 0.65rem; font-size: clamp(1.5rem, 3vw, 2rem);
      letter-spacing: -0.04em; line-height: 1.12; color: #0f172a;
    }
    .landing-product-story p, .landing-data-panel p, .landing-access-card p {
      margin: 0; color: #64748b; font-size: 0.92rem; line-height: 1.65;
    }
    .landing-check-list {
      margin: 1rem 0 0; padding: 0; list-style: none; color: #475569; font-size: 0.84rem;
    }
    .landing-check-list li { position: relative; padding: 0.3rem 0 0.3rem 1.35rem; }
    .landing-check-list li::before { content: "✓"; position: absolute; left: 0; color: #7c3aed; font-weight: 800; }
    .landing-calculator-mock {
      padding: 1.2rem; border-radius: 1rem; background: #fff;
      border: 1px solid #e8e5f4; box-shadow: 0 18px 40px rgba(76, 29, 149, 0.1);
    }
    .landing-calculator-mock > strong { display: block; margin: 0.25rem 0 1rem; color: #0f172a; }
    .landing-mock-label { color: #94a3b8; font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.06em; }
    .landing-calc-price, .landing-calc-row, .landing-calc-result {
      display: flex; justify-content: space-between; gap: 1rem; padding: 0.65rem 0;
      border-top: 1px solid #eef2f7; font-size: 0.8rem; color: #64748b;
    }
    .landing-calc-price b { color: #0f172a; }
    .landing-calc-row b { color: #475569; }
    .landing-calc-result {
      margin-top: 0.4rem; padding: 0.8rem; border: none; border-radius: 0.65rem;
      background: #ecfdf5; color: #047857;
    }
    .landing-data-panel {
      display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 2rem; align-items: center;
      padding: clamp(1.5rem, 4vw, 2.5rem); border-radius: 1.25rem;
      background: #0f172a; color: #fff;
    }
    .landing-data-panel h2 { color: #fff; }
    .landing-data-panel p { color: #cbd5e1; }
    .landing-data-panel .landing-eyebrow { color: #93c5fd; }
    .landing-data-checks { display: grid; gap: 0.55rem; }
    .landing-data-checks > div {
      display: grid; grid-template-columns: auto 1fr; column-gap: 0.65rem; align-items: center;
      padding: 0.75rem 0.85rem; border: 1px solid rgba(255,255,255,0.1);
      border-radius: 0.7rem; background: rgba(255,255,255,0.06);
    }
    .landing-data-checks b { font-size: 0.82rem; color: #fff; }
    .landing-data-checks small { grid-column: 2; color: #94a3b8; font-size: 0.68rem; }
    .landing-status-dot { width: 0.6rem; height: 0.6rem; border-radius: 50%; grid-row: 1 / span 2; }
    .landing-status-dot--ok { background: #34d399; box-shadow: 0 0 0 4px rgba(52,211,153,0.12); }
    .landing-status-dot--run { background: #fbbf24; box-shadow: 0 0 0 4px rgba(251,191,36,0.12); }
    .landing-data-notes {
      display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.65rem; margin-top: 0.75rem;
    }
    .landing-data-notes span {
      padding: 0.65rem; text-align: center; border-radius: 0.65rem;
      border: 1px solid #e5eaf2; background: #fff; color: #64748b; font-size: 0.73rem;
    }
    .landing-access-card {
      display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: center;
      padding: clamp(1.5rem, 4vw, 2.5rem); border-radius: 1.25rem;
      background: #fff; border: 1px solid rgba(0,113,227,0.2);
      box-shadow: 0 16px 40px rgba(0,113,227,0.08);
    }
    .landing-access-action {
      display: flex; flex-direction: column; align-items: flex-start; min-width: 15rem;
    }
    .landing-access-action > strong { font-size: 2.4rem; letter-spacing: -0.05em; color: #0f172a; }
    .landing-access-action > span { margin: 0.1rem 0 0.9rem; color: #94a3b8; font-size: 0.72rem; }
    .landing-cta .landing-btn + .landing-btn { margin-left: 0.45rem; }
    .landing-footer p { margin: 0.35rem 0 0; }
    @media (max-width: 960px) {
      .landing-features-grid--primary { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 700px) {
      .landing-product-story, .landing-data-panel, .landing-access-card { grid-template-columns: 1fr; gap: 1.35rem; }
      .landing-data-notes { grid-template-columns: repeat(2, 1fr); }
      .landing-kpi-grid { grid-template-columns: 1fr 1fr; }
      .landing-kpi-grid > div:last-child { grid-column: 1 / -1; }
      .landing-access-action { min-width: 0; width: 100%; }
    }
    @media (max-width: 480px) {
      .landing-header { gap: 0.35rem; }
      .landing-header .portal-brand-mark { width: 2.25rem; height: 2.25rem; }
      .landing-header .portal-brand-tagline { display: none; }
      .landing-header-actions { gap: 0.25rem; }
      .landing-header-actions .landing-btn { padding: 0.46rem 0.7rem; font-size: 0.74rem; }
      .landing-header-actions .landing-btn--ghost { display: none; }
      .landing-hero { padding-top: 2.2rem; }
      .landing-hero h1 { font-size: 2rem; }
      .landing-hero-lead { font-size: 0.96rem; }
      .landing-features-grid--primary { grid-template-columns: 1fr; }
      .landing-card--primary { min-height: 0; }
      .landing-proof-list { display: grid; gap: 0.55rem; }
      .landing-preview-body { padding: 0.9rem 0.75rem 1rem; }
      .landing-kpi-grid strong { font-size: 0.74rem; }
      .landing-data-notes { grid-template-columns: 1fr 1fr; }
      .landing-cta .landing-btn { width: 100%; }
      .landing-cta .landing-btn + .landing-btn { margin: 0.55rem 0 0; }
    }
    .auth-invite-hint { font-size: 0.75rem; color: var(--text-muted); margin: 0 0 0.5rem; }
    .invite-code-out {
      margin-top: 0.75rem; padding: 0.65rem 0.75rem; background: var(--surface-2);
      border-radius: var(--radius-sm); font-family: ui-monospace, monospace; font-size: 0.85rem;
    }
    .portal-header h1 {
      font-size: 1.75rem; font-weight: 600; margin: 0 0 0.2rem;
      letter-spacing: -0.03em;
      background: linear-gradient(120deg, var(--ozon) 0%, #1d1d1f 45%, var(--wb) 100%);
      -webkit-background-clip: text; background-clip: text; color: transparent;
    }
    .portal-tagline { margin: 0; font-size: 0.9375rem; color: var(--text-muted); font-weight: 400; }
    .toolbar {
      display: flex; flex-wrap: wrap; gap: 0.75rem 1.1rem; align-items: flex-end;
      margin-bottom: 1rem; padding: 1rem 1.15rem;
      background: var(--surface); border: 1px solid var(--hairline);
      border-left: 3px solid var(--accent); border-radius: var(--radius);
      box-shadow: var(--shadow-sm);
    }
    .toolbar label, .health-toolbar label, .wm-form-grid label {
      display: flex; flex-direction: column; font-size: 0.6875rem; font-weight: 500;
      color: var(--text-tertiary); gap: 0.35rem; letter-spacing: 0.02em;
      text-transform: uppercase;
    }
    .inp-upper { text-transform: uppercase; }
    .inp-narrow { width: 8.5rem; max-width: 100%; }
    .toolbar input, .toolbar select,
    .health-toolbar input, .health-toolbar select,
    .wm-form-grid input, .wm-form-grid select, .wm-form-grid textarea {
      margin-top: 0; padding: 0.5rem 0.7rem; font: inherit; font-size: 0.9375rem; font-weight: 400;
      text-transform: none; letter-spacing: normal;
      border: 1px solid var(--border); border-radius: var(--radius-sm);
      background: var(--surface); color: var(--text);
      transition: border-color 0.2s var(--ease), box-shadow 0.2s var(--ease);
    }
    .toolbar input:focus, .toolbar select:focus,
    .health-toolbar input:focus, .health-toolbar select:focus,
    .wm-form-grid input:focus, .wm-form-grid select:focus, .wm-form-grid textarea:focus {
      outline: none; border-color: var(--accent);
      box-shadow: 0 0 0 4px var(--accent-soft);
    }
    .scroll.matrix-scroll {
      overflow: auto; max-width: 100%; max-height: calc(100vh - 12rem);
      border: 1px solid var(--hairline); border-radius: var(--radius);
      background: var(--surface); box-shadow: var(--shadow-sm);
      isolation: isolate;
    }
    table.matrix { border-collapse: separate; border-spacing: 0; font-size: 0.82rem; white-space: nowrap; }
    table.matrix th, table.matrix td { border: 1px solid #ccc; padding: 0.25rem 0.4rem; text-align: right; vertical-align: middle; }
    table.matrix th.sticky-col, table.matrix td.sticky-col {
      position: sticky; left: 0; z-index: 2; background: #fff; box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.matrix th.sticky-col-2, table.matrix td.sticky-col-2 {
      position: sticky; left: var(--matrix-sticky-col1, 9rem); z-index: 2; background: #fff;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.matrix thead th {
      position: sticky; background: var(--surface-2); font-weight: 600;
      box-shadow: 0 1px 0 var(--hairline);
    }
    table.matrix thead tr.main-head th { top: 0; z-index: 3; }
    table.matrix thead tr.main-head th.sticky-col { z-index: 6; }
    table.matrix thead tr.main-head th.sticky-col-2 { z-index: 6; }
    table.matrix thead tr.main-head th.user-category-col { z-index: 6; }
    table.matrix thead tr.main-head th.cluster-head { z-index: 3; background: var(--ozon-soft); color: var(--ozon); }
    table.matrix thead tr.sub-head th {
      top: var(--matrix-head-row1, 4.25rem); z-index: 2;
      background: var(--bg); font-weight: 500; font-size: 0.78rem;
    }
    table.matrix td.sticky-col, table.matrix th.sticky-col { text-align: left; max-width: 9rem; overflow: hidden; text-overflow: ellipsis; }
    table.matrix td.sticky-col-2, table.matrix th.sticky-col-2 {
      text-align: left; max-width: 18rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    }
    table.matrix thead th.cluster-head { background: #e3ecf7; text-align: center; vertical-align: top; font-size: 0.82rem; font-weight: 600; padding: 0.35rem 0.35rem 0.45rem; }
    table.matrix .cluster-title { display: block; line-height: 1.2; margin-bottom: 0.2rem; word-break: break-word; white-space: normal; }
    table.matrix .cluster-region-label {
      display: block; font-size: 0.68rem; font-weight: 500; color: #5a6a7a;
      line-height: 1.15; margin-bottom: 0.15rem; word-break: break-word; white-space: normal;
    }
    table.matrix .btn-cluster-xls {
      font-size: 0.72rem; padding: 0.22rem 0.5rem; cursor: pointer; border: 1px solid #357; border-radius: 3px;
      background: #fff; color: #135; margin-top: 0.1rem;
    }
    table.matrix .btn-cluster-xls:hover { background: #e8f0ff; }
    table.matrix .cluster-head-actions { display:flex; justify-content:center; gap:.3rem; margin-top:.18rem; }
    table.matrix .cluster-head-actions .btn-cluster-xls { margin-top:0; }
    table.matrix .btn-cluster-draft {
      font-size:.72rem; padding:.22rem .5rem; cursor:pointer; border:1px solid #2563eb;
      border-radius:5px; background:#2563eb; color:#fff; font-weight:700;
    }
    table.matrix .btn-cluster-draft:hover { background:#1d4ed8; }
    .fbo-dropoff-search { display:flex; gap:.5rem; margin:.7rem 0; }
    .fbo-dropoff-search input { flex:1; min-width:12rem; }
    .fbo-dropoff-map { height:360px; border:1px solid #dbe4f0; border-radius:14px; overflow:hidden; background:#eef3f8; }
    .fbo-dropoff-list { display:grid; gap:.45rem; max-height:180px; overflow:auto; margin:.65rem 0; }
    .fbo-dropoff-card { text-align:left; padding:.65rem .75rem; border:1px solid #dbe4f0; border-radius:10px; background:#fff; cursor:pointer; }
    .fbo-dropoff-card strong,.fbo-dropoff-card span { display:block; }
    .fbo-dropoff-card span { color:#64748b; font-size:.78rem; margin-top:.15rem; }
    .fbo-dropoff-card.is-selected { border-color:#2563eb; box-shadow:0 0 0 2px rgba(37,99,235,.12); background:#eff6ff; }
    .fbo-timeslot-box { margin-top:.8rem; padding:.85rem; border:1px solid #bfdbfe; border-radius:12px; background:#eff6ff; }
    .fbo-timeslot-box label { display:grid; gap:7px; color:#64748b; font-size:.82rem; font-weight:700; }
    .fbo-timeslot-box select { width:100%; }
    .fbo-timeslot-fields { display:grid; grid-template-columns:minmax(180px,.7fr) minmax(220px,1fr); gap:14px; width:100%; margin-bottom:.6rem; }
    .fbo-timeslot-fields .st-select { min-height:46px; }
    .fbo-timeslot-hint { color:#64748b; font-size:.82rem; line-height:1.4; margin-bottom:.75rem; }
    @media(max-width:680px) { .fbo-timeslot-fields { grid-template-columns:1fr; } }
    .insights-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:26px;border-radius:20px;background:linear-gradient(135deg,#111827,#312e81);color:#fff;margin-bottom:18px}
    .insights-hero h2{margin:4px 0 7px;font-size:1.8rem}.insights-hero p{margin:0;color:#dbeafe;max-width:720px}.insights-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:#a5b4fc;font-weight:800}
    .insights-toolbar{display:grid;grid-template-columns:180px minmax(260px,1fr) 210px;gap:14px;padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:16px}
    .insights-toolbar label{display:grid;gap:6px;font-size:.78rem;font-weight:750;color:#64748b}.insights-freshness{margin:12px 2px;color:#64748b;font-size:.84rem}
    .insights-freshness.is-stale{padding:10px 12px;border-radius:10px;background:#fff7ed;color:#9a3412}
    .insights-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}.insights-stat{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-radius:14px;border:1px solid #e2e8f0;background:#fff;text-align:left}.insights-stat strong{font-size:1.65rem}.insights-stat--critical{border-left:5px solid #ef4444}.insights-stat--warning{border-left:5px solid #f59e0b}.insights-stat--positive{border-left:5px solid #22c55e}
    .insights-list{display:grid;gap:12px}.insight-card{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:17px;background:#fff;border:1px solid #e2e8f0;border-radius:16px}.insight-card--critical{border-left:5px solid #ef4444}.insight-card--warning{border-left:5px solid #f59e0b}.insight-card--positive{border-left:5px solid #22c55e}.insight-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eef2ff;color:#4338ca;font-size:1.25rem;font-weight:900}.insight-top{display:flex;gap:12px;justify-content:space-between;color:#64748b;font-size:.76rem}.insight-kind{text-transform:uppercase;letter-spacing:.08em;font-weight:800}.insight-body h3{margin:4px 0;font-size:1.02rem}.insight-body p{margin:4px 0;color:#475569}.insight-product{font-size:.86rem}.insight-action{margin-top:10px;padding:9px 11px;background:#f8fafc;border-radius:9px;font-size:.86rem;color:#334155}.insights-empty{padding:34px;text-align:center;border:1px dashed #cbd5e1;border-radius:16px;color:#64748b}.insights-empty--error{color:#b91c1c;background:#fef2f2}
    .insight-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.insight-meta span{padding:4px 8px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:.72rem;font-weight:700}.insight-feedback{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid #e2e8f0}.insight-feedback>span{font-size:.78rem;font-weight:750;color:#64748b;margin-right:3px}.insight-feedback button{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:9px;padding:6px 9px;cursor:pointer;font:inherit;font-size:.76rem}.insight-feedback button:hover{border-color:#6366f1;color:#4338ca;background:#eef2ff}.insight-feedback-ok{color:#15803d!important}.insights-quality{margin:14px 0;border:1px solid #c7d2fe;border-radius:16px;background:linear-gradient(135deg,#f8faff,#f5f3ff)}.insights-quality summary{cursor:pointer;padding:15px 18px;color:#312e81;font-weight:800}.insights-quality-body{padding:0 18px 17px}.insights-quality-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.insights-quality-grid>div{display:grid;gap:5px;padding:13px;border:1px solid #e0e7ff;border-radius:12px;background:#fff}.insights-quality-grid span{font-size:.75rem;color:#64748b}.insights-quality-grid strong{font-size:1.35rem;color:#1e1b4b}.insights-learning-status,.insights-learning-ok,.insights-challengers{margin-top:10px;padding:10px 12px;border-radius:10px;background:#fff;color:#475569;font-size:.82rem}.insights-learning-ok{color:#15803d}.insights-challengers{border-left:4px solid #f59e0b}.insights-challengers p{margin:5px 0}
    @media(max-width:760px){.insights-hero{align-items:flex-start;flex-direction:column}.insights-toolbar,.insights-stats,.insights-quality-grid{grid-template-columns:1fr}.insight-card{grid-template-columns:1fr}.insight-icon{display:none}}
    table.matrix input.order-inp {
      width: 3.5rem; padding: 0.2rem; font-size: 0.8rem; text-align: right; border: 1px solid #999; border-radius: 3px;
    }
    .matrix-product-cell { display:flex; align-items:center; gap:.45rem; min-width:0; }
    .matrix-product-cell > span { overflow:hidden; text-overflow:ellipsis; flex:1 1 auto; }
    .matrix-remove-product {
      flex:0 0 auto; border:1px solid #fecaca; border-radius:8px; padding:.2rem .42rem;
      background:#fff7f7; color:#b42318; font-size:.68rem; font-weight:700; cursor:pointer;
    }
    .matrix-remove-product:hover { background:#fee2e2; border-color:#fca5a5; }
    .warn {
      color: var(--warn); margin: 0.75rem 0; padding: 0.75rem 1rem;
      background: rgba(191, 72, 0, 0.06); border: none; border-radius: var(--radius-sm);
      font-size: 0.875rem;
    }
    .meta { color: var(--text-muted); font-size: 0.8125rem; margin-top: 0.75rem; line-height: 1.5; }
    .meta.ok { color: var(--ok); }
    .meta.err { color: #d70015; }
    .meta code {
      font-size: 0.9em; font-family: ui-monospace, "SF Mono", Menlo, monospace;
      background: rgba(0, 0, 0, 0.04); padding: 0.15em 0.4em; border-radius: 6px;
    }
    dialog#dlgAddShop, dialog#dlgAddWbShop, dialog#dlgProcSupplier, dialog#dlgProcCatalogPick, .task-edit-dialog, .finance-detail-dialog, .summary-name-dialog {
      max-width: 28rem; border: none; border-radius: 18px; padding: 0;
      box-shadow: var(--shadow-lg);
    }
    dialog#dlgAddShop::backdrop, dialog#dlgAddWbShop::backdrop, dialog#dlgProcSupplier::backdrop, dialog#dlgProcCatalogPick::backdrop,
    .task-edit-dialog::backdrop, .finance-detail-dialog::backdrop, .summary-name-dialog::backdrop {
      background: rgba(0, 0, 0, 0.28); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
    }
    dialog#dlgAddShop .dlg-row, dialog#dlgAddWbShop .dlg-row { margin: 0.45rem 0; }
    dialog#dlgAddShop label, dialog#dlgAddWbShop label { display: block; font-size: 0.78rem; color: #333; }
    dialog#dlgAddShop input, dialog#dlgAddWbShop input { width: 100%; box-sizing: border-box; margin-top: 0.15rem; padding: 0.35rem; }
    dialog#dlgAddShop .dlg-btns, dialog#dlgAddWbShop .dlg-btns { display: flex; gap: 0.5rem; justify-content: flex-end; margin-top: 0.85rem; flex-wrap: wrap; }
    dialog#dlgAddShop .dlg-err, dialog#dlgAddWbShop .dlg-err { color: #a00; font-size: 0.82rem; min-height: 1.2rem; margin-top: 0.35rem; }
    .hint-disclosure, .portal-doc-disclosure { margin: 0 0 0.45rem; max-width: 52rem; }
    .hint-disclosure > summary, .portal-doc-disclosure > summary {
      font-size: 0.8125rem; font-weight: 500; color: var(--text-muted); cursor: pointer;
      padding: 0.2rem 0; list-style: none; user-select: none; display: inline-flex; align-items: center; gap: 0.3rem;
    }
    .hint-disclosure > summary::-webkit-details-marker, .portal-doc-disclosure > summary::-webkit-details-marker { display: none; }
    .hint-disclosure > summary::before, .portal-doc-disclosure > summary::before {
      content: '▸'; font-size: 0.65rem; opacity: 0.6; transition: transform 0.15s var(--ease);
    }
    .hint-disclosure[open] > summary::before, .portal-doc-disclosure[open] > summary::before { transform: rotate(90deg); }
    .hint-disclosure .hint-body {
      font-size: 0.875rem; color: var(--text-muted); line-height: 1.55;
      margin: 0.35rem 0 0; padding: 0.75rem 1rem 0.75rem 1.1rem;
      background: var(--accent-soft); border: 1px solid rgba(0, 113, 227, 0.15);
      border-left: 4px solid var(--accent); border-radius: var(--radius-sm);
    }
    .hint-disclosure .hint-body strong { color: var(--text); font-weight: 600; }
    .portal-doc-disclosure .portal-doc-body {
      font-size: 0.75rem; color: var(--text-tertiary); margin: 0.25rem 0 0; line-height: 1.45;
    }
    p.hint, .hint {
      font-size: 0.875rem; color: var(--text-muted); max-width: 52rem; line-height: 1.55;
      margin: 0 0 1rem; padding: 0.85rem 1rem 0.85rem 1.1rem;
      background: var(--accent-soft); border: 1px solid rgba(0, 113, 227, 0.15);
      border-left: 4px solid var(--accent); border-radius: var(--radius-sm);
    }
    .hint strong { color: var(--text); font-weight: 600; }
    table.matrix .thsort { cursor: pointer; user-select: none; }
    .ads-campaign-block { margin-bottom: 1.25rem; border: 1px solid rgba(0, 113, 227, 0.15); border-radius: var(--radius-sm); overflow: hidden; }
    .ads-campaign-title { margin: 0; padding: 0.55rem 0.75rem; font-size: 0.9rem; background: var(--accent-soft); color: var(--accent); border-bottom: 1px solid rgba(0, 113, 227, 0.12); font-weight: 600; }
    table.ads-detail-tbl { width: 100%; border-collapse: collapse; font-size: 0.82rem; }
    table.ads-detail-tbl th, table.ads-detail-tbl td { border: 1px solid #e2e6ed; padding: 0.3rem 0.45rem; text-align: right; }
    table.ads-detail-tbl th:first-child, table.ads-detail-tbl td:first-child { text-align: left; }
    table.ads-detail-tbl tr.ads-no-data td { color: #888; font-style: italic; }
    table.ads-detail-tbl tr.ads-total td { background: #f6f8fb; font-weight: 600; }
    #adsModeWrap[hidden] { display: none; }
    table.matrix .thsort:hover { text-decoration: underline; }
    table.matrix .sort-ind { font-size: 0.65rem; color: #06c; margin-left: 0.15rem; }
    .portal-nav {
      display: flex; flex-wrap: wrap; gap: 0.75rem 1.1rem; align-items: center;
      margin: 0 0 1.25rem; padding: 0.65rem 0.85rem;
      background: var(--surface);
      border: 1px solid var(--border); border-radius: var(--radius);
      box-shadow: var(--shadow-sm);
      font-size: 1rem;
    }
    .portal-nav-end {
      margin-left: auto; display: flex; flex-wrap: nowrap; align-items: center;
      gap: 0.45rem; padding-left: 0.25rem;
    }
    .portal-shop-wrap {
      display: inline-flex; align-items: center; gap: 0.45rem;
      font-size: 0.9375rem; font-weight: 500; color: var(--text-muted);
      padding: 0.3rem 0.55rem 0.3rem 0.7rem;
      border-radius: var(--radius-pill); border: 1px solid var(--border);
      background: var(--surface-2);
    }
    .portal-shop-wrap--ozon { border-color: rgba(0, 91, 255, 0.22); background: var(--ozon-soft); }
    .portal-shop-wrap--wb { border-color: rgba(124, 58, 237, 0.22); background: var(--wb-soft); }
    .portal-legal-wrap {
      display: inline-flex; align-items: center; gap: 0.35rem;
      padding: 0.25rem 0.5rem; border-radius: 8px;
      border: 1px solid rgba(15, 118, 110, 0.28); background: rgba(15, 118, 110, 0.06);
      font-size: 0.9375rem;
    }
    .portal-legal-wrap select { min-width: 8.5rem; max-width: 12rem; font-size: 0.9375rem; }
    .portal-legal-wrap[hidden] { display: none !important; }
    .portal-shop-wrap[hidden] { display: none !important; }
    /* portal-shop-wrap select: see portal-ui-kit */

    .portal-nav-group {
      display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem 0.45rem;
      padding: 0.35rem 0.5rem; border-radius: var(--radius-sm);
    }
    .portal-nav-group[data-mp-group="ozon"] {
      background: var(--ozon-soft); border: 1px solid rgba(0, 91, 255, 0.18);
    }
    .portal-nav-group[data-mp-group="wildberries"] {
      background: var(--wb-soft); border: 1px solid rgba(124, 58, 237, 0.2);
    }
    .portal-nav-group--system { min-width: 0; padding: 0 0 0 0.35rem; border-left: 1px solid var(--hairline); }
    .portal-nav-group-label {
      font-size: 0.8125rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em;
      margin-right: 0.35rem; padding: 0; color: var(--text-tertiary); background: none;
    }
    .portal-nav-group[data-mp-group="ozon"] .portal-nav-group-label { color: var(--ozon); }
    .portal-nav-group[data-mp-group="wildberries"] .portal-nav-group-label { color: var(--wb); }
    .portal-nav-group[data-mp-group="ozon"] .portal-nav-group-label::before {
      content: ''; display: inline-block; width: 7px; height: 7px; border-radius: 50%;
      background: var(--ozon); margin-right: 0.35rem; vertical-align: middle;
      box-shadow: 0 0 0 2px rgba(0, 91, 255, 0.25);
    }
    .portal-nav-group[data-mp-group="wildberries"] .portal-nav-group-label::before {
      content: ''; display: inline-block; width: 7px; height: 7px; border-radius: 50%;
      background: var(--wb); margin-right: 0.35rem; vertical-align: middle;
      box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.25);
    }
    .portal-nav-group--system .portal-nav-group-label { display: none; }
    .portal-nav-group-tabs { display: flex; flex-wrap: nowrap; gap: 0.12rem; align-items: center; }
    .portal-nav-sep { width: 1px; align-self: stretch; min-height: 1.85rem; background: var(--hairline); margin: 0 0.25rem; }
    .portal-tab {
      font: inherit; font-size: 1rem; font-weight: 500; padding: 0.5rem 1rem;
      border: none; border-radius: var(--radius-pill);
      background: transparent; color: var(--text-muted); cursor: pointer;
      transition: background 0.2s var(--ease), color 0.2s var(--ease);
    }
    .portal-nav-group[data-mp-group="ozon"] .portal-tab:hover { background: var(--ozon-mid); color: var(--ozon); }
    .portal-nav-group[data-mp-group="wildberries"] .portal-tab:hover { background: var(--wb-mid); color: var(--wb); }
    .portal-nav-group--system .portal-tab:hover { background: var(--accent-soft); color: var(--accent); }
    .portal-nav-group[data-mp-group="ozon"] .portal-tab--active {
      background: var(--ozon); color: #fff; font-weight: 600;
      box-shadow: 0 2px 8px rgba(0, 91, 255, 0.35);
    }
    .portal-nav-group[data-mp-group="wildberries"] .portal-tab--active {
      background: var(--wb); color: #fff; font-weight: 600;
      box-shadow: 0 2px 8px rgba(124, 58, 237, 0.35);
    }
    .portal-nav-group--system .portal-tab--active {
      background: var(--accent); color: #fff; font-weight: 600;
      box-shadow: 0 2px 8px rgba(0, 113, 227, 0.3);
    }
    .portal-nav-dropdown { position: relative; }
    .portal-nav-dropdown-trigger { display:inline-flex!important;align-items:center;gap:.48rem;padding:.5rem .75rem!important;border:0!important;border-radius:var(--radius-pill)!important;background:transparent!important;color:var(--text-muted)!important;font:inherit;font-size:.94rem;font-weight:550;box-shadow:none!important;white-space:nowrap }
    .portal-nav-dropdown-trigger::after { content:'';width:.38rem;height:.38rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s var(--ease) }
    .portal-nav-dropdown:hover .portal-nav-dropdown-trigger,.portal-nav-dropdown.is-open .portal-nav-dropdown-trigger,.portal-nav-dropdown.has-active .portal-nav-dropdown-trigger { background:var(--accent-soft)!important;color:var(--accent)!important }
    .portal-nav-dropdown.is-open .portal-nav-dropdown-trigger::after { transform:rotate(225deg) translate(-2px,-2px) }
    .portal-nav-dropdown.has-active .portal-nav-dropdown-trigger { font-weight:700;box-shadow:inset 0 0 0 1px rgba(0,113,227,.16)!important }
    .portal-nav-dropdown-menu { display:none;position:absolute;z-index:210;top:calc(100% + .48rem);left:0;min-width:14.5rem;padding:.45rem;border:1px solid var(--border-strong);border-radius:14px;background:rgba(255,255,255,.98);box-shadow:var(--shadow-md);backdrop-filter:blur(16px);animation:st-dropdown-in .16s var(--ease) }
    .portal-nav-dropdown.is-open .portal-nav-dropdown-menu { display:grid;gap:.12rem }
    .portal-nav-dropdown--right .portal-nav-dropdown-menu { right:0;left:auto }
    .portal-nav-dropdown-item { display:grid!important;gap:.12rem;width:100%;padding:.62rem .7rem!important;border:0!important;border-radius:10px!important;background:transparent!important;color:var(--text)!important;text-align:left;box-shadow:none!important;font:inherit;font-size:.9rem;font-weight:650 }
    .portal-nav-dropdown-item small { color:var(--text-tertiary);font-size:.7rem;font-weight:500 }
    .portal-nav-dropdown-item:hover { background:var(--accent-soft)!important;color:var(--accent)!important }
    .portal-nav-dropdown-item.portal-tab--active { background:var(--accent)!important;color:#fff!important }
    .portal-nav-dropdown-item.portal-tab--active small { color:rgba(255,255,255,.78) }
    .portal-nav-mega-wrap { position: relative; }
    .portal-mega-trigger {
      display: inline-flex; align-items: center; gap: 0.55rem;
      font: inherit; font-size: 1rem; font-weight: 600;
      padding: 0.52rem 1.1rem; border-radius: var(--radius-pill);
      border: 1px solid var(--border-strong); background: var(--surface);
      color: var(--text); cursor: pointer;
      box-shadow: var(--shadow-sm);
      transition: background 0.2s var(--ease), border-color 0.2s var(--ease), box-shadow 0.2s var(--ease);
    }
    .portal-mega-trigger::after { content: ''; width: 0.42rem; height: 0.42rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .18s var(--ease); }
    .portal-nav-mega-wrap.is-open .portal-mega-trigger::after { transform: rotate(225deg) translate(-2px,-2px); }
    .portal-mega-trigger:hover, .portal-nav-mega-wrap.is-open .portal-mega-trigger {
      background: var(--accent-soft); border-color: rgba(0, 113, 227, 0.28);
      color: var(--accent);
    }
    .portal-mega-trigger--active {
      background: var(--accent); color: #fff; border-color: transparent;
      box-shadow: 0 2px 10px rgba(0, 113, 227, 0.28);
    }
    .portal-mega-menu {
      display: none; position: absolute; top: calc(100% + 0.55rem); left: 0; z-index: 200;
      min-width: 22rem; padding: 0.72rem;
      background: rgba(255, 255, 255, 0.98);
      border: 1px solid var(--border-strong);
      border-radius: var(--radius);
      box-shadow: var(--shadow-md);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      animation: st-dropdown-in 0.18s var(--ease);
    }
    @keyframes st-dropdown-in {
      from { opacity: 0; transform: translateY(-6px); }
      to { opacity: 1; transform: translateY(0); }
    }
    .portal-nav-mega-wrap.is-open .portal-mega-menu { display: grid; }
    .portal-mega-grid {
      display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem;
    }
    .portal-mega-col-title {
      font-size: 0.8125rem; font-weight: 700; text-transform: uppercase;
      letter-spacing: 0.06em; margin: 0.2rem 0.4rem 0.32rem; padding: 0 0 0.42rem;
      border-bottom: 2px solid var(--hairline);
    }
    .portal-mega-col[data-mp-col="ozon"] .portal-mega-col-title { color: var(--ozon); border-bottom-color: var(--ozon); }
    .portal-mega-col[data-mp-col="wildberries"] .portal-mega-col-title { color: var(--wb); border-bottom-color: var(--wb); }
    .portal-mega-col { display: flex; flex-direction: column; gap: 0.08rem; padding: 0.35rem; border-radius: 12px; background: #fafbff; }
    .portal-mega-item {
      font: inherit; font-size: 0.9375rem; font-weight: 500; text-align: left;
      padding: 0.48rem 0.62rem; border: none; border-radius: 9px;
      background: transparent; color: var(--text); cursor: pointer;
      transition: background 0.15s var(--ease), color 0.15s var(--ease);
      width: 100%;
    }
    .portal-mega-col[data-mp-col="ozon"] .portal-mega-item:hover { background: var(--ozon-mid); color: var(--ozon); }
    .portal-mega-col[data-mp-col="wildberries"] .portal-mega-item:hover { background: var(--wb-mid); color: var(--wb); }
    .portal-mega-item.portal-tab--active {
      font-weight: 600;
    }
    .portal-mega-col[data-mp-col="ozon"] .portal-mega-item.portal-tab--active {
      background: var(--ozon); color: #fff;
    }
    .portal-mega-col[data-mp-col="wildberries"] .portal-mega-item.portal-tab--active {
      background: var(--wb); color: #fff;
    }
    .view-panel {
      margin-bottom: 1rem; padding: 1.25rem 1.35rem 1.5rem;
      background: var(--surface); border: 1px solid var(--border);
      border-radius: var(--radius); box-shadow: var(--shadow-sm);
      border-top: 3px solid var(--border-strong);
    }
    #viewMatrix, #viewPrices, #viewFunnel, #viewAnalytics, #viewAds {
      border-top-color: var(--ozon);
    }
    #viewWildberries, #viewWbPrices { border-top-color: var(--wb); }
    #viewFinance { border-top-color: #0d9488; }
    #viewTasks { border-top-color: var(--tasks-accent); }
    #viewSummary { border-top-color: var(--accent); max-width: 100%; }
    .summary-hero {
      display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1rem;
      margin-bottom: 1.25rem; padding-bottom: 0.75rem; border-bottom: 1px solid var(--hairline);
    }
    .summary-hero h2 { margin: 0; font-size: 1.35rem; }
    .summary-meta { font-size: 0.85rem; color: var(--muted); }
    .summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1rem; margin-bottom: 1rem; }
    .summary-card {
      border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface);
      box-shadow: var(--shadow-sm); overflow: hidden;
    }
    .summary-card-head {
      display: flex; align-items: center; justify-content: space-between; gap: 0.5rem;
      padding: 0.65rem 0.85rem; font-weight: 600; font-size: 0.95rem;
      border-bottom: 1px solid var(--hairline); background: var(--bg);
    }
    .summary-card-head--bad { border-left: 4px solid #dc2626; }
    .summary-card-head--warn { border-left: 4px solid #d97706; }
    .summary-card-head--info { border-left: 4px solid var(--accent); }
    .summary-badge {
      font-size: 0.75rem; font-weight: 700; padding: 0.15rem 0.45rem; border-radius: 999px;
      background: var(--accent-soft); color: var(--accent);
    }
    .summary-badge--bad { background: #fee2e2; color: #b91c1c; }
    .summary-badge--warn { background: #ffedd5; color: #c2410c; }
    .summary-card-body { max-height: 22rem; overflow: auto; }
    .summary-tbl { width: 100%; border-collapse: collapse; font-size: 0.82rem; }
    .summary-tbl th, .summary-tbl td { padding: 0.4rem 0.55rem; border-bottom: 1px solid var(--hairline); text-align: left; vertical-align: top; }
    .summary-tbl th { position: sticky; top: 0; background: var(--surface); z-index: 1; font-weight: 600; color: var(--muted); }
    .summary-tbl tr.summary-row--bad td { background: #fef2f2; }
    .summary-tbl tr.summary-row--warn td { background: #fffbeb; }
    .summary-tbl tr[data-summary-link] { cursor: pointer; }
    .summary-tbl tr[data-summary-link]:hover td { background: var(--accent-soft); }
    .summary-empty { padding: 1rem 0.85rem; color: var(--muted); font-size: 0.9rem; }
    .summary-foot { padding: 0.5rem 0.85rem; font-size: 0.8rem; color: var(--muted); border-top: 1px solid var(--hairline); }
    .summary-foot a { color: var(--accent); }
    .summary-toolbar { display: flex; flex-wrap: wrap; gap: 0.75rem 1.25rem; align-items: center; margin-bottom: 0.75rem; }
    .summary-matrix-wrap {
      overflow: auto; max-height: calc(100vh - 11rem);
      border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface);
    }
    table.summary-matrix {
      border-collapse: separate; border-spacing: 0;
      width: max-content; min-width: 100%; font-size: 0.875rem;
      font-variant-numeric: tabular-nums;
    }
    table.summary-matrix th, table.summary-matrix td {
      border: 1px solid var(--hairline); padding: 0.38rem 0.45rem; text-align: right; white-space: nowrap;
      box-sizing: border-box;
    }
    table.summary-matrix th { font-weight: 600; color: var(--muted); position: sticky; top: 0; z-index: 3; background: var(--surface-2); }
    table.summary-matrix thead tr.summary-subhead th {
      top: var(--sm-head-row1, 2.6rem); z-index: 3; font-size: 0.78rem; font-weight: 500;
    }
    .summary-week-totals-bar {
      display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 0.65rem;
    }
    .summary-wk-total-card {
      flex: 1 1 10.5rem; min-width: 10rem; max-width: 16rem;
      border: 1px solid var(--hairline); border-radius: var(--radius);
      padding: 0.5rem 0.6rem; font-size: 0.84rem; line-height: 1.4;
    }
    .summary-wk-total-card .summary-wk-total-title { font-weight: 700; font-size: 0.92rem; margin-bottom: 0.1rem; }
    .summary-wk-total-card .summary-wk-total-dates { font-size: 0.74rem; color: var(--muted); margin-bottom: 0.35rem; }
    .summary-wk-total-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 0.2rem 0.5rem; }
    .summary-wk-total-metrics span { white-space: nowrap; }
    .summary-wk-total-metrics b { font-weight: 600; color: var(--muted); margin-right: 0.2rem; }
    .summary-wk-total-card.summary-wk-cur { background: #dbeafe; border-color: #93c5fd; }
    .summary-wk-total-card.summary-wk-1 { background: #dcfce7; border-color: #86efac; }
    .summary-wk-total-card.summary-wk-2 { background: #fef9c3; border-color: #fde047; }
    .summary-wk-total-card.summary-wk-3 { background: #ffedd5; border-color: #fdba74; }
    .summary-wk-total-card.summary-wk-4 { background: #ede9fe; border-color: #c4b5fd; }
    table.summary-matrix th.grp { text-align: center; font-size: 0.82rem; line-height: 1.25; padding: 0.4rem 0.35rem; }
    table.summary-matrix th.grp .summary-period-dates { display: block; font-weight: 400; font-size: 0.72rem; color: var(--muted); margin-top: 0.15rem; }
    table.summary-matrix th.summary-metric,
    table.summary-matrix td.summary-metric {
      width: 1%; min-width: 2.85rem; max-width: 4.75rem;
      padding-left: 0.35rem; padding-right: 0.35rem;
    }
    table.summary-matrix th.summary-trend-col,
    table.summary-matrix td.summary-trend-col {
      width: 1%; min-width: 3.75rem; max-width: 5rem;
    }
    table.summary-matrix th.sortable { cursor: pointer; user-select: none; }
    table.summary-matrix th.sortable:hover { filter: brightness(0.97); }
    table.summary-matrix th.sort-asc::after { content: ' ▲'; font-size: 0.6rem; opacity: 0.75; }
    table.summary-matrix th.sort-desc::after { content: ' ▼'; font-size: 0.6rem; opacity: 0.75; }
    table.summary-matrix td.sticky-col, table.summary-matrix th.sticky-col {
      position: sticky; left: var(--sm-left-1, 0px); z-index: 2; text-align: left; background: var(--surface);
      box-shadow: 1px 0 0 var(--hairline); min-width: 2.4rem;
    }
    table.summary-matrix td.sticky-col-2, table.summary-matrix th.sticky-col-2 {
      position: sticky; left: var(--sm-left-2, 0px); z-index: 2; text-align: left; background: var(--surface);
      box-shadow: 1px 0 0 var(--hairline); min-width: 4.5rem;
      overflow: hidden; text-overflow: ellipsis;
    }
    table.summary-matrix td.sticky-col-3, table.summary-matrix th.sticky-col-3 {
      position: sticky; left: var(--sm-left-3, 0px); z-index: 2; text-align: left;
      background: var(--surface); box-shadow: 1px 0 0 var(--hairline); min-width: 5.5rem;
      overflow: hidden; text-overflow: ellipsis;
    }
    table.summary-matrix td.sticky-col-4, table.summary-matrix th.sticky-col-4 {
      position: sticky; left: var(--sm-left-4, 0px); z-index: 2;
      text-align: left; background: var(--surface); box-shadow: 1px 0 0 var(--hairline);
      min-width: 8rem; max-width: 12rem;
      overflow: hidden; text-overflow: ellipsis;
    }
    table.summary-matrix td.summary-name-cell {
      cursor: pointer;
    }
    table.summary-matrix td.summary-name-cell:hover {
      text-decoration: underline dotted;
      text-underline-offset: 2px;
    }
    .summary-name-dialog {
      max-width: min(32rem, calc(100vw - 2rem));
      width: calc(100vw - 2rem);
      padding: 1rem 1.15rem 1.1rem;
    }
    .summary-name-dialog-title {
      margin: 0; font-size: 1rem; font-weight: 600;
    }
    .summary-name-dialog-text {
      margin: 0.75rem 0 0; font-size: 0.95rem; line-height: 1.5;
      word-break: break-word; white-space: pre-wrap;
    }
    .summary-name-dialog-offer { margin: 0.5rem 0 0; }
    .summary-name-dialog-actions { margin-top: 1rem; text-align: right; }
    table.summary-matrix td.sticky-col-5, table.summary-matrix th.sticky-col-5 {
      position: sticky; left: var(--sm-left-5, 0px); z-index: 2;
      text-align: right; background: #f8fafc; box-shadow: 1px 0 0 var(--hairline); min-width: 2.75rem;
    }
    table.summary-matrix td.sticky-col-6, table.summary-matrix th.sticky-col-6 {
      position: sticky; left: var(--sm-left-6, 0px); z-index: 2;
      text-align: right; background: #f8fafc; box-shadow: 1px 0 0 var(--hairline); min-width: 2.75rem;
    }
    table.summary-matrix td.sticky-col-7, table.summary-matrix th.sticky-col-7 {
      position: sticky; left: var(--sm-left-7, 0px); z-index: 2;
      text-align: right; background: #f8fafc; box-shadow: 1px 0 0 var(--hairline); min-width: 2.75rem;
    }
    table.summary-matrix td.sticky-col-8, table.summary-matrix th.sticky-col-8 {
      position: sticky; left: var(--sm-left-8, 0px); z-index: 2;
      text-align: right; background: #f8fafc; box-shadow: 2px 0 4px rgba(0,0,0,0.06); min-width: 2.75rem;
    }
    table.summary-matrix thead th.sticky-col,
    table.summary-matrix thead th.sticky-col-2,
    table.summary-matrix thead th.sticky-col-3,
    table.summary-matrix thead th.user-category-col,
    table.summary-matrix thead th.offer-comment-col,
    table.summary-matrix thead th.sticky-col-4,
    table.summary-matrix thead th.sticky-col-5,
    table.summary-matrix thead th.sticky-col-6,
    table.summary-matrix thead th.sticky-col-7 { z-index: 7; background: var(--surface-2); }
    table.summary-matrix tr.sev-bad td.sticky-col,
    table.summary-matrix tr.sev-bad td.sticky-col-2,
    table.summary-matrix tr.sev-bad td.sticky-col-3,
    table.summary-matrix tr.sev-bad td.sticky-col-4,
    table.summary-matrix tr.sev-bad td.sticky-col-5,
    table.summary-matrix tr.sev-bad td.sticky-col-6,
    table.summary-matrix tr.sev-bad td.sticky-col-7 { background: #fef2f2; }
    table.summary-matrix tr.sev-warn td.sticky-col,
    table.summary-matrix tr.sev-warn td.sticky-col-2,
    table.summary-matrix tr.sev-warn td.sticky-col-3,
    table.summary-matrix tr.sev-warn td.sticky-col-4,
    table.summary-matrix tr.sev-warn td.sticky-col-5,
    table.summary-matrix tr.sev-warn td.sticky-col-6,
    table.summary-matrix tr.sev-warn td.sticky-col-7 { background: #fffbeb; }
    table.summary-matrix tr.sev-ok td.sticky-col,
    table.summary-matrix tr.sev-ok td.sticky-col-2,
    table.summary-matrix tr.sev-ok td.sticky-col-3 { background: #f0fdf4; }
    /* offer-comments v1 */
    .offer-comment-col { min-width: 2.6rem; max-width: 3.2rem; text-align: center !important; padding: 0.2rem 0.35rem !important; }
    td.offer-comment-cell { cursor: pointer; user-select: none; font-size: 0.95rem; line-height: 1; color: #94a3b8; }
    td.offer-comment-cell:hover { background: #eef4ff !important; color: var(--accent); }
    td.offer-comment-cell--has { color: #2563eb; font-weight: 700; }
    table.summary-matrix th.offer-comment-col,
    table.summary-matrix td.offer-comment-cell { position: sticky; z-index: 2; background: #fff; }
    table.summary-matrix thead th.offer-comment-col { z-index: 6; background: var(--surface-2); }
    dialog.offer-comment-dialog { max-width: 32rem; width: calc(100vw - 2rem); border: none; border-radius: var(--radius); padding: 1.1rem 1.25rem; box-shadow: var(--shadow-lg); }
    dialog.offer-comment-dialog textarea { width: 100%; box-sizing: border-box; min-height: 8rem; font: inherit; padding: 0.5rem; border: 1px solid var(--border); border-radius: var(--radius-sm); resize: vertical; }
    dialog.offer-comment-dialog .dlg-btns { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 0.75rem; }
    dialog.matrix-auto-dialog { width:min(760px,calc(100vw - 2rem)); max-height:calc(100vh - 2rem); box-sizing:border-box; border:0; border-radius:22px; padding:0; color:var(--text); box-shadow:0 28px 80px rgba(27,38,94,.28); }
    dialog.matrix-auto-dialog::backdrop { background:rgba(19,27,55,.42); backdrop-filter:blur(5px); }
    .matrix-auto-head { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; padding:1.5rem 1.6rem .65rem; }
    .matrix-auto-head h3 { margin:.15rem 0 0; font-size:1.45rem; }
    .matrix-auto-kicker { color:var(--primary); font-size:.75rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
    .matrix-auto-close { border:0; background:#f2f5fb; border-radius:50%; width:36px; height:36px; font-size:1.5rem; cursor:pointer; }
    .matrix-auto-lead { margin:0; padding:0 1.6rem 1rem; color:var(--muted); }
    .matrix-auto-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; padding:1rem 1.6rem; background:#f7f9fd; border-block:1px solid var(--border); }
    .matrix-auto-grid label { display:flex; flex-direction:column; gap:.38rem; font-size:.82rem; font-weight:700; color:#4a5670; }
    .matrix-auto-grid input,.matrix-auto-grid select { box-sizing:border-box; width:100%; min-height:42px; padding:.6rem .75rem; border:1px solid #cfd8eb; border-radius:11px; background:#fff; color:var(--text); font:inherit; }
    .matrix-auto-grid small { font-weight:400; color:var(--muted); }
    .matrix-auto-checks { display:grid; gap:.65rem; padding:1rem 1.6rem .4rem; }
    .matrix-auto-checks label { display:flex; align-items:center; gap:.55rem; }
    .matrix-auto-formula { margin:.75rem 1.6rem; padding:.8rem 1rem; border-radius:12px; background:#eef5ff; color:#365073; font-size:.82rem; }
    .matrix-auto-preview { margin:.75rem 1.6rem; padding:.85rem 1rem; border-radius:12px; background:#ecfdf3; color:#176b3a; font-weight:700; }
    .matrix-auto-actions { display:flex; justify-content:flex-end; gap:.6rem; flex-wrap:wrap; padding:1rem 1.6rem 1.5rem; }
    @media(max-width:640px){.matrix-auto-grid{grid-template-columns:1fr}.matrix-auto-actions .st-btn{flex:1 1 100%}}
    .user-category-col { min-width: 3.2rem; max-width: 4.5rem; text-align: center !important; padding: 0.15rem 0.3rem !important; vertical-align: middle; }
    .user-category-inp { width: 100%; max-width: 4.2rem; font-size: 0.78rem; padding: 0.12rem 0.2rem; box-sizing: border-box; text-align: center; border: 1px solid var(--border); border-radius: 4px; }
    table.matrix th.user-category-col, table.matrix td.user-category-col,
    table.analytics-matrix th.user-category-col, table.analytics-matrix td.user-category-col,
    table.summary-matrix th.user-category-col, table.summary-matrix td.user-category-col,
    table.cost-matrix th.user-category-col, table.cost-matrix td.user-category-col,
    table.abc-matrix th.user-category-col, table.abc-matrix td.user-category-col,
    table.funnel-matrix th.user-category-col, table.funnel-matrix td.user-category-col {
      position: sticky; z-index: 2; background: #fff;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.matrix thead th.user-category-col { z-index: 6; background: #f7f9fc; }
    table.analytics-matrix thead th.user-category-col { z-index: 6; background: var(--surface-2); }
    table.summary-matrix thead th.user-category-col { z-index: 7; background: var(--surface-2); }
    table.cost-matrix thead th.user-category-col,
    table.abc-matrix thead th.user-category-col,
    table.funnel-matrix thead th.user-category-col { z-index: 5; background: #f7f9fc; }
    table.analytics-matrix tbody tr:hover td.user-category-col,
    table.matrix tbody tr:hover td.user-category-col,
    table.summary-matrix tbody tr:hover td.user-category-col,
    table.cost-matrix tbody tr:hover td.user-category-col,
    table.abc-matrix tbody tr:hover td.user-category-col,
    table.funnel-matrix tbody tr:hover td.user-category-col { background: #eef4ff; }
    table.summary-matrix .summary-wk-cur { background: #dbeafe; }
    table.summary-matrix .summary-wk-1 { background: #dcfce7; }
    table.summary-matrix .summary-wk-2 { background: #fef9c3; }
    table.summary-matrix .summary-wk-3 { background: #ffedd5; }
    table.summary-matrix .summary-wk-4 { background: #ede9fe; }
    table.summary-matrix thead .summary-wk-cur { background: #bfdbfe; color: #1e3a5f; }
    table.summary-matrix thead .summary-wk-1 { background: #bbf7d0; color: #14532d; }
    table.summary-matrix thead .summary-wk-2 { background: #fde68a; color: #78350f; }
    table.summary-matrix thead .summary-wk-3 { background: #fed7aa; color: #7c2d12; }
    table.summary-matrix thead .summary-wk-4 { background: #ddd6fe; color: #4c1d95; }
    table.summary-matrix tr:hover td:not([class*="sticky-col"]) { background: rgba(37, 99, 235, 0.04); }
    table.summary-matrix tr:hover td[class*="sticky-col"] { filter: none; }
    .summary-trend-up { color: #15803d; font-weight: 600; }
    .summary-trend-down { color: #b91c1c; font-weight: 600; }
    .summary-cols-picker { font-size: 0.85rem; }
    .summary-cols-picker summary { cursor: pointer; color: var(--accent); font-weight: 500; }
    .summary-cols-checks { display: flex; flex-wrap: wrap; gap: 0.35rem 0.85rem; margin-top: 0.4rem; max-width: 28rem; }
    .summary-cols-checks label { display: inline-flex; align-items: center; gap: 0.25rem; white-space: nowrap; }
    .summary-alerts-compact { margin-top: 1rem; }
    #viewWarehouse { border-top-color: #b45309; max-width: 100%; }
    #viewDesign { border-top-color: #7c3aed; max-width: 100%; }
    .design-layout { display: grid; grid-template-columns: 280px 1fr; gap: 1rem; margin-top: 0.75rem; min-height: 24rem; }
    @media (max-width: 900px) { .design-layout { grid-template-columns: 1fr; } }
    .design-list-panel { border: 1px solid var(--border); border-radius: 10px; background: var(--surface); overflow: hidden; }
    .design-tests-list { max-height: 32rem; overflow-y: auto; }
    .design-test-item { padding: 0.65rem 0.85rem; border-bottom: 1px solid var(--hairline); cursor: pointer; }
    .design-test-item:hover, .design-test-item--active { background: rgba(124, 58, 237, 0.08); }
    .design-test-item strong { display: block; font-size: 0.88rem; }
    .design-detail-panel { border: 1px solid var(--border); border-radius: 10px; padding: 1rem 1.15rem; background: var(--surface); }
    .design-variant-card { display: grid; grid-template-columns: 100px 1fr; gap: 0.75rem; padding: 0.75rem; margin-bottom: 0.65rem; border: 1px solid var(--hairline); border-radius: 8px; }
    .design-variant-card img { width: 100px; height: 100px; object-fit: cover; border-radius: 6px; background: #f1f5f9; }
    .design-variant-card--winner { border-color: #7c3aed; box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.2); }
    .design-compare table { width: 100%; font-size: 0.85rem; border-collapse: collapse; margin: 0.75rem 0; }
    .design-compare th, .design-compare td { border-bottom: 1px solid var(--hairline); padding: 0.4rem 0.5rem; text-align: left; }
    .design-compare tr.design-best td { background: rgba(124, 58, 237, 0.1); font-weight: 600; }
    .design-actions { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.75rem; }

    #viewOrders { border-top-color: #0d9488; }
    .orders-subnav { display: flex; gap: 0.4rem; margin: 0.75rem 0; flex-wrap: wrap; }
    .orders-subtab { padding: 0.45rem 0.9rem; border: 1px solid var(--border, #cbd5e1); background: #fff; border-radius: 6px; cursor: pointer; font-size: 1rem; font-weight: 500; }
    .orders-subtab.is-active { background: #0d9488; color: #fff; border-color: #0d9488; }
    .orders-subtab[data-orders-tab="supplier"].is-active { background: #2563eb; border-color: #2563eb; }
    .proc-subtab { padding: 0.4rem 0.85rem; border: 1px solid var(--border, #cbd5e1); background: #fff; border-radius: 6px; cursor: pointer; font-size: 0.95rem; }
    .proc-subtab.is-active { background: #2563eb; color: #fff; border-color: #2563eb; }
    .proc-suppliers-layout { display: grid; grid-template-columns: minmax(240px, 320px) 1fr; gap: 0.75rem; align-items: stretch; min-height: 0; max-height: calc(100vh - 11rem); }
    @media (max-width: 900px) { .proc-suppliers-layout { grid-template-columns: 1fr; max-height: none; } }
    .proc-suppliers-list-card { display: flex; flex-direction: column; min-height: 0; max-height: calc(100vh - 11rem); }
    .proc-suppliers-list { flex: 1 1 auto; min-height: 0; overflow: auto; max-height: none; -webkit-overflow-scrolling: touch; }
    .proc-supplier-detail-card {
      display: flex; flex-direction: column; min-width: 0; min-height: 0;
      max-height: calc(100vh - 11rem); overflow: hidden;
    }
    .proc-supplier-detail-card > .proc-detail-actions { flex-shrink: 0; }
    .proc-sup-demand-zone {
      flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column;
      overflow: hidden; margin-top: 0.75rem; padding-top: 0.5rem;
      border-top: 1px solid var(--hairline);
    }
    .proc-sup-demand-zone .health-h4 { flex-shrink: 0; margin: 0 0 0.35rem; }
    .proc-sup-demand-zone > .health-toolbar { flex-shrink: 0; }
    .proc-sup-pipeline-scroll {
      flex-shrink: 0; overflow-x: auto; overflow-y: hidden; max-width: 100%;
      -webkit-overflow-scrolling: touch; padding-bottom: 0.15rem;
    }
    .proc-sup-workboard-scroll {
      flex: 1 1 auto; min-height: 6rem; overflow: auto;
      -webkit-overflow-scrolling: touch; margin-top: 0.35rem;
      border: 1px solid var(--border); border-radius: var(--radius-sm);
      background: var(--surface);
    }
    .proc-sup-workboard-scroll table.admin-tbl {
      min-width: 72rem; margin: 0; overflow: visible; border-radius: 0; border: none;
    }
    .proc-sup-workboard-scroll table.admin-tbl thead th {
      position: sticky; top: 0; z-index: 2;
      background: var(--surface-2);
      box-shadow: 0 1px 0 var(--hairline);
    }
    .proc-sup-workboard-scroll .proc-sp-actions {
      white-space: nowrap; width: 1%;
    }
    .proc-sup-workboard-scroll .proc-sp-actions button {
      position: relative; z-index: 1; pointer-events: auto;
      min-width: 2.1rem; min-height: 1.75rem;
    }
    .proc-sup-workboard-scroll .proc-sp-status.ok { color: var(--ok); }
    .proc-sup-workboard-scroll .proc-sp-status.err { color: #d70015; }
    #viewProcurement { max-width: 100%; overflow-x: hidden; }
    #procPanelOrders {
      max-height: calc(100vh - 11rem); overflow-y: auto; overflow-x: hidden;
      -webkit-overflow-scrolling: touch; padding-right: 0.15rem;
    }
    .proc-orders-wrap {
      overflow: auto; max-width: 100%; -webkit-overflow-scrolling: touch;
      border: 1px solid var(--hairline); border-radius: var(--radius-sm);
      background: var(--surface);
    }
    .proc-orders-wrap .proc-orders-tbl { min-width: 54rem; margin: 0; }
    #procPoLines { overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; }
    #procPoLines table.admin-tbl { min-width: 36rem; margin: 0; }
    .proc-supplier-row { cursor: pointer; }
    .proc-supplier-row.is-selected { background: #eff6ff; }
    .proc-supplier-row:hover { background: #f8fafc; }
    .proc-supplier-detail-card .proc-detail-actions {
      margin-bottom: 0.35rem;
    }
    dialog#dlgProcCatalogPick {
      max-width: min(36rem, 96vw); width: 100%;
      max-height: min(92vh, 42rem); padding: 0; overflow: hidden;
    }
    dialog#dlgProcCatalogPick .proc-pick-shell {
      display: flex; flex-direction: column;
      max-height: min(92vh, 42rem);
      padding: 1rem 1.1rem 0.85rem; box-sizing: border-box;
    }
    dialog#dlgProcCatalogPick .proc-pick-head { flex-shrink: 0; }
    dialog#dlgProcCatalogPick .proc-pick-scroll {
      flex: 1; min-height: 8rem; max-height: none;
      overflow: auto; margin: 0.5rem 0;
      border: 1px solid var(--border); border-radius: var(--radius-sm);
      background: var(--surface);
    }
    dialog#dlgProcCatalogPick .proc-pick-foot {
      flex-shrink: 0; padding-top: 0.55rem;
      border-top: 1px solid var(--border); background: var(--surface);
    }
    dialog#dlgProcCatalogPick .proc-pick-scroll table.admin-tbl thead th {
      position: sticky; top: 0; z-index: 2; background: var(--surface-2);
    }
    dialog#dlgProcCatalogPick .proc-pick-scroll table.admin-tbl td:first-child,
    dialog#dlgProcCatalogPick .proc-pick-scroll table.admin-tbl th:first-child {
      position: sticky; left: 0; z-index: 1; background: inherit;
    }
    .proc-pipeline { display: flex; gap: 0.35rem; flex-wrap: wrap; margin: 0.5rem 0; }
    .proc-orders-tbl .proc-order-head td { border-top: 2px solid var(--border, #e5e7eb); }
    .proc-orders-tbl .proc-order-total td { background: rgba(0,0,0,.03); font-weight: 600; }
    .proc-po-sum-foot td { font-weight: 600; border-top: 2px solid var(--border, #e5e7eb); }
    #procPanelOrders table.admin-tbl {
      font-size: 0.9375rem;
    }
    #procPanelOrders table.admin-tbl th,
    #procPanelOrders table.admin-tbl td {
      padding: 0.78rem 1rem;
    }
    #procPanelOrders table.admin-tbl th {
      font-size: 0.8125rem;
    }
    #procPanelOrders table.admin-tbl code {
      font-size: 0.95em;
    }
    #procPanelOrders .proc-orders-tbl td:nth-child(5),
    #procPanelOrders .proc-orders-tbl td:nth-child(6),
    #procPanelOrders .proc-orders-tbl td:nth-child(7),
    #procPanelOrders .proc-po-sum-val strong {
      font-size: 1rem;
      font-weight: 600;
    }
    #procPanelOrders #procPoMeta {
      font-size: 0.9375rem;
      line-height: 1.45;
    }
    #procPanelOrders #procPoDetail .health-h3 {
      font-size: 1.2rem;
    }
    #procPanelOrders .proc-po-detail-head {
      display: flex; align-items: flex-start; justify-content: space-between;
      gap: 0.75rem; flex-wrap: wrap; margin-bottom: 0.35rem;
    }
    #procPanelOrders .proc-po-detail-head .health-h3 { margin: 0; flex: 1 1 auto; }
    #procPanelOrders #procPoLines input {
      font-size: 0.9375rem;
      padding: 0.4rem 0.55rem;
    }
    #procPanelOrders .health-toolbar label,
    #procPanelOrders .health-toolbar input,
    #procPanelOrders .health-toolbar select,
    #procPanelOrders .health-toolbar button {
      font-size: 0.9375rem;
    }
    #procPanelInbound table.admin-tbl { font-size: 0.9375rem; }
    #procPanelInbound .proc-inbound-lines-wrap { max-height: 18rem; margin: 0.5rem 0; overflow: auto; }
    #procPanelInbound .proc-inbound-history { margin-top: 1rem; padding-top: 0.75rem; border-top: 1px solid var(--hairline); }
    .proc-pipe-col { flex: 1; min-width: 120px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 6px; padding: 0.35rem; }
    .proc-pipe-col h4 { margin: 0 0 0.35rem; font-size: 0.72rem; font-weight: 600; color: #475569; text-transform: uppercase; }
    .proc-pipe-card { font-size: 0.8rem; padding: 0.25rem 0.35rem; margin: 0.2rem 0; background: #fff; border-radius: 4px; cursor: pointer; border: 1px solid #e2e8f0; }
    .proc-pipe-card:hover { border-color: #2563eb; }
    .proc-timeline { margin: 0.5rem 0; padding-left: 0.75rem; border-left: 2px solid #cbd5e1; }
    .proc-timeline-item { margin: 0.35rem 0; font-size: 0.85rem; }
    .proc-status-btn { font-size: 0.78rem; padding: 0.2rem 0.45rem; margin: 0.1rem; }
    .orders-mp { display: inline-block; font-size: 0.72rem; font-weight: 700; padding: 0.1rem 0.4rem; border-radius: 4px; }
    .orders-mp--ozon { background: #005bff; color: #fff; }
    .orders-mp--wb { background: #cb11ab; color: #fff; }
    .orders-sup-layout { display: grid; grid-template-columns: minmax(220px, 280px) 1fr; gap: 1rem; margin-top: 0.75rem; }
    @media (max-width: 900px) { .orders-sup-layout { grid-template-columns: 1fr; } }
    .orders-sup-list .orders-sup-row { cursor: pointer; }
    .orders-sup-list .orders-sup-row.is-active td { background: rgba(37, 99, 235, 0.12); }
    .orders-sup-link { color: #2563eb; text-decoration: none; font-weight: 600; }
    .orders-sup-link:hover { text-decoration: underline; }
    #ordersSupplierEditHint { background: #ecfdf5; border: 1px solid #a7f3d0; padding: 0.45rem 0.65rem; border-radius: 6px; }
    .orders-line-qty { width: 4.5rem; }
    .orders-line-price { width: 5.5rem; }
    .orders-sup-note { width: 100%; min-height: 3rem; margin: 0.5rem 0; }
    .orders-offer-ac-wrap { position: relative; display: inline-block; min-width: 10rem; max-width: 100%; }
    .orders-offer-ac-wrap .orders-line-offer,
    .orders-offer-ac-wrap .orders-sup-add-offer { width: 100%; min-width: 10rem; box-sizing: border-box; }
    .orders-offer-ac-list {
      position: absolute; left: 0; right: 0; top: 100%; z-index: 40;
      max-height: 14rem; overflow: auto; margin: 2px 0 0; padding: 0;
      background: #fff; border: 1px solid var(--border, #cbd5e1); border-radius: 6px;
      box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
    }
    .orders-offer-ac-item {
      display: block; width: 100%; text-align: left; padding: 0.4rem 0.55rem;
      border: none; background: transparent; cursor: pointer; font-size: 0.85rem;
    }
    .orders-offer-ac-item:hover, .orders-offer-ac-item.is-active {
      background: rgba(37, 99, 235, 0.1);
    }
    .orders-offer-ac-item strong { font-weight: 600; }
    .orders-push-result { margin: 0.5rem 0; padding: 0.5rem 0.75rem; background: #ecfdf5; border-radius: 6px; border: 1px solid #a7f3d0; }
    .orders-push-result.is-error { background: #fef2f2; border-color: #fecaca; }
    .orders-push-result.is-partial { background: #fffbeb; border-color: #fde68a; }
    .orders-push-history { margin-top: 1rem; }
    .orders-push-history-head { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.35rem; }
    .orders-push-history-head h3 { margin: 0; font-size: 1rem; }
    .orders-push-details { margin: 0.5rem 0; }
    .orders-push-details summary { cursor: pointer; font-size: 0.85rem; color: var(--text-muted); }
    table.orders-push-hist-tbl { width: 100%; border-collapse: collapse; font-size: 0.85rem; }
    table.orders-push-hist-tbl th, table.orders-push-hist-tbl td { border: 1px solid var(--border, #e2e8f0); padding: 0.35rem 0.5rem; text-align: left; }
    table.orders-push-hist-tbl th { background: #f8fafc; }
    .map-bc-auto { font-family: ui-monospace, monospace; font-size: 0.78rem; color: #047857; font-weight: 600; }
    .map-bc-miss { font-size: 0.78rem; color: #b45309; font-weight: 500; }
    .orders-map-legend {
      display: flex; flex-wrap: wrap; gap: 0.65rem 1.25rem; align-items: center;
      margin-bottom: 0.55rem; font-size: 0.8rem; color: var(--text-muted, #64748b);
    }
    .orders-map-legend-item { display: inline-flex; align-items: center; gap: 0.35rem; }
    .orders-map-legend-swatch {
      width: 0.85rem; height: 0.85rem; border-radius: 3px; border: 1px solid rgba(0,0,0,0.08);
    }
    .orders-map-legend-swatch--ozon { background: #e8f1ff; border-color: #93c5fd; }
    .orders-map-legend-swatch--supplier { background: #ecfdf5; border-color: #6ee7b7; }
    .orders-map-legend-swatch--wb { background: #fdf2f8; border-color: #f9a8d4; }
    .orders-mp--supplier { background: #0d9488; color: #fff; }
    table.orders-map-table {
      border-collapse: separate; border-spacing: 0;
      font-size: 0.84rem; min-width: 960px;
    }
    table.orders-map-table th,
    table.orders-map-table td {
      border: 1px solid #e2e8f0; padding: 0.42rem 0.55rem; vertical-align: middle;
    }
    table.orders-map-table thead tr:first-child th {
      position: sticky; top: 0; z-index: 3;
      font-size: 0.78rem; font-weight: 700; letter-spacing: 0.02em;
      padding: 0.5rem 0.55rem; text-align: center;
    }
    table.orders-map-table thead tr:nth-child(2) th {
      position: sticky; top: 2.05rem; z-index: 2;
      font-size: 0.72rem; font-weight: 600; text-transform: uppercase;
      letter-spacing: 0.04em; color: #475569;
    }
    .orders-map-th-ozon { background: #005bff; color: #fff; border-color: #0050e0; }
    .orders-map-th-supplier { background: #0d9488; color: #fff; border-color: #0f766e; }
    .orders-map-th-wb { background: #cb11ab; color: #fff; border-color: #a80f8f; }
    .orders-map-th-meta { background: #64748b; color: #fff; border-color: #475569; }
    .orders-map-sub-ozon { background: #dbeafe; border-color: #bfdbfe; color: #1e3a8a; }
    .orders-map-sub-supplier { background: #ccfbf1; border-color: #99f6e4; color: #115e59; }
    .orders-map-sub-wb { background: #fce7f3; border-color: #fbcfe8; color: #9d174d; }
    .orders-map-sub-meta { background: #f1f5f9; border-color: #e2e8f0; color: #475569; }
    .orders-map-td-ozon { background: #f0f6ff; }
    .orders-map-td-supplier { background: #f0fdfa; }
    .orders-map-td-wb { background: #fdf2f8; }
    .orders-map-td-meta { background: #fff; }
    .orders-map-zone-sep-ozon { border-right: 2px solid #93c5fd !important; }
    .orders-map-zone-sep-supplier { border-right: 2px solid #5eead4 !important; }
    .orders-map-zone-sep-wb { border-right: 2px solid #f9a8d4 !important; }
    .orders-map-name {
      max-width: 13rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
      font-size: 0.82rem; line-height: 1.35;
    }
    .map-sku-code {
      font-family: ui-monospace, "Cascadia Code", monospace;
      font-size: 0.8rem; font-weight: 600; color: #0f172a;
      background: rgba(255,255,255,0.65); padding: 0.12rem 0.35rem; border-radius: 4px;
      border: 1px solid rgba(15, 23, 42, 0.08);
    }
    .map-wb-offer {
      width: 6.75rem; max-width: 100%; font-size: 0.82rem; font-family: ui-monospace, monospace;
      padding: 0.28rem 0.4rem; border: 1px solid #f9a8d4; border-radius: 4px; background: #fff;
    }
    .map-wb-offer:focus { outline: 2px solid #cb11ab; outline-offset: 1px; }
    .orders-map-row--confirmed .orders-map-td-meta { background: rgba(34, 197, 94, 0.07); }
    .orders-map-row--suggested .orders-map-td-meta { background: rgba(234, 179, 8, 0.1); }
    .orders-map-row--rejected .orders-map-td-meta { background: rgba(239, 68, 68, 0.06); }
    .orders-map-row--none .orders-map-td-meta { background: #fafafa; }
    .orders-map-row--confirmed { box-shadow: inset 3px 0 0 #22c55e; }
    .orders-map-row--suggested { box-shadow: inset 3px 0 0 #eab308; }
    .orders-map-row--rejected { box-shadow: inset 3px 0 0 #ef4444; }
    .orders-map-row--none { box-shadow: inset 3px 0 0 #cbd5e1; }
    .orders-map-actions { white-space: nowrap; }
    .orders-map-actions .btn-secondary { padding: 0.22rem 0.45rem; min-width: 1.75rem; }
    .orders-map-qty { font-variant-numeric: tabular-nums; font-weight: 600; text-align: right; }
    #ordersMapOut { border: 1px solid #e2e8f0; border-radius: 8px; background: #fff; }
    .push-st-ok { color: #059669; }
    .push-st-partial { color: #d97706; }
    .push-st-error { color: #dc2626; }
    .orders-push-log { max-height: 12rem; overflow: auto; white-space: pre-wrap; background: #f8fafc; padding: 0.5rem; border-radius: 6px; }
    .orders-import-status {
      margin: 0.5rem 0 0.35rem; padding: 0.65rem 0.85rem; border-radius: 8px;
      border: 1px solid #93c5fd; background: #eff6ff; font-size: 0.875rem; line-height: 1.45;
      display: flex; align-items: flex-start; gap: 0.65rem;
    }
    .orders-import-status[hidden] { display: none !important; }
    .orders-import-status.is-ok { background: #ecfdf5; border-color: #a7f3d0; }
    .orders-import-status.is-error { background: #fef2f2; border-color: #fecaca; }
    .orders-import-status-text { flex: 1; min-width: 0; }
    .orders-import-spinner {
      width: 1.1rem; height: 1.1rem; flex-shrink: 0; margin-top: 0.12rem;
      border: 2px solid #93c5fd; border-top-color: #2563eb; border-radius: 50%;
      animation: ordersImportSpin 0.75s linear infinite;
    }
    @keyframes ordersImportSpin { to { transform: rotate(360deg); } }
    button.orders-import-btn--busy { opacity: 0.7; cursor: wait; }
    .orders-upload { max-width: 100%; }
    .orders-toolbar { flex-wrap: wrap; gap: 0.5rem 1rem; align-items: flex-end; }
    .orders-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 0.75rem; }
    @media (max-width: 900px) { .orders-grid { grid-template-columns: 1fr; } }
    .orders-card { background: var(--card, #fff); border: 1px solid var(--border, #e2e8f0); border-radius: 8px; padding: 0.75rem 1rem; }
    .orders-card h3 { margin: 0 0 0.5rem; font-size: 1rem; }
    .orders-scroll { max-height: 22rem; overflow: auto; }
    .orders-scroll--short { max-height: 14rem; }
    .orders-actions { margin-top: 0.65rem; display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }
    .orders-detail { margin-top: 1rem; padding-top: 0.75rem; border-top: 1px dashed var(--border, #cbd5e1); }
    .orders-table { width: 100%; border-collapse: collapse; font-size: 0.88rem; }
    .orders-table th, .orders-table td { border-bottom: 1px solid var(--border, #e2e8f0); padding: 0.35rem 0.5rem; text-align: left; }
    .orders-table tr:hover td { background: rgba(13, 148, 136, 0.06); }
    .orders-summary-grid { display:grid;grid-template-columns:repeat(6,minmax(8rem,1fr));gap:.55rem;margin:.65rem 0; }
    .orders-summary-card { padding:.65rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-2); }
    .orders-summary-card span { display:block;color:var(--text-muted);font-size:.72rem;margin-bottom:.2rem; }
    .orders-summary-card strong { font-size:.95rem; }
    .orders-unified-row { cursor:pointer; }
    .orders-unified-row:hover td,.orders-unified-row.is-expanded td { background:var(--accent-soft)!important; }
    .orders-expand-mark { float:right;color:var(--text-tertiary);transition:transform .15s ease; }
    .orders-unified-row.is-expanded .orders-expand-mark { transform:rotate(180deg); }
    .orders-detail-row>td { padding:.8rem 1rem!important;background:var(--surface-2); }
    .orders-detail-grid { display:grid;grid-template-columns:repeat(3,minmax(14rem,1fr));gap:1rem;margin-bottom:.75rem; }
    .orders-detail-grid section { padding:.7rem;border:1px solid var(--border);border-radius:8px;background:var(--surface); }
    .orders-detail-grid h4 { margin:0 0 .45rem; }
    .orders-detail-grid dl { display:grid;grid-template-columns:minmax(6rem,.8fr) 1.4fr;gap:.3rem .6rem;margin:0;font-size:.78rem; }
    .orders-detail-grid dt { color:var(--text-muted); }
    .orders-detail-grid dd { margin:0;overflow-wrap:anywhere; }
    .orders-status { display:inline-block;padding:.18rem .42rem;border-radius:999px;font-size:.72rem;white-space:nowrap; }
    .orders-status--new { color:#075985;background:#e0f2fe; }
    .orders-status--work { color:#92400e;background:#fef3c7; }
    .orders-status--done { color:#166534;background:#dcfce7; }
    .orders-status--cancel { color:#991b1b;background:#fee2e2; }
    .orders-payout { font-weight:600; }
    .orders-lines-table { width:100%;border-collapse:collapse;font-size:.76rem; }
    .orders-lines-table th,.orders-lines-table td { padding:.35rem .5rem;border-bottom:1px solid var(--border);text-align:left; }
    @media (max-width:1100px) {
      .orders-summary-grid { grid-template-columns:repeat(3,minmax(8rem,1fr)); }
      .orders-detail-grid { grid-template-columns:1fr; }
    }
    .orders-badge {
      display: inline-block; font-size: 0.72rem; font-weight: 600;
      padding: 0.12rem 0.45rem; border-radius: 999px; margin-left: 0.25rem;
      vertical-align: middle; white-space: nowrap;
    }
    .orders-badge--supplier-ok {
      background: #dcfce7; color: #166534; border: 1px solid #86efac;
    }
    .orders-badge--supplier-draft {
      background: #fef9c3; color: #854d0e; border: 1px solid #fde047;
    }
    .orders-supplier-check {
      width: 1rem; height: 1rem; accent-color: #16a34a; cursor: default;
    }
    .orders-row--low { background: #fff7ed; }
    .orders-row--warn td { background: #fffbeb; }
    .orders-row--warn:hover td { background: #fef3c7; }
    .orders-map-split { display: grid; grid-template-columns: 1fr 1fr; gap: 0.25rem 1rem; }
    .orders-map-split .lbl { font-size: 0.72rem; color: var(--text-muted, #64748b); text-transform: uppercase; letter-spacing: 0.04em; }
    .orders-map-status { font-size: 0.78rem; white-space: nowrap; font-weight: 600; }
    .orders-map-status.is-confirmed { color: #15803d; }
    .orders-map-status.is-suggested { color: #a16207; }
    .orders-map-status.is-none { color: #64748b; }
    .orders-map-status.is-rejected { color: #b91c1c; }
    .orders-map-sup-select {
      max-width: 11rem; font-size: 0.82rem; font-family: ui-monospace, monospace;
      padding: 0.28rem 0.35rem; border: 1px solid #6ee7b7; border-radius: 4px; background: #fff;
    }
    .orders-map-toolbar { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; align-items: center; margin-bottom: 0.65rem; }
    .orders-map-search { display: flex; flex-direction: column; gap: 0.2rem; font-size: 0.82rem; }
    .orders-map-search input { padding: 0.35rem 0.55rem; border: 1px solid var(--border, #cbd5e1); border-radius: 6px; }
    .orders-map-stats { font-size: 0.85rem; color: var(--text-muted, #64748b); }


    .wh-hero {
      display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1rem;
      padding: 1.25rem 1.5rem; margin-bottom: 1rem;
      background: linear-gradient(135deg, #fff7ed 0%, var(--surface) 55%);
      border: 1px solid rgba(180, 83, 9, 0.2); border-left: 4px solid #b45309;
      border-radius: var(--radius); box-shadow: var(--shadow-sm);
    }
    .wh-hero h2 { margin: 0; font-size: 1.5rem; font-weight: 600; color: #b45309; }
    .wh-table { width: 100%; border-collapse: collapse; font-size: 0.8125rem; }
    .wh-table th, .wh-table td { border: 1px solid var(--hairline); padding: 0.35rem 0.5rem; text-align: right; }
    .wh-table th:first-child, .wh-table td:first-child,
    .wh-table th:nth-child(2), .wh-table td:nth-child(2) { text-align: left; }
    .wh-table thead th { position: sticky; top: 0; background: var(--surface-2); z-index: 1; }
    .wh-th-ozon { background: var(--ozon-mid); color: var(--ozon); text-align: center; }
    .wh-th-wb { background: var(--wb-mid); color: var(--wb); text-align: center; }
    .wh-th-mfg { background: #fff7ed; color: #b45309; text-align: center; }
    .wh-col-ozon { background: rgba(0, 91, 255, 0.04); }
    .wh-col-wb { background: rgba(203, 17, 171, 0.04); }
    .wh-need { font-weight: 600; color: #b45309; }
    .wh-need-ozon { font-weight: 600; color: var(--ozon); }
    .wh-need-wb { font-weight: 600; color: var(--wb); }
    #viewHealth { border-top-color: var(--accent); }
    #viewAdminHub { border-top-color: #64748b; }
    #viewCabinet { border-top-color: #64748b; }
    .cabinet-member-form {
      margin-top: 0.5rem;
      padding: 1rem 1.15rem;
      border: 1px solid var(--hairline);
      border-radius: var(--radius);
      background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 100%);
      box-shadow: var(--shadow-sm);
    }
    .cabinet-member-form--edit { border-color: rgba(0, 91, 255, 0.35); box-shadow: 0 0 0 1px rgba(0, 91, 255, 0.12); }
    .cabinet-member-form__head {
      display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
      gap: 0.5rem; margin-bottom: 0.85rem; padding-bottom: 0.65rem; border-bottom: 1px solid var(--hairline);
    }
    .cabinet-member-form__title { margin: 0; font-size: 1.05rem; font-weight: 600; }
    .cabinet-member-form__body { display: flex; flex-direction: column; gap: 0.85rem; }
    .cabinet-member-form__row--identity {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
      gap: 0.65rem 0.85rem;
      align-items: end;
    }
    .cabinet-field { display: flex; flex-direction: column; gap: 0.25rem; font-size: 0.8rem; color: var(--muted); margin: 0; }
    .cabinet-field input, .cabinet-field select {
      min-height: 2.25rem; padding: 0.35rem 0.55rem; font-size: 0.9rem;
      border: 1px solid var(--hairline); border-radius: var(--radius-sm, 6px); background: var(--surface);
    }
    .cabinet-field input:disabled { opacity: 0.72; cursor: not-allowed; background: var(--surface-2); }
    .cabinet-member-form__access {
      display: grid; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); gap: 0.75rem;
    }
    .cabinet-member-form__block {
      padding: 0.65rem 0.75rem; border: 1px solid var(--hairline); border-radius: var(--radius-sm, 6px);
      background: var(--surface);
    }
    .cabinet-member-form__label {
      margin: 0 0 0.45rem; font-size: 0.8rem; font-weight: 600; color: var(--text, inherit);
    }
    .cabinet-member-form__pickers label {
      display: inline-flex; align-items: center; gap: 0.3rem; margin: 0.2rem 0.5rem 0.2rem 0;
      white-space: nowrap; font-size: 0.82rem; color: var(--text, inherit);
    }
    .cabinet-member-form__presets {
      display: flex; flex-wrap: wrap; gap: 0.35rem; margin-top: 0.45rem; padding-top: 0.45rem;
      border-top: 1px dashed var(--hairline);
    }
    .cabinet-member-form__actions {
      display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.85rem; padding-top: 0.75rem;
      border-top: 1px solid var(--hairline);
    }
    .cabinet-users-table { border: 1px solid var(--hairline); border-radius: var(--radius); background: var(--surface); }
    .admin-hub-nav {
      margin: 0 0 1rem;
      display: inline-flex; gap: 0.15rem; padding: 0.2rem;
      background: rgba(100, 116, 139, 0.12); border-radius: var(--radius-pill);
    }
    .admin-hub-nav .admin-hub-tab {
      border: none; background: transparent; color: var(--text-muted);
      padding: 0.52rem 1.15rem; border-radius: var(--radius-pill); font-size: 1rem; font-weight: 500;
      cursor: pointer; transition: background 0.2s var(--ease), color 0.2s var(--ease);
    }
    .admin-hub-nav .admin-hub-tab:hover { color: var(--text); background: rgba(255,255,255,0.6); }
    .admin-hub-nav .admin-hub-tab--active {
      background: #475569; color: #fff; font-weight: 600;
      box-shadow: 0 2px 8px rgba(71, 85, 105, 0.35);
    }
    .admin-hub-panel[hidden] { display: none !important; }
    .view-panel[hidden] { display: none !important; }
    .health-heading {
      font-size: 1.375rem; font-weight: 600; margin: 0 0 0.75rem;
      letter-spacing: -0.02em; color: var(--text);
      padding-left: 0.85rem; border-left: 4px solid var(--accent);
    }
    .health-card {
      border: 1px solid var(--border); border-radius: var(--radius);
      padding: 1.15rem 1.25rem; margin: 1rem 0; max-width: 100%;
      background: linear-gradient(180deg, var(--surface) 0%, var(--surface-2) 100%);
      box-shadow: var(--shadow-sm);
    }
    .health-toolbar {
      display: flex; flex-wrap: wrap; gap: 0.5rem 0.85rem; align-items: center;
      margin-bottom: 0.75rem; padding: 0; background: transparent; border: none;
    }
    .health-h3 { font-size: 1.0625rem; font-weight: 600; margin: 0 0 0.65rem; letter-spacing: -0.01em; }
    .health-ul { margin: 0.35rem 0 0; padding-left: 1.2rem; line-height: 1.45; }
    .health-pre {
      font-size: 0.8125rem; background: var(--surface-2); border: 1px solid var(--hairline);
      border-radius: var(--radius-sm); padding: 0.85rem 1rem;
      overflow-x: auto; white-space: pre-wrap; word-break: break-word; margin: 0.5rem 0;
    }
    .health-catch-label { font-size: 0.85rem; display: flex; gap: 0.35rem; align-items: center; }
    .health-badge {
      display: inline-block; padding: 0.2rem 0.55rem; border-radius: var(--radius-pill);
      font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.02em;
    }
    .health-badge.ok { background: var(--ok-soft); color: var(--ok); border: 1px solid rgba(36, 138, 61, 0.25); }
    .health-badge.warn { background: var(--warn-soft); color: var(--warn); border: 1px solid rgba(191, 72, 0, 0.25); }
    .health-badge.bad { background: var(--danger-soft); color: var(--danger); border: 1px solid rgba(215, 0, 21, 0.2); }
    /* —— Задачи / дневник / таймлайн —— */
    #viewTasks { max-width: 100%; min-width: 0; }
    #viewTasks .tasks-heading {
      border-left-color: var(--tasks-accent); color: var(--tasks-accent); margin-bottom: 0.45rem;
    }
    #viewTasks .tasks-nav {
      display: flex; flex-wrap: wrap; gap: 0.45rem; margin: 0 0 1rem;
    }
    #viewTasks .tasks-nav-tab {
      padding: 0.48rem 1rem; border: 1px solid var(--border-strong); background: var(--surface);
      border-radius: var(--radius-sm); cursor: pointer; font: inherit; font-size: 0.9375rem;
      font-weight: 500; color: var(--text-muted); transition: background 0.15s, color 0.15s, border-color 0.15s;
    }
    #viewTasks .tasks-nav-tab:hover { color: var(--text); border-color: rgba(88, 86, 214, 0.35); }
    #viewTasks .tasks-nav-tab.is-active {
      background: var(--tasks-accent); color: #fff; border-color: var(--tasks-accent);
      box-shadow: 0 2px 8px rgba(88, 86, 214, 0.28);
    }
    #viewTasks .tasks-sub-panel[hidden] { display: none !important; }
    #viewTasks .tasks-sub-panel {
      display: flex; flex-direction: column; gap: 0.85rem; min-width: 0;
    }
    #viewTasks .tasks-compose {
      border: 1px solid var(--border); border-left: 3px solid var(--tasks-accent);
      border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow-sm);
    }
    #viewTasks .tasks-compose > summary {
      list-style: none; cursor: pointer; padding: 0.75rem 1rem;
      font-weight: 600; font-size: 0.9rem; color: var(--tasks-accent);
      user-select: none;
    }
    #viewTasks .tasks-compose > summary::-webkit-details-marker { display: none; }
    #viewTasks .tasks-compose-body {
      padding: 0 1rem 1rem; border-top: 1px solid var(--hairline);
    }
    #viewTasks .tasks-compose-body .wm-form-grid { padding-top: 0.85rem; }
    #viewTasks .tasks-toolbar { margin-bottom: 0; border-left-color: var(--tasks-accent); }
    #viewTasks .wm-form-actions {
      display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap;
    }
    .wm-hero {
      display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.25rem;
      padding: 1.35rem 1.5rem; margin-bottom: 1.25rem;
      background: linear-gradient(135deg, var(--tasks-soft) 0%, var(--surface) 55%);
      border: 1px solid rgba(88, 86, 214, 0.2); border-left: 4px solid var(--tasks-accent);
      border-radius: var(--radius); box-shadow: var(--shadow-sm);
    }
    .wm-hero h2 { margin: 0; font-size: 1.5rem; font-weight: 600; letter-spacing: -0.03em; color: var(--tasks-accent); }
    .wm-hero p { margin: 0.4rem 0 0; font-size: 0.9375rem; color: var(--text-muted); max-width: 36rem; line-height: 1.5; }
    .wm-seg-nav {
      display: inline-flex; gap: 0.15rem; padding: 0.2rem;
      background: rgba(88, 86, 214, 0.1); border-radius: var(--radius-pill);
    }
    .wm-seg-nav .tasks-subtab,
    .wm-seg-nav .inv-subtab,
    .wm-seg-nav .finance-biz-subtab {
      border: none; background: transparent; color: var(--text-muted);
      padding: 0.52rem 1.15rem; border-radius: var(--radius-pill); font-size: 1rem; font-weight: 500;
      cursor: pointer; transition: background 0.2s var(--ease), color 0.2s var(--ease);
    }
    .wm-seg-nav .tasks-subtab:hover,
    .wm-seg-nav .inv-subtab:hover,
    .wm-seg-nav .finance-biz-subtab:hover { color: var(--text); }
    .wm-seg-nav .tasks-subtab--active,
    .wm-seg-nav .inv-subtab--active,
    .wm-seg-nav .finance-biz-subtab--active {
      background: var(--tasks-accent); color: #fff; font-weight: 600;
      box-shadow: 0 2px 8px rgba(88, 86, 214, 0.35);
    }
    .wm-panel {
      background: var(--surface); border: 1px solid var(--hairline); border-radius: var(--radius);
      box-shadow: var(--shadow-sm); overflow: hidden; margin-bottom: 1.25rem;
    }
    .wm-panel-head {
      padding: 0.85rem 1.25rem; font-size: 0.8125rem; font-weight: 600;
      text-transform: uppercase; letter-spacing: 0.05em; color: var(--tasks-accent);
      background: var(--tasks-soft); border-bottom: 1px solid rgba(88, 86, 214, 0.15);
      display: flex; align-items: center; gap: 0.5rem;
    }
    .wm-panel-head .wm-icon { display: none; }
    .wm-panel-body { padding: 1.25rem; }
    .wm-form-grid {
      display: grid; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr));
      gap: 1rem 1.15rem; align-items: end;
    }
    .wm-form-grid .wm-span-2 { grid-column: span 2; }
    .wm-form-grid .wm-span-full { grid-column: 1 / -1; }
    @media (max-width: 640px) { .wm-form-grid .wm-span-2 { grid-column: span 1; } }
    .wm-filter-bar {
      display: flex; flex-wrap: wrap; gap: 0.65rem 1rem; align-items: center;
      padding: 0.85rem 1rem; background: var(--tasks-soft); border-radius: var(--radius-sm);
      border: 1px solid rgba(88, 86, 214, 0.12);
    }
    .wm-filter-bar label {
      font-size: 0.8125rem; text-transform: none; letter-spacing: normal;
      font-weight: 400; color: var(--text-muted);
    }
    .wm-chip {
      display: inline-flex; align-items: center; padding: 0.25rem 0.6rem;
      border-radius: var(--radius-pill); font-size: 0.6875rem; font-weight: 600;
      background: #f1f5f9; border: 1px solid var(--border); color: var(--text-muted);
    }
    .wm-chip--ozon { background: var(--ozon-soft); color: var(--ozon); border-color: rgba(0, 91, 255, 0.3); }
    .wm-chip--wb { background: var(--wb-soft); color: var(--wb); border-color: rgba(124, 58, 237, 0.3); }
    .wm-chip--offer { font-weight: 700; letter-spacing: 0.02em; }
    .tasks-kanban {
      display: grid; grid-auto-flow: column; grid-auto-columns: minmax(260px, 280px);
      gap: 1rem; min-height: 14rem; align-items: stretch;
      overflow-x: auto; overflow-y: visible; padding-bottom: 0.35rem;
      overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch;
      width: 100%; max-width: 100%;
    }
    @media (max-width: 700px) { .tasks-kanban { grid-auto-columns: minmax(220px, 85vw); } }
    .tasks-col {
      background: var(--surface-2); border-radius: var(--radius);
      border: 1px solid var(--border); display: flex; flex-direction: column;
      min-width: 0; min-height: 14rem;
      max-height: min(calc(100vh - 18rem), 36rem); overflow: hidden;
    }
    .tasks-col-head {
      padding: 0.65rem 0.85rem; font-size: 0.78rem; font-weight: 700; text-transform: uppercase;
      letter-spacing: 0.06em; display: flex; align-items: center; gap: 0.4rem;
      border-radius: var(--radius) var(--radius) 0 0; min-width: 0;
    }
    .tasks-col-head-actions {
      display: inline-flex; align-items: center; gap: 0.25rem; flex-shrink: 0; margin-left: auto;
    }
    .tasks-col--todo .tasks-col-head { background: #f1f5f9; color: #475569; border-top: 3px solid #94a3b8; }
    .tasks-col--progress .tasks-col-head { background: var(--accent-soft); color: var(--accent); border-top: 3px solid var(--accent); }
    .tasks-col--done .tasks-col-head { background: var(--ok-soft); color: var(--ok); border-top: 3px solid var(--ok); }
    .tasks-col--custom .tasks-col-head { background: var(--tasks-soft); color: var(--tasks-accent); border-top: 3px solid var(--tasks-accent); }
    .tasks-col-count {
      font-size: 0.72rem; font-weight: 700; min-width: 1.4rem; text-align: center;
      background: rgba(255,255,255,0.7); border-radius: 999px; padding: 0.1rem 0.4rem;
    }
    .tasks-col-body {
      padding: 0.6rem 0.55rem 0.75rem; overflow-y: auto; flex: 1; min-height: 4rem;
      transition: background 0.15s;
      display: flex; flex-direction: column; gap: 0.7rem;
      overscroll-behavior: contain;
    }
    .tasks-col-body.tasks-drop-over { background: rgba(0, 113, 227, 0.08); outline: 2px dashed var(--accent); outline-offset: -4px; border-radius: 8px; }
    .tasks-col-title-inp {
      font: inherit; font-size: 0.78rem; font-weight: 700; text-transform: uppercase;
      letter-spacing: 0.06em; border: 1px solid var(--accent); border-radius: 6px;
      padding: 0.15rem 0.35rem; flex: 1; min-width: 0; max-width: 100%; background: #fff;
    }
    .tasks-col-del {
      font-size: 1rem; line-height: 1; padding: 0 0.35rem; border: none; background: transparent;
      color: var(--text-tertiary); cursor: pointer; border-radius: 4px;
    }
    .tasks-col-del:hover { color: var(--danger); background: var(--danger-soft); }
    .task-card {
      background: var(--surface); border: 1px solid var(--border-strong); border-radius: 12px;
      padding: 0.85rem 0.95rem; margin: 0; font-size: 0.875rem;
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); border-left: 3px solid var(--hairline);
      transition: box-shadow 0.25s var(--ease), transform 0.25s var(--ease), border-color 0.2s;
      position: relative; flex-shrink: 0;
    }
    .tasks-col-body .task-card + .task-card::before {
      content: ''; position: absolute; top: -0.42rem; left: 0.65rem; right: 0.65rem; height: 0;
      border-top: 1px solid rgba(0, 0, 0, 0.1);
      pointer-events: none;
    }
    .task-card.task-dragging { opacity: 0.45; transform: scale(0.98); }
    .task-card[draggable="true"] { cursor: grab; }
    .task-card[draggable="true"]:active { cursor: grabbing; }
    .task-card:hover { transform: translateY(-1px); box-shadow: var(--shadow); border-color: rgba(0, 113, 227, 0.22); }
    .task-card[data-priority="urgent"] { border-left-color: #dc2626; }
    .task-card[data-priority="high"] { border-left-color: #f59e0b; }
    .task-card[data-priority="normal"] { border-left-color: var(--accent); }
    .task-card[data-priority="low"] { border-left-color: #cbd5e1; }
    .task-card.done { opacity: 0.82; background: #f8fafc; }
    .task-card-title { font-weight: 600; font-size: 0.92rem; line-height: 1.3; margin-bottom: 0.35rem; }
    .task-card .task-actions { margin-top: 0.55rem; display: flex; gap: 0.35rem; flex-wrap: wrap; padding-top: 0.45rem; border-top: 1px dashed var(--border); }
    .task-card .task-actions button {
      font-size: 0.74rem; padding: 0.25rem 0.55rem; border-radius: 6px;
      background: var(--surface-2); border: 1px solid var(--border);
    }
    .task-card .task-actions button[data-task-edit="1"] { color: var(--accent); border-color: #93c5fd; background: var(--accent-soft); }
    .task-card .task-actions button[data-task-go="done"] { color: var(--ok); border-color: #86efac; background: #ecfdf5; }
    .task-meta-row { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.4rem; align-items: center; }
    .task-assignee {
      display: inline-flex; align-items: center; gap: 0.3rem;
      font-size: 0.78rem; font-weight: 600; padding: 0.2rem 0.5rem;
      background: #f1f5f9; border-radius: 999px; color: var(--text);
    }
    .task-assignee::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); }
    .task-due, .task-due-btn {
      font-size: 0.76rem; padding: 0.2rem 0.5rem; border-radius: 999px; background: #e2e8f0; color: #475569; font-weight: 500;
      border: none; font-family: inherit; cursor: pointer;
    }
    .task-due-btn:hover { filter: brightness(0.97); box-shadow: 0 0 0 1px rgba(0,0,0,0.06); }
    .task-due.overdue, .task-due-btn.overdue { background: #fee2e2; color: #b91c1c; }
    .task-due.soon, .task-due-btn.soon { background: #fef3c7; color: #b45309; }
    .task-due-inp { font-size: 0.76rem; padding: 0.15rem 0.35rem; border-radius: 6px; border: 1px solid var(--accent); max-width: 9rem; }
    .task-assignees-pick {
      display: flex; flex-wrap: wrap; gap: 0.35rem 0.65rem; max-height: 6rem; overflow-y: auto;
      padding: 0.45rem 0.55rem; border: 1px solid var(--border); border-radius: var(--radius-sm); background: var(--surface-2);
    }
    .task-assignee-chk { font-size: 0.8rem; display: inline-flex; align-items: center; gap: 0.3rem; cursor: pointer; white-space: nowrap; }
    .task-assignee-chk input { accent-color: var(--tasks-accent); }
    .task-assignee-list { display: flex; flex-wrap: wrap; gap: 0.3rem; }
    .task-assignee-chip {
      font-size: 0.72rem; font-weight: 600; padding: 0.15rem 0.45rem;
      background: #f1f5f9; border-radius: 999px; color: var(--text);
    }
    .task-pri-badge { font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; opacity: 0.85; }
    .task-pri-badge.urgent { color: #dc2626; }
    .task-pri-badge.high { color: #d97706; }
    .task-assignees-btn {
      display: inline-flex; align-items: center; gap: 0.25rem; border: none; background: transparent;
      padding: 0.1rem 0.2rem; margin: -0.1rem -0.2rem; border-radius: 8px; cursor: pointer; font: inherit;
    }
    .task-assignees-btn:hover { background: rgba(0, 113, 227, 0.08); box-shadow: 0 0 0 1px rgba(0, 113, 227, 0.15); }
    .task-assignee-chip--add { background: var(--accent-soft); color: var(--accent); cursor: pointer; }
    .task-card-top { display: flex; align-items: flex-start; gap: 0.35rem; }
    .task-drag-handle {
      flex: 0 0 auto; cursor: grab; color: var(--text-tertiary); font-size: 0.85rem; line-height: 1.2;
      padding: 0.15rem 0.2rem; user-select: none; border-radius: 4px;
    }
    .task-drag-handle:active { cursor: grabbing; }
    .task-card-body { flex: 1; min-width: 0; }
    .task-detail-dialog { width: min(520px, 96vw); max-height: 90vh; padding: 0; border: none; border-radius: var(--radius); }
    .task-detail-dialog::backdrop { background: rgba(0, 0, 0, 0.32); backdrop-filter: blur(6px); }
    .task-detail-dialog .wm-dialog-inner {
      padding: 0; display: flex; flex-direction: column;
      max-height: min(90vh, 720px); overflow: hidden;
    }
    .task-edit-dialog.task-detail-dialog .wm-dialog-inner {
      padding: 0; display: flex; flex-direction: column;
      max-height: min(90vh, 720px); overflow: hidden;
    }
    .task-detail-head {
      padding: 1rem 1.15rem 0.85rem; border-bottom: 1px solid var(--hairline); background: var(--surface);
      flex-shrink: 0;
    }
    .task-detail-title {
      width: 100%; font: inherit; font-size: 1.05rem; font-weight: 600; letter-spacing: -0.02em;
      border: 1px solid transparent; border-radius: 8px; padding: 0.35rem 0.5rem; background: transparent;
    }
    .task-detail-title:focus { border-color: var(--accent); background: var(--surface-2); outline: none; }
    .task-detail-sub { font-size: 0.76rem; color: var(--text-muted); margin-top: 0.35rem; line-height: 1.4; }
    .task-detail-participants {
      display: flex; flex-wrap: wrap; gap: 0.35rem; align-items: center; padding: 0.65rem 1.15rem;
      border-bottom: 1px solid var(--hairline); background: var(--surface-2); flex-shrink: 0;
    }
    .task-detail-participants-label { font-size: 0.72rem; font-weight: 700; text-transform: uppercase;
      letter-spacing: 0.05em; color: var(--text-muted); margin-right: 0.25rem; }
    .task-participant-chip {
      font-size: 0.78rem; font-weight: 600; padding: 0.2rem 0.55rem; border-radius: 999px;
      background: #fff; border: 1px solid var(--border); color: var(--text);
    }
    .task-participant-chip--me { border-color: var(--accent); background: var(--accent-soft); color: var(--accent); }
    .task-participant-chip--creator { border-style: dashed; }
    .task-detail-props { border-bottom: 1px solid var(--hairline); flex-shrink: 0; }
    .task-detail-props summary {
      padding: 0.55rem 1.15rem; cursor: pointer; font-size: 0.8rem; font-weight: 600; color: var(--text-muted);
      list-style: none; user-select: none;
    }
    .task-detail-props summary::-webkit-details-marker { display: none; }
    .task-detail-props summary::after { content: ' ▾'; opacity: 0.6; }
    .task-detail-props[open] summary::after { content: ' ▴'; }
    .task-detail-props-body { padding: 0 1.15rem 0.85rem; }
    .task-detail-props-body .wm-form-grid { gap: 0.55rem 0.75rem; }
    .task-chat { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 8rem; background: #f4f6f9; overflow: hidden; }
    .task-chat-messages {
      flex: 1; min-height: 12rem; max-height: min(42vh, 360px); overflow-y: auto;
      padding: 0.85rem 1rem; display: flex; flex-direction: column; gap: 0.65rem;
    }
    .task-chat-day { text-align: center; font-size: 0.7rem; color: var(--text-muted); margin: 0.35rem 0; }
    .task-chat-row { display: flex; flex-direction: column; max-width: 88%; }
    .task-chat-row--mine { align-self: flex-end; align-items: flex-end; }
    .task-chat-row--other { align-self: flex-start; align-items: flex-start; }
    .task-chat-row--system { align-self: center; max-width: 95%; align-items: center; }
    .task-chat-bubble {
      padding: 0.55rem 0.75rem; border-radius: 14px; font-size: 0.875rem; line-height: 1.4;
      word-break: break-word; white-space: pre-wrap;
    }
    .task-chat-row--mine .task-chat-bubble {
      background: var(--accent); color: #fff; border-bottom-right-radius: 4px;
    }
    .task-chat-row--other .task-chat-bubble {
      background: #fff; border: 1px solid var(--border); border-bottom-left-radius: 4px;
    }
    .task-chat-row--system .task-chat-bubble {
      background: rgba(255,255,255,0.85); border: 1px dashed var(--border); color: var(--text-muted);
      font-size: 0.8rem; text-align: center;
    }
    .task-chat-author { font-size: 0.7rem; font-weight: 600; color: var(--text-muted); margin-bottom: 0.15rem; padding: 0 0.2rem; }
    .task-chat-time { font-size: 0.65rem; color: var(--text-tertiary); margin-top: 0.2rem; padding: 0 0.25rem; }
    .task-attachments {
      padding: 0.5rem 1rem; border-top: 1px solid var(--hairline); background: var(--surface);
      flex-shrink: 0;
    }
    .task-attachments-title { font-size: 0.72rem; font-weight: 600; color: var(--text-muted); margin-bottom: 0.35rem; text-transform: uppercase; letter-spacing: 0.04em; }
    .task-attachments-list { display: flex; flex-direction: column; gap: 0.35rem; max-height: 6rem; overflow-y: auto; }
    .task-attach-item {
      display: flex; align-items: center; gap: 0.5rem; font-size: 0.82rem;
      padding: 0.35rem 0.5rem; border-radius: var(--radius-sm); background: var(--surface-2);
      border: 1px solid var(--hairline);
    }
    .task-attach-item a { color: var(--accent); text-decoration: none; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .task-attach-item a:hover { text-decoration: underline; }
    .task-attach-meta { font-size: 0.7rem; color: var(--text-tertiary); white-space: nowrap; }
    .task-attach-del { border: none; background: transparent; color: var(--danger); cursor: pointer; font-size: 1rem; line-height: 1; padding: 0.15rem 0.35rem; border-radius: 4px; }
    .task-attach-del:hover { background: var(--danger-soft); }
    .task-chat-attach-btn {
      flex-shrink: 0; width: 2.35rem; height: 2.35rem; border-radius: 50%;
      border: 1px solid var(--border-strong); background: var(--surface);
      color: var(--text-muted); cursor: pointer; font-size: 1.1rem; line-height: 1;
    }
    .task-chat-attach-btn:disabled { opacity: 0.45; cursor: not-allowed; pointer-events: none; }
    .task-chat-attach-btn:hover:not(:disabled) { background: var(--accent-soft); color: var(--accent); border-color: rgba(0, 113, 227, 0.3); }
    .task-chat-composer {
      display: flex; gap: 0.5rem; align-items: flex-end; padding: 0.75rem 1rem;
      background: var(--surface); border-top: 1px solid var(--hairline); flex-shrink: 0;
      position: relative; z-index: 12;
      box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.06);
    }
    .task-chat-composer .task-chat-attach-btn,
    .task-chat-composer .task-chat-send {
      padding: 0; box-shadow: none; border-radius: 50%;
      font-size: 1.1rem; line-height: 1; min-width: 0;
    }
    .task-chat-composer .task-chat-send {
      background: var(--accent) !important; color: #fff !important; border: none !important;
    }
    .task-chat-composer .task-chat-attach-btn {
      background: var(--surface) !important; border: 1px solid var(--border-strong) !important;
    }
    .task-chat-composer textarea {
      flex: 1; min-height: 2.5rem; max-height: 6rem; resize: vertical; font: inherit; font-size: 0.9rem;
      padding: 0.5rem 0.65rem; border-radius: 12px; border: 1px solid var(--border);
    }
    .task-chat-send {
      flex-shrink: 0; width: 2.5rem; height: 2.5rem; border-radius: 50%; border: none;
      background: var(--accent); color: #fff; font-size: 1.1rem; cursor: pointer; line-height: 1;
    }
    .task-chat-send:hover { filter: brightness(1.05); }
    .task-chat-send:disabled { opacity: 0.45; cursor: not-allowed; }
    .task-chat-file-btn {
      border: none; background: transparent; color: var(--accent); cursor: pointer;
      font: inherit; text-align: left; padding: 0; text-decoration: underline;
      max-width: 100%; word-break: break-word; white-space: normal;
    }
    .task-chat-file-btn:hover { color: #005bb5; }
    .task-chat-row--mine .task-chat-file-btn--on-mine {
      color: #fff; text-decoration: underline;
    }
    .task-chat-row--mine .task-chat-file-btn--on-mine:hover { color: #e8f4ff; }
    .task-chat-file-size { font-size: 0.78em; opacity: 0.85; }
    .task-chat-bubble--files { display: flex; flex-direction: column; gap: 0.35rem; }
    .task-detail-foot {
      padding: 0.65rem 1.15rem; border-top: 1px solid var(--hairline); background: var(--surface);
      display: flex; gap: 0.5rem; flex-wrap: wrap; align-items: center; flex-shrink: 0;
    }
    .task-detail-meta { font-size: 0.78rem; color: var(--text-muted); line-height: 1.45; }
    .task-edit-dialog:not(.task-detail-dialog) .wm-dialog-inner { padding: 1.35rem 1.5rem 1.5rem; }
    .task-edit-dialog .wm-dialog-head {
      margin: -1.35rem -1.5rem 1.15rem; padding: 1rem 1.5rem;
      background: var(--surface-2); border-bottom: 1px solid var(--hairline);
      font-weight: 600; font-size: 1.0625rem; letter-spacing: -0.02em;
    }
    .wm-journal-feed {
      display: flex; flex-direction: column; gap: 0.65rem;
      border: 1px solid var(--border); border-radius: var(--radius);
      padding: 0.75rem; background: var(--surface);
    }
    .wm-journal-body { margin: 0.3rem 0 0; font-size: 0.84rem; color: var(--text-muted); line-height: 1.45; }
    .tasks-empty {
      margin: 0; padding: 2.25rem 1rem; text-align: center;
      font-size: 0.9rem; color: var(--text-muted);
      background: var(--surface-2); border: 1px dashed var(--border);
      border-radius: var(--radius-sm);
    }
    .tasks-col-body .tasks-empty {
      padding: 1.35rem 0.5rem; font-size: 0.8rem;
      background: transparent; border: none;
    }
    .wm-journal-item {
      display: grid; grid-template-columns: auto 1fr; gap: 0.85rem;
      padding: 0.85rem 1rem; background: var(--surface); border: 1px solid var(--border);
      border-radius: var(--radius-sm); box-shadow: var(--shadow-sm);
      transition: border-color 0.15s;
    }
    .wm-journal-item:hover { border-color: var(--accent); }
    .wm-journal-date {
      text-align: center; min-width: 3.2rem; padding: 0.35rem 0.5rem;
      background: var(--surface-2); border-radius: var(--radius-sm); border: 1px solid var(--border);
    }
    .wm-journal-date .d { font-size: 1.1rem; font-weight: 700; line-height: 1.1; color: var(--accent); }
    .wm-journal-date .m { font-size: 0.68rem; text-transform: uppercase; color: var(--text-muted); }
    .wm-journal-cat {
      display: inline-block; font-size: 0.72rem; font-weight: 600; padding: 0.15rem 0.5rem;
      border-radius: 4px; margin-bottom: 0.25rem;
    }
    .wm-journal-cat--ads { background: #fef3c7; color: #b45309; border: 1px solid #fcd34d; }
    .wm-journal-cat--price { background: var(--ozon-soft); color: var(--ozon); border: 1px solid rgba(0, 91, 255, 0.25); }
    .wm-journal-cat--description, .wm-journal-cat--content { background: var(--wb-soft); color: var(--wb); border: 1px solid rgba(124, 58, 237, 0.25); }
    .wm-journal-cat--stock { background: var(--ok-soft); color: var(--ok); border: 1px solid rgba(36, 138, 61, 0.25); }
    .wm-journal-cat--other { background: #f1f5f9; color: #64748b; border: 1px solid var(--border); }
    .wm-journal-title { font-weight: 600; font-size: 0.95rem; margin: 0 0 0.2rem; }
    .wm-journal-meta { font-size: 0.78rem; color: var(--text-muted); display: flex; flex-wrap: wrap; gap: 0.35rem 0.75rem; margin-top: 0.35rem; }
    .wm-journal-item-main { display: flex; flex-direction: column; gap: 0.2rem; min-width: 0; }
    .wm-journal-item-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 0.65rem; }
    .wm-journal-actions { display: flex; gap: 0.35rem; flex-shrink: 0; }
    .wm-journal-actions button {
      font-size: 0.72rem; padding: 0.22rem 0.5rem; border-radius: 4px;
      border: 1px solid var(--border); background: var(--surface-2); cursor: pointer; color: inherit;
    }
    .wm-journal-actions button:hover { border-color: var(--accent); color: var(--accent); }
    .wm-journal-actions button.journal-del-btn:hover { border-color: #b91c1c; color: #b91c1c; }
    .journal-tl-edit { border: none; background: none; padding: 0; cursor: pointer; text-decoration: underline; }
    .journal-tl-edit:hover { color: var(--accent); }
    .trust-score-pill {
      display: inline-block; font-weight: 700; font-size: 0.85rem; padding: 0.15rem 0.55rem;
      border-radius: 999px; border: 1px solid var(--border);
    }
    .trust-score-pill.ok { background: var(--ok-soft); color: var(--ok); border-color: rgba(36,138,61,0.35); }
    .trust-score-pill.warn { background: #fef3c7; color: #b45309; border-color: #fcd34d; }
    .trust-score-pill.bad { background: #fee2e2; color: #b91c1c; border-color: #fecaca; }
    .trust-dim-row { font-size: 0.82rem; margin: 0.35rem 0; padding: 0.45rem 0.55rem; background: var(--surface-2); border-radius: 6px; }
    .trust-dim-score { font-weight: 600; margin-left: 0.35rem; }
    table.trust-shops-tbl { width: 100%; font-size: 0.8rem; border-collapse: collapse; }
    table.trust-shops-tbl th, table.trust-shops-tbl td { padding: 0.35rem 0.5rem; border-bottom: 1px solid var(--border); text-align: left; }
    .finance-trust-card .trust-score-pill { font-size: 1rem; }

    .wm-tl-summary {
      display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center;
      padding: 0.85rem 1rem; margin-bottom: 1rem;
      background: linear-gradient(90deg, var(--ozon-soft) 0%, var(--surface) 70%);
      border: 1px solid rgba(0, 91, 255, 0.15); border-radius: var(--radius);
    }
    .wm-tl-offer { font-size: 1.15rem; font-weight: 700; letter-spacing: 0.02em; color: var(--ozon); }
    .wm-tl-days { display: flex; flex-direction: column; gap: 0.75rem; }
    .wm-tl-day {
      background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm);
      padding: 0.75rem 1rem; box-shadow: var(--shadow-sm);
    }
    .wm-tl-day-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 0.5rem; margin-bottom: 0.5rem; }
    .wm-tl-day-date { font-weight: 700; font-size: 0.95rem; }
    .wm-tl-qty { font-size: 1rem; font-weight: 700; color: var(--accent); }
    .wm-tl-delta { font-size: 0.8rem; font-weight: 600; padding: 0.1rem 0.4rem; border-radius: 4px; }
    .wm-tl-delta.up { background: #d1fae5; color: #047857; }
    .wm-tl-delta.down { background: #fee2e2; color: #b91c1c; }
    .wm-tl-delta.flat { background: #f1f5f9; color: #64748b; }
    .wm-tl-bar-wrap { height: 8px; background: #e2e8f0; border-radius: 4px; overflow: hidden; margin-bottom: 0.55rem; }
    .wm-tl-bar { height: 100%; background: var(--accent); border-radius: 4px; transition: width 0.35s var(--ease); }
    .wm-tl-events { display: flex; flex-direction: column; gap: 0.4rem; }
    .wm-tl-event {
      padding: 0.45rem 0.65rem; border-left: 3px solid var(--accent);
      background: var(--accent-soft); border-radius: 0 6px 6px 0; font-size: 0.84rem;
    }
    .wm-tl-empty { font-size: 0.8rem; color: var(--text-muted); font-style: italic; }
    #tasksBoardWrap {
      min-width: 0; max-width: 100%;
      background: var(--surface-2); border: 1px solid var(--border);
      border-radius: var(--radius); padding: 0.85rem 0.75rem 0.65rem;
      overflow-x: auto;
    }
    #journalListWrap {
      min-width: 0; max-width: 100%;
      max-height: min(calc(100vh - 17rem), 44rem); overflow-y: auto;
      padding-right: 0.2rem;
    }
    .task-card-links {
      margin: 0.35rem 0 0; display: flex; flex-wrap: wrap; gap: 0.3rem; align-items: center;
    }
    .task-card-desc { margin: 0.35rem 0 0; font-size: 0.8rem; color: var(--text-muted); line-height: 1.4; }
    #timelineWrap { max-height: calc(100vh - 14rem); overflow: auto; min-width: 0; }

    .finance-mode-nav { margin-bottom: 0.75rem; }
    .wm-seg-nav .finance-mode-tab {
      border: none; background: transparent; color: var(--text-muted);
      padding: 0.52rem 1.15rem; border-radius: var(--radius-pill); font-size: 1rem; font-weight: 500;
      cursor: pointer; transition: background 0.2s var(--ease), color 0.2s var(--ease);
    }
    .wm-seg-nav .finance-mode-tab:hover { color: var(--text); }
    .wm-seg-nav .finance-mode-tab--active {
      background: #0d9488; color: #fff; font-weight: 600;
      box-shadow: 0 2px 8px rgba(13, 148, 136, 0.28);
    }
    .finance-biz-tbl .sticky-week { min-width: 12rem; }
    .finance-weekly-wrap {
      max-height: calc(100vh - 16rem); margin-top: 0.5rem; overflow: auto;
      border: 2px solid #64748b; border-radius: var(--radius);
      background: #fff; padding: 0.65rem;
      box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
    }
    .finance-shop-block {
      margin-bottom: 1.25rem; padding-bottom: 0.85rem;
      border-bottom: 1px solid var(--hairline);
    }
    .finance-shop-block:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
    .finance-shop-title {
      font-size: 1rem; margin: 0 0 0.5rem; padding: 0.45rem 0.65rem;
      background: #eef2f7; border-radius: var(--radius-sm); border: 1px solid #d8dde6;
    }
    .finance-table-scroll {
      overflow-x: auto; max-width: 100%; margin-bottom: 0.35rem;
      border: 1px solid #d0d4dc; border-radius: var(--radius-sm); background: #fff;
    }
    .finance-build-stamp {
      margin: -0.35rem 0 0.75rem; padding: 0.35rem 0.65rem;
      display: inline-block; border-radius: var(--radius-sm);
      background: #ecfdf5; border: 1px solid #6ee7b7; color: #047857; font-size: 0.78rem;
    }
    #viewFinance .health-card { padding: 1rem 1rem 1.15rem; }
    table.finance-week-tbl {
      border-collapse: collapse !important;
      font-size: 0.82rem; width: max-content; min-width: 100%;
      border: 2px solid #94a3b8 !important;
    }
    table.finance-week-tbl th, table.finance-week-tbl td {
      border: 1px solid #94a3b8 !important; padding: 0.4rem 0.55rem;
      text-align: right; white-space: nowrap; background: #fff;
    }
    table.finance-week-tbl th:first-child, table.finance-week-tbl td:first-child,
    table.finance-week-tbl th:nth-child(2), table.finance-week-tbl td:nth-child(2) {
      text-align: left;
    }
    table.finance-week-tbl thead th {
      background: #0d9488 !important; color: #fff !important;
      position: sticky; top: 0; z-index: 2; font-weight: 600;
    }
    table.finance-week-tbl thead th.grp-mp { background: #0369a1 !important; }
    table.finance-week-tbl thead th.grp-manual { background: #b45309 !important; }
    table.finance-week-tbl .sticky-week {
      position: sticky; left: 0; z-index: 3; background: #eef2f7;
      min-width: 4.5rem;
    }
    table.finance-week-tbl tbody tr:nth-child(even) td { background: #fafcff; }
    table.finance-week-tbl tbody tr:hover td { background: #eef4ff; }
    table.finance-week-tbl tbody .sticky-week { background: #fff; z-index: 1; }
    table.finance-week-tbl tbody tr:nth-child(even) td.sticky-week { background: #fafcff; }
    table.finance-week-tbl tbody tr:hover td.sticky-week { background: #eef4ff; }
    table.finance-week-tbl .grp-mp { background: #e8f4fc; }
    table.finance-week-tbl .grp-manual { background: #f5f0e8; }
    table.finance-week-tbl tr.finance-total td,
    table.finance-week-tbl tfoot td {
      font-weight: 700; background: #eef2f7 !important; border-top: 2px solid #b8c2d0;
    }
    table.finance-ozon-excel-tbl th:first-child,
    table.finance-ozon-excel-tbl td:first-child {
      text-align: left; position: sticky; left: 0; z-index: 2;
      background: #fff; min-width: 7.5rem; box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.finance-ozon-excel-tbl thead th:first-child { z-index: 4; background: #0d9488 !important; color: #fff !important; }
    table.finance-week-tbl td.finance-plan-cell { padding: 0.12rem 0.2rem; background: #f4f8fc; }
    table.finance-week-tbl input.finance-plan-cell-inp {
      width: 5.75rem; max-width: 100%; font-size: 0.76rem; text-align: right;
      padding: 0.18rem 0.3rem; border: 1px solid #8ab4d9; border-radius: 3px; background: #fff;
    }
    table.finance-week-tbl input.finance-plan-cell-inp:focus {
      outline: 2px solid #3b82f6; border-color: #3b82f6;
    }
    table.finance-week-tbl th.finance-plan-col-hdr { background: #dbeafe; }
    .finance-detail-btn { font-size: 0.75rem; padding: 0.2rem 0.45rem; cursor: pointer; white-space: nowrap; }
    .finance-expand-btn {
      width: 1.7rem; height: 1.7rem; margin-right: 0.4rem; padding: 0;
      border: 1px solid #94a3b8; border-radius: 50%; background: #fff;
      color: #0f766e; font-weight: 800; cursor: pointer; line-height: 1;
    }
    .finance-expand-btn[aria-expanded="true"] { background: #0f766e; color: #fff; }
    table.finance-week-tbl tr.finance-inline-detail td {
      padding: 0 !important; background: #f8fafc !important; white-space: normal;
    }
    .finance-inline-panel {
      display: grid; grid-template-columns: repeat(4, minmax(12rem, 1fr));
      gap: 0.75rem; padding: 0.9rem 1rem; text-align: left;
    }
    .finance-inline-group {
      border: 1px solid #cbd5e1; border-radius: 0.55rem; background: #fff;
      padding: 0.65rem 0.75rem;
    }
    .finance-inline-group h4 { margin: 0 0 0.45rem; color: #0f766e; font-size: 0.82rem; }
    .finance-inline-line {
      display: flex; justify-content: space-between; gap: 1rem;
      padding: 0.22rem 0; border-bottom: 1px dashed #e2e8f0; font-size: 0.78rem;
    }
    .finance-inline-line:last-child { border-bottom: 0; }
    .finance-inline-line strong { white-space: nowrap; }
    .finance-report-ids { margin-top: 0.45rem; color: #64748b; font-size: 0.72rem; }
    @media (max-width: 1050px) {
      .finance-inline-panel { grid-template-columns: repeat(2, minmax(12rem, 1fr)); }
    }
    table.finance-detail-tbl {
      border-collapse: collapse; font-size: 0.8rem; width: max-content; min-width: 100%;
    }
    table.finance-detail-tbl th, table.finance-detail-tbl td {
      border: 1px solid #c8d0dc; padding: 0.35rem 0.5rem; text-align: right; white-space: nowrap;
      background: #fff;
    }
    table.finance-detail-tbl th:first-child, table.finance-detail-tbl td:first-child,
    table.finance-detail-tbl th:nth-child(2), table.finance-detail-tbl td:nth-child(2) {
      text-align: left; max-width: 14rem; overflow: hidden; text-overflow: ellipsis;
    }
    .finance-month-total { margin-top: 0.75rem; }
    .finance-detail-dialog {
      padding: 0; max-width: 96vw; width: 52rem;
      max-height: min(90vh, 100dvh); overflow: hidden;
    }
    .finance-detail-inner {
      padding: 1rem 1.1rem; box-sizing: border-box;
      display: flex; flex-direction: column; max-height: min(90vh, 100dvh); overflow: hidden;
    }
    .finance-detail-inner .health-h3,
    .finance-detail-inner #financeDetailMeta { flex-shrink: 0; }
    .finance-detail-table-wrap {
      flex: 1 1 auto; min-height: 0; overflow: auto;
      -webkit-overflow-scrolling: touch;
    }
    .finance-detail-footer {
      flex-shrink: 0; margin-top: 0.75rem; padding-top: 0.65rem;
      border-top: 1px solid #d8dde6; background: #fff;
    }
    .finance-h4 { font-size: 0.9rem; margin: 0.75rem 0 0.35rem; }
    table.finance-sku-tbl th.sortable { cursor: pointer; user-select: none; }
    table.finance-sku-tbl th.sortable:hover { background: #e8edf5; }
    table.finance-sku-tbl th.sort-asc::after { content: ' ▲'; font-size: 0.65rem; opacity: 0.75; }
    table.finance-sku-tbl th.sort-desc::after { content: ' ▼'; font-size: 0.65rem; opacity: 0.75; }
    #healthReload, #healthCatchUp7 { padding: 0.35rem 0.65rem; font: inherit; cursor: pointer; }
    table.admin-tbl {
      border-collapse: separate; border-spacing: 0; width: 100%; max-width: 100%;
      font-size: 0.8125rem; border-radius: var(--radius-sm); overflow: hidden;
      border: 1px solid var(--hairline);
    }
    table.admin-tbl th, table.admin-tbl td {
      border-bottom: 1px solid var(--hairline); padding: 0.65rem 0.85rem;
      text-align: left; vertical-align: top;
    }
    table.admin-tbl th { background: var(--surface-2); font-weight: 600; color: var(--text-muted); font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.04em; }
    table.admin-tbl tr:last-child td { border-bottom: none; }
    table.admin-tbl tbody tr:hover td { background: rgba(0, 0, 0, 0.02); }
    table.admin-tbl .ok { color: #060; }
    table.admin-tbl .fail { color: #a00; }
    .admin-sub { font-size: 1rem; margin: 1rem 0 0.5rem; }
    .admin-empty { color: var(--text-muted); font-size: 0.875rem; padding: 1.5rem; text-align: center; }
    #memoryEditor, #portalUiEditor {
      width: 100%; max-width: 56rem; min-height: 24rem; box-sizing: border-box;
      font-family: ui-monospace, monospace; font-size: 0.8rem; line-height: 1.45;
      padding: 0.65rem 0.75rem; border: 1px solid #ccc; border-radius: 6px;
    }
    #portalUiEditor { min-height: 16rem; }
    .history-block { margin-top: 1.25rem; }
    .history-block h3 { font-size: 1rem; margin: 0 0 0.35rem; }
    .memory-meta { font-size: 0.78rem; color: #555; margin: 0.35rem 0 0.5rem; }
    .memory-actions { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; margin-bottom: 0.5rem; }
    .memory-status { font-size: 0.82rem; min-height: 1.2rem; }
    .memory-status.ok { color: #060; }
    .memory-status.err { color: #a00; }
    .conn-label-inp { width: 100%; max-width: 18rem; box-sizing: border-box; padding: 0.25rem 0.4rem; font: inherit; }
    .conn-tbl-scroll { overflow: auto; max-width: 100%; margin-top: 0.35rem; }
    table.admin-tbl.conn-tbl { width: 100%; min-width: 44rem; table-layout: fixed; }
    table.admin-tbl.conn-tbl col.col-id { width: 7rem; }
    table.admin-tbl.conn-tbl col.col-name { width: 11rem; }
    table.admin-tbl.conn-tbl col.col-db { width: 10rem; }
    table.admin-tbl.conn-tbl col.col-keys { width: 8rem; }
    table.admin-tbl.conn-tbl col.col-api { width: 9rem; }
    table.admin-tbl.conn-tbl col.col-tax { width: 12rem; }
    table.admin-tbl.conn-tbl col.col-act { width: 11rem; }
    .conn-tax-sel { width: 100%; max-width: 11rem; font: inherit; font-size: 0.78rem; padding: 0.2rem; }
    table.admin-tbl.conn-tbl td { overflow: hidden; word-wrap: break-word; }
    table.admin-tbl.conn-tbl td.conn-actions-cell { overflow: visible; vertical-align: top; }
    table.admin-tbl.conn-tbl td.conn-api-cell { font-size: 0.76rem; line-height: 1.35; }
    table.admin-tbl.conn-tbl td.conn-db-cell { font-size: 0.75rem; word-break: break-all; }
    .conn-actions { display: flex; flex-wrap: wrap; gap: 0.35rem; align-items: flex-start; }
    .conn-actions button { font: inherit; font-size: 0.75rem; padding: 0.22rem 0.45rem; cursor: pointer; white-space: nowrap; }
    .conn-cred-row td { background: #f9fafb; padding: 0.65rem 0.75rem; }
    .conn-cred-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); gap: 0.55rem 1rem; width: 100%; max-width: none; box-sizing: border-box; }
    .conn-cred-grid > p.meta { grid-column: 1 / -1; margin: 0; line-height: 1.35; }
    .conn-cred-grid > .conn-actions { grid-column: 1 / -1; margin-top: 0.15rem; }
    .conn-cred-grid label { display: flex; flex-direction: column; gap: 0.2rem; font-size: 0.78rem; color: #333; min-width: 0; }
    .conn-cred-grid--ozon { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    @media (max-width: 720px) { .conn-cred-grid--ozon { grid-template-columns: 1fr; } }
    .conn-cred-section { display: flex; flex-direction: column; gap: 0.45rem; min-width: 0; padding: 0.5rem 0.65rem; border: 1px solid #e2e6ec; border-radius: 6px; background: #fff; }
    .conn-cred-title { margin: 0; font-size: 0.85rem; }
    .conn-cred-section .meta { margin: 0; font-size: 0.74rem; }
    .conn-cred-foot { grid-column: 1 / -1; margin: 0; font-size: 0.74rem; }
    .conn-cred-grid input { width: 100%; box-sizing: border-box; padding: 0.35rem; font: inherit; }
    .prices-scroll { max-height: calc(100vh - 14rem); overflow: auto; }
    .prices-offer { margin: 0 0 1.25rem; border: 1px solid #ddd; border-radius: 6px; overflow: hidden; }
    .prices-offer-h { margin: 0; padding: 0.55rem 0.75rem; background: var(--ozon-soft); font-size: 0.92rem; font-weight: 600; color: var(--ozon); }
    .prices-offer-h code { font-weight: 500; }
    table.prices-tbl { border-collapse: collapse; width: 100%; font-size: 0.85rem; }
    table.prices-tbl th, table.prices-tbl td { border: 1px solid #e0e0e0; padding: 0.28rem 0.45rem; text-align: right; }
    table.prices-tbl th:first-child, table.prices-tbl td:first-child { text-align: left; }
    table.prices-tbl thead th { background: #fafafa; position: sticky; top: 0; z-index: 1; }
    table.prices-tbl tbody tr:hover { background: #f8fbff; }
    .prices-num-changed { background: #fff8e6; }
    td.cell-heat { transition: background-color 0.12s ease; }
    td.cell-heat-max { font-weight: 600; box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.12); }
    table.analytics-matrix tbody tr:hover td.cell-heat,
    table.funnel-tbl tbody tr:hover td.cell-heat,
    table.ads-detail-tbl tbody tr:hover td.cell-heat,
    table.prices-tbl tbody tr:hover td.cell-heat {
      filter: brightness(0.97);
    }
    table.analytics-matrix {
      border-collapse: separate; border-spacing: 0; font-size: 0.82rem; white-space: nowrap;
    }
    table.analytics-matrix th, table.analytics-matrix td {
      border: 1px solid #e0e0e0; padding: 0.28rem 0.4rem; text-align: right; vertical-align: middle;
    }
    table.analytics-matrix thead th {
      background: #f4f6fa; position: sticky; top: 0; z-index: 3;
      box-shadow: 0 1px 0 #e0e0e0;
    }
    table.analytics-matrix th.sticky-col, table.analytics-matrix td.sticky-col {
      position: sticky; left: 0; z-index: 10; background: #fff; text-align: left;
      max-width: 9rem; min-width: 5.5rem; overflow: hidden; text-overflow: ellipsis;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.analytics-matrix th.sticky-col-2, table.analytics-matrix td.sticky-col-2 {
      position: sticky; z-index: 11; background: #fff;
      text-align: left; max-width: 14rem; min-width: 7rem; overflow: hidden; text-overflow: ellipsis;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.analytics-matrix th.offer-comment-col,
    table.analytics-matrix td.offer-comment-cell {
      position: sticky; z-index: 14; background: #fff;
      box-shadow: 1px 0 0 #e0e0e0; pointer-events: auto;
      min-width: 2.6rem; max-width: 3.2rem;
    }
    table.analytics-matrix thead th.offer-comment-col { z-index: 44; background: #f4f6fa; }
    table.analytics-matrix tbody tr:hover td.offer-comment-cell { background: #eef4ff; }
    table.analytics-matrix th.sticky-col-3, table.analytics-matrix td.sticky-col-3 {
      position: sticky; z-index: 12; background: #fff;
      text-align: left; max-width: 12rem; min-width: 6rem; overflow: hidden; text-overflow: ellipsis;
      box-shadow: 1px 0 0 #e0e0e0;
    }
    table.analytics-matrix th.sticky-col-3.sticky-col-stock,
    table.analytics-matrix td.sticky-col-3.sticky-col-stock {
      text-align: right; background: #f8fafc; min-width: 2.75rem; max-width: none;
    }
    table.analytics-matrix th.sticky-col-4, table.analytics-matrix td.sticky-col-4,
    table.analytics-matrix th.sticky-col-5, table.analytics-matrix td.sticky-col-5,
    table.analytics-matrix th.sticky-col-6, table.analytics-matrix td.sticky-col-6 {
      position: sticky; background: #f8fafc; text-align: right;
      min-width: 2.75rem; box-shadow: 1px 0 0 #e0e0e0;
    }
    table.analytics-matrix th.sticky-col-4, table.analytics-matrix td.sticky-col-4 { z-index: 13; }
    table.analytics-matrix th.sticky-col-5, table.analytics-matrix td.sticky-col-5 {
      z-index: 14; box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.analytics-matrix th.sticky-col-6, table.analytics-matrix td.sticky-col-6 {
      z-index: 15; box-shadow: 2px 0 6px rgba(0,0,0,.1);
    }
    table.analytics-matrix th.user-category-col, table.analytics-matrix td.user-category-col { z-index: 13; }
    table.analytics-matrix th.sticky-col-5.sticky-col-stock,
    table.analytics-matrix td.sticky-col-5.sticky-col-stock,
    table.analytics-matrix th.sticky-col-6.sticky-col-stock,
    table.analytics-matrix td.sticky-col-6.sticky-col-stock {
      text-align: right; background: #f8fafc; min-width: 2.75rem; max-width: none;
    }
    table.analytics-matrix thead th.sticky-col { z-index: 50; }
    table.analytics-matrix thead th.sticky-col-2 { z-index: 51; }
    table.analytics-matrix thead th.sticky-col-3 { z-index: 52; }
    table.analytics-matrix thead th.user-category-col { z-index: 53; }
    table.analytics-matrix thead th.offer-comment-col { z-index: 54; }
    table.analytics-matrix thead th.sticky-col-4 { z-index: 55; }
    table.analytics-matrix thead th.sticky-col-5 { z-index: 56; }
    table.analytics-matrix thead th.sticky-col-6 { z-index: 57; }
    table.analytics-matrix tbody td.analytics-val,
    table.analytics-matrix tbody td.analytics-total,
    table.analytics-matrix tbody td.analytics-foot-total,
    table.analytics-matrix tbody td.cell-heat {
      z-index: auto;
    }
    table.analytics-matrix tfoot td.sticky-col,
    table.analytics-matrix tfoot td.sticky-col-2,
    table.analytics-matrix tfoot td.sticky-col-3,
    table.analytics-matrix tfoot td.sticky-col-4,
    table.analytics-matrix tfoot td.sticky-col-5,
    table.analytics-matrix tfoot td.sticky-col-6,
    table.analytics-matrix tfoot td.user-category-col,
    table.analytics-matrix tfoot td.offer-comment-col { z-index: 20; }
    table.analytics-matrix td.analytics-total { font-weight: 600; background: #fafafa; }
    table.analytics-matrix td.analytics-val:not(.cell-heat) { background: #f8fbff; }
    table.analytics-matrix tbody tr:hover td:not(.cell-heat):not(.analytics-ad-day) { background: #f0f6ff; }
    table.analytics-matrix tbody tr:hover td.cell-heat { filter: brightness(0.97); }
    table.analytics-matrix tbody tr:hover td.sticky-col,
    table.analytics-matrix tbody tr:hover td.sticky-col-2,
    table.analytics-matrix tbody tr:hover td.sticky-col-3,
    table.analytics-matrix tbody tr:hover td.sticky-col-4,
    table.analytics-matrix tbody tr:hover td.sticky-col-5,
    table.analytics-matrix tbody tr:hover td.sticky-col-6 { background: #eef4ff; }
    table.analytics-matrix tbody tr.ads-matrix-row { cursor: pointer; }
    table.analytics-matrix tbody tr.prices-matrix-row { cursor: pointer; }
    table.analytics-matrix tbody tr.prices-matrix-row:hover td:not(.cell-heat) { background: #e6faf8; }
    .prices-drill-bar { display: flex; align-items: center; gap: 0.75rem; margin: 0 0 0.75rem; flex-wrap: wrap; }
    .prices-drill-hint { font-size: 0.88rem; color: var(--text-muted); }
    table.prices-detail-tbl { width: 100%; border-collapse: collapse; font-size: 0.85rem; margin-bottom: 1rem; }
    table.prices-detail-tbl th, table.prices-detail-tbl td { border: 1px solid #e0e0e0; padding: 0.28rem 0.45rem; text-align: right; }
    table.prices-detail-tbl th:first-child, table.prices-detail-tbl td:first-child { text-align: left; }
    table.prices-detail-tbl tr.prices-num-changed { background: #fff8e6; }
    table.analytics-matrix tbody tr.ads-matrix-row:hover td:not(.cell-heat) { background: #e8f2ff; }
    table.cost-matrix { border-collapse: separate; border-spacing: 0; font-size: 0.8rem; }
    table.cost-matrix th, table.cost-matrix td {
      border: 1px solid #e2e6ec; padding: 0.2rem 0.35rem; text-align: center; white-space: nowrap;
    }
    table.cost-matrix thead th { background: #f7f9fc; font-weight: 600; position: sticky; top: 0; z-index: 3; }
    table.cost-matrix th.sticky-col, table.cost-matrix td.sticky-col {
      position: sticky; left: 0; z-index: 2; background: #fff; text-align: left; min-width: 7rem; max-width: 9rem;
    }
    table.cost-matrix th.sticky-col-2, table.cost-matrix td.sticky-col-2 {
      position: sticky; left: var(--matrix-sticky-col1, 9rem); z-index: 2; background: #fff;
      text-align: left; max-width: 10rem; overflow: hidden; text-overflow: ellipsis;
    }
    table.cost-matrix th.sticky-col-3, table.cost-matrix td.sticky-col-3 {
      position: sticky; left: calc(var(--matrix-sticky-col1, 9rem) + 10rem); z-index: 2; background: #fafafa;
      min-width: 4.5rem;
    }
    table.cost-matrix thead th.sticky-col,
    table.cost-matrix thead th.sticky-col-2,
    table.cost-matrix thead th.sticky-col-3 { z-index: 5; }
    table.cost-matrix td.cost-matrix-explicit { background: #fffbeb; }
    table.cost-matrix .cost-matrix-inp {
      width: 3.5rem; border: 1px solid transparent; background: transparent; text-align: center;
      font-size: 0.8rem; padding: 0.15rem; border-radius: 4px;
      -moz-appearance: textfield;
      appearance: textfield;
    }
    table.cost-matrix .cost-matrix-inp::-webkit-outer-spin-button,
    table.cost-matrix .cost-matrix-inp::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }
    table.cost-matrix .price-chg-mark,
    table.cost-matrix .price-chg-arrow { display: none !important; }
    table.cost-matrix .cost-matrix-inp:focus { border-color: var(--accent); background: #fff; outline: none; }
    table.cost-matrix tbody tr:hover td.sticky-col,
    table.cost-matrix tbody tr:hover td.sticky-col-2,
    table.cost-matrix tbody tr:hover td.sticky-col-3 { background: #eef4ff; }
    .products-sub-panel { margin-top: 0.65rem; }
    .products-sub-panel[hidden] { display: none !important; }
    table.abc-matrix { border-collapse: separate; border-spacing: 0; font-size: 0.8rem; white-space: nowrap; }
    table.abc-matrix th, table.abc-matrix td {
      border: 1px solid var(--border); padding: 0.28rem 0.45rem; white-space: nowrap; vertical-align: middle;
    }
    table.abc-matrix th:not(.sticky-col):not(.sticky-col-2),
    table.abc-matrix td:not(.sticky-col):not(.sticky-col-2) { text-align: right; }
    table.abc-matrix td.sticky-col select.abc-class-sel { text-align: left; }
    table.abc-matrix thead th { background: #f7f9fc; position: sticky; top: 0; z-index: 3; }
    table.abc-matrix th.sticky-col, table.abc-matrix td.sticky-col {
      position: sticky; left: 0; z-index: 2; background: #fff; text-align: left;
      min-width: 7rem; max-width: 9rem; overflow: hidden; text-overflow: ellipsis;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.abc-matrix th.sticky-col-2, table.abc-matrix td.sticky-col-2 {
      position: sticky; left: var(--matrix-sticky-col1, 9rem); z-index: 2; background: #fff; text-align: left;
      min-width: 7rem; max-width: 14rem; overflow: hidden; text-overflow: ellipsis;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.abc-matrix thead th.sticky-col,
    table.abc-matrix thead th.sticky-col-2 { z-index: 5; }
    table.abc-matrix tbody tr:hover td.sticky-col,
    table.abc-matrix tbody tr:hover td.sticky-col-2 { background: #eef4ff; }
    table.abc-matrix .abc-badge {
      display: inline-block; min-width: 1.4rem; text-align: center; font-weight: 700;
      border-radius: 4px; padding: 0.05rem 0.35rem;
    }
    table.abc-matrix .abc-badge--A { background: #dcfce7; color: #166534; }
    table.abc-matrix .abc-badge--B { background: #fef9c3; color: #854d0e; }
    table.abc-matrix .abc-badge--C { background: #fee2e2; color: #991b1b; }
    table.abc-matrix select.abc-class-sel { font-size: 0.78rem; padding: 0.1rem 0.2rem; min-width: 5.5rem; }
    table.abc-matrix tr.abc-row-manual td { background: #fffbeb; }
    table.abc-matrix tr.abc-row-manual td.sticky-col,
    table.abc-matrix tr.abc-row-manual td.sticky-col-2 { background: #fffbeb; }
    .ads-drill-bar { margin: 0 0 0.65rem; display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; }
    .ads-drill-bar button { font: inherit; padding: 0.35rem 0.75rem; border-radius: var(--radius-pill); border: 1px solid var(--border); background: var(--surface); cursor: pointer; }
    .ads-drill-bar button:hover { background: var(--surface-2); }
    .ads-drill-hint { font-size: 0.75rem; color: var(--text-muted); }
    table.analytics-matrix th.sortable,
    table.analytics-matrix th.user-category-col[data-sort-key] { cursor: pointer; user-select: none; }
    table.analytics-matrix th.sortable:hover,
    table.analytics-matrix th.user-category-col[data-sort-key]:hover { background: #e8edf5; }
    table.analytics-matrix th.sort-asc::after { content: ' ▲'; font-size: 0.65rem; opacity: 0.75; }
    table.analytics-matrix th.sort-desc::after { content: ' ▼'; font-size: 0.65rem; opacity: 0.75; }
    table.analytics-matrix tfoot td {
      font-weight: 600; background: #eef2f7; border-top: 2px solid #c8d0dc;
    }
    table.analytics-matrix tfoot td.sticky-col,
    table.analytics-matrix tfoot td.sticky-col-2,
    table.analytics-matrix tfoot td.sticky-col-3,
    table.analytics-matrix tfoot td.sticky-col-4,
    table.analytics-matrix tfoot td.sticky-col-5 { background: #eef2f7; }
    table.analytics-matrix tfoot td.analytics-foot-total { background: #e4eaf2; }
    table.analytics-matrix td.analytics-ad-day:not(.cell-heat) {
      box-shadow: inset 0 0 0 2px rgba(234, 88, 12, 0.55);
      background: rgba(255, 247, 237, 0.35);
    }
    table.analytics-matrix td.has-price-chg { padding-left: 1.15rem; position: relative; overflow: visible; }
    .analytics-cell-inner {
      display: flex; align-items: center; justify-content: flex-end; gap: 0.35rem;
      width: 100%; min-height: 1.1em;
    }
    .analytics-cell-val { flex: 1; text-align: right; }
    .price-chg-mark {
      position: absolute; left: 0.25rem; top: 50%; transform: translateY(-50%);
      width: 0.65rem; height: 0.7rem; cursor: pointer; z-index: 2;
    }
    .price-chg-arrow {
      display: block; width: 0; height: 0; margin: 0 auto;
      border-left: 4px solid transparent; border-right: 4px solid transparent;
    }
    .price-chg-arrow--up { border-bottom: 6px solid #dc2626; }
    .price-chg-arrow--down { border-top: 6px solid #16a34a; }
    .analytics-price-tip-float {
      position: fixed; z-index: 10050; pointer-events: none;
      background: #1e293b; color: #fff; padding: 0.35rem 0.6rem; border-radius: 6px;
      font-size: 0.78rem; font-weight: 500; white-space: nowrap;
      box-shadow: 0 4px 14px rgba(15, 23, 42, 0.28);
    }
    .funnel-scroll { max-height: calc(100vh - 14rem); overflow: auto; padding: 0.5rem; min-height: 8rem; }
    .funnel-summary-wrap {
      overflow-x: auto; max-width: 100%; margin: 0 0 0.85rem;
      border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface);
    }
    table.funnel-summary-tbl {
      border-collapse: separate; border-spacing: 0; width: max-content; min-width: 100%;
      font-size: 0.8rem;
    }
    table.funnel-summary-tbl th, table.funnel-summary-tbl td {
      border: 1px solid #e0e0e0; padding: 0.35rem 0.5rem; white-space: nowrap; text-align: right;
      vertical-align: middle;
    }
    table.funnel-summary-tbl th { background: #f7f9fc; position: sticky; top: 0; z-index: 2; }
    table.funnel-summary-tbl th.funnel-summary-sortable {
      cursor: pointer; user-select: none; padding-right: 1.35rem; transition: background-color .15s ease, color .15s ease;
    }
    table.funnel-summary-tbl th.funnel-summary-sortable:hover,
    table.funnel-summary-tbl th.funnel-summary-sortable:focus-visible { background: #e8f0ff; color: var(--accent); outline: none; }
    .funnel-sort-arrow { position: absolute; right: .42rem; top: 50%; width: 0; height: 0; opacity: .35; transform: translateY(-50%); border-left: 4px solid transparent; border-right: 4px solid transparent; border-bottom: 6px solid currentColor; }
    th.funnel-summary-sortable.is-sorted { color: var(--accent); background: #e8f0ff; }
    th.funnel-summary-sortable.sort-desc .funnel-sort-arrow { border-bottom: 0; border-top: 6px solid currentColor; opacity: 1; }
    th.funnel-summary-sortable.sort-asc .funnel-sort-arrow { opacity: 1; }
    .support-layout { display: grid; grid-template-columns: minmax(20rem, .8fr) minmax(30rem, 1.2fr); gap: 1rem; align-items: start; }
    .support-create-card, .support-list-card { margin: 0; }
    .support-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
    .support-create-card label { display: grid; gap: .35rem; color: var(--muted); font-size: .82rem; font-weight: 650; margin-bottom: .75rem; }
    .support-create-card input, .support-create-card select, .support-create-card textarea,
    .support-reply textarea, .support-status { border: 1px solid var(--border); border-radius: 12px; background: #fff; padding: .72rem .82rem; font: inherit; color: var(--text); }
    .support-create-card textarea, .support-reply textarea { resize: vertical; }
    .support-actions, .support-list-head { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
    .support-list-head .admin-sub { margin: 0; }
    .support-ticket { border: 1px solid var(--border); border-radius: 14px; margin-top: .65rem; overflow: hidden; background: #fff; }
    .support-ticket > summary { display: grid; grid-template-columns: auto minmax(10rem,1fr) auto auto; align-items: center; gap: .7rem; padding: .85rem; cursor: pointer; list-style: none; }
    .support-ticket > summary::-webkit-details-marker { display: none; }
    .support-ticket-main { display: grid; gap: .15rem; min-width: 0; }
    .support-ticket-main strong, .support-ticket-main small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .support-ticket-main small, .support-ticket time { color: var(--muted); font-size: .75rem; }
    .support-ticket-id { color: var(--accent); font-weight: 800; }
    .support-status-badge { border-radius: 999px; padding: .3rem .55rem; font-size: .72rem; font-weight: 750; background: #eef2f7; }
    .support-status-badge.is-new { background: #dbeafe; color: #1d4ed8; }
    .support-status-badge.is-waiting_user { background: #fef3c7; color: #92400e; }
    .support-status-badge.is-resolved, .support-status-badge.is-closed { background: #dcfce7; color: #166534; }
    .support-thread { border-top: 1px solid var(--border); padding: .85rem; background: #f8fafc; }
    .support-message { max-width: 88%; border-radius: 14px; padding: .72rem .82rem; margin: .6rem 0; background: #fff; border: 1px solid var(--border); }
    .support-message.is-support { margin-left: auto; background: #eaf2ff; border-color: #bfd5ff; }
    .support-message > div { display: flex; justify-content: space-between; gap: 1rem; font-size: .75rem; }
    .support-message p { margin: .4rem 0 0; line-height: 1.45; }
    .support-reply { display: grid; grid-template-columns: 1fr auto; gap: .55rem; margin-top: .85rem; }
    .support-reply .meta { grid-column: 1 / -1; }
    @media (max-width: 900px) { .support-layout { grid-template-columns: 1fr; } .support-form-grid { grid-template-columns: 1fr; } .support-ticket > summary { grid-template-columns: auto 1fr auto; } .support-ticket > summary time { display: none; } }
    table.funnel-summary-tbl th.sticky-col, table.funnel-summary-tbl td.sticky-col {
      text-align: left; position: sticky; left: 0; z-index: 3; background: #fff;
      min-width: 8rem; max-width: 12rem; overflow: hidden; text-overflow: ellipsis;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.funnel-summary-tbl th.sticky-col-2, table.funnel-summary-tbl td.sticky-col-2 {
      text-align: left; position: sticky; left: var(--matrix-sticky-col1, 9rem); z-index: 3; background: #fff;
      min-width: 12rem; max-width: 20rem; overflow: hidden; text-overflow: ellipsis;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.funnel-summary-tbl thead th.sticky-col,
    table.funnel-summary-tbl thead th.sticky-col-2 { z-index: 5; background: #f7f9fc; }
    table.funnel-summary-tbl tbody tr:nth-child(even) td { background: #fafcff; }
    table.funnel-summary-tbl tbody tr:hover td { background: #eef4ff; }
    table.funnel-summary-tbl tbody tr.funnel-summary-row { cursor: pointer; }
    table.funnel-summary-tbl tbody tr.funnel-summary-row:focus { outline: 2px solid var(--accent); outline-offset: -2px; }
    table.funnel-summary-tbl tbody tr.funnel-summary-row.is-selected td { background: #e8f0ff; }
    table.funnel-summary-tbl tfoot td {
      font-weight: 700; background: #eef2f7; border-top: 2px solid #c8d0dc;
    }
    .funnel-offer details > summary {
      cursor: pointer; list-style: none;
    }
    .funnel-offer details > summary::-webkit-details-marker { display: none; }
    .funnel-offer { margin: 0 0 1.25rem; border: 1px solid #d0d4dc; border-radius: 8px; background: #fff; }
    .funnel-offer-h { margin: 0; padding: 0.5rem 0.75rem; background: #eef2f7; font-size: 0.95rem; font-weight: 700; border-bottom: 1px solid #d0d4dc; display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; }
    .funnel-detail-close { border: 1px solid var(--border); border-radius: 6px; background: #fff; color: var(--text-muted); padding: 0.3rem 0.55rem; cursor: pointer; font-size: 0.75rem; }
    .funnel-detail-close:hover { border-color: var(--accent); color: var(--accent); }
    .funnel-table-wrap { overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; }
    table.funnel-tbl { border-collapse: collapse; width: max-content; min-width: 100%; font-size: 0.78rem; }
    table.funnel-tbl th, table.funnel-tbl td { border: 1px solid #e0e0e0; padding: 0.3rem 0.45rem; text-align: right; vertical-align: middle; white-space: nowrap; }
    table.funnel-tbl th { background: #f7f9fc; font-weight: 600; position: sticky; top: 0; z-index: 1; box-shadow: 0 1px 0 #e0e0e0; }
    table.funnel-tbl td.date-col, table.funnel-tbl th.date-col { text-align: left; }
    table.funnel-tbl td.funnel-rank-cell { text-align: left; white-space: normal; min-width: 13rem; }
    table.funnel-tbl td.funnel-comment-cell { text-align: left; white-space: normal; min-width: 15rem; max-width: 25rem; }
    .funnel-comment-compose {
      display: grid; grid-template-columns: auto minmax(15rem, 1fr) auto auto; align-items: end;
      gap: 0.45rem; padding: 0.55rem 0.7rem; border-bottom: 1px solid var(--border); background: #fbfcff;
    }
    .funnel-comment-compose label { display: grid; gap: 0.2rem; font-size: 0.72rem; color: var(--text-muted); }
    .funnel-comment-compose input, .funnel-comment-compose button { min-height: 2rem; }
    .funnel-comment-list { display: grid; gap: 0.25rem; }
    .funnel-comment-item { display: flex; align-items: flex-start; gap: 0.35rem; line-height: 1.35; }
    .funnel-comment-item span { flex: 1; overflow-wrap: anywhere; }
    .funnel-comment-item small { color: var(--text-muted); }
    .funnel-comment-edit, .funnel-comment-add { border: 0; background: none; color: var(--accent); padding: 0; cursor: pointer; font-size: 0.72rem; }
    .funnel-comment-add { display: block; margin-top: 0.25rem; }
    .funnel-comment-empty { color: var(--text-muted); }
    table.funnel-tbl tr.funnel-day-pending td { background: #f8faff; border-top: 2px dashed #a8bcea; }
    table.funnel-tbl tr.funnel-day-pending td.date-col small { display: block; margin-top: 0.12rem; color: var(--accent); font-size: 0.66rem; font-weight: 600; }
    table.funnel-tbl td.funnel-data-pending { text-align: left; color: var(--text-muted); font-style: italic; }
    @media (max-width: 760px) { .funnel-comment-compose { grid-template-columns: 1fr; } }
    .funnel-rank-list { display: flex; flex-direction: column; align-items: flex-start; gap: 0.22rem; }
    .funnel-rank-chip {
      display: inline-flex; align-items: center; gap: 0.25rem; max-width: 24rem;
      padding: 0.18rem 0.42rem; border: 1px solid #c7d7fe; border-radius: 999px;
      background: #eef4ff; color: #263b63; line-height: 1.25;
    }
    .funnel-rank-chip small { color: #7c3aed; font-size: 0.68rem; }
    table.funnel-tbl tr.funnel-total td { font-weight: 600; background: #eef2f7; border-top: 2px solid #c8d0dc; }
    table.funnel-tbl tbody tr:hover td { background: #f8fbff; }
    /* funnel-wb-matrix v1 */
    #viewFunnel.funnel-view--wb { border-top-color: var(--wb); }
    table.funnel-matrix {
      border-collapse: separate; border-spacing: 0;
      font-size: 0.8rem; white-space: nowrap; width: max-content; min-width: 100%;
    }
    table.funnel-matrix th, table.funnel-matrix td {
      border: 1px solid #e0e0e0; padding: 0.28rem 0.4rem;
      text-align: right; vertical-align: middle;
    }
    table.funnel-matrix th.funnel-matrix-day {
      text-align: center; background: #f0f4fa; font-weight: 700;
    }
    table.funnel-matrix thead tr:nth-child(2) th {
      font-size: 0.72rem; font-weight: 500; color: #475569;
    }
    table.funnel-matrix th.sticky-col, table.funnel-matrix td.sticky-col {
      position: sticky; left: 0; z-index: 2; background: #fff; text-align: left;
      min-width: 5.5rem; max-width: 9rem; box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.funnel-matrix th.sticky-col-2, table.funnel-matrix td.sticky-col-2 {
      position: sticky; left: var(--matrix-sticky-col1, 9rem); z-index: 2; background: #fff;
      text-align: left; max-width: 12rem; min-width: 6rem;
      overflow: hidden; text-overflow: ellipsis;
      box-shadow: 2px 0 4px rgba(0,0,0,.06);
    }
    table.funnel-matrix thead th { background: #f7f9fc; position: sticky; top: 0; z-index: 3; }
    table.funnel-matrix thead th.sticky-col,
    table.funnel-matrix thead th.sticky-col-2,
    table.funnel-matrix thead th.user-category-col { z-index: 5; }
    table.funnel-matrix tbody tr:hover td { background: #f8fbff; }
    table.funnel-matrix tbody tr:hover td.sticky-col,
    table.funnel-matrix tbody tr:hover td.sticky-col-2 { background: #eef4ff; }
    table.funnel-matrix tfoot td {
      font-weight: 600; background: #eef2f7; border-top: 2px solid #c8d0dc;
    }
    table.funnel-matrix td.funnel-matrix-empty { color: #94a3b8; }
    .funnel-wb-note { margin: 0 0 0.65rem; font-size: 0.82rem; color: var(--text-muted); }

    .sync-stage { display: inline-block; min-width: 4.5rem; padding: 0.15rem 0.35rem; margin: 0.1rem; border-radius: 4px; font-size: 0.72rem; text-align: center; }
    .sync-stage--ok { background: #e6f4ea; color: #137333; }
    .sync-stage--warn { background: #fef7e0; color: #8a6d00; }
    .sync-stage--fail { background: #fce8e6; color: #c5221f; }
    .sync-stage--empty { background: #f1f3f4; color: #666; }
    table.sync-status-tbl { width: 100%; border-collapse: collapse; font-size: 0.82rem; }
    table.sync-status-tbl th, table.sync-status-tbl td { border: 1px solid #e0e0e0; padding: 0.4rem 0.5rem; vertical-align: top; }
    table.sync-status-tbl th { background: #f7f9fc; }
    table.sync-status-tbl tr.sync-fail td { background: #fff8f7; }
    .data-ops-kpi { display: flex; flex-wrap: wrap; gap: 0.75rem 1.25rem; font-size: 0.88rem; }
    .data-ops-kpi__item.warn { color: #b06000; }
    #status, #wbStatus, #pricesStatus, #analyticsStatus, #adsStatus, #funnelStatus {
      padding: 0.35rem 0.5rem; border-radius: var(--radius-sm);
      background: var(--surface-2); display: inline-block; min-height: 1.5rem;
    }
    .prices-scroll, .funnel-scroll { border-radius: var(--radius); border: 1px solid var(--border); background: var(--surface); }
    @media (max-width: 640px) {
      .portal-shell { padding: 0.65rem 0.75rem 1.25rem; }
      .portal-nav { padding: 0.5rem; }
      .view-panel { padding: 0.65rem 0.75rem; }
    }
    @media (max-width: 1280px) {
      .portal-nav { gap:.45rem; }
      .portal-nav-group--system { order:3;width:100%;overflow-x:auto;border-left:0;border-top:1px solid var(--hairline);padding:.45rem 0 0;scrollbar-width:thin }
      .portal-nav-group-tabs { width:max-content }
      .portal-nav-end { margin-left:auto }
    }
    @media (max-width: 720px) {
      .portal-nav-end { order:2;max-width:calc(100% - 11rem);overflow-x:auto }
      .portal-nav-dropdown-menu { position:fixed;top:auto;right:.75rem!important;bottom:.75rem;left:.75rem!important;min-width:0;max-height:70vh;overflow:auto }
    }
.calculator-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1.5rem 1.7rem;border-radius:20px;color:#fff;background:linear-gradient(125deg,#172554 0%,#3730a3 58%,#7c3aed 100%);box-shadow:0 14px 34px rgba(49,46,129,.2)}
.calculator-hero h2{margin:.15rem 0 .35rem;color:#fff;font-size:1.8rem}.calculator-hero p{max-width:48rem;margin:0;color:rgba(255,255,255,.82)}
.calculator-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:800;color:#c4b5fd}.calculator-hero-mark{display:grid;place-items:center;width:4.5rem;height:4.5rem;flex:0 0 auto;margin-left:1rem;border:1px solid rgba(255,255,255,.2);border-radius:50%;font-size:2.2rem;font-weight:800;background:rgba(255,255,255,.1)}
.calculator-layout{display:grid;grid-template-columns:minmax(22rem,1fr) minmax(22rem,1fr);gap:1rem;align-items:start}
.calculator-form,.calculator-result-card{padding:1.25rem!important;border-radius:18px!important}
.calculator-card-title{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}.calculator-card-title>span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:10px;color:#4338ca;font-weight:800;background:#eef2ff}.calculator-card-title div{display:grid}.calculator-card-title small{margin-top:.08rem;color:var(--muted,#68707c)}
.calculator-fields{display:grid;gap:.9rem}.calculator-fields label{display:grid;gap:.38rem;font-weight:650;color:var(--text,#20232a)}
.calculator-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.calculator-fields input,.calculator-fields select{width:100%;height:2.75rem;box-sizing:border-box;border:1px solid #d7dbe5;border-radius:10px;padding:0 .75rem;background:#fff!important;color:#172033!important;color-scheme:light;font:inherit;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.calculator-fields input:focus,.calculator-fields select:focus{outline:3px solid rgba(99,102,241,.16);border-color:#6366f1}.calculator-fields select:disabled{color:#8a93a3!important;background:#f6f7f9!important}
.calculator-product-field>span{display:flex;justify-content:space-between;align-items:center}.calculator-product-field em{padding:.16rem .48rem;border-radius:999px;color:#4f46e5;background:#eef2ff;font-size:.72rem;font-style:normal;font-weight:750}
.calculator-product-picker{position:relative}.calculator-product-button{display:flex!important;align-items:center;justify-content:space-between;width:100%;min-height:3.6rem!important;height:auto!important;padding:.65rem .8rem!important;border:1px solid #d7dbe5!important;border-radius:12px!important;text-align:left;background:#fff!important;color:#172033!important;cursor:pointer;box-shadow:0 2px 7px rgba(15,23,42,.05)!important}
.calculator-product-button:hover{border-color:#a5b4fc!important;background:#fafaff!important}.calculator-product-button:focus{outline:3px solid rgba(99,102,241,.16);border-color:#6366f1!important}.calculator-product-button:disabled{cursor:not-allowed;opacity:.7}
.calculator-product-button>span{display:grid;min-width:0;gap:.18rem}.calculator-product-button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}.calculator-product-button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-size:.73rem}
.calculator-product-button>i{width:.55rem;height:.55rem;flex:0 0 auto;margin:0 .35rem 0 .8rem;border-right:2px solid #64748b;border-bottom:2px solid #64748b;transform:rotate(45deg) translateY(-2px);transition:transform .18s}.calculator-product-button[aria-expanded="true"]>i{transform:rotate(225deg) translate(-2px,-2px)}
.calculator-product-menu{position:absolute;z-index:50;top:calc(100% + .4rem);left:0;right:0;max-height:22rem;overflow:auto;padding:.38rem;border:1px solid #dfe3eb;border-radius:14px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.18)}
.journal-product-field{position:relative}.journal-product-menu{z-index:120;max-height:none;overflow:visible}.journal-product-menu>input{width:100%;padding:.72rem .78rem;border:1px solid #d7dbe5;border-radius:10px;background:#f8fafc;color:var(--text);outline:none}.journal-product-menu>input:focus{border-color:#818cf8;box-shadow:0 0 0 3px rgba(99,102,241,.13)}.journal-product-menu>[data-journal-product-options]{max-height:18rem;margin-top:.35rem;overflow:auto}.journal-product-option{display:flex!important;align-items:center;justify-content:space-between;width:100%;padding:.7rem .75rem!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#273449!important;text-align:left}.journal-product-option[hidden]{display:none!important}.journal-product-option:hover{background:#eef2ff!important;color:#3730a3!important}.journal-product-option.is-selected{background:#e0e7ff!important;color:#3730a3!important}.journal-product-option>span{display:grid;gap:.15rem;min-width:0}.journal-product-option strong,.journal-product-option small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-product-option small{color:#64748b;font-size:.72rem}.journal-product-option>b{color:#4f46e5}.journal-product-picker .calculator-product-button{min-height:3.2rem!important}
.calculator-product-option{display:flex!important;align-items:center;justify-content:space-between;width:100%;height:auto!important;min-height:3.5rem;padding:.65rem .72rem!important;border:0!important;border-radius:9px!important;text-align:left;background:#fff!important;color:#172033!important;cursor:pointer;box-shadow:none!important}.calculator-product-option:hover{background:#f5f3ff!important}.calculator-product-option.is-selected{background:#eef2ff!important}
.calculator-product-option>span{display:grid;min-width:0;gap:.18rem}.calculator-product-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem}.calculator-product-option small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7c8595;font-size:.7rem}.calculator-product-option>i{display:none;color:#4f46e5;font-style:normal;font-weight:900}.calculator-product-option.is-selected>i{display:block}.calculator-product-empty{margin:.7rem;padding:.8rem;text-align:center;color:#7c8595;font-size:.8rem}
.calculator-product-option .calculator-product-price{display:block;flex:0 0 auto;margin-left:auto;padding-left:.8rem;color:#4338ca;font-size:.78rem;font-weight:800;white-space:nowrap}
.calculator-status{min-height:1.2rem;margin:.8rem 0 0;padding:.55rem .7rem;border-radius:9px;color:#64748b;background:#f8fafc;font-size:.78rem}.calculator-status.is-ok{color:#166534;background:#f0fdf4}.calculator-status.is-error{color:#b91c1c;background:#fef2f2}
.calculator-result{display:grid;gap:1rem}.calculator-profit{padding:1.3rem;border:1px solid #e5e7eb;border-radius:16px;display:grid;gap:.25rem;background:linear-gradient(145deg,#f8fafc,#f1f5f9)}
.calculator-profit strong{font-size:2.25rem;letter-spacing:-.035em}.calculator-profit.is-positive{border-color:#bbf7d0;background:linear-gradient(145deg,#f0fdf4,#dcfce7)}.calculator-profit.is-positive strong{color:#15803d}
.calculator-profit.is-negative{border-color:#fecaca;background:linear-gradient(145deg,#fff7f7,#fee2e2)}.calculator-profit.is-negative strong{color:#c43d3d}.calculator-profit small{color:var(--muted,#68707c)}
.calculator-net-result{display:grid;gap:.2rem;padding:.9rem 1rem;border:1px solid #dbe3ef;border-radius:12px;background:#f8fafc}.calculator-net-result span,.calculator-net-result small{color:#64748b}.calculator-net-result strong{font-size:1.35rem}.calculator-net-result.is-positive strong{color:#15803d}.calculator-net-result.is-negative strong{color:#dc2626}
.calculator-tax-note{margin:0;padding:.7rem .8rem;border-left:3px solid #f59e0b;border-radius:4px;color:#92400e;background:#fffbeb;font-size:.75rem;line-height:1.45}
.calculator-breakdown{display:grid;gap:.2rem}.calculator-breakdown>div{display:flex;justify-content:space-between;gap:1rem;padding:.65rem .2rem;border-bottom:1px solid var(--line,#e2e5e9)}.calculator-breakdown>div:first-child strong{color:#4338ca}
@media(max-width:800px){.calculator-layout{grid-template-columns:1fr}.calculator-field-row{grid-template-columns:1fr}.calculator-hero-mark{display:none}}
.product-economy-hero{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding:1.25rem 1.5rem;border-radius:18px;color:#fff;background:linear-gradient(120deg,#0f172a,#1e3a8a 62%,#2563eb);box-shadow:0 14px 30px rgba(30,58,138,.18)}.product-economy-hero span{color:#93c5fd;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.product-economy-hero h3{margin:.15rem 0;font-size:1.55rem}.product-economy-hero p{margin:0;color:#dbeafe}.product-economy-hero-icon{display:grid;place-items:center;width:3.6rem;height:3.6rem;border:1px solid rgba(255,255,255,.25);border-radius:50%;font-size:1.7rem;background:rgba(255,255,255,.1)}
.product-economy-toolbar input,.product-economy-toolbar select{min-height:2.4rem}.product-economy-summary{display:grid;grid-template-columns:repeat(5,minmax(8rem,1fr));gap:.7rem;margin:1rem 0}.product-economy-summary>div{display:grid;gap:.22rem;padding:.85rem 1rem;border:1px solid #e5e7eb;border-radius:12px;background:#fafbff}.product-economy-summary span{color:#64748b;font-size:.72rem}.product-economy-summary strong{font-size:1.05rem}
.product-economy-note{padding:.65rem .8rem;border-left:3px solid #60a5fa;background:#eff6ff}.product-economy-scroll{max-height:calc(100vh - 25rem);overflow:auto;border:1px solid #e5e7eb;border-radius:12px}.product-economy-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:.76rem}.product-economy-table th,.product-economy-table td{padding:.62rem .7rem;border-right:1px solid #edf0f4;border-bottom:1px solid #edf0f4;white-space:nowrap;text-align:right}.product-economy-table th{position:sticky;top:2.05rem;z-index:3;color:#334155;background:#f8fafc}.product-economy-table .product-economy-groups th{top:0;color:#fff;text-align:center;background:#334155}.product-economy-table th:first-child,.product-economy-table td:first-child,.product-economy-table th:nth-child(2),.product-economy-table td:nth-child(2){text-align:left}.product-economy-table tbody tr:hover td{background:#f8faff}.product-economy-table .pe-product-name{max-width:20rem;overflow:hidden;text-overflow:ellipsis}.pe-mp{padding:.18rem .42rem;border-radius:999px;font-size:.65rem;font-weight:800}.pe-mp-ozon{color:#1d4ed8;background:#dbeafe}.pe-mp-wildberries{color:#a21caf;background:#fae8ff}.product-economy-table .is-profit{color:#15803d}.product-economy-table .is-loss{color:#dc2626}
@media(max-width:900px){.product-economy-summary{grid-template-columns:repeat(2,1fr)}.product-economy-hero-icon{display:none}}
.wb-sku-line {
  display: block;
  margin-top: .18rem;
  color: var(--muted, #6b7280);
  font-size: .72rem;
  font-weight: 500;
  white-space: nowrap;
}
.rank-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 30px;margin-bottom:18px;border-radius:24px;color:#fff;background:linear-gradient(120deg,#172554,#1d4ed8 58%,#7c3aed);box-shadow:0 18px 40px rgba(29,78,216,.22)}
.rank-hero h2{margin:5px 0 6px;font-size:clamp(26px,3vw,40px)}.rank-hero p{margin:0;max-width:720px;color:#dbeafe}.rank-hero .calculator-kicker{color:#bfdbfe}
.rank-hero-badge{min-width:150px;padding:15px 18px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(255,255,255,.1);text-align:center}.rank-hero-badge strong{display:block;font-size:32px}.rank-hero-badge span{font-size:12px;color:#dbeafe}
.rank-setup-card{padding:20px}.rank-section-title strong{display:block;font-size:18px}.rank-section-title small{color:var(--muted);font-size:13px}.rank-query-selectors{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.rank-product-select label,.rank-date-select label{display:grid;gap:5px;color:var(--muted);font-size:12px}.rank-product-select select,.rank-date-select input{max-width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:11px;background:var(--surface);color:var(--text);font-weight:700}.rank-product-select select{min-width:min(460px,65vw)}.rank-date-select{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.rank-date-select input{min-width:145px}.rank-period-note{margin:0;padding:0 18px 14px;color:var(--muted);font-size:12px}
.rank-setup-card--primary{margin-bottom:16px;border-color:#c7d2fe;background:linear-gradient(135deg,#fff,#f8faff);box-shadow:0 12px 30px rgba(79,70,229,.08)}
.rank-advanced-card{padding:0;margin-top:24px;overflow:hidden}.rank-advanced-card>details>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 21px;cursor:pointer;list-style:none;background:linear-gradient(135deg,#f8fafc,#f4f6fa)}.rank-advanced-card>details>summary::-webkit-details-marker{display:none}.rank-advanced-card>details>summary span>strong,.rank-advanced-card>details>summary span>small{display:block}.rank-advanced-card>details>summary span>strong{font-size:17px;color:var(--text)}.rank-advanced-card>details>summary span>small{margin-top:3px;color:var(--muted);font-size:12px}.rank-advanced-toggle{flex:0 0 auto;padding:8px 13px;border:1px solid #d7deea;border-radius:10px;background:#fff;color:#4f46e5;font-size:12px}.rank-advanced-card details[open] .rank-advanced-toggle::before{content:'Свернуть';font-size:12px}.rank-advanced-card details[open] .rank-advanced-toggle{font-size:0}.rank-advanced-card details[open]>summary{border-bottom:1px solid var(--border)}.rank-advanced-body{padding:20px}.rank-advanced-body .rank-import-card{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid var(--border)}
.rank-form-grid{display:grid;grid-template-columns:1fr 1.7fr 1.5fr 1fr auto;gap:12px;align-items:end;margin-top:16px}.rank-form-grid label,.rank-actions label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.rank-form-grid select,.rank-form-grid input,.rank-actions input{width:100%;min-height:42px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);padding:0 11px}.rank-primary{min-height:42px;background:#2563eb!important;color:#fff!important;border-color:#2563eb!important}
.rank-toolbar{display:flex;gap:10px;align-items:end;margin:16px 0}.rank-toolbar label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.rank-source-notice{margin:12px 0 16px;padding:12px 15px;border-radius:12px;border:1px solid #fde68a;background:#fffbeb;color:#92400e;font-size:13px}
.rank-grid{display:grid;gap:16px}.rank-card{padding:20px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 8px 24px rgba(15,23,42,.05)}.rank-card-head{display:flex;justify-content:space-between;gap:20px}.rank-card h3{margin:5px 0;font-size:17px}.rank-card-head p{margin:0;color:var(--muted);font-size:12px}.rank-keyword{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2ff;color:#4338ca;font-weight:700;font-size:13px}.rank-current{text-align:right}.rank-current small,.rank-current span{display:block;color:var(--muted);font-size:11px}.rank-current strong{display:block;margin:2px 0;font-size:22px}.rank-current.is-ok strong{color:#166534}
.rank-spark,.rank-empty-chart{width:100%;height:100px;margin:14px 0;border-radius:12px;background:linear-gradient(180deg,#f8fafc,#fff)}.rank-empty-chart{display:grid;place-items:center;color:var(--muted);font-size:12px}.rank-line{fill:none;stroke:#2563eb;stroke-width:3}.rank-dot{fill:#7c3aed}.rank-gridline{stroke:#e2e8f0;stroke-dasharray:4 5}
.rank-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:12px 0}.rank-metrics span{padding:10px;border-radius:10px;background:var(--soft,#f8fafc)}.rank-metrics small,.rank-metrics b{display:block}.rank-metrics small{font-size:11px;color:var(--muted)}.rank-metrics b{margin-top:3px;font-size:14px}.rank-actions{display:flex;align-items:end;gap:9px;padding-top:12px;border-top:1px solid var(--border)}.rank-actions label:first-child{max-width:140px}.rank-actions .rank-check{display:flex;align-items:center;gap:6px;padding-bottom:11px}.rank-actions .rank-check input{width:auto;min-height:auto}.rank-actions .danger{color:#b91c1c}
@media(max-width:1050px){.rank-form-grid{grid-template-columns:1fr 1fr}.rank-product-field{grid-column:span 2}.rank-metrics{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.rank-hero{align-items:flex-start;flex-direction:column;padding:22px}.rank-form-grid{grid-template-columns:1fr}.rank-product-field{grid-column:auto}.rank-card-head{flex-direction:column}.rank-current{text-align:left}.rank-metrics{grid-template-columns:1fr 1fr}.rank-actions{align-items:stretch;flex-direction:column}.rank-actions label:first-child{max-width:none}.rank-actions .rank-check{padding:4px 0}}

.repricer-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 1.35rem;margin-bottom:1rem;border-radius:20px;background:linear-gradient(135deg,#10243e,#173f5f);color:#fff}.repricer-hero h2{margin:.2rem 0;font-size:1.8rem}.repricer-hero p{margin:0;color:#d7e6f3}.repricer-lock{padding:.55rem .85rem;border:1px solid #7dd3a8;border-radius:999px;background:#0d5139;color:#d7ffea;font-weight:700}.repricer-toolbar{align-items:end;flex-wrap:wrap}.repricer-toolbar label{display:grid;gap:.3rem}.repricer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1rem;margin-top:1rem}.repricer-card-head,.repricer-prices{display:flex;justify-content:space-between;gap:1rem}.repricer-card-head small{display:block;color:var(--muted,#64748b);margin-top:.2rem}.repricer-state{border-radius:999px;padding:.3rem .6rem;font-size:.78rem;font-weight:800}.repricer-state.is-blocked{background:#fff2dc;color:#9a5a00}.repricer-state.is-ready{background:#dcfce7;color:#166534}.repricer-prices{margin:1rem 0;padding:1rem;border-radius:14px;background:#f6f8fb}.repricer-prices div{display:grid;gap:.15rem}.repricer-prices strong{font-size:1.25rem}.repricer-prices small,.repricer-prices span{color:#64748b}.repricer-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.repricer-rules label{display:grid;gap:.25rem;font-size:.78rem;color:#64748b}.repricer-rules input{width:100%}.repricer-blockers{padding:.7rem 1rem .7rem 1.8rem;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:.85rem}.repricer-ok{padding:.7rem;border-radius:12px;background:#f0fdf4;color:#166534}.repricer-save{width:100%;margin-top:.4rem}@media(max-width:700px){.repricer-hero{align-items:flex-start;flex-direction:column}.repricer-grid{grid-template-columns:1fr}.repricer-rules{grid-template-columns:repeat(2,1fr)}}
.repricer-lock{display:grid;gap:.1rem;text-align:center}.repricer-lock span{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.repricer-lock strong{font-size:.82rem}.repricer-explain{margin:0 0 1rem;border:1px solid #dbeafe;border-radius:15px;background:#f8fbff}.repricer-explain summary{padding:.85rem 1rem;cursor:pointer;color:#1e3a8a;font-weight:750}.repricer-explain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;padding:0 1rem 1rem}.repricer-explain-grid>div{display:grid;gap:.25rem;padding:.75rem;border:1px solid #e2e8f0;border-radius:11px;background:#fff}.repricer-explain-grid strong{font-size:.78rem}.repricer-explain-grid span{color:#64748b;font-size:.72rem;line-height:1.45}.repricer-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}.repricer-kpis>div{display:grid;gap:.18rem;padding:1rem;border:1px solid #dbe3ef;border-radius:15px;background:linear-gradient(145deg,#fff,#f8fafc)}.repricer-kpis span{color:#64748b;font-size:.75rem}.repricer-kpis strong{font-size:1.65rem}.repricer-kpis small{color:#94a3b8;font-size:.68rem}.repricer-kpis .is-good{border-color:#bbf7d0;background:#f0fdf4}.repricer-kpis .is-action{border-color:#bfdbfe;background:#eff6ff}.repricer-kpis .is-warn{border-color:#fde68a;background:#fffbeb}.repricer-table-card{padding:0!important;overflow:hidden}.repricer-table-scroll{overflow:auto}.repricer-table{width:100%;min-width:1080px;border-collapse:collapse}.repricer-table th{padding:.72rem .65rem;background:#f1f5f9;color:#475569;text-align:right;font-size:.68rem;white-space:nowrap}.repricer-table th:first-child,.repricer-table td:first-child{text-align:left}.repricer-table td{padding:.78rem .65rem;border-top:1px solid #edf2f7;text-align:right;font-size:.78rem;vertical-align:middle}.repricer-table td:first-child{max-width:23rem}.repricer-table td>small,.repricer-table td:first-child strong{display:block}.repricer-table td>small{margin-top:.15rem;color:#94a3b8;font-size:.65rem}.repricer-main-row:hover td{background:#f8fbff}.repricer-state.is-stable{background:#eef2f7;color:#475569}.repricer-open{padding:.42rem .62rem!important;border:1px solid #cbd5e1!important;border-radius:9px!important;background:#fff!important;color:#334155!important;box-shadow:none!important}.repricer-open:hover{border-color:#818cf8!important;color:#4f46e5!important}.repricer-delta.is-up{color:#166534!important}.repricer-delta.is-down{color:#b45309!important}.repricer-detail-row td{padding:0;background:#fafbff;text-align:left}.repricer-detail{padding:1rem 1.2rem;border-top:1px solid #c7d2fe;border-bottom:1px solid #c7d2fe}.repricer-detail-head{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.repricer-detail-head div{display:grid;gap:.15rem}.repricer-detail-head small,.repricer-detail-head>span{color:#64748b;font-size:.72rem}.repricer-detail-head>span{padding:.3rem .55rem;border-radius:999px;background:#eef2ff;color:#4338ca}.repricer-rules label{padding:.65rem;border:1px solid #e2e8f0;border-radius:11px;background:#fff;font-weight:700}.repricer-rules label small{color:#94a3b8;font-size:.64rem;font-weight:500}.repricer-rules input{box-sizing:border-box;margin-top:.18rem;padding:.55rem .6rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.repricer-blockers{padding:.75rem 1rem;margin:.8rem 0}.repricer-blockers ul{margin:.35rem 0 0;padding-left:1.2rem}.repricer-ok{display:flex;align-items:center;gap:.7rem;margin:.8rem 0}.repricer-ok span{color:#475569;font-size:.75rem}.repricer-detail-actions{display:flex;align-items:center;gap:.8rem}.repricer-detail-actions .repricer-save{width:auto;margin:0}.repricer-detail-actions small{color:#64748b}@media(max-width:1000px){.repricer-explain-grid,.repricer-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.repricer-explain-grid,.repricer-kpis{grid-template-columns:1fr}.repricer-rules{grid-template-columns:1fr}.repricer-detail-head,.repricer-detail-actions{align-items:stretch;flex-direction:column}}
.funnel-import-status{margin:.7rem 0;padding:.75rem 1rem;border-radius:12px;background:#eff6ff;color:#1e3a8a}.funnel-import-status.is-ok{background:#ecfdf5;color:#166534}.funnel-import-status.is-error{background:#fff1f2;color:#9f1239}
.funnel-import-proof{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem 1rem;margin:0 0 .85rem;padding:.72rem .9rem;border:1px solid #bbf7d0;border-radius:12px;background:#f0fdf4;color:#166534;font-size:.78rem}.funnel-import-proof span{overflow:hidden;color:#475569;text-overflow:ellipsis;white-space:nowrap}.funnel-import-proof b{padding:.25rem .5rem;border-radius:999px;background:#dcfce7;font-size:.7rem;white-space:nowrap}.funnel-import-proof.is-stale{border-color:#fde68a;background:#fffbeb;color:#92400e}.funnel-import-proof.is-stale b{background:#fef3c7}@media(max-width:850px){.funnel-import-proof{grid-template-columns:1fr}.funnel-import-proof span{white-space:normal}.funnel-import-proof b{width:max-content}}
.funnel-rank-picker{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0;padding:14px 16px;border:1px solid #dbeafe;border-radius:15px;background:linear-gradient(135deg,#f8fbff,#f4f3ff)}.funnel-rank-picker>label{width:100%;color:var(--muted);font-size:12px;font-weight:700}.funnel-query-picker{position:relative;width:min(560px,100%)}.funnel-query-button{display:flex!important;align-items:center;justify-content:space-between;width:100%;min-height:46px;padding:0 14px!important;border:1px solid #c7d2fe!important;border-radius:12px!important;background:#fff!important;color:#172554!important;box-shadow:0 5px 14px rgba(79,70,229,.08);font-weight:750;text-align:left}.funnel-query-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.funnel-query-button i{width:9px;height:9px;margin-left:14px;border-right:2px solid #6366f1;border-bottom:2px solid #6366f1;transform:rotate(45deg) translateY(-2px);transition:.18s}.funnel-query-button[aria-expanded="true"] i{transform:rotate(225deg) translate(-2px,-2px)}.funnel-query-menu{position:absolute;z-index:80;top:calc(100% + 7px);left:0;right:0;padding:9px;border:1px solid #dbe3ef;border-radius:15px;background:#fff;box-shadow:0 20px 45px rgba(15,23,42,.18)}.funnel-query-menu input{width:100%;padding:10px 12px;border:1px solid #dbe3ef;border-radius:10px;background:#f8fafc;color:var(--text);outline:none}.funnel-query-menu input:focus{border-color:#818cf8;box-shadow:0 0 0 3px rgba(99,102,241,.12)}.funnel-query-options{max-height:300px;margin-top:7px;overflow:auto}.funnel-query-options button{display:flex!important;align-items:center;justify-content:space-between;width:100%;padding:10px 11px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#334155!important;text-align:left;font-weight:600}.funnel-query-options button:hover{background:#eef2ff!important;color:#3730a3!important}.funnel-query-options button.is-selected{background:#e0e7ff!important;color:#3730a3!important}.funnel-query-options button b{color:#4f46e5}.funnel-query-options p{margin:8px;color:var(--muted);font-size:13px}
.funnel-query-options button[hidden]{display:none!important}
.rank-import-card{padding:20px;margin-bottom:16px}.rank-import-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px}.rank-import-actions span{color:var(--muted);font-size:13px}.rank-empty-analytics{padding:28px;margin:0 0 16px;border:1px dashed #cbd5e1;border-radius:18px;background:#f8fafc;display:flex;flex-direction:column;gap:6px}.rank-empty-analytics span{color:var(--muted)}
.rank-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.rank-kpis>div{padding:17px 18px;border:1px solid #dbe3ef;border-radius:16px;background:linear-gradient(145deg,#fff,#f7f9fc)}.rank-kpis span,.rank-query-head small{display:block;color:var(--muted);font-size:12px}.rank-kpis strong{display:block;margin-top:5px;font-size:22px}.rank-query-table-card{padding:0;overflow:hidden;margin-bottom:18px}.rank-query-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px}.rank-query-head input{width:min(320px,100%);border:1px solid #cbd5e1;border-radius:11px;padding:10px 12px}.rank-table-wrap{overflow:auto}.rank-query-table{width:100%;border-collapse:collapse;min-width:1050px}.rank-query-table th{padding:11px 10px;text-align:right;background:#f1f5f9;color:#475569;font-size:11px;white-space:nowrap}.rank-query-table th:first-child,.rank-query-table th:nth-child(2),.rank-query-table td:first-child,.rank-query-table td:nth-child(2){text-align:left}.rank-query-table td{padding:11px 10px;border-top:1px solid #edf2f7;text-align:right;font-size:13px}.rank-query-main:hover{background:#fafbff}.rank-diagnosis{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef2f7;color:#475569;font-size:11px;font-weight:700;white-space:nowrap}.rank-diagnosis.is-scale,.rank-diagnosis.is-protect{background:#dcfce7;color:#166534}.rank-diagnosis.is-conversion,.rank-diagnosis.is-ctr{background:#fee2e2;color:#991b1b}.rank-diagnosis.is-visibility{background:#fef3c7;color:#92400e}.rank-query-spark{width:150px;height:38px}.rank-query-spark polyline{fill:none;stroke:#6366f1;stroke-width:2.5}.rank-query-detail td{padding:0 12px 8px;background:#fbfcfe}.rank-query-detail summary{cursor:pointer;color:#4f46e5;font-size:12px}.rank-day-list{display:flex;gap:8px;overflow:auto;padding:10px 0}.rank-day-list span{min-width:150px;padding:8px;border-radius:9px;background:#fff;border:1px solid #e2e8f0;font-size:11px}.rank-day-list b{display:block;margin-bottom:3px}@media(max-width:800px){.rank-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.rank-query-head{align-items:stretch;flex-direction:column}}
.rank-product-picker{width:min(620px,72vw)}.rank-product-menu{z-index:120;max-height:none;overflow:visible}.rank-product-menu>input{width:100%!important;max-width:none!important;padding:.72rem .78rem!important;background:#f8fafc}.rank-product-options{max-height:18rem;margin-top:.35rem;overflow:auto}.rank-sort-button{display:inline-flex!important;align-items:center;justify-content:flex-end;gap:6px;padding:3px 0!important;border:0!important;background:transparent!important;color:inherit!important;font:inherit;font-weight:800;white-space:nowrap;box-shadow:none!important}.rank-query-table th:first-child .rank-sort-button,.rank-query-table th:nth-child(2) .rank-sort-button{justify-content:flex-start}.rank-sort-button span{color:#94a3b8;font-size:10px}.rank-sort-button:hover,.rank-sort-button.is-active{color:#4f46e5!important}.rank-sort-button.is-active span{color:#4f46e5}@media(max-width:800px){.rank-product-picker{width:100%}}
.portal-select-native{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;opacity:0!important;pointer-events:none!important}.portal-select{position:relative;display:inline-block;min-width:10rem;max-width:100%;vertical-align:middle}.portal-select-button{display:flex!important;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:2.65rem!important;height:auto!important;padding:.55rem .75rem!important;border:1px solid #d7dbe5!important;border-radius:11px!important;background:#fff!important;color:#172033!important;text-align:left;box-shadow:0 2px 7px rgba(15,23,42,.04)!important}.portal-select-button:hover{border-color:#a5b4fc!important;background:#fafaff!important}.portal-select-button:focus{outline:3px solid rgba(99,102,241,.14);border-color:#6366f1!important}.portal-select-button:disabled{cursor:not-allowed;opacity:.6}.portal-select-button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:inherit;font-weight:650}.portal-select-button>i{width:.5rem;height:.5rem;flex:0 0 auto;margin-right:.18rem;border-right:2px solid #64748b;border-bottom:2px solid #64748b;transform:rotate(45deg) translateY(-2px);transition:transform .18s}.portal-select.is-open .portal-select-button>i{transform:rotate(225deg) translate(-2px,-2px)}.portal-select-menu{position:absolute;z-index:250;top:calc(100% + .42rem);left:0;min-width:100%;width:max-content;max-width:min(34rem,85vw);padding:.42rem;border:1px solid #dfe3eb;border-radius:14px;background:#fff;box-shadow:0 20px 48px rgba(15,23,42,.2)}.portal-select-search{width:100%!important;min-width:0!important;margin:0 0 .35rem!important;padding:.68rem .72rem!important;border:1px solid #d7dbe5!important;border-radius:10px!important;background:#f8fafc!important;color:var(--text)!important;outline:none}.portal-select-search:focus{border-color:#818cf8!important;box-shadow:0 0 0 3px rgba(99,102,241,.12)!important}.portal-select-options{max-height:19rem;overflow:auto}.portal-select-option{display:flex!important;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:2.55rem;padding:.58rem .68rem!important;border:0!important;border-radius:9px!important;background:#fff!important;color:#273449!important;text-align:left;box-shadow:none!important}.portal-select-option[hidden]{display:none!important}.portal-select-option:hover{background:#f5f3ff!important;color:#3730a3!important}.portal-select-option.is-selected{background:#eef2ff!important;color:#3730a3!important}.portal-select-option>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-select-option>b{color:#4f46e5}.portal-select-option:disabled{opacity:.5}@media(max-width:650px){.portal-select{width:100%;min-width:0}.portal-select-menu{right:0;width:100%;max-width:none}}
.repricer-table{min-width:1320px}.repricer-margin.is-positive{color:#15803d}.repricer-margin.is-negative{color:#dc2626}.repricer-no-ads{color:#94a3b8}
.calculator-fields label>small{margin-top:-.12rem;color:#7c8595;font-size:.68rem;font-weight:500}.calculator-low-tariff{display:grid;gap:.22rem;margin:.85rem 0;padding:.75rem .85rem;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e3a8a}.calculator-low-tariff strong{font-size:.82rem}.calculator-low-tariff span{color:#475569;font-size:.72rem}
.ms-connect-card{padding:1.35rem;border-color:#dbeafe;background:linear-gradient(145deg,#fff,#f8fbff)}.ms-connect-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.ms-connect-head h3{margin:0 0 .3rem;font-size:1.25rem}.ms-connect-head p{margin:0}.ms-status-badge{padding:.42rem .7rem;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.75rem;font-weight:800}.ms-status-badge.is-ok{background:#dcfce7;color:#166534}.ms-connect-grid{display:grid;grid-template-columns:2fr 1.35fr 1fr 1.25fr 1.25fr;gap:.85rem;margin-top:1.2rem}.ms-connect-grid>label{display:grid;align-content:start;gap:.35rem;color:#64748b;font-size:.75rem;font-weight:700}.ms-connect-grid input,.ms-connect-grid select{width:100%;min-height:2.75rem;padding:.65rem .75rem;border:1px solid #d7deea;border-radius:11px;background:#fff;color:#172033}.ms-token-wrap{display:flex}.ms-token-wrap input{border-radius:11px 0 0 11px}.ms-eye{min-height:2.75rem!important;padding:.55rem .7rem!important;border-left:0!important;border-radius:0 11px 11px 0!important;background:#f8fafc!important;color:#475569!important;font-size:.72rem}.ms-actions{margin-top:1rem;flex-wrap:wrap}.ms-actions .primary{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important}@media(max-width:1050px){.ms-connect-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.ms-connect-head{flex-direction:column}.ms-connect-grid{grid-template-columns:1fr}}
