:root{--pink:#ff0057;--cyan:#00d4ff;--ink:#080808;--panel:#101010;--line:#ffffff1f}
*{box-sizing:border-box}
body{margin:0;background:var(--ink);color:#fff;font-family:Arial,Helvetica,sans-serif}
button,input,select{font:inherit}
.admin-app{display:grid;grid-template-columns:260px 1fr;min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;background:#030303;border-right:1px solid var(--line);padding:24px;display:flex;flex-direction:column;gap:10px}
.admin-logo{width:90px;height:90px;object-fit:contain;margin-bottom:18px;filter:drop-shadow(0 0 22px #ff005755)}
.sidebar strong{font-family:Impact,Arial Black,sans-serif;font-size:38px;text-transform:uppercase;line-height:.9}
.sidebar small{color:#9fefff;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.08em}
.maintainer-nav{display:grid;gap:6px;margin-top:18px}
.maintainer-nav button{min-height:40px;border:1px solid transparent;background:#050505;color:#aaa;text-align:left;padding:0 10px;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.08em;cursor:pointer}
.maintainer-nav button.active,.maintainer-nav button:hover{border-color:#ffffff26;color:#fff;background:#ff00571c}
.workspace{padding:28px;min-width:0}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.topbar-actions{display:flex;align-items:center;gap:10px}
.kicker{margin:0 0 5px;color:#ffb6d1;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.12em}
h1,h2{font-family:Impact,Arial Black,sans-serif;text-transform:uppercase;line-height:.9;margin:0}
h1{font-size:60px}
h2{font-size:34px;margin-bottom:8px}
p{color:#bbb;line-height:1.45}
.maintainer-panel{display:none}
.maintainer-panel.active{display:block}
.card{background:var(--panel);border:1px solid var(--line);padding:18px;min-width:0}
.selector-label{max-width:360px;margin:14px 0}
.list{display:grid;gap:12px;margin-top:14px}
.row,.block{border:1px solid #ffffff18;background:#070707;padding:12px;display:grid;gap:10px}
.row{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end}
.product-row{grid-template-columns:1fr 1fr 1.4fr 1fr .8fr auto}
.type-row{grid-template-columns:1fr 1.4fr .8fr auto}
.block-head{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:10px;align-items:end}
.inline-list{display:grid;gap:8px}
.inline-item{display:grid;grid-template-columns:1fr 1fr 120px 34px;gap:8px;align-items:end}
.inline-item.has-measurements{grid-template-columns:1fr 1fr 1.8fr 120px 34px}
.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.check-row{display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid #ffffff18;background:#050505;padding:8px 10px;color:#fff}
.check-row input{width:auto;min-height:0}
.image-size-row{grid-template-columns:1fr 1fr 1fr 1fr 130px auto}
.image-bank-row{grid-template-columns:1.2fr 1fr .7fr 92px 120px auto}
.bank-preview{width:84px;height:64px;border:1px solid #ffffff24;background:#050505;display:grid;place-items:center;overflow:hidden;color:#aaa;font-size:10px;text-transform:uppercase}
.bank-preview img{width:100%;height:100%;object-fit:contain}
.file-button input{margin-top:5px;font-size:10px}
.price-rule-row{grid-template-columns:1fr 1fr 1fr 1fr 140px auto}
.calculator{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:980px}
.calculator-images{grid-column:1/-1;border:1px solid #ffffff18;background:#070707;padding:12px;display:grid;gap:10px}
.calculator-images-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.calculator-images-head strong{font-family:Impact,Arial Black,sans-serif;text-transform:uppercase;font-size:28px}
.calc-image-row{display:grid;grid-template-columns:1fr 1fr 1fr 40px;gap:10px;align-items:end}
.calculator-total{display:grid;align-content:center;gap:4px;border:1px solid #00d4ff66;background:#001217;padding:10px 14px;box-shadow:0 0 18px #00d4ff22}
.calculator-total span{color:#9fefff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.calculator-total strong{font-size:28px}
label{display:grid;gap:5px;color:#aaa;font-size:10px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}
input,select{width:100%;min-height:40px;border:1px solid #ffffff25;background:#050505;color:#fff;padding:8px}
.primary,.secondary,.danger,.icon{border:1px solid #ffffff35;color:#fff;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.08em;cursor:pointer}
.primary{min-height:46px;padding:0 18px;background:linear-gradient(135deg,var(--pink),#9b0037);box-shadow:0 0 24px #ff005744}
.secondary{min-height:40px;padding:0 14px;background:#050505}
.danger,.icon{height:40px;background:#1a050b;border-color:#ff7aa7}
.icon{width:34px;height:34px;padding:0}
.status{min-height:24px;margin-bottom:12px;color:#9fefff;font-weight:900}
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(#0008,#000d),repeating-linear-gradient(0deg,#3a211b 0 28px,#1c100d 29px 31px)}
.login-card{width:min(100%,430px);background:#090909;border:1px solid #ffffff24;padding:28px;box-shadow:0 30px 100px #000}
.login-logo{width:112px;height:112px;object-fit:contain;filter:drop-shadow(0 0 28px #ff005766);margin-bottom:18px}
.login-card h1{font-size:64px;margin-bottom:18px}
.login-card form{display:grid;gap:14px}
.login-card .primary{margin-top:6px}
.login-error{color:#ffb6d1;font-weight:900}
@media(max-width:900px){
  .admin-app{grid-template-columns:1fr}
  .sidebar{position:relative;height:auto}
  .row,.product-row,.type-row,.block-head,.inline-item,.image-size-row,.image-bank-row,.calculator,.calc-image-row,.check-grid{grid-template-columns:1fr}
  .topbar{align-items:flex-start;flex-direction:column}
  h1{font-size:46px}
}
