/* МП●Кашалот 2026 UI system. This file intentionally wins over legacy layers. */
:root {
  --ocean-950:#06151f; --ocean-900:#071722; --ocean-850:#0a202d; --ocean-800:#0d2633;
  --blue-600:#2563eb; --blue-700:#1d4ed8; --cyan-500:#22c7f2; --coral-500:#ff6b4a;
  --green-500:#25c98b; --amber-500:#f5b942; --red-500:#f05252;
  --surface:#fff; --canvas:#f4f7f9; --text:#15242d; --muted:#687b86; --line:#dde5ea;
  --r-sm:8px; --r-md:12px; --r-lg:16px; --shadow:0 1px 2px #0717220a,0 10px 28px #0717220c;
}
*{box-sizing:border-box}
body{background:var(--canvas);color:var(--text)}
#cabinet{grid-template-columns:264px minmax(0,1fr);min-height:100dvh}
#cabinet>aside{position:sticky;top:0;height:100dvh;padding:22px 14px 16px;background:linear-gradient(180deg,var(--ocean-950),var(--ocean-800));border-right:1px solid #75dfff1c;overflow:auto}
#cabinet>aside>.logo{display:flex;align-items:center;min-height:58px;padding:0 8px;color:transparent;font-size:0;background:url('/assets/brand/logo.svg') left center/230px auto no-repeat}
#cabinet>aside nav{display:grid;gap:4px;margin:24px 0}
#cabinet>aside nav:before{content:"РАБОЧЕЕ ПРОСТРАНСТВО";padding:0 12px 8px;color:#5f7e8d;font-size:10px;font-weight:800;letter-spacing:.12em}
#cabinet>aside nav button{display:flex;align-items:center;gap:11px;width:100%;min-height:42px;padding:9px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:#9eb7c2;font-size:13px;font-weight:650;text-align:left}
#cabinet>aside nav button:hover{background:#77dfff12;color:#f2fbff}
#cabinet>aside nav button.active{background:linear-gradient(90deg,#2563ebdb,#168bc4b8);border-color:#5edcff38;color:#fff;box-shadow:0 8px 18px #0003}
.ui-icon{width:19px;height:19px;min-width:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#cabinet>aside .secondary,#cabinet>aside .logout{width:100%;margin-top:6px;min-height:40px}
main{width:100%;max-width:1680px;padding:28px 34px 46px}
#cabinet > main > header{position:sticky;top:0;z-index:20;margin:-28px -34px 0;padding:22px 34px 18px;background:#f4f7f9e8;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
#cabinet > main > header h1{font-size:27px;letter-spacing:-.035em}
.notification-button{display:grid;place-items:center}
.notification-button>.ui-icon{width:20px;height:20px}
.online{font-weight:700}
.view>.toolbar:first-child{margin-top:22px}
.toolbar h2{margin:0 0 5px;font-size:23px;letter-spacing:-.025em}.toolbar p{margin:0;color:var(--muted)}
.panel,.stats article{border:1px solid var(--line)!important;border-radius:var(--r-lg)!important;background:var(--surface)!important;box-shadow:var(--shadow)!important}
.primary,.secondary,.table-action{min-height:38px;border-radius:var(--r-sm)!important;font-size:13px}
.primary{border:1px solid #4c83f1!important;background:linear-gradient(135deg,var(--blue-600),var(--blue-700))!important;color:#fff!important;box-shadow:0 5px 14px #2563eb29!important}
.primary:hover{filter:brightness(.96)}
.secondary{border:1px solid var(--line)!important;background:#fff!important;color:#29424e!important;box-shadow:0 1px 2px #0717220a}
.secondary:hover{border-color:#bdd4df!important;background:#f3f8fa!important}
input,select,textarea{min-height:42px;border:1px solid var(--line)!important;border-radius:var(--r-sm)!important;background:#fff;color:var(--text)}
input:hover,select:hover,textarea:hover{border-color:#b9cbd4!important}
input:focus,select:focus,textarea:focus{border-color:var(--cyan-500)!important;box-shadow:0 0 0 3px #22c7f22c!important}
input:disabled,select:disabled,textarea:disabled,button:disabled{cursor:not-allowed;opacity:.56}
.table-wrap{position:relative;max-width:100%;overflow:auto;border:1px solid var(--line)!important}
.table-wrap table{min-width:760px;border-collapse:separate;border-spacing:0}
thead th{position:sticky;top:0;z-index:4;padding:11px 13px;background:#f7fafb!important;border-bottom:1px solid var(--line)!important;color:#5b727d;font-size:11px;letter-spacing:.035em;text-transform:uppercase}
tbody td{padding:12px 13px;border-bottom:1px solid #eaf0f3!important;font-size:13px;vertical-align:middle}
tbody tr:last-child td{border-bottom:0!important}tbody tr:hover{background:#f2f8fb!important}
.status,.badge,[class*="status-"]{border-radius:999px!important;font-weight:750}
.search-field{position:relative;display:flex;align-items:center;min-width:min(320px,100%)}
.search-field .ui-icon{position:absolute;left:12px;color:#78909b}
.search-field input{width:100%;padding-left:40px}
.view-tools{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.view-tools .search-field{flex:0 1 340px}.view-tools .result-count{margin-left:auto;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.empty{min-height:244px!important;padding:28px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--text)!important;text-align:center}
.empty[hidden]{display:none!important}
.empty img{width:150px;height:150px;object-fit:contain;margin-bottom:3px}.empty strong{font-size:17px}.empty small{max-width:360px;color:var(--muted)}
.marketplace-strip{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 0}.marketplace-strip img{height:34px;width:auto}
.overview-hero{min-height:210px;padding:28px 30px!important;background:linear-gradient(125deg,#071722,#0b3550 60%,#12678a)!important}
.overview-hero:before{content:"";position:absolute;right:5%;bottom:0;width:230px;height:190px;background:url('/assets/empty-states/operations.png') center bottom/contain no-repeat;filter:drop-shadow(0 12px 24px #00131f80);opacity:.9}
.overview-hero>div{max-width:60%}.overview-hero-metric{margin-left:auto}
.overview-hero h2{font-size:30px}.overview-hero p{font-size:14px}
.overview-kpis>div{border-left:2px solid #d7eef6;padding-left:13px}
.kpi-label{color:var(--muted);font-size:12px}
.marketplace-logo{height:26px;max-width:135px;object-fit:contain}
.table-action{border:1px solid #dbe8ed!important;background:#edf4f7!important;color:#2a4c5b!important}
.table-action.danger{border-color:#ffd9da!important;background:#fff1f1!important;color:#b83f47!important}
dialog{border:1px solid var(--line)!important;border-radius:var(--r-lg)!important;box-shadow:0 28px 80px #07172242!important}dialog::backdrop{background:#071722a8;backdrop-filter:blur(3px)}
#toast{border-radius:10px!important}
@media(max-width:1050px){#cabinet{grid-template-columns:230px minmax(0,1fr)}#cabinet>aside>.logo{background-size:202px auto}main{padding-inline:22px}#cabinet > main > header{margin-inline:-22px;padding-inline:22px}.overview-hero:before{opacity:.5}}
@media(max-width:850px){#cabinet{display:block}#cabinet>aside{display:none}main{padding:16px 14px 92px}#cabinet > main > header{margin:-16px -14px 0;padding:15px 14px 13px}.overview-hero{min-height:0}.overview-hero:before{display:none}.overview-hero>div{max-width:none}.view-tools{align-items:stretch;flex-direction:column}.view-tools .search-field{flex:auto;width:100%}.view-tools .result-count{margin-left:0}.toolbar{align-items:flex-start;gap:12px}.toolbar>.actions{justify-content:flex-start}.panel{padding:14px!important}#mobileNav{background:linear-gradient(90deg,var(--ocean-950),var(--ocean-800))!important}#mobileNav button .ui-icon{width:21px;height:21px}#mobileNav button.active{background:linear-gradient(135deg,var(--blue-600),#1683bf)!important}}
@media(max-width:520px){.toolbar{display:grid}.toolbar>button,.toolbar>.actions{width:100%}.toolbar>.actions button{flex:1}.overview-hero{padding:20px!important}.overview-hero h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* SUP74: one grouped navigation for desktop and the mobile section picker. */
#cabinet>aside{overflow:hidden}
#cabinet>aside>.logo{flex-shrink:0}
#cabinet>aside nav{display:block;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;margin:18px 0 14px;padding-right:3px;scrollbar-width:thin;scrollbar-color:#365561 transparent}
#cabinet>aside nav:before{display:none}
#cabinet>aside nav button{justify-content:flex-start;gap:11px;min-height:46px;margin:2px 0;padding:8px 10px;font-size:15px;font-weight:600;line-height:1.25;color:#bed0d9}
#cabinet>aside nav button>.ui-icon{width:30px;height:30px;min-width:30px;padding:4px;background:#9bc8dc0c;border-radius:8px;color:#83b8d0}
#cabinet>aside nav button.active>.ui-icon{background:#ffffff17;color:#fff}
#cabinet>aside nav .nav-label{display:block;min-width:0}
#cabinet>aside nav .nav-label small{display:block;margin-top:3px;font-size:11px;font-weight:400;color:#8dabb9}
#cabinet>aside nav button.active small{color:#d9efff}
#cabinet>aside nav>button{margin-bottom:12px}
.nav-group{margin:0 0 7px}
.nav-group summary{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:34px;padding:7px 11px;list-style:none;cursor:pointer;color:#7693a3;font-size:11px;font-weight:700;letter-spacing:.055em;text-transform:uppercase;border-radius:8px;user-select:none}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group summary:hover{color:#d3e4ec;background:#a0d8f008}
.nav-group summary .ui-icon{width:14px;height:14px;min-width:14px;transition:transform .15s}
.nav-group[open] summary .ui-icon{transform:rotate(90deg)}
#cabinet>aside nav [data-nav-group="sales"] button:not(.active)>.ui-icon{color:#82b5ff}
#cabinet>aside nav [data-nav-group="logistics"] button:not(.active)>.ui-icon{color:#67cfe1}
#cabinet>aside nav [data-nav-group="money"] button:not(.active)>.ui-icon{color:#7ad9b5}
#cabinet>aside nav button:focus-visible,.nav-group summary:focus-visible{outline:2px solid var(--cyan-500);outline-offset:-2px}
#cabinet>aside>#changePassword{flex-shrink:0;background:#ffffff08!important;color:#a7bfcc!important;border-color:#ffffff12!important;font-size:12px}
#cabinet>aside>.logout{flex-shrink:0;margin-top:7px;background:#ffffff08;font-size:13px;font-weight:500}
#mobileMenuDialog{max-height:calc(100dvh - 28px);overflow:auto}
#mobileMenuItems{display:grid;grid-template-columns:1fr;gap:12px}
#mobileMenuItems .mobile-nav-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
#mobileMenuItems .mobile-nav-group h3{grid-column:1/-1;margin:6px 0 2px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
#mobileMenuItems button{background:#f4f7f9;color:var(--text);padding:11px 10px;display:flex;justify-content:flex-start;align-items:center;gap:9px;min-height:48px;margin:0;text-align:left;font-size:14px;font-weight:600;line-height:1.25}
#mobileMenuItems button .ui-icon{width:23px;height:23px;min-width:23px;color:#28779b}
#mobileMenuItems .nav-label{min-width:0}
#mobileMenuItems .nav-label small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:3px}
#mobileMenuItems button[aria-current="page"]{background:#e4f2fc;color:#1456a2;box-shadow:inset 3px 0 #2563eb}
#mobileMenuItems hr{width:100%;margin:3px 0;border:0;border-top:1px solid var(--line)}
@media(max-width:360px){#mobileMenuItems .mobile-nav-group{grid-template-columns:1fr}}

#mobileMenuItems > button[data-mobile-logout]{background:#fff0f1;color:#a92535}

/* SUP75: source context, secondary print documents and warehouse shortcuts. */
#orders > .toolbar { align-items:center; gap:10px; flex-wrap:wrap; }
#orders > .toolbar > div:first-child { flex:1 1 100%; }
.order-channel-tabs { display:flex; flex-wrap:wrap; gap:6px; padding-bottom:12px; border-bottom:1px solid var(--border,#dde5ea); }
.order-channel-tabs button { background:#edf2f6; color:#344955; font-size:15px; min-height:42px; padding:10px 18px; border:1px solid transparent; }
.order-channel-tabs button[aria-pressed="true"] { background:#e6f1ff; color:#1553b3; border-color:#93bdf8; font-weight:700; }
.order-context-note { margin:12px 0; color:#687b86; font-size:13px; line-height:1.5; }
.order-print-menu { position:relative; flex:0 0 auto; margin-left:auto; }
.order-print-menu > summary { padding:11px 15px; background:#edf2f6; border-radius:8px; color:#344955; cursor:pointer; font-size:14px; }
.order-print-menu > summary:focus-visible, .order-channel-tabs button:focus-visible { outline:2px solid #22c7f2; outline-offset:2px; }
.order-print-options { position:absolute; right:0; top:calc(100% + 8px); width:320px; max-width:calc(100vw - 48px); padding:16px; background:white; border:1px solid #dde5ea; border-radius:12px; box-shadow:0 10px 32px #07172226; z-index:50; }
.order-print-options > p { margin:0 0 12px; color:#687b86; font-size:12px; }
.order-print-option + .order-print-option { margin-top:14px; padding-top:14px; border-top:1px solid #edf2f6; }
.order-print-option button { width:100%; text-align:left; }
.order-print-option small { display:block; margin:6px 0 0; color:#687b86; font-size:12px; line-height:1.45; }
.warehouse-related { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0 0 18px; }
.warehouse-related span { flex:1 1 260px; color:#687b86; font-size:12px; }
@media(max-width:600px) {
  #orders > .toolbar > div:first-child { flex-basis:100%; }
  #orders > .toolbar > button, #orders > .toolbar > details { flex:1 1 140px; }
  .order-print-options { position:static; width:100%; max-width:none; margin-top:8px; box-shadow:none; }
  .order-print-menu[open] { flex-basis:100% !important; }
  .order-channel-tabs button { flex:1 1 130px; }
}

#orderWorkspaceControls .order-tabs button.active { background:#2563eb; color:#fff; }

/* SUP136: one visual language across the complete customer cabinet. */
:root{
  --surface-subtle:#f8fafb;--surface-tint:#f1f7fa;--line-strong:#cbd9e0;
  --text-soft:#49616d;--shadow-sm:0 1px 2px #0717220a;--shadow-md:0 8px 28px #0717220d;
  --control-h:42px;--content-gap:18px;color-scheme:light;
}
html,body{max-width:100%;min-height:100%;overflow-x:clip}
body{font-size:14px;letter-spacing:-.005em}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-h);padding:9px 14px}
button:active{transform:translateY(1px)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue-600);outline-offset:2px;box-shadow:none!important}

/* Public authentication */
#auth{grid-template-columns:minmax(420px,.9fr) minmax(460px,1.1fr);background:linear-gradient(135deg,#eaf2f7,#f8fbfd 58%,#edf5f8)}
#auth .hero{min-height:100dvh;padding:clamp(42px,7vw,96px);background:radial-gradient(circle at 18% 26%,#194b6d 0,transparent 30%),linear-gradient(145deg,#06151f,#0d3044 64%,#115c78);border:0}
#auth .hero:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 42%,#22c7f20d);pointer-events:none}
#auth .hero:after{right:-175px;bottom:-215px;width:500px;height:500px;box-shadow:0 0 0 62px #22c7f20b,0 0 0 124px #22c7f207}
#auth .hero .logo{width:260px;height:62px;color:transparent;font-size:0;background:url('/assets/brand/logo.svg') left center/contain no-repeat}
.auth-hero-copy{margin:auto 0}
#auth .hero h1{max-width:700px;margin:48px 0 20px;font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.055em}
#auth .hero p{max-width:610px;color:#c8dbe4;font-size:18px;line-height:1.55}
.auth-benefits{display:grid;gap:13px;margin:34px 0 0;padding:0;list-style:none;color:#e6f4f9;font-weight:650}
.auth-benefits li{display:flex;align-items:center;gap:11px}
.auth-benefits li:before{content:"✓";display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#22c7f21e;color:#56daf7;font-weight:900}
#auth .hero small{margin-top:44px;color:#91dfef!important;font-weight:700}
.auth-card{align-self:center;margin:40px auto;width:min(440px,calc(100% - 48px));padding:34px 36px 30px;border-radius:18px;box-shadow:0 22px 70px #0717221a}
.auth-card-brand{display:none;height:46px;margin:0 auto 22px;background:url('/assets/brand/logo.svg') center/contain no-repeat;filter:brightness(.27) saturate(.9)}
.auth-card h2{margin:5px 0 4px;font-size:25px;letter-spacing:-.035em}
.auth-intro{margin:0 0 20px;color:var(--muted)}
.auth-card .tabs{gap:22px;margin-bottom:24px}
.auth-card .tabs button{min-height:38px;padding:7px 1px;border-radius:0}
.auth-card label{margin:14px 0;color:var(--text-soft)}
.auth-card input{height:44px;margin-top:7px}
.auth-card .submit{height:44px;margin-top:14px}

/* Application shell */
#cabinet{grid-template-columns:236px minmax(0,1fr);background:var(--canvas)}
#cabinet>aside{padding:18px 12px 14px;background:linear-gradient(180deg,#06151f,#0b2634);box-shadow:10px 0 35px #0717220b}
#cabinet>aside>.logo{min-height:54px;padding:0 9px;background-size:205px auto}
#cabinet>aside nav{margin:13px 0 10px;padding-right:2px}
#cabinet>aside nav button{min-height:40px;margin:1px 0;padding:6px 9px;border-radius:9px;font-size:13px}
#cabinet>aside nav button>.ui-icon{width:28px;height:28px;min-width:28px;padding:4px;border-radius:7px}
.nav-group{margin-bottom:4px}
.nav-group summary{min-height:30px;padding:6px 10px;font-size:10px}
#cabinet>aside>#changePassword,#cabinet>aside>.logout{min-height:38px}
main{max-width:none;min-width:0;padding:24px clamp(20px,2.6vw,38px) 44px}
#cabinet>main>header{min-height:76px;margin:-24px clamp(-38px,-2.6vw,-20px) 0;padding:17px clamp(20px,2.6vw,38px) 14px;background:#f4f7f9f2}
#cabinet>main>header h1{margin:1px 0 3px;font-size:25px;line-height:1.15}
#identity{margin:0;color:var(--muted);font-size:12px}
.header-actions{align-items:center;gap:9px}
.organization-switcher{min-width:190px}
.organization-switcher select{height:40px;min-height:40px;border-radius:9px}
.notification-button{width:40px;height:40px;padding:0;border-radius:10px}
.online{display:inline-flex;align-items:center;min-height:38px;padding:7px 11px;font-size:12px;white-space:nowrap}
.view{min-width:0}
.view>.toolbar:first-child{margin:22px 0 16px}
.toolbar{gap:16px;margin:22px 0 14px}
.toolbar>div:first-child{min-width:0}
.toolbar h2{font-size:22px;line-height:1.2}
.toolbar h3{margin:0;font-size:18px}
.toolbar p{margin-top:4px;font-size:13px;line-height:1.45}
.toolbar .actions{gap:8px}

/* Shared surfaces and controls */
.panel,.stats article,.dashboard-operation,.dashboard-kpi,.promotion-card,.product-card-list>article,.inventory-draft-card,.inventory-session-card{border:1px solid var(--line)!important;border-radius:12px!important;background:var(--surface)!important;box-shadow:var(--shadow-sm)!important}
.panel{max-width:none;padding:18px}
.panel+.panel{margin-top:16px}
.panel>h3:first-child{margin:0 0 15px;font-size:16px}
.primary,.secondary,.table-action{min-height:38px;padding:8px 13px;border-radius:8px!important}
.primary{box-shadow:0 4px 11px #2563eb22!important}
.secondary{background:#fff!important}
.table-action{min-height:33px;padding:6px 10px;background:#f0f5f7!important}
.table-action:hover{background:#e5eff3!important}
label{color:var(--text-soft)}
input,select,textarea{min-height:var(--control-h);padding:9px 11px;border-color:var(--line)!important;border-radius:8px!important}
input[type="checkbox"],input[type="radio"]{display:inline-block;flex:0 0 auto;width:18px;height:18px;min-height:18px;margin:0;padding:0;vertical-align:middle;accent-color:var(--blue-600)}
textarea{line-height:1.45}
.field-grid{gap:0 14px}
.field-grid label{min-width:0}
.tabs,.analytics-tabs,.order-tabs,.product-tabs,.order-channel-tabs{gap:5px}
.tabs button,.analytics-tabs button,.order-tabs button,.product-tabs button,.order-channel-tabs button{min-height:38px;border-radius:8px;font-size:13px}
.analytics-tabs button.active,.order-tabs button.active,.product-tabs button.active,.order-channel-tabs button[aria-pressed="true"]{border-color:#b9d4fb!important;background:#e9f2ff!important;color:#1759b8!important;box-shadow:inset 0 -2px #2563eb!important}
.view-tools{padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow-sm)}
.view-tools input{height:38px;min-height:38px}
.stats,.dashboard-kpis{gap:12px}
.stats article{padding:17px}
.stats strong{font-size:28px;margin:10px 0}
.dashboard-kpi{min-height:112px;padding:16px}
.dashboard-kpi strong{font-size:25px}
.dashboard-operation{min-height:94px;padding:14px}
.dashboard-operation:hover,.dashboard-kpi:hover{border-color:#bcd9e3!important;box-shadow:var(--shadow-md)!important}

/* Dense data tables */
.table-wrap{max-width:100%;border-radius:11px!important;background:#fff;overscroll-behavior-inline:contain;scrollbar-color:#c4d5dc transparent}
.panel.table-wrap{padding:0}
.panel.table-wrap>h3,.panel.table-wrap>.toolbar,.panel.table-wrap>.view-tools{margin:0;padding:16px 17px}
.panel.table-wrap>.toolbar{border-bottom:1px solid var(--line)}
.table-wrap table{width:100%;min-width:760px}
thead th{padding:10px 12px;background:#f7fafb!important;color:#59707c;font-size:10px;letter-spacing:.055em;white-space:nowrap}
tbody td{padding:11px 12px;font-size:13px}
tbody tr:nth-child(even){background:#fbfcfd}
tbody tr:hover{background:#f1f7fa!important}
tbody tr:focus-within{background:#edf7fb!important;box-shadow:inset 3px 0 var(--cyan-500)}
.row-actions{gap:6px}
.status,.badge,[class*="status-"]{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;line-height:1.2}
.empty{min-height:210px!important;border:0!important;background:transparent!important}
.empty img{width:124px;height:124px}
.empty strong{font-size:16px}
.stack-list{display:grid;gap:10px}
.stack-list>*{border:1px solid var(--line);border-radius:10px;background:var(--surface-subtle)}

/* Dialogs and messages */
dialog{max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);padding:0;overflow:auto}
dialog{padding:22px;overflow-wrap:anywhere;overscroll-behavior:contain}
dialog>form,dialog>.dialog-wide,dialog>div{padding:0;min-width:0;max-width:100%}
dialog>p,dialog>h3{margin:16px 0}
dialog>.table-wrap{max-width:100%;overflow-x:auto}
dialog h2{margin:0 0 16px;font-size:22px;letter-spacing:-.025em}
.dialog-actions{gap:8px;margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
#toast{max-width:min(420px,calc(100vw - 24px));padding:12px 15px;box-shadow:0 16px 38px #0717222b!important}
[role="status"].error,.settings-save-state.error{border-color:#f1c6c9;background:#fff1f2;color:#a92535}

/* Existing specialist workspaces inherit the same scale and palette. */
.product-workspace,.inventory-workspace,.inventory-sessions-workspace,.advanced-analytics{min-width:0;background:transparent}
.product-page-head h2,.inventory-page-head h2,.inventory-session-header h2{font-size:25px;color:var(--text)}
.product-hero-photo,.product-price-grid>div,.product-price-grid>label,.product-composition-summary>div,.inventory-summary>div,.promotion-metrics>div{border:1px solid #e5ecef;background:var(--surface-subtle)}
.product-tabs button.active{background:#e9f2ff;color:#1759b8;border-color:#b9d4fb}
.inventory-sessions-workspace{padding:22px 0 94px}
.inventory-session-header{margin-bottom:16px}
.inventory-session-header p{font-size:14px;color:var(--muted)}
.inventory-session-header .primary,.inventory-session-review-actions .primary{min-height:42px;padding:8px 15px;border-radius:8px}
.inventory-session-kpis{gap:12px;margin:16px 0}
.inventory-session-kpis>div{min-height:104px;padding:17px;border-color:var(--line);border-radius:12px;box-shadow:var(--shadow-sm)}
.inventory-session-kpis strong{font-size:27px;color:var(--text)}
.inventory-session-kpis small{font-size:13px;color:var(--text-soft)}
.inventory-session-kpi-icon{right:16px;top:16px;width:40px;height:40px;font-size:20px}
.inventory-session-list-filters{padding:14px;border-color:var(--line);border-radius:12px;box-shadow:var(--shadow-sm)}
.inventory-session-list-filters input,.inventory-session-list-filters select{min-height:42px;border-color:var(--line);border-radius:8px}
.inventory-session-table-wrap{border-radius:12px;box-shadow:var(--shadow-sm)}
.inventory-session-table-wrap th{font-size:11px}
.inventory-session-table-wrap td{padding:12px;color:var(--text);font-size:13px}
.inventory-session-status,.inventory-session-tag{padding:6px 9px}
.promotion-card{padding:16px}
.promotion-row{border-color:var(--line)!important}
.advanced-analytics{padding:0}

/* Smaller dashboard hero: data remains the main content. */
.overview{gap:12px}
.overview-hero{min-height:160px;padding:22px 24px!important;border-radius:14px!important}
.overview-hero:before{right:4%;width:175px;height:145px;opacity:.62}
.overview-hero h2{font-size:25px}
.overview-hero-metric strong{font-size:38px}
.dashboard-toolbar{padding:16px 18px}
.dashboard-main-grid{gap:12px}
.dashboard-chart{min-height:190px}
.dashboard-chart svg{height:190px}

/* Responsive contract: page never becomes the horizontal scroller. */
@media(max-width:1100px){
  #cabinet{grid-template-columns:218px minmax(0,1fr)}
  #cabinet>aside>.logo{background-size:188px auto}
  .header-actions{flex-wrap:wrap;justify-content:flex-end}
  .online{display:none}
  .product-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-price-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:850px){
  #auth{display:grid;grid-template-columns:1fr;min-height:100dvh;padding:24px 0;background:linear-gradient(160deg,#071722 0,#0c344a 34%,#eef5f8 34%)}
  #auth .hero{display:none}
  .auth-card{width:min(460px,calc(100% - 28px));margin:auto;padding:27px 24px}
  .auth-card-brand{display:block}
  #cabinet{display:block;padding-bottom:74px}
  main{padding:14px 13px 94px}
  #cabinet>main>header{position:relative;min-height:auto;margin:-14px -13px 0;padding:14px 13px 12px;align-items:flex-start}
  #cabinet>main>header h1{font-size:23px}
  .header-actions{width:auto;max-width:62%;margin:0;justify-content:flex-end}
  .organization-switcher{min-width:min(220px,100%)}
  .notification-button{width:40px;flex:0 0 40px}
  .toolbar{align-items:stretch;flex-wrap:wrap}
  .toolbar>div:first-child{flex:1 1 240px}
  .toolbar>.actions{width:100%;justify-content:flex-start}
  .toolbar>.actions button{flex:1 1 145px}
  .panel{padding:14px}
  .panel.table-wrap{padding:0}
  .view-tools{align-items:stretch;padding:10px}
  .overview-hero{padding:18px!important}
  .overview-hero h2{font-size:22px}
  .overview-hero:before{display:none}
  .dashboard-toolbar{padding:14px}
  #mobileNav{border-top:1px solid #d8e4e9;background:#ffffffed!important;box-shadow:0 -8px 28px #0717221c!important;backdrop-filter:blur(16px)}
  #mobileNav button{color:#58707c!important}
  #mobileNav button .ui-icon{color:#52717f}
  #mobileNav button.active{background:#e7f1ff!important;color:#1554aa!important;box-shadow:inset 0 -3px #2563eb}
  #mobileNav button.active .ui-icon{color:#2563eb}
  #mobileMenuOpen{border-left-color:#dbe5ea!important}
  .product-page-head{grid-template-columns:1fr auto}
  .product-page-head>a{grid-row:1}
  .product-page-actions{grid-column:1/-1;justify-content:flex-end}
  .inventory-sessions-workspace{padding-top:14px}
}
@media(max-width:600px){
  :root{--control-h:44px}
  .auth-card{padding:24px 19px}
  #cabinet>main>header{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}
  #cabinet>main>header>div:first-child{min-width:0}
  .header-actions{max-width:none;width:100%;flex-wrap:nowrap}
  .organization-switcher{min-width:0;flex:1;width:auto}
  .organization-switcher select{max-width:none;width:100%}
  .notification-button{grid-column:2;grid-row:1}
  .toolbar>div:first-child{flex-basis:100%}
  .toolbar>button{width:100%}
  .toolbar>.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .toolbar>.actions button{width:100%;min-width:0}
  .field-grid,.product-field-grid,.product-price-grid{grid-template-columns:1fr}
  .field-grid .wide,.product-field-grid .wide{grid-column:auto}
  .stats,.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  #finance .stats{grid-template-columns:1fr}
  .stats article,.dashboard-kpi{min-width:0}
  .stats strong,.dashboard-kpi strong{font-size:21px;overflow-wrap:anywhere}
  .help-nav{grid-template-columns:1fr}
  .table-wrap{margin-inline:0}
  .empty{min-height:185px!important;padding:20px 14px!important}
  dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}
  dialog{padding:17px}
  dialog>form,dialog>.dialog-wide,dialog>div{padding:0}
  .dialog-actions{position:sticky;bottom:-17px;margin-inline:-17px;padding:12px 17px 0;background:#fff}
  .dialog-actions button{flex:1 1 130px}
  .inventory-session-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inventory-session-kpis>div{min-width:0}
}
@media(max-width:390px){
  main{padding-inline:10px}
  #cabinet>main>header{margin-inline:-10px;padding-inline:10px}
  .toolbar>.actions{grid-template-columns:1fr}
  .stats,.dashboard-kpis{gap:8px}
  .stats article,.dashboard-kpi{padding:12px}
  .inventory-session-kpis{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){button:active{transform:none}}
/* Sonar follows the shared dialog inset and uses the available dialog width. */
#discountSonarDialog .form-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
#discountSonarDialog .sonar-enabled-toggle{display:flex;align-items:center;gap:10px;grid-column:1/-1}
#discountSonarDialog .sonar-enabled-toggle input{flex:none;width:18px;height:18px;margin:0}
#discountSonarDialog .sonar-enabled-state,#discountSonarDialog .dialog-actions{grid-column:1/-1}
#discountSonarDialog .sonar-enabled-state{margin:0;color:var(--mp-text-secondary);font-size:13px}
@media(max-width:600px){#discountSonarDialog .form-grid{grid-template-columns:minmax(0,1fr)}}
dialog>form{max-height:none;overflow:visible}
.sonar-quick-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sonar-control{position:relative;display:inline-flex}.sonar-quick-toggle{display:inline-flex;align-items:center;gap:8px;padding:9px 10px;background:#edf4f7;color:#2a4c5b;white-space:nowrap}.sonar-switch-track{width:34px;height:20px;background:#94a3b8;border-radius:12px;position:relative;flex:none}.sonar-switch-track::after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;background:#fff;border-radius:50%;transition:transform .15s}.sonar-quick-toggle[aria-checked="true"] .sonar-switch-track{background:#2563eb}.sonar-quick-toggle[aria-checked="true"] .sonar-switch-track::after{transform:translateX(14px)}.sonar-tooltip{display:none;position:absolute;top:calc(100% + 7px);left:0;z-index:60;width:min(280px,calc(100vw - 40px));padding:10px 12px;border-radius:9px;background:#15242d;color:#fff;font-size:12px;line-height:1.45;font-weight:400;box-shadow:0 8px 24px #07172230}.sonar-control:hover>.sonar-tooltip,.sonar-control:focus-within>.sonar-tooltip{display:block}#sonarQuickRule{width:auto;max-width:240px;margin:0;font-size:12px;padding:8px}
@media(max-width:600px){.sonar-control:last-child .sonar-tooltip{left:auto;right:0}#sonarQuickRule{max-width:100%}}
