:root { color-scheme: light; --ink:#17231d; --muted:#718078; --green:#195e3e; --lime:#d9ff63; --line:#dfe7e2; --soft:#f4f7f5; --red:#a1373d; font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.api-form-copy{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.api-token-help{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}.api-token-help summary{color:var(--green);cursor:pointer;font-size:10px;font-weight:850}.api-token-help div{padding-top:10px;color:#536159;font-size:9px;line-height:1.55}.api-token-help ol{margin:0 0 10px;padding-left:19px}.api-token-help p{margin:8px 0}.api-token-help strong{color:#8b4b2c}
* { box-sizing:border-box; } body { margin:0; min-height:100vh; color:var(--ink); background:#f5f7f5; } a { color:inherit; text-decoration:none; } button,input,select { font:inherit; }
.brand { display:inline-flex; align-items:center; gap:10px; font-weight:850; letter-spacing:-.03em; }.brand span { display:grid; place-items:center; width:39px; height:39px; border-radius:12px; color:#173429; background:var(--lime); font-size:12px; letter-spacing:0; }
.eyebrow { margin:0 0 8px; color:#4f8e6f; font-size:10px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.auth-layout { min-height:100vh; display:grid; grid-template-columns:minmax(360px,1fr) minmax(420px,.8fr); }.auth-brand { padding:55px clamp(38px,7vw,110px); display:flex; flex-direction:column; justify-content:space-between; color:white; background:radial-gradient(circle at 10% 0,#315d49,#12291f 58%); }.auth-brand .brand span { color:#173429; }.auth-brand h1 { max-width:700px; margin:12px 0 20px; font-size:clamp(40px,5vw,72px); line-height:.98; letter-spacing:-.06em; }.auth-brand .lead { max-width:550px; color:#b7c9c0; font-size:16px; line-height:1.65; }.auth-brand small { color:#8fa89c; }.auth-card { display:grid; place-items:center; padding:35px; background:white; }.auth-form { width:min(420px,100%); }.auth-form h2 { margin:0 0 30px; font-size:34px; letter-spacing:-.04em; }.auth-form label,.form-panel label,.company-panel label { display:grid; gap:8px; margin:0 0 17px; color:#536159; font-size:11px; font-weight:750; }.auth-form input,.form-panel input,.form-panel select,.company-panel input { width:100%; min-height:48px; padding:0 14px; border:1px solid var(--line); border-radius:11px; outline:0; color:var(--ink); background:#fbfcfb; }.auth-form input:focus,.form-panel input:focus,.form-panel select:focus,.company-panel input:focus { border-color:#4a9973; box-shadow:0 0 0 3px #e7f6ed; }.auth-form button,.form-panel button,.company-panel button { width:100%; min-height:49px; border:0; border-radius:11px; cursor:pointer; color:#173429; background:var(--lime); font-weight:800; }.auth-form .hint { display:block; margin:-9px 0 17px; color:var(--muted); }.form-error { min-height:18px; color:var(--red); font-size:11px; }.form-link { margin-top:22px; color:var(--muted); text-align:center; font-size:12px; }.form-link a { color:var(--green); font-weight:800; }
.auth-form button.secondary-auth{margin-top:10px;border:1px solid #cbd8d1;color:#245c43;background:#f4f8f5}
.cabinet { min-height:100vh; }.cabinet aside { position:fixed; inset:0 auto 0 0; width:245px; padding:28px 20px; display:flex; flex-direction:column; color:#eaf3ee; background:#173429; }.cabinet aside .brand { margin:0 8px 42px; }.cabinet nav { display:grid; gap:7px; }.cabinet nav a { padding:12px 14px; border-radius:10px; color:#a9bbb2; font-size:12px; font-weight:700; }.cabinet nav a:hover,.cabinet nav a.active { color:white; background:rgba(255,255,255,.08); }.account-box { margin-top:auto; padding:13px; border-radius:12px; background:rgba(255,255,255,.06); }.account-box span { display:block; overflow:hidden; color:#d6e2dc; font-size:10px; text-overflow:ellipsis; }.account-box button { margin-top:8px; padding:0; border:0; color:var(--lime); background:none; cursor:pointer; font-size:10px; font-weight:800; }.workspace { margin-left:245px; min-height:100vh; padding:34px clamp(25px,5vw,70px) 70px; }.workspace > header { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:40px; }.workspace h1 { margin:0; font-size:31px; letter-spacing:-.04em; }.primary-link { display:inline-flex; min-height:42px; padding:0 16px; align-items:center; border-radius:10px; color:#173429; background:var(--lime); font-size:11px; font-weight:800; }.loading { padding:70px; color:var(--muted); text-align:center; }.stats { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }.stats article { padding:24px; border:1px solid var(--line); border-radius:17px; background:white; }.stats span,.stats strong { display:block; }.stats span { color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.stats strong { margin-top:20px; font-size:29px; letter-spacing:-.04em; }.section-heading { display:flex; align-items:end; justify-content:space-between; margin:38px 0 15px; }.section-heading h2 { margin:0; font-size:21px; }.project-list,.history-list { display:grid; gap:11px; }.project-card,.history-row { padding:19px 21px; display:flex; align-items:center; justify-content:space-between; gap:20px; border:1px solid var(--line); border-radius:15px; background:white; }.project-card > div { display:flex; align-items:center; gap:14px; }.project-mark { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; color:var(--green); background:#e8f6ed; font-size:10px; font-weight:900; }.project-card h2 { margin:0 0 5px; font-size:14px; }.project-card p { margin:0; color:var(--muted); font-size:10px; }.project-card > a,.history-row a { color:var(--green); font-size:10px; font-weight:800; }.panel { border:1px solid var(--line); border-radius:17px; background:white; }.empty { padding:40px; text-align:center; }.empty h2 { margin:0 0 8px; }.empty p { margin:0 0 20px; color:var(--muted); }.empty.error { color:var(--red); }.form-panel { max-width:700px; padding:28px; }.company-panel { max-width:700px; margin-top:16px; padding:24px 28px; }.company-panel h2 { margin:0 0 20px; font-size:18px; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.form-panel .check { display:flex; align-items:center; gap:9px; }.form-panel .check input { width:17px; min-height:17px; }.note { padding:12px 14px; border-radius:10px; color:#5d6d64; background:var(--soft); font-size:10px; line-height:1.5; }.company-panel button.secondary { color:white; background:#173429; }.project-hero { padding:28px; display:flex; align-items:center; justify-content:space-between; gap:35px; }.project-hero h2 { margin:0; font-size:28px; }.project-hero dl { margin:0; display:flex; gap:35px; }.project-hero dl div { min-width:100px; }.project-hero dt { color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }.project-hero dd { margin:8px 0 0; font-size:12px; font-weight:800; }.history-row strong,.history-row span { display:block; }.history-row strong { font-size:12px; }.history-row span { margin-top:5px; color:var(--muted); font-size:9px; }
.inline-link,.table-link { display:inline-block; margin-top:12px; color:var(--green); font-size:10px; font-weight:800; }.top-section { margin-top:0; }.periods-table { overflow:hidden; }.table-scroll { overflow:auto; }.periods-table table { width:100%; border-collapse:collapse; }.periods-table th,.periods-table td { padding:14px 15px; border-bottom:1px solid #edf1ef; text-align:left; white-space:nowrap; }.periods-table th { color:var(--muted); background:#fafcfb; font-size:9px; letter-spacing:.06em; text-transform:uppercase; }.periods-table td { font-size:11px; }.periods-table td:nth-child(5),.periods-table td:nth-child(6) { text-align:right; }.table-empty { padding:40px!important; color:var(--muted); text-align:center!important; }.period-status { display:inline-flex; padding:6px 9px; border-radius:8px; color:#786419; background:#fff5c8; font-size:9px; font-weight:850; letter-spacing:.04em; }.period-status.SUCCESS { color:var(--green); background:#e6f6ec; }.period-status.FAILED { color:var(--red); background:#fff0f0; }.period-status.RUNNING,.period-status.PREFLIGHT { color:#315d94; background:#eaf3ff; }
.period-form-panel h2 { margin:0 0 24px; }.period-types { margin:0 0 21px; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; border:0; }.period-types legend { margin-bottom:9px; color:var(--muted); font-size:10px; font-weight:800; }.period-types label { margin:0; padding:14px; display:flex; align-items:center; gap:10px; border:1px solid var(--line); border-radius:12px; cursor:pointer; }.period-types input { width:auto; min-height:auto; }.period-types b,.period-types small { display:block; }.period-types b { color:var(--ink); font-size:12px; }.period-types small { margin-top:4px; color:var(--muted); font-size:9px; }.period-head { padding:25px 28px; display:flex; align-items:center; justify-content:space-between; gap:20px; }.period-head h2 { margin:0 0 6px; font-size:25px; }.period-head div>span { color:var(--muted); font-size:10px; }.upload-batch-panel { margin-top:16px; padding:28px; }.section-heading.compact { margin:0 0 18px; }.batch-drop { min-height:170px; display:flex!important; flex-direction:column; align-items:center; justify-content:center; gap:7px; border:1px dashed #aebfb5; border-radius:14px; background:#fafcfb; cursor:pointer; }.batch-drop input { position:absolute; width:1px; height:1px; opacity:0; }.batch-drop>span { color:var(--green); font-size:29px; }.batch-drop strong { color:var(--ink); font-size:13px; }.batch-drop small { color:var(--muted); font-size:10px; }.period-upload-results { display:grid; gap:8px; margin-top:18px; }.batch-file { padding:12px 14px; border-radius:11px; background:var(--soft); }.batch-file>div { display:flex; align-items:center; justify-content:space-between; gap:15px; }.batch-file strong { overflow:hidden; font-size:11px; text-overflow:ellipsis; }.batch-file span { color:var(--green); font-size:9px; font-weight:850; }.batch-file small { display:block; margin-top:6px; overflow:hidden; color:var(--muted); font-family:ui-monospace,SFMono-Regular,monospace; font-size:8px; text-overflow:ellipsis; }.batch-file.error { color:var(--red); background:#fff0f0; }.batch-file.pending { color:var(--muted); }.calculation-actions { margin-top:24px; padding-top:20px; display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid var(--line); }.calculation-actions span { color:var(--muted); font-size:10px; }.calculation-actions button { flex:0 0 auto; }.calculation-job-result { margin-top:16px; }.job-success,.job-error,.job-state,.job-progress { padding:14px 16px; border-radius:12px; }.job-success { display:flex; align-items:center; gap:14px; background:#ecfdf3; }.job-success span { color:var(--muted); font-family:ui-monospace,monospace; font-size:8px; }.job-success a { margin-left:auto; }.job-error { color:#9f1239; background:#fff1f2; }.job-state,.job-progress { background:#f6f7fb; }.job-error ul,.job-state ul { margin:10px 0 0; padding-left:20px; }
@media(max-width:800px){.auth-layout{grid-template-columns:1fr}.auth-brand{display:none}.cabinet aside{position:static;width:auto}.cabinet nav{grid-template-columns:repeat(3,1fr)}.account-box{display:none}.workspace{margin:0;padding:25px 17px}.stats,.form-grid,.period-types{grid-template-columns:1fr}.workspace>header,.project-hero,.period-head{align-items:flex-start;flex-direction:column}.project-hero dl{flex-wrap:wrap}.project-card{align-items:flex-start}}

[hidden]{display:none!important;}

.template-downloads{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:16px 0;
}
.template-downloads a{
  display:inline-flex;
  min-height:42px;
  padding:0 16px;
  align-items:center;
  justify-content:center;
  border:1px solid #cbd8d1;
  border-radius:10px;
  color:#245c43;
  background:#f4f8f5;
  font-size:11px;
  font-weight:800;
}

.upload-requirements{
  margin:22px 0;
  padding:20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fafcfb;
}
.upload-requirements h3{
  margin:0 0 16px;
  font-size:15px;
}
.upload-requirement{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid #e7ede9;
}
.upload-requirement:last-of-type{
  border-bottom:0;
}
.requirement-mark{
  flex:0 0 28px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#245c43;
  background:#e7f4ec;
  font-size:10px;
  font-weight:900;
}
.upload-requirement strong,
.upload-requirement small{
  display:block;
}
.upload-requirement strong{
  margin-top:2px;
  font-size:12px;
}
.upload-requirement small{
  margin-top:4px;
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
}
.upload-requirements-note{
  margin:15px 0 0;
  padding:12px;
  border-radius:10px;
  color:#536159;
  background:#edf3ef;
  font-size:10px;
  line-height:1.5;
}

.upload-delete{
  margin-left:10px;
  padding:5px 9px;
  border:1px solid #e8b7bd;
  border-radius:8px;
  color:#a52d43;
  background:#fff5f6;
  cursor:pointer;
  font-size:9px;
  font-weight:800;
}
.upload-delete:hover{
  background:#ffe9ec;
}
.upload-delete:disabled{
  opacity:.55;
  cursor:default;
}

.context-nav{margin-top:25px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}
.context-nav>span{padding:0 14px 8px;color:#789488;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.first-calculation{margin-top:28px;padding:24px}.first-calculation h2{margin:0 0 18px;font-size:18px}.first-calculation ol{margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:9px;list-style:none;counter-reset:steps}.first-calculation li{padding:13px;border-radius:10px;color:#56665d;background:var(--soft);font-size:10px;counter-increment:steps}.first-calculation li::before{content:counter(steps);margin-right:8px;color:var(--green);font-weight:900}
.calculation-history-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.5fr) auto}
.history-technical{min-width:0}.history-technical span{margin:0 0 5px}.history-technical code{display:block;overflow:hidden;color:#66746d;font-size:8px;text-overflow:ellipsis;white-space:nowrap}
.history-actions{display:flex!important;align-items:center;gap:12px}.history-actions a{white-space:nowrap}.calculation-delete{padding:0;border:0;color:var(--red);background:none;cursor:pointer;font-size:10px;font-weight:800;white-space:nowrap}.calculation-delete:hover{text-decoration:underline}.calculation-delete:disabled{opacity:.5;cursor:wait}.result-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.technical-details{min-width:0;color:var(--muted);font-size:9px}.technical-details summary{cursor:pointer;color:#587066;font-weight:750}.technical-details dl{margin:10px 0 0;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fafcfb}.technical-details dl div{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);gap:10px;padding:4px 0}.technical-details dt{font-weight:700}.technical-details dd{min-width:0;margin:0}.technical-details code{display:block;overflow:hidden;color:#38473f;font-size:8px;text-overflow:ellipsis;white-space:nowrap}
.result-head{padding:28px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.result-head h2{margin:7px 0 8px;font-size:29px;letter-spacing:-.04em}.result-head p{margin:0;color:var(--muted);font-size:11px}.back-link{display:inline-flex;margin-bottom:24px;color:var(--green);font-size:10px;font-weight:800}.result-actions{display:flex;align-items:center;gap:12px}.technical-strip{margin:12px 0 20px;padding:11px 15px;display:grid;grid-template-columns:auto minmax(200px,1fr) auto auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:11px;color:var(--muted);background:#fafcfb;font-size:9px}.technical-strip code{overflow:hidden;color:#38473f;text-overflow:ellipsis}.technical-strip b{color:var(--ink)}
.result-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.result-metric{min-height:130px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:16px;background:white}.result-metric.primary{color:white;border-color:#204634;background:#204634}.result-metric span,.expense-grid span,.sku-detail-grid span,.target-grid span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.result-metric.primary span{color:#a8c6b7}.result-metric strong{font-size:24px;letter-spacing:-.04em}.expense-grid{padding:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.expense-grid article{min-height:96px;padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.expense-grid article:nth-child(4n){border-right:0}.expense-grid article:nth-last-child(-n+4){border-bottom:0}.expense-grid strong{font-size:16px}.section-copy{margin:7px 0 0;color:var(--muted);font-size:10px;font-weight:400}
.sku-tools{position:sticky;top:0;z-index:3;margin-bottom:12px;padding:14px;display:grid;grid-template-columns:minmax(210px,1fr) auto minmax(160px,.5fr) auto;align-items:end;gap:12px}.sku-tools label{display:grid;gap:6px;color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.sku-tools input,.sku-tools select{min-height:40px;padding:0 11px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:#fff}.sku-tools>strong{padding-bottom:11px;font-size:10px;white-space:nowrap}.sku-filters{display:flex;gap:5px}.sku-filters button{min-height:40px;padding:0 11px;border:1px solid var(--line);border-radius:9px;color:#56665d;background:#fff;cursor:pointer;font-size:9px;font-weight:800}.sku-filters button.active{color:white;border-color:var(--green);background:var(--green)}
.result-table-panel{overflow:hidden}.result-table-scroll{max-height:680px;overflow:auto}.result-table{width:100%;border-collapse:collapse}.result-table th{position:sticky;top:0;z-index:2;padding:11px 12px;color:var(--muted);background:#f8fbf9;font-size:8px;letter-spacing:.05em;text-align:right;text-transform:uppercase;white-space:nowrap}.result-table th:first-child,.result-table td:first-child,.result-table th:nth-child(2),.result-table td:nth-child(2){text-align:left}.result-table td{padding:11px 12px;border-top:1px solid #edf1ef;font-size:9px;text-align:right;white-space:nowrap}.result-table tbody tr{cursor:pointer}.result-table tbody tr:hover{background:#f5faf7}.result-table td:first-child,.result-table td:nth-child(2){max-width:220px;overflow:hidden;text-overflow:ellipsis}.result-table td:first-child strong{display:block;overflow:hidden;text-overflow:ellipsis}.result-table .negative{color:var(--red);font-weight:800}.result-table .positive{color:var(--green);font-weight:800}.sku-status{display:inline-flex;padding:5px 7px;border-radius:7px;color:#516058;background:#edf1ef;font-size:8px;font-weight:850;white-space:nowrap}.sku-status+.sku-status{margin-left:.35rem}.sku-status.PROFITABLE,.sku-status.SUCCESS{color:#17603e;background:#e4f7eb}.sku-status.LOSS{color:#a1373d;background:#fff0f0}.sku-status.NO_SALES{color:#6d6450;background:#f4f0e7}.sku-status.NEEDS_ATTENTION,.sku-status.TARGET_UNREACHABLE,.sku-status.TARGET_PRICE_UNREACHABLE{color:#856519;background:#fff5cc}
.result-audit{padding:10px}.audit-empty{padding:30px;color:var(--green);text-align:center}.audit-issue{padding:13px;display:grid;grid-template-columns:70px 1fr;gap:12px;border-bottom:1px solid var(--line)}.audit-issue:last-child{border-bottom:0}.audit-issue>span{color:#8b6c18;font-size:8px;font-weight:900}.audit-issue.error>span{color:var(--red)}.audit-issue strong{font-size:10px}.audit-issue p{margin:5px 0;color:#57665e;font-size:10px}.audit-issue small{color:var(--muted);font-size:8px}
.sku-dialog{width:min(920px,calc(100vw - 30px));max-height:90vh;padding:0;border:0;border-radius:20px;box-shadow:0 30px 90px rgba(12,35,24,.28)}.sku-dialog::backdrop{background:rgba(15,34,25,.58)}.dialog-close{position:sticky;z-index:3;top:14px;float:right;width:34px;height:34px;margin:14px;border:0;border-radius:50%;color:#385047;background:#edf3ef;cursor:pointer;font-size:20px}.sku-detail-head{padding:36px 38px 24px;border-bottom:1px solid var(--line)}.sku-detail-head h2{margin:0 0 7px;font-size:28px}.sku-detail-head>p:not(.eyebrow){color:var(--muted)}.sku-detail-grid{padding:22px 38px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.sku-detail-grid article,.target-grid article{min-height:84px;padding:14px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:11px}.sku-detail-grid strong,.target-grid strong{font-size:14px}.target-section,.recommendation-section{padding:8px 38px 28px}.target-section h3,.recommendation-section h3{margin:0 0 12px;font-size:15px}.target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.recommendation-section p,.recommendation-section li,.recommendation-section>span{color:#56665d;font-size:10px;line-height:1.6}.recommendation-section{margin:0 38px 38px;padding:20px;border-radius:13px;background:#f3f8f5}
@media(max-width:1100px){.result-kpis{grid-template-columns:repeat(2,1fr)}.expense-grid{grid-template-columns:repeat(2,1fr)}.expense-grid article:nth-child(2n){border-right:0}.expense-grid article:nth-last-child(-n+4){border-bottom:1px solid var(--line)}.expense-grid article:nth-last-child(-n+2){border-bottom:0}.sku-tools{grid-template-columns:1fr 1fr}.sku-filters{order:3;grid-column:1/-1}.calculation-history-row{grid-template-columns:1fr}.history-actions{justify-content:flex-start}}
@media(max-width:800px){.result-head{align-items:flex-start;flex-direction:column}.technical-strip{grid-template-columns:1fr}.result-kpis,.expense-grid,.sku-tools,.first-calculation ol{grid-template-columns:1fr}.sku-filters{grid-column:auto;flex-wrap:wrap}.sku-detail-grid,.target-grid{grid-template-columns:1fr}.result-actions{flex-wrap:wrap}.calculation-history-row{display:grid}.context-nav{display:none!important}}

.analytics-builder{padding:28px}.analytics-builder h2{margin:5px 0 8px;font-size:25px}.analytics-builder>div>p:last-child{max-width:720px;color:var(--muted);font-size:11px;line-height:1.6}.analytics-builder form{margin-top:22px}.analytics-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.analytics-choice{margin:0!important;padding:13px;display:flex!important;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:11px;background:#fafcfb;cursor:pointer}.analytics-choice input{width:auto!important;min-height:auto!important;margin-top:2px}.analytics-choice strong,.analytics-choice small{display:block}.analytics-choice strong{font-size:11px}.analytics-choice small{margin-top:4px;color:var(--muted);font-size:9px}.analytics-empty{padding:20px;color:var(--muted);text-align:center}.analytics-warnings{margin:16px 0;padding:12px 16px;border:1px solid #ead99d;border-radius:11px;color:#765b11;background:#fff9e8}.analytics-warnings p{margin:4px 0;font-size:10px}.analytics-tabs{margin:24px 0 14px;display:flex;gap:7px}.analytics-tabs button{min-height:40px;padding:0 18px;border:1px solid var(--line);border-radius:10px;color:#52645b;background:white;cursor:pointer;font-size:10px;font-weight:850}.analytics-tabs button.active{color:white;border-color:var(--green);background:var(--green)}.period-breakdown{width:100%;border-collapse:collapse}.period-breakdown th,.period-breakdown td{padding:11px;border-bottom:1px solid var(--line);font-size:10px;text-align:left}.period-breakdown th{color:var(--muted);font-size:8px;text-transform:uppercase}
.comparison-selectors{display:grid;grid-template-columns:1fr 1fr;gap:16px}.comparison-selectors fieldset{margin:0;padding:16px;border:1px solid var(--line);border-radius:13px}.comparison-selectors legend{padding:0 7px;font-size:12px;font-weight:850}.comparison-selectors .analytics-choices{grid-template-columns:1fr;max-height:360px;overflow:auto}.comparison-ranges{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.comparison-ranges article{padding:20px;border:1px solid var(--line);border-radius:15px;background:white}.comparison-ranges span,.comparison-ranges strong,.comparison-ranges small{display:block}.comparison-ranges span{color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase}.comparison-ranges strong{margin-top:10px;font-size:18px}.comparison-ranges small{margin-top:6px;color:var(--muted);font-size:9px}.comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.comparison-metric{padding:18px;border:1px solid var(--line);border-radius:14px;background:white}.comparison-metric>span{display:block;margin-bottom:14px;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase}.comparison-metric>div{margin:7px 0;display:flex;align-items:center;justify-content:space-between;gap:10px}.comparison-metric small{color:var(--muted);font-size:9px}.comparison-metric strong{font-size:14px}.comparison-metric p{margin:13px 0 0;padding-top:11px;border-top:1px solid var(--line);font-size:10px;font-weight:750;line-height:1.5}.positive{color:var(--green)}.negative{color:var(--red)}.weekly-normalized{margin-top:16px;padding:22px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.weekly-normalized h3{grid-column:1/-1;margin:0 0 8px}.weekly-normalized article{padding:12px;border-radius:10px;background:var(--soft)}.weekly-normalized span,.weekly-normalized strong{display:block}.weekly-normalized span{margin-bottom:8px;color:var(--muted);font-size:8px;text-transform:uppercase}.weekly-normalized strong{margin-top:4px;font-size:10px}.profit-contributors{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.profit-contributors article{padding:21px;border:1px solid var(--line);border-radius:14px;background:white}.profit-contributors h3{margin:0 0 14px;font-size:14px}.profit-contributors ol{margin:0;padding-left:21px}.profit-contributors li{padding:6px 0;font-size:10px}.profit-contributors li span{display:inline-block;max-width:55%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.profit-contributors li strong{float:right}.comparison-tools{grid-template-columns:1fr minmax(180px,.6fr) minmax(180px,.6fr) auto}.comparison-status{display:inline-flex;padding:5px 8px;border-radius:7px;color:#285e46;background:#eaf5ee;font-size:8px;font-weight:850}.comparison-side{padding:20px 38px}.comparison-side h3{margin:0 0 10px}.comparison-side>p{color:var(--muted)}
@media(max-width:1100px){.comparison-grid{grid-template-columns:repeat(2,1fr)}.weekly-normalized{grid-template-columns:repeat(2,1fr)}.comparison-tools{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.analytics-choices,.comparison-selectors,.comparison-ranges,.comparison-grid,.profit-contributors,.weekly-normalized{grid-template-columns:1fr}.comparison-tools{grid-template-columns:1fr}.comparison-side{padding:18px}}
.api-entry{padding:24px 28px;display:flex;justify-content:space-between;align-items:center;gap:24px}.api-entry h3{margin:0 0 8px;font-size:16px}.api-entry p,.api-notice p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.api-page-intro{margin:-22px 0 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.api-page-intro p{margin:0;color:#536159;font-size:14px;line-height:1.55}.api-page-intro span{padding:7px 10px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:#fff;font-size:9px;font-weight:800}.api-connection-card{padding:32px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);align-items:start;gap:48px;box-shadow:0 16px 42px rgba(21,55,39,.06)}.api-connection-copy{min-width:0}.api-connection-copy .eyebrow{margin-top:26px}.api-connection-copy h2{margin:0 0 12px;font-size:25px;letter-spacing:-.035em}.api-connection-copy>p:not(.eyebrow){max-width:560px;margin:0;color:var(--muted);font-size:11px;line-height:1.65}.api-connection-copy ul{margin:22px 0 0;padding:0;display:grid;gap:9px;list-style:none}.api-connection-copy li{position:relative;padding-left:21px;color:#536159;font-size:10px;line-height:1.4}.api-connection-copy li::before{content:"✓";position:absolute;left:0;top:-1px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;color:var(--green);background:#e7f4ec;font-size:8px;font-weight:900}.connection-status,.source-state{display:inline-flex;align-items:center;gap:7px;border-radius:999px;font-weight:850}.connection-status{padding:7px 10px;font-size:9px}.connection-status i,.source-state i{width:7px;height:7px;border-radius:50%;background:currentColor}.connection-status.disconnected,.source-state.idle{color:#6c786f;background:#eef2ef}.connection-status.success,.source-state.success{color:#17603e;background:#e4f7eb}.connection-status.checking,.source-state.running{color:#315d94;background:#eaf3ff}.connection-status.error,.source-state.error{color:var(--red);background:#fff0f0}.api-connect-form{min-width:0;padding:24px;display:grid;gap:16px;border:1px solid var(--line);border-radius:15px;background:#fafcfb}.api-field{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:750}.api-field>span:first-child{font-size:10px}.api-field input,.api-field select,.finance-workflow input,.finance-workflow select{width:100%;min-width:0;min-height:47px;padding:0 13px;border:1px solid var(--line);border-radius:10px;outline:0;color:var(--ink);background:#fff}.api-field input:focus,.api-field select:focus,.finance-workflow input:focus,.finance-workflow select:focus{border-color:#4a9973;box-shadow:0 0 0 3px #e7f6ed}.api-field input[readonly]{color:#68766f;background:#f0f4f1}.api-field small{color:var(--muted);font-size:9px;font-weight:500}.api-token-input{display:grid;grid-template-columns:minmax(0,1fr) auto}.api-token-input input{border-radius:10px 0 0 10px}.api-token-input button{min-width:118px;padding:0 12px;border:1px solid var(--line);border-left:0;border-radius:0 10px 10px 0;color:var(--green);background:#f4f8f5;cursor:pointer;font-size:9px;font-weight:800}.api-primary-action{width:100%;min-height:48px;border:0;border-radius:11px;color:#173429;background:var(--lime);cursor:pointer;font-weight:850}.api-primary-action:hover{background:#d0f255}.api-primary-action:focus-visible,.source-action:focus-visible,.api-connected-actions button:focus-visible{outline:3px solid #dceee4;outline-offset:2px}.api-primary-action:disabled,.source-action:disabled{opacity:.55;cursor:not-allowed}.api-connect-form .form-error{margin:0}.api-connection-card.connected{grid-template-columns:minmax(0,1fr) minmax(300px,.7fr)}.connection-summary{margin:23px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.connection-summary div{min-width:0;padding:12px;border-radius:10px;background:var(--soft)}.connection-summary dt{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.connection-summary dd{margin:7px 0 0;overflow:hidden;font-size:10px;font-weight:800;text-overflow:ellipsis}.api-connected-controls{min-width:0}.api-connected-actions{display:grid;gap:9px}.api-connected-actions button{min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:10px;color:var(--green);background:#fff;cursor:pointer;font-size:10px;font-weight:800}.api-connected-actions button:first-child{color:#173429;border-color:var(--lime);background:var(--lime)}.api-connected-actions button.quiet-danger{color:var(--red);border-color:#efd4d6;background:#fffafa}.api-token-update{margin-top:14px}.api-source-heading{align-items:flex-start}.api-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.api-source-card{min-width:0;min-height:280px;padding:21px;display:flex;flex-direction:column}.source-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.source-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;color:var(--green);background:#e8f6ed;font-size:9px;font-weight:900}.source-state{padding:6px 8px;font-size:8px;white-space:nowrap}.source-state i{width:6px;height:6px}.api-source-card h3{margin:20px 0 8px;font-size:15px}.api-source-card>p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.source-sync-time{margin:18px 0;display:grid;gap:5px}.source-sync-time span{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.source-sync-time strong{font-size:9px}.source-card-action{margin-top:auto;display:grid;gap:7px}.source-action{min-height:41px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);border-radius:9px;color:white;background:var(--green);cursor:pointer;font-size:9px;font-weight:850;text-align:center}.source-action.secondary{color:var(--green);background:#fff}.source-action:hover:not(:disabled){filter:brightness(.96)}.source-help,.source-error{min-height:13px;color:var(--muted);font-size:8px;line-height:1.35}.source-error{color:var(--red)}.finance-workflow{padding:28px}.finance-search-form{max-width:760px}.finance-search-form>button,.finance-regression button,.finance-report-row button{min-height:43px;padding:0 15px;border:0;border-radius:10px;color:#173429;background:var(--lime);cursor:pointer;font-size:10px;font-weight:850}.api-notice{margin-top:20px;padding:22px;display:flex;align-items:flex-start;gap:14px}.api-notice h3{margin:1px 0 8px;font-size:14px}.api-notice p+p{margin-top:5px}
.sku-identity{display:inline-flex;align-items:center;gap:9px}.sku-photo{width:38px;height:38px;object-fit:cover;border-radius:9px;background:#f1eef7;flex:0 0 auto}.sku-photo.large{width:112px;height:112px;float:right;margin:0 0 16px 20px}.sku-photo.placeholder{display:inline-grid;place-items:center;color:#766b85;font-size:.65rem;font-weight:800}
.sku-photo.large{width:min(280px,42%);height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:13px;background:#f7f8f7}.funnel-section{margin:18px 38px 8px;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fbfdfc}.insight-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px}.insight-section-head h3{margin:3px 0 0;font-size:16px}.insight-section-head>small{color:var(--muted);font-size:8px}.funnel-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.funnel-grid article{min-height:78px;padding:12px;display:flex;flex-direction:column;gap:6px;border-radius:10px;background:var(--soft)}.funnel-grid span,.funnel-grid small{color:var(--muted);font-size:8px;line-height:1.35}.funnel-grid strong{font-size:14px}.funnel-grid .metric-delta{margin-top:auto;font-weight:850}.stock-section{margin:10px 38px;padding:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:24px;border-radius:14px;color:white;background:#204634}.stock-section h3{margin:5px 0 8px;font-size:19px}.stock-section p:not(.eyebrow){margin:0;color:#b7cfc3;font-size:9px}.stock-section dl{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stock-section dl div{padding:11px;border-radius:9px;background:rgba(255,255,255,.08)}.stock-section dt{color:#b7cfc3;font-size:8px}.stock-section dd{margin:6px 0 0;font-size:10px;font-weight:850}.recommendation-list{display:grid;gap:9px}.recommendation-list article{padding:15px;border:1px solid #dfe9e3;border-radius:11px;background:#fff}.recommendation-list h4{margin:0 0 7px;font-size:12px}.recommendation-list p{margin:0 0 10px}.recommendation-list dl{margin:0;display:flex;flex-wrap:wrap;gap:7px}.recommendation-list dl div{padding:7px 9px;border-radius:8px;background:var(--soft)}.recommendation-list dt,.recommendation-list dd{display:inline;margin:0;font-size:8px}.recommendation-list dd{margin-left:5px;font-weight:850}.insight-empty{margin:0}.recommendation-badge{display:inline-block;max-width:190px;padding:6px 8px;border-radius:8px;color:#245c42;background:#e9f6ee;font-size:8px;font-weight:800;line-height:1.35}.attention-grid{margin-bottom:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.attention-grid button{min-height:90px;padding:17px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:14px;color:var(--ink);background:#fff;cursor:pointer;text-align:left}.attention-grid button:hover{border-color:#79a68e}.attention-grid strong{font-size:24px}.attention-grid span{max-width:130px;color:var(--muted);font-size:9px;font-weight:800}.sku-actions-section{margin:0 38px 38px;padding:20px;border:1px solid var(--line);border-radius:13px}.sku-actions-section form{display:grid;grid-template-columns:1fr 1.4fr auto;align-items:end;gap:10px}.sku-actions-section label{display:grid;gap:6px;color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.sku-actions-section input,.sku-actions-section select{min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#fff}.sku-actions-section form button{min-height:40px;padding:0 14px;border:0;border-radius:9px;color:#173429;background:var(--lime);font-size:9px;font-weight:850}.sku-actions-section .form-error{grid-column:1/-1;margin:0}.sku-action-history{margin-top:14px;display:grid;gap:7px}.sku-action-history article{padding:10px;border-radius:9px;background:var(--soft)}.sku-action-history article strong,.sku-action-history article span{font-size:9px}.sku-action-history article span{float:right;color:var(--muted)}.sku-action-history article p,.sku-action-history>p{margin:6px 0 0;color:var(--muted);font-size:9px}.sku-tools{grid-template-columns:minmax(210px,1fr) auto minmax(160px,.45fr) minmax(160px,.45fr) auto}
.api-period{display:flex;align-items:end;gap:16px;margin-bottom:16px}.api-period label{min-width:180px}.api-period p{margin:0;color:var(--muted)}@media(max-width:760px){.api-period{align-items:stretch;flex-direction:column}}
.project-cost-panel{padding:25px 28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.38fr);gap:30px;align-items:start}.project-cost-panel h3{margin:0 0 8px;font-size:16px}.project-cost-panel>div>p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.project-cost-current{margin-top:17px;padding:15px;border-radius:12px;background:var(--soft);display:grid;gap:6px}.project-cost-current>strong{font-size:11px}.project-cost-current>small{color:var(--muted);font-size:9px}.project-cost-current .technical-strip{margin-top:5px}.project-cost-actions{display:grid;gap:10px}.project-cost-actions .source-action{cursor:pointer}.project-cost-actions>a{color:var(--green);font-size:9px;font-weight:800;text-align:center}.project-cost-actions .form-error,.project-cost-progress{margin:0!important;min-height:14px;font-size:9px!important;text-align:center}.project-cost-progress{color:var(--muted)!important}@media(max-width:800px){.project-cost-panel{grid-template-columns:1fr}}
.finance-workflow,.finance-search-form,.finance-regression,.finance-report-list,.finance-preview{display:grid;gap:16px}.finance-search-form label,.finance-regression label{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:750}.finance-search-form fieldset{display:flex;gap:18px;border:0;padding:0}.finance-search-form fieldset label{display:flex;align-items:center;gap:7px}.finance-search-form fieldset input{width:auto;min-height:auto}.finance-report-row,.finance-preview-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--line);border-radius:16px}.finance-report-row div,.finance-preview-head div{display:grid;gap:4px}.finance-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.finance-preview-grid article{display:grid;gap:5px;padding:14px;border-radius:14px;background:var(--soft)}.finance-diagnostics{display:grid;gap:7px;margin:0;padding-left:22px}.finance-diagnostics li{color:#56665d;font-size:10px;line-height:1.5}.finance-regression{padding-top:18px;border-top:1px solid var(--line)}.finance-regression>p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}@media(max-width:1180px){.api-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.api-connection-card{gap:28px}}
.dashboard-combined-summary{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,var(--green) 0%,#0d3f2f 100%);
  border-color:transparent;
  box-shadow:0 14px 34px rgba(16,65,48,.16);
}

.dashboard-combined-summary::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-65px;
  top:-95px;
  border-radius:50%;
  background:rgba(199,255,72,.12);
  pointer-events:none;
}

.dashboard-combined-summary .dashboard-project-summary-head{
  position:relative;
  z-index:1;
}

.dashboard-combined-summary .eyebrow{
  color:#c7ff48;
}

.dashboard-combined-summary .dashboard-project-summary-head h3,
.dashboard-combined-summary .dashboard-project-summary-head>span{
  color:#fff;
}

.dashboard-combined-summary .dashboard-project-summary-head>span{
  font-weight:800;
}

.dashboard-combined-summary .dashboard-daily-metric{
  position:relative;
  z-index:1;
  background:rgba(255,255,255,.96);
  border-color:rgba(255,255,255,.28);
  box-shadow:0 6px 16px rgba(0,0,0,.07);
}

.dashboard-combined-summary .dashboard-daily-metric>strong{
  color:var(--ink);
}

.dashboard-combined-summary .dashboard-daily-actions{
  position:relative;
  z-index:1;
  border-top-color:rgba(255,255,255,.18);
}

.dashboard-combined-summary .dashboard-daily-actions>span{
  background:rgba(255,255,255,.10);
  color:rgba(255,255,255,.72);
}

.dashboard-combined-summary .dashboard-daily-actions strong{
  color:#fff;
}

@media(max-width:900px){.api-connection-card,.api-connection-card.connected{grid-template-columns:1fr}.connection-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.api-entry{align-items:stretch;flex-direction:column}.api-page-intro{margin-top:-20px;align-items:flex-start;flex-direction:column}.api-connection-card{padding:22px}.connection-summary{grid-template-columns:1fr}.finance-workflow{padding:20px}.finance-report-row,.finance-preview-head{align-items:stretch;flex-direction:column}.finance-search-form fieldset{flex-direction:column}}@media(max-width:560px){.api-source-grid{grid-template-columns:1fr}.api-connect-form{padding:18px}.api-token-input{grid-template-columns:1fr}.api-token-input input{border-radius:10px}.api-token-input button{min-height:38px;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px}.source-card-head{align-items:flex-start}.source-state{white-space:normal}}
.wb-connection-guide{margin-bottom:18px;padding:28px;display:grid;gap:14px}.wb-connection-guide h2{margin:0;font-size:24px}.wb-connection-guide>ol{margin:0;padding-left:22px;display:grid;gap:8px;color:#44534b;font-size:11px;line-height:1.5}.wb-connection-guide ul{margin:7px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;list-style:none}.wb-connection-guide ul li{padding:9px;border-radius:9px;color:#17603e;background:#e9f7ee;font-weight:800}.access-explanations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.access-explanations p{margin:0;padding:12px;display:grid;gap:4px;border-radius:10px;background:var(--soft);font-size:10px}.access-explanations span{color:var(--muted)}.api-security-note{color:#536159;font-size:9px;line-height:1.45}.wb-access-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}.wb-access-list li{padding:11px 12px 11px 36px!important;border:1px solid var(--line);border-radius:10px;background:#fff}.wb-access-list li::before{display:none!important}.wb-access-list li>span{position:absolute;left:12px;color:var(--green);font-size:15px;font-weight:900}.wb-access-list li.missing>span{color:var(--red)}.wb-access-list li div{display:grid;gap:3px}.wb-access-list li small{color:var(--muted);font-size:8px}.connection-last-check{margin-top:15px!important;font-size:9px!important}.api-next-step{margin-top:18px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.api-next-step h2{margin:0 0 7px;font-size:18px}.api-next-step p:not(.eyebrow){margin:0;max-width:690px;color:var(--muted);font-size:10px;line-height:1.5}.wb-period-data-panel{padding:26px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}.wb-period-data-copy h2{margin:0 0 8px}.wb-period-data-copy p:not(.eyebrow){margin:0;color:var(--muted);font-size:10px;line-height:1.5}.wb-period-data-panel>.api-primary-action{width:auto;min-width:250px;padding:0 22px}.wb-period-data-result{grid-column:1/-1}.wb-period-empty{margin:0;padding:14px;border-radius:10px;color:var(--muted);background:var(--soft);font-size:10px}.wb-period-progress,.wb-period-error{padding:16px;border-radius:12px;background:var(--soft)}.wb-period-progress strong,.wb-period-error strong{font-size:11px}.wb-period-progress p,.wb-period-error p{margin:6px 0 0;color:var(--muted);font-size:9px}.loading-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--green);animation:wb-pulse 1s infinite alternate}@keyframes wb-pulse{to{opacity:.3}}.wb-period-result-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.wb-period-result-head h3{margin:0;font-size:17px}.wb-period-source-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.wb-period-source{min-width:0;padding:14px;display:flex;gap:10px;border:1px solid var(--line);border-radius:11px;background:#fff}.wb-period-source>span{color:var(--green);font-size:15px;font-weight:900}.wb-period-source.no_data>span,.wb-period-source.no_access>span,.wb-period-source.failed>span{color:#9b5b16}.wb-period-source div{min-width:0;display:grid;gap:3px}.wb-period-source strong{font-size:10px}.wb-period-source small{color:var(--green);font-size:8px;font-weight:800}.wb-period-source.no_data small,.wb-period-source.no_access small,.wb-period-source.failed small{color:#9b5b16}.wb-period-source p{margin:3px 0 0;color:var(--muted);font-size:8px;line-height:1.4}.wb-manual-fallback{margin-top:7px;padding:0;border:0;color:var(--green);background:transparent;cursor:pointer;font-size:8px;font-weight:850;text-align:left}.wb-period-hint{margin:12px 0 0;color:var(--muted);font-size:9px}.wb-period-error{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff7f3}.wb-period-error p{flex:1 1 100%}.wb-period-error .primary-link,.wb-period-error .source-action{width:auto;min-height:36px}.upload-batch-panel{scroll-margin-top:18px}@media(max-width:900px){.wb-connection-guide ul,.access-explanations,.wb-period-source-list{grid-template-columns:repeat(2,minmax(0,1fr))}.wb-period-data-panel{grid-template-columns:1fr}.wb-period-data-panel>.api-primary-action{width:100%}.api-next-step{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.wb-connection-guide ul,.access-explanations,.wb-access-list,.wb-period-source-list{grid-template-columns:1fr}.wb-period-result-head{align-items:flex-start;flex-direction:column}}
@media(max-width:1100px){.funnel-grid{grid-template-columns:repeat(3,1fr)}.attention-grid{grid-template-columns:repeat(2,1fr)}.stock-section{grid-template-columns:1fr}.sku-actions-section form{grid-template-columns:1fr 1fr}.sku-actions-section form button{grid-column:1/-1}.sku-tools{grid-template-columns:1fr 1fr}.sku-filters{grid-column:1/-1}}
@media(max-width:700px){.sku-photo.large{width:100%;float:none;margin:0 0 18px}.funnel-section,.stock-section{margin-left:18px;margin-right:18px}.funnel-grid,.stock-section dl,.attention-grid{grid-template-columns:1fr}.recommendation-section,.sku-actions-section{margin-left:18px;margin-right:18px}.sku-actions-section form{grid-template-columns:1fr}}

/* Portfolio funnel aligns with the other full-width result blocks.
   Funnel inside the SKU dialog keeps its original inner margins. */
#page-content > .funnel-section {
  width: 100%;
  margin: 18px 0 8px;
  box-sizing: border-box;
}


/* Saved calculation result section hierarchy */
#page-content > .funnel-section > .insight-section-head {
  display: none;
}

#page-content > .funnel-section {
  margin-top: 0;
}

.result-section-heading {
  margin-bottom: 15px;
}


/* =========================================================
   Saved result SKU dialog
   ========================================================= */

#result-sku-dialog {
  width: min(1040px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  overflow: auto;
  scrollbar-gutter: stable;
}

#result-sku-detail {
  padding-bottom: 8px;
}

/* Header */

#result-sku-dialog .sku-detail-head {
  padding: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 230px;
  gap: 30px;
  align-items: start;
  border-bottom: 1px solid var(--line);
}

#result-sku-dialog .sku-detail-copy {
  min-width: 0;
  padding-top: 4px;
}

#result-sku-dialog .sku-detail-copy .eyebrow {
  margin-bottom: 9px;
}

#result-sku-dialog .sku-detail-copy h2 {
  margin: 0;
  font-size: 27px;
  line-height: 1.08;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
}

#result-sku-dialog .sku-detail-copy > p:not(.eyebrow) {
  max-width: 560px;
  margin: 10px 0 14px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

#result-sku-dialog .sku-detail-status {
  margin-bottom: 8px;
}

#result-sku-dialog .sku-detail-media {
  width: 100%;
  min-width: 0;
}

#result-sku-dialog .sku-photo.large {
  float: none;
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  margin: 0;
  aspect-ratio: 3 / 4;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #f7f8f7;
}

/* Funnel */

#result-sku-dialog .funnel-section {
  width: auto;
  margin: 18px 30px 0;
  padding: 18px;
}

#result-sku-dialog .funnel-section .insight-section-head {
  margin-bottom: 14px;
}

#result-sku-dialog .funnel-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

#result-sku-dialog .funnel-grid article {
  min-height: 82px;
  padding: 12px;
}

/* Stock forecast */

#result-sku-dialog .stock-section {
  margin: 10px 30px 0;
  padding: 18px;
  grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr);
  gap: 18px;
  align-items: center;
}

#result-sku-dialog .stock-section h3 {
  margin: 5px 0 7px;
  font-size: 18px;
  line-height: 1.15;
}

#result-sku-dialog .stock-section dl {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* Financial metrics */

#result-sku-dialog .sku-detail-grid {
  padding: 20px 30px 26px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}

#result-sku-dialog .sku-detail-grid article {
  min-width: 0;
  min-height: 88px;
  padding: 14px;
  background: #fff;
}

#result-sku-dialog .sku-detail-grid strong {
  overflow-wrap: anywhere;
}

/* Lower sections */

#result-sku-dialog .target-section {
  padding-left: 30px;
  padding-right: 30px;
}

#result-sku-dialog .recommendation-section {
  margin-left: 30px;
  margin-right: 30px;
}

#result-sku-dialog .sku-actions-section {
  margin-left: 30px;
  margin-right: 30px;
  margin-bottom: 30px;
}

/* Tablet */

@media (max-width: 820px) {
  #result-sku-dialog .sku-detail-head {
    grid-template-columns: minmax(0, 1fr) 190px;
    gap: 20px;
  }

  #result-sku-dialog .funnel-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #result-sku-dialog .stock-section {
    grid-template-columns: 1fr;
  }

  #result-sku-dialog .sku-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Mobile */

@media (max-width: 600px) {
  #result-sku-dialog {
    width: calc(100vw - 16px);
    max-height: calc(100vh - 16px);
  }

  #result-sku-dialog .sku-detail-head {
    padding: 22px 18px;
    grid-template-columns: 1fr;
  }

  #result-sku-dialog .sku-detail-media {
    max-width: 220px;
  }

  #result-sku-dialog .funnel-section,
  #result-sku-dialog .stock-section {
    margin-left: 18px;
    margin-right: 18px;
  }

  #result-sku-dialog .funnel-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #result-sku-dialog .stock-section dl {
    grid-template-columns: 1fr;
  }

  #result-sku-dialog .sku-detail-grid {
    padding-left: 18px;
    padding-right: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #result-sku-dialog .target-section,
  #result-sku-dialog .recommendation-section,
  #result-sku-dialog .sku-actions-section {
    margin-left: 18px;
    margin-right: 18px;
    padding-left: 0;
    padding-right: 0;
  }
}

