.sales-module { min-width:0; margin:24px 0; }
.sales-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; }
.sales-module h1 { font-size:clamp(28px,4vw,48px); line-height:1.15; letter-spacing:-1.3px; margin:12px 0 24px; overflow-wrap:anywhere; }
.sales-module h2 { font-size:24px; margin:0 0 18px; }
.sales-module label { display:grid; gap:6px; font-size:13px; color:var(--muted,#6e6e73); min-width:0; }
.sales-module input,.sales-module select,.sales-module button { box-sizing:border-box; max-width:100%; min-width:0; font:inherit; }
.sales-module input,.sales-module select { width:100%; font-size:16px; min-height:46px; padding:10px; border:1px solid var(--line,#d2d2d7); border-radius:12px; background:var(--card,#fff); color:var(--ink,#1d1d1f); margin:0; }
.sales-module button { min-height:44px; padding:10px 16px; border:1px solid var(--line,#d2d2d7); border-radius:12px; background:var(--accent,#0071e3); color:#fff; cursor:pointer; }
.sales-module button.secondary { background:var(--card,#fff); color:var(--ink,#1d1d1f); }
.sales-module :is(input,select,button,a):focus-visible { outline:2px solid var(--accent,#0071e3); outline-offset:3px; }
.sales-module button:disabled { opacity:.55; cursor:wait; }
.sales-select { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(160px,1fr) auto; align-items:end; gap:12px; padding:20px; background:var(--card,#fff); border-radius:20px; }
.sales-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:22px 0; }
.sales-metrics article { background:var(--card,#fff); border:1px solid var(--line,#d2d2d7); border-radius:18px; padding:18px; min-width:0; }
.sales-metrics span { display:block; color:var(--muted); font-size:12px; margin-bottom:12px; }
.sales-metrics strong { display:block; font-size:clamp(22px,2.5vw,32px); font-weight:550; letter-spacing:-.7px; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.sales-metrics small { font-size:14px; font-weight:400; }
.sales-warning { border-left:3px solid #a56715; padding:10px 14px; background:#fff5e5; color:#75450a; line-height:1.5; border-radius:6px; }
.sales-editor,.sales-report,.sales-audit { padding:24px; margin:22px 0; background:var(--card,#fff); border-radius:22px; min-width:0; }
.sales-prices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:18px 0; }
.sales-actions,.sales-day-select { display:flex; flex-wrap:wrap; align-items:end; gap:12px; }
.sales-actions button { flex:1 1 200px; }
.sales-days { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; max-height:240px; overflow:auto; }
.sales-days a { padding:10px 12px; min-height:44px; text-decoration:none; color:var(--ink); border:1px solid var(--line); border-radius:12px; }
.sales-days a span { display:block; font-size:11px; color:var(--muted); margin-top:4px; }
.sales-days a[aria-current] { border-color:var(--accent); background:#0071e309; }
.sales-table-wrap { overflow-x:auto; max-width:100%; min-width:0; -webkit-overflow-scrolling:touch; overscroll-behavior-x:contain; margin:16px 0; }
.sales-table-wrap table { width:100%; min-width:640px; border-collapse:collapse; font-variant-numeric:tabular-nums; }
.sales-table-wrap td,.sales-table-wrap th { padding:12px 10px; font-size:13px; white-space:nowrap; border-bottom:1px solid var(--line,#ddd); }
.sales-table-wrap th { white-space:normal; font-size:11px; }
.sales-module .sales-date-link { color:var(--accent); background:transparent; padding:8px 0; border:0; }
.sales-bars { display:flex; gap:8px; overflow-x:auto; padding:12px 4px; max-width:100%; min-width:0; }
.sales-module .sales-bar-button { display:flex; flex-direction:column; justify-content:flex-end; align-items:center; gap:8px; flex:1 0 92px; height:230px; background:transparent; color:var(--ink); border-color:transparent; padding:8px; font-size:12px; }
.sales-bar-button[aria-pressed=true] { outline:2px solid var(--accent); outline-offset:-2px; }
.sales-bar { display:block; width:38px; height:var(--height); max-height:145px; min-height:3px; background:var(--a,#0071e3); border-radius:5px 5px 0 0; transform-origin:bottom; animation:sales-enter .3s ease both; }
.sales-bar-value { font-size:10px; white-space:nowrap; }
.sales-bar-button small { font-size:10px; color:#8c5314; }
.sales-day-detail { padding:20px 0; border-top:1px solid var(--line); margin-top:20px; }
.sales-day-detail[hidden] { display:none; }
.sales-composition { display:flex; flex-wrap:wrap; align-items:center; gap:24px; }
.sales-pie { width:170px; height:170px; flex:0 0 170px; border-radius:50%; animation:sales-enter .3s ease both; }
.sales-composition ul { padding-left:20px; line-height:1.8; }
.sales-access { max-width:540px; margin:10vh auto; padding:24px; font:16px/1.6 system-ui,sans-serif; }
@keyframes sales-enter { from{opacity:.4;transform:scale(.95)} to{opacity:1;transform:none} }
@media(max-width:1024px) { .sales-select { grid-template-columns:repeat(2,minmax(0,1fr)); } .sales-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
 .sales-module h1 { font-size:29px; }
 .sales-select,.sales-prices { grid-template-columns:minmax(0,1fr); }
 .sales-select,.sales-editor,.sales-report,.sales-audit { padding:16px; }
 .sales-metrics { gap:10px; } .sales-metrics article { padding:14px; }
 .sales-metrics strong { font-size:22px; }
 .sales-module .sales-bar-button { flex-basis:82px; }
 .sales-table-wrap table { min-width:660px; }
 .sales-table-wrap td:first-child,.sales-table-wrap th:first-child { position:sticky; left:0; background:var(--card,#fff); }
 .sales-composition { justify-content:center; gap:8px; }
 .sales-day-select label,.sales-day-select button { flex:1 1 100%; }
}
@media(prefers-reduced-motion:reduce) { .sales-module * { animation-name:bmb-soft-in!important; animation-iteration-count:1!important; transition-property:opacity!important; scroll-behavior:auto!important; } }
@media print { .sales-editor,.sales-select,.sales-audit,.sales-actions { display:none; } .sales-bars { break-inside:avoid; } }

/* Экспорт: доп. расходы, контрагенты, обзор */
.eb .eb-month{grid-template-columns:minmax(0,260px) auto;justify-content:start}
.eb-pick,.eb-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:end;gap:12px;margin:0 0 16px}
.eb-head{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}
#rate .eb-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
.eb-lines{width:100%;border-collapse:collapse}
.eb-lines td,.eb-lines th{padding:6px 4px;text-align:left;vertical-align:middle}
.eb-lines td:nth-child(2){width:28%}.eb-lines td:nth-child(3){width:96px}.eb-lines td:nth-child(4){width:52px}
.sales-module .eb-del{min-width:44px;padding:8px;font-size:20px;line-height:1}
.eb-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.eb-row-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.eb-row-actions form{margin:0}
.eb-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px;margin:12px 0}
.sales-module .eb-checks label,.sales-module .eb-inline{display:flex;flex-direction:row;align-items:center;gap:10px;min-height:44px;color:var(--ink,#1d1d1f);font-size:15px}
.sales-module .eb-checks input,.sales-module .eb-inline input{width:20px;min-height:20px;flex:0 0 20px}
.eb fieldset{border:0;padding:0;margin:12px 0;min-width:0}.eb legend{font-weight:600;padding:0}
.eb-country{max-width:320px}
.eb-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;margin:0}
.eb-table table{width:100%}.eb-table td,.eb-table th{text-align:right;white-space:nowrap;padding:8px}
.eb-table td:first-child,.eb-table th:first-child{text-align:left;white-space:normal}
.eb-neg{color:#b42318}.eb-pos{color:#1a7f37}.eb-flag{display:block;color:#8c5314;font-size:11px}
.eb-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.eb-cards article{background:var(--card,#fff);border:1px solid var(--line,#d2d2d7);border-radius:18px;padding:18px;min-width:0}
.eb-cards h3{margin:0 0 12px;font-size:18px}
.eb-cards dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;margin:0;font-variant-numeric:tabular-nums}
.eb-cards dt{color:var(--muted,#6e6e73)}.eb-cards dd{margin:0;text-align:right}
.eb-cards .eb-result{border-top:1px solid var(--line,#d2d2d7);padding-top:8px;font-weight:600;font-size:18px}
@media(max-width:1024px){.eb-cards{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.eb-pick,.eb-head,#rate .eb-head,.eb .eb-month{grid-template-columns:minmax(0,1fr)}.eb-item{grid-template-columns:minmax(0,1fr) auto}.eb-item button{grid-column:1/-1}.eb-lines{min-width:520px}}

