@font-face{font-family:Manrope;src:url('/assets/Manrope-Variable.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
/* Pulse theme — night "observatory" first, day theme mirrored. Every colour in this file is a token. */
:root{color-scheme:dark;
 --bg:#090D1A;--surface:#10162A;--surface-2:#161D36;--line:#232C49;--fg:#E8ECF7;--muted:#97A3C4;--faint:#4E5A7E;
 --mint:#4FE0C1;--coral:#FF7E70;--amber:#FFC46B;--sky:#8AABFF;--k1:#8AABFF;--k2:#FFC46B;--on-accent:#05221C;
 --ease-out:cubic-bezier(0.23,1,0.32,1);--ease-in-out:cubic-bezier(0.77,0,0.175,1);
 --panel:var(--surface);--raised:var(--surface-2);--text:var(--fg);--green:var(--mint);--green-soft:var(--mint);--radius:22px;
 font-family:Manrope,'Segoe UI',Arial,sans-serif;font-size:15px;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){color-scheme:light;
 --bg:#F2F4FA;--surface:#FFFFFF;--surface-2:#EDF0F8;--line:#DADFEC;--fg:#0E1430;--muted:#4F5B7C;--faint:#B3BBD2;
 --mint:#0A8A74;--coral:#CF4336;--amber:#A0650A;--sky:#3456D4;--k1:#3456D4;--k2:#A0650A;--on-accent:#FFFFFF}}
:root[data-theme="light"]{color-scheme:light;
 --bg:#F2F4FA;--surface:#FFFFFF;--surface-2:#EDF0F8;--line:#DADFEC;--fg:#0E1430;--muted:#4F5B7C;--faint:#B3BBD2;
 --mint:#0A8A74;--coral:#CF4336;--amber:#A0650A;--sky:#3456D4;--k1:#3456D4;--k2:#A0650A;--on-accent:#FFFFFF}
:root[data-theme="dark"]{color-scheme:dark;
 --bg:#090D1A;--surface:#10162A;--surface-2:#161D36;--line:#232C49;--fg:#E8ECF7;--muted:#97A3C4;--faint:#4E5A7E;
 --mint:#4FE0C1;--coral:#FF7E70;--amber:#FFC46B;--sky:#8AABFF;--k1:#8AABFF;--k2:#FFC46B;--on-accent:#05221C}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-width:320px;background-image:none;background-repeat:no-repeat}[hidden]{display:none!important}
button,input,select,textarea{font:inherit;color:inherit}a,button,input,select,textarea,summary{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--green)}
button{cursor:pointer;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;min-height:46px;padding:12px 19px;font-weight:600;line-height:1.5;transition:background .15s,border-color .15s,box-shadow .15s}button:hover{background:var(--surface-2);border-color:var(--line);box-shadow:none}button:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}a{color:var(--green-soft);text-underline-offset:4px}
input,select,textarea{background:var(--surface);border:1px solid var(--line);border-radius:13px;min-height:48px;padding:12px 14px;width:100%;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--muted)}input:hover,select:hover,textarea:hover{border-color:var(--line)}input:focus,select:focus,textarea:focus{border-color:var(--green)}textarea{resize:vertical;min-height:96px}input[type=date]{min-width:0}label{display:grid;gap:9px;font-size:12px;font-weight:500;color:var(--muted);line-height:1.5}
h1,h2,h3,p{margin-top:0}h1{font-size:48px;font-weight:750;line-height:1.13;letter-spacing:-1.7px;margin-bottom:16px}h2{font-size:21px;font-weight:700;line-height:1.35;letter-spacing:-.45px}h3{font-size:16px;font-weight:700;line-height:1.5}p{line-height:1.8}small{font-size:12px;color:var(--muted);line-height:1.65}strong{font-weight:700}
.shell{min-height:100vh;padding-top:16px}.app-header{margin:0 18px;background:var(--bg);border:1px solid var(--line);border-radius:44px;padding:22px 28px;display:flex;align-items:center;gap:22px;box-shadow:none;min-height:94px;position:relative;z-index:1}.brand{display:flex;align-items:center;gap:9px;color:var(--fg);text-decoration:none;white-space:nowrap;flex-shrink:0}.brand-wb{font-size:32px;letter-spacing:-2px;font-weight:800;line-height:1}.brand-name{font-size:17px;font-weight:650;letter-spacing:-.55px;color:var(--fg)}.nav{display:flex;align-items:center;gap:3px;flex:1;min-width:0}.nav button{background:transparent;border:0;color:var(--muted);border-radius:99px;min-height:46px;padding:11px 13px;font-size:12px;white-space:nowrap;font-weight:650;box-shadow:none}.nav button.active{color:var(--mint);background:var(--surface-2);box-shadow:none}.nav button:hover{background:var(--surface);color:var(--fg)}.header-mode{flex-shrink:0}.main{width:min(1660px,100%);margin:auto;padding:0 44px 30px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:107px;margin-bottom:24px}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb span{color:var(--fg);margin-left:10px}.top-actions{display:flex;gap:14px;align-items:center}.top-actions select{width:195px;background:var(--surface);border-radius:99px;padding:10px 19px;min-height:46px}.top-actions label{display:flex;align-items:center;gap:15px}.field-caption{font-size:10px;letter-spacing:1.4px;font-weight:650;color:var(--muted)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 30px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.1px;color:var(--mint);margin-bottom:16px}.sub{font-size:14px;color:var(--muted);max-width:850px;margin-bottom:0;line-height:1.8}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface-2);color:var(--mint);border-radius:99px;padding:7px 12px;font-size:10px;font-weight:600;line-height:1.5;max-width:100%}.dot{width:5px;height:5px;border-radius:100%;background:currentColor;flex-shrink:0}.pill.good{color:var(--mint);background:var(--surface-2);border-color:color-mix(in srgb,var(--mint) 45%,var(--line))}.pill.warn{color:var(--amber);background:var(--surface-2);border-color:var(--line)}.pill.dim{color:var(--muted);background:var(--surface-2);border-color:var(--line)}.notice{display:flex;align-items:center;gap:14px;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:18px 23px;color:var(--muted);font-size:12px;line-height:1.8;margin-bottom:28px;box-shadow:none}.notice strong{color:var(--mint);font-weight:700}.notice>span{font-size:19px;color:var(--mint);flex-shrink:0}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:28px}.metric{display:block;min-height:183px;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:27px;padding:25px 26px;box-shadow:none;color:var(--text);min-width:0}.metric:hover{background:var(--surface-2);border-color:color-mix(in srgb,var(--mint) 45%,var(--line));box-shadow:none}.metric-label{display:flex;justify-content:space-between;gap:12px;font-size:12px;line-height:1.65;font-weight:600;color:var(--muted);min-height:38px}.metric-label [aria-hidden]{display:none}.metric-value{display:block;font-size:41px;line-height:1.1;font-weight:650;letter-spacing:-1.3px;font-variant-numeric:tabular-nums;margin:17px 0 13px;color:var(--fg)}.metric-value small{display:inline;font-size:12px;font-weight:500;letter-spacing:0;color:var(--muted)}.metric>small{display:block;font-size:11px;line-height:1.6;font-weight:400;color:var(--muted)}.grid-two{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,1fr);gap:24px;margin-bottom:26px;align-items:start}.grid-two>.panel{height:100%;margin-bottom:0}.panel{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-width:0;margin-bottom:26px;box-shadow:none}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}.panel-header h2{margin:0}.panel-header small{display:block;margin-top:7px;font-size:12px}.empty{min-height:218px;display:flex;align-items:center;justify-content:center;text-align:center;flex-direction:column;padding:26px 20px;border:1px solid var(--line);border-radius:21px;background:var(--surface);box-shadow:none;color:var(--muted)}.empty .glyph{display:none}.empty h3{font-size:15px;max-width:440px;margin-bottom:10px;color:var(--fg);font-weight:650;letter-spacing:-.1px}.empty p{max-width:450px;font-size:12px;line-height:1.9;margin:0 0 15px;color:var(--muted)}.empty.compact{min-height:165px}.cabinet-card{background:var(--surface);border:1px solid var(--line);border-radius:21px;padding:21px;margin-bottom:14px;box-shadow:none}.cabinet-card:last-child{margin-bottom:0}.cabinet-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.cabinet-head strong{font-size:14px;color:var(--fg);font-weight:650}.cabinet-data{display:flex;justify-content:space-between;gap:22px;margin-top:12px;font-size:11px;line-height:1.75;color:var(--muted)}.cabinet-data span:last-child{text-align:right;color:var(--muted);max-width:60%}.table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:20px}table{width:100%;min-width:650px;border-collapse:collapse;text-align:left;font-size:12px}th{padding:17px;color:var(--muted);background:var(--surface);border-bottom:1px solid var(--line);text-transform:uppercase;font-size:10px;font-weight:650;letter-spacing:.75px;line-height:1.7}td{padding:18px 17px;vertical-align:top;border-bottom:1px solid var(--line);line-height:1.75;color:var(--fg)}tbody tr:hover{background:color-mix(in srgb,var(--mint) 3%,transparent)}tr:last-child td{border-bottom:0}td small{display:block;margin-top:5px;font-size:11px}.product-cell{display:flex;align-items:center;gap:14px}.product-image{width:46px;height:56px;object-fit:contain;background:var(--surface-2);border-radius:11px;flex-shrink:0}.placeholder{display:grid;place-items:center;color:var(--muted);font-size:22px}.filterbar{display:flex;align-items:end;flex-wrap:wrap;gap:15px;margin-bottom:23px}.filterbar label{min-width:145px;flex:1}.filterbar .search{min-width:240px;flex:2}.filterbar button{flex-shrink:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px 18px}.form-grid .full{grid-column:1/-1}.primary{background:var(--green);border-color:color-mix(in srgb,var(--mint) 100%,var(--line));color:var(--on-accent);box-shadow:none;font-weight:750}.primary:hover{background:var(--mint);border-color:color-mix(in srgb,var(--mint) 100%,var(--line));box-shadow:none}.secondary-link{border:0;background:transparent;color:var(--mint);box-shadow:none;padding:4px 0;min-height:44px;text-align:left;font-size:12px;line-height:1.65;font-weight:650}.secondary-link:hover{background:transparent;color:var(--mint);box-shadow:none}.secondary-link>span{font-size:16px;margin-left:7px}.row-actions{display:flex;flex-wrap:wrap;gap:12px}.source-tag{font-size:9px;font-weight:650;letter-spacing:.7px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));color:var(--mint);background:var(--surface-2);padding:5px 9px;border-radius:8px;white-space:nowrap;display:inline-block}.source-tag.external{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 45%,var(--line));background:var(--surface-2)}.rule-list{padding-left:20px;font-size:12px;color:var(--muted);line-height:2;margin-bottom:0}.form-error{color:var(--coral);font-size:12px;line-height:1.8;min-height:18px;margin:0}.requirements-list{display:grid;gap:16px}.requirement{padding:25px 28px;background:var(--surface-2);border:1px solid var(--line);border-radius:25px;box-shadow:none}.req-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.req-title{font-size:15px;font-weight:650;line-height:1.8;color:var(--fg)}.req-id{display:inline-block;font-size:11px;font-weight:700;color:var(--mint);margin-right:13px;letter-spacing:1px}.req-note{font-size:12px;color:var(--muted);line-height:1.85;margin:13px 0 0}.req-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.req-details{font-size:12px;line-height:1.9;color:var(--muted);margin-top:16px}.req-details dt{color:var(--fg);font-weight:650;margin-top:15px}.req-details dd{margin-left:0;overflow-wrap:anywhere}details summary{min-height:46px;cursor:pointer;color:var(--mint);font-size:12px;font-weight:600;display:flex;align-items:center;gap:10px}details summary::after{content:'+';margin-left:auto;font-size:20px;color:var(--mint)}details[open] summary::after{content:'−'}.status-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.tiny-count{padding:17px 19px;background:var(--surface-2);border:1px solid var(--line);border-radius:18px;font-size:11px;color:var(--muted);line-height:1.7;display:flex;align-items:center;gap:13px}.tiny-count b{font-size:24px;color:var(--mint);font-weight:600;line-height:1}.checkline{color:var(--muted);font-size:12px;margin-bottom:18px}.section-break{margin-top:25px}.footer{margin-top:32px;padding:22px 0 4px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;line-height:1.9}.footer-separator{margin:0 10px;color:var(--muted)}.setting-code{color:var(--mint);font-family:Consolas,monospace;line-height:2.2;overflow-wrap:anywhere}.text-number{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.initial{padding:12vh 8vw;max-width:1100px}.initial .eyebrow{color:var(--green)}.initial h1{font-size:42px}.initial p{color:var(--muted)}dialog{width:min(760px,calc(100vw - 32px));max-height:85vh;background:var(--surface-2);color:var(--fg);border:1px solid var(--line);border-radius:28px;padding:32px;overflow:auto;box-shadow:none}dialog::backdrop{background:color-mix(in srgb,var(--bg) 73%,transparent);backdrop-filter:blur(7px)}pre{font-size:12px;line-height:1.9;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--mint)}#notice{position:fixed;bottom:25px;right:25px;max-width:min(500px,calc(100vw - 50px));display:none;background:var(--surface-2);color:var(--fg);border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:18px;padding:18px 24px;z-index:30;box-shadow:none;font-size:13px;line-height:1.85}#notice.show{display:block}.skip{position:fixed;left:20px;top:-100px;background:var(--surface);padding:15px;border-radius:12px;z-index:60}.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;padding:0;border:0}.skip:focus{top:15px}*{scrollbar-width:thin;scrollbar-color:var(--muted) var(--on-accent)}
@media(min-width:1650px){.app-header{padding:23px 36px;margin-left:24px;margin-right:24px;gap:36px}.nav{justify-content:center;gap:8px}.nav button{font-size:14px;padding:13px 18px}.brand-wb{font-size:36px}.brand-name{font-size:20px}.main{padding-left:35px;padding-right:35px}h1{font-size:54px}.metric{min-height:195px;padding:28px}.panel{padding:34px}}
@media(max-width:1330px){.header-mode{display:none}.app-header{gap:18px;padding:19px 25px}.nav{justify-content:space-between;gap:1px}.nav button{font-size:11px;padding:11px 10px}.brand-name{font-size:15px}.main{padding-left:30px;padding-right:30px}.metric{padding:22px}.grid-two{grid-template-columns:minmax(0,1.25fr) minmax(310px,1fr)}h1{font-size:43px}}
@media(max-width:1100px){.app-header{flex-wrap:wrap;border-radius:30px;gap:16px;padding:21px 25px}.brand{width:100%;justify-content:center}.brand-name{font-size:18px}.nav{width:100%;flex-basis:100%;justify-content:center;gap:5px;flex-wrap:wrap}.nav button{font-size:12px;padding:10px 13px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid-two{grid-template-columns:1fr}.main{padding-left:28px;padding-right:28px}.status-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-label{min-height:auto}.metric{min-height:168px}.topbar{min-height:105px;margin-bottom:18px}}
@media(max-width:760px){.shell{padding-top:10px}.app-header{margin:0 10px;padding:18px 17px;border-radius:25px;gap:17px}.brand{justify-content:flex-start}.brand-wb{font-size:30px}.brand-name{font-size:17px}.nav{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:6px;width:100%;max-width:100%;gap:5px}.nav button{flex-shrink:0;font-size:12px;padding:10px 14px}.main{padding:0 16px 24px}.topbar{min-height:99px;margin-bottom:16px;gap:14px}.breadcrumb{font-size:10px;line-height:1.7}.breadcrumb span{margin-left:4px}.field-caption{display:none}.top-actions select{width:160px;min-height:44px;font-size:12px;padding:10px 15px}h1{font-size:35px;letter-spacing:-1.15px;margin-bottom:13px}.page-heading{align-items:flex-start;flex-wrap:wrap;gap:15px;margin-bottom:23px}.eyebrow{font-size:9px;letter-spacing:1.45px;line-height:1.9;margin-bottom:12px}.sub{font-size:12px;line-height:1.9}.page-heading>.secondary-link{min-height:36px}.notice{padding:15px 17px;border-radius:17px;font-size:11px;line-height:1.9;align-items:flex-start;gap:10px;margin-bottom:22px}.metrics{gap:12px;margin-bottom:22px}.metric{border-radius:23px;padding:18px 17px;min-height:182px}.metric-label{font-size:11px;line-height:1.7;min-height:38px}.metric-value{font-size:35px;margin:16px 0 12px}.metric-value small{display:block;margin-top:6px;font-size:10px;letter-spacing:0}.metric>small{font-size:10px;line-height:1.7}.grid-two{gap:20px;margin-bottom:22px}.panel{padding:23px 20px;border-radius:25px;margin-bottom:22px}.panel-header{align-items:flex-start;flex-wrap:wrap;gap:13px;margin-bottom:21px}h2{font-size:19px;letter-spacing:-.5px}.empty{min-height:205px;padding:24px 17px;border-radius:18px}.empty h3{font-size:14px}.empty p{font-size:11px;line-height:1.9}.empty.compact{min-height:175px}.cabinet-card{padding:18px 16px;border-radius:18px}.cabinet-head{flex-wrap:wrap;gap:10px;margin-bottom:17px}.cabinet-data{gap:12px;font-size:10px}.cabinet-data span:last-child{max-width:57%}.pill{font-size:9px;padding:6px 10px}.form-grid{grid-template-columns:1fr;gap:18px}.form-grid .full{grid-column:auto}.filterbar label,.filterbar .search{min-width:130px}.filterbar .search{flex-basis:100%}.req-heading{flex-direction:column;gap:11px}.requirement{border-radius:23px;padding:21px}.req-title{font-size:14px;line-height:1.8}.req-note{font-size:11px;line-height:1.9}.req-meta .pill{font-size:10px}.status-counts{gap:10px}.tiny-count{font-size:10px;padding:15px 13px;display:block;border-radius:17px}.tiny-count b{display:block;font-size:24px;margin-bottom:9px}.footer{flex-direction:column;gap:8px;font-size:9px;line-height:1.9}.rule-list{font-size:11px;line-height:2.1}dialog{padding:24px 21px;border-radius:23px}.setting-code{font-size:12px}.initial{padding-top:12vh}.initial h1{font-size:34px}.source-tag{font-size:8px}details summary{font-size:11px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}dialog::backdrop{backdrop-filter:none}}

/* Larger, clear hierarchy (owner preference); colours come from the Pulse tokens. */
:root{font-size:16px}
input::placeholder,textarea::placeholder{color:var(--fg);opacity:1}
details summary::after{color:var(--fg)}
button:disabled{opacity:1;background:var(--surface-2);border-style:dashed}
.primary{background:color-mix(in srgb,var(--mint) 18%,var(--surface));border-color:color-mix(in srgb,var(--mint) 45%,var(--line))}
.primary:hover{background:color-mix(in srgb,var(--mint) 18%,var(--surface));border-color:color-mix(in srgb,var(--mint) 100%,var(--line))}
h1,.initial h1{font-size:clamp(40px,4vw,64px);font-weight:800;line-height:1.15;letter-spacing:-1.4px;overflow-wrap:anywhere}
h2{font-size:30px;font-weight:800;line-height:1.3;letter-spacing:-.5px;overflow-wrap:anywhere}
h3,.empty h3{font-size:23px;font-weight:750;line-height:1.4}
.brand-name{font-size:22px;font-weight:750}
.nav button{font-size:18px;font-weight:700;padding:12px 16px}
.sub{font-size:18px;line-height:1.7}
.eyebrow,.field-caption{font-size:14px;line-height:1.6}
.breadcrumb{font-size:15px}
.page-heading>div{min-width:0}
.panel-header,.req-heading,.cabinet-head{flex-wrap:wrap}
.metric{display:flex;flex-direction:column;align-items:stretch;min-height:220px}
.metric-label{font-size:21px;font-weight:750;line-height:1.4;min-height:59px}
.metric-value{font-size:52px;font-weight:750}
.metric-value small,.metric>small{font-size:15px;line-height:1.6}
.metric-value small{display:block;margin-top:8px;letter-spacing:0}
.notice,.empty p,.req-note,.req-details,.rule-list,.checkline,.form-error,details summary{font-size:16px;line-height:1.75}
label,input,select,textarea,button,.secondary-link{font-size:16px}
small,.panel-header small,td small,.cabinet-data,.footer{font-size:14px;line-height:1.7}
.pill,.req-meta .pill,.source-tag{font-size:13px;line-height:1.6}
.pill,.source-tag{white-space:normal;overflow-wrap:anywhere}
.cabinet-head strong{font-size:22px;font-weight:750}
table{font-size:16px}th{font-size:14px}
.req-title{font-size:23px;font-weight:750;line-height:1.5}
.req-id{font-size:15px}
.tiny-count{font-size:15px;flex-wrap:wrap;gap:10px}
.tiny-count b{font-size:32px;font-weight:750}
.setting-code,pre,#notice{font-size:16px}
@media(max-width:1650px){.app-header{flex-wrap:wrap}.brand{width:auto}.nav{order:3;flex-basis:100%;width:100%;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:6px}.nav button{flex-shrink:0}.header-mode{margin-left:auto}.metric-label{font-size:20px}}
@media(max-width:760px){h1,.initial h1{font-size:40px}h2{font-size:27px}h3,.empty h3{font-size:22px}.brand-name{font-size:21px}.nav button{font-size:17px}.sub{font-size:17px}.topbar{flex-wrap:wrap;padding:22px 0;gap:16px}.top-actions select{font-size:16px;width:180px}.eyebrow{font-size:13px;letter-spacing:1px}.metric-label{font-size:21px;min-height:0}.metric-value{font-size:46px}.metric>small,.metric-value small{font-size:15px}.cabinet-data{font-size:14px;gap:14px}.cabinet-data span{overflow-wrap:anywhere}.pill,.req-meta .pill,.source-tag{font-size:13px}.req-title{font-size:22px}.req-note,.rule-list,details summary{font-size:16px}.tiny-count{font-size:15px}.footer{font-size:14px}.empty p{font-size:16px}.setting-code{font-size:15px}}
@media(max-width:480px){.metrics,.status-counts{grid-template-columns:1fr}.metric{min-height:210px}.topbar{align-items:flex-start}.panel{padding:24px 20px}.cabinet-data{flex-direction:column;gap:4px}.cabinet-data span:last-child{max-width:100%;text-align:left}.form-grid{gap:20px}}

/* A single compact masthead; secondary destinations live in the disclosure. */
.product-finance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product-finance-grid .cabinet-card{margin:0;min-width:0}.product-finance-grid strong{font-size:19px;line-height:1.4;display:block}.product-finance-grid .metric-value{font-size:34px;margin:12px 0}.finance-requirements-list{display:grid;gap:14px;margin-top:20px}.finance-requirements-list p{margin-bottom:12px}.finance-requirements-list h3{font-size:20px}.finance-requirements[open] summary{margin-bottom:16px}dialog .product-finance{padding:20px;margin-top:24px}dialog .product-finance h2{font-size:25px}dialog .product-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.product-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.product-finance-grid,dialog .product-finance-grid{grid-template-columns:1fr}}
body{background-color:var(--surface);background-image:none}
.shell{padding-top:12px;position:relative;isolation:isolate;background:none}
.shell::before{content:'';position:absolute;z-index:-1;left:0;right:0;top:108px;height:180px;background:url('/assets/wb-green-band.png') center top / auto 180px no-repeat;mask-image:linear-gradient(#000 35%,transparent);pointer-events:none}
.app-header{display:flex;flex-wrap:nowrap;min-height:96px;height:96px;margin:0 12px;padding:18px 36px;border-radius:60px;border:0;background:var(--bg);gap:34px;box-shadow:none}
.brand{width:auto;flex:0 0 auto;justify-content:flex-start}
.brand-wb{font-size:36px}.brand-name{font-size:22px;font-weight:700}
.nav{order:0;flex:1 1 auto;flex-basis:auto;width:auto;max-width:none;min-width:0;display:flex;justify-content:flex-start;align-items:center;gap:12px;padding:0;overflow:visible}
.nav-primary{display:flex;align-items:center;gap:8px}
.nav button{flex:0 0 auto;min-height:48px;padding:10px 14px;border-radius:28px;font-size:20px;font-weight:650;line-height:1.4}
.nav-more{position:relative;flex:0 0 auto}
.nav-more summary{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 14px;font-size:20px;font-weight:650;line-height:1.4;list-style:none;border-radius:28px}
.nav-more summary::-webkit-details-marker{display:none}
.nav-more summary::after{content:'';display:block;width:8px;height:8px;border-right:2px solid color-mix(in srgb,var(--fg) 14%,transparent);border-bottom:2px solid color-mix(in srgb,var(--fg) 14%,transparent);transform:translateY(-2px) rotate(45deg);margin:0}
.nav-more[open] summary::after{transform:translateY(2px) rotate(225deg)}
.nav-more summary:hover,.nav-more[open] summary{background:var(--surface)}
.nav-dropdown{position:absolute;z-index:10;top:calc(100% + 18px);right:0;width:270px;padding:12px;border:1px solid var(--line);border-radius:22px;background:var(--bg);box-shadow:none;display:grid;gap:5px}
.nav-dropdown button{width:100%;text-align:left;border-radius:12px;white-space:normal}
.nav-mobile-only,.nav-more-mobile{display:none!important}
.header-mode{display:block;flex:0 0 auto;margin-left:auto}.header-mode .pill{font-size:14px;white-space:nowrap}
.main{padding-top:120px}
.topbar{min-height:88px;margin-bottom:24px}
@media(min-width:1650px){.app-header{height:112px;min-height:112px;padding-left:48px;padding-right:48px;gap:42px}.shell::before{top:124px}.nav{gap:24px}.nav-primary{gap:16px}.nav button,.nav-more summary{font-size:22px;padding-left:16px;padding-right:16px}}
@media(max-width:1450px){.app-header{gap:24px;padding-left:30px;padding-right:30px}.header-mode{display:none}.nav{justify-content:space-between;gap:8px}.nav-primary{gap:4px}.nav button,.nav-more summary{font-size:19px;padding-left:12px;padding-right:12px}}
@media(max-width:1050px){.app-header{gap:18px;padding:16px 24px;height:88px;min-height:88px}.brand-wb{font-size:32px}.brand-name{font-size:19px}.nav-primary{gap:0}.nav button,.nav-more summary{font-size:17px;padding-left:9px;padding-right:9px}.nav{gap:0}.shell{background-position:center 100px}}
@media(max-width:850px){.app-header{height:80px;min-height:80px;padding:14px 22px;gap:16px}.nav{flex:0 0 auto;margin-left:auto}.nav-primary,.nav-more-desktop{display:none!important}.nav-more-mobile{display:inline!important}.nav-dropdown .nav-mobile-only{display:block!important}.nav-more summary{font-size:17px}.nav-dropdown{width:min(300px,calc(100vw - 48px));max-height:70vh;overflow-y:auto;top:calc(100% + 15px)}.nav-dropdown button{font-size:18px;min-height:48px}.shell{background-position:center 92px;background-size:auto 150px}.main{padding-top:110px}.brand-name{font-size:20px}.topbar{min-height:75px;padding-top:8px;padding-bottom:8px}}

.wb-data-table td{white-space:pre-line;overflow-wrap:anywhere;max-width:300px}.wb-data-table dd{white-space:pre-line}

/* Overview: requested live indicators occupy the green band under navigation. */
.shell--overview::before{height:300px;background-size:auto 300px;mask-image:linear-gradient(#000 25%,transparent)}
.shell--overview .main{padding-top:0}
.dashboard-strip{width:min(1660px,100%);margin:0 auto;padding:22px 44px 0;position:relative;z-index:0;color:var(--fg)}
.dashboard-cards{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:12px}
.dashboard-card{min-width:0;border:1px solid color-mix(in srgb,var(--mint) 21%,var(--line));border-radius:22px;padding:18px 17px 15px;background:color-mix(in srgb,var(--bg) 91%,transparent);box-shadow:none;display:flex;flex-direction:column;color:var(--fg)}
.dashboard-card h2{font-size:17px;font-weight:650;line-height:1.5;letter-spacing:-.25px;min-height:52px;margin:0 0 12px;color:var(--fg)}
.dashboard-card strong{font-size:clamp(24px,2.15vw,36px);font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.9px;line-height:1.2;overflow-wrap:anywhere;display:block;margin:auto 0 12px;color:var(--fg)}
.dashboard-card strong span{font-size:12px;font-weight:600;letter-spacing:.2px;display:block;margin-top:6px;color:var(--fg)}
.dashboard-card small{display:block;font-size:11px;line-height:1.6;color:var(--fg);overflow-wrap:anywhere}
.dashboard-card{grid-column:span 2}
.dashboard-card--expense{grid-column:span 5}
.dashboard-card--expense h2{min-height:0}
.expense-breakdown{margin-top:12px;font-size:12px}
.expense-breakdown summary{cursor:pointer;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:3px}
.expense-breakdown summary:focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:4px}
.expense-breakdown dl{margin:8px 0}.expense-breakdown dl>div{display:flex;justify-content:space-between;gap:16px;padding:5px 0;border-top:1px solid var(--line)}
.expense-breakdown dt{min-width:0;overflow-wrap:anywhere}.expense-breakdown dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.expense-breakdown p{font-size:11px;line-height:1.6}
@media(min-width:761px) and (max-width:1100px){.dashboard-card--expense{grid-column:span 3}}
.dashboard-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-top:12px}
.dashboard-toolbar details{font-size:12px;flex:1;min-width:0}
.dashboard-toolbar summary{font-size:12px;line-height:1.7;padding:8px 0;color:var(--fg)}
.dashboard-toolbar details>div{border:1px solid var(--line);border-radius:16px;background:var(--bg);padding:16px 20px;margin:8px 0;line-height:1.7}
.dashboard-toolbar button{font-size:12px;min-height:38px;padding:8px 14px;flex-shrink:0;border-radius:24px}
@media(max-width:1100px){.dashboard-cards{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-card h2{min-height:48px}.dashboard-card strong{font-size:29px}.shell--overview::before{height:470px;background-size:auto 470px}}
@media(max-width:760px){.dashboard-strip{padding:18px 16px 0}.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-card{grid-column:auto;padding:16px 13px;border-radius:19px}.dashboard-card h2{font-size:15px;min-height:46px;margin-bottom:12px}.dashboard-card strong{font-size:26px;letter-spacing:-.6px}.dashboard-card small{font-size:10px}.dashboard-card[data-dashboard="assembly"]{grid-column:1/-1}.dashboard-card[data-dashboard="assembly"] h2{min-height:0}.dashboard-toolbar{flex-direction:column;gap:7px}.dashboard-toolbar button{align-self:flex-start}.shell--overview::before{height:680px;background-size:auto 680px}}

@media(max-width:480px){.dashboard-card:nth-child(3),.dashboard-card:nth-child(4){grid-column:1/-1}.dashboard-card:nth-child(3) h2,.dashboard-card:nth-child(4) h2{min-height:0}.dashboard-card:nth-child(3) strong,.dashboard-card:nth-child(4) strong{font-size:32px;overflow-wrap:normal}}
@media(max-width:480px){.dashboard-card--expense{grid-column:1/-1}.dashboard-card--expense h2{min-height:0}}

.dashboard-period{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:16px;padding:16px 18px;border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--bg) 92%,transparent)}
.dashboard-period label{display:flex;flex-direction:column;gap:7px;font-size:14px;flex:0 1 215px;min-width:0;color:var(--fg)}
.dashboard-period input{min-width:0;width:100%;font-size:16px;min-height:46px;color-scheme:dark}
.dashboard-period button{min-height:46px;font-size:14px;border-radius:24px}
.dashboard-period p{flex-basis:100%;margin:0;font-size:12px;line-height:1.6;color:var(--fg)}
.dashboard-period-warning{font-size:13px;line-height:1.6;padding:10px 0;margin:0}
@media(max-width:600px){.dashboard-period{padding:15px 13px;gap:12px 10px}.dashboard-period label{flex:1 1 calc(50% - 10px);font-size:13px}.dashboard-period input{padding:10px 8px;font-size:14px}.dashboard-period button{flex:1 1 calc(50% - 10px);font-size:13px}.dashboard-period p{font-size:11px}}

/* Product catalogue: clear identity, specifications and three financial columns. */
.catalog-policy{padding:22px 26px;border:1px solid var(--line);border-radius:24px;background:var(--surface-2);margin:24px 0 34px;color:var(--fg)}
.catalog-policy strong{font-size:22px}.catalog-policy p{font-size:16px;line-height:1.65;margin:10px 0}.catalog-policy summary{font-size:15px}.catalog-policy details p{overflow-wrap:anywhere}
.catalog-list>.panel-header h2{font-size:clamp(26px,3vw,42px)}.catalog-list>.panel-header>span{font-size:15px}
.catalog-pager{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0;font-size:17px}.catalog-pager>div{display:flex;gap:10px}.catalog-pager button{font-size:16px;padding:10px 20px;min-height:44px}
.catalog-product{border:1px solid var(--line);border-radius:28px;background:var(--surface-2);margin:22px 0;padding:28px;color:var(--fg);box-shadow:none;min-width:0}
.catalog-product-header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid color-mix(in srgb,var(--line) 50%,transparent);padding-bottom:24px}.catalog-product-identity{display:flex;align-items:center;gap:22px;min-width:0}.catalog-product-identity>div{min-width:0}
.catalog-photo{width:90px;height:122px;object-fit:cover;border-radius:15px;flex-shrink:0}.catalog-seller{font-size:17px;font-weight:650;margin:0 0 9px}.catalog-title.secondary-link{font-size:clamp(22px,2vw,29px);font-weight:750;line-height:1.35;text-align:left;color:var(--fg);white-space:normal;overflow-wrap:anywhere;padding:0;min-height:0}
.catalog-article{font-size:16px;margin:12px 0 8px;overflow-wrap:anywhere}.catalog-article b{font-size:19px;margin-left:9px}.catalog-wb{font-size:14px;margin:0;overflow-wrap:anywhere}.catalog-badge{font-size:15px;white-space:nowrap;text-align:right}.catalog-badge span{display:block;background:var(--surface-2);border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:12px;padding:9px 12px;margin-top:12px;font-weight:700}
.catalog-specs{display:grid;grid-template-columns:1.4fr 1fr 1.2fr;gap:20px;padding:22px 0}.catalog-specs>div{min-width:0}.catalog-specs span,.catalog-specs small{display:block;font-size:14px;line-height:1.6}.catalog-specs strong{display:block;font-size:19px;line-height:1.5;margin:5px 0;overflow-wrap:anywhere}
.catalog-money{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);overflow:hidden}.catalog-money>section{padding:23px;min-width:0}.catalog-money>section+section{border-left:1px solid var(--line)}.catalog-money h3{font-size:23px;line-height:1.35;font-weight:750;margin:0 0 15px}.catalog-money h4{font-size:19px;margin:23px 0 12px}.catalog-money p{font-size:14px;line-height:1.6;margin:10px 0}.catalog-money small{display:block;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.catalog-number{font-size:clamp(23px,2vw,32px);font-weight:750;line-height:1.35;display:block;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.catalog-secondary-number{font-size:21px;line-height:1.4;display:block;font-weight:650;overflow-wrap:anywhere}.catalog-updated{margin-top:16px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--line) 47%,transparent)}.catalog-fact{margin-top:18px;padding:14px 0 0;border-top:1px solid color-mix(in srgb,var(--line) 47%,transparent)}.catalog-fact span{font-size:13px;line-height:1.6;display:block}.catalog-fact b{display:block;font-size:19px;margin:7px 0}
.catalog-rates{margin:14px 0 18px}.catalog-rates>div{display:grid;grid-template-columns:44px 56px minmax(0,1fr);gap:8px;align-items:start;padding:11px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 40%,transparent);font-size:16px}.catalog-rates strong{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.catalog-logistics{display:flex;flex-direction:column;gap:9px;font-size:15px;line-height:1.55;margin:18px 0;overflow-wrap:anywhere}
.catalog-variants{margin-top:20px;min-width:0}.catalog-variants summary{font-size:17px;min-height:44px;padding:10px 0}.catalog-variants table{font-size:15px}.catalog-variants td,.catalog-variants th{white-space:nowrap;padding:15px}.catalog-variants>.table-scroll{max-width:100%;border-radius:16px}
@media(max-width:1100px){.catalog-product{padding:23px}.catalog-money>section{padding:19px 16px}.catalog-money h3{font-size:21px}.catalog-rates>div{grid-template-columns:40px minmax(0,1fr)}.catalog-rates strong{grid-column:1/-1;text-align:left}.catalog-specs{grid-template-columns:1fr 1fr}.catalog-specs>div:first-child{grid-column:1/-1}}
@media(max-width:760px){.catalog-product{padding:20px 17px;border-radius:23px}.catalog-product-header{gap:10px}.catalog-product-identity{align-items:flex-start;gap:14px}.catalog-photo{width:68px;height:94px}.catalog-seller{font-size:15px}.catalog-title.secondary-link{font-size:22px}.catalog-article{font-size:14px}.catalog-article b{display:block;margin:5px 0}.catalog-wb{font-size:12px}.catalog-badge{font-size:12px}.catalog-badge span{font-size:11px;padding:7px}.catalog-specs{gap:16px;padding:18px 0}.catalog-specs strong{font-size:17px}.catalog-money{grid-template-columns:1fr}.catalog-money>section{padding:22px}.catalog-money>section+section{border-left:0;border-top:1px solid var(--line)}.catalog-money h3{font-size:24px}.catalog-number{font-size:29px}.catalog-rates>div{grid-template-columns:48px 62px minmax(0,1fr);font-size:17px}.catalog-rates strong{grid-column:auto;text-align:right}.catalog-policy{padding:20px}.catalog-list>.panel-header{display:block}.catalog-list>.panel-header>span{display:block;margin-top:12px}.catalog-variants summary{font-size:16px}.catalog-pager{font-size:14px}.catalog-pager button{padding:10px 14px}}
@media(max-width:420px){.catalog-badge{display:none}.catalog-specs{grid-template-columns:1fr}.catalog-specs>div:first-child{grid-column:auto}.catalog-rates>div{grid-template-columns:42px 55px minmax(0,1fr);gap:7px;font-size:16px}.catalog-photo{width:58px;height:80px}.catalog-product-identity{gap:12px}.catalog-money>section{padding:20px 16px}}

.price-editor{margin-top:22px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:22px;background:var(--surface-2);overflow:hidden;color:var(--fg)}
.cost-calculator{margin:28px 0;border-top:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));padding-top:24px;color:var(--fg)}.cost-calculator h3{font-size:28px;line-height:1.35;margin:0 0 22px}.cost-scenario-label{display:flex;flex-direction:column;gap:10px;max-width:560px;font-size:18px}.cost-scenario-label select,.cost-row input{color:var(--fg);background:var(--bg);border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:14px;min-height:52px;padding:12px 16px;font:inherit;min-width:0;width:100%}.cost-history-note{font-size:15px;line-height:1.65;padding:14px 0}.cost-history-note p{margin:8px 0}.cost-order-id{overflow-wrap:anywhere}.cost-inputs{border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:18px;overflow:hidden}.cost-row{display:grid;grid-template-columns:minmax(0,1fr) 190px 145px;align-items:center;gap:16px;padding:15px 18px;border-bottom:1px solid var(--line);background:var(--surface);font-size:18px}.cost-row:last-child{border-bottom:0}.cost-row span small{display:block;font-size:13px;line-height:1.6;margin-top:6px}.cost-origin{font-size:14px;line-height:1.5}.cost-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.cost-result>div{border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:18px;background:var(--bg);padding:22px;min-width:0}.cost-result span{font-size:17px;line-height:1.6;display:block}.cost-result strong{font-size:30px;line-height:1.4;display:block;margin:18px 0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.cost-result small{display:block;font-size:14px;line-height:1.65}.cost-result .cost-final{background:var(--surface-2);border-color:color-mix(in srgb,var(--mint) 100%,var(--line))}.cost-result>p{grid-column:1/-1;margin:0;font-size:16px;line-height:1.7}.cost-incomplete{border-left:3px solid color-mix(in srgb,var(--mint) 100%,var(--line));padding:12px 16px;background:var(--surface)}.cost-events summary{font-size:18px;padding:15px 0;cursor:pointer}.cost-events article{padding:14px 16px;background:var(--bg);border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:14px;margin:12px 0;font-size:15px;line-height:1.65;overflow-wrap:anywhere}.cost-events p{margin:7px 0}.cost-disclaimer{font-size:14px;line-height:1.75;margin-top:18px}
@media(max-width:1024px){.cost-row{grid-template-columns:minmax(0,1fr) 160px}.cost-origin{grid-column:1/-1}.cost-result{grid-template-columns:1fr}.cost-calculator h3{font-size:25px}}
@media(max-width:600px){.cost-row{grid-template-columns:1fr;padding:16px;gap:10px}.cost-row input{font-size:21px}.cost-result strong{font-size:29px}.cost-calculator h3{font-size:24px}.cost-row span{font-size:18px}.cost-result>div{padding:18px}}
.price-editor>summary{font-size:21px;font-weight:750;line-height:1.5;padding:20px 24px;min-height:66px}
.price-editor-body{padding:0 24px 26px}.price-editor-intro h3{font-size:22px;line-height:1.4;margin:12px 0}.price-editor-intro p,.price-editor-intro small{font-size:15px;line-height:1.65;display:block;margin:10px 0}
.price-edit-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 16px}.price-edit-fields label{display:flex;flex-direction:column;gap:10px;font-size:16px;min-width:0}.price-edit-fields input,.price-edit-fields select{width:100%;min-width:0;min-height:52px;font-size:20px;color:var(--fg);background:var(--surface);border-color:color-mix(in srgb,var(--mint) 45%,var(--line))}
.price-edit-scope{font-size:15px;line-height:1.6}.price-live-formula{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.price-live-formula>div{border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:17px;background:var(--bg);padding:18px;min-width:0}.price-live-formula span{display:block;font-size:15px;line-height:1.6;min-height:48px}.price-live-formula strong{display:block;font-size:26px;line-height:1.4;margin-top:12px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.price-editor-help{padding:5px 0 17px}.price-editor-help p{font-size:15px;line-height:1.7;margin:12px 0}.price-edit-form>button,.price-quote button,.price-change-status button{font-size:17px;min-height:48px;white-space:normal;max-width:100%;border-radius:28px;margin-top:10px}
.price-quote:not(:empty),.price-change-status{border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));background:var(--surface);border-radius:18px;padding:20px;margin:20px 0 0;font-size:16px;line-height:1.7;overflow-wrap:anywhere}.price-quote>strong,.price-change-status>strong{font-size:21px}.price-quote p{margin:12px 0}.price-change-status small{display:block;font-size:14px}.price-edit-form input:disabled,.price-edit-form select:disabled{opacity:.65}
@media(max-width:760px){.price-editor>summary{font-size:20px;padding:17px}.price-editor-body{padding:0 17px 20px}.price-edit-fields{grid-template-columns:1fr 1fr;gap:14px}.price-edit-fields label:last-child{grid-column:1/-1}.price-edit-fields label{font-size:14px}.price-edit-fields input,.price-edit-fields select{font-size:18px;min-height:50px}.price-live-formula{grid-template-columns:1fr}.price-live-formula span{min-height:0}.price-live-formula strong{font-size:29px}.price-editor-intro h3{font-size:21px}.price-edit-form>button{width:100%}.price-quote:not(:empty),.price-change-status{padding:16px}}
@media(max-width:400px){.price-edit-fields{grid-template-columns:1fr}.price-edit-fields label:last-child{grid-column:auto}}
/* Balance drill-down preserves the approved black/green/white theme. */
.balance-column-total{display:grid;gap:10px;margin-top:16px;text-transform:none;letter-spacing:normal}.balance-column-total>span{display:grid;gap:5px}.balance-column-total strong{font-size:22px;line-height:1.4;color:var(--mint);font-variant-numeric:tabular-nums}.balance-column-total small{font-size:13px;font-weight:500}
.dashboard-card:has(.balance-card-open){position:relative;padding-bottom:70px}.balance-card-open{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:flex-start;padding:22px;border:1px solid transparent;border-radius:inherit;background:transparent;color:var(--fg);text-align:left;font:inherit;font-weight:700}.balance-card-open:hover{background:color-mix(in srgb,var(--mint) 4%,transparent);border-color:color-mix(in srgb,var(--mint) 45%,var(--line))}.balance-card-open:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
#balance-detail{width:min(1480px,calc(100vw - 32px));max-width:none;max-height:94dvh;padding:32px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:30px;background:var(--surface);color:var(--fg);overflow:auto}#balance-detail::backdrop{background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(6px)}#balance-detail h2{font-size:36px}#balance-detail h3{font-size:25px;margin:24px 0 16px}#balance-detail p{line-height:1.7}#balance-detail small{display:block;color:var(--fg)}#balance-detail pre{max-width:100%;overflow:auto;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.balance-close{position:sticky;top:0;display:flex;justify-content:flex-end;z-index:2;pointer-events:none}.balance-close button{pointer-events:auto;background:var(--surface-2);color:var(--fg)}.balance-current{padding:24px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:22px;background:var(--surface-2)}.balance-filter{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr auto;align-items:end;gap:16px;margin:28px 0}.balance-filter label{min-width:0}.balance-filter select,.balance-filter input{width:100%;min-width:0}.balance-filter [role=alert]{grid-column:1/-1}.balance-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.balance-fields{display:grid;gap:0;margin:18px 0}.balance-fields>div{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:12px 0;break-inside:avoid}.balance-fields dt{overflow-wrap:anywhere}.balance-fields dd{margin:0;text-align:right;font-weight:700;overflow-wrap:anywhere}.balance-products{min-width:1000px}.balance-products td{vertical-align:top}.balance-products td:first-child{width:30%}.balance-product-open{display:block;text-align:left;background:transparent;border:0;padding:0;color:var(--fg)}.balance-product-open img{width:64px;height:84px;object-fit:cover;float:left;margin:0 16px 10px 0;border-radius:10px}.balance-product-open strong{font-size:20px}.balance-operation,.balance-report-summary{border:1px solid var(--line);background:var(--bg);border-radius:18px;padding:18px;margin:16px 0}.balance-operation summary,.balance-report-summary summary{font-weight:700;font-size:19px}#balance-detail summary{cursor:pointer}#balance-detail a{color:var(--fg);text-decoration:underline}#balance-detail .row-actions{margin:22px 0;flex-wrap:wrap}
@media(max-width:1000px){.balance-filter{grid-template-columns:1fr 1fr}.balance-filter label:first-child{grid-column:1/-1}}
.balance-bridge{margin:24px 0;padding:24px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:22px;background:var(--surface)}.balance-result{display:flex;justify-content:space-between;gap:20px;border-top:2px solid color-mix(in srgb,var(--mint) 100%,var(--line));padding-top:20px;font-size:23px}.balance-result strong{color:var(--mint)}.balance-calculation h4{margin:24px 0 8px;color:var(--mint)}.balance-products{min-width:1580px;table-layout:fixed}.balance-products td:first-child{width:auto}.balance-products th:first-child{width:22%}.balance-products th:nth-child(2){width:18%}.balance-products th:nth-child(3){width:22%}.balance-products th:nth-child(4){width:20%}.balance-products th:nth-child(5){width:18%}.balance-products .balance-fields>div{display:block;padding:10px 0}.balance-products .balance-fields dd{text-align:left;margin-top:5px}.balance-products td>strong{display:block;margin:20px 0;font-size:20px;color:var(--mint)}.balance-products td>small{margin:10px 0}.balance-product-open{width:100%;overflow-wrap:anywhere}.balance-product-open img{width:92px;height:122px;float:none;display:block}.balance-no-photo{display:block;padding:20px 0;color:var(--muted)}.balance-products td{overflow-wrap:anywhere}.balance-calculation,.balance-bridge{min-width:0}.balance-calculation dd,.balance-bridge dd{font-variant-numeric:tabular-nums}
.balance-products{width:100%;min-width:1200px}.balance-products td,.balance-products th{padding:14px 12px}.balance-products .balance-fields{margin:10px 0}.balance-products .balance-fields>div{padding:6px 0;line-height:1.4}.balance-products .balance-fields dd{margin-top:3px}.balance-products .balance-product-open strong{font-size:18px}
.table-scroll:has(>.balance-products){border:0;border-radius:0;background:transparent}.balance-products{border-collapse:separate;border-spacing:0 24px}.balance-products th{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.balance-products th:first-child{border-left:1px solid var(--line);border-radius:20px 0 0 20px}.balance-products th:last-child{border-right:1px solid var(--line);border-radius:0 20px 20px 0}.balance-products tbody td{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 14px}.balance-products tbody tr:last-child td{border-bottom:1px solid var(--line)}.balance-products tbody td:first-child{border-left:1px solid var(--line);border-radius:22px 0 0 22px}.balance-products tbody td:last-child{border-right:1px solid var(--line);border-radius:0 22px 22px 0}.balance-products tbody tr:hover td{background:var(--surface-2)}.balance-products tbody td+td{border-left:1px solid color-mix(in srgb,var(--fg) 3%,transparent)}
@media(max-width:600px){.balance-bridge{padding:16px}.balance-result{flex-direction:column}.balance-totals{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){#balance-detail{width:calc(100vw - 16px);padding:16px;border-radius:20px}#balance-detail h2{font-size:28px}.balance-current{padding:16px}.balance-filter{grid-template-columns:1fr}.balance-filter label:first-child{grid-column:auto}.balance-fields>div{flex-direction:column;gap:6px}.balance-fields dd{text-align:left}.balance-close button{min-height:44px}}
.balance-product-list{display:grid;gap:24px;margin-top:8px}.balance-product-card{min-width:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);overflow:hidden}.balance-product-card>summary{display:flex;align-items:center;gap:24px;padding:22px;min-height:130px;list-style:none}.balance-product-card>summary::-webkit-details-marker{display:none}.balance-product-card>summary::after{content:'+';font-size:28px;flex:none;margin-left:0}.balance-product-card[open]>summary::after{content:'−'}.balance-product-card>summary:hover{background:var(--surface-2)}.balance-product-card>summary:focus-visible{outline:3px solid var(--mint);outline-offset:-4px}.balance-product-identity{display:flex;align-items:center;gap:20px;min-width:0;flex:1}.balance-product-identity>span{min-width:0}.balance-product-identity>img{width:68px;height:90px;object-fit:cover;border-radius:12px;flex:none}.balance-product-identity strong{font-size:20px;overflow-wrap:anywhere}.balance-product-identity small{margin-top:5px;overflow-wrap:anywhere}.balance-product-result{min-width:180px;max-width:35%;text-align:right}.balance-product-result>strong{display:block;font-size:23px;color:var(--mint);overflow-wrap:anywhere}.balance-expand-label{display:block;font-size:14px;margin-top:8px}.balance-product-card:not([open]) .when-open,.balance-product-card[open] .when-closed{display:none}.balance-product-body{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.balance-product-section{min-width:0;padding:22px;overflow-wrap:anywhere}.balance-product-section+.balance-product-section{border-left:1px solid color-mix(in srgb,var(--fg) 7%,transparent)}.balance-product-section h4{margin:0 0 20px;font-size:17px;color:var(--mint)}.balance-product-section .balance-fields>div{display:block;padding:8px 0}.balance-product-section .balance-fields dd{text-align:left;margin-top:4px}.balance-product-section>strong{display:block;margin:20px 0;font-size:22px;color:var(--mint)}.balance-product-section>small{margin:12px 0}.balance-product-section>button{margin-top:14px}
.balance-settlement{margin:24px 0;padding:24px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:22px;min-width:0;background:var(--surface)}.balance-settlement-totals,.balance-report-history{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}.balance-settlement-totals>.panel{margin:0}.balance-settlement h4{font-size:21px;margin:16px 0;color:var(--mint)}.balance-settlement .balance-fields>div{display:block}.balance-settlement .balance-fields dd{text-align:left;margin-top:8px;font-size:22px;color:var(--mint)}.balance-settlement article{min-width:0;overflow-wrap:anywhere}.balance-report-history>article,.balance-owner-payments article{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.balance-withdrawal-reports,.balance-owner-payments{margin:22px 0}.balance-report-history button{width:100%}.balance-purchase{border-top:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));margin-top:24px;padding-top:20px}.balance-purchase small{overflow-wrap:anywhere}.balance-owner-payments article{margin-top:14px}
[data-withdrawal-status]{scroll-margin-top:90px}
@media(max-width:600px){.balance-settlement{padding:16px}.balance-settlement>button{width:100%;white-space:normal}.balance-settlement-totals>.panel{padding:18px}}
@media(max-width:1000px){.balance-product-body{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-product-section:nth-child(3){border-left:0}.balance-product-section:nth-child(n+3){border-top:1px solid color-mix(in srgb,var(--fg) 7%,transparent)}}
@media(max-width:600px){.balance-product-card>summary{padding:16px;gap:12px;flex-wrap:wrap}.balance-product-identity{flex-basis:calc(100% - 40px)}.balance-product-identity strong{font-size:17px}.balance-product-identity>img{width:52px;height:72px}.balance-product-result{order:2;text-align:left;max-width:100%;min-width:0;width:100%}.balance-product-card>summary::after{margin-left:auto}.balance-product-body{grid-template-columns:minmax(0,1fr)}.balance-product-section{padding:18px}.balance-product-section+.balance-product-section{border-left:0;border-top:1px solid color-mix(in srgb,var(--fg) 7%,transparent)}}
.purchase-price{margin:24px 0;padding:22px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:18px;background:var(--surface);min-width:0}.purchase-price>header{display:flex;align-items:center;justify-content:space-between;gap:18px}.purchase-price h3{margin:0;font-size:22px}.purchase-price header p{margin:8px 0}.purchase-price header>strong{font-size:26px;color:var(--mint);overflow-wrap:anywhere}.purchase-price>p{margin:8px 0 18px}.purchase-price form{display:grid;grid-template-columns:minmax(140px,1fr) minmax(90px,.55fr) minmax(155px,.8fr) auto;align-items:end;gap:16px}.purchase-price label{display:grid;gap:8px;min-width:0}.purchase-price input,.purchase-price select{min-width:0;width:100%;min-height:44px;box-sizing:border-box}.purchase-price button{min-height:44px}.purchase-price-status{grid-column:1/-1;margin:0;overflow-wrap:anywhere;color:var(--mint)}.purchase-price>small{display:block;line-height:1.6;margin:16px 0;color:var(--muted)}.purchase-price details{border-top:1px solid var(--line);padding-top:14px}.purchase-price summary{cursor:pointer;min-height:44px;align-content:center}.purchase-history-rows p{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid color-mix(in srgb,var(--fg) 7%,transparent);padding:12px 0;margin:0}.purchase-history-rows small{margin-left:auto}.purchase-price input:focus-visible,.purchase-price select:focus-visible,.purchase-price summary:focus-visible{outline:2px solid var(--mint);outline-offset:3px}@media(max-width:1000px){.purchase-price form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.purchase-price{padding:16px}.purchase-price>header{align-items:flex-start;flex-direction:column}.purchase-price form{grid-template-columns:minmax(0,1fr)}.purchase-price button{white-space:normal}.purchase-history-rows p{display:grid;gap:6px}.purchase-history-rows small{margin-left:0}}
.sales-profit{min-width:0;margin:18px 0;padding:18px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:16px;background:var(--surface);overflow-wrap:anywhere}.sales-profit h4{margin:0 0 14px;color:var(--mint);font-size:20px}.sales-profit dl{margin:0}.sales-profit dl>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--fg) 9%,transparent)}.sales-profit dd{margin:0;text-align:right;font-weight:700;flex-shrink:0}.sales-profit-final{font-size:21px;color:var(--mint)}.sales-profit-loss .sales-profit-final{color:var(--coral)}.sales-profit p,.sales-profit small{line-height:1.6}.sales-profit small{display:block}.sales-profit-events article{padding:14px 0;border-bottom:1px solid color-mix(in srgb,var(--fg) 9%,transparent)}.sales-profit summary{min-height:44px;cursor:pointer;align-content:center}.product-profit{margin-top:20px}.product-profit>summary{font-weight:700;color:var(--mint)}.product-profit-filter{display:grid;grid-template-columns:minmax(170px,1fr) minmax(145px,.6fr) minmax(145px,.6fr) auto;gap:14px;align-items:end;margin-top:16px}.product-profit-filter label{display:grid;gap:8px;min-width:0}.product-profit-filter input,.product-profit-filter select{width:100%;min-width:0;min-height:44px;box-sizing:border-box}.product-profit-filter button{min-height:44px}.balance-profit-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:20px}.balance-product-section .sales-profit{padding:14px}.balance-product-section .sales-profit dl>div{display:block}.balance-product-section .sales-profit dd{text-align:left;margin-top:6px}.product-profit-summary{font-size:21px!important}@media(max-width:1000px){.product-profit-filter{grid-template-columns:1fr 1fr}}@media(max-width:600px){.product-profit-filter{grid-template-columns:minmax(0,1fr)}.sales-profit{padding:14px}.sales-profit dl>div{display:block}.sales-profit dd{text-align:left;margin-top:6px;flex-shrink:1}.sales-profit-final{font-size:20px}}
.sales-profit .profit-simple-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sales-profit .profit-simple-numbers>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:14px;margin:0;padding:18px;border:1px solid color-mix(in srgb,var(--fg) 9%,transparent);border-radius:14px;background:color-mix(in srgb,var(--fg) 2%,transparent)}.sales-profit .profit-simple-numbers dt{font-size:16px;line-height:1.5}.sales-profit .profit-simple-numbers dd{font-size:26px;text-align:left;overflow-wrap:anywhere;max-width:100%;flex-shrink:1}.sales-profit .profit-simple-numbers>.sales-profit-final{background:color-mix(in srgb,var(--mint) 4%,transparent);border-color:color-mix(in srgb,var(--mint) 100%,var(--line))}.sales-profit .profit-simple-numbers>.sales-profit-final dd{font-size:34px}.sales-profit-loss .profit-simple-numbers>.sales-profit-final{background:color-mix(in srgb,var(--coral) 3%,transparent);border-color:color-mix(in srgb,var(--coral) 100%,var(--line))}.profit-tax-note{margin-top:14px;color:var(--muted)}.profit-explanation{margin-top:18px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--fg) 9%,transparent)}.sales-profit-message{padding:12px 0;font-weight:600}.profit-period-label{font-size:14px;color:var(--muted);margin:10px 0}.product-profit-period{border:0!important;padding:0!important;margin-bottom:12px}.product-profit-period>summary{font-size:14px!important;color:var(--muted)}.balance-product-section .profit-simple-numbers{grid-template-columns:minmax(0,1fr)}@media(max-width:768px){.sales-profit .profit-simple-numbers{grid-template-columns:minmax(0,1fr)}.sales-profit .profit-simple-numbers>div{gap:8px;padding:14px}.sales-profit .profit-simple-numbers dd{font-size:24px}.sales-profit .profit-simple-numbers>.sales-profit-final dd{font-size:30px}}
.product-profit details:not([open])>summary::after{content:'+'}.product-profit details[open]>summary::after{content:'−'}