/* Compact SKU product photo */
#result-sku-dialog .sku-detail-head {
  grid-template-columns: minmax(0, 1fr) 180px;
}

#result-sku-dialog .sku-detail-media {
  width: 180px;
  justify-self: end;
}

#result-sku-dialog .sku-photo.large {
  width: 180px;
  height: auto;
  aspect-ratio: 3 / 4;
  object-fit: contain;
}

@media (max-width: 820px) {
  #result-sku-dialog .sku-detail-head {
    grid-template-columns: minmax(0, 1fr) 160px;
  }

  #result-sku-dialog .sku-detail-media,
  #result-sku-dialog .sku-photo.large {
    width: 160px;
  }
}

@media (max-width: 600px) {
  #result-sku-dialog .sku-detail-media,
  #result-sku-dialog .sku-photo.large {
    width: 150px;
  }
}


/* =========================================================
   Attention products dialog
   ========================================================= */

.attention-dialog {
  width: min(1040px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  padding: 0;
  overflow: auto;
  border: 0;
  border-radius: 20px;
  color: var(--ink);
  background: #f7faf8;
  box-shadow: 0 30px 90px rgba(12,35,24,.28);
}

.attention-dialog::backdrop {
  background: rgba(15,34,25,.58);
}

.attention-dialog-shell {
  padding: 30px;
}

.attention-dialog .dialog-close {
  position: sticky;
  top: 14px;
  z-index: 5;
  float: right;
  width: 36px;
  height: 36px;
  margin: 14px;
  border: 0;
  border-radius: 50%;
  color: #385047;
  background: #edf3ef;
  cursor: pointer;
  font-size: 20px;
}

.attention-dialog-head {
  margin-bottom: 24px;
  padding: 4px 54px 24px 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  border-bottom: 1px solid var(--line);
}

.attention-dialog-head h2 {
  margin: 5px 0 10px;
  font-size: 27px;
  letter-spacing: -.035em;
}

.attention-dialog-head p:not(.eyebrow) {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.6;
}

.attention-dialog-head > strong {
  flex: 0 0 auto;
  padding: 8px 11px;
  border-radius: 9px;
  color: var(--green);
  background: #e8f6ed;
  font-size: 10px;
  white-space: nowrap;
}

.attention-product-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.attention-product-card {
  min-width: 0;
  padding: 12px;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 14px;
  color: var(--ink);
  background: #fff;
  cursor: pointer;
  text-align: left;
  transition: border-color .15s, transform .15s, box-shadow .15s;
}

.attention-product-card:hover {
  border-color: #79a68e;
  transform: translateY(-1px);
  box-shadow: 0 7px 20px rgba(21,48,35,.06);
}

.attention-product-photo {
  width: 72px;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 9px;
  background: #f2f5f3;
}

.attention-product-card .sku-photo {
  width: 100%;
  height: 100%;
  margin: 0;
  display: block;
  object-fit: cover;
  border-radius: 9px;
}

.attention-product-copy {
  min-width: 0;
}

.attention-product-copy strong,
.attention-product-copy span,
.attention-product-copy small {
  display: block;
}

.attention-product-copy strong {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.attention-product-copy span {
  margin-top: 6px;
  display: -webkit-box;
  overflow: hidden;
  color: #536159;
  font-size: 10px;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.attention-product-copy small {
  margin-top: 7px;
  color: var(--muted);
  font-size: 8px;
}

.attention-dialog-empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 35px;
  border-radius: 13px;
  color: var(--muted);
  background: #fff;
  text-align: center;
}

@media (max-width: 850px) {
  .attention-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .attention-dialog {
    width: calc(100vw - 16px);
    max-height: calc(100vh - 16px);
  }

  .attention-dialog-shell {
    padding: 22px 18px;
  }

  .attention-dialog-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .attention-product-grid {
    grid-template-columns: 1fr;
  }
}


/* Clickable SKU result table sorting */

.result-table th .result-sort-button {
  width: 100%;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  border: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  white-space: nowrap;
}

.result-table th:first-child .result-sort-button,
.result-table th:nth-child(2) .result-sort-button {
  justify-content: flex-start;
}

.result-sort-button:hover,
.result-sort-button.active {
  color: var(--green);
}

.result-sort-indicator {
  min-width: 9px;
  color: var(--green);
  font-size: 10px;
  font-weight: 900;
}

.result-table th:has(.result-sort-button) {
  cursor: pointer;
}


/* Result SKU toolbar: search + status filters + count */
#page-content > .sku-tools {
  grid-template-columns: minmax(280px, 1fr) auto auto;
}

#page-content > .sku-tools > strong {
  justify-self: end;
}

