:root{--ink:#17152b;--muted:#77758a;--paper:#f6f6fb;--card:#fff;--line:#e7e6ef;--violet:#6c4cf1;--pink:#d63b95;--green:#168b5b;--red:#c93d4f;--warning:#fff4d8}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.app-shell{width:min(100% - 28px,1760px);margin-inline:auto}.app-navbar{background:linear-gradient(120deg,#19162f,#31265f);color:#fff;box-shadow:0 8px 28px #17152b25}.navbar-brand,.app-navbar .nav-link{color:#fff}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#fff;background:linear-gradient(135deg,var(--violet),var(--pink));font-weight:800;font-size:.78rem}.brand-mark-large{width:58px;height:58px;border-radius:18px;margin:auto;font-size:1.1rem}.page-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.page-head h1,.product-hero h1{font-size:clamp(1.75rem,3vw,2.65rem);font-weight:760;letter-spacing:-.04em;margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--violet);font-size:.72rem;font-weight:750;margin:0 0 5px}.period-picker{min-width:310px}.period-picker label{display:block;color:var(--muted);font-size:.75rem;margin-bottom:4px}.status-strip{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;background:#e8f8f0;color:#135e42;border:1px solid #bde6d2;border-radius:14px;padding:10px 14px;margin-bottom:14px;font-size:.86rem}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green)}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.kpi,.panel,.preliminary-card,.detail-kpis article,.table-card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 24px #2a225008}.kpi{padding:18px}.kpi span,.detail-kpis span{color:var(--muted);font-size:.8rem}.kpi strong,.detail-kpis strong{display:block;font-size:clamp(1.18rem,2vw,1.8rem);letter-spacing:-.035em;margin:8px 0 4px}.kpi small,.detail-kpis small{display:block;color:var(--muted);font-size:.72rem}.kpi-accent{color:#fff;background:linear-gradient(135deg,#6549e8,#a73fb6);border:0}.kpi-accent span,.kpi-accent small{color:#eee9ff}.preliminary-card{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;margin-top:12px;background:var(--warning)}.preliminary-card h2{font-size:1.1rem;margin:6px 0 2px}.preliminary-card p{margin:0;color:#79652c;font-size:.8rem}.prelim-values{display:flex;gap:26px}.prelim-values span{font-size:.78rem;color:#79652c}.prelim-values strong{display:block;color:var(--ink);font-size:1.15rem}.content-grid,.detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,1fr);gap:12px;margin-top:12px}.panel{padding:18px;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.panel-head h2{font-size:1.1rem;margin:0}.panel-head a,.back-link{color:var(--violet);text-decoration:none;font-weight:650;font-size:.85rem}.chart{height:300px}.risk-list{display:grid;gap:4px}.risk-row{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:7px;border-radius:12px;color:var(--ink);text-decoration:none}.risk-row:hover{background:var(--paper)}.product-thumb{display:grid;place-items:center;width:42px;height:42px;overflow:hidden;border-radius:11px;background:#edeafb;color:var(--violet);font-size:.7rem;font-weight:800}.product-thumb img,.product-image img{width:100%;height:100%;object-fit:cover}.risk-row small,.product-cell small,td small{display:block;color:var(--muted);font-size:.72rem}.risk-date{color:var(--red);font-weight:750}.freshness-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.freshness-grid div{padding:10px;background:var(--paper);border-radius:11px}.freshness-grid span,.freshness-grid small{display:block;color:var(--muted);font-size:.72rem}.freshness-grid strong{display:block;font-size:.85rem;margin:3px 0}.filter-bar{display:grid;grid-template-columns:minmax(240px,340px) minmax(260px,1fr) auto;gap:10px;margin-bottom:14px}.table-card{overflow:hidden}.table{font-size:.84rem}.table thead th{background:#f0eff7;color:#66637b;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:0;padding:12px}.table td{padding:10px 12px;border-color:#efedf4}.num{text-align:right;white-space:nowrap}.num small{display:block}.product-cell{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;min-width:270px}.value-positive{color:var(--green)!important;font-weight:700}.value-negative{color:var(--red)!important;font-weight:700}.empty-state{text-align:center;padding:32px;color:var(--muted)}.product-hero{display:flex;align-items:center;gap:18px;margin:12px 0 18px}.product-image{display:grid;place-items:center;width:96px;height:112px;border-radius:20px;overflow:hidden;background:#e9e6fa;color:var(--violet);font-weight:800}.product-hero p{color:var(--muted);margin:5px 0}.detail-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.detail-kpis article{padding:16px}.metric-list{margin:0}.metric-list div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.metric-list dt{font-weight:500;color:var(--muted)}.metric-list dd{font-weight:700;margin:0}.caption{color:var(--muted);font-size:.78rem;margin:12px 0 0}.forecast-scenarios{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.forecast-scenarios div{background:var(--paper);border-radius:12px;padding:12px;text-align:center}.forecast-scenarios .active{background:#eee9ff;color:#5333d0}.forecast-scenarios span{font-size:.7rem;display:block}.forecast-scenarios strong{font-size:1.2rem}.login-wrap{min-height:calc(100vh - 40px);display:grid;place-items:center}.login-card{width:min(100%,430px);padding:34px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:0 28px 70px #31265f20;text-align:center}.login-card h1{font-weight:780;letter-spacing:-.04em;margin:15px 0 4px}.login-card form{text-align:left;margin:24px 0}.btn-primary{background:var(--violet);border-color:var(--violet)}@media(max-width:1050px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.content-grid{grid-template-columns:1fr}.detail-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.app-shell{width:min(100% - 20px,1760px)}.app-navbar .nav-link{font-size:.78rem}.page-head{display:block}.period-picker{min-width:0;margin-top:12px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.kpi{padding:14px}.kpi:last-child{grid-column:1/-1}.preliminary-card{display:block}.prelim-values{margin-top:12px;justify-content:space-between}.content-grid,.detail-grid{grid-template-columns:1fr}.filter-bar{grid-template-columns:1fr}.detail-kpis{grid-template-columns:repeat(2,1fr)}.product-hero{align-items:flex-start}.product-image{width:74px;height:88px;flex:none}.chart{height:240px}.panel{padding:14px}.num{text-align:left}.table thead{display:none}.table tbody tr{display:block;padding:10px;border-bottom:1px solid var(--line)}.table td{display:flex;justify-content:space-between;gap:10px;border:0;padding:6px}.table td:first-child{display:block}.product-cell{min-width:0}.table td:before{color:var(--muted);font-size:.7rem}.table td:nth-child(2):before{content:"Продажи"}.table td:nth-child(3):before{content:"К перечислению"}.table td:nth-child(4):before{content:"Себестоимость"}.table td:nth-child(5):before{content:"Реклама"}.table td:nth-child(6):before{content:"Прибыль"}.table td:nth-child(7):before{content:"Маржа"}}
