:root{
  --bg:#06111f;
  --panel:#0b1a2f;
  --panel2:#0f243d;
  --green:#52d273;
  --blue:#2276ff;
  --text:#f3f8ff;
  --muted:#a8bad4;
  --line:#1e395c;
  --danger:#ff6673;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at top left,#123f7b 0,#06111f 34%,#020812 100%);color:var(--text);min-height:100vh}
.wrap{width:min(760px,100%);margin:0 auto;padding:18px 14px 40px}
.card{background:linear-gradient(180deg,rgba(15,36,61,.96),rgba(7,19,34,.96));border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:0 18px 50px rgba(0,0,0,.28);margin:0 0 14px}
.hero{border-top:4px solid var(--green)}
.brand{letter-spacing:.18em;color:var(--green);font-weight:800;font-size:.78rem}
h1{font-size:clamp(2rem,8vw,4rem);line-height:.92;margin:.35em 0 .25em;color:var(--text)}
h2{color:var(--text)}
p{color:var(--muted);line-height:1.45}
.form{display:grid;gap:14px}
label{display:grid;gap:7px;color:#dfeaff;font-weight:650}
input,select,textarea{width:100%;border:1px solid #284669;background:#07182b;color:var(--text);border-radius:15px;padding:15px 14px;font:inherit;outline:none}
input::placeholder,textarea::placeholder{color:#95a5ba;opacity:1}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(34,118,255,.22)}
.additiveChecklist{border:1px solid #284669;background:#07182b;border-radius:18px;padding:14px;display:grid;gap:10px}.additiveChecklist legend{font-weight:800;color:#dfeaff;padding:0 6px}.tickOption{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;background:rgba(15,36,61,.72);cursor:pointer}.tickOption input{width:22px;height:22px;accent-color:var(--green);padding:0}.tickOption span{font-weight:800;color:var(--text)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.litres input{font-size:1.3rem;font-weight:800}
.calc{border:1px solid rgba(82,210,115,.5);background:rgba(82,210,115,.08);border-radius:20px;padding:18px;color:var(--text)}
.calcBig{font-size:3rem;font-weight:900;color:var(--green);line-height:1}
.calcSmall{color:var(--muted);margin-top:6px}
.splitGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.splitDose{display:grid;gap:4px;border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(7,24,43,.72)}
.splitDose b{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:#dfeaff}
.splitDose strong{font-size:1.65rem;line-height:1;color:var(--text)}
.growDose{border-color:rgba(82,210,115,.55)}
.bloomDose{border-color:rgba(57,189,248,.55)}
.additiveTotals{display:grid;gap:6px;margin-top:10px;border-top:1px solid rgba(82,210,115,.25);padding-top:10px}.additiveTotals span{display:flex;justify-content:space-between;gap:10px}.additiveTotals small{color:var(--muted)}.helpText{color:var(--muted);font-weight:500}
.primary,.button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;border:0;border-radius:17px;background:linear-gradient(135deg,var(--green),#39bdf8);color:#001019;text-decoration:none;font-weight:900;font-size:1.05rem;padding:0 18px;cursor:pointer}
.primary:disabled{opacity:.45;cursor:not-allowed}
.message{min-height:24px;font-weight:750}
.success{color:var(--green)}
.error{color:var(--danger)}
summary{cursor:pointer;color:var(--muted)}
.adminLink{text-align:center}
.adminLink a{color:#39bdf8}
.actions{display:flex;gap:10px;flex-wrap:wrap}
.leadTop{display:flex;justify-content:space-between;gap:10px;color:var(--text)}
.pill{display:inline-block;margin-top:10px;border-radius:999px;padding:8px 12px;background:rgba(34,118,255,.15);color:#dceaff;border:1px solid var(--line)}
.summary{color:var(--text)}
.languageBar{padding:12px 14px;border-radius:18px;margin-bottom:12px}
.languageBar label{display:grid;grid-template-columns:auto minmax(230px,320px);gap:10px;align-items:center}
.languageBar span{font-weight:900;color:var(--green);margin-right:4px}
.languageBar select{min-height:46px;padding:10px 14px;border-radius:999px;font-weight:900;font-size:1.03rem}
.dashboard{width:min(1120px,100%)}
.filters{display:grid;grid-template-columns:minmax(180px,320px);gap:12px}
.dashboardGrid{display:grid;grid-template-columns:1.05fr 1fr 1.45fr .9fr;gap:14px;margin-top:12px}
.actionPanel{display:grid;grid-template-columns:190px 1fr auto;gap:10px;align-items:end;border-top:1px solid var(--line);padding-top:14px;margin-top:14px}
.editPanel{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.editPanel summary{font-weight:900;color:#39bdf8}.editGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.editAdditives{border:1px solid var(--line);border-radius:16px;padding:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0}.editAdditives legend{font-weight:900;color:var(--green);padding:0 6px}.editActions{justify-content:space-between}.danger{background:linear-gradient(135deg,#ff6673,#ffb86b)!important;color:#260005!important}
.statusBadge{display:inline-flex;padding:6px 10px;border-radius:999px;border:1px solid var(--line);font-weight:900}
.status-new{background:rgba(34,118,255,.18)}
.status-contacted{background:rgba(255,200,87,.18)}
.status-qualified{background:rgba(82,210,115,.18)}
.status-sample-sent{background:rgba(57,189,248,.2)}
.status-won{background:rgba(82,210,115,.35)}
.status-not-fit{background:rgba(255,102,115,.18)}
.print-only{display:none}
.printChecklist{gap:18px;margin-top:12px;font-weight:800}
.locked{display:none}
.loginCard{border-top:4px solid var(--blue)}
.loginForm{display:grid;gap:12px}
.disabled{pointer-events:none;opacity:.45}
@media(max-width:860px){
  .grid,.dashboardGrid,.actionPanel,.editGrid,.editAdditives{grid-template-columns:1fr}
  .dashboard{width:min(760px,100%)}
  .wrap{padding:12px 10px 34px}
  .card{border-radius:20px;padding:18px}
}
@media print{
  body{background:white!important;color:#111;font-size:11px}
  .wrap{width:100%;padding:0}
  .card{box-shadow:none;border:1px solid #999;background:white;color:#111;border-radius:0;break-inside:avoid;padding:10px;margin:0 0 8px}
  .no-print,.actions,.adminLink,script{display:none!important}
  .print-only{display:block}
  .printChecklist{display:flex}
  .brand,.calcSmall,p{color:#222}
  .leadTop{color:#111}
  .pill{background:white;border:1px solid #333;color:#111}
  .dashboardGrid{grid-template-columns:1fr 1fr 1.4fr .8fr;gap:8px}
  .summary{font-size:12px}
  h1{font-size:22px;margin:0 0 8px;color:#111}
  .statusBadge{border:1px solid #333;background:white}
  .dashboardLead{page-break-inside:avoid}
}