@media (max-width: 900px) {
  #page-content > .sku-tools {
    grid-template-columns: 1fr;
  }

  #page-content > .sku-tools .sku-filters {
    grid-column: auto;
  }

  #page-content > .sku-tools > strong {
    justify-self: start;
  }
}

/* More readable SKU result table */

.result-table td {
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 10px;
}

.result-table th {
  padding-top: 13px;
  padding-bottom: 13px;
  font-size: 8.5px;
}

.result-table .sku-photo {
  width: 54px;
  height: 54px;
  border-radius: 10px;
  object-fit: cover;
}

.result-table .sku-identity {
  gap: 12px;
}

.result-table th:first-child,
.result-table td:first-child {
  min-width: 220px;
}

.result-table th:nth-child(2),
.result-table td:nth-child(2) {
  min-width: 280px;
  max-width: 280px;
}

.result-table td:nth-child(2) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.result-table td:first-child strong {
  font-size: 10.5px;
}

@media (max-width: 800px) {
  .result-table .sku-photo {
    width: 46px;
    height: 46px;
  }

  .result-table td {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

/* SKU table photos: WB 3:4 proportion */
.result-table .sku-photo {
  width: 48px;
  height: 64px;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  border-radius: 9px;
}

@media (max-width: 800px) {
  .result-table .sku-photo {
    width: 42px;
    height: 56px;
  }
}

/* SKU action calendar */
.sku-actions-section .insight-section-head a{color:var(--green);font-size:9px;font-weight:850;text-decoration:none}.sku-actions-section form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sku-actions-section textarea{min-height:72px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit;resize:vertical}.sku-actions-section .sku-action-expected{grid-column:1/-1}.sku-actions-section .sku-action-check-date{align-self:center;margin:0;color:var(--muted);font-size:9px}.sku-actions-section form>button{justify-self:end;min-width:170px}.sku-action-latest{margin-top:16px;padding:15px;border-radius:11px;background:var(--soft)}.sku-action-latest>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.sku-action-latest>div>strong{font-size:11px}.sku-action-latest dl{display:flex;gap:22px;margin:13px 0}.sku-action-latest dl div,.action-card dl div{display:grid;gap:4px}.sku-action-latest dt,.action-card dt{color:var(--muted);font-size:8px}.sku-action-latest dd,.action-card dd{margin:0;font-size:10px;font-weight:850}.sku-action-latest p{display:grid;gap:4px;margin:9px 0 0;font-size:10px}.sku-action-latest p span,.action-card-expected span,.action-card-comment span{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.sku-action-empty{margin:15px 0 0;color:var(--muted);font-size:9px}.action-status{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;font-size:8px;font-weight:850;white-space:nowrap}.action-status.waiting{color:#775b12;background:#fff3ce}.action-status.ready_to_check{color:#8b2e24;background:#ffe1dc}.action-status.checked{color:#23633f;background:#dff3e7}

.action-calendar-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:26px}.action-calendar-head h2{margin:4px 0 8px;font-size:24px}.action-calendar-head p:not(.eyebrow){max-width:700px;margin:0;color:var(--muted);font-size:10px;line-height:1.55}.action-view-switch{display:flex;padding:4px;border-radius:11px;background:var(--soft)}.action-view-switch button{min-height:34px;padding:0 15px;border:0;border-radius:8px;color:var(--muted);background:transparent;font-size:9px;font-weight:850;cursor:pointer}.action-view-switch button.active{color:var(--ink);background:#fff;box-shadow:0 4px 14px rgba(27,54,43,.08)}.action-counters{margin:16px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.action-counters button{padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:#fff;cursor:pointer;text-align:left}.action-counters button.active{border-color:#4a8b68;background:#f1f8f4}.action-counters span{color:var(--muted);font-size:9px;font-weight:800}.action-counters strong{font-size:20px}.action-list{display:grid;gap:12px}.action-card{display:grid;grid-template-columns:112px minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff}.action-card-photo{display:block;min-height:149px;background:var(--soft)}.action-card-photo .sku-photo{width:100%;height:100%;aspect-ratio:3/4;border-radius:0;object-fit:cover}.action-card-photo .sku-photo.placeholder{display:flex;align-items:center;justify-content:center;color:#87a495;font-size:18px;font-weight:900}.action-card-body{padding:17px 19px}.action-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.action-card-title p{margin:0 0 5px;color:var(--green);font-size:8px;font-weight:850;text-transform:uppercase}.action-card-title h3{margin:0;font-size:15px}.action-card-title>div>span{display:block;margin-top:4px;color:var(--muted);font-size:9px}.action-card dl{margin:14px 0;display:flex;gap:28px}.action-card-expected,.action-card-comment{display:grid;gap:4px;margin:8px 0;font-size:10px;line-height:1.45}.action-card-footer{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.action-card-footer a{color:var(--green);font-size:9px;font-weight:850;text-decoration:none}.action-card-footer button{min-height:34px;padding:0 12px;border:0;border-radius:8px;color:#173429;background:var(--lime);font-size:8px;font-weight:850;cursor:pointer}.action-empty{padding:32px;text-align:center}.action-empty h2{margin:0 0 8px}.action-empty p{margin:0;color:var(--muted)}

.action-calendar-panel{padding:20px}.action-calendar-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:18px}.action-calendar-controls h2{min-width:210px;margin:0;text-align:center;text-transform:capitalize}.action-calendar-controls button{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.action-calendar-weekdays,.action-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.action-calendar-weekdays span{padding:8px;color:var(--muted);font-size:8px;font-weight:850;text-align:center;text-transform:uppercase}.action-calendar-day{min-height:125px;padding:8px;border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff}.action-calendar-day:nth-child(7n){border-right:1px solid var(--line)}.action-calendar-day:nth-last-child(-n+7){border-bottom:1px solid var(--line)}.action-calendar-day.outside{background:#f8faf9}.action-calendar-day.today>strong{display:inline-grid;width:24px;height:24px;place-items:center;border-radius:50%;color:#173429;background:var(--lime)}.action-calendar-day>strong{font-size:9px}.action-calendar-day>div{margin-top:7px;display:grid;gap:5px}.action-calendar-day a{padding:6px;border-radius:7px;color:var(--ink);background:#fff3ce;text-decoration:none}.action-calendar-day a.ready_to_check{background:#ffe1dc}.action-calendar-day a.checked{background:#dff3e7}.action-calendar-day a b,.action-calendar-day a span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-calendar-day a b{font-size:8px}.action-calendar-day a span,.action-calendar-day small{margin-top:2px;color:var(--muted);font-size:7px}

@media(max-width:900px){.action-counters{grid-template-columns:repeat(2,1fr)}.action-calendar-panel{overflow-x:auto}.action-calendar-weekdays,.action-calendar-grid{min-width:760px}}
@media(max-width:600px){.sku-actions-section form{grid-template-columns:1fr}.sku-actions-section .sku-action-expected{grid-column:auto}.sku-actions-section form>button{justify-self:stretch}.action-calendar-head{align-items:stretch;flex-direction:column}.action-view-switch button{flex:1}.action-counters{grid-template-columns:1fr 1fr}.action-counters button{align-items:flex-start;flex-direction:column}.action-card{grid-template-columns:86px minmax(0,1fr)}.action-card-photo{min-height:115px}.action-card-title{flex-direction:column}.action-card dl{gap:14px}.action-card-footer{align-items:flex-start;flex-direction:column}.action-card-footer button{width:100%}}

/* SKU action review workflow */
.action-card-photo{min-height:0;aspect-ratio:3/4;align-self:start}.action-card-photo .sku-photo{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.action-status.waiting_data{color:#6b526f;background:#f2e8f5}.action-status.requires_action{color:#173429;background:var(--lime)}
.sku-action-conflict-warning{grid-column:1/-1;padding:14px;border:1px solid #edb8aa;border-radius:10px;background:#fff3ef}.sku-action-conflict-warning[hidden]{display:none}.sku-action-conflict-warning strong{font-size:10px}.sku-action-conflict-warning p{margin:6px 0 12px;color:#74443b;font-size:9px;line-height:1.5}.sku-action-conflict-warning div{display:flex;justify-content:flex-end;gap:8px}.sku-action-conflict-warning button{min-height:32px;padding:0 11px;border:1px solid #d9a395;border-radius:8px;background:#fff;font-size:8px;font-weight:850;cursor:pointer}.sku-action-conflict-warning button:last-child{border-color:#8b2e24;color:#fff;background:#8b2e24}
.action-period-filters{display:flex;gap:7px;overflow-x:auto;margin:16px 0;padding:4px}.action-period-filters button{min-height:36px;padding:0 14px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:#fff;font-size:9px;font-weight:850;white-space:nowrap;cursor:pointer}.action-period-filters button.active{border-color:#4a8b68;color:var(--ink);background:#f1f8f4}.action-counters{grid-template-columns:repeat(5,minmax(0,1fr))}.work-center-section{margin:28px 0}.work-center-section>.section-heading{margin-bottom:12px}.work-center-section>.section-heading>strong{display:grid;min-width:36px;height:36px;place-items:center;border-radius:50%;background:var(--soft);font-size:13px}.work-item-card{border-style:dashed}.action-conflict-note{padding:9px 11px;border-radius:8px;color:#74443b;background:#fff3ef;font-size:9px;line-height:1.45}
.action-result{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.action-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.action-result-head>span{color:var(--muted);font-size:8px;font-weight:800}.evaluation{padding:6px 9px;border-radius:999px;font-size:8px}.evaluation.positive{color:#23633f;background:#dff3e7}.evaluation.partial,.evaluation.mixed{color:#775b12;background:#fff3ce}.evaluation.negative{color:#8b2e24;background:#ffe1dc}.action-result>p{margin:11px 0;font-size:10px;line-height:1.55}.action-result-table{overflow-x:auto}.action-result-table table{width:100%;border-collapse:collapse;font-size:9px}.action-result-table th,.action-result-table td{padding:8px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.action-result-table th:first-child,.action-result-table td:first-child{text-align:left}.action-result-table th{color:var(--muted);font-size:8px}.action-next{display:grid;gap:5px;margin-top:13px;padding:12px;border-radius:9px;background:#f1f8f4}.action-next span{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.action-next strong{font-size:10px}.action-next p{margin:0;font-size:9px;line-height:1.45}
@media(max-width:900px){.action-counters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.action-card dl{flex-wrap:wrap}}


/* =========================================================
   Action result dialog
   ========================================================= */

.action-card-photo {
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.action-link-button,
.action-result-open {
  border: 0;
  background: transparent;
  color: var(--green);
  cursor: pointer;
  font: inherit;
  font-weight: 800;
}

.action-card-result-summary {
  margin-top: 12px;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f7faf8;
}

.action-card-result-summary > strong {
  display: inline-block;
  margin-bottom: 7px;
}

.action-card-result-summary > p {
  margin: 0;
  color: #526159;
  font-size: 10px;
  line-height: 1.5;
}

.action-card-result-summary > div {
  margin-top: 9px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.action-card-result-summary > div span {
  padding: 5px 7px;
  border-radius: 7px;
  background: #fff;
  font-size: 9px;
}

.action-result-dialog {
  width: min(980px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  padding: 0;
  overflow: auto;
  border: 0;
  border-radius: 20px;
  color: var(--ink);
  background: #f7faf8;
  box-shadow: 0 30px 90px rgba(12,35,24,.28);
}

.action-result-dialog::backdrop {
  background: rgba(15,34,25,.58);
}

.action-result-dialog .dialog-close {
  position: sticky;
  top: 14px;
  z-index: 10;
  float: right;
  width: 36px;
  height: 36px;
  margin: 14px;
  border: 0;
  border-radius: 50%;
  background: #edf3ef;
  color: #385047;
  cursor: pointer;
  font-size: 20px;
}

.action-result-dialog-content {
  padding: 28px 30px 32px;
}

.action-result-dialog-head {
  padding-right: 48px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .8fr);
  gap: 28px;
  align-items: start;
}

.action-result-product {
  display: grid;
  grid-template-columns: 108px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
}

.action-result-product-photo {
  width: 108px;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 12px;
  background: #eef2ef;
}

.action-result-product-photo .sku-photo,
.action-result-product-photo .sku-photo.large {
  width: 100%;
  height: 100%;
  margin: 0;
  display: block;
  object-fit: cover;
  border-radius: 12px;
}

.action-result-product h2 {
  margin: 5px 0 6px;
  font-size: 24px;
}

.action-result-product p:not(.eyebrow) {
  margin: 0 0 6px;
  color: var(--muted);
  line-height: 1.45;
}

.action-result-product small {
  color: var(--muted);
}

.action-result-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.action-result-meta > div {
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #fff;
}

.action-result-meta span,
.action-result-expected > span,
.action-result-comment > span {
  display: block;
  margin-bottom: 5px;
  color: var(--muted);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.action-result-meta strong {
  font-size: 10px;
}

.action-result-expected {
  margin-top: 20px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.action-result-expected p,
.action-result-comment p {
  margin: 0;
  line-height: 1.55;
}

.action-result-verdict {
  margin-top: 14px;
  padding: 20px;
  border-radius: 14px;
  background: #edf5f0;
}

.action-result-verdict > span {
  color: var(--muted);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.action-result-verdict h3 {
  margin: 5px 0 8px;
  font-size: 21px;
}

.action-result-verdict p {
  max-width: 780px;
  margin: 0;
  line-height: 1.6;
}

.action-result-key-table {
  margin-top: 24px;
}

.action-result-key-table .insight-section-head {
  margin-bottom: 11px;
}

.action-result-table {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.action-result-table table {
  width: 100%;
  border-collapse: collapse;
}

.action-result-table th,
.action-result-table td {
  padding: 11px 13px;
  border-bottom: 1px solid var(--line);
  text-align: right;
  white-space: nowrap;
}

.action-result-table th:first-child,
.action-result-table td:first-child {
  text-align: left;
}

.action-result-table tbody tr:last-child td {
  border-bottom: 0;
}

.action-result-table th {
  color: var(--muted);
  font-size: 8px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.action-result-table td {
  font-size: 10px;
  font-weight: 700;
}

.action-result-all {
  margin-top: 13px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.action-result-all summary {
  padding: 12px 14px;
  color: var(--green);
  cursor: pointer;
  font-size: 10px;
  font-weight: 800;
}

.action-result-all .action-result-table {
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0 0 12px 12px;
}

.action-result-comment {
  margin-top: 14px;
  padding: 13px 15px;
  border-radius: 11px;
  background: #fff;
}

.action-result-dialog-actions {
  margin-top: 20px;
  padding-top: 18px;
  display: flex;
  justify-content: flex-end;
  gap: 9px;
  border-top: 1px solid var(--line);
}

.action-result-dialog-actions button {
  min-height: 38px;
  padding: 0 15px;
  border: 0;
  border-radius: 10px;
  background: var(--green);
  color: #fff;
  cursor: pointer;
  font-weight: 800;
}

.action-result-dialog-actions button.secondary {
  border: 1px solid var(--line);
  background: #fff;
  color: var(--green);
}

.action-calendar-day button {
  width: 100%;
  border: 0;
  text-align: left;
  cursor: pointer;
}

.action-result-no-data {
  padding: 18px;
  border-radius: 11px;
  color: var(--muted);
  background: #fff;
}

@media (max-width: 760px) {
  .action-result-dialog-content {
    padding: 22px 18px 26px;
  }

  .action-result-dialog-head {
    grid-template-columns: 1fr;
  }

  .action-result-product {
    grid-template-columns: 90px minmax(0, 1fr);
  }

  .action-result-product-photo {
    width: 90px;
  }

  .action-result-meta {
    grid-template-columns: 1fr 1fr;
  }

  .action-result-dialog-actions {
    align-items: stretch;
    flex-direction: column;
  }
}


/* =========================================================
   Compact waiting action state
   ========================================================= */

.action-waiting-summary {
  margin-top: 14px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #f7faf8;
}

.action-waiting-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.action-waiting-head span {
  display: block;
  margin-bottom: 4px;
  color: var(--muted);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.action-waiting-head strong {
  font-size: 12px;
}

.action-waiting-head small {
  padding: 6px 9px;
  border-radius: 8px;
  background: #fff4d5;
  color: #72560a;
  font-size: 9px;
  font-weight: 800;
  white-space: nowrap;
}

.action-baseline-metrics {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.action-baseline-metrics > div {
  min-width: 0;
  padding: 10px 11px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
}

.action-baseline-metrics span {
  display: block;
  margin-bottom: 5px;
  overflow: hidden;
  color: var(--muted);
  font-size: 8px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.action-baseline-metrics strong {
  font-size: 11px;
}

.action-baseline-empty {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 9px;
}

.action-secondary-link {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  color: var(--green);
  cursor: pointer;
  font-size: 9px;
  font-weight: 800;
}

.action-card-footer {
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
}

@media (max-width: 760px) {
  .action-baseline-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .action-waiting-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
}

/* =========================================================
   Action cards — clearer action and expected result
   ========================================================= */

.action-card {
  align-items: stretch;
}

.action-card-body {
  min-width: 0;
  width: 100%;
  padding: 20px 24px 20px 22px;
}

/* Что сделали */
.action-card-title {
  width: 100%;
  align-items: flex-start;
}

.action-card-title > div {
  min-width: 0;
  max-width: none;
  flex: 1 1 auto;
}

.action-card-title > div > p {
  margin: 0 0 5px;
  color: var(--green);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .045em;
  line-height: 1.3;
  text-transform: uppercase;
}

.action-card-title h3 {
  margin: 0;
  font-size: 18px;
  line-height: 1.25;
  letter-spacing: -.02em;
}

.action-card-title h3 + span {
  margin-top: 5px;
  display: block;
  max-width: 760px;
  color: #66746d;
  font-size: 11px;
  line-height: 1.45;
}

/* nmID и даты делаем вторичными */
.action-card-body > dl {
  margin-top: 13px;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.action-card-body > dl > div {
  min-width: 80px;
}

.action-card-body > dl dt {
  margin-bottom: 3px;
  color: var(--muted);
  font-size: 8px;
  font-weight: 700;
}

.action-card-body > dl dd {
  font-size: 10px;
  font-weight: 800;
}

/* Что ожидаем */
.action-card-expected {
  width: 100%;
  max-width: none;
  margin: 16px 0 0;
  padding: 14px 17px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f8fbf9;
  color: var(--ink);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.55;
}

.action-card-expected > span {
  display: block;
  margin-bottom: 6px;
  color: var(--green);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

/* Контрольный блок ближе к основному содержимому */
.action-waiting-summary {
  margin-top: 13px;
}

.action-waiting-head strong {
  font-size: 14px;
}

.action-baseline-metrics strong {
  font-size: 13px;
}

/* Фото чуть крупнее и сохраняем 3:4 */
.action-card > .action-card-photo,
.action-card > div.action-card-photo {
  width: 145px;
  min-width: 145px;
}

.action-card > .action-card-photo .sku-photo,
.action-card > div.action-card-photo .sku-photo {
  width: 145px;
  height: auto;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

/* Кнопка не должна визуально конкурировать с результатом */
.action-card-footer {
  margin-top: 14px;
}

@media (max-width: 760px) {
  .action-card-body {
    padding: 16px;
  }

  .action-card-title h3 {
    font-size: 16px;
  }

  .action-card-expected {
    font-size: 12px;
  }

  .action-card > .action-card-photo,
  .action-card > div.action-card-photo {
    width: 110px;
    min-width: 110px;
  }

  .action-card > .action-card-photo .sku-photo,
  .action-card > div.action-card-photo .sku-photo {
    width: 110px;
  }
}

/* =========================================================
   Fix action card layout after larger product photo
   ========================================================= */

.action-card {
  display: grid;
  grid-template-columns: 145px minmax(0, 1fr);
  align-items: start;
  overflow: hidden;
}

/* Фото занимает строго свою колонку */
.action-card > .action-card-photo,
.action-card > div.action-card-photo {
  grid-column: 1;
  width: 145px;
  min-width: 145px;
  max-width: 145px;
  align-self: start;
  margin: 0;
}

.action-card > .action-card-photo .sku-photo,
.action-card > div.action-card-photo .sku-photo {
  width: 145px;
  height: auto;
  aspect-ratio: 3 / 4;
  display: block;
  object-fit: cover;
}

/* Весь текст только во второй колонке */
.action-card > .action-card-body {
  grid-column: 2;
  min-width: 0;
  width: auto;
  margin: 0;
  padding: 20px 24px;
}

/* Длинные названия больше не заходят под фото */
.action-card-title,
.action-card-title > div,
.action-card-expected,
.action-waiting-summary {
  min-width: 0;
  max-width: 100%;
}

.action-card-title h3,
.action-card-title h3 + span {
  overflow-wrap: anywhere;
}

/* Мобильная версия */
@media (max-width: 760px) {
  .action-card {
    grid-template-columns: 110px minmax(0, 1fr);
  }

  .action-card > .action-card-photo,
  .action-card > div.action-card-photo {
    width: 110px;
    min-width: 110px;
    max-width: 110px;
  }

  .action-card > .action-card-photo .sku-photo,
  .action-card > div.action-card-photo .sku-photo {
    width: 110px;
  }

  .action-card > .action-card-body {
    padding: 16px;
  }
}

/* =========================================================
   Action cards — horizontal compact layout
   ========================================================= */

.action-card {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
}

/* Фото снова компактное 3:4 */
.action-card > .action-card-photo,
.action-card > div.action-card-photo {
  width: 120px;
  min-width: 120px;
  max-width: 120px;
  margin: 0;
  align-self: start;
}

.action-card > .action-card-photo .sku-photo,
.action-card > div.action-card-photo .sku-photo {
  width: 120px;
  height: 160px;
  aspect-ratio: 3 / 4;
  display: block;
  object-fit: cover;
  border-radius: 0;
}

/* Основная часть использует ширину, а не высоту */
.action-card > .action-card-body {
  position: relative;
  min-width: 0;
  width: auto;
  padding: 16px 20px;

  display: grid;
  grid-template-columns:
    minmax(250px, .8fr)
    minmax(330px, 1.15fr)
    minmax(460px, 1.55fr);
  grid-template-rows: auto auto auto;
  column-gap: 20px;
  row-gap: 8px;
}

/* Левая колонка: что сделали */
.action-card-title {
  grid-column: 1;
  grid-row: 1;
  display: block;
  min-width: 0;
  padding-right: 0;
}

.action-card-title > div > p {
  margin: 0 0 4px;
  color: var(--green);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.action-card-title h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.2;
}

.action-card-title h3 + span {
  margin-top: 4px;
  display: block;
  overflow: hidden;
  color: #66746d;
  font-size: 10px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Статус остаётся справа сверху */
.action-card-title > .action-status {
  position: absolute;
  top: 16px;
  right: 20px;
}

/* nmID и даты */
.action-card-body > dl {
  grid-column: 1;
  grid-row: 2;
  margin: 2px 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
}

.action-card-body > dl > div {
  min-width: 75px;
}

.action-card-body > dl dt {
  margin-bottom: 2px;
  font-size: 8px;
}

.action-card-body > dl dd {
  font-size: 10px;
  font-weight: 800;
}

/* Центр: ожидаемый результат */
.action-card-expected {
  grid-column: 2;
  grid-row: 1 / span 3;

  min-width: 0;
  margin: 0;
  padding: 14px 17px;

  display: flex;
  justify-content: center;
  flex-direction: column;

  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f8fbf9;

  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

.action-card-expected > span {
  margin-bottom: 8px;
  color: var(--green);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

/* Справа: когда проверяем + baseline */
.action-waiting-summary {
  grid-column: 3;
  grid-row: 1 / span 3;

  min-width: 0;
  margin: 0;
  padding: 12px 14px;

  display: flex;
  justify-content: center;
  flex-direction: column;
}

.action-waiting-head {
  gap: 10px;
}

.action-waiting-head strong {
  font-size: 13px;
}

.action-baseline-metrics {
  margin-top: 9px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}

.action-baseline-metrics > div {
  padding: 8px 9px;
}

.action-baseline-metrics span {
  font-size: 7.5px;
}

.action-baseline-metrics strong {
  font-size: 11px;
}

/* Кнопка слева снизу */
.action-card-footer {
  grid-column: 1;
  grid-row: 3;
  margin: 2px 0 0;
}

/* Комментарий / конфликт при наличии */
.action-card-comment,
.action-conflict-note {
  grid-column: 2;
}

/* На средних экранах даём больше места центру */
@media (max-width: 1250px) {
  .action-card > .action-card-body {
    grid-template-columns:
      minmax(220px, .8fr)
      minmax(280px, 1fr)
      minmax(380px, 1.4fr);
    column-gap: 14px;
  }

  .action-baseline-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Мобильная версия уже может складываться */
@media (max-width: 760px) {
  .action-card {
    grid-template-columns: 90px minmax(0, 1fr);
  }

  .action-card > .action-card-photo,
  .action-card > div.action-card-photo {
    width: 90px;
    min-width: 90px;
    max-width: 90px;
  }

  .action-card > .action-card-photo .sku-photo,
  .action-card > div.action-card-photo .sku-photo {
    width: 90px;
    height: 120px;
  }

  .action-card > .action-card-body {
    display: block;
    padding: 14px;
  }

  .action-card-expected,
  .action-waiting-summary {
    margin-top: 12px;
  }
}

/* =========================================================
   Action cards — a little more breathing room
   ========================================================= */

.action-list {
  gap: 16px;
}

.action-card {
  border-radius: 16px;
}

.action-card > .action-card-body {
  padding: 20px 24px;
  column-gap: 26px;
}

/* Левая колонка */
.action-card-title > div > p {
  margin-bottom: 6px;
}

.action-card-title h3 {
  margin-bottom: 5px;
}

.action-card-body > dl {
  margin-top: 12px;
  gap: 10px 26px;
}

.action-card-footer {
  margin-top: 10px;
}

/* Центр */
.action-card-expected {
  padding: 18px 20px;
}

.action-card-expected > span {
  margin-bottom: 10px;
}

/* Правая колонка */
.action-waiting-summary {
  padding: 16px 18px;
}

.action-waiting-head {
  margin-bottom: 4px;
}

.action-baseline-metrics {
  margin-top: 12px;
  gap: 8px;
}

.action-baseline-metrics > div {
  padding: 10px 11px;
}

/* Немного больше расстояния от фото */
.action-card > .action-card-body {
  border-left: 8px solid transparent;
}

@media (max-width: 1250px) {
  .action-card > .action-card-body {
    padding: 18px 20px;
    column-gap: 18px;
  }
}

/* =========================================================
   Work center — requires action cards
   ========================================================= */

.work-item-card {
  grid-template-columns: 118px minmax(0, 1fr);
  min-height: 158px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
  transition:
    transform .15s ease,
    box-shadow .15s ease,
    border-color .15s ease;
}

.work-item-card:hover {
  transform: translateY(-1px);
  border-color: #b9cec2;
  box-shadow: 0 7px 22px rgba(20, 48, 35, .05);
}

/* Фото компактное 3:4 */
.work-item-card > .action-card-photo {
  width: 118px;
  min-width: 118px;
  max-width: 118px;
  height: 158px;
  align-self: start;
  overflow: hidden;
  border-radius: 0;
}

.work-item-card > .action-card-photo .sku-photo {
  width: 118px;
  height: 158px;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

/* Основная область */
.work-item-card > .action-card-body {
  position: relative;
  min-width: 0;
  padding: 18px 185px 18px 22px;
  display: grid;
  grid-template-columns:
    minmax(270px, .8fr)
    minmax(390px, 1.35fr);
  grid-template-rows: auto auto 1fr;
  column-gap: 28px;
  row-gap: 8px;
  border-left: 0;
}

/* Товар */
.work-item-card .action-card-title {
  grid-column: 1;
  grid-row: 1;
  display: block;
}

.work-item-card .action-card-title > div > p {
  margin: 0 0 5px;
  color: var(--green);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.work-item-card .action-card-title h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.2;
  letter-spacing: -.025em;
}

.work-item-card .action-card-title h3 + span {
  max-width: 420px;
  margin-top: 5px;
  display: block;
  overflow: hidden;
  color: #718078;
  font-size: 10px;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Статус справа */
.work-item-card .action-status {
  position: absolute;
  top: 18px;
  right: 20px;
}

/* nmID + рекомендуемое действие */
.work-item-card .action-card-body > dl {
  grid-column: 1;
  grid-row: 2;
  margin: 8px 0 0;
  display: flex;
  gap: 30px;
}

.work-item-card .action-card-body > dl dt {
  margin-bottom: 3px;
  color: var(--muted);
  font-size: 7.5px;
}

.work-item-card .action-card-body > dl dd {
  font-size: 10px;
  font-weight: 800;
}

/* Почему сейчас — занимает нормальную центральную область */
.work-item-card .action-card-expected {
  grid-column: 2;
  grid-row: 1 / span 3;
  min-width: 0;
  margin: 0;
  padding: 16px 19px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f7faf8;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.55;
}

.work-item-card .action-card-expected > span {
  margin-bottom: 8px;
  color: var(--green);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* Кнопка */
.work-item-card .action-card-footer {
  grid-column: 1;
  grid-row: 3;
  align-self: end;
  margin: 4px 0 0;
}

.work-item-card .action-link-button {
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid #b7d0c0;
  border-radius: 9px;
  background: #fff;
  color: var(--green);
  font-size: 9px;
  font-weight: 850;
}

.work-item-card .action-link-button:hover {
  background: #eff7f2;
}

/* Убираем лишнюю высоту между карточками */
.work-center-section .action-list {
  gap: 10px;
}

@media (max-width: 1100px) {
  .work-item-card > .action-card-body {
    padding-right: 22px;
    grid-template-columns: minmax(230px, .8fr) minmax(300px, 1.2fr);
  }

  .work-item-card .action-status {
    position: static;
    margin-top: 8px;
    display: inline-flex;
  }
}

@media (max-width: 760px) {
  .work-item-card {
    grid-template-columns: 90px minmax(0, 1fr);
  }

  .work-item-card > .action-card-photo,
  .work-item-card > .action-card-photo .sku-photo {
    width: 90px;
    min-width: 90px;
    height: 120px;
  }

  .work-item-card > .action-card-body {
    display: block;
    padding: 14px;
  }

  .work-item-card .action-card-expected {
    margin-top: 12px;
  }

  .work-item-card .action-card-footer {
    margin-top: 12px;
  }
}

/* =========================================================
   Cabinet navigation hierarchy
   ========================================================= */

/* Верхний уровень кабинета */
.cabinet aside > nav:not(.context-nav)::before {
  content: "ОБЩЕЕ";
  display: block;
  padding: 0 14px 9px;
  color: #789488;
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .12em;
}

/* Новый проект — именно действие */
.cabinet aside nav > a[href="/projects/new"] {
  margin-top: 2px;
  color: var(--lime);
}

.cabinet aside nav > a[href="/projects/new"]::before {
  content: "+";
  margin-right: 6px;
  font-size: 13px;
  line-height: 1;
}

/* Контекст выбранного проекта */
.context-nav {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.11);
}

.context-project-heading {
  margin: 0 0 20px;
  padding: 0 14px;
}

.context-project-heading > span {
  display: block;
  color: #789488;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

/* Группы */
.context-nav-group {
  margin: 0 0 20px;
}

.context-nav-label {
  display: block;
  padding: 0 14px 7px;
  color: #789488;
  font-size: 7.5px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.context-nav-links {
  display: grid;
  gap: 4px;
}

/* Ссылки внутри проекта */
.cabinet .context-nav .context-nav-links > a {
  position: relative;
  padding: 10px 14px;
  border-radius: 10px;
  color: #a9bbb2;
  font-size: 11px;
  font-weight: 720;
  line-height: 1.25;
}

.cabinet .context-nav .context-nav-links > a:hover {
  color: #fff;
  background: rgba(255,255,255,.05);
}

/* В один момент времени только один active */
.cabinet .context-nav .context-nav-links > a.active {
  color: #fff;
  background: rgba(255,255,255,.09);
}

.cabinet .context-nav .context-nav-links > a.active::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 50%;
  width: 3px;
  height: 18px;
  border-radius: 999px;
  background: var(--lime);
  transform: translateY(-50%);
}

/* Убираем старое оформление заголовка context-nav */
.context-nav > span {
  display: none;
}

@media (max-width:800px) {
  .context-nav {
    display: none !important;
  }
}

/* =========================================================
   Collapsible project navigation
   ========================================================= */

.context-nav-group {
  margin: 0 0 7px;
}

/* Убираем стандартный треугольник details */
.context-nav-group > summary {
  list-style: none;
}

.context-nav-group > summary::-webkit-details-marker {
  display: none;
}

/* Заголовок блока */
.context-nav-label {
  min-height: 34px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;

  border-radius: 9px;
  color: #789488;
  cursor: pointer;

  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;

  user-select: none;
}

.context-nav-label:hover {
  color: #b8cbc1;
  background: rgba(255,255,255,.035);
}

/* Стрелка */
.context-nav-label i {
  position: relative;
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(-45deg);
  transition: transform .16s ease;
}

.context-nav-group[open] > .context-nav-label i {
  transform: rotate(45deg) translate(-1px, -1px);
}

/* Раскрытые ссылки */
.context-nav-group .context-nav-links {
  padding: 3px 0 7px;
  display: grid;
  gap: 3px;
}

/* Чуть сильнее выделяем группу с активной страницей */
.context-nav-group:has(a.active) > .context-nav-label {
  color: #b8cbc1;
}

/* Активный пункт */
.cabinet .context-nav .context-nav-links > a.active {
  color: #fff;
  background: rgba(255,255,255,.09);
}

/* Анимация наведения */
.cabinet .context-nav .context-nav-links > a {
  transition:
    color .14s ease,
    background .14s ease;
}

/* =========================================================
   Saved result: separate Overview / SKU screens
   ========================================================= */

/* На экране Результат таблицу SKU не дублируем */
#page-content.result-overview-only > #sku-analysis,
#page-content.result-overview-only > .sku-tools,
#page-content.result-overview-only > .result-table-panel {
  display: none !important;
}

/* На отдельном экране SKU оставляем только SKU-интерфейс */

#page-content.result-sku-only > #sku-analysis {
  margin-top: 0;
  padding-top: 0;
}

/* Чуть плотнее начало отдельной SKU-страницы */
#page-content.result-sku-only > .sku-tools {
  margin-top: 14px;
}

/* =========================================================
   FIX: separate Result / SKU views
   ========================================================= */

/* Результат: SKU-таблица скрыта, потому что для неё есть отдельный пункт меню */
#page-content.result-overview-only > #sku-analysis,
#page-content.result-overview-only > .sku-tools,
#page-content.result-overview-only > .result-table-panel {
  display: none !important;
}

/* SKU: сначала скрываем остальные верхнеуровневые блоки */
#page-content.result-sku-only > * {
  display: none !important;
}

/* Затем явно возвращаем SKU-интерфейс */
#page-content.result-sku-only > #sku-analysis {
  display: flex !important;
  margin-top: 0;
}

#page-content.result-sku-only > .sku-tools {
  display: grid !important;
  margin-top: 14px;
}

#page-content.result-sku-only > .result-table-panel {
  display: block !important;
}

/* Диалог карточки SKU должен существовать и на отдельной странице */
#page-content.result-sku-only > #result-sku-dialog {
  display: block;
}

/* dialog нельзя постоянно показывать как обычный block */
#page-content.result-sku-only > #result-sku-dialog:not([open]) {
  display: none !important;
}

#page-content.result-sku-only > #result-sku-dialog[open] {
  display: block !important;
}

/* =========================================================
   SKU separate page — final visibility fix
   ========================================================= */

#page-content.result-sku-only > * {
  display: none !important;
}

#page-content.result-sku-only > #sku-analysis {
  display: flex !important;
}

#page-content.result-sku-only > .sku-tools {
  display: grid !important;
}

#page-content.result-sku-only > .result-table-panel {
  display: block !important;
}

/* Внутренности таблицы никогда не скрываем */
#page-content.result-sku-only > .result-table-panel .result-table-scroll {
  display: block !important;
}

#page-content.result-sku-only > .result-table-panel table {
  display: table !important;
}

#page-content.result-sku-only > .result-table-panel thead {
  display: table-header-group !important;
}

#page-content.result-sku-only > .result-table-panel tbody {
  display: table-row-group !important;
}

#page-content.result-sku-only > .result-table-panel tr {
  display: table-row !important;
}

#page-content.result-sku-only > .result-table-panel th,
#page-content.result-sku-only > .result-table-panel td {
  display: table-cell !important;
}

/* Диалог SKU */
#page-content.result-sku-only > #result-sku-dialog[open] {
  display: block !important;
}

#page-content.result-sku-only > #result-sku-dialog:not([open]) {
  display: none !important;
}

/* =========================================================
   Current project name in sidebar
   ========================================================= */

.context-project-heading {
  margin-bottom: 22px;
}

.context-project-heading > span {
  display: block;
  margin-bottom: 8px;
}

.context-project-heading > strong {
  display: block;
  overflow: hidden;
  color: #f1f7f4;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -.015em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* DAY and WEEK share the same report components; these rules only add context. */
.report-period-switch {
  display: inline-flex;
  gap: 4px;
  margin-top: 14px;
  padding: 4px;
  border-radius: 12px;
  background: #edf3f0;
}

.report-period-switch a {
  padding: 7px 14px;
  border-radius: 9px;
  color: #52615b;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.report-period-switch a.active {
  color: #fff;
  background: #1a6b4c;
}

.report-financial-status {
  display: block;
  margin-top: 12px;
  color: #8a6417;
  font-size: 11px;
  letter-spacing: .08em;
}

.result-metric.unavailable strong {
  color: #7d8984;
  cursor: help;
}

.daily-calendar-context,
.daily-week-context,
.daily-settings-panel,
.daily-summary {
  display: grid;
  gap: 20px;
  margin-top: 20px;
}

.daily-calendar-context {
  grid-template-columns: minmax(180px, .45fr) minmax(280px, 1fr);
  align-items: center;
}

.daily-week-context {
  grid-template-columns: minmax(180px, .45fr) minmax(280px, 1fr);
  align-items: center;
}

.daily-calendar-context a,
.daily-summary-projects a {
  color: #1a6b4c;
  font-weight: 750;
  text-decoration: none;
}

.daily-settings-panel {
  grid-template-columns: minmax(280px, .9fr) minmax(260px, 1fr);
}

.daily-settings-panel form,
.daily-settings-panel > div,
.daily-summary-projects {
  display: grid;
  gap: 12px;
}

.daily-summary-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 12px;
}

.daily-summary-projects a {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-top: 12px;
  border-top: 1px solid #e1e9e5;
}

.daily-alert-action-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

@media (max-width: 780px) {
  .daily-calendar-context,
  .daily-week-context,
  .daily-settings-panel {
    grid-template-columns: 1fr;
  }
}
/* DAILY SETTINGS REDESIGN */

.daily-settings-panel {
  grid-template-columns: minmax(360px, 1.1fr) minmax(300px, .9fr);
  align-items: stretch;
  gap: 28px;
}

.daily-settings-form {
  display: grid;
  align-content: start;
  gap: 18px;
}

.daily-settings-copy {
  display: grid;
  justify-items: start;
  gap: 8px;
}

.daily-settings-copy h3,
.daily-status-head h3 {
  margin: 0;
  color: #17251f;
  font-size: 18px;
  line-height: 1.25;
}

.daily-settings-copy p,
.daily-settings-note p {
  margin: 0;
  color: #68766f;
  font-size: 13px;
  line-height: 1.55;
}

.daily-toggle-row {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 64px;
  padding: 13px 15px;
  border: 1px solid #dfe8e3;
  border-radius: 14px;
  background: #f8fbf9;
  cursor: pointer;
  transition:
    border-color .16s ease,
    background .16s ease,
    box-shadow .16s ease;
}

.daily-toggle-row:hover {
  border-color: #b9cec3;
  background: #f5faf7;
}

.daily-toggle-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.daily-toggle-visual {
  position: relative;
  flex: 0 0 44px;
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: #c7d3cd;
  transition: background .18s ease;
}

.daily-toggle-visual::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(24, 45, 35, .22);
  transition: transform .18s ease;
}

.daily-toggle-input:checked + .daily-toggle-visual {
  background: #1a6b4c;
}

.daily-toggle-input:checked + .daily-toggle-visual::after {
  transform: translateX(20px);
}

.daily-toggle-input:focus-visible + .daily-toggle-visual {
  box-shadow: 0 0 0 3px rgba(26, 107, 76, .18);
}

.daily-toggle-copy {
  display: grid;
  gap: 3px;
}

.daily-toggle-copy strong {
  color: #23332c;
  font-size: 14px;
}

.daily-toggle-copy small {
  color: #748078;
  font-size: 12px;
  line-height: 1.4;
}

.daily-settings-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.daily-field {
  display: grid;
  gap: 7px;
}

.daily-field > span {
  color: #53615a;
  font-size: 12px;
  font-weight: 750;
}

.daily-field input,
.daily-field select {
  width: 100%;
  min-height: 43px;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid #d8e3dd;
  border-radius: 10px;
  outline: none;
  background: #fff;
  color: #1f2e27;
  font: inherit;
  transition:
    border-color .16s ease,
    box-shadow .16s ease;
}

.daily-field select {
  cursor: pointer;
}

.daily-field input:focus,
.daily-field select:focus {
  border-color: #1a6b4c;
  box-shadow: 0 0 0 3px rgba(26, 107, 76, .10);
}

.daily-settings-actions {
  display: flex;
  justify-content: flex-start;
  padding-top: 2px;
}

.daily-settings-save {
  min-height: 42px;
  padding: 0 20px;
  border: 0;
  border-radius: 10px;
  background: #1a6b4c;
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  transition:
    background .16s ease,
    transform .16s ease,
    opacity .16s ease;
}

.daily-settings-save:hover {
  background: #155d42;
}

.daily-settings-save:active {
  transform: translateY(1px);
}

.daily-settings-save:disabled {
  opacity: .55;
  cursor: default;
}

.daily-settings-status {
  display: grid;
  align-content: start;
  gap: 0;
  overflow: hidden;
  border: 1px solid #e0e8e4;
  border-radius: 16px;
  background: #f8faf9;
}

.daily-status-head {
  display: grid;
  gap: 5px;
  padding: 18px 20px 16px;
}

.daily-status-head .eyebrow {
  margin: 0;
}

.daily-status-row {
  display: grid;
  gap: 5px;
  padding: 16px 20px;
  border-top: 1px solid #e3eae6;
}

.daily-status-row span {
  color: #728078;
  font-size: 12px;
  font-weight: 700;
}

.daily-status-row strong {
  color: #1f2e27;
  font-size: 15px;
}

.daily-settings-note {
  display: grid;
  gap: 6px;
  margin: 14px;
  padding: 14px 15px;
  border-radius: 12px;
  background: #eef5f1;
}

.daily-settings-note strong {
  color: #1a6b4c;
  font-size: 12px;
  font-weight: 800;
}

@media (max-width: 900px) {
  .daily-settings-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .daily-settings-fields {
    grid-template-columns: 1fr;
  }

  .daily-settings-save {
    width: 100%;
  }
}

/* Daily settings: align card spacing with the rest of the cabinet */
.daily-settings-panel {
  padding: 24px;
  box-sizing: border-box;
}


/* Daily settings: equal field height */
.daily-field input,
.daily-field select {
  height: 58px;
  min-height: 58px;
}


/* DAILY SKU ACTION CARD */

#result-sku-dialog .sku-action-card {
  margin: 0 30px 30px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #f8fbf9;
}

#result-sku-dialog .sku-action-card > div:first-child {
  display: grid;
  gap: 6px;
}

#result-sku-dialog .sku-action-card .eyebrow {
  margin: 0;
}

#result-sku-dialog .sku-action-card h3 {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.3;
}

#result-sku-dialog .sku-action-card > div:first-child > p:not(.eyebrow) {
  margin: 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.55;
}

#result-sku-dialog .daily-alert-action-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

#result-sku-dialog .daily-alert-action-list button {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid var(--lime);
  border-radius: 9px;
  color: #173429;
  background: var(--lime);
  cursor: pointer;
  font: inherit;
  font-size: 9px;
  font-weight: 850;
  transition:
    filter .15s ease,
    transform .15s ease;
}

#result-sku-dialog .daily-alert-action-list button:hover:not(:disabled) {
  filter: brightness(.96);
}

#result-sku-dialog .daily-alert-action-list button:active:not(:disabled) {
  transform: translateY(1px);
}