/* Compact overview: details stay available without stretching the indicators. */
.dashboard-strip{padding-top:14px}
.dashboard-cards{grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;align-items:stretch;grid-auto-rows:1fr}
.dashboard-card{grid-column:span 3;padding:12px 14px;border-radius:16px;box-shadow:none}
.dashboard-card:nth-child(n+5){grid-column:span 3}
.dashboard-card h2{font-size:13px;line-height:1.4;min-height:36px;margin:0 0 8px}
.dashboard-card strong{font-size:28px;line-height:1.2;letter-spacing:-.6px;margin:0 0 8px}
.dashboard-card strong span{display:block;font-size:10px;margin:4px 0 0;letter-spacing:0}
.dashboard-card[data-dashboard="assembly"] strong span{display:block;font-size:10px;margin:6px 0 0;line-height:1.5}
.dashboard-card small{font-size:10px;line-height:1.5}
.dashboard-card:has(.balance-card-open){padding-bottom:12px}
.dashboard-card .balance-card-open{position:static;inset:auto;min-height:44px;padding:8px 0 0;border:0;border-radius:6px;font-size:12px;align-items:center;display:flex;margin-top:4px}
.dashboard-card .pill{margin-top:6px;font-size:10px;padding:4px 8px;max-width:100%}
.dashboard-card--expense h2{min-height:36px}
.dashboard-card .expense-breakdown{margin-top:4px;position:relative}
.expense-breakdown-panel{position:absolute;top:100%;right:0;z-index:30;width:min(360px,calc(100vw - 64px));max-height:min(360px,50vh);overflow:auto;overscroll-behavior:contain;padding:12px 14px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:12px;background:var(--surface);box-shadow:none}
.expense-breakdown-panel:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.dashboard-card .expense-breakdown summary{font-size:11px;line-height:1.5;min-height:44px;text-decoration:none}
.dashboard-card .expense-breakdown summary::after{font-size:16px}
.dashboard-period{margin-top:10px;padding:10px 14px;border-radius:16px;gap:8px 12px}
.dashboard-period label{font-size:11px;gap:5px}
.dashboard-period input{min-height:44px;padding:8px 10px;font-size:13px}
.dashboard-period button{min-height:44px;padding:8px 14px;font-size:12px}
.dashboard-period p{font-size:10px;line-height:1.5;margin:2px 0 0}
.dashboard-period-warning{font-size:11px;line-height:1.5;margin:8px 0}
.dashboard-toolbar{margin-top:4px}
@media(min-width:1440px){.dashboard-cards{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.dashboard-card,.dashboard-card:nth-child(n+5){grid-column:auto}.dashboard-card strong{font-size:28px}.dashboard-card--expense h2{min-height:36px}}
@media(max-width:1000px){.dashboard-cards{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-card,.dashboard-card:nth-child(n+5),.dashboard-card:last-child{grid-column:span 3}}
@media(max-width:760px){.dashboard-strip{padding-top:12px}.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-card,.dashboard-card:nth-child(n+5),.dashboard-card:last-child{grid-column:auto;padding:12px}.dashboard-card[data-dashboard="assembly"]{grid-column:1/-1}.dashboard-card h2{font-size:12px;min-height:34px}.dashboard-card strong,.dashboard-card:nth-child(3) strong,.dashboard-card:nth-child(4) strong{font-size:25px;overflow-wrap:anywhere}.dashboard-period{padding:12px}.dashboard-period label{flex:1;min-width:120px}.dashboard-period input{width:100%;min-width:0}.dashboard-period button{flex:1}.dashboard-period p{flex-basis:100%}.dashboard-card--expense h2{min-height:0}}
@media(max-width:480px){.dashboard-card:nth-child(3),.dashboard-card:nth-child(4),.dashboard-card:nth-child(n+6){grid-column:1/-1}.dashboard-card:nth-child(3) h2,.dashboard-card:nth-child(4) h2{min-height:0}}

/* Selected sales spotlight layout. */
.dashboard-strip:has(.dashboard-cards--spotlight){width:100%;max-width:2048px}
.dashboard-cards--spotlight{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);grid-auto-rows:auto;gap:12px;align-items:stretch}
.dashboard-sales-group{min-width:0;border:1px solid color-mix(in srgb,var(--mint) 21%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--bg) 91%,transparent);padding:24px;display:grid;grid-template-rows:1.1fr 1fr}
.dashboard-sales-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);padding-top:20px;gap:20px}
.dashboard-side-grid{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-template-rows:auto auto auto}
.dashboard-cards--spotlight .dashboard-card{grid-column:auto;min-width:0;padding:16px 18px;border-radius:18px;background:color-mix(in srgb,var(--bg) 91%,transparent);box-shadow:none}
.dashboard-sales-group .dashboard-card{padding:0;border:0;border-radius:0;background:none}
.dashboard-cards--spotlight .dashboard-card h2{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.4;min-height:44px;margin:0 0 6px}
.dashboard-cards--spotlight .dashboard-card h2>span:last-child{min-width:0}
.dashboard-icon{width:44px;height:44px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:50%;background:color-mix(in srgb,var(--mint) 18%,var(--surface));display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.dashboard-icon img{display:block;width:21px;height:21px;filter:invert(89%) sepia(70%) saturate(698%) hue-rotate(28deg) brightness(105%)}
.dashboard-cards--spotlight .dashboard-card strong{font-size:clamp(23px,2.25vw,36px);letter-spacing:-.8px;line-height:1.2;margin:8px 0 4px;order:2}
.dashboard-cards--spotlight .dashboard-card strong span{display:inline;font-size:12px;font-weight:500;letter-spacing:0;margin:0 0 0 6px;color:var(--muted)}
.dashboard-cards--spotlight .dashboard-card small{font-size:11px;line-height:1.5;color:var(--muted);order:3}
.dashboard-cards--spotlight .dashboard-card h2{order:0}
.dashboard-cards--spotlight .dashboard-card>small:first-of-type{order:1;margin-left:56px;margin-top:-12px;margin-bottom:4px}
.dashboard-cards--spotlight .dashboard-card .pill{order:4}
.dashboard-cards--spotlight .dashboard-card .balance-card-open{order:5;color:var(--mint);font-size:13px;min-height:44px;margin-top:2px;padding-top:2px}
.dashboard-cards--spotlight .expense-breakdown{order:5;margin-top:2px}
.dashboard-cards--spotlight .expense-breakdown summary{font-size:13px;color:var(--mint)}
.dashboard-cards--spotlight .expense-breakdown-panel{color:var(--fg)}
.dashboard-cards--spotlight [data-dashboard="seller"] h2{font-size:17px}
.dashboard-cards--spotlight [data-dashboard="seller"] .dashboard-icon{width:62px;height:62px}
.dashboard-cards--spotlight [data-dashboard="seller"] .dashboard-icon img{width:28px;height:28px}
.dashboard-cards--spotlight [data-dashboard="seller"]>small:first-of-type{margin-left:74px;margin-top:-22px;font-size:12px}
.dashboard-cards--spotlight [data-dashboard="seller"] strong{font-size:clamp(44px,5.05vw,84px);letter-spacing:-2px;margin:22px 0 14px}
.dashboard-cards--spotlight [data-dashboard="seller"] strong span{font-size:18px}
.dashboard-cards--spotlight [data-dashboard="seller"]>small:nth-of-type(2){margin-bottom:14px;font-size:10px}
.dashboard-sales-secondary [data-dashboard="spp"]{border-left:1px solid var(--line);padding-left:20px}
.dashboard-sales-secondary .dashboard-card strong{font-size:clamp(24px,2.7vw,44px);margin:14px 0 6px}
.dashboard-sales-secondary .dashboard-card>small:first-of-type{font-size:10px}
.dashboard-cards--spotlight [data-dashboard="assembly"]{grid-column:1/-1;display:grid;grid-template-columns:44px minmax(0,1fr);gap:0 12px;padding:12px 18px}
.dashboard-cards--spotlight [data-dashboard="assembly"] h2{display:contents}
.dashboard-cards--spotlight [data-dashboard="assembly"] h2 .dashboard-icon{grid-row:1/4;align-self:center}
.dashboard-cards--spotlight [data-dashboard="assembly"] h2>span:last-child{font-size:14px}
.dashboard-cards--spotlight [data-dashboard="assembly"] strong{grid-column:2;font-size:30px;margin:0;order:0}
.dashboard-cards--spotlight [data-dashboard="assembly"] strong span{display:inline;font-size:10px;margin-left:10px;line-height:1.5}
.dashboard-cards--spotlight [data-dashboard="assembly"]>small:first-of-type{grid-column:2;margin:2px 0 0;font-size:10px;order:0}
.dashboard-cards--spotlight+.dashboard-period{padding:12px 18px;align-items:end;gap:10px}
.dashboard-cards--spotlight+.dashboard-period p{flex:1;min-width:180px;max-width:480px;border-left:1px solid var(--line);padding-left:18px;margin:auto 0 auto auto;font-size:11px}
.dashboard-cards--spotlight+.dashboard-period button[type="submit"]{background:var(--mint);color:var(--on-accent);border-color:color-mix(in srgb,var(--mint) 45%,var(--line));font-weight:750}
.dashboard-cards--spotlight .balance-card-open,.dashboard-cards--spotlight .expense-breakdown summary{color:var(--mint)!important}
.dashboard-cards--spotlight+.dashboard-period button[type="submit"]{color:var(--on-accent)!important}
@media(min-width:1440px){
.dashboard-sales-group{padding:28px}
.dashboard-cards--spotlight .dashboard-card h2{font-size:18px;gap:16px;min-height:56px}
.dashboard-cards--spotlight .dashboard-icon{width:56px;height:56px}
.dashboard-cards--spotlight .dashboard-icon img{width:26px;height:26px}
.dashboard-cards--spotlight .dashboard-card>small:first-of-type{margin-left:72px;margin-top:-14px;font-size:12px}
.dashboard-cards--spotlight .dashboard-card strong{font-size:clamp(30px,2.4vw,46px)}
.dashboard-cards--spotlight .dashboard-card strong span{font-size:14px}
.dashboard-cards--spotlight .dashboard-card .balance-card-open,.dashboard-cards--spotlight .expense-breakdown summary{font-size:16px}
.dashboard-cards--spotlight [data-dashboard="seller"] h2{font-size:20px}
.dashboard-cards--spotlight [data-dashboard="seller"] .dashboard-icon{width:72px;height:72px}
.dashboard-cards--spotlight [data-dashboard="seller"] .dashboard-icon img{width:32px;height:32px}
.dashboard-cards--spotlight [data-dashboard="seller"]>small:first-of-type{margin-left:88px;margin-top:-24px;font-size:14px}
.dashboard-cards--spotlight [data-dashboard="seller"] strong{font-size:clamp(64px,5.5vw,112px)}
.dashboard-cards--spotlight [data-dashboard="seller"] strong span{font-size:24px}
.dashboard-sales-secondary .dashboard-card strong{font-size:clamp(32px,3vw,60px)}
.dashboard-sales-secondary .dashboard-card>small:first-of-type{font-size:12px}
.dashboard-cards--spotlight [data-dashboard="assembly"]{grid-template-columns:56px minmax(0,1fr);gap:0 16px}
.dashboard-cards--spotlight [data-dashboard="assembly"] h2>span:last-child{font-size:18px}
.dashboard-cards--spotlight [data-dashboard="assembly"] strong{font-size:38px}
.dashboard-cards--spotlight [data-dashboard="assembly"]>small:first-of-type{margin:2px 0 0;font-size:11px}
}
@media(max-width:1100px){.dashboard-sales-group{padding:18px}.dashboard-cards--spotlight .dashboard-card{padding:14px}.dashboard-sales-group .dashboard-card{padding:0}.dashboard-sales-secondary{gap:14px}.dashboard-sales-secondary [data-dashboard="spp"]{padding-left:14px}.dashboard-cards--spotlight .dashboard-icon{width:36px;height:36px}.dashboard-cards--spotlight .dashboard-card h2{gap:8px;font-size:12px}.dashboard-cards--spotlight .dashboard-card>small:first-of-type{margin-left:44px;font-size:10px}.dashboard-cards--spotlight [data-dashboard="seller"]>small:first-of-type{margin-left:74px}.dashboard-cards--spotlight .dashboard-card strong span{font-size:10px}.dashboard-sales-secondary .dashboard-card strong{font-size:25px}.dashboard-cards--spotlight [data-dashboard="seller"] strong{font-size:48px}}
@media(max-width:900px){.dashboard-cards--spotlight{grid-template-columns:1fr}.dashboard-sales-group{grid-template-rows:auto auto}.dashboard-cards--spotlight [data-dashboard="seller"] strong{font-size:64px}.dashboard-sales-secondary .dashboard-card strong{font-size:36px}.dashboard-cards--spotlight .dashboard-card strong{overflow-wrap:anywhere}.dashboard-cards--spotlight .dashboard-card:nth-child(n){grid-column:auto}.dashboard-cards--spotlight [data-dashboard="assembly"]{grid-column:1/-1!important}.dashboard-side-grid{grid-template-rows:auto auto auto}.dashboard-cards--spotlight+.dashboard-period p{flex-basis:100%;max-width:none;border-left:0;padding:4px 0 0;margin:0}}
@media(max-width:480px){.dashboard-sales-group{padding:16px}.dashboard-cards--spotlight [data-dashboard="seller"] strong{font-size:40px;letter-spacing:-1.4px}.dashboard-cards--spotlight [data-dashboard="seller"] h2{font-size:14px}.dashboard-cards--spotlight [data-dashboard="seller"] .dashboard-icon{width:44px;height:44px}.dashboard-cards--spotlight [data-dashboard="seller"]>small:first-of-type{margin-left:56px;margin-top:-12px;font-size:10px}.dashboard-sales-secondary{grid-template-columns:1fr;gap:16px;padding-top:16px}.dashboard-sales-secondary [data-dashboard="spp"]{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}.dashboard-sales-secondary .dashboard-card strong{font-size:34px}.dashboard-cards--spotlight .dashboard-card{padding:12px}.dashboard-sales-group .dashboard-card{padding:0}.dashboard-side-grid{gap:10px}.dashboard-cards--spotlight .dashboard-side-grid .dashboard-card strong{font-size:22px;letter-spacing:-.6px}.dashboard-cards--spotlight .dashboard-side-grid .dashboard-card strong span{display:block;margin:3px 0}.dashboard-cards--spotlight .dashboard-side-grid .dashboard-card h2{align-items:flex-start;font-size:11px;gap:6px}.dashboard-cards--spotlight .dashboard-side-grid .dashboard-icon{width:28px;height:28px}.dashboard-cards--spotlight .dashboard-side-grid .dashboard-icon img{width:15px;height:15px}.dashboard-cards--spotlight .dashboard-side-grid .dashboard-card>small:first-of-type{margin-left:0;margin-top:0}.dashboard-cards--spotlight .balance-card-open{font-size:11px;min-height:44px}.dashboard-cards--spotlight .expense-breakdown summary{font-size:11px}.dashboard-cards--spotlight+.dashboard-period{padding:12px}.dashboard-cards--spotlight [data-dashboard="assembly"]{grid-template-columns:28px minmax(0,1fr);gap:0 8px}.dashboard-cards--spotlight [data-dashboard="assembly"] strong span{display:inline!important}}
.dashboard-sales-row [role="button"]{cursor:pointer;transition:background .15s}
.dashboard-sales-row [role="button"]:hover{background:var(--surface-2)}
.dashboard-sales-row [role="button"]:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
.dashboard-sales-row .sales-breakdown-hint{color:var(--mint)!important;margin-top:14px;font-weight:700}
.sales-breakdown{width:min(1280px,calc(100vw - 48px));max-width:calc(100vw - 48px);max-height:92dvh;overflow:auto;padding:0;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:none}
.sales-breakdown::backdrop{background:color-mix(in srgb,var(--bg) 79%,transparent);backdrop-filter:blur(5px)}
.sales-detail-header{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 28px 20px;background:var(--surface);border-bottom:1px solid var(--line)}
.sales-detail-eyebrow{font-size:10px;font-weight:750;letter-spacing:1.7px;color:var(--mint)!important}
.sales-breakdown .sales-detail-header h2{font-size:26px;line-height:1.25;margin:8px 0 12px;letter-spacing:-.6px}
.sales-detail-context{display:flex;flex-wrap:wrap;gap:8px}
.sales-detail-context span{padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:12px;line-height:1.5}
.sales-detail-header form{margin:0}
.sales-breakdown .sales-detail-close{display:grid;place-items:center;padding:0;width:40px;min-height:40px;font-size:27px;line-height:1;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}
.sales-detail-body{padding:24px 28px}
.sales-detail-summary{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px 24px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:18px;background:var(--surface-2)}
.sales-detail-summary>div>span{font-size:12px;color:var(--muted)!important}
.sales-breakdown-total{display:flex;gap:16px;flex-wrap:wrap;margin-top:7px}
.sales-breakdown-total strong{font-size:38px;line-height:1.2;letter-spacing:-1.2px;font-variant-numeric:tabular-nums}
.sales-breakdown-total strong small{font-size:15px;font-weight:550;margin-left:10px;letter-spacing:0;color:var(--muted)!important}
.sales-detail-stat{border-left:1px solid var(--line);padding-left:24px;max-width:190px}
.sales-detail-stat strong{display:block;font-size:27px;margin-bottom:4px;line-height:1.1}
.sales-breakdown .sales-detail-warning{display:flex;align-items:center;gap:10px;padding:11px 14px;margin:14px 0 0;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:10px;background:var(--surface);color:var(--amber)!important;font-size:12px;line-height:1.6}
.sales-detail-warning>span{display:grid;place-items:center;flex:0 0 20px;height:20px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:50%;color:var(--amber)!important;font-weight:750}
.sales-detail-rules{margin:12px 0 22px}
.sales-detail-rules summary{font-size:12px;color:var(--muted)!important;cursor:pointer}
.sales-detail-rules p{font-size:13px;line-height:1.7;margin:10px 0;padding:12px 16px;background:var(--surface);border-radius:10px}
.sales-breakdown .sales-detail-search{display:block;max-width:500px;margin:0 0 22px}
.sales-detail-search>span{display:block;font-size:12px;font-weight:650;margin-bottom:7px}
.sales-breakdown .sales-detail-search input{min-height:44px;font-size:13px;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px 14px;width:100%}
.sales-detail-list-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.sales-detail-list-heading h3{font-size:17px;margin:0}
.sales-detail-list-heading>span{font-size:12px;color:var(--muted)!important}
.sales-breakdown .table-scroll{border-radius:14px;border-color:var(--line)}
.sales-breakdown table{font-size:13px;min-width:850px}
.sales-breakdown th{font-size:10px;padding:13px 14px;letter-spacing:.4px;background:var(--surface)}
.sales-breakdown td{vertical-align:middle;padding:15px 14px;border-color:var(--line)}
.sales-breakdown td:first-child{min-width:230px;width:32%}
.sales-breakdown td strong{font-size:13px;font-weight:650;display:block;line-height:1.5}
.sales-breakdown td small{display:block;margin-top:5px;font-size:10px;color:var(--muted)!important}
.sales-product-info{display:flex;align-items:flex-start;gap:12px}
.sales-product-copy{min-width:0;overflow-wrap:anywhere}
.sales-product-photo{display:block;flex:0 0 52px;width:52px;height:68px;object-fit:contain;border-radius:8px;background:color-mix(in srgb,var(--fg) 6%,transparent);border:1px solid var(--line)}
.sales-product-no-photo{display:grid;place-items:center;text-align:center;background:var(--surface-2);color:var(--muted)!important;font-size:10px;padding:4px}
.sales-cabinet-tag{display:inline-block;margin-top:7px;border:1px solid var(--line);border-radius:6px;padding:2px 6px;font-size:10px;background:var(--surface-2);color:var(--muted)!important}
.sales-breakdown .sales-amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:650}
.sales-breakdown .commission-info{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;box-shadow:none;padding:8px 0;min-height:44px;color:var(--mint)!important;font:inherit;text-align:left;cursor:help}
.commission-info span{font-size:15px;color:var(--mint)!important}
.commission-tooltip{position:fixed;inset:auto;margin:0;width:340px;max-width:calc(100vw - 24px);padding:16px 18px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:14px;background:var(--surface-2);color:var(--fg)!important;box-shadow:none;font-size:13px;line-height:1.7;white-space:normal;z-index:10}
.commission-tooltip h3{font-size:16px;margin:0 0 12px;line-height:1.3}
.commission-tooltip{max-height:calc(100dvh - 24px);overflow-y:auto}
.commission-checklist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.commission-checklist li{display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.commission-checklist li>span{flex:0 0 20px;text-align:center;color:var(--mint)!important;font-weight:800}
.commission-checklist strong{display:block;font-size:13px;font-weight:650}
.commission-checklist b{display:block;margin-top:5px;color:var(--mint)!important;font-size:18px;font-variant-numeric:tabular-nums}
.commission-checklist .commission-excluded>span{color:var(--muted)!important}
.commission-tooltip .commission-note{font-size:12px;line-height:1.5;padding-top:12px;margin:12px 0 0;border-top:1px solid var(--line)}
.commission-tooltip .commission-unknown{font-size:12px;line-height:1.5;margin:10px 0;color:var(--amber)!important}
.commission-source{display:block;font-size:10px;line-height:1.5;color:var(--muted)!important;overflow-wrap:anywhere}
.sales-breakdown .sales-selected{background:var(--surface-2);color:var(--mint)!important;font-weight:750}
.sales-detail-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}
.sales-detail-pagination>span{font-size:11px;color:var(--muted)!important}
.sales-detail-pagination>div{display:flex;gap:8px}
.sales-detail-pagination button{font-size:12px;min-height:40px;padding:8px 14px;border-radius:10px;background:var(--surface-2)}
.sales-detail-pagination button:disabled{opacity:.4}
.sales-detail-empty{padding:36px 16px;text-align:center;border:1px dashed var(--line);border-radius:14px;background:var(--surface)}
.sales-detail-empty p{font-size:13px;margin-bottom:0}
@media(max-width:600px){
 .sales-breakdown{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:94dvh;border-radius:18px}
 .sales-detail-header{padding:18px 16px;gap:10px}
 .sales-breakdown .sales-detail-header h2{font-size:21px;margin:7px 0 10px}
 .sales-detail-eyebrow{font-size:9px;letter-spacing:1px}
 .sales-detail-context span{font-size:10px;padding:4px 7px}
 .sales-breakdown .sales-detail-close{min-height:36px;width:36px;font-size:24px}
 .sales-detail-body{padding:16px}
 .sales-detail-summary{padding:16px;display:block}
 .sales-breakdown-total strong{font-size:30px}
 .sales-detail-stat{max-width:none;border-left:0;border-top:1px solid var(--line);padding:12px 0 0;margin-top:14px;display:flex;align-items:center;gap:10px}
 .sales-detail-stat strong{font-size:19px;margin:0}
 .sales-detail-summary .sales-detail-stat>span{font-size:11px}
 .sales-breakdown .sales-detail-warning{font-size:11px;align-items:flex-start;padding:10px}
 .sales-detail-pagination{flex-wrap:wrap}
 .sales-detail-pagination>div{margin-left:auto}
 .sales-breakdown .table-scroll{border:0;overflow:visible}
 .sales-breakdown table{min-width:0;display:block}
 .sales-breakdown thead{display:none}
 .sales-breakdown tbody{display:grid;gap:12px}
 .sales-breakdown tr{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}
 .sales-breakdown td,.sales-breakdown td:first-child{display:block;width:auto;min-width:0;padding:12px;border-bottom:1px solid var(--line)}
 .sales-breakdown .sales-product-cell{grid-column:1/-1}
 .sales-breakdown td[data-label]::before{content:attr(data-label);display:block;font-size:10px;white-space:normal;color:var(--muted)!important;margin-bottom:6px;font-weight:500}
 .sales-breakdown .sales-amount{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px}
 .sales-breakdown td.sales-amount::before{margin:0;max-width:50%}
 .sales-breakdown tr td:last-child{border-bottom:0}
}
/* Shared header: every section uses the same navigation and page backdrop. */
.sales-breakdown .settlement-row>td{padding:0 14px 18px;background:var(--surface)}
.settlement-details{border:1px solid var(--line);border-radius:12px;background:var(--surface);white-space:normal}
.settlement-details summary{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:16px 44px 16px 16px;cursor:pointer;font-weight:700;color:var(--mint);min-height:48px}
.settlement-details summary::after{position:absolute;right:16px;top:16px}
.settlement-details summary span{margin-left:auto;font-size:13px;color:var(--fg)}
.settlement-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 18px 18px}
.settlement-grid section{min-width:0}
.settlement-grid h4{font-size:16px;margin:8px 0 14px}
.settlement-grid ol{padding:0;margin:0;list-style:none}
.settlement-grid li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.5}
.settlement-grid li strong{white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums}
.settlement-grid .settlement-result{color:var(--mint);font-weight:700}
.settlement-grid p,.settlement-missing{font-size:12px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.settlement-missing{padding:0 16px 16px}
.sales-handoff{margin-top:10px;white-space:normal;font-size:12px;max-width:460px}
.sales-handoff summary{cursor:pointer;color:var(--mint);min-height:32px;line-height:1.5}
.sales-breakdown .sales-handoff>summary{font-size:13px;font-weight:600;padding:6px 26px 6px 0}
.sales-handoff p{font-size:11px;line-height:1.5;color:var(--muted);margin:8px 0}
.sales-handoff ul{padding:0;list-style:none;margin:8px 0}
.sales-handoff li{padding:8px 0;border-bottom:1px solid var(--line);display:grid;gap:4px}
.sales-handoff li strong{font-size:12px!important;overflow-wrap:anywhere}
.sales-handoff .handoff-event{display:grid;gap:3px;padding:5px 0}
.sales-handoff .handoff-event>span{color:var(--muted);font-size:11px}
@media(max-width:900px){.settlement-grid{grid-template-columns:1fr;gap:14px}}
@media(max-width:600px){.sales-breakdown tr.settlement-row{display:block;border:0}.sales-breakdown .settlement-row>td{padding:0}.settlement-details summary{padding:12px 36px 12px 12px;font-size:13px}.settlement-details summary span{margin-left:0;width:100%}.settlement-grid{padding:0 12px 12px}.settlement-grid li{font-size:12px;gap:10px}}
.shell{padding-top:0;background:var(--bg)}
.shell::before{display:none}
.shell .main{padding-top:0}
.shell .app-header{height:70px;min-height:70px;margin:0;padding:10px 3%;border-radius:0;border-bottom:1px solid var(--line);background:var(--bg);gap:30px}
.shell .brand-wb{text-transform:uppercase;color:var(--sky)!important;font-size:30px}
.shell .brand-name,.shell .header-mode{display:none}
.shell .nav{justify-content:flex-start;gap:16px}
.shell .nav-primary{gap:12px}
.shell .nav button,.shell .nav-more summary{font-size:15px;min-height:48px;padding:10px 16px}
.shell .nav-primary button{border-radius:0}
.shell .nav-primary button.active{background:transparent;color:var(--mint)!important;box-shadow:none;border-bottom:3px solid color-mix(in srgb,var(--mint) 100%,var(--line))}
.dashboard-strip--grouped{width:100%;max-width:1920px;padding:22px 3% 0}
.dashboard-strip--grouped .overview-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.dashboard-strip--grouped .overview-heading h1{font-size:32px;margin:0;line-height:1.3}
.dashboard-strip--grouped .overview-heading button{min-height:44px;font-size:14px;padding:10px 20px}
.dashboard-strip--grouped .dashboard-period--unified{display:flex;align-items:flex-end;gap:12px;margin:0;padding:12px 16px;border-radius:16px;background:var(--bg)}
.dashboard-period--unified .cabinet-control{display:flex;align-items:center;gap:12px;flex:1 1 auto;min-width:0}
.dashboard-period--unified .cabinet-control>span{font-size:13px}
.dashboard-period--unified .cabinet-segments{display:flex;flex:1;min-width:0;padding:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:18px}
.dashboard-period--unified .cabinet-segments button{flex:1;font-size:14px;white-space:nowrap;padding:10px 14px;border:1px solid transparent;background:transparent;box-shadow:none;min-height:44px}
.dashboard-period--unified .cabinet-segments button[aria-pressed="true"]{border-color:color-mix(in srgb,var(--mint) 45%,var(--line));background:color-mix(in srgb,var(--mint) 18%,var(--surface));color:var(--mint)!important}
.dashboard-period--unified #cabinet{display:none}
.dashboard-period--unified label{flex:0 1 174px;gap:4px;font-size:11px}
.dashboard-period--unified input{min-height:44px;font-size:14px;padding:10px 12px;background:var(--surface)}
.dashboard-period--unified button{font-size:12px;min-height:44px;padding:10px 16px;white-space:nowrap}
.dashboard-period--unified button[type="submit"]{background:var(--mint);border-color:color-mix(in srgb,var(--mint) 100%,var(--line));color:var(--on-accent)!important;font-weight:750}
.dashboard-period--unified>button{align-self:flex-end;flex:0 0 auto;height:44px}
@media(min-width:601px){.dashboard-period--unified>button[type="submit"]{width:156px}.dashboard-period--unified>#reset-sales-period{width:140px}}
@media(min-width:601px) and (max-width:900px){.dashboard-strip--grouped .dashboard-period--unified label,.dashboard-period--unified>button{flex:1 1 40%}}
.dashboard-strip--grouped .dashboard-period--unified>p{display:none}
.dashboard-strip--grouped .dashboard-status-row{display:flex;align-items:center;gap:16px;position:relative;margin:10px 0 16px;padding:6px 14px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:12px;background:var(--surface);color:var(--amber);min-height:48px}
.dashboard-strip--grouped .dashboard-period-warning{flex:1;min-width:0;color:var(--amber)!important;font-size:12px;padding:0}
.dashboard-strip--grouped .requirements-link{border:0;background:transparent;box-shadow:none;font-size:12px;min-height:36px;padding:4px 8px;margin-left:auto;white-space:nowrap}
.dashboard-strip--grouped .dashboard-toolbar{margin:0;flex:0 0 auto}
.dashboard-strip--grouped .dashboard-toolbar summary{min-height:36px;font-size:11px;gap:8px;padding:0}
.dashboard-strip--grouped .dashboard-toolbar details>div{position:absolute;right:0;top:100%;z-index:35;width:min(640px,100%);max-height:380px;overflow:auto;margin:6px 0;color:var(--fg);box-shadow:none}
.dashboard-strip--grouped .dashboard-sales-section,.dashboard-strip--grouped .dashboard-finance-section{border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:16px 18px;margin-bottom:14px}
.dashboard-strip--grouped .dashboard-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.dashboard-strip--grouped .dashboard-section-heading>h2,.dashboard-strip--grouped .dashboard-finance-section>h2{font-size:21px;line-height:1.4;margin:0 0 8px}
.dashboard-strip--grouped .dashboard-card{grid-column:auto;min-width:0;box-shadow:none}
.dashboard-strip--grouped .dashboard-card h2{display:flex;align-items:center;gap:12px;min-height:44px;margin:0 0 14px;font-size:15px;line-height:1.4}
.dashboard-strip--grouped .dashboard-card strong{margin:0 0 10px;font-size:clamp(28px,2.8vw,48px);line-height:1.2;letter-spacing:-1px;overflow-wrap:anywhere}
.dashboard-strip--grouped .dashboard-card strong span{display:inline;font-size:14px;margin-left:6px;letter-spacing:0}
.dashboard-strip--grouped .dashboard-card small{font-size:11px;color:var(--muted);line-height:1.5}
.dashboard-strip--grouped .dashboard-sales-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0}
.dashboard-strip--grouped .dashboard-sales-row .dashboard-card:nth-child(3){border-left:0;padding-left:6px}
.dashboard-strip--grouped .dashboard-sales-row .dashboard-card{border:0;border-radius:0;background:transparent;padding:6px 22px}
.dashboard-strip--grouped .dashboard-sales-row .dashboard-card:first-child{padding-left:6px}
.dashboard-strip--grouped .dashboard-sales-row .dashboard-card+.dashboard-card{border-left:1px solid var(--line)}
.dashboard-strip--grouped .dashboard-sales-row .dashboard-card:nth-child(odd){border-left:0;padding-left:6px}
.dashboard-strip--grouped .dashboard-sales-row strong{font-size:clamp(30px,3.4vw,62px);font-weight:800;white-space:nowrap;letter-spacing:-1.5px}
.dashboard-strip--grouped .dashboard-sales-row [data-dashboard="seller"] strong{font-size:clamp(34px,4.2vw,80px)}
.dashboard-strip--grouped .dashboard-sales-row strong span{font-size:.42em}
.dashboard-strip--grouped .dashboard-sales-row .dashboard-icon{width:48px;height:48px}
.dashboard-strip--grouped .dashboard-finance-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.dashboard-strip--grouped .dashboard-finance-row .dashboard-card{border-radius:16px;padding:16px;background:var(--bg)}
.dashboard-strip--grouped .dashboard-finance-row .dashboard-card h2{font-size:13px;margin-bottom:8px}
.dashboard-strip--grouped .dashboard-finance-row .dashboard-icon{width:40px;height:40px}
.dashboard-strip--grouped .balance-card-open,.dashboard-strip--grouped .expense-breakdown summary{color:var(--mint)!important}
.dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"]{display:grid;grid-template-columns:32px auto auto;align-items:center;column-gap:10px;max-width:420px;padding:8px 12px;border:0;border-radius:12px;background:var(--bg)}
.dashboard-strip--grouped [data-dashboard="assembly"] h2{display:contents}
.dashboard-strip--grouped [data-dashboard="assembly"] h2>span:last-child{font-size:12px}
.dashboard-strip--grouped [data-dashboard="assembly"] .dashboard-icon{width:32px;height:32px;grid-row:1/3}
.dashboard-strip--grouped [data-dashboard="assembly"] .dashboard-icon img{width:18px;height:18px}
.dashboard-strip--grouped [data-dashboard="assembly"] strong{font-size:24px;margin:0}
.dashboard-strip--grouped [data-dashboard="assembly"] strong span{display:none}
.dashboard-strip--grouped [data-dashboard="assembly"]>small{grid-column:2/4;font-size:10px;max-width:330px}
@media(max-width:1500px){.dashboard-period--unified .cabinet-control{flex-basis:100%}.dashboard-period--unified label{flex:1 1 174px}.dashboard-period--unified .cabinet-segments{flex:1}.dashboard-period--unified .cabinet-segments button{flex:1}.dashboard-strip--grouped .dashboard-finance-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.dashboard-strip--grouped .dashboard-sales-row{grid-template-columns:1fr 1fr}.dashboard-strip--grouped .dashboard-sales-row .dashboard-card:first-child{padding:8px 6px 18px}.dashboard-strip--grouped .dashboard-sales-row [data-dashboard="seller"] strong{font-size:36px}.dashboard-strip--grouped .dashboard-sales-row strong{font-size:36px}.dashboard-strip--grouped .dashboard-status-row{flex-wrap:wrap;gap:4px 12px}.dashboard-strip--grouped .dashboard-period-warning{flex-basis:100%}.dashboard-strip--grouped .requirements-link{margin-left:0}.dashboard-strip--grouped .dashboard-toolbar{margin-left:auto}}
@media(max-width:600px){.dashboard-strip--grouped{padding:18px 16px 0}.dashboard-strip--grouped .overview-heading{align-items:flex-start;gap:12px}.dashboard-strip--grouped .overview-heading h1{font-size:26px}.dashboard-strip--grouped .overview-heading button{font-size:11px;padding:8px 12px;max-width:180px}.dashboard-period--unified .cabinet-segments{display:none}.dashboard-period--unified #cabinet{display:block;width:100%;min-width:0;min-height:44px;font-size:13px}.dashboard-period--unified .cabinet-control{display:block}.dashboard-period--unified .cabinet-control>span{display:block;font-size:11px;margin-bottom:4px}.dashboard-period--unified label{flex:1 1 40%}.dashboard-period--unified button{flex:1 1 40%;white-space:normal}.dashboard-strip--grouped .dashboard-period--unified{padding:12px;gap:10px}.dashboard-strip--grouped .dashboard-section-heading{align-items:flex-start;flex-direction:column;gap:6px}.dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"]{width:100%;max-width:none}.dashboard-strip--grouped .dashboard-sales-section,.dashboard-strip--grouped .dashboard-finance-section{padding:14px 12px}.dashboard-strip--grouped .dashboard-sales-row,.dashboard-strip--grouped .dashboard-finance-row{grid-template-columns:1fr}.dashboard-strip--grouped .dashboard-sales-row .dashboard-card:nth-child(n){grid-column:auto;padding:16px 4px;border-left:0;border-top:1px solid var(--line)}.dashboard-strip--grouped .dashboard-sales-row .dashboard-card:first-child{border-top:0}.dashboard-strip--grouped .dashboard-sales-row [data-dashboard="seller"] strong{font-size:clamp(32px,9vw,48px)}.dashboard-strip--grouped .dashboard-sales-row strong{font-size:clamp(30px,8vw,42px)}.dashboard-strip--grouped .dashboard-sales-row .dashboard-icon{width:40px;height:40px}.dashboard-strip--grouped .dashboard-finance-row .dashboard-card strong{font-size:32px}.dashboard-strip--grouped .dashboard-card strong{white-space:normal}.dashboard-strip--grouped .dashboard-section-heading>h2,.dashboard-strip--grouped .dashboard-finance-section>h2{font-size:19px}}

/* Bank reconciliation badges (balance report) */
.recon-badge{display:inline-block;padding:1px 8px;margin-right:6px;border-radius:999px;font-size:12px;font-weight:600;line-height:18px;vertical-align:middle}
.recon-ok{background:color-mix(in srgb,var(--mint) 10%,transparent);color:var(--mint)!important}
.recon-warn{background:color-mix(in srgb,var(--amber) 10%,transparent);color:var(--amber)!important}
.recon-none{background:color-mix(in srgb,var(--surface-2) 20%,transparent);color:var(--muted)!important}
.balance-report-summary p.recon-warn-text{color:var(--amber)!important}
.recon-summary{margin:8px 0 12px}

/* "Требует внимания" panel */
.attention ul{margin:8px 0 0;padding-left:18px}
.attention li{margin:4px 0;line-height:1.4}
.panel.attention ul li.attention-crit{color:var(--coral)!important}
.panel.attention ul li.attention-warn{color:var(--amber)!important}
.panel.attention ul li{list-style:disc}

/* ==== Pulse layer (2026-10) =================================================
   The approved "WB Observatory Пульс" design applied to the whole app.
   Scoped under :is(#app,dialog) so it wins over the older layered rules above without !important. */
body{background:var(--bg);background-image:none;color:var(--fg);font-variant-numeric:tabular-nums}
.theme-switching *{transition:none!important}
:is(#app,dialog) a{color:var(--sky)}
:is(#app,dialog) :focus-visible{outline:2px solid var(--sky);outline-offset:2px}
:is(#app,dialog) h1{font-size:clamp(30px,3vw,40px);font-weight:750;letter-spacing:-.8px;line-height:1.15}
:is(#app,dialog) h2{font-size:20px;font-weight:700;letter-spacing:-.3px}
:is(#app,dialog) h3{font-size:17px}
:is(#app,dialog) small,:is(#app,dialog) .sub,:is(#app,dialog) .req-note,:is(#app,dialog) .breadcrumb{color:var(--muted)}
:is(#app,dialog) .eyebrow,:is(#app,dialog) .field-caption{color:var(--muted);font-size:12px;letter-spacing:.6px;font-weight:600}

/* shell: sticky glass bar, centred content */
:is(#app,dialog) .shell{padding-top:0}
:is(#app,dialog) .app-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;min-height:64px;padding:0 max(20px,calc((100% - 1360px)/2));background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(1.4) blur(10px);box-shadow:none;gap:24px}
:is(#app,dialog) .brand{gap:10px;color:var(--fg)}
:is(#app,dialog) .brand-name{font-size:16px;font-weight:700;letter-spacing:-.2px;color:var(--fg)}
.brand-orbit{fill:none;stroke:var(--line);stroke-width:2}
.brand-arc{fill:none;stroke:var(--mint);stroke-width:2.4;stroke-linecap:round}
.brand-core{fill:var(--fg)}
:is(#app,dialog) .nav{position:relative}
:is(#app,dialog) .nav-primary{position:relative;display:flex;gap:2px}
:is(#app,dialog) .nav button{background:none;border:0;border-radius:10px;box-shadow:none;color:var(--muted);font-size:15px;font-weight:600;padding:20px 12px;min-height:64px}
:is(#app,dialog) .nav button.active,:is(#app,dialog) .nav button[aria-current="page"]{background:none;color:var(--fg);box-shadow:none}
.nav-ink{position:absolute;left:0;bottom:0;height:2px;width:1px;background:var(--mint);transform-origin:0 0;transition:transform 260ms var(--ease-out);pointer-events:none}
:is(#app,dialog) .nav-more summary{color:var(--muted);font-weight:600;font-size:15px}
:is(#app,dialog) .nav-dropdown{background:var(--surface);border:1px solid var(--line);border-radius:16px}
:is(#app,dialog) .nav-dropdown button{min-height:44px;padding:10px 14px}
:is(#app,dialog) .theme-toggle{display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:0;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--fg);flex:none}
.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
:is(#app,dialog) .main,:is(#app,dialog) .dashboard-strip{width:min(1400px,100%);padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
:is(#app,dialog) .topbar{min-height:72px;margin-bottom:8px}
:is(#app,dialog) .footer{border-top:1px solid var(--line);color:var(--muted)}

/* surfaces */
:is(#app,dialog) .panel,:is(#app,dialog) .requirement,:is(#app,dialog) .cabinet-card,:is(#app,dialog) .empty,:is(#app,dialog) dialog,:is(#app,dialog) .notice{background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:none}
:is(#app,dialog) .panel{padding:24px}
:is(#app,dialog) .empty{background:var(--surface-2);border-style:dashed}
:is(#app,dialog) .notice{background:color-mix(in srgb,var(--sky) 8%,var(--surface))}
:is(#app,dialog) .table-scroll{border:1px solid var(--line);border-radius:16px;background:var(--surface)}
:is(#app,dialog) th{background:var(--surface-2);color:var(--muted);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.5px}
:is(#app,dialog) td{border-bottom:1px solid var(--line);color:var(--fg)}
:is(#app,dialog) tbody tr{transition:background-color 120ms ease}

/* controls */
:is(#app,dialog) button{border-radius:12px;background:var(--surface-2);border:1px solid var(--line);color:var(--fg);box-shadow:none;transition:background-color 160ms ease,border-color 160ms ease,transform 140ms var(--ease-out)}
:is(#app,dialog) button:active:not(:disabled){transform:scale(.97)}
:is(#app,dialog) button:disabled{background:var(--surface-2);border-style:dashed;color:var(--muted);opacity:.8}
:is(#app,dialog) .primary,:is(#app,dialog) button[type="submit"]{background:var(--mint);border-color:var(--mint);color:var(--on-accent);font-weight:700}
:is(#app,dialog) .secondary-link,:is(#app,dialog) .requirements-link,:is(#app,dialog) .balance-card-open{background:none;border:0;color:var(--sky);padding-left:0;padding-right:0}
:is(#app,dialog) input,:is(#app,dialog) select,:is(#app,dialog) textarea{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;color:var(--fg)}
:is(#app,dialog) input:focus,:is(#app,dialog) select:focus,:is(#app,dialog) textarea:focus{border-color:var(--sky)}
:is(#app,dialog) label{color:var(--muted)}
:is(#app,dialog) input[type="date"]{color-scheme:inherit}
:is(#app,dialog) .pill{border-radius:999px}
:is(#app,dialog) details summary{color:var(--fg)}

@media (hover:hover) and (pointer:fine){
 :is(#app,dialog) .nav button:hover{background:none;color:var(--fg)}
 :is(#app,dialog) button:hover:not(:disabled){background:color-mix(in srgb,var(--fg) 6%,var(--surface-2));border-color:color-mix(in srgb,var(--fg) 18%,var(--line))}
 :is(#app,dialog) .primary:hover:not(:disabled),:is(#app,dialog) button[type="submit"]:hover:not(:disabled){background:color-mix(in srgb,var(--mint) 88%,var(--fg));border-color:var(--mint)}
 :is(#app,dialog) .secondary-link:hover,:is(#app,dialog) .requirements-link:hover,:is(#app,dialog) .balance-card-open:hover{background:none;text-decoration:underline}
 :is(#app,dialog) tbody tr:hover{background:color-mix(in srgb,var(--fg) 3%,transparent)}
}

/* ---- overview ---- */
:is(#app,dialog) .dashboard-strip--grouped{padding-top:24px}
:is(#app,dialog) .dashboard-strip--grouped .overview-heading{margin-bottom:8px}
:is(#app,dialog) .dashboard-strip--grouped .overview-heading h1{font-size:clamp(28px,2.6vw,34px)}
:is(#app,dialog) .dashboard-period--unified{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 14px;margin:8px 0 0;padding:0;border:0;background:none}
:is(#app,dialog) .dashboard-period--unified label{flex:0 1 180px;font-size:12px;color:var(--muted)}
:is(#app,dialog) .dashboard-period--unified input{min-height:42px}
:is(#app,dialog) .dashboard-period--unified button{min-height:42px;border-radius:12px;font-size:14px}
:is(#app,dialog) .dashboard-period--unified p{color:var(--muted);font-size:12px}
:is(#app,dialog) .cabinet-control{display:flex;align-items:center;gap:10px;flex:1 1 100%}
:is(#app,dialog) .cabinet-control>span{font-size:12px;color:var(--muted)}
:is(#app,dialog) .cabinet-control select{display:none}
:is(#app,dialog) .cabinet-segments{position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);width:auto;min-width:min(480px,100%)}
:is(#app,dialog) .cabinet-segments button{position:relative;z-index:1;background:none;border:0;border-radius:10px;min-height:38px;padding:8px 18px;color:var(--muted);font-weight:600;font-size:14px;box-shadow:none;transition:color 160ms ease}
:is(#app,dialog) .cabinet-segments button[aria-pressed="true"]{color:var(--fg);background:var(--surface-2)}
:is(#app,dialog) .cabinet-segments.has-pill button[aria-pressed="true"]{background:none}
.seg-pill{position:absolute;top:4px;bottom:4px;left:0;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);transition:transform 260ms var(--ease-out),width 260ms var(--ease-out);pointer-events:none}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-status-row{margin:14px 0 16px;padding:8px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted)}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-period-warning{color:var(--amber)}
:is(#app,dialog) .dashboard-toolbar details>div{background:var(--surface);border:1px solid var(--line);color:var(--fg)}

.pulse-eyebrow{margin:0;font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);font-weight:700}
.pulse-big{margin:8px 0 4px;font-size:clamp(32px,3.2vw,48px);font-weight:750;line-height:1.04;letter-spacing:-1.6px;white-space:nowrap}
.pulse-kop,.pulse-cur{color:var(--muted);font-weight:600}
.pulse-kop{font-size:.5em;letter-spacing:0}
.pulse-sentence{margin:0;color:var(--muted);line-height:1.6;max-width:44ch}
.pulse-sentence b{color:var(--fg)}
.pulse-minis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pulse-minis div{border-top:1px solid var(--line);padding-top:10px;min-width:0}
.pulse-minis span{display:block;font-size:12px;color:var(--muted)}
.pulse-minis b{font-size:16px;white-space:nowrap}
.pulse-minis b span{display:inline;font-size:inherit;color:inherit}
.pulse-minis small{display:block;font-size:11px;color:var(--muted)}
.pulse-flow-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px}
.pulse-flow-head h2{margin:0;font-size:16px}
.pulse-flow-head span{font-size:12px;color:var(--muted)}
.flow-scroll{overflow-x:auto;overflow-y:visible;margin:0 -6px;padding:0 6px}
.flow-box{position:relative;min-width:640px}
.flow-box svg{display:block;width:100%;height:auto}
.flow-box canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.flow-link{cursor:pointer;fill-opacity:.24;transition:opacity 180ms ease}
.flow-box.hovering .flow-link{opacity:.18}
.flow-box.hovering .flow-link.on{opacity:1}
.flow-sky{fill:var(--sky)}.flow-coral{fill:var(--coral)}.flow-mint{fill:var(--mint)}
.flow-link.flow-sky{fill-opacity:.2}
.flow-label{font-size:12px;fill:var(--muted);paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round}
.flow-value{font-size:14px;font-weight:700;fill:var(--fg);paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round}
.flow-tip{position:absolute;pointer-events:none;background:var(--fg);color:var(--bg);padding:8px 10px;border-radius:10px;font-size:12px;line-height:1.45;max-width:300px;transform:translate(-50%,calc(-100% - 12px));z-index:3}
.flow-tip.below{transform:translate(-50%,18px)}
.flow-tip b{display:block;font-size:13px}
.flow-tip small{display:block;color:inherit;opacity:.8;margin-top:2px}
.flow-legend{display:inline-flex;flex-wrap:wrap;gap:4px 14px;margin-right:12px;vertical-align:middle}
.flow-legend span{display:inline-flex;align-items:center;gap:6px}
.flow-sw{width:14px;height:6px;border-radius:3px;display:inline-block}
.flow-sw-sky{background:var(--sky)}.flow-sw-coral{background:var(--coral)}.flow-sw-mint{background:var(--mint)}
.flow-note{margin:8px 0 0;font-size:12px;line-height:1.55;color:var(--muted)}
.flow-empty{display:grid;place-content:center;min-height:240px;text-align:center;padding:20px;border:1px dashed var(--line);border-radius:16px;background:var(--surface-2);color:var(--muted)}
.flow-empty p{margin:0 0 6px}.flow-empty b{color:var(--fg)}

/* KPI tiles: sales, balances, expenses */
:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-section,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-section{border:0;background:none;padding:0;margin:0 0 16px}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading>h2,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-section>h2{font-size:16px;margin:0 0 10px}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-card,:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row .dashboard-card:nth-child(n){grid-column:auto;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:none;color:var(--fg)}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-card h2{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--muted);min-height:0;margin:0 0 12px}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-card strong,:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row strong,:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row [data-dashboard="seller"] strong,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-row .dashboard-card strong{font-size:clamp(22px,1.9vw,28px);font-weight:750;letter-spacing:-.5px;white-space:nowrap;margin:0 0 8px;color:var(--fg)}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-card strong span{display:inline;margin-left:6px;font-size:12px;font-weight:600;color:var(--muted);letter-spacing:0}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-card small{font-size:11px;color:var(--muted)}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row .sales-breakdown-hint{color:var(--sky)!important;font-weight:700;margin-top:auto;padding-top:10px}
:is(#app,dialog) .dashboard-strip--grouped [data-dashboard="pay"],:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row [data-dashboard="seller"]{border-color:color-mix(in srgb,var(--sky) 45%,var(--line))}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"]{display:grid;grid-template-columns:auto auto 1fr;align-items:center;column-gap:10px;max-width:none;width:auto;padding:8px 14px;border-radius:14px}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"] h2{margin:0;color:var(--fg)}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"] strong{font-size:22px;margin:0}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"] small{grid-column:1/-1}
@media (hover:hover) and (pointer:fine){
 :is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row [role="button"]:hover{background:var(--surface-2);border-color:color-mix(in srgb,var(--sky) 45%,var(--line))}
}
:is(#app,dialog) .dashboard-icon{width:32px;height:32px;border:0;border-radius:10px;background:var(--surface-2);display:inline-grid;place-items:center;flex:none}
:is(#app,dialog) .dashboard-icon img{display:none}
:is(#app,dialog) .dashboard-icon::before{content:"";width:16px;height:16px;background:var(--sky);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
[data-dashboard="seller"] .dashboard-icon{--ico:url(/assets/icons/cart3.svg)}
[data-dashboard="buyer"] .dashboard-icon,[data-dashboard="commission"] .dashboard-icon{--ico:url(/assets/icons/credit-card.svg)}
[data-dashboard="spp"] .dashboard-icon{--ico:url(/assets/icons/percent.svg)}
[data-dashboard="assembly"] .dashboard-icon{--ico:url(/assets/icons/box-seam.svg)}
[data-dashboard="delivery"] .dashboard-icon{--ico:url(/assets/icons/truck.svg)}
[data-dashboard="other"] .dashboard-icon{--ico:url(/assets/icons/file-earmark-text.svg)}
[data-dashboard^="balance"] .dashboard-icon{--ico:url(/assets/icons/wallet2.svg)}
:is(#app,dialog) [data-dashboard="commission"] .dashboard-icon::before,:is(#app,dialog) [data-dashboard="spp"] .dashboard-icon::before,:is(#app,dialog) [data-dashboard="delivery"] .dashboard-icon::before,:is(#app,dialog) [data-dashboard="other"] .dashboard-icon::before{background:var(--coral)}
:is(#app,dialog) [data-dashboard^="balance"] .dashboard-icon::before,:is(#app,dialog) [data-dashboard="assembly"] .dashboard-icon::before{background:var(--mint)}

/* attention panel */
:is(#app,dialog) .attention{border-color:color-mix(in srgb,var(--amber) 40%,var(--line))}
:is(#app,dialog) .attention ul{list-style:none;padding:0;display:grid;gap:8px}
:is(#app,dialog) .attention li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--surface-2);line-height:1.5}
:is(#app,dialog) .attention li::before{content:"";flex:none;width:10px;height:10px;border-radius:3px;margin-top:6px;background:var(--amber)}
:is(#app,dialog) .attention li.attention-crit::before{background:var(--coral)}

@media (max-width:1100px){
 :is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
 :is(#app,dialog) .app-header{flex-wrap:nowrap;padding:0 16px;gap:12px}
 :is(#app,dialog) .brand-name{display:none}
 :is(#app,dialog) .nav button{font-size:14px;padding:18px 8px}
 :is(#app,dialog) .cabinet-segments{min-width:0;width:100%}
 :is(#app,dialog) .cabinet-segments button{padding:8px 6px;font-size:13px}
 :is(#app,dialog) .cabinet-control{flex-wrap:wrap}
 :is(#app,dialog) .dashboard-period--unified label{flex:1 1 calc(50% - 8px)}
 .pulse-minis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:480px){
 :is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-row{grid-template-columns:minmax(0,1fr)}
 .pulse-big{font-size:34px}
}
@media (prefers-reduced-motion:reduce){
 .pulse-enter,.pulse-flash .pulse-big{animation:none}
 .seg-pill,.nav-ink{transition:none}
}

dialog{background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:22px}
dialog::backdrop{background:color-mix(in srgb,var(--bg) 70%,transparent)}
#notice{background:var(--fg);color:var(--bg);border:0;border-radius:12px;font-weight:600}

@media (min-width:761px){:is(#app,dialog) .brand-name{display:inline}}
:is(#app,dialog) .app-header .nav button.active,:is(#app,dialog) .app-header .nav button[aria-current="page"]{color:var(--fg)}
:is(#app,dialog) .cabinet-segments{max-width:560px}
:is(#app,dialog) .attention li{color:var(--fg)}
/* older rules here use !important; these are the only places the layer has to answer in kind */
:is(#app,dialog) .shell .nav-primary button.active{color:var(--fg)!important;border-bottom:0}
:is(#app,dialog) .panel.attention ul li.attention-crit,:is(#app,dialog) .panel.attention ul li.attention-warn{color:var(--fg)!important}
:is(#app,dialog) .flow-tip small{color:inherit}
:is(#app,dialog) .dashboard-strip--grouped .balance-card-open,:is(#app,dialog) .dashboard-strip--grouped .expense-breakdown summary{color:var(--sky)!important}
@media (max-width:760px){
 :is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading{align-items:stretch}
 :is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"]{display:block}
 :is(#app,dialog) .dashboard-strip--grouped .dashboard-section-heading [data-dashboard="assembly"] h2{margin-bottom:6px}
}

/* ---- one compact overview block: controls bar + focus panel + money flow ---- */
.pulse-block{background:var(--surface);border:1px solid var(--line);border-radius:22px;margin:12px 0 16px;overflow:hidden}
.pulse-enter{animation:pulse-rise 520ms var(--ease-out) both}
@keyframes pulse-rise{from{opacity:0;transform:translateY(12px)}}
.pulse-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-2) 45%,var(--surface))}
:is(#app,dialog) .pulse-bar .dashboard-period--unified{flex:1 1 auto;margin:0;align-items:center;gap:8px 10px;flex-wrap:wrap}
:is(#app,dialog) .pulse-bar .cabinet-control{flex:0 1 auto;margin-right:auto}
:is(#app,dialog) .pulse-bar .cabinet-control>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
:is(#app,dialog) .pulse-bar .cabinet-segments{min-width:0;max-width:none}
:is(#app,dialog) .pulse-bar .cabinet-segments button{min-height:34px;padding:6px 14px;font-size:13px}
:is(#app,dialog) .pulse-bar .dashboard-period--unified label{flex:0 0 auto;font-size:0;gap:0}
:is(#app,dialog) .pulse-bar .dashboard-period--unified input{font-size:13px;min-height:36px;padding:6px 10px;width:150px}
:is(#app,dialog) .pulse-bar .dashboard-period--unified button{min-height:36px;padding:6px 12px;font-size:13px}
:is(#app,dialog) .pulse-bar .dashboard-period--unified p{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
:is(#app,dialog) .pulse-bar .dashboard-status-row{flex:1 1 100%;margin:0;padding:0;border:0;background:none;min-height:0;gap:6px 14px}
:is(#app,dialog) .pulse-bar .dashboard-status-row:not(:has(.dashboard-period-warning)){flex:0 0 auto;margin-left:auto}
:is(#app,dialog) .pulse-bar .requirements-link,:is(#app,dialog) .pulse-bar .dashboard-toolbar summary{font-size:12px;min-height:32px}
.pulse-body{display:grid;grid-template-columns:minmax(260px,3fr) minmax(0,7fr)}
.pulse-focus{display:flex;flex-direction:column;justify-content:space-between;gap:14px;padding:18px 20px;border-right:1px solid var(--line);min-width:0}
.pulse-share{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--mint)}
.pulse-focus .pulse-sentence{font-size:14px;min-height:4.8em}
.pulse-flash .pulse-big{animation:pulse-pop 320ms var(--ease-out)}
@keyframes pulse-pop{from{opacity:.55;transform:translateY(4px)}}
.pulse-flow{padding:14px 18px 12px;min-width:0}
.flow-box{min-width:600px}
.flow-hit{fill:transparent}
.flow-node{cursor:pointer;outline:none}
.flow-node .flow-bar{transition:transform 200ms var(--ease-out)}
.flow-node:focus-visible .flow-value,.flow-node.is-selected .flow-value{fill:var(--mint)}
.flow-node:focus-visible .flow-hit{stroke:var(--sky);stroke-width:1.5;rx:8}
.flow-box.has-selection .flow-link{opacity:.4}
.flow-box.has-selection .flow-link.path{opacity:1;fill-opacity:.34}
.flow-box.hovering .flow-link{opacity:.18}
.flow-box.hovering .flow-link.on{opacity:1}
.flow-note{margin:6px 0 0}
@media (max-width:1100px){
 .pulse-body{grid-template-columns:minmax(0,1fr)}
 .pulse-focus{border-right:0;border-bottom:1px solid var(--line)}
 .pulse-focus .pulse-sentence{min-height:0}
}
@media (max-width:760px){
 :is(#app,dialog) .pulse-bar .cabinet-control{flex:1 1 100%;margin-right:0}
 :is(#app,dialog) .pulse-bar .dashboard-period--unified input{width:100%}
 :is(#app,dialog) .pulse-bar .dashboard-period--unified label{flex:1 1 calc(50% - 6px)}
}
/* KPI rows become one joined strip: 1px grid lines instead of separate cards */
:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-row{gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-row .dashboard-card:nth-child(n),:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-row .dashboard-card{border:0;border-radius:0;background:var(--surface)}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-card .pill{display:inline-flex;width:auto;align-self:flex-start}
/* long unbroken text (report IDs, commands) must wrap inside its row, never widen the page */
:is(#app,dialog) .attention li{display:block;position:relative;padding-left:34px;overflow-wrap:anywhere;word-break:break-word;min-width:0}
:is(#app,dialog) .attention li::before{position:absolute;left:12px;top:10px;margin:0}
:is(#app,dialog) .attention{min-width:0;max-width:100%}
:is(#app,dialog) .shell{overflow-x:clip}
:is(#app,dialog) .main>*,:is(#app,dialog) .dashboard-strip>*{min-width:0;max-width:100%}
:is(#app,dialog) .attention li{font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0}
/* ---- compact overview: no page title, refresh and orders live in the block's bar ---- */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
:is(#app,dialog) .dashboard-strip--grouped{padding-top:16px}
:is(#app,dialog) .pulse-block{margin-top:0}
:is(#app,dialog) .pulse-bar .pulse-refresh{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:6px 12px;font-size:13px;font-weight:600}
.pulse-refresh svg{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;transition:transform 600ms var(--ease-out)}
.pulse-refresh:active svg{transform:rotate(180deg)}
:is(#app,dialog) .pulse-bar .dashboard-status-row{align-items:center}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders{display:inline-flex;flex-direction:row;align-items:center;gap:8px;min-height:0;width:auto;max-width:none;margin:0;padding:3px 12px 3px 4px;border:1px solid var(--line);border-radius:999px;background:var(--surface);grid-template-columns:none}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders h2{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:600;color:var(--muted);min-height:0}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders .dashboard-icon{width:26px;height:26px;border-radius:999px}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders strong{font-size:15px;margin:0;letter-spacing:0}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders strong span,:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders small{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
:is(#app,dialog) .pulse-bar .dashboard-period-warning{flex:1 1 280px}
.pulse-minis{grid-template-columns:repeat(2,minmax(0,1fr))}
:is(#app,dialog) .dashboard-strip--grouped .dashboard-sales-section,:is(#app,dialog) .dashboard-strip--grouped .dashboard-finance-section{margin-bottom:12px}
@media (max-width:760px){
 :is(#app,dialog) .pulse-bar .pulse-refresh{flex:1 1 100%;justify-content:center}
}
/* ---- denser bar: one line of controls, one line of status ---- */
.pulse-bar{padding:8px 12px;gap:6px 10px}
:is(#app,dialog) .pulse-bar .dashboard-period--unified{flex:0 1 auto;gap:6px 8px}
:is(#app,dialog) .pulse-bar .cabinet-control{margin-right:4px}
:is(#app,dialog) .pulse-bar .cabinet-segments{padding:3px;border-radius:12px}
:is(#app,dialog) .pulse-bar .cabinet-segments button{min-height:30px;padding:4px 12px;font-size:13px;border-radius:9px}
.pulse-bar .seg-pill{top:3px;bottom:3px;border-radius:9px}
:is(#app,dialog) .pulse-bar .dashboard-period--unified input{min-height:32px;width:136px;padding:4px 8px;font-size:13px;border-radius:10px}
:is(#app,dialog) .pulse-bar .dashboard-period--unified button{min-height:32px;padding:4px 12px;font-size:13px;border-radius:10px}
:is(#app,dialog) .pulse-bar .pulse-refresh{width:32px;height:32px;min-height:32px;padding:0;justify-content:center;border-radius:10px;margin-left:auto}
:is(#app,dialog) .pulse-bar .pulse-refresh span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
:is(#app,dialog) .pulse-bar .dashboard-status-row{gap:4px 12px;flex-wrap:nowrap;min-width:0}
:is(#app,dialog) .pulse-bar .dashboard-period-warning{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
:is(#app,dialog) .pulse-bar .requirements-link,:is(#app,dialog) .pulse-bar .dashboard-toolbar summary{min-height:28px;font-size:12px;white-space:nowrap}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders{padding:2px 10px 2px 3px}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders .dashboard-icon{width:22px;height:22px}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders .dashboard-icon::before{width:13px;height:13px}
:is(#app,dialog) .dashboard-strip--grouped .pulse-bar .pulse-orders strong{font-size:14px}
@media (max-width:760px){
 :is(#app,dialog) .pulse-bar .dashboard-status-row{flex-wrap:wrap}
 :is(#app,dialog) .pulse-bar .dashboard-period-warning{white-space:normal;flex-basis:100%}
 :is(#app,dialog) .pulse-bar .pulse-refresh{width:100%;flex:1 1 100%}
 :is(#app,dialog) .pulse-bar .pulse-refresh span{position:static;width:auto;height:auto;clip-path:none}
}
:is(#app,dialog) .pulse-bar .dashboard-period--unified button{flex:0 0 auto;width:auto;min-width:0}
:is(#app,dialog) .pulse-bar .dashboard-period--unified button,:is(#app,dialog) .pulse-bar .dashboard-period--unified input{height:32px;line-height:1.2}
:is(#app,dialog) .pulse-bar .pulse-refresh{margin-left:0}
:is(#app,dialog) .pulse-bar .dashboard-status-row{margin-left:auto}
:is(#app,dialog) .pulse-bar .cabinet-segments{grid-auto-columns:auto}
:is(#app,dialog) .pulse-bar .cabinet-segments button{padding:4px 10px}
@media (max-width:760px){:is(#app,dialog) .pulse-bar .dashboard-period--unified input{width:100%}:is(#app,dialog) .pulse-bar .dashboard-period--unified button{flex:1 1 0}}
/* ---- switching cabinet or period: same screen, old figures veiled until the new ones arrive ---- */
.dashboard-strip.is-loading .pulse-body,.dashboard-strip.is-loading .dashboard-sales-row,.dashboard-strip.is-loading .dashboard-finance-row,.dashboard-strip.is-loading .pulse-orders{filter:blur(5px) saturate(.6);opacity:.45;pointer-events:none;user-select:none;transition:filter 200ms ease,opacity 200ms ease}
.pulse-loading{order:-1;flex:1 1 100%;display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;color:var(--sky)}
.pulse-loading.is-error{color:var(--coral)}
:is(#app,dialog) .pulse-loading button{min-height:28px;padding:2px 10px;font-size:12px}
.pulse-spinner{width:14px;height:14px;border-radius:50%;border:2px solid color-mix(in srgb,var(--sky) 30%,transparent);border-top-color:var(--sky);animation:pulse-spin 700ms linear infinite}
@keyframes pulse-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pulse-spinner{animation:none}.dashboard-strip.is-loading *{transition:none}}
.dashboard-strip.is-loading .dashboard-period-warning{opacity:.35}
/* ---- «Где ваши заказы» ---- */
.delivery-block{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:16px 18px;margin:0 0 16px}
.delivery-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
:is(#app,dialog) .delivery-head h2{margin:0;font-size:16px}
.delivery-head span{font-size:12px;color:var(--muted)}
.delivery-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.delivery-card{background:var(--surface);padding:14px 16px;min-width:0;display:flex;flex-direction:column;gap:10px}
.delivery-card header{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
:is(#app,dialog) .delivery-card h3{margin:0;font-size:14px;font-weight:700}
.delivery-card header span{font-size:12px;color:var(--muted)}
.delivery-bar{display:block;width:100%;height:12px;border-radius:6px;overflow:hidden;background:var(--surface-2)}
.delivery-bar rect{transition:opacity 180ms ease}
.delivery-bar rect.is-dim{opacity:.28}
.db-transit,.db-pending{fill:var(--sky)}.db-pvz{fill:var(--amber)}.db-bought{fill:var(--mint)}.db-refused,.db-returned{fill:var(--coral)}.db-cancelled{fill:var(--faint)}
.is-entering .delivery-bar{animation:bar-grow 700ms var(--ease-out) both;transform-origin:0 50%}
@keyframes bar-grow{from{transform:scaleX(0)}}
.delivery-chips{display:flex;flex-wrap:wrap;gap:6px}
:is(#app,dialog) .delivery-chip{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--muted);background:var(--surface-2);border:1px solid transparent}
:is(#app,dialog) .delivery-chip[aria-pressed="true"]{color:var(--fg);border-color:color-mix(in srgb,var(--fg) 22%,var(--line));background:var(--surface)}
.delivery-chip i{width:8px;height:8px;border-radius:2px;flex:none}
.dc-transit i,.dc-pending i{background:var(--sky)}.dc-pvz i{background:var(--amber)}.dc-bought i{background:var(--mint)}.dc-refused i,.dc-returned i{background:var(--coral)}.dc-cancelled i{background:var(--faint)}
.delivery-chip b{color:var(--fg);font-size:13px}
:is(#app,dialog) .delivery-chip small{color:var(--coral);font-size:11px;font-weight:600}
.delivery-panels{min-height:64px}
.delivery-panels p{margin:0;font-size:13px;color:var(--muted);line-height:1.55}
.delivery-list{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:260px;overflow:auto;scrollbar-width:thin}
.delivery-list li{display:grid;grid-template-columns:minmax(0,1.3fr) auto minmax(60px,1fr) auto;align-items:center;gap:10px;padding:7px 8px;border-radius:10px;font-size:12px}
.delivery-list li:nth-child(odd){background:var(--surface-2)}
.dl-id{font-weight:600;min-width:0;overflow-wrap:anywhere}
:is(#app,dialog) .dl-id small{display:block;font-weight:500;color:var(--muted);font-size:11px}
.dl-days{color:var(--muted);white-space:nowrap}
.dl-meter{width:100%;height:6px}
.dl-track{fill:var(--line)}.dl-used{fill:var(--mint)}
.dl-left{white-space:nowrap;font-size:12px}
.delivery-list li.is-soon .dl-used{fill:var(--amber)}.delivery-list li.is-soon .dl-left{color:var(--amber)}
.delivery-list li.is-urgent .dl-used{fill:var(--coral)}.delivery-list li.is-urgent .dl-left{color:var(--coral)}
.delivery-more,.delivery-empty,.delivery-note{font-size:12px;color:var(--muted);margin:6px 0 0}
.delivery-ages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px}
.delivery-ages div{background:var(--surface-2);border-radius:10px;padding:8px 10px}
.delivery-ages b{display:block;font-size:18px}
.delivery-ages span{font-size:11px;color:var(--muted)}
.delivery-ages .age-d15 b{color:var(--coral)}.delivery-ages .age-d8_14 b{color:var(--amber)}
.delivery-foot{margin:10px 0 0;font-size:11px;line-height:1.5;color:var(--muted)}
.delivery-card.is-empty .delivery-empty{margin:0}
@media (max-width:900px){.delivery-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.delivery-list li{grid-template-columns:minmax(0,1fr) auto}.dl-meter{grid-column:1/-1}.delivery-ages{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.is-entering .delivery-bar{animation:none}}
:is(#app,dialog) .dl-days small{display:block;font-size:11px;color:var(--muted)}
.dl-days{text-align:right}
.delivery-list li.dl-simple{grid-template-columns:minmax(0,1.3fr) auto auto}
.delivery-list li.dl-simple .dl-left{font-weight:600;color:var(--muted);text-align:right;max-width:240px;overflow-wrap:anywhere;white-space:normal}
.delivery-list li.dl-simple.is-soon .dl-days{color:var(--amber)}
.delivery-list li.dl-simple.is-urgent .dl-days{color:var(--coral)}
.delivery-panels .delivery-note{margin:0 0 8px}
.delivery-panels .delivery-ages{margin:0 0 8px}
@media (max-width:520px){.delivery-list li.dl-simple{grid-template-columns:minmax(0,1fr) auto}.delivery-list li.dl-simple .dl-left{grid-column:1/-1;text-align:left}}
.delivery-warning{margin:0 0 10px;font-size:12px;color:var(--amber)}
/* both cards get the same panel height and their lists fill it, so neither card leaves a blank gap */
@media (min-width:901px){
 .delivery-card{min-height:0}
 .delivery-panels{flex:1 1 auto;display:flex;flex-direction:column;height:430px;min-height:0}
 .delivery-panels>[data-panel]{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}
 .delivery-panels>[data-panel][hidden]{display:none}
 .delivery-panels .delivery-list{flex:1 1 auto;max-height:none;min-height:0}
}
/* product photo + name in every delivery row */
.delivery-list li{grid-template-columns:40px minmax(0,1.4fr) auto minmax(60px,1fr) auto}
.delivery-list li.dl-simple{grid-template-columns:40px minmax(0,1.4fr) auto auto}
.dl-photo{width:40px;height:52px;border-radius:8px;object-fit:cover;background:var(--surface-2);display:block}
.dl-nophoto{border:1px dashed var(--line)}
:is(#app,dialog) .delivery-list .product-image.placeholder{width:40px;height:52px;font-size:14px}
.dl-title{display:block;font-size:13px;font-weight:600;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:520px){
 .delivery-list li,.delivery-list li.dl-simple{grid-template-columns:40px minmax(0,1fr) auto}
 .delivery-list li .dl-meter,.delivery-list li.dl-simple .dl-left{grid-column:2/-1}
}
/* cabinet switch inside «Где ваши заказы» */
.delivery-head{flex-wrap:wrap}
:is(#app,dialog) .delivery-cabinets{min-width:0;max-width:none;margin-right:auto;padding:3px;border-radius:12px}
:is(#app,dialog) .delivery-cabinets button{min-height:30px;padding:4px 12px;font-size:13px;border-radius:9px}
:is(#app,dialog) .delivery-cabinets button[aria-pressed="true"]{background:var(--surface-2);color:var(--fg)}
.delivery-view[hidden]{display:none}
@media (max-width:620px){:is(#app,dialog) .delivery-cabinets{width:100%}}
/* returns card spans the grid under FBS / FBW */
.delivery-card.delivery-returns{grid-column:1/-1}
.db-received{fill:var(--mint)}.dc-received i{background:var(--mint)}.dc-other i{background:var(--faint)}
@media (min-width:901px){.delivery-returns .delivery-panels{height:340px}}
.delivery-list li.dl-return .dl-days{text-align:left;color:var(--muted);white-space:normal;max-width:360px}
:is(#app,dialog) .delivery-list li.dl-return .dl-left small{display:block;font-size:11px;font-weight:500}
.dc-expired i{background:var(--coral)}
.delivery-block.is-settling,.delivery-block.is-settling *{transition:none!important}

/* ==== «Общий остаток» (stock sync) — approved mockup 2026-10-22 ==== */
:is(#app,dialog) .ss{--ss-ease:cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;gap:20px;font-size:14px;line-height:1.5;font-variant-numeric:tabular-nums}
:is(#app,dialog) .ss [hidden]{display:none!important}
:is(#app,dialog) .ss .ss-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
:is(#app,dialog) .ss .ss-head h1{margin:0;font-size:28px;font-weight:800;letter-spacing:-.6px}
:is(#app,dialog) .ss .ss-head p{margin:0;color:var(--muted);max-width:68ch}
:is(#app,dialog) .ss button{min-height:0;padding:0;font-size:inherit;line-height:1.3;white-space:normal}
:is(#app,dialog) .ss .ss-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--fg);font-weight:600;font-size:13px;white-space:nowrap}
:is(#app,dialog) .ss .ss-btn.ss-small{min-height:32px;padding:5px 12px}
:is(#app,dialog) .ss .ss-btn.ss-primary{background:var(--mint);border-color:var(--mint);color:var(--on-accent);font-weight:700}
:is(#app,dialog) .ss .ss-btn.ss-ghost{background:none;border-color:transparent;color:var(--muted)}
:is(#app,dialog) .ss .ss-btn.ss-danger{color:var(--coral)}
:is(#app,dialog) .ss .ss-btn:disabled{opacity:.45;cursor:not-allowed;border-style:solid}
:is(#app,dialog) .ss .ss-input{min-height:0;height:40px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);padding:0 12px;width:100%;font-size:14px;color:var(--fg)}
:is(#app,dialog) .ss .ss-foot{margin:0;color:var(--muted);font-size:12px}
/* mode bar */
:is(#app,dialog) .ss .ss-mode{position:sticky;top:8px;z-index:15;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;min-height:64px;padding:12px 18px;border-radius:22px;border:1px solid var(--line);background:var(--surface);box-shadow:inset 4px 0 0 var(--amber),0 8px 24px rgb(0 0 0/.18);transition:background-color 200ms var(--ss-ease),border-color 200ms var(--ss-ease)}
:is(#app,dialog) .ss .ss-mode.is-live{background:color-mix(in srgb,var(--mint) 10%,var(--surface));border-color:var(--mint);box-shadow:0 8px 24px rgb(0 0 0/.18)}
:is(#app,dialog) .ss .ss-mode-label{display:flex;flex-direction:column;gap:2px;flex:1 1 320px;min-width:0}
:is(#app,dialog) .ss .ss-mode-label b{font-size:15px;font-weight:700;color:var(--amber)}
:is(#app,dialog) .ss .ss-mode.is-live .ss-mode-label b{color:var(--mint)}
:is(#app,dialog) .ss .ss-mode-label b.ss-err{color:var(--coral)}
:is(#app,dialog) .ss .ss-mode-label span{font-size:13px;color:var(--muted)}
:is(#app,dialog) .ss .ss-cycle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--muted);white-space:nowrap}
:is(#app,dialog) .ss .ss-dot{position:relative;width:8px;height:8px;border-radius:50%;background:var(--mint);flex:none}
:is(#app,dialog) .ss .ss-dot.is-warn{background:var(--amber)}
:is(#app,dialog) .ss .ss-dot.is-err{background:var(--coral)}
:is(#app,dialog) .ss .ss-dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;opacity:0}
:is(#app,dialog) .ss .ss-dot.is-beat::after{animation:ss-beat 600ms var(--ss-ease)}
@keyframes ss-beat{from{transform:scale(1);opacity:.7}to{transform:scale(2.8);opacity:0}}
:is(#app,dialog) .ss .ss-mode-error{flex-basis:100%;display:flex;align-items:flex-start;gap:8px;margin:0;font-size:13px;font-weight:500;color:var(--coral)}
:is(#app,dialog) .ss .ss-mode-error svg{flex:none;margin-top:2px}
/* counters */
:is(#app,dialog) .ss .ss-counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
:is(#app,dialog) .ss .ss-tile{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
:is(#app,dialog) .ss .ss-tile span{font-size:13px;font-weight:500;color:var(--muted)}
:is(#app,dialog) .ss .ss-tile b{font-size:28px;font-weight:700;letter-spacing:-.5px;color:var(--fg)}
:is(#app,dialog) .ss .ss-tile.is-amber b{color:var(--amber)}
:is(#app,dialog) .ss .ss-tile.is-coral b{color:var(--coral)}
:is(#app,dialog) .ss button.ss-tile[aria-pressed="true"]{border-color:var(--fg)}
/* cards */
:is(#app,dialog) .ss .ss-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:18px;min-width:0}
:is(#app,dialog) .ss .ss-card.ss-rows{padding:12px}
:is(#app,dialog) .ss .ss-card-h{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}
:is(#app,dialog) .ss .ss-rows .ss-card-h{padding:6px 6px 0}
:is(#app,dialog) .ss .ss-card-h h2{margin:0;font-size:16px;font-weight:700}
:is(#app,dialog) .ss .ss-hint{font-size:13px;color:var(--muted);flex:1}
:is(#app,dialog) .ss .ss-duo{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px;align-items:start}
:is(#app,dialog) .ss .ss-collapse{display:grid;grid-template-rows:1fr;transition:grid-template-rows 220ms var(--ss-ease)}
:is(#app,dialog) .ss .ss-collapse>div{overflow:hidden;min-height:0}
:is(#app,dialog) .ss .is-collapsed .ss-collapse{grid-template-rows:0fr}
:is(#app,dialog) .ss .ss-toggle{background:none;border:0;color:var(--muted);display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13px;min-height:32px;margin-left:auto}
:is(#app,dialog) .ss .ss-toggle svg{transition:transform 220ms var(--ss-ease)}
:is(#app,dialog) .ss .is-collapsed .ss-toggle svg{transform:rotate(-90deg)}
/* product cell */
:is(#app,dialog) .ss .ss-prod{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;min-width:0;padding-left:10px;border-left:3px solid var(--k1);text-align:left}
:is(#app,dialog) .ss .ss-prod.is-k2{border-left-color:var(--k2)}
:is(#app,dialog) .ss .ss-ph{width:40px;height:52px;border-radius:8px;background:var(--surface-2);display:grid;place-items:center;overflow:hidden;object-fit:cover;color:var(--muted)}
:is(#app,dialog) .ss .ss-prod b{font-size:14px;font-weight:500;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--fg)}
:is(#app,dialog) .ss .ss-prod small{display:block;font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:is(#app,dialog) .ss .ss-cab{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;font-size:12px;font-weight:600;color:var(--k1);background:color-mix(in srgb,var(--k1) 14%,transparent);white-space:nowrap}
:is(#app,dialog) .ss .ss-cab.is-k2{color:var(--k2);background:color-mix(in srgb,var(--k2) 14%,transparent)}
:is(#app,dialog) .ss .ss-list{display:flex;flex-direction:column;gap:2px}
/* suggestions */
:is(#app,dialog) .ss .ss-srow{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) 72px auto;gap:12px;align-items:center;padding:8px;border-radius:10px}
:is(#app,dialog) .ss .ss-srow:nth-child(odd){background:var(--surface-2)}
:is(#app,dialog) .ss .ss-srow.is-gone{animation:ss-gone 160ms var(--ss-ease) forwards}
@keyframes ss-gone{to{opacity:0;transform:translateX(8px)}}
:is(#app,dialog) .ss .ss-wb{grid-column:1/-1;font-size:12px;color:var(--muted)}
:is(#app,dialog) .ss .ss-link-ic{color:var(--muted);justify-self:center;display:grid}
:is(#app,dialog) .ss .ss-qty{width:64px;min-height:0;height:32px;padding:0;border-radius:9px;border:1px solid var(--line);background:var(--surface);text-align:center;font-weight:700;color:var(--fg)}
:is(#app,dialog) .ss .ss-more{margin:8px 6px 2px;background:none;border:0;color:var(--sky);font-weight:600;font-size:13px;min-height:32px}
/* top block: title + mode + summary in one compact card */
:is(#app,dialog) .ss .ss-top{display:flex;flex-direction:column;gap:12px;padding:14px 16px 14px 20px;border-radius:22px;border:1px solid var(--line);background:var(--surface);box-shadow:inset 4px 0 0 var(--amber);margin-top:4px}
:is(#app,dialog) .ss .ss-top.is-live{box-shadow:inset 4px 0 0 var(--mint);border-color:color-mix(in srgb,var(--mint) 45%,var(--line));background:color-mix(in srgb,var(--mint) 5%,var(--surface))}
:is(#app,dialog) .ss .ss-top .ss-mode{position:static;min-height:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
:is(#app,dialog) .ss .ss-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
:is(#app,dialog) .ss .ss-title h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.4px;line-height:1.2}
:is(#app,dialog) .ss .ss-mode-label .ss-modechip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--amber);background:color-mix(in srgb,var(--amber) 14%,transparent)}
:is(#app,dialog) .ss .ss-modechip::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
:is(#app,dialog) .ss .is-live .ss-mode-label .ss-modechip{color:var(--mint);background:color-mix(in srgb,var(--mint) 14%,transparent)}
:is(#app,dialog) .ss .ss-top .ss-mode-label{gap:4px}
:is(#app,dialog) .ss .ss-top .ss-counters{gap:8px}
:is(#app,dialog) .ss .ss-top .ss-tile{flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:12px;border-color:transparent;background:var(--surface-2)}
:is(#app,dialog) .ss .ss-top .ss-tile b{font-size:20px;line-height:1.2}
:is(#app,dialog) .ss .ss-top button.ss-tile[aria-pressed="true"]{border-color:var(--fg)}
@media (max-width:600px){:is(#app,dialog) .ss .ss-top{padding:12px 12px 12px 16px}:is(#app,dialog) .ss .ss-title h1{font-size:20px}}
/* suggestion cards: one bordered card per cabinet */
:is(#app,dialog) .ss .ss-sug-list{gap:10px}
:is(#app,dialog) .ss .ss-scard{border:1px solid var(--line);border-radius:16px;padding:10px;background:var(--surface)}
:is(#app,dialog) .ss .ss-scard.is-gone{animation:ss-gone 160ms var(--ss-ease) forwards}
:is(#app,dialog) .ss .ss-spair{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);gap:8px;align-items:stretch}
:is(#app,dialog) .ss .ss-vs{display:grid;place-items:center;color:var(--muted)}
:is(#app,dialog) .ss .ss-sside{border:1px solid color-mix(in srgb,var(--k1) 45%,var(--line));background:color-mix(in srgb,var(--k1) 6%,var(--surface-2));border-radius:12px;padding:8px 10px;min-width:0;display:flex;flex-direction:column;gap:8px}
:is(#app,dialog) .ss .ss-sside.is-k2{border-color:color-mix(in srgb,var(--k2) 45%,var(--line));background:color-mix(in srgb,var(--k2) 6%,var(--surface-2))}
:is(#app,dialog) .ss .ss-sside-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
:is(#app,dialog) .ss .ss-sside-wb{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}
:is(#app,dialog) .ss .ss-sside-body{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;align-items:center}
:is(#app,dialog) .ss .ss-sside-ph{width:56px;height:74px;border-radius:8px;background:var(--surface-2);object-fit:cover;display:grid;place-items:center;color:var(--muted)}
:is(#app,dialog) .ss .ss-sside b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;font-weight:600;line-height:1.3;color:var(--fg)}
:is(#app,dialog) .ss .ss-sside small{display:block;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:is(#app,dialog) .ss .ss-sside small strong{color:var(--fg)}
:is(#app,dialog) .ss .ss-sfoot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
:is(#app,dialog) .ss .ss-why{flex:1 1 220px;font-size:12px;color:var(--muted)}
:is(#app,dialog) .ss .ss-why b{color:var(--fg)}
:is(#app,dialog) .ss .ss-sqty{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--muted)}
@media (max-width:600px){:is(#app,dialog) .ss .ss-spair{grid-template-columns:minmax(0,1fr)}:is(#app,dialog) .ss .ss-vs{display:none}}
/* suggestions: two cards per row on wide screens */
/* suggestions: one horizontal row, scroll left/right */
:is(#app,dialog) .ss .ss-sug-list{display:flex;flex-direction:row;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 2px;padding:2px 2px 10px;scrollbar-width:thin}
:is(#app,dialog) .ss .ss-sug-list>.ss-scard{flex:0 0 min(640px,88%);scroll-snap-align:start}
:is(#app,dialog) .ss .ss-sug-list>.ss-foot{flex:1}
:is(#app,dialog) .ss .ss-strip-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:-4px 6px 8px}
:is(#app,dialog) .ss .ss-strip-pos{font-size:12px;color:var(--muted);min-width:90px;text-align:center}
@media (max-width:600px){:is(#app,dialog) .ss .ss-sug-list>.ss-scard{flex-basis:92%}}
/* manual link: two catalogues side by side */
:is(#app,dialog) .ss .ss-mpick{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
:is(#app,dialog) .ss .ss-mcol{display:flex;flex-direction:column;gap:8px;min-width:0;padding:12px;border-radius:16px;border:1px solid color-mix(in srgb,var(--k1) 35%,var(--line));background:color-mix(in srgb,var(--k1) 4%,var(--surface))}
:is(#app,dialog) .ss .ss-mcol.is-k2{border-color:color-mix(in srgb,var(--k2) 35%,var(--line));background:color-mix(in srgb,var(--k2) 4%,var(--surface))}
:is(#app,dialog) .ss .ss-mhead{display:flex;align-items:center;justify-content:space-between;gap:8px}
:is(#app,dialog) .ss .ss-mcount{font-size:12px;color:var(--muted)}
:is(#app,dialog) .ss .ss-msearch{position:relative}
:is(#app,dialog) .ss .ss-msearch>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
:is(#app,dialog) .ss .ss-msearch .ss-input{padding-left:36px;padding-right:36px;height:42px;background:var(--surface)}
:is(#app,dialog) .ss .ss-mclear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:30px;height:30px;display:grid;place-items:center;background:none;border:0;color:var(--muted)}
:is(#app,dialog) .ss .ss-mfilters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
:is(#app,dialog) .ss .ss-select{min-height:0;height:32px;width:auto;padding:0 28px 0 10px;border-radius:9px;border:1px solid var(--line);background-color:var(--surface);font-size:13px;color:var(--fg)}
:is(#app,dialog) .ss .ss-chips{display:inline-flex;padding:2px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
:is(#app,dialog) .ss .ss-chips button{background:none;border:0;border-radius:8px;padding:4px 10px;min-height:26px;font-size:12px;font-weight:600;color:var(--muted)}
:is(#app,dialog) .ss .ss-chips button[aria-pressed="true"]{background:var(--surface-2);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line)}
:is(#app,dialog) .ss .ss-check{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer}
:is(#app,dialog) .ss .ss-check input{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--mint)}
:is(#app,dialog) .ss .ss-check.is-off{opacity:.45;cursor:not-allowed}
:is(#app,dialog) .ss .ss-mresults{display:flex;flex-direction:column;gap:4px;height:380px;overflow:auto;padding-right:2px;overscroll-behavior:contain;scrollbar-width:thin}
:is(#app,dialog) .ss .ss-mpad{padding:12px 4px}
:is(#app,dialog) .ss .ss-mrow{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:start;padding:8px;border-radius:12px;border:1px solid transparent;background:var(--surface)}
:is(#app,dialog) .ss .ss-mrow.is-picked{border-color:var(--mint);background:color-mix(in srgb,var(--mint) 8%,var(--surface))}
:is(#app,dialog) .ss .ss-mph{width:44px;height:58px;border-radius:8px;object-fit:cover;background:var(--surface-2);display:grid;place-items:center;color:var(--muted)}
:is(#app,dialog) .ss .ss-mtext{min-width:0;display:flex;flex-direction:column;gap:2px}
:is(#app,dialog) .ss .ss-mtext b{font-size:13px;font-weight:600;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:is(#app,dialog) .ss .ss-mtext small{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:is(#app,dialog) .ss .ss-msizes{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
:is(#app,dialog) .ss .ss-size{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:2px 4px 2px 9px;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);font-size:12px;font-weight:700;color:var(--fg)}
:is(#app,dialog) .ss .ss-size span{min-width:20px;padding:1px 5px;border-radius:6px;background:var(--surface);font-weight:600;color:var(--muted);text-align:center}
:is(#app,dialog) .ss .ss-size.is-zero span{color:var(--coral)}
:is(#app,dialog) .ss .ss-size.is-on{border-color:var(--mint);background:var(--mint);color:var(--on-accent)}
:is(#app,dialog) .ss .ss-size.is-on span{background:color-mix(in srgb,var(--on-accent) 15%,transparent);color:var(--on-accent)}
:is(#app,dialog) .ss .ss-size:disabled{opacity:.4;cursor:not-allowed;border-style:dashed}
:is(#app,dialog) .ss .ss-mbar{display:flex;flex-direction:column;gap:12px;margin-top:12px;padding:10px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line)}
:is(#app,dialog) .ss .ss-mcur{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) auto;gap:10px;align-items:center}
:is(#app,dialog) .ss .ss-mlist{display:flex;flex-direction:column;gap:6px;padding-top:10px;border-top:1px dashed var(--line)}
:is(#app,dialog) .ss .ss-mlist-h{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}
:is(#app,dialog) .ss .ss-mrow-pair{display:grid;grid-template-columns:24px minmax(0,1fr) 24px minmax(0,1fr) auto 32px;gap:8px;align-items:center;padding:6px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}
:is(#app,dialog) .ss .ss-mrow-pair.is-warn{border-color:color-mix(in srgb,var(--amber) 55%,var(--line))}
:is(#app,dialog) .ss .ss-mrow-pair.is-err{border-color:var(--coral)}
:is(#app,dialog) .ss .ss-mrow-pair .ss-msel{grid-template-columns:36px minmax(0,1fr);padding:4px 8px}
:is(#app,dialog) .ss .ss-mnum{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--surface-2);font-size:12px;font-weight:700;color:var(--muted)}
:is(#app,dialog) .ss .ss-mx{width:32px;height:32px;display:grid;place-items:center;background:none;border:0;color:var(--muted)}
:is(#app,dialog) .ss .ss-mnote{grid-column:2/-1;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--amber)}
:is(#app,dialog) .ss .ss-mrow-pair.is-err .ss-mnote{color:var(--coral)}
:is(#app,dialog) .ss .ss-mlist-f{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px}
:is(#app,dialog) .ss .ss-size.is-listed{border-color:var(--sky);background:color-mix(in srgb,var(--sky) 14%,var(--surface-2))}
:is(#app,dialog) .ss .ss-msel{display:grid;grid-template-columns:36px minmax(0,1fr) 28px;gap:8px;align-items:center;min-width:0;padding:6px 8px;border-radius:10px;border-left:3px solid var(--k1);background:var(--surface)}
:is(#app,dialog) .ss .ss-msel.is-k2{border-left-color:var(--k2)}
:is(#app,dialog) .ss .ss-msel.is-empty{display:flex;flex-direction:column;align-items:flex-start;gap:0;color:var(--muted);font-size:13px;min-height:54px;justify-content:center}
:is(#app,dialog) .ss .ss-msel img,:is(#app,dialog) .ss .ss-mph-s{width:36px;height:46px;border-radius:6px;object-fit:cover;background:var(--surface-2);display:grid;place-items:center;color:var(--muted)}
:is(#app,dialog) .ss .ss-msel small{display:block;font-size:11px;color:var(--muted)}
:is(#app,dialog) .ss .ss-msel b{display:block;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--fg)}
:is(#app,dialog) .ss .ss-msize{color:var(--mint)}
:is(#app,dialog) .ss .ss-msel button{width:28px;height:28px;display:grid;place-items:center;background:none;border:0;color:var(--muted)}
:is(#app,dialog) .ss .ss-mact{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
:is(#app,dialog) .ss .ss-mwarn{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--amber)}
@media (hover:hover) and (pointer:fine){
 :is(#app,dialog) .ss .ss-size:hover:not(:disabled):not(.is-on){border-color:var(--mint);background:var(--surface-2)}
 :is(#app,dialog) .ss .ss-chips button:hover:not([aria-pressed="true"]),:is(#app,dialog) .ss .ss-mclear:hover,:is(#app,dialog) .ss .ss-msel button:hover{background:none;color:var(--fg)}
}
@media (max-width:1100px){:is(#app,dialog) .ss .ss-mcur{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr)}:is(#app,dialog) .ss .ss-mact{grid-column:1/-1}}
@media (max-width:760px){:is(#app,dialog) .ss .ss-mpick{grid-template-columns:minmax(0,1fr)}:is(#app,dialog) .ss .ss-mresults{height:300px}:is(#app,dialog) .ss .ss-mcur{grid-template-columns:minmax(0,1fr)}:is(#app,dialog) .ss .ss-mbar .ss-vs{display:none}:is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 32px}:is(#app,dialog) .ss .ss-mrow-pair .ss-sqty{grid-column:2}}
/* manual link */
:is(#app,dialog) .ss .ss-pickers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
:is(#app,dialog) .ss .ss-picker label{display:flex;margin:0}
:is(#app,dialog) .ss .ss-picker{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0}
:is(#app,dialog) .ss .ss-drop{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:6px;z-index:5;max-height:300px;overflow:auto;box-shadow:0 12px 32px rgb(0 0 0/.35);min-width:260px}
:is(#app,dialog) .ss .ss-opt{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:6px;border-radius:9px;border:0;background:none;text-align:left}
:is(#app,dialog) .ss .ss-opt small{color:var(--muted);font-size:12px;white-space:nowrap}
:is(#app,dialog) .ss .ss-picked{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;align-items:center;gap:8px;padding:6px;border-radius:10px;background:var(--surface-2)}
:is(#app,dialog) .ss .ss-picked-wb{font-size:12px;color:var(--muted);white-space:nowrap}
:is(#app,dialog) .ss .ss-picked button{background:none;border:0;color:var(--muted);display:grid;place-items:center;width:28px;height:28px}
:is(#app,dialog) .ss .ss-linkbar{display:flex;align-items:flex-end;gap:12px;margin-top:12px;flex-wrap:wrap}
:is(#app,dialog) .ss .ss-linkbar label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--muted)}
:is(#app,dialog) .ss .ss-linkbar .ss-foot{flex:1 1 220px}
/* linked table */
:is(#app,dialog) .ss .ss-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
:is(#app,dialog) .ss .ss-search{height:36px;width:220px}
:is(#app,dialog) .ss .ss-seg{position:relative;display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:12px;background:var(--surface);max-width:100%;overflow-x:auto;scrollbar-width:none}
:is(#app,dialog) .ss .ss-seg button{position:relative;z-index:1;flex:none;background:none;border:0;border-radius:9px;padding:5px 12px;min-height:30px;font-size:13px;font-weight:600;color:var(--muted)}
:is(#app,dialog) .ss .ss-seg button[aria-pressed="true"]{color:var(--fg)}
:is(#app,dialog) .ss .ss-pill{position:absolute;top:3px;bottom:3px;left:3px;width:0;border-radius:9px;background:var(--surface-2);border:1px solid var(--line);transition:transform 200ms var(--ss-ease),width 200ms var(--ss-ease)}
:is(#app,dialog) .ss .ss-thead,:is(#app,dialog) .ss .ss-lrow{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1.5fr) 76px 64px 64px minmax(0,1.3fr) 40px;gap:12px;align-items:center}
:is(#app,dialog) .ss .ss-thead{padding:8px 10px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}
:is(#app,dialog) .ss .ss-c{text-align:center}
:is(#app,dialog) .ss .ss-lrow{padding:10px;border-radius:10px;position:relative}
:is(#app,dialog) .ss .ss-lrow:nth-child(even){background:var(--surface-2)}
:is(#app,dialog) .ss .ss-lrow::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:2px;background:transparent}
:is(#app,dialog) .ss .ss-lrow.is-zero::before{background:var(--coral)}
:is(#app,dialog) .ss .ss-lrow.is-diff::before{background:var(--amber)}
:is(#app,dialog) .ss .ss-lrow.is-flash,:is(#app,dialog) .ss .ss-jrow.is-new{animation:ss-flash 1.5s var(--ss-ease)}
@keyframes ss-flash{0%,20%{background:color-mix(in srgb,var(--mint) 18%,transparent)}100%{background:transparent}}
:is(#app,dialog) .ss .ss-shared{width:64px;height:44px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-size:22px;font-weight:700;color:var(--fg)}
:is(#app,dialog) .ss .is-zero .ss-shared{color:var(--coral)}
:is(#app,dialog) .ss .ss-shared-in{width:64px;min-height:0;height:44px;padding:0;border-radius:10px;border:1px solid var(--sky);background:var(--surface);font-size:20px;font-weight:700;text-align:center;color:var(--fg)}
:is(#app,dialog) .ss .ss-wbc{font-weight:600;text-align:center}
:is(#app,dialog) .ss .ss-wbc.is-ne{color:var(--amber)}
:is(#app,dialog) .ss .ss-ne{display:inline-block;margin-left:4px;font-size:11px;padding:0 5px;border-radius:6px;background:color-mix(in srgb,var(--amber) 16%,transparent)}
:is(#app,dialog) .ss .ss-st{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:500;min-width:0}
:is(#app,dialog) .ss .ss-st span{display:flex;align-items:center;gap:6px;min-width:0}
:is(#app,dialog) .ss .ss-st i{font-style:normal;font-size:11px;font-weight:700;color:var(--muted);width:20px;flex:none}
:is(#app,dialog) .ss .ss-st-ok,:is(#app,dialog) .ss .ss-st-idle{color:var(--muted)}
:is(#app,dialog) .ss .ss-st-ok svg{color:var(--mint);flex:none}
:is(#app,dialog) .ss .ss-st-dry{color:var(--amber)}
:is(#app,dialog) .ss .ss-st-sent{color:var(--mint)}
:is(#app,dialog) .ss .ss-st-fail{color:var(--coral)}
:is(#app,dialog) .ss .ss-menu{position:relative}
:is(#app,dialog) .ss .ss-menu>button{width:36px;height:36px;border-radius:10px;border:1px solid transparent;background:none;color:var(--muted);display:grid;place-items:center}
:is(#app,dialog) .ss .ss-confirm-pop{position:absolute;right:0;top:100%;margin-top:4px;width:270px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;z-index:5;box-shadow:0 12px 32px rgb(0 0 0/.35);font-size:13px;display:flex;flex-direction:column;gap:4px}
:is(#app,dialog) .ss .ss-confirm-pop span{color:var(--muted)}
:is(#app,dialog) .ss .ss-confirm-pop div{display:flex;gap:8px;margin-top:8px}
:is(#app,dialog) .ss .ss-empty{padding:28px 12px;text-align:center}
:is(#app,dialog) .ss .ss-empty b{font-size:16px}
:is(#app,dialog) .ss .ss-empty p{color:var(--muted);margin:6px auto 12px;max-width:52ch}
/* journal */
:is(#app,dialog) .ss .ss-jrow{display:grid;grid-template-columns:70px auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 10px;border-radius:10px;font-size:13px}
:is(#app,dialog) .ss .ss-jrow:nth-child(odd){background:var(--surface-2)}
:is(#app,dialog) .ss .ss-jrow time{color:var(--muted);font-weight:500}
:is(#app,dialog) .ss .ss-what{min-width:0}
:is(#app,dialog) .ss .ss-what b{font-weight:600}
:is(#app,dialog) .ss .ss-what small{display:block;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:is(#app,dialog) .ss .ss-delta{font-weight:700;text-align:right;white-space:nowrap}
:is(#app,dialog) .ss .ss-delta small{display:block;font-weight:500;color:var(--muted);font-size:12px}
:is(#app,dialog) .ss .is-minus{color:var(--coral)}
:is(#app,dialog) .ss .is-plus{color:var(--mint)}
:is(#app,dialog) .ss .is-manual{color:var(--sky)}
:is(#app,dialog) .ss .ss-mchip{display:inline-flex;height:20px;align-items:center;padding:0 7px;border-radius:999px;font-size:11px;font-weight:700;margin-right:6px;color:var(--amber);background:color-mix(in srgb,var(--amber) 14%,transparent)}
:is(#app,dialog) .ss .ss-mchip.is-live{color:var(--mint);background:color-mix(in srgb,var(--mint) 14%,transparent)}
:is(#app,dialog) .ss .ss-jrow.is-oversell{background:color-mix(in srgb,var(--amber) 12%,transparent)}
/* confirm dialog */
:is(#app,dialog) .ss-modal{width:min(440px,calc(100vw - 32px));background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 24px 64px rgb(0 0 0/.5)}
:is(#app,dialog) .ss-modal:not([open]){display:none}
:is(#app,dialog) .ss-modal[open]{display:block;animation:ss-pop 200ms var(--ss-ease)}
:is(#app,dialog) .ss-modal::backdrop{background:color-mix(in srgb,var(--bg) 70%,transparent)}
@keyframes ss-pop{from{opacity:0;transform:translateY(8px)}}
:is(#app,dialog) .ss-modal h3{margin:0 0 8px;font-size:18px}
:is(#app,dialog) .ss-modal p{margin:0 0 6px;color:var(--muted)}
:is(#app,dialog) .ss-modal label{display:block;margin-top:8px;font-size:12px;font-weight:600;color:var(--muted)}
:is(#app,dialog) .ss-modal .ss-input{height:42px;margin:6px 0 14px;font-weight:700;letter-spacing:1px}
:is(#app,dialog) .ss-modal .ss-confirm-hint{margin:-8px 0 12px;min-height:0;font-size:12px;font-weight:600;color:var(--coral)}
:is(#app,dialog) .ss-modal .ss-confirm-hint:empty{display:none}
:is(#app,dialog) .ss-modal .ss-act{display:flex;justify-content:flex-end;gap:10px}
@media (hover:hover) and (pointer:fine){
 :is(#app,dialog) .ss .ss-btn:hover:not(:disabled){background:color-mix(in srgb,var(--fg) 6%,var(--surface-2))}
 :is(#app,dialog) .ss .ss-btn.ss-primary:hover:not(:disabled){background:color-mix(in srgb,var(--mint) 88%,var(--fg))}
 :is(#app,dialog) .ss .ss-btn.ss-ghost:hover:not(:disabled){background:var(--surface-2)}
 :is(#app,dialog) .ss .ss-opt:hover{background:var(--surface-2)}
 :is(#app,dialog) .ss .ss-menu>button:hover{border-color:var(--line);background:none}
 :is(#app,dialog) .ss .ss-shared:hover{border-color:var(--sky)}
 :is(#app,dialog) .ss button.ss-tile:hover{border-color:color-mix(in srgb,var(--fg) 30%,var(--line));background:var(--surface)}
 :is(#app,dialog) .ss .ss-seg button:hover,:is(#app,dialog) .ss .ss-toggle:hover,:is(#app,dialog) .ss .ss-more:hover,:is(#app,dialog) .ss .ss-picked button:hover{background:none;color:var(--fg)}
}
@media (max-width:1100px){:is(#app,dialog) .ss .ss-duo{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){
 :is(#app,dialog) .ss .ss-counters{grid-template-columns:repeat(2,minmax(0,1fr))}
 :is(#app,dialog) .ss .ss-thead{display:none}
 :is(#app,dialog) .ss .ss-lrow{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-template-areas:"a b s" "w1 w2 m" "st st st"}
 :is(#app,dialog) .ss .ss-lrow>.ss-c1{grid-area:a}:is(#app,dialog) .ss .ss-lrow>.ss-c2{grid-area:b}:is(#app,dialog) .ss .ss-lrow>.ss-cs{grid-area:s}
 :is(#app,dialog) .ss .ss-lrow>.ss-w1{grid-area:w1;text-align:left}:is(#app,dialog) .ss .ss-lrow>.ss-w2{grid-area:w2;text-align:left}
 :is(#app,dialog) .ss .ss-lrow>.ss-st{grid-area:st}:is(#app,dialog) .ss .ss-lrow>.ss-menu{grid-area:m;justify-self:end}
 :is(#app,dialog) .ss .ss-w1::before{content:"WB · ИП Баркова: ";font-weight:500;color:var(--muted)}
 :is(#app,dialog) .ss .ss-w2::before{content:"WB · ИП Пириев: ";font-weight:500;color:var(--muted)}
 :is(#app,dialog) .ss .ss-srow{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 :is(#app,dialog) .ss .ss-link-ic{display:none}
}
@media (max-width:600px){
 :is(#app,dialog) .ss .ss-head h1{font-size:22px}
 :is(#app,dialog) .ss .ss-mode{position:static}
 :is(#app,dialog) .ss .ss-hint{display:none}
 :is(#app,dialog) .ss .ss-tile b{font-size:22px}
 :is(#app,dialog) .ss .ss-pickers{grid-template-columns:minmax(0,1fr)}
 :is(#app,dialog) .ss .ss-lrow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"a s" "b s" "w1 m" "w2 m" "st st"}
 :is(#app,dialog) .ss .ss-mode .ss-btn{flex:1 1 100%}
 :is(#app,dialog) .ss .ss-jrow{grid-template-columns:56px minmax(0,1fr) auto}
 :is(#app,dialog) .ss .ss-jrow .ss-cab{display:none}
 :is(#app,dialog) .ss .ss-search{width:auto;flex:1 1 100%}
 :is(#app,dialog) .ss .ss-btn,:is(#app,dialog) .ss .ss-seg button{min-height:40px}
}
@media (prefers-reduced-motion:reduce){:is(#app,dialog) .ss *,:is(#app,dialog) .ss *::before,:is(#app,dialog) .ss *::after{animation-duration:1ms!important;transition-duration:1ms!important}}

/* ==== Login page and account button (internet mode) ==== */
:is(#app,dialog) .login-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(1200px 600px at 50% -10%,color-mix(in srgb,var(--mint) 9%,transparent),transparent 60%)}
:is(#app,dialog) .login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:24px;border:1px solid var(--line);background:var(--surface);box-shadow:0 24px 64px rgb(0 0 0/.25)}
:is(#app,dialog) .login-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;color:var(--fg)}
:is(#app,dialog) .login-card h1{margin:6px 0 0;font-size:28px;font-weight:800;letter-spacing:-.6px}
:is(#app,dialog) .login-sub{margin:-6px 0 4px;color:var(--muted);font-size:14px}
:is(#app,dialog) .login-card label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}
:is(#app,dialog) .login-card input{min-height:46px;border-radius:12px;background:var(--surface-2);font-size:15px;color:var(--fg)}
:is(#app,dialog) .login-card button{min-height:48px;margin-top:4px;font-size:15px}
:is(#app,dialog) .login-error{margin:0;padding:10px 12px;border-radius:12px;font-size:13px;font-weight:600;color:var(--coral);background:color-mix(in srgb,var(--coral) 12%,transparent)}
:is(#app,dialog) .login-error[hidden]{display:none}
:is(#app,dialog) .account-button{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:4px 12px 4px 4px;border-radius:999px;font-size:13px;font-weight:600}
:is(#app,dialog) .account-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--mint) 18%,transparent);color:var(--mint);font-weight:800}
:is(#app,dialog) .account-exit{color:var(--muted);font-weight:500}
@media (max-width:700px){:is(#app,dialog) .account-name{display:none}}
/* The header status pill stays hidden; the account button (internet mode) is always shown next to the theme switch. */
:is(#app,dialog) .shell .header-mode:has(.account-button){display:block;margin-left:auto;flex:0 0 auto}
:is(#app,dialog) .shell .header-mode:has(.account-button)+.theme-toggle{margin-left:8px}

/* stock source picker (which cabinet's WB stock is the master) */
:is(#app,dialog) .ss .ss-src{display:inline-flex;flex-wrap:wrap;gap:2px;padding:2px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
:is(#app,dialog) .ss .ss-src button{background:none;border:0;border-radius:8px;padding:4px 9px;min-height:26px;font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}
:is(#app,dialog) .ss .ss-src button[aria-pressed="true"]{background:var(--surface-2);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line)}
:is(#app,dialog) .ss .ss-src button.is-k1[aria-pressed="true"]{color:var(--k1);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--k1) 55%,transparent)}
:is(#app,dialog) .ss .ss-src button.is-k2[aria-pressed="true"]{color:var(--k2);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--k2) 55%,transparent)}
:is(#app,dialog) .ss .ss-pair-src{display:flex;flex-direction:column;gap:3px}
:is(#app,dialog) .ss .ss-pair-src small{font-size:11px;color:var(--muted)}
:is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 24px minmax(0,1fr) auto auto 32px}
:is(#app,dialog) .ss .ss-qty[readonly]{background:var(--surface-2);color:var(--muted)}
:is(#app,dialog) .ss .ss-bulk{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}
:is(#app,dialog) .ss .ss-bulk small{font-size:12px;color:var(--muted)}
:is(#app,dialog) .ss .ss-cs{display:flex;flex-direction:column;align-items:center;gap:3px}
:is(#app,dialog) .ss .ss-srcnote{font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
:is(#app,dialog) .ss .ss-srcnote.is-k1{color:var(--k1)}:is(#app,dialog) .ss .ss-srcnote.is-k2{color:var(--k2)}
:is(#app,dialog) .ss .ss-confirm-pop{width:300px}
:is(#app,dialog) .ss .ss-confirm-pop hr{border:0;border-top:1px solid var(--line);margin:8px 0 4px;width:100%}
:is(#app,dialog) .ss .ss-confirm-pop .ss-src{margin:4px 0}
:is(#app,dialog) .ss .ss-confirm-pop .ss-src button{min-height:30px}
@media (max-width:1250px){:is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 24px minmax(0,1fr) 32px}:is(#app,dialog) .ss .ss-mrow-pair .ss-pair-src{grid-column:2/4}:is(#app,dialog) .ss .ss-mrow-pair .ss-sqty{grid-column:4/6}}
@media (max-width:760px){:is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 32px}:is(#app,dialog) .ss .ss-mrow-pair .ss-pair-src,:is(#app,dialog) .ss .ss-mrow-pair .ss-sqty{grid-column:2/-1}}
/* Staged pairs: fixed column tracks so every row lines up, whatever the numbers in the source picker. */
:is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 24px minmax(0,1fr) 340px 128px 32px;font-variant-numeric:tabular-nums}
:is(#app,dialog) .ss .ss-mrow-pair .ss-pair-src{width:340px}
:is(#app,dialog) .ss .ss-mrow-pair .ss-src{display:grid;grid-template-columns:1fr 1fr 84px;width:100%}
:is(#app,dialog) .ss .ss-mrow-pair .ss-src button{text-align:center;overflow:hidden;text-overflow:ellipsis}
:is(#app,dialog) .ss .ss-mrow-pair .ss-sqty{justify-self:end}
:is(#app,dialog) .ss .ss-mrow-pair .ss-sqty .ss-qty{width:72px}
@media (max-width:1250px){:is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 24px minmax(0,1fr) 32px}:is(#app,dialog) .ss .ss-mrow-pair .ss-pair-src{grid-column:2/4;width:auto}:is(#app,dialog) .ss .ss-mrow-pair .ss-sqty{grid-column:4/6;justify-self:start}}
@media (max-width:760px){:is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 32px}:is(#app,dialog) .ss .ss-mrow-pair .ss-pair-src,:is(#app,dialog) .ss .ss-mrow-pair .ss-sqty{grid-column:2/-1}}
@media (max-width:1250px){
 :is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 24px minmax(0,1fr) 32px;grid-template-areas:"n a l b x" ". s s q q" ". t t t t"}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-mnum{grid-area:n}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-msel:nth-of-type(1){grid-area:a}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-vs{grid-area:l}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-msel:nth-of-type(2){grid-area:b}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-pair-src{grid-area:s;width:auto;max-width:360px}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-sqty{grid-area:q;justify-self:start;align-self:end}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-mx{grid-area:x}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-mnote{grid-area:t}
}
@media (max-width:760px){
 :is(#app,dialog) .ss .ss-mrow-pair{grid-template-columns:24px minmax(0,1fr) 32px;grid-template-areas:"n a x" ". b ." ". s s" ". q q" ". t t"}
 :is(#app,dialog) .ss .ss-mrow-pair>.ss-vs{display:none}
}

/* ==== Logo «WB Обсерватория» (concept C: observatory dome + mint star) — adapts to both themes ==== */
.brand-dome{fill:var(--fg)}
.brand-base{fill:var(--muted);fill-opacity:.55}
.brand-star{fill:var(--mint)}
:is(#app,dialog) .brand{display:inline-flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none}
:is(#app,dialog) .brand-mark{flex:none}
:is(#app,dialog) .brand .brand-name{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap}
:is(#app,dialog) .brand .brand-name>span{font-size:18px;line-height:1;background:none;padding:0;margin:0;border:0;-webkit-text-fill-color:currentColor}
:is(#app,dialog) .brand .brand-name>.lg-wb{font-weight:800;letter-spacing:-.3px;color:var(--fg)}
:is(#app,dialog) .brand .brand-name>.lg-ru{font-weight:600;letter-spacing:.35px;color:var(--muted)}
:is(#app,dialog) .login-brand .brand-name>span{font-size:20px}
@media (max-width:760px){:is(#app,dialog) .shell .brand .brand-name>.lg-ru{display:none}}


/* ===== Mobile app layer (≤ 759.98 px): app bar, bottom tabs, sheets, phone layouts ===== */
:root{--mint-ink:var(--mint);--amber-ink:var(--amber);--tabbar-h:58px;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){--mint-ink:#087A67;--amber-ink:#8A5608}}
:root[data-theme="light"]{--mint-ink:#087A67;--amber-ink:#8A5608}
.m-appbar,.m-tabbar,.m-flow{display:none}
dialog.m-sheet:not([open]){display:none}
/* Desktop: the fold for catalog cards and the period chips are phone-only */
.m-period,.catalog-msum{display:none}
.catalog-more>summary{display:none}
.catalog-more{display:contents}

.m-ic{width:22px;height:22px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.m-ic .m-fill{fill:currentColor;stroke:none}
.m-ic--sm{width:18px;height:18px}.m-ic--xs{width:14px;height:14px;stroke-width:2.2}

/* Sheets: native <dialog> (focus trap, Esc) styled as a bottom sheet */
dialog.m-sheet{position:fixed;inset:auto 0 0 0;margin:0;padding:0;width:100%;max-width:100%;max-height:100dvh;border:0;background:transparent;color:var(--fg);overflow:visible}
dialog.m-sheet::backdrop{background:rgba(4,7,16,.55);opacity:0;transition:opacity .22s var(--ease-out)}
dialog.m-sheet.is-open::backdrop{opacity:1}
.m-sheet__panel{--drag:0px;background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:24px 24px 0 0;max-height:min(86dvh,720px);display:flex;flex-direction:column;padding:0 0 calc(var(--sab) + 12px);transform:translateY(100%);transition:transform .26s var(--ease-out);box-shadow:0 -12px 40px rgba(0,0,0,.28)}
dialog.m-sheet.is-open .m-sheet__panel{transform:translateY(var(--drag))}
.m-sheet__panel.is-dragging{transition:none}
.m-sheet__grab{display:block;width:40px;height:5px;border-radius:3px;background:var(--line);margin:8px auto 2px}
.m-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 14px 8px 20px;touch-action:none}
.m-sheet__title{font-size:19px!important;font-weight:800;letter-spacing:-.01em;margin:0!important;line-height:1.3!important}
.m-sheet__body{overflow-y:auto;overscroll-behavior:contain;padding:4px 16px 12px;-webkit-overflow-scrolling:touch}
.m-sheet__foot{display:flex;gap:10px;padding:10px 16px 0;border-top:1px solid var(--line)}
.m-sheet__note{font-size:12.5px!important;color:var(--muted)!important;margin:14px 2px 0!important;line-height:1.5!important}
.m-icon-btn{display:grid;place-items:center;width:40px;height:40px;min-height:40px!important;padding:0!important;border-radius:50%!important;border:0!important;background:var(--surface-2)!important;color:var(--fg)!important}
.m-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border-radius:14px!important;font-weight:800;font-size:15px!important;border:1px solid var(--line)!important;background:var(--surface-2)!important;color:var(--fg)!important}
.m-btn--block{flex:1;width:100%}
.m-btn--danger{color:var(--coral)!important}
.m-acct{display:flex;gap:12px;align-items:center;padding:12px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line);margin-bottom:14px}
.m-acct b{display:block;font-size:15px}.m-acct div span{font-size:12.5px;color:var(--muted);font-weight:600}
.m-avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--mint) 16%,transparent);color:var(--mint-ink);font-weight:800;font-size:18px;flex:0 0 auto}
.m-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}
.m-gm{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:84px;border-radius:16px!important;background:var(--surface-2)!important;border:1px solid var(--line)!important;color:var(--fg)!important;font-size:12.5px!important;font-weight:700;text-align:center;padding:8px 4px!important;line-height:1.2}
.m-gm .m-ic{color:var(--mint)}
.m-gm[aria-current="page"]{border-color:var(--mint)!important}
.m-gm[hidden]{display:none!important}
.m-label{font-size:11.5px!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)!important;margin:4px 2px 8px!important}
.m-seg{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line)}
.m-seg__btn{flex:1;display:inline-flex!important;align-items:center;justify-content:center;gap:6px;min-height:40px;border-radius:10px!important;border:0!important;background:transparent!important;color:var(--muted)!important;font-weight:700;font-size:13px!important;padding:0 6px!important}
.m-seg__btn[aria-pressed="true"]{background:var(--surface)!important;color:var(--fg)!important;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.m-opt{display:flex!important;align-items:center;gap:12px;width:100%;min-height:62px;padding:8px 6px!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;color:var(--fg)!important;text-align:left}
.m-opt:last-child{border-bottom:0!important}
.m-opt__main{flex:1;min-width:0}.m-opt__main b{display:block;font-size:15px}.m-opt__main span{font-size:12.5px;color:var(--muted);font-weight:600}
.m-radio{width:22px;height:22px;border-radius:50%;border:2px solid var(--faint);flex:0 0 auto}
.m-opt[aria-checked="true"] .m-radio{border:7px solid var(--mint)}
.m-dots{display:inline-flex;flex:0 0 auto}
.m-dots i{width:10px;height:10px;border-radius:50%;background:var(--k1);border:2px solid var(--surface)}
.m-dots i+i{background:var(--k2);margin-left:-4px}
.m-dots--1 i+i,.m-dots--2 i:first-child{display:none}
.m-dots--2 i+i{margin-left:0}

@media (max-width:759.98px){
 html{-webkit-text-size-adjust:100%;scroll-padding-top:72px}
 body{padding-bottom:calc(var(--tabbar-h) + var(--sab))}
 :is(#app) .shell .app-header,:is(#app) .shell .topbar,:is(#app) .shell .cabinet-control,:is(#app) .shell .footer{display:none!important}
 :is(#app) .shell{padding-top:0!important}
 :is(#app) .shell .main{padding:12px 12px 28px!important;padding-top:12px!important}
 /* App bar */
 .m-appbar{display:block;position:sticky;top:0;z-index:30;padding:calc(var(--sat) + 6px) 14px 8px;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(16px);backdrop-filter:saturate(1.4) blur(16px);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
 .m-appbar__row{display:flex;align-items:center;gap:10px;min-height:44px}
 .m-appbar__mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--surface);border:1px solid var(--line);flex:0 0 auto}
 .m-appbar__titles{flex:1;min-width:0}
 .m-appbar__title{margin:0!important;font-size:19px!important;font-weight:800;letter-spacing:-.015em;line-height:1.15!important;color:var(--fg)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .m-appbar__sub{margin:1px 0 0!important;font-size:12px!important;font-weight:600;color:var(--muted)!important;line-height:1.3!important;display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .m-live{width:7px;height:7px;border-radius:50%;background:var(--mint);flex:0 0 auto;box-shadow:0 0 0 3px color-mix(in srgb,var(--mint) 22%,transparent)}
 .m-cab{display:inline-flex!important;align-items:center;gap:7px;min-height:40px;padding:0 12px!important;border-radius:999px!important;border:1px solid var(--line)!important;background:var(--surface)!important;color:var(--fg)!important;font-weight:800;font-size:13.5px!important;flex:0 0 auto}
 .m-cab .m-ic{color:var(--muted)}
 /* Tab bar */
 .m-tabbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:40;padding:4px 4px var(--sab);background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(18px);backdrop-filter:saturate(1.4) blur(18px);border-top:1px solid var(--line)}
 .m-tab{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:var(--tabbar-h);padding:4px 2px!important;border:0!important;background:transparent!important;color:var(--muted)!important;font-size:11px!important;font-weight:700;letter-spacing:.01em;border-radius:12px!important;box-shadow:none!important;position:relative}
 .m-tab__icon{display:grid;place-items:center;width:52px;height:28px;border-radius:14px;transition:background .2s var(--ease-out)}
 .m-tab[aria-current="page"]{color:var(--fg)!important}
 .m-tab[aria-current="page"] .m-tab__icon{background:color-mix(in srgb,var(--mint) 18%,transparent);color:var(--mint-ink)}
 .m-tab:active .m-tab__icon{transform:scale(.92)}
 #notice{bottom:calc(var(--tabbar-h) + var(--sab) + 12px)!important}
 /* Headings inside pages: the app bar already names the screen */
 :is(#app) .page-heading{display:block!important;margin:4px 2px 14px!important;padding:0!important}
 :is(#app) .page-heading .eyebrow{display:none!important}
 :is(#app) .page-heading h1{font-size:24px!important;line-height:1.2!important;letter-spacing:-.02em;margin:0 0 4px!important}
 :is(#app) .page-heading .sub{font-size:14px!important;line-height:1.45!important;margin:0 0 10px!important}
 :is(#app) .page-heading>button,:is(#app) .page-heading>div+button{width:100%;min-height:46px}
 :is(#app) .panel,:is(#app) .catalog-list,:is(#app) .catalog-policy{border-radius:18px!important;padding:14px!important}
 :is(#app) .panel-header{flex-wrap:wrap;gap:8px}
 :is(#app) h2{font-size:19px!important;line-height:1.25!important}
 :is(#app) .filterbar{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px!important}
 :is(#app) .filterbar label{grid-column:1/-1}
 :is(#app) .filterbar label.search{grid-column:1/-1}
 :is(#app) input,:is(#app) select,dialog input,dialog select{font-size:16px!important}
 :is(#app) .table-scroll{margin:0 -14px;padding:0 14px;-webkit-overflow-scrolling:touch}
 /* Overview: period form as a compact row */
 :is(#app) .dashboard-strip{margin:0!important;padding:0!important}
 :is(#app) .pulse-block{border-radius:20px!important;padding:12px!important;margin:0 0 12px!important}
 :is(#app) .pulse-bar{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px!important;align-items:start}
 :is(#app) .pulse-bar .dashboard-period--unified{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px!important;grid-column:1/-1;margin:0!important}
 :is(#app) .pulse-bar .dashboard-period--unified label{font-size:11px!important;margin:0!important}
 :is(#app) .pulse-bar .dashboard-period--unified input{min-height:44px;width:100%;padding:0 10px!important}
 :is(#app) .pulse-bar .dashboard-period--unified button{min-height:42px!important;font-size:14px!important}
 :is(#app) .pulse-bar .dashboard-period--unified p{grid-column:1/-1;font-size:12px!important;margin:0!important}
 :is(#app) .pulse-refresh{grid-column:1/-1;min-height:42px!important;justify-content:center}
 :is(#app) .dashboard-status-row{grid-column:1/-1}
 :is(#app) .pulse-body{display:block!important}
 :is(#app) .pulse-big{font-size:clamp(34px,10.5vw,44px)!important;letter-spacing:-.03em}
 :is(#app) .pulse-sentence{font-size:13.5px!important;line-height:1.5!important}
 :is(#app) .pulse-minis{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important}
 :is(#app) .flow-scroll{display:none!important}
 :is(#app) .pulse-flow-head span{display:none}
 :is(#app) .dashboard-sales-row,:is(#app) .dashboard-cards,:is(#app) .dashboard-balance-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}
 :is(#app) .dashboard-card{padding:12px!important;border-radius:16px!important;min-width:0}
 :is(#app) .dashboard-card h2{font-size:12.5px!important;line-height:1.25!important}
 :is(#app) .dashboard-card strong{font-size:18px!important;letter-spacing:-.01em;word-break:break-word}
 :is(#app) .dashboard-card small{font-size:11.5px!important;line-height:1.4!important}

 /* Period chips (phones) */
 :is(#app) .m-period{display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;grid-column:1/-1;margin:0 -12px;padding:0 12px 2px}
 :is(#app) .m-period::-webkit-scrollbar{display:none}
 .m-chip{flex:0 0 auto;display:inline-flex!important;align-items:center;gap:6px;min-height:38px;padding:0 14px!important;border-radius:999px!important;border:1px solid var(--line)!important;background:var(--surface)!important;color:var(--fg)!important;font-weight:700;font-size:13.5px!important;white-space:nowrap;scroll-snap-align:start;box-shadow:none!important}
 .m-chip[aria-pressed="true"]{background:var(--fg)!important;color:var(--bg)!important;border-color:var(--fg)!important}
 :is(#app) .pulse-bar .dashboard-period--unified:not(.is-custom)>label,:is(#app) .pulse-bar .dashboard-period--unified:not(.is-custom)>button,:is(#app) .pulse-bar .dashboard-period--unified:not(.is-custom)>p{display:none!important}
 /* Page title lives in the app bar; keep the h1 for screen readers */
 :is(#app) .page-heading h1{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;margin:0!important}
 /* Catalog cards: compact with a fold */
 :is(#app) .catalog-policy p{font-size:13px!important;line-height:1.5!important}
 :is(#app) .catalog-policy strong{font-size:16px!important}
 :is(#app) .catalog-product{border-radius:18px!important;padding:12px!important}
 :is(#app) .catalog-product-header{gap:10px!important}
 :is(#app) .catalog-title{font-size:15px!important;line-height:1.3!important;text-align:left}
 :is(#app) .catalog-photo{width:64px!important;height:84px!important;border-radius:12px!important}
 :is(#app) .catalog-msum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0 6px}
 :is(#app) .catalog-msum div{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:8px 10px;min-width:0}
 :is(#app) .catalog-msum span{display:block;font-size:11px;color:var(--muted);font-weight:700}
 :is(#app) .catalog-msum b{display:block;font-size:13.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 :is(#app) .catalog-more{display:block}
 :is(#app) .catalog-more>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 4px;font-weight:700;font-size:13.5px;color:var(--mint-ink);cursor:pointer;list-style:none}
 :is(#app) .catalog-more>summary::-webkit-details-marker{display:none}
 :is(#app) .catalog-more>summary::after{content:"+";font-size:20px;font-weight:600}
 :is(#app) .catalog-more[open]>summary::after{content:"−"}
 :is(#app) .catalog-specs,:is(#app) .catalog-money{grid-template-columns:minmax(0,1fr)!important}

 .m-chip{flex:0 0 auto!important;width:auto!important;min-width:0!important;white-space:nowrap!important;line-height:1!important}
 :is(#app) .catalog-list{padding:0!important;background:transparent!important;border:0!important}
 :is(#app) .catalog-list>.panel-header{padding:4px 4px 0}
 :is(#app) .catalog-list>.panel-header h2{font-size:16px!important}
 :is(#app) .catalog-list>.panel-header span{font-size:12px}
 :is(#app) .catalog-pager{padding:8px 4px!important;margin:0!important}
 :is(#app) .catalog-pager span{font-size:13px}
 :is(#app) .catalog-pager button{min-height:40px!important;padding:0 14px!important;font-size:14px!important}
 :is(#app) .catalog-product{margin:0 0 10px!important}
 :is(#app) .catalog-seller{font-size:12px!important;margin:0 0 2px!important}
 :is(#app) .catalog-article,:is(#app) .catalog-article b{font-size:13px!important;margin:4px 0 0!important;line-height:1.35!important}
 :is(#app) .catalog-wb{font-size:12px!important;margin:2px 0 0!important}
 :is(#app) .catalog-badge{display:none!important}
 :is(#app) .catalog-product-header{padding-bottom:0!important;border:0!important}
 :is(#app) .price-editor{border-radius:14px!important}
 :is(#app) .price-editor>summary{font-size:14.5px!important;min-height:48px;padding:10px 14px!important;line-height:1.3!important}
 :is(#app) .catalog-policy>p{display:none}
 :is(#app) .catalog-policy{padding:10px 14px!important}
 :is(#app) .catalog-policy>strong{font-size:14px!important}
 :is(#app) .catalog-policy details summary{font-size:13px!important;min-height:36px}
 :is(#app) #refresh-catalog{min-height:44px!important;font-size:14px!important}

 /* Tables → stacked cards */
 :is(#app) .table-scroll:has(table.m-cards){overflow:visible!important;margin:0!important;padding:0!important;border:0!important;background:none!important;max-height:none!important}
 :is(#app) table.m-cards{display:block!important;width:100%!important;min-width:0!important;border:0!important}
 :is(#app) table.m-cards thead{display:none!important}
 :is(#app) table.m-cards tbody{display:grid!important;gap:8px}
 :is(#app) table.m-cards tr{display:block!important;border:1px solid var(--line)!important;border-radius:14px;padding:8px 12px!important;background:var(--surface-2)!important}
 :is(#app) table.m-cards td{display:block!important;padding:6px 0!important;border:0!important;border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent)!important;font-size:13.5px!important;line-height:1.45!important;text-align:left!important;white-space:normal!important;word-break:break-word;min-width:0!important;width:auto!important}
 :is(#app) table.m-cards td::before{content:attr(data-label);display:block;color:var(--muted);font-size:11.5px;font-weight:800;letter-spacing:.02em;line-height:1.4;margin-bottom:2px}
 :is(#app) table.m-cards td small{display:block;font-size:12.5px!important;line-height:1.45!important}
 :is(#app) table.m-cards td .pill{margin:2px 0}
 :is(#app) table.m-cards td:first-child{display:block!important;border-top:0!important;font-weight:800;font-size:14.5px!important}
 :is(#app) table.m-cards td:first-child::before{display:none}
 :is(#app) table.m-cards td>button{justify-self:start}
 :is(#app) .catalog-money h3{font-size:15px!important}
 :is(#app) .catalog-number{font-size:22px!important}
 :is(#app) .catalog-secondary-number{font-size:18px!important}

 /* Phone type scale for legacy screens */
 :is(#app) .main{font-size:14.5px}
 :is(#app) .main p,:is(#app) .main li,:is(#app) .req-note,:is(#app) .notice{font-size:14px!important;line-height:1.55!important}
 :is(#app) .main small{font-size:12.5px!important;line-height:1.5!important}
 :is(#app) .main button:not(.m-chip):not(.m-flow__row):not(.m-tab){font-size:14.5px;min-height:44px}
 :is(#app) .main .panel button,:is(#app) .main .grid-two button{font-size:14px!important;padding-top:10px;padding-bottom:10px}
 :is(#app) .grid-two,:is(#app) .metrics{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
 :is(#app) .notice{padding:12px 14px!important;border-radius:16px!important}
 :is(#app) .ss .ss-mresults{height:auto!important;max-height:56vh;min-height:0!important}
 /* Waterfall */
 .m-flow{display:block;margin:6px -4px 4px}
 .m-flow__row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;width:100%;padding:10px 4px!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;color:var(--fg)!important;text-align:left;font-weight:600;min-height:52px}
 .m-flow__row:first-child{border-top:0!important}
 .m-flow__lbl{display:flex;align-items:center;gap:6px;font-size:13.5px;line-height:1.3;min-width:0}
 .m-flow__lbl .m-ic{color:var(--faint);transform:rotate(-90deg);transition:transform .2s var(--ease-out)}
 .m-flow__row[aria-expanded="true"] .m-flow__lbl .m-ic{transform:none}
 .m-flow__val{font-size:14px;font-weight:800;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
 .m-flow__val em{display:block;font-style:normal;font-size:11.5px;color:var(--muted);font-weight:700}
 .m-flow__track{grid-column:1/-1;position:relative;height:8px;border-radius:4px;background:var(--surface-2);overflow:hidden;margin-top:4px}
 .m-flow__fill{position:absolute;top:0;bottom:0;left:var(--l,0%);width:var(--w,0%);border-radius:4px;background:var(--sky)}
 .m-flow__row--coral .m-flow__fill{background:var(--coral)}
 .m-flow__row--mint .m-flow__fill{background:var(--mint)}
 .m-flow__row--coral .m-flow__val{color:var(--coral)}
 .m-flow__row--mint .m-flow__val{color:var(--mint-ink)}
 .m-flow__note{grid-column:1/-1;display:none;font-size:12.5px;color:var(--muted);line-height:1.5;font-weight:600;padding-top:6px}
 .m-flow__row[aria-expanded="true"] .m-flow__note{display:block}
 /* Orders block */
 :is(#app) .delivery-block{border-radius:20px!important;padding:12px!important}
 :is(#app) .delivery-head{flex-wrap:wrap;gap:8px}
 :is(#app) .delivery-cabinets{width:100%;overflow-x:auto}
 :is(#app) .delivery-foot{font-size:12px!important}
 /* Dialogs used by the desktop app become full-screen sheets */
 dialog#detail,dialog#balance-detail,dialog.ss-modal{width:100%!important;max-width:100%!important;max-height:100dvh!important;height:100dvh;margin:0!important;border-radius:0!important;padding:calc(var(--sat) + 12px) 14px calc(var(--sab) + 16px)!important}
 /* Stock page */
 :is(#app) .ss .ss-mcol{border-radius:16px}
 :is(#app) .ss .ss-sug-strip{scroll-snap-type:x mandatory}
 :is(#app) .ss .ss-scard{scroll-snap-align:center;flex-basis:calc(100vw - 52px)!important;max-width:calc(100vw - 52px)}
 :is(#app) .ss .ss-table-wrap,:is(#app) .ss .table-scroll{margin:0}
}
@media (max-width:380px){
 .m-tab span:last-child{font-size:10.5px}
 .m-cab span:not(.m-dots){max-width:64px;overflow:hidden;text-overflow:ellipsis}
}
@media (prefers-reduced-motion:reduce){dialog.m-sheet .m-sheet__panel,dialog.m-sheet::backdrop{transition:none}}
/* Installed app (standalone): no browser chrome — add top inset */
@media (display-mode:standalone) and (max-width:759.98px){.m-appbar{padding-top:calc(var(--sat) + 8px)}}