#result-sku-dialog .daily-alert-action-list button:disabled {
  border-color: #cfe6d8;
  color: var(--green);
  background: #e4f7eb;
  cursor: default;
}

#result-sku-dialog .sku-action-card .form-error {
  margin: 10px 0 0;
  font-size: 9px;
}

#result-sku-dialog .sku-action-card > p:only-child {
  margin: 0;
  padding: 8px 0;
  color: var(--muted);
  font-size: 10px;
}

@media (max-width: 600px) {
  #result-sku-dialog .sku-action-card {
    margin-left: 18px;
    margin-right: 18px;
  }

  #result-sku-dialog .daily-alert-action-list {
    display: grid;
  }

  #result-sku-dialog .daily-alert-action-list button {
    width: 100%;
  }
}

.auto-report-panel form {
  display: grid;
  gap: 10px;
}

.auto-report-row {
  display: grid;
  grid-template-columns: 1fr 140px;
  gap: 14px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid #dfe8e3;
  border-radius: 12px;
  background: #f8fbf9;
}

.auto-report-switch {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
}

.auto-report-switch strong {
  font-size: 14px;
  color: #23332c;
}

.auto-report-time,
.auto-report-footer select {
  width: 100%;
  min-height: 42px;
  box-sizing: border-box;
  padding: 9px 11px;
  border: 1px solid #d8e3dd;
  border-radius: 10px;
  background: #fff;
  color: #1f2e27;
  font: inherit;
}

.auto-report-footer {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 1fr auto;
  gap: 14px;
  align-items: end;
  padding-top: 4px;
}

.auto-report-footer > label:first-child {
  display: grid;
  gap: 7px;
}

.auto-report-footer > label:first-child > span {
  color: #53615a;
  font-size: 12px;
  font-weight: 750;
}

@media (max-width: 760px) {
  .auto-report-row,
  .auto-report-footer {
    grid-template-columns: 1fr;
  }
}

.auto-report-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.auto-report-copy strong {
  font-size: 14px;
  color: #23332c;
}

.auto-report-copy small {
  color: #748078;
  font-size: 12px;
  line-height: 1.35;
}

.auto-report-row {
  grid-template-columns: minmax(0, 1fr) 110px;
  padding: 11px 13px;
}

.auto-report-switch {
  min-width: 0;
}

.auto-report-time {
  text-align: center;
}

.auto-report-footer {
  grid-template-columns: minmax(220px, 320px) minmax(240px, 1fr) auto;
  align-items: center;
}

.auto-report-footer .check {
  margin: 0;
}

.auto-report-footer button {
  white-space: nowrap;
}

@media (max-width: 760px) {
  .auto-report-row,
  .auto-report-footer {
    grid-template-columns: 1fr;
  }

  .auto-report-time {
    text-align: left;
  }
}

.auto-report-footer {
  grid-template-columns: 300px minmax(320px, 1fr) 190px;
  align-items: end;
}

.auto-report-footer .check {
  min-height: 42px;
  display: flex;
  align-items: center;
  margin: 0;
}

.auto-report-footer .daily-settings-save {
  min-height: 42px;
  width: 190px;
}

.auto-report-panel,
.auto-report-panel * {
  box-sizing: border-box;
}

.auto-report-footer {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(210px, 280px) minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
}

.auto-summary-switch {
  min-width: 0;
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 8px 12px;
  border: 1px solid #dfe8e3;
  border-radius: 10px;
  background: #f8fbf9;
  cursor: pointer;
}

.auto-report-footer .daily-settings-save {
  width: auto;
  min-width: 165px;
  min-height: 42px;
  margin: 0;
  white-space: nowrap;
}

@media (max-width: 1050px) {
  .auto-report-footer {
    grid-template-columns: 1fr 1fr;
  }

  .auto-report-footer .daily-settings-save {
    grid-column: 2;
    justify-self: end;
  }
}

@media (max-width: 760px) {
  .auto-report-footer {
    grid-template-columns: 1fr;
  }

  .auto-report-footer .daily-settings-save {
    grid-column: auto;
    width: 100%;
  }
}

.auto-report-panel {
  padding: 22px;
}

.auto-report-panel form {
  gap: 14px;
}

.auto-report-row {
  padding: 15px 16px;
  min-height: 68px;
}

.auto-report-footer {
  margin-top: 6px;
  padding-top: 16px;
  border-top: 1px solid #e3ebe7;
  gap: 16px;
}

.auto-summary-switch {
  min-height: 54px;
  padding: 10px 14px;
}

.auto-report-copy {
  gap: 5px;
}

.auto-report-copy small {
  line-height: 1.45;
}

.auto-report-time {
  min-height: 44px;
}


.auto-report-footer {
  align-items: center;
}

.auto-report-footer > label:first-child {
  min-height: 54px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 0;
}

.auto-report-footer > label:first-child > span {
  line-height: 1;
}

.auto-report-footer > label:first-child select {
  width: 100%;
  min-height: 38px;
  height: 38px;
  padding: 6px 10px;
  border-radius: 9px;
}


.history-tree {
  display: grid;
  gap: 14px;
}

.history-month,
.history-category {
  border: 1px solid #dfe8e3;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
}

.history-month > summary,
.history-category > summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.history-month > summary::-webkit-details-marker,
.history-category > summary::-webkit-details-marker {
  display: none;
}

.history-month > summary {
  padding: 17px 18px;
  background: #f7faf8;
  font-size: 16px;
}

.history-category > summary {
  padding: 13px 15px;
  font-size: 14px;
}

.history-month > summary span,
.history-category > summary span {
  min-width: 28px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #edf3ef;
  text-align: center;
  font-size: 12px;
  color: #59675f;
}

.history-month-content {
  display: grid;
  gap: 10px;
  padding: 12px;
  border-top: 1px solid #e6ede9;
}

.history-category-list {
  display: grid;
  border-top: 1px solid #edf1ef;
}

.history-category-list .history-row {
  border: 0;
  border-bottom: 1px solid #edf1ef;
  border-radius: 0;
}

.history-category-list .history-row:last-child {
  border-bottom: 0;
}

.history-month > summary,
.history-category > summary {
  position: relative;
  padding-left: 42px;
}

.history-month > summary::before,
.history-category > summary::before {
  content: "›";
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  font-size: 24px;
  line-height: 1;
  color: #64736b;
  transition: transform .16s ease;
}

.history-month[open] > summary::before,
.history-category[open] > summary::before {
  transform: translateY(-50%) rotate(90deg);
}

.history-month > summary {
  background: #f3f8f5;
  color: #1f342a;
}

.history-month[open] > summary {
  background: #edf6f1;
}

.history-category {
  margin-left: 8px;
}

.history-category > summary {
  background: #fafcfb;
  color: #34483e;
}

.history-category[open] > summary {
  background: #f6faf7;
}

.history-category-list {
  padding-left: 10px;
}

.history-category-list .history-row {
  padding-left: 16px;
}

.history-month > summary:hover,
.history-category > summary:hover {
  background: #edf5f0;
}


/* HISTORY ACTION BUTTONS */
.calculation-history-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:16px 18px;
}
.history-meta{min-width:0;display:grid;gap:4px}
.history-meta strong{font-size:13px;font-weight:800;color:var(--ink)}
.history-meta span{font-size:9px;color:var(--muted)}
.history-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
}
.history-action-btn{
  min-height:34px;
  padding:0 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:9px;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
}
.history-action-btn.primary{
  background:var(--green);
  border-color:var(--green);
  color:#fff;
}
.history-action-btn.danger{
  color:#a23c3c;
  border-color:#ead1d1;
  background:#fff8f8;
}
@media(max-width:800px){
  .calculation-history-row{grid-template-columns:1fr}
  .history-actions{justify-content:flex-start}
}


/* DAILY CALENDAR */
.daily-calendar-context{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  margin-top:20px;
  padding:22px 24px;
}

.daily-calendar-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}

.daily-calendar-head h3{
  margin:5px 0 0;
  font-size:18px;
  letter-spacing:-.02em;
}

.daily-calendar-open{
  color:var(--green);
  font-size:10px;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}

.daily-calendar-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.daily-calendar-metrics > div{
  min-width:0;
  padding:15px 16px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fafcfb;
  display:grid;
  gap:6px;
}

.daily-calendar-metrics span{
  color:var(--muted);
  font-size:9px;
  font-weight:700;
  line-height:1.3;
}

.daily-calendar-metrics strong{
  color:var(--ink);
  font-size:22px;
  line-height:1;
  letter-spacing:-.04em;
}

.daily-calendar-metrics > div:first-child{
  border-left:3px solid var(--green);
}

@media(max-width:800px){
  .daily-calendar-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .daily-calendar-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

.daily-calendar-head h3{
  font-size:20px;
  font-weight:800;
}

.daily-calendar-metrics strong{
  font-size:26px;
  font-weight:800;
}

.daily-calendar-open{
  min-height:34px;
  padding:0 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--green);
  border-radius:9px;
  background:#fff;
  color:var(--green);
  font-size:9px;
  font-weight:800;
  text-decoration:none;
}

.daily-calendar-open:hover{
  background:#f4f9f6;
}

/* COMPACT ACTION CALENDAR */
.action-calendar-head{
  padding:18px 20px;
  gap:16px;
}
.action-calendar-head h2{
  margin:3px 0 5px;
  font-size:20px;
}
.action-calendar-head p:not(.eyebrow){
  font-size:9px;
  line-height:1.4;
}
.action-view-switch button{
  min-height:30px;
  padding:0 12px;
}

.action-counters{
  margin:10px 0 12px;
  gap:8px;
}
.action-counters button{
  padding:10px 12px;
  border-radius:10px;
}
.action-counters strong{
  font-size:18px;
}

.action-list{
  gap:8px;
}
.action-card{
  grid-template-columns:88px minmax(0,1fr);
  border-radius:12px;
}
.action-card-photo{
  min-height:112px;
}
.action-card-body{
  padding:12px 14px;
}
.action-card-title h3{
  font-size:13px;
}
.action-card dl{
  margin:8px 0;
  gap:20px;
}
.action-card-expected,
.action-card-comment{
  margin:5px 0;
  font-size:9px;
  line-height:1.35;
}
.action-card-footer{
  margin-top:9px;
}
.action-card-footer button{
  min-height:30px;
}
.action-empty{
  padding:22px;
}

/* Календарный вид */
.action-calendar-panel{
  padding:14px;
}
.action-calendar-controls{
  margin-bottom:12px;
  gap:12px;
}
.action-calendar-controls button{
  width:30px;
  height:30px;
}
.action-calendar-weekdays span{
  padding:6px;
}
.action-calendar-day{
  min-height:90px;
  padding:6px;
}
.action-calendar-day>div{
  margin-top:5px;
  gap:4px;
}
.action-calendar-day a{
  padding:4px 5px;
}

/* ACTION CALENDAR — COMPACT FIX */

/* Верхние фильтры */
.action-period-filters{
  margin:10px 0;
  padding:2px;
  gap:6px;
}
.action-period-filters button{
  min-height:30px;
  padding:0 11px;
  border-radius:8px;
}

/* Счётчики */
.action-counters{
  margin:8px 0 16px;
  gap:8px;
}
.action-counters button{
  min-height:52px;
  padding:9px 12px;
  border-radius:10px;
}
.action-counters strong{
  font-size:18px;
}

/* Секции */
.work-center-section{
  margin:18px 0;
}
.work-center-section>.section-heading{
  margin-bottom:8px;
}
.work-center-section>.section-heading>strong{
  min-width:30px;
  width:30px;
  height:30px;
  font-size:11px;
}

/* Возвращаем карточкам корректную ширину */
.work-item-card{
  grid-template-columns:118px minmax(0,1fr) !important;
  min-height:158px !important;
}
.work-item-card>.action-card-photo{
  width:118px !important;
  min-width:118px !important;
  max-width:118px !important;
  height:158px !important;
  min-height:158px !important;
}
.work-item-card>.action-card-photo .sku-photo{
  width:118px !important;
  height:158px !important;
}
.work-item-card>.action-card-body{
  padding:16px 185px 16px 20px !important;
  grid-template-columns:minmax(270px,.8fr) minmax(390px,1.35fr) !important;
}

/* Плотнее список */
.work-center-section .action-list{
  gap:8px;
}

@media(max-width:1100px){
  .work-item-card>.action-card-body{
    padding-right:20px !important;
    grid-template-columns:minmax(230px,.8fr) minmax(300px,1.2fr) !important;
  }
}

/* ACTION FILTERS — HORIZONTAL */
.action-period-filters{
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  flex-wrap:nowrap;
  gap:7px;
  margin:10px 0 12px;
  padding:4px;
  overflow-x:auto;
}

.action-period-filters button{
  width:auto !important;
  flex:1 1 0;
  min-width:130px;
  min-height:34px;
  padding:0 12px;
  white-space:nowrap;
  text-align:center;
}

@media(max-width:900px){
  .action-period-filters button{
    flex:0 0 auto;
  }
}

/* =========================================================
   Beautiful action calendar
   ========================================================= */

.action-calendar-panel{
  margin-top: 14px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: linear-gradient(180deg, #fbfdfc 0%, #f6faf8 100%);
  box-shadow: 0 10px 30px rgba(21, 52, 39, .04);
}

.action-calendar-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-bottom:18px;
}

.action-calendar-controls h2{
  min-width: 260px;
  margin:0;
  text-align:center;
  font-size: 24px;
  font-weight: 850;
  letter-spacing: -.03em;
  color: var(--ink);
}

.action-calendar-controls button{
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #fff;
  color: var(--ink);
  font-size: 16px;
  font-weight: 800;
  cursor: pointer;
  transition:
    transform .15s ease,
    box-shadow .15s ease,
    border-color .15s ease,
    background .15s ease;
}

.action-calendar-controls button:hover{
  transform: translateY(-1px);
  border-color: #b7d0c0;
  background: #f4faf6;
  box-shadow: 0 6px 16px rgba(20, 48, 35, .06);
}

.action-calendar-weekdays,
.action-calendar-grid{
  display:grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.action-calendar-weekdays{
  margin-bottom: 8px;
  gap: 8px;
}

.action-calendar-weekdays span{
  padding: 10px 8px;
  border-radius: 10px;
  background: #edf5f0;
  color: #5f7468;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-align:center;
  text-transform: uppercase;
}

.action-calendar-grid{
  gap: 8px;
}

.action-calendar-day{
  min-height: 128px;
  padding: 10px;
  display: flex;
  flex-direction: column;
  border: 1px solid #dce9e1;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(20, 48, 35, .03);
  transition:
    transform .15s ease,
    box-shadow .15s ease,
    border-color .15s ease;
}

.action-calendar-day:hover{
  transform: translateY(-1px);
  border-color: #bcd2c4;
  box-shadow: 0 8px 18px rgba(20, 48, 35, .05);
}

.action-calendar-day.outside{
  background: #f7faf8;
  opacity: .72;
}

.action-calendar-day > strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: 28px;
  height: 28px;
  margin-bottom: 8px;
  border-radius: 999px;
  color: #53665d;
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
}

.action-calendar-day.today{
  border-color: #b6d6c2;
  background: linear-gradient(180deg, #ffffff 0%, #f5fbf7 100%);
  box-shadow: 0 10px 22px rgba(54, 122, 87, .08);
}

.action-calendar-day.today > strong{
  color: #173429;
  background: var(--lime);
  box-shadow: inset 0 0 0 1px rgba(23, 52, 41, .06);
}

.action-calendar-day > div{
  margin-top: 2px;
  display:grid;
  gap: 6px;
  align-content:start;
}

.action-calendar-day a{
  display:block;
  padding: 8px 9px;
  border: 1px solid #eadfb0;
  border-radius: 10px;
  background: #fff7d9;
  color: #27362f;
  text-decoration:none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
  transition:
    transform .15s ease,
    box-shadow .15s ease,
    border-color .15s ease;
}

.action-calendar-day a:hover{
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(20, 48, 35, .06);
}

.action-calendar-day a.ready_to_check{
  border-color: #f0c6ba;
  background: #fff0eb;
}

.action-calendar-day a.checked{
  border-color: #cce6d4;
  background: #eaf8ef;
}

.action-calendar-day a b,
.action-calendar-day a span{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.action-calendar-day a b{
  font-size: 10px;
  font-weight: 800;
  color: #21372d;
}

.action-calendar-day a span{
  margin-top: 3px;
  color: #6b7c74;
  font-size: 8px;
  font-weight: 700;
}

.action-calendar-day small{
  margin-top: 3px;
  color: #839088;
  font-size: 8px;
}

@media (max-width: 1100px){
  .action-calendar-panel{
    padding: 18px;
  }

  .action-calendar-controls h2{
    min-width: 220px;
    font-size: 21px;
  }

  .action-calendar-day{
    min-height: 116px;
  }
}

@media (max-width: 900px){
  .action-calendar-panel{
    overflow-x: auto;
  }

  .action-calendar-weekdays,
  .action-calendar-grid{
    min-width: 820px;
  }
}


/* CALENDAR EVENTS */
.action-calendar-day a{
  position:relative;
  padding:8px 9px 8px 12px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  box-shadow:none;
}

.action-calendar-day a::before{
  content:"";
  position:absolute;
  left:0;
  top:7px;
  bottom:7px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:var(--green);
}

.action-calendar-day a b{
  font-size:9px;
  font-weight:800;
  line-height:1.25;
}

.action-calendar-day a span{
  margin-top:3px;
  color:var(--muted);
  font-size:8px;
  line-height:1.25;
}

.action-calendar-day a.ready_to_check{
  border-color:#e6d6bc;
  background:#fffdf8;
}

.action-calendar-day a.ready_to_check::before{
  background:#c9902e;
}

.action-calendar-day a.checked{
  border-color:#cfe1d6;
  background:#f8fcf9;
}

.action-calendar-day a.checked::before{
  background:#4a8b68;
}

.action-calendar-day a:hover{
  transform:none;
  border-color:#b7d0c0;
  background:#f8fbf9;
  box-shadow:0 4px 10px rgba(20,48,35,.05);
}


/* CALENDAR EVENT CARDS */
.action-calendar-day > div > button:not(.calendar-more-button),
.calendar-more-list button{
  position:relative;
  width:100%;
  min-height:0;
  padding:7px 8px 7px 11px;
  display:block;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  color:var(--ink);
  text-align:left;
  cursor:pointer;
  box-shadow:none;
}

.action-calendar-day > div > button:not(.calendar-more-button)::before,
.calendar-more-list button::before{
  content:"";
  position:absolute;
  left:0;
  top:6px;
  bottom:6px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:var(--green);
}

.action-calendar-day button b,
.calendar-more-list button b{
  display:block;
  overflow:hidden;
  font-size:9px;
  font-weight:850;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.action-calendar-day button span,
.calendar-more-list button span{
  display:block;
  overflow:hidden;
  margin-top:2px;
  color:var(--muted);
  font-size:8px;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.action-calendar-day .calendar-more-button{
  width:100%;
  min-height:26px;
  padding:0 8px;
  border:0;
  border-radius:7px;
  background:var(--soft);
  color:var(--green);
  font-size:8px;
  font-weight:850;
  text-align:center;
  cursor:pointer;
}

.calendar-more-dialog{
  padding:28px;
}

.calendar-more-dialog h2{
  margin:5px 0 18px;
}

.calendar-more-list{
  display:grid;
  gap:8px;
}

/* DASHBOARD DAILY SUMMARY */
.dashboard-project-summaries{
  display:grid;
  gap:16px;
}

.dashboard-project-summary{
  padding:22px 24px;
  display:grid;
  gap:18px;
}

.dashboard-project-summary-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}

.dashboard-project-summary-head h3{
  margin:4px 0 0;
  font-size:19px;
}

.dashboard-project-summary-head>a{
  color:var(--green);
  font-size:9px;
  font-weight:850;
  text-decoration:none;
}

.dashboard-daily-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.dashboard-daily-metric{
  padding:14px 15px;
  display:grid;
  gap:5px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fafcfb;
}

.dashboard-daily-metric>span{
  color:var(--muted);
  font-size:8px;
  font-weight:850;
  text-transform:uppercase;
}

.dashboard-daily-metric>strong{
  font-size:18px;
}

.dashboard-delta{
  font-size:8px;
  font-weight:750;
}

.dashboard-delta.positive{color:#24704e}
.dashboard-delta.negative{color:#a74c43}
.dashboard-delta.neutral{color:var(--muted)}

.dashboard-daily-actions{
  padding-top:13px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  border-top:1px solid var(--line);
}

.dashboard-daily-actions>span{
  padding:9px 11px;
  display:flex;
  justify-content:space-between;
  gap:8px;
  border-radius:9px;
  background:var(--soft);
  color:var(--muted);
  font-size:8px;
  font-weight:800;
}

.dashboard-daily-actions strong{
  color:var(--ink);
  font-size:13px;
}

@media(max-width:900px){
  .dashboard-daily-metrics,
  .dashboard-daily-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

.dashboard-combined-summary .dashboard-daily-metric>span{
  color:#55635d;
}

.dashboard-combined-summary .dashboard-daily-actions>span{
  background:rgba(255,255,255,.18);
  color:#ffffff;
  font-size:9px;
}

.dashboard-combined-summary .dashboard-daily-actions strong{
  color:#c7ff48;
  font-size:14px;
}

.dashboard-combined-summary .dashboard-project-summary-head>span{
  color:#ffffff;
}

/* Project deletion */
.project-danger-heading{
  margin-top:32px;
}

.project-danger-panel{
  min-height:92px;
  padding:20px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  border:1px solid var(--line);
  background:#fff;
}

.project-danger-copy{
  min-width:0;
}

.project-danger-copy h3{
  margin:0 0 5px;
  font-size:14px;
  font-weight:800;
  color:var(--ink);
}

.project-danger-copy p{
  max-width:760px;
  margin:0;
  color:var(--muted);
  font-size:10px;
  line-height:1.55;
}

.project-danger-actions{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}

.project-delete-button{
  min-height:40px;
  padding:0 16px;
  border:1px solid #d9aaa6;
  border-radius:10px;
  background:#fff;
  color:#a9342c;
  cursor:pointer;
  font-size:10px;
  font-weight:850;
  white-space:nowrap;
  transition:background .15s,border-color .15s,color .15s;
}

.project-delete-button:hover{
  border-color:#a9342c;
  background:#a9342c;
  color:#fff;
}

.project-delete-button:disabled{
  opacity:.5;
  cursor:default;
}

.project-danger-actions .form-error{
  max-width:260px;
  margin:0;
  text-align:right;
  font-size:9px;
}

@media(max-width:760px){
  .project-danger-panel{
    align-items:flex-start;
    flex-direction:column;
    gap:16px;
  }

  .project-danger-actions{
    width:100%;
    align-items:stretch;
  }

  .project-delete-button{
    width:100%;
  }

  .project-danger-actions .form-error{
    max-width:none;
    text-align:left;
  }
}



/* Result page visual refresh 2026-09-12 */
.result-head{
  min-height:190px;
  padding:26px 28px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:40px;
}

.result-head-main{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.result-head .back-link{
  width:max-content;
  margin:0 0 23px;
  color:var(--green);
  font-size:9px;
  font-weight:850;
  text-decoration:none;
}

.result-head-labels{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}

.result-head-labels .eyebrow{
  margin:0;
}

.report-financial-status{
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:0 9px;
  border-radius:999px;
  color:#7b5a10;
  background:#fff3ce;
  font-size:8px;
  font-weight:900;
  letter-spacing:.05em;
}

.result-head h2{
  margin:0;
  font-size:32px;
  line-height:1.05;
  letter-spacing:-.045em;
}

.result-head-project{
  margin:9px 0 0!important;
  color:var(--muted)!important;
  font-size:10px!important;
}

.result-head-side{
  min-width:320px;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}

.result-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}

.result-download,
.daily-refresh{
  min-height:38px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:9px;
  cursor:pointer;
  font-size:9px;
  font-weight:850;
  text-decoration:none;
  white-space:nowrap;
}

.result-download{
  border:1px solid var(--line);
  color:var(--ink);
  background:#fff;
}

.result-download:hover{
  border-color:#8ea99a;
  background:#f8fbf9;
}

.daily-refresh{
  border:0;
  color:#173429;
  background:var(--lime);
}

.daily-refresh:hover{
  filter:brightness(.97);
}

.result-date-form{
  display:flex;
  align-items:flex-end;
  gap:8px;
}

.result-date-form label{
  display:grid;
  gap:6px;
}

.result-date-form label>span{
  color:var(--muted);
  font-size:8px;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.result-date-form input{
  width:148px;
  min-height:39px;
  padding:0 11px;
  border:1px solid var(--line);
  border-radius:9px;
  outline:none;
  color:var(--ink);
  background:#fff;
  font-size:10px;
}

.result-date-form input:focus{
  border-color:#6c9a81;
  box-shadow:0 0 0 3px rgba(50,112,78,.08);
}

.result-date-form button{
  min-height:39px;
  padding:0 14px;
  border:1px solid #b8c9c0;
  border-radius:9px;
  color:var(--green);
  background:#fff;
  cursor:pointer;
  font-size:9px;
  font-weight:850;
}

.result-date-form button:hover{
  border-color:var(--green);
  background:#f3f8f5;
}

.result-finance-note{
  margin-top:10px;
  padding:12px 15px;
  display:flex;
  align-items:center;
  gap:12px;
  border:1px solid #eadfb8;
  border-radius:11px;
  background:#fffdf5;
}

.result-finance-note span{
  color:#745a16;
  font-size:9px;
  font-weight:850;
  white-space:nowrap;
}

.result-finance-note p{
  margin:0;
  color:#7c7460;
  font-size:9px;
}

.result-section-heading{
  margin-top:34px;
}

/* KPI grid */
.result-kpis{
  gap:10px;
}

.result-metric{
  min-height:124px;
  padding:18px 19px;
  border-radius:14px;
}

.result-metric span{
  font-size:8px;
  letter-spacing:.08em;
}

.result-metric strong{
  margin-top:16px;
  font-size:25px;
  line-height:1;
  letter-spacing:-.045em;
}

.result-metric small{
  display:block;
  margin-top:9px;
  font-size:8px;
  font-weight:750;
  line-height:1.35;
}

.result-metric.primary{
  border-color:#244d3a;
  background:#214d39;
}

.result-metric.primary strong{
  color:#fff;
}

.result-kpis .result-metric:nth-child(7) strong{
  font-size:23px;
}

/* Slightly quieter technical metadata */
.technical-strip{
  margin-top:10px;
  opacity:.82;
}

@media(max-width:900px){
  .result-head{
    grid-template-columns:1fr;
    gap:22px;
  }

  .result-head-side{
    min-width:0;
    width:100%;
    align-items:stretch;
  }

  .result-actions{
    justify-content:flex-start;
  }

  .result-date-form{
    justify-content:flex-start;
  }
}

@media(max-width:560px){
  .result-head{
    padding:22px 18px;
  }

  .result-head h2{
    font-size:27px;
  }

  .result-head-labels{
    align-items:flex-start;
    flex-direction:column;
  }

  .result-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .result-download,
  .daily-refresh{
    width:100%;
  }

  .result-date-form{
    display:grid;
    grid-template-columns:1fr auto;
  }

  .result-date-form input{
    width:100%;
  }

  .result-finance-note{
    align-items:flex-start;
    flex-direction:column;
  }
}



/* Result KPI + calendar polish 2026-09-12 */

/* Tighter financial KPI hierarchy */
.result-kpis{
  gap:9px;
}

.result-metric{
  min-height:112px;
  padding:17px 18px;
}

.result-metric strong{
  margin-top:12px;
  font-size:24px;
}

.result-metric small{
  margin-top:7px;
  font-size:7.5px;
  line-height:1.3;
}

.result-metric.primary .metric-delta{
  color:#a9d6bd;
}

.result-metric.primary .metric-delta.negative{
  color:#ffd1cb;
}

.result-kpis .result-metric:nth-child(7) strong{
  font-size:24px;
}

/* Calendar is operational context, not a primary financial block */
.daily-calendar-context{
  margin-top:16px;
  padding:18px 20px;
  gap:14px;
  border-radius:14px;
}

.daily-calendar-head{
  align-items:center;
}

.daily-calendar-head .eyebrow{
  margin-bottom:2px;
}

.daily-calendar-head h3{
  margin:2px 0 0;
  font-size:17px;
  letter-spacing:-.025em;
}

.daily-calendar-open{
  min-height:32px;
  padding:0 12px;
  border-color:#b8c9c0;
  font-size:8px;
}

.daily-calendar-open:hover{
  border-color:var(--green);
}

.daily-calendar-metrics{
  gap:8px;
}

.daily-calendar-metrics > div{
  min-height:62px;
  padding:11px 13px;
  gap:4px;
  border-radius:9px;
  background:#fbfcfb;
}

.daily-calendar-metrics > div:first-child{
  border-left-width:2px;
}

.daily-calendar-metrics span{
  font-size:8px;
  font-weight:750;
}

.daily-calendar-metrics strong{
  font-size:20px;
  font-weight:800;
  letter-spacing:-.035em;
}

/* Reduce excessive vertical space between major report sections */
.result-section-heading{
  margin-top:30px;
  margin-bottom:12px;
}

@media(max-width:800px){
  .daily-calendar-context{
    padding:16px;
  }

  .daily-calendar-head{
    align-items:flex-start;
  }
}


/* planning-unit-economics */
.planning-intro{padding:28px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.planning-intro h2{margin:0 0 9px;font-size:27px;letter-spacing:-.04em}
.planning-intro p:not(.eyebrow){max-width:720px;margin:0;color:var(--muted);font-size:11px;line-height:1.65}
.planning-intro>span{flex:0 0 auto;padding:8px 11px;border-radius:999px;color:var(--green);background:#e9f6ed;font-size:9px;font-weight:850}
.planning-form-panel{margin-top:16px;padding:0;overflow:hidden}
.planning-form-panel form{display:grid}
.planning-form-section{padding:26px 28px;border-bottom:1px solid var(--line)}
.planning-form-section-head{display:flex;gap:13px;margin-bottom:21px;align-items:flex-start}
.planning-form-section-head>span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;color:#173429;background:var(--lime);font-size:9px;font-weight:900}
.planning-form-section-head h3{margin:0 0 3px;font-size:16px}
.planning-form-section-head p{margin:0;color:var(--muted);font-size:10px}
.planning-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px}
.planning-dimensions-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.planning-form-panel label{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:780}
.planning-form-panel input,.planning-form-panel select{width:100%;min-height:45px;padding:0 13px;border:1px solid var(--line);border-radius:10px;outline:0;color:var(--ink);background:#fbfcfb}
.planning-form-panel input:focus,.planning-form-panel select:focus{border-color:#4a9973;box-shadow:0 0 0 3px #e7f6ed}
.planning-check{grid-template-columns:auto 1fr!important;align-items:start;gap:10px!important;margin-top:18px}
.planning-check input{width:17px!important;min-height:17px!important;margin-top:2px}
.planning-check span{display:grid;gap:3px}
.planning-check strong{color:var(--ink);font-size:10px}
.planning-check small{color:var(--muted);font-size:9px;font-weight:500;line-height:1.45}
.planning-form-section>[data-planning-storage-days]{max-width:330px;margin-top:17px}
.planning-submit-row{padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f8faf8}
.planning-submit-row>div{display:grid;gap:4px}
.planning-submit-row strong{font-size:11px}
.planning-submit-row span{color:var(--muted);font-size:9px}
.planning-submit-row button{min-width:170px;min-height:46px;padding:0 22px;border:0;border-radius:11px;cursor:pointer;color:#173429;background:var(--lime);font-size:11px;font-weight:850}
.planning-submit-row button:disabled{opacity:.6;cursor:wait}
.planning-form-panel .form-error{margin:0;padding:0 28px 18px}
.planning-result{scroll-margin-top:22px}
.planning-result-head{margin-top:28px;padding:25px 28px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.planning-result-head h2{margin:0 0 7px;font-size:24px}
.planning-result-head p:not(.eyebrow){margin:0;color:var(--muted);font-size:10px}
.planning-result-head>span{color:var(--muted);font-size:9px}
.planning-kpis{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.planning-kpis article{padding:21px;border:1px solid var(--line);border-radius:15px;background:white}
.planning-kpis span,.planning-target-grid span{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.planning-kpis strong,.planning-target-grid strong{display:block;margin-top:12px;font-size:22px;letter-spacing:-.04em}
.planning-kpis article.negative strong{color:var(--red)}
.planning-kpis article.positive:first-child strong{color:var(--green)}
.planning-cost-grid{padding:7px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.planning-cost-grid article{padding:17px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.planning-cost-grid article:nth-child(4n){border-right:0}
.planning-cost-grid article:nth-last-child(-n+4){border-bottom:0}
.planning-cost-grid span{display:block;color:var(--muted);font-size:9px}
.planning-cost-grid strong{display:block;margin-top:7px;font-size:14px}
.planning-target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.planning-target-grid article{padding:21px}
.planning-tariff-note{margin-top:16px;padding:22px 25px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.planning-tariff-note h3{margin:0 0 5px;font-size:15px}
.planning-tariff-note p:not(.eyebrow){margin:0;color:var(--muted);font-size:9px}
.planning-tariff-note dl{margin:0;display:flex;gap:28px}
.planning-tariff-note dt{color:var(--muted);font-size:8px;text-transform:uppercase}
.planning-tariff-note dd{margin:6px 0 0;font-size:11px;font-weight:850}
.planning-history-heading .section-copy{max-width:620px;margin:5px 0 0;color:var(--muted);font-size:9px}
.planning-history-list{display:grid;gap:10px}
.planning-history-item{width:100%;padding:17px 20px;display:grid;grid-template-columns:minmax(170px,1fr) auto auto;align-items:center;gap:22px;border:1px solid var(--line);cursor:pointer;color:var(--ink);text-align:left}
.planning-history-item:hover{border-color:#b7cec0;box-shadow:0 4px 18px rgba(23,52,41,.05)}
.planning-history-item>div{display:grid;gap:5px}
.planning-history-item>div strong{font-size:11px}
.planning-history-item>div span{color:var(--muted);font-size:9px}
.planning-history-item dl{margin:0;display:flex;gap:24px}
.planning-history-item dl div{min-width:75px}
.planning-history-item dt{color:var(--muted);font-size:8px}
.planning-history-item dd{margin:5px 0 0;font-size:10px;font-weight:800}
.planning-history-open{color:var(--green);font-size:9px;font-weight:850}
@media(max-width:980px){
  .planning-dimensions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-kpis,.planning-cost-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-cost-grid article:nth-child(4n){border-right:1px solid var(--line)}
  .planning-cost-grid article:nth-child(2n){border-right:0}
  .planning-cost-grid article:nth-last-child(-n+4){border-bottom:1px solid var(--line)}
  .planning-cost-grid article:nth-last-child(-n+2){border-bottom:0}
  .planning-history-item{grid-template-columns:1fr}
  .planning-history-item dl{flex-wrap:wrap}
}
@media(max-width:700px){
  .planning-intro,.planning-result-head,.planning-tariff-note,.planning-submit-row{align-items:flex-start;flex-direction:column}
  .planning-form-grid,.planning-dimensions-grid,.planning-kpis,.planning-cost-grid,.planning-target-grid{grid-template-columns:1fr}
  .planning-cost-grid article{border-right:0!important;border-bottom:1px solid var(--line)!important}
  .planning-cost-grid article:last-child{border-bottom:0!important}
  .planning-tariff-note dl{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .planning-submit-row button{width:100%}
}

/* planning-subject-search */
.planning-subject-label{position:relative}
.planning-subject-combobox{position:relative;display:block}
.planning-subject-combobox>input[type="search"]{padding-right:36px}
.planning-subject-label>small{min-height:14px;color:var(--muted);font-size:8px;font-weight:500;line-height:1.4}
.planning-subject-options{position:absolute;z-index:40;top:calc(100% + 6px);left:0;right:0;max-height:320px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 14px 40px rgba(23,52,41,.14)}
.planning-subject-options button{width:100%;padding:11px 12px;display:grid;gap:3px;border:0;border-radius:8px;background:transparent;color:var(--ink);cursor:pointer;text-align:left}
.planning-subject-options button:hover,.planning-subject-options button:focus{background:#f1f7f3;outline:0}
.planning-subject-options button strong{font-size:10px}
.planning-subject-options button small{color:var(--muted);font-size:8px;font-weight:500}
.planning-subject-empty{display:block;padding:13px;color:var(--muted);font-size:9px;line-height:1.5}

/* PLANNING_V2_FORECAST_COSTS */

.planning-subsection-head{
  margin:24px 0 12px;
  padding-top:20px;
  border-top:1px solid var(--line);
}
.planning-subsection-head h4{
  margin:0 0 5px;
  font-size:13px;
}
.planning-subsection-head p{
  margin:0;
  color:var(--muted);
  font-size:10px;
}
.planning-form-panel label small{
  color:var(--muted);
  font-size:9px;
  font-weight:500;
  line-height:1.45;
}
.planning-cost-grid article small{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:9px;
  font-weight:700;
}
.planning-form-panel input[readonly]{
  color:#536159;
  background:#f3f6f4;
  cursor:not-allowed;
}

/* PLANNING_HISTORY_GROUPS_V1 */

.planning-history-heading{
  align-items:end;
}

.planning-new-calculation{
  width:auto;
  min-width:140px;
}

.planning-history-groups{
  display:grid;
  gap:12px;
}

.planning-history-group{
  padding:0;
  overflow:hidden;
}

.planning-history-group > summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  cursor:pointer;
  list-style:none;
}

.planning-history-group > summary::-webkit-details-marker{
  display:none;
}

.planning-history-group > summary span{
  display:grid;
  gap:4px;
}

.planning-history-group > summary strong{
  font-size:14px;
}

.planning-history-group > summary small{
  color:var(--muted);
  font-size:10px;
}

.planning-history-group > summary i{
  width:8px;
  height:8px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .15s ease;
}

.planning-history-group[open] > summary i{
  transform:rotate(225deg);
}

.planning-history-group-list{
  border-top:1px solid var(--line);
}

.planning-history-item{
  width:100%;
  display:grid;
  grid-template-columns:minmax(160px, 1fr) minmax(360px, 1.6fr) auto;
  align-items:center;
  gap:24px;
  padding:15px 22px;
  border:0;
  border-bottom:1px solid var(--line);
  background:transparent;
  text-align:left;
}

.planning-history-item:last-child{
  border-bottom:0;
}

.planning-history-item:hover{
  background:#f7f9f8;
}

.planning-history-date{
  color:var(--muted);
  font-size:10px;
}

.planning-history-item dl{
  display:grid;
  grid-template-columns:repeat(3, minmax(90px, 1fr));
  gap:18px;
  margin:0;
}

.planning-history-item dl div{
  display:grid;
  gap:3px;
}

.planning-history-item dt{
  color:var(--muted);
  font-size:9px;
}

.planning-history-item dd{
  margin:0;
  font-size:12px;
  font-weight:700;
}

.planning-history-open{
  white-space:nowrap;
  font-size:10px;
  font-weight:700;
}

@media (max-width: 800px){
  .planning-history-item{
    grid-template-columns:1fr;
    gap:12px;
  }

  .planning-history-item dl{
    grid-template-columns:repeat(3, 1fr);
  }

  .planning-history-heading{
    align-items:start;
  }
}

/* PLANNING_FORM_UNIFIED_LAYOUT_V2 */

/*
 * Единая геометрия всей формы плановой юнит-экономики.
 * Каждое обычное поле:
 *   1. подпись фиксированной высоты;
 *   2. control фиксированной высоты;
 *   3. необязательная подсказка.
 *
 * Благодаря этому input/select/date/search стоят на одной линии
 * независимо от наличия текста-подсказки под соседним полем.
 */

#planning-form .planning-form-grid{
  align-items:start;
  row-gap:18px;
}

#planning-form label:not(.planning-check){
  min-width:0;
  margin:0;
  align-self:start;
  align-content:start;
  grid-template-rows:16px 48px auto;
  gap:7px;
  line-height:16px;
}

#planning-form label:not(.planning-check) > input:not([type="checkbox"]):not([type="hidden"]),
#planning-form label:not(.planning-check) > select{
  width:100%;
  height:48px;
  min-height:48px;
  max-height:48px;
  padding-top:0;
  padding-bottom:0;
  line-height:normal;
}

#planning-form .planning-subject-combobox{
  width:100%;
  height:48px;
  min-height:48px;
}

#planning-form .planning-subject-combobox > input[type="search"]{
  width:100%;
  height:48px;
  min-height:48px;
  max-height:48px;
  padding-top:0;
  padding-bottom:0;
  line-height:normal;
}

#planning-form label:not(.planning-check) > small,
#planning-form .planning-subject-label > small{
  min-height:0;
  margin:0;
  align-self:start;
  line-height:1.45;
}

#planning-form .planning-dimensions-grid > label,
#planning-form .planning-extra-costs > label{
  align-self:start;
}

#planning-form .planning-form-section > [data-planning-storage-days]{
  margin-top:18px;
}

#planning-form input[readonly]{
  height:48px;
  min-height:48px;
}

/* Checkboxes keep their compact native geometry. */
#planning-form .planning-check{
  grid-template-rows:none;
  line-height:normal;
}

@media (max-width:700px){
  #planning-form label:not(.planning-check){
    grid-template-rows:16px 48px auto;
  }
}
/* =========================================================
   Reviews — shared FinControl analytics design
   ========================================================= */

.reviews-page{
  display:grid;
  gap:0;
}

.review-hero{
  padding:27px 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.review-hero-copy{
  min-width:0;
}

.review-hero h2{
  margin:4px 0 8px;
  font-size:25px;
  letter-spacing:-.035em;
}

.review-hero p:not(.eyebrow){
  margin:0;
  color:#526159;
  font-size:11px;
}

.review-hero small{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:9px;
}

.review-hero #review-sync{
  flex:0 0 auto;
  border:0;
  cursor:pointer;
}

.review-hero #review-sync:disabled{
  opacity:.55;
  cursor:wait;
}

.reviews-kpis{
  margin-top:14px;
}

.reviews-kpis .result-metric small{
  margin-top:8px;
  color:var(--muted);
  font-size:9px;
}

.reviews-kpis .result-metric.primary small{
  color:#a8c6b7;
}

.review-section-heading{
  margin-top:30px;
}

.reviews-star-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}

.reviews-star-grid article{
  min-width:0;
  min-height:108px;
  padding:17px 18px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.reviews-star-grid span{
  color:var(--muted);
  font-size:9px;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.reviews-star-grid strong{
  margin-top:13px;
  font-size:23px;
  letter-spacing:-.035em;
}

.reviews-star-grid small{
  margin-top:5px;
  color:var(--muted);
  font-size:9px;
}

.review-yesterday{
  margin-top:14px;
  padding:24px;
}

.review-window-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.review-window-head h2,
.review-window-head h3{
  margin:3px 0 0;
}

.review-window-head>strong{
  font-size:18px;
}

.review-yesterday-stars,
.sku-review-stars{
  margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.review-yesterday-stars span,
.sku-review-stars span{
  padding:8px 10px;
  border-radius:9px;
  color:#526159;
  background:var(--soft);
  font-size:9px;
}

.review-yesterday-stars b,
.sku-review-stars b{
  color:var(--ink);
}

.reviews-windows{
  margin-top:14px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.review-window-card{
  padding:21px;
}

.review-window-metrics{
  margin-top:17px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.review-window-metrics article{
  min-width:0;
  padding:13px;
  border-radius:10px;
  background:var(--soft);
}

.review-window-metrics span,
.review-window-metrics strong,
.review-window-metrics small{
  display:block;
}

.review-window-metrics span{
  color:var(--muted);
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
}

.review-window-metrics strong{
  margin-top:8px;
  font-size:16px;
}

.review-window-metrics small{
  margin-top:6px;
  color:var(--muted);
  font-size:8px;
  line-height:1.4;
}

.reviews-problem-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.review-problem-card{
  min-width:0;
  padding:0;
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:13px;
  color:var(--ink);
  background:#fff;
  cursor:pointer;
  text-align:left;
}

.review-problem-card:hover{
  border-color:#79a68e;
  box-shadow:0 7px 20px rgba(21,48,35,.06);
}

.review-problem-photo{
  width:72px;
  height:96px;
  overflow:hidden;
  background:var(--soft);
}

.review-problem-photo .sku-photo{
  width:72px;
  height:96px;
  border-radius:0;
  object-fit:cover;
}

.review-problem-copy{
  min-width:0;
  padding:12px 13px;
  display:block;
}

.review-problem-copy strong,
.review-problem-copy small,
.review-problem-copy>span{
  display:block;
}

.review-problem-copy strong{
  overflow:hidden;
  font-size:10px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.review-problem-copy small{
  margin-top:4px;
  color:var(--muted);
  font-size:8px;
}

.review-problem-copy>span{
  margin-top:9px;
  color:#536159;
  font-size:9px;
  line-height:1.45;
}

.review-problem-empty{
  grid-column:1/-1;
  padding:28px;
  color:var(--muted);
  text-align:center;
}

.reviews-tools{
  position:static;
  grid-template-columns:minmax(220px,1fr) minmax(210px,.55fr) auto auto;
}

.reviews-tools button{
  min-height:40px;
  padding:0 15px;
  border:0;
  border-radius:9px;
  color:#173429;
  background:var(--lime);
  cursor:pointer;
  font-size:9px;
  font-weight:850;
}

.reviews-tools>strong{
  padding-bottom:11px;
  color:var(--muted);
}

.reviews-table .sku-photo{
  width:48px;
  height:64px;
  aspect-ratio:3/4;
  object-fit:cover;
}

.reviews-table th:first-child,
.reviews-table td:first-child{
  min-width:220px;
}

.reviews-table th:not(:first-child),
.reviews-table td:not(:first-child){
  text-align:right;
}

.review-detail-dialog{
  width:min(1040px,calc(100vw - 32px));
  max-height:calc(100vh - 32px);
  padding:0;
  overflow:auto;
  scrollbar-gutter:stable;
}

.review-detail-dialog .sku-detail-head{
  padding:30px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px;
  gap:30px;
  align-items:start;
}

.review-detail-dialog .sku-detail-copy{
  min-width:0;
  padding-top:4px;
}

.review-detail-dialog .sku-detail-copy h2{
  margin:0;
  font-size:27px;
  letter-spacing:-.035em;
}

.review-detail-dialog .sku-detail-copy>p:not(.eyebrow){
  margin:10px 0 14px;
  color:var(--muted);
  font-size:11px;
}

.review-detail-dialog .sku-detail-media,
.review-detail-dialog .sku-photo.large{
  width:180px;
}

.review-detail-dialog .sku-photo.large{
  float:none;
  height:auto;
  margin:0;
  aspect-ratio:3/4;
  object-fit:contain;
  border:1px solid var(--line);
  border-radius:14px;
}

.review-detail-metrics{
  padding:20px 30px 10px;
}

.review-detail-stars,
.review-detail-history{
  margin:10px 30px 0;
  padding:20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fbfdfc;
}

.review-detail-history{
  margin-bottom:30px;
}

.review-recent-list{
  display:grid;
  gap:8px;
}

/* REVIEW_TEXT_AUTO_HEIGHT_V2 */
.review-text{
  padding:14px 15px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
  overflow-wrap:anywhere;
}

.review-text>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.review-text>div strong{
  font-size:11px;
}

.review-text>div span{
  color:var(--muted);
  font-size:8px;
}

.review-text p{
  margin:9px 0 0;
  color:#526159;
  font-size:10px;
  line-height:1.55;
  white-space:pre-wrap;
}

.review-text small{
  display:block;
  margin-top:7px;
  color:#66746d;
  font-size:9px;
  line-height:1.45;
  white-space:pre-wrap;
}

.review-textless-row{
  min-height:42px;
  padding:9px 12px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
}

.review-textless-row strong{
  font-size:10px;
}

.review-textless-row span{
  color:var(--muted);
  font-size:9px;
}

.review-textless-row time{
  color:var(--muted);
  font-size:8px;
  white-space:nowrap;
}

.review-empty{
  margin:0;
  color:var(--muted);
  font-size:10px;
}

/* REVIEW_MEDIA_GALLERY_V1 */
.review-media-grid{
  margin-top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.review-media-link{
  width:62px;
  height:82px;
  display:block;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--soft);
}

.review-media-link img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.review-media-link:hover{
  border-color:#79a68e;
}

@media(max-width:600px){
  .review-media-link{
    width:54px;
    height:72px;
  }
}

/* REVIEWS_LIVE_DAY_V2 */
.review-yesterday{
  padding:28px 32px;
}

.review-day-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:28px;
}

.review-day-head h2{
  margin-top:6px;
  font-size:30px;
  line-height:1.05;
}

.review-day-summary{
  min-width:430px;
}

.review-day-summary-banner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:17px 20px;
  border:1px solid #c9e5d2;
  border-radius:16px;
  background:#edf8f0;
}

.review-day-summary-main,
.review-day-summary-compare{
  display:grid;
  align-items:center;
}

.review-day-summary-main{
  grid-template-columns:auto auto;
  gap:6px 18px;
}

.review-day-summary-main span{
  grid-column:1;
  color:#52705d;
  font-size:12px;
  font-weight:750;
}

.review-day-summary-main strong{
  grid-column:2;
  grid-row:1;
  color:#173d25;
  font-size:34px;
  line-height:1;
}

.review-day-summary-compare{
  padding-left:22px;
  border-left:1px solid #c9e5d2;
  text-align:right;
}

.review-day-summary-compare span{
  color:#52705d;
  font-size:11px;
  font-weight:700;
}

.review-day-summary-compare strong{
  margin-top:2px;
  color:#173d25;
  font-size:23px;
  line-height:1.1;
}

.review-day-summary-compare small{
  margin-top:3px;
  color:#52705d;
  font-size:11px;
}

.review-day-stars{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-top:24px;
}

.review-day-star{
  min-height:92px;
  padding:16px 18px;
  border:1px solid #e3e9e5;
  border-radius:14px;
  background:#f7f9f8;
}

.review-day-star-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.review-day-star-head span{
  font-size:15px;
  font-weight:750;
}

.review-day-star-head strong{
  font-size:30px;
  line-height:1;
}

.review-day-star small{
  display:block;
  margin-top:12px;
  color:var(--muted);
  font-size:11px;
}

.review-day-note{
  display:block;
  margin-top:14px;
  color:var(--muted);
  font-size:11px;
}

@media (max-width: 760px){
  .review-yesterday{
    padding:22px;
  }

  .review-day-head{
    display:block;
  }

  .review-day-summary{
    min-width:0;
    margin-top:18px;
  }

  .review-day-summary-banner{
    align-items:stretch;
    flex-direction:column;
    gap:14px;
  }

  .review-day-summary-compare{
    padding-top:12px;
    padding-left:0;
    border-top:1px solid #c9e5d2;
    border-left:0;
    text-align:left;
  }

  .review-day-stars{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* REVIEWS_TABLE_HEADER_SORT_V1 */
.reviews-table .review-sort-head{
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  color:inherit;
  font:inherit;
  font-weight:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
  cursor:pointer;
  white-space:nowrap;
}

.reviews-table .review-sort-head:hover,
.reviews-table .review-sort-head.active{
  color:var(--ink);
}

.reviews-table .review-sort-head:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

.review-sort-arrow{
  display:inline-block;
  width:12px;
  margin-left:3px;
  text-decoration:none;
}

/* Reviews inside actual unit-economics SKU card */
.sku-review-section{
  margin:0 30px 24px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fbfdfc;
}

.sku-review-section .insight-section-head a{
  color:var(--green);
  font-size:9px;
  font-weight:850;
}

.sku-review-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}

.sku-review-metrics article{
  min-width:0;
  min-height:82px;
  padding:12px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border-radius:10px;
  background:#fff;
}

.sku-review-metrics span{
  color:var(--muted);
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
}

.sku-review-metrics strong{
  margin-top:8px;
  font-size:16px;
}

.sku-review-metrics small{
  margin-top:5px;
  color:var(--muted);
  font-size:8px;
}

.sku-review-recent{
  margin-top:17px;
  padding-top:15px;
  border-top:1px solid var(--line);
}

.sku-review-recent h4{
  margin:0 0 10px;
  font-size:12px;
}

@media(max-width:1000px){
  .reviews-star-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .reviews-problem-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:800px){
  .reviews-tools{
    grid-template-columns:1fr 1fr;
  }

  .reviews-tools button,
  .reviews-tools>strong{
    align-self:end;
  }

  .sku-review-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:700px){
  .review-hero{
    align-items:flex-start;
    flex-direction:column;
  }

  .reviews-star-grid,
  .reviews-windows,
  .reviews-problem-grid,
  .reviews-tools{
    grid-template-columns:1fr;
  }

  .review-window-metrics{
    grid-template-columns:1fr 1fr;
  }

  .review-detail-dialog .sku-detail-head{
    padding:22px 18px;
    grid-template-columns:1fr;
  }

  .review-detail-dialog .sku-detail-media,
  .review-detail-dialog .sku-photo.large{
    width:150px;
  }

  .review-detail-metrics{
    padding-left:18px;
    padding-right:18px;
  }

  .review-detail-stars,
  .review-detail-history,
  .sku-review-section{
    margin-left:18px;
    margin-right:18px;
  }
}
/* PROMOTIONS_ACCOUNT_UI_V3 */
.promotions-page{
  display:grid;
  gap:18px;
  min-width:0;
}

/* Analysis settings */
.promotion-toolbar{
  padding:25px 28px;
}

.promotion-toolbar-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:28px;
  margin-bottom:22px;
}

.promotion-toolbar-head>div{
  min-width:0;
}

.promotion-toolbar-head h2{
  margin:0 0 8px;
  font-size:21px;
  letter-spacing:-.025em;
}

.promotion-toolbar-head p:not(.eyebrow){
  max-width:760px;
  margin:0;
  color:var(--muted);
  font-size:11px;
  line-height:1.55;
}

#promotion-sync,
#promotion-analyze{
  flex:0 0 auto;
  min-height:42px;
  padding:0 16px;
  border:0;
  border-radius:10px;
  color:#173429;
  background:var(--lime);
  cursor:pointer;
  font-size:10px;
  font-weight:850;
}

#promotion-sync:hover,
#promotion-analyze:hover{
  background:#d0f255;
}

#promotion-sync:disabled,
#promotion-analyze:disabled{
  opacity:.5;
  cursor:default;
}

.promotion-settings{
  display:grid;
  grid-template-columns:repeat(3,minmax(170px,210px));
  gap:11px;
}

.promotion-settings label{
  min-width:0;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fafcfb;
}

.promotion-settings label>span:first-child{
  display:block;
  margin-bottom:8px;
  color:var(--muted);
  font-size:8px;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.promotion-input-unit{
  display:flex;
  align-items:center;
  gap:6px;
}

.promotion-input-unit input{
  width:100%;
  min-width:0;
  padding:0;
  border:0;
  outline:0;
  color:var(--ink);
  background:transparent;
  font-size:19px;
  font-weight:850;
  letter-spacing:-.035em;
}

.promotion-input-unit b{
  color:var(--muted);
  font-size:11px;
}

.promotion-settings label:focus-within{
  border-color:#4a9973;
  box-shadow:0 0 0 3px #e7f6ed;
}

.promotion-toolbar-foot{
  margin-top:15px;
  padding-top:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid #edf1ef;
}

.promotion-toolbar-foot>small{
  max-width:700px;
  color:var(--muted);
  font-size:9px;
  line-height:1.45;
}

#promotion-message{
  flex:0 0 auto;
  margin:0;
  padding:6px 9px;
  border-radius:8px;
  color:#17603e;
  background:#e7f4ec;
  font-size:9px;
  font-weight:850;
}

/* Promotions section heading */
.promotion-list-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-top:8px;
}

.promotion-list-heading h2{
  margin:0;
  font-size:21px;
  letter-spacing:-.025em;
}

.promotion-list-heading>span{
  max-width:420px;
  color:var(--muted);
  font-size:9px;
  text-align:right;
}

/* Promotion list */
.promotion-list{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
}

.promotion-list-item{
  width:100%;
  min-width:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}

.promotion-list-item:hover{
  border-color:#b9cec3;
  box-shadow:0 8px 24px rgba(21,55,39,.055);
}

.promotion-list-open{
  width:100%;
  min-height:92px;
  padding:15px 18px;
  display:grid;
  grid-template-columns:minmax(300px,1.25fr) minmax(500px,1.55fr) 22px;
  gap:24px;
  align-items:center;
  border:0;
  color:var(--ink);
  background:transparent;
  cursor:pointer;
  text-align:left;
}

.promotion-list-main{
  min-width:0;
}

.promotion-list-main>small,
.promotion-list-main>strong{
  display:block;
}

.promotion-list-kicker{
  margin:0 0 5px;
  color:#4f8e6f;
  font-size:8px;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.promotion-list-main>strong{
  overflow:hidden;
  font-size:13px;
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.promotion-list-main>small:last-child{
  margin-top:6px;
  color:var(--muted);
  font-size:9px;
}

.promotion-list-summary{
  min-width:0;
  display:grid;
  gap:7px;
}

.promotion-list-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(82px,1fr));
  gap:7px;
}

.promotion-mini-metric{
  min-width:0;
  padding:9px 10px;
  border-radius:10px;
  background:var(--soft);
}

.promotion-mini-metric small,
.promotion-mini-metric b{
  display:block;
}

.promotion-mini-metric small{
  overflow:hidden;
  color:var(--muted);
  font-size:7px;
  font-weight:850;
  letter-spacing:.04em;
  line-height:1.2;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}

.promotion-mini-metric b{
  margin-top:6px;
  font-size:15px;
  line-height:1;
}

.promotion-mini-metric.target{
  background:#e7f4ec;
}

.promotion-mini-metric.target small,
.promotion-mini-metric.target b{
  color:#17603e;
}

.promotion-mini-metric.below{
  background:#fff7dc;
}

.promotion-mini-metric.below small,
.promotion-mini-metric.below b{
  color:#806019;
}

.promotion-mini-metric.loss{
  background:#fff0f0;
}

.promotion-mini-metric.loss small,
.promotion-mini-metric.loss b{
  color:var(--red);
}

.promotion-mini-metric.unavailable{
  background:#eef2ef;
}

.promotion-list-total{
  color:var(--muted);
  font-size:8px;
}

.promotion-list-state{
  justify-self:end;
  min-width:230px;
  padding:12px 14px;
  border-radius:11px;
  background:var(--soft);
}

.promotion-list-state strong,
.promotion-list-state small{
  display:block;
}

.promotion-list-state strong{
  font-size:10px;
}

.promotion-list-state small{
  margin-top:4px;
  color:var(--muted);
  font-size:8px;
}

.promotion-list-arrow{
  display:grid;
  place-items:center;
  color:#809087;
  font-size:22px;
}

/* Open promotion */
.promotion-detail{
  padding:0;
  overflow:hidden;
}

.promotion-detail-head{
  padding:23px 26px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:25px;
  border-bottom:1px solid var(--line);
}

.promotion-detail-title{
  position:relative;
  min-width:0;
  padding-right:38px;
}

.promotion-detail-title h2{
  margin:0 0 8px;
  font-size:21px;
  line-height:1.25;
  letter-spacing:-.025em;
}

.promotion-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px 16px;
  color:var(--muted);
  font-size:9px;
}

.promotion-detail-close{
  position:absolute;
  top:-3px;
  right:0;
  width:30px;
  height:30px;
  padding:0;
  border:0;
  border-radius:50%;
  color:#52645b;
  background:#edf3ef;
  cursor:pointer;
  font-size:18px;
  line-height:1;
}

.promotion-detail-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.promotion-detail-actions>button:not(#promotion-analyze){
  min-height:42px;
  padding:0 14px;
  border:1px solid var(--line);
  border-radius:10px;
  color:var(--green);
  background:#fff;
  cursor:pointer;
  font-size:9px;
  font-weight:850;
}

/* Analysis KPI strip */
.promotion-analysis-summary{
  padding:15px 20px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  background:#f8fbf9;
  border-bottom:1px solid var(--line);
}

.promotion-analysis-summary>div{
  min-width:0;
  min-height:82px;
  padding:13px 14px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
}

.promotion-analysis-summary span{
  color:var(--muted);
  font-size:8px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.promotion-analysis-summary strong{
  font-size:18px;
  letter-spacing:-.035em;
}

.promotion-analysis-note{
  padding:11px 24px;
  color:var(--muted);
  background:#fbfdfc;
  font-size:9px;
  line-height:1.5;
}

.promotion-empty-analysis{
  padding:22px 25px;
}

.promotion-empty-analysis strong,
.promotion-empty-analysis span{
  display:block;
}

.promotion-empty-analysis strong{
  font-size:11px;
}

.promotion-empty-analysis span{
  margin-top:5px;
  color:var(--muted);
  font-size:9px;
}

/* Collapsible calculation */
.promotion-calculation{
  border-top:1px solid var(--line);
}

.promotion-calculation>summary{
  min-height:62px;
  padding:0 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  cursor:pointer;
  list-style:none;
}

.promotion-calculation>summary::-webkit-details-marker{
  display:none;
}

.promotion-calculation>summary strong,
.promotion-calculation>summary small{
  display:block;
}

.promotion-calculation>summary strong{
  font-size:11px;
}

.promotion-calculation>summary small{
  margin-top:4px;
  color:var(--muted);
  font-size:8px;
}

.promotion-calculation>summary i{
  width:8px;
  height:8px;
  border-right:2px solid #809087;
  border-bottom:2px solid #809087;
  transform:rotate(45deg);
  transition:transform .18s ease;
}

.promotion-calculation[open]>summary i{
  transform:rotate(225deg);
}

.promotion-calc-open{
  display:none!important;
}

.promotion-calculation[open] .promotion-calc-closed{
  display:none;
}

.promotion-calculation[open] .promotion-calc-open{
  display:block!important;
}

.promotion-calculation-help{
  padding:10px 24px;
  border-top:1px solid var(--line);
  color:var(--muted);
  background:#fafcfb;
  font-size:9px;
  line-height:1.45;
}

/* Calculation table */
.promotion-table-wrap{
  width:100%;
  max-height:66vh;
  overflow:auto;
  border-top:1px solid var(--line);
}

.promotions-page table{
  width:100%;
  border-collapse:collapse;
}

.promotions-page th{
  position:sticky;
  top:0;
  z-index:2;
  padding:11px 12px;
  color:var(--muted);
  background:#f8fbf9;
  font-size:8px;
  font-weight:850;
  letter-spacing:.05em;
  text-align:right;
  text-transform:uppercase;
  white-space:nowrap;
}

.promotions-page td{
  padding:11px 12px;
  border-top:1px solid #edf1ef;
  font-size:9px;
  text-align:right;
  white-space:nowrap;
}

.promotions-page th:first-child,
.promotions-page td:first-child{
  text-align:left;
}

.promotions-page tbody tr:hover{
  background:#f5faf7;
}

.promotion-sort{
  padding:0;
  border:0;
  color:inherit;
  background:transparent;
  cursor:pointer;
  font:inherit;
  font-weight:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
}

.promotion-status{
  display:inline-flex;
  padding:5px 7px;
  border-radius:7px;
  color:#516058;
  background:#edf1ef;
  font-size:8px;
  font-weight:850;
  white-space:nowrap;
}

.promotion-status.TARGET_OK{
  color:#17603e;
  background:#e4f7eb;
}

.promotion-status.BELOW_TARGET{
  color:#856519;
  background:#fff5cc;
}

.promotion-status.LOSS{
  color:var(--red);
  background:#fff0f0;
}

.promotion-table-wrap td small{
  display:block;
  max-width:240px;
  margin-top:4px;
  color:var(--muted);
  font-size:8px;
  line-height:1.35;
  white-space:normal;
}

/* Responsive */
@media(max-width:1150px){
  .promotion-list-open{
    grid-template-columns:minmax(250px,1fr) minmax(360px,1.35fr) 20px;
    gap:15px;
  }

  .promotion-list-metrics{
    grid-template-columns:repeat(2,minmax(90px,1fr));
  }
}

@media(max-width:800px){
  .promotion-toolbar-head,
  .promotion-detail-head,
  .promotion-list-heading,
  .promotion-toolbar-foot{
    align-items:flex-start;
    flex-direction:column;
  }

  .promotion-settings{
    grid-template-columns:1fr;
  }

  #promotion-sync,
  #promotion-analyze{
    width:100%;
  }

  #promotion-message{
    margin:0;
  }

  .promotion-list-heading>span{
    text-align:left;
  }

  .promotion-list-open{
    min-height:0;
    padding:16px;
    grid-template-columns:minmax(0,1fr) 18px;
    gap:12px;
  }

  .promotion-list-summary,
  .promotion-list-state{
    grid-column:1;
    justify-self:stretch;
  }

  .promotion-list-arrow{
    grid-column:2;
    grid-row:1 / span 2;
  }

  .promotion-analysis-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .promotion-detail-actions{
    width:100%;
  }
}


/* PROMOTION_CARD_DESCRIPTION_V1 */
.promotion-list-description {
  display: block;
  margin-top: 4px;
  max-width: 720px;
  color: #66776f;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.35;
  white-space: normal;
}



/* PROMOTION_SKU_COMPARISON_V1 */
.promotion-sku-link {
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 170px;
  padding: 0;
  border: 0;
  color: var(--ink);
  background: transparent;
  font: inherit;
  cursor: pointer;
  text-align: left;
}

.promotion-sku-link:hover strong {
  color: var(--green);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.promotion-sku-link .sku-photo {
  width: 42px;
  height: 42px;
}

.promotion-sku-dialog .promotion-sku-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) 170px;
  align-items: start;
  gap: 28px;
}

.promotion-sku-dialog .sku-detail-media {
  display: flex;
  justify-content: flex-end;
}

.promotion-sku-dialog .sku-photo.large {
  width: 150px;
  max-width: 100%;
  height: auto;
  margin: 0;
  float: none;
  aspect-ratio: 3/4;
  object-fit: contain;
}

.promotion-sku-dialog .sku-detail-status {
  margin-top: 14px;
}

.promotion-sku-comparison {
  margin: 22px 38px 8px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fbfdfc;
}

.promotion-sku-comparison-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) 34px minmax(0,1fr);
  align-items: stretch;
  gap: 10px;
}

.promotion-comparison-column {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.promotion-comparison-column.promo {
  border-color: #cfe1d8;
  background: #f3f9f6;
}

.promotion-comparison-title {
  display: block;
  margin-bottom: 12px;
  color: var(--green);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.promotion-comparison-column dl {
  margin: 0;
  display: grid;
  gap: 8px;
}

.promotion-comparison-column dl div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid #edf1ef;
}

.promotion-comparison-column dl div:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.promotion-comparison-column dt {
  color: var(--muted);
  font-size: 9px;
}

.promotion-comparison-column dd {
  margin: 0;
  color: var(--ink);
  font-size: 13px;
  font-weight: 850;
}

.promotion-comparison-arrow {
  display: grid;
  place-items: center;
  color: #789488;
  font-size: 22px;
  font-weight: 700;
}

.promotion-sku-extra {
  padding-top: 14px;
}

.promotion-sku-explanation {
  margin: 0 38px 34px;
  padding: 16px 18px;
  border-radius: 12px;
  background: var(--soft);
}

.promotion-sku-explanation strong {
  display: block;
  margin-bottom: 5px;
  font-size: 11px;
}

.promotion-sku-explanation p {
  margin: 0;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.55;
}

@media (max-width: 700px) {
  .promotion-sku-dialog .promotion-sku-head {
    grid-template-columns: 1fr;
  }

  .promotion-sku-dialog .sku-detail-media {
    justify-content: flex-start;
  }

  .promotion-sku-comparison {
    margin-left: 18px;
    margin-right: 18px;
  }

  .promotion-sku-comparison-grid {
    grid-template-columns: 1fr;
  }

  .promotion-comparison-arrow {
    transform: rotate(90deg);
  }

  .promotion-sku-explanation {
    margin-left: 18px;
    margin-right: 18px;
  }
}


/* PROMOTION_TABLE_COMPARISON_V1 */
.promotion-compare-head {
  display: grid;
  grid-template-columns: minmax(62px,auto) 12px minmax(62px,auto);
  align-items: center;
  gap: 5px;
  min-width: 150px;
  margin-top: 5px;
  color: var(--muted);
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: none;
  white-space: nowrap;
}

.promotion-compare-head span:first-child {
  text-align: right;
}

.promotion-compare-head i {
  color: #9aaba2;
  font-style: normal;
  text-align: center;
}

.promotion-compare-head span:last-child {
  text-align: left;
}

.promotion-table-comparison {
  display: grid;
  grid-template-columns: minmax(62px,auto) 12px minmax(62px,auto);
  align-items: center;
  gap: 5px;
  min-width: 150px;
  white-space: nowrap;
}

.promotion-table-comparison .promotion-table-current {
  color: #6f7c75;
  font-size: 9px;
  font-weight: 650;
  text-align: right;
}

.promotion-table-comparison i {
  color: #9aaba2;
  font-size: 10px;
  font-style: normal;
  text-align: center;
}

.promotion-table-comparison .promotion-table-promo {
  color: var(--ink);
  font-size: 9px;
  font-weight: 900;
  text-align: left;
}

.promotion-table-wrap th .promotion-sort {
  min-width: max-content;
}

@media (max-width: 900px) {
  .promotion-table-comparison {
    min-width: 138px;
    grid-template-columns: minmax(56px,auto) 10px minmax(56px,auto);
  }
}


/* PROMOTION_DECISION_TABLE_V1 */
.promotion-sku-extra {
  grid-template-columns: repeat(2, minmax(0,1fr));
}


/* TEAM_SETTINGS_UI_V1 */

.team-settings-heading {
  margin-top: 46px;
}

.team-settings-list {
  display: grid;
  gap: 18px;
}

.team-company-panel {
  max-width: 920px;
  padding: 28px;
}

.team-company-head,
.team-subhead,
.team-member-head,
.team-invitation-row,
.team-member-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.team-company-head {
  align-items: flex-start;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--line);
}

.team-company-head h3 {
  margin: 0 0 7px;
  font-size: 21px;
}

.team-company-head p:not(.eyebrow),
.team-subhead p {
  margin: 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.55;
}

.team-owner-badge,
.team-status {
  display: inline-flex;
  min-height: 28px;
  padding: 0 10px;
  align-items: center;
  border-radius: 999px;
  font-size: 8px;
  font-weight: 850;
  white-space: nowrap;
}

.team-owner-badge {
  color: #173429;
  background: var(--lime);
}

.team-status.active {
  color: #17603e;
  background: #e4f7eb;
}

.team-seat-grid {
  margin: 20px 0 14px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.team-seat-grid article {
  padding: 17px;
  display: grid;
  gap: 6px;
  border-radius: 12px;
  background: var(--soft);
}

.team-seat-grid span,
.team-seat-grid small {
  color: var(--muted);
  font-size: 8px;
}

.team-seat-grid span {
  font-weight: 850;
  text-transform: uppercase;
}

.team-seat-grid strong {
  font-size: 22px;
}

.team-paid-note,
.team-limit-warning {
  margin: 0 0 20px;
  padding: 12px 14px;
  border-radius: 10px;
  font-size: 10px;
  line-height: 1.5;
}

.team-paid-note {
  color: #536159;
  background: #f3f8f5;
}

.team-limit-warning {
  color: #765b11;
  background: #fff8de;
}

.team-invite-form {
  margin-top: 22px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fafcfb;
}

.team-invite-form > label {
  display: grid;
  gap: 8px;
  margin: 18px 0;
  color: #536159;
  font-size: 10px;
  font-weight: 750;
}

.team-invite-form input[type="email"] {
  width: 100%;
  min-height: 46px;
  padding: 0 13px;
  border: 1px solid var(--line);
  border-radius: 10px;
  outline: 0;
  background: #fff;
}

.team-invite-form input[type="email"]:focus {
  border-color: #4a9973;
  box-shadow: 0 0 0 3px #e7f6ed;
}

.team-invite-form fieldset,
.team-member-form fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.team-invite-form legend,
.team-member-form legend {
  margin-bottom: 9px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 850;
}

.team-project-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.team-project-check {
  margin: 0 !important;
  padding: 11px 12px;
  display: flex !important;
  align-items: center;
  gap: 9px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
}

.team-project-check input {
  width: 16px !important;
  min-height: 16px !important;
  flex: 0 0 auto;
}

.team-project-check span {
  overflow: hidden;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.team-invite-form > button[type="submit"] {
  width: auto;
  min-height: 43px;
  padding: 0 18px;
  border: 0;
  border-radius: 10px;
  color: #173429;
  background: var(--lime);
  cursor: pointer;
  font-size: 10px;
  font-weight: 850;
}

.team-invite-form > button:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.team-success {
  min-height: 16px;
  color: var(--green);
  font-size: 9px;
}

.team-subsection {
  margin-top: 28px;
}

.team-subhead {
  align-items: flex-end;
  margin-bottom: 12px;
}

.team-subhead h4 {
  margin: 0 0 5px;
  font-size: 15px;
}

.team-subhead > strong {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 50%;
  background: var(--soft);
  font-size: 11px;
}

.team-member-list,
.team-invitation-list {
  display: grid;
  gap: 10px;
}

.team-member-card {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
}

.team-role {
  display: block;
  margin-bottom: 5px;
  color: var(--muted);
  font-size: 8px;
  font-weight: 850;
  text-transform: uppercase;
}

.team-member-head strong,
.team-invitation-row strong {
  display: block;
  font-size: 11px;
}

.team-member-form {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}

.team-member-actions {
  justify-content: flex-end;
}

.team-member-actions button,
.team-invitation-row button {
  min-height: 37px;
  padding: 0 13px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  cursor: pointer;
  font-size: 9px;
  font-weight: 850;
}

.team-member-actions button[type="submit"] {
  color: #173429;
  border-color: var(--lime);
  background: var(--lime);
}

.team-member-actions .quiet-danger {
  color: var(--red);
  border-color: #efd4d6;
  background: #fffafa;
}

.team-invitation-row {
  padding: 15px 17px;
  border-radius: 11px;
  background: var(--soft);
}

.team-invitation-row small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 8px;
  line-height: 1.45;
}

.team-invitation-row button {
  color: var(--red);
  background: #fff;
}

.team-empty,
.team-empty-copy {
  padding: 18px;
  color: var(--muted);
  border-radius: 10px;
  background: var(--soft);
  font-size: 10px;
  text-align: center;
}

.team-load-error {
  max-width: 920px;
  margin-top: 20px;
  padding: 22px;
}

.team-load-error h3 {
  margin: 0 0 7px;
}

.team-load-error p {
  margin: 0;
  color: var(--red);
  font-size: 10px;
}

@media (max-width: 800px) {
  .team-company-head,
  .team-member-head,
  .team-member-actions,
  .team-invitation-row {
    align-items: stretch;
    flex-direction: column;
  }

  .team-seat-grid,
  .team-project-options {
    grid-template-columns: 1fr;
  }

  .team-member-actions button,
  .team-invitation-row button {
    width: 100%;
  }
}


/* TEAM_INVITATION_AUTH_FLOW_V1 */

.auth-invitation-info {
  margin: 0 0 18px;
  padding: 14px 15px;
  display: grid;
  gap: 6px;
  border: 1px solid #d7e8de;
  border-radius: 11px;
  background: #f3f8f5;
}

.auth-invitation-info strong {
  color: #173429;
  font-size: 11px;
}

.auth-invitation-info span {
  color: #5d6d64;
  font-size: 9px;
  line-height: 1.5;
}

.auth-form input[readonly] {
  color: #536159;
  background: #f1f5f2;
}
