/* =========================================================
   SCOPE · Admin — Lives workspace (WP3a)
   Namespaced .lv-*, built only on the scope.css tokens (surfaces, lines,
   status palette, spacing 4·8·12·16·20·24·32, radii, motion).
   Surfaces: page (--bg) < card (--panel) < well inside a card (--bg-2).
   ========================================================= */
.lv{--well:var(--bg-2);--tile:var(--panel);--card-bg:linear-gradient(180deg,#161616,#131313);
  display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}
.lv *{min-width:0}
.lv :focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-radius:var(--r-xs)}
.lv .mt{margin-top:0}.lv .mt2{margin-top:var(--sp-2)}
.lv .sp{flex:1}
.lv .mut,.lv-help.mut{color:var(--muted)}
.lv .pos{color:var(--good-text)}.lv .neg{color:var(--bad-text)}.lv .acc{color:var(--orange)}.lv .warn{color:var(--warn-text)}.lv .bad{color:var(--bad-text)}
.lv-num{font-variant-numeric:tabular-nums;font-weight:800}
.lv-num.pos{color:var(--good-text)}.lv-num.neg{color:var(--bad-text)}
.lv-help{font-size:12.5px;line-height:1.55;color:var(--muted-2);font-weight:500;text-wrap:pretty}
.lv-help b{color:var(--text)}
.lv code,.lv-pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.lv code{font-size:12px;background:var(--well);border:1px solid var(--line);border-radius:6px;padding:1px 6px;color:var(--orange-3)}
.lv .w100{width:100%}
.lv-sub{display:inline-flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;color:var(--muted-2);font-weight:600}
.lv-sub svg{width:14px;height:14px;opacity:.75}
.lv-stage{vertical-align:middle}
.tag.lv-stage{letter-spacing:.02em}

/* ---------- KPI tiles ---------- */
.lv-kpis,.lv-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-3)}
.lv-kpi{position:relative;overflow:hidden;background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px 15px;display:flex;flex-direction:column;gap:var(--sp-1);
  box-shadow:var(--hl);transition:border-color .2s,transform .25s var(--ease),box-shadow .25s}
.lv-kpi:hover{border-color:var(--orange-line);transform:translateY(-2px);box-shadow:var(--hl),0 18px 40px -24px var(--orange-glow)}
.lv-kpi>span{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.lv-kpi>b{font-weight:900;font-size:clamp(20px,2vw,27px);line-height:1.15;letter-spacing:-.015em;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-kpi>small{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-kpi.main{background:radial-gradient(360px 160px at 100% 0,rgba(255,115,0,.32),transparent 70%),linear-gradient(160deg,#1f1308,var(--panel));border-color:var(--orange-line)}
.lv-kpi.main>span{color:var(--orange-2)}
.lv-strip .lv-kpi{padding:12px 14px}.lv-strip .lv-kpi>b{font-size:20px}
.lv-est{color:var(--warn-text)}

/* ---------- sections & cards ---------- */
.lv-sec{display:flex;flex-direction:column;gap:var(--sp-3)}
.lv-sec+.lv-sec{margin-top:var(--sp-2)}
.lv-sec-h{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}
.lv-sec-h h2{display:flex;align-items:center;gap:10px;font-weight:900;font-size:15px;letter-spacing:.07em;text-transform:uppercase;line-height:1.2}
.lv-sec-h h2::before{content:"";width:6px;height:18px;border-radius:3px;background:var(--orange);flex:none;box-shadow:0 0 12px rgba(255,115,0,.45)}
.lv-now .lv-sec-h h2::before{display:none}
.lv-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 8px;border-radius:var(--r-pill);background:var(--panel-3);color:var(--muted-2);font-size:11.5px;font-weight:800;font-variant-numeric:tabular-nums}
.lv-count.good{background:var(--good-soft);color:var(--good-text)}
.lv-card{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-3);position:relative;box-shadow:var(--hl),var(--sh-1)}
.lv-card.hi{background:radial-gradient(420px 200px at 100% 0,rgba(255,115,0,.16),transparent 70%),linear-gradient(160deg,#1f1308,var(--panel) 60%);border-color:var(--orange-line)}
.lv-card.warn{border-color:rgba(255,214,10,.4)}
.lv-card.done{border-color:rgba(22,214,107,.25)}
.lv-card-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:26px}
.lv-card-h h3{display:flex;align-items:center;gap:var(--sp-2);font-weight:900;font-size:13px;letter-spacing:.11em;text-transform:uppercase}
.lv-card-h h3 svg{width:16px;height:16px;color:var(--orange)}
.lv-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);align-items:start}
.lv-saved{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--muted)}
.lv-saved svg{width:12px;height:12px;color:var(--good)}
.lv-row-a{display:flex;gap:var(--sp-2);flex-wrap:wrap}
.lv-danger{display:flex;justify-content:flex-end;padding-top:var(--sp-3);border-top:1px dashed var(--line-2);margin-top:var(--sp-2)}
.lv-danger .btn:hover{color:var(--bad-text);border-color:rgba(255,59,48,.5);background:var(--bad-soft)}

/* ---------- empty states ---------- */
.lv-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-2);padding:36px 24px;border:1.5px dashed var(--line-2);border-radius:var(--r);
  background:repeating-linear-gradient(-45deg,rgba(255,255,255,.012) 0 14px,transparent 14px 28px)}
.lv-empty-ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--orange-soft);color:var(--orange);box-shadow:0 0 0 6px rgba(255,115,0,.05),0 12px 30px -12px var(--orange-glow);margin-bottom:var(--sp-1)}
.lv-empty-ic svg{width:22px;height:22px}
.lv-empty b{font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.lv-empty p{max-width:460px;color:var(--muted-2);font-size:13px;line-height:1.55}
.lv-empty .btn{margin-top:6px}
.lv-allgood{display:flex;align-items:center;gap:var(--sp-2);padding:14px 16px;border-radius:var(--r-sm);background:rgba(22,214,107,.06);border:1px solid rgba(22,214,107,.18);color:var(--good-text);font-size:13px;font-weight:600}
.lv-allgood svg{width:16px;height:16px;flex:none}
.lv-allgood.mut{background:transparent;border-style:dashed;border-color:var(--line-2);color:var(--muted)}

/* ---------- lives list ---------- */
.lv-rows{display:flex;flex-direction:column;gap:var(--sp-2)}
.lv-row{--acc:var(--line-3);position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) auto auto auto;align-items:center;gap:var(--sp-4);padding:12px 16px 12px 14px;
  background:var(--card-bg);border:1px solid var(--line);border-radius:16px;color:inherit;box-shadow:var(--hl);
  transition:transform .25s var(--ease),border-color .2s,box-shadow .25s,background .2s}
.lv-row::before{content:"";position:absolute;left:-1px;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--acc);transition:box-shadow .2s}
.lv-row:hover{transform:translateY(-2px);border-color:var(--orange-line);box-shadow:var(--hl),0 18px 40px -22px var(--orange-glow);background:linear-gradient(180deg,#1a1510,#141210)}
.lv-row:hover::before{box-shadow:0 0 12px var(--acc)}
.lv-row[data-stage=prevu]{--acc:var(--info)}.lv-row[data-stage=pret],.lv-row[data-stage=termine]{--acc:var(--good)}
.lv-row[data-stage=en_direct],.lv-row[data-stage=a_importer]{--acc:var(--bad)}
.lv-row[data-stage=a_classer],.lv-row[data-stage=a_cloturer],.lv-row[data-stage=envois]{--acc:var(--warn)}.lv-row[data-stage=a_rapprocher]{--acc:var(--info)}
.lv-date{width:56px;height:60px;border-radius:14px;background:#000;border:2px solid var(--orange);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;box-shadow:0 0 22px -8px var(--orange-glow)}
.lv-date b{font-weight:900;font-size:22px;font-variant-numeric:tabular-nums}
.lv-date small{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-top:3px}
.lv-date i{font-style:normal;font-size:9.5px;font-weight:700;color:var(--muted);margin-top:2px}
.lv-row[data-stage=termine] .lv-date{border-color:var(--line-3);box-shadow:none}
.lv-row[data-stage=termine] .lv-date small{color:var(--muted-2)}
.lv-row-main{display:flex;flex-direction:column;gap:3px}
.lv-row-t{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lv-row-t b{font-weight:900;font-size:15px;text-transform:uppercase;letter-spacing:.01em;line-height:1.2}
.lv-row-s{font-size:12.5px;color:var(--muted);font-weight:600}
.lv-dots{display:flex;gap:var(--sp-1);margin-top:var(--sp-1)}
.lv-dots i{width:16px;height:4px;border-radius:2px;background:var(--line-2)}
.lv-dots i.d{background:var(--orange)}.lv-dots i.w{background:var(--warn)}.lv-dots i.l{background:var(--bad);animation:lvBlink 1.2s infinite}
.lv-stack{display:flex;padding-left:var(--sp-2)}
.lv-stack .lv-th{margin-left:-8px;box-shadow:0 0 0 2px var(--panel)}
.lv-row-n{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:96px}
.lv-row-n b{font-weight:900;font-size:16px;font-variant-numeric:tabular-nums}
.lv-row-n small{font-size:12px;font-weight:700;color:var(--muted)}
.lv-cd{color:var(--orange)}
.lv-row-go{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--r-pill);background:var(--panel-2);border:1px solid var(--line-2);font-size:12px;font-weight:800;color:var(--muted-2);white-space:nowrap;transition:.2s var(--ease-out)}
.lv-row-go svg{width:14px;height:14px;transition:transform .2s var(--ease)}
.lv-row:hover .lv-row-go{background:var(--orange);border-color:var(--orange);color:#000}
.lv-row:hover .lv-row-go svg{transform:translateX(2px)}
.lv-now .lv-row{border-color:rgba(255,59,48,.45);background:linear-gradient(90deg,rgba(255,59,48,.10),var(--panel) 40%)}
.lv-now .lv-sec-h h2{color:var(--bad-text)}

/* thumbs */
.lv-th{width:34px;height:34px;border-radius:var(--r-xs);flex:none;background:#fff center/contain no-repeat;border:2px solid #fff;display:grid;place-items:center}
.lv-th.ph{background:linear-gradient(145deg,var(--orange),#111);border-color:var(--line-2);color:#fff;font-size:10.5px;font-weight:900;letter-spacing:-.02em}
.lv-th.more{background:var(--panel-3);border-color:var(--panel-3);color:var(--muted-2);font-size:10.5px;font-weight:800}
.lv-prod{display:flex;align-items:center;gap:10px}
.lv-prod b{display:block;font-weight:800;font-size:13px;white-space:normal;line-height:1.25}
.lv-prod small{display:block;color:var(--muted);font-size:11.5px;white-space:normal}

/* mini chart */
.lv-legend{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:var(--muted-2);flex-wrap:wrap}
.lv-legend i{width:10px;height:10px;border-radius:3px;margin-left:var(--sp-2)}
.lv-legend i:first-child{margin-left:0}
.lv-legend i.o,.lv-flow i.o,.lv-chart i.o{background:var(--s1)}.lv-legend i.w,.lv-flow i.w,.lv-chart i.w{background:var(--s2)}
.lv-legend i.i,.lv-flow i.i{background:var(--s3)}.lv-legend i.g,.lv-flow i.g{background:var(--s4)}.lv-legend i.y,.lv-flow i.y{background:var(--s5)}
.lv-chart{display:flex;align-items:flex-end;height:180px;gap:2px;padding-top:var(--sp-2);border-bottom:1px solid var(--line);
  background:repeating-linear-gradient(0deg,transparent 0 44px,rgba(255,255,255,.03) 44px 45px)}
.lv-chart-col{display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;color:inherit}
.lv-chart-bars{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:var(--sp-1)}
.lv-chart-bars i{width:min(22px,38%);border-radius:5px 5px 2px 2px;transition:height .8s var(--ease),filter .2s;animation:lvGrow .7s var(--ease) both}
.lv-chart-bars i.neg{background:var(--bad)}
.lv-chart-col:hover i{filter:brightness(1.2)}
.lv-chart-col small{font-size:10.5px;color:var(--muted);font-weight:700;white-space:nowrap;padding-bottom:6px}

/* tables */
.lv-table{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--well)}
.lv-table table{width:100%;border-collapse:collapse;font-size:13px}
.lv-table th,.lv-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}
.lv-table thead th{background:var(--bg);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--muted-2);position:sticky;top:0;z-index:1}
.lv-table tbody tr{transition:background .12s}
.lv-table tbody tr:hover{background:var(--panel-2)}
.lv-table tbody tr:last-child>*{border-bottom:0}
.lv-table .r{text-align:right;font-variant-numeric:tabular-nums}
.lv-table b{font-weight:800}
.lv-table.dense th,.lv-table.dense td{padding:7px 10px}
.lv-buyer{display:inline-flex;align-items:center;gap:var(--sp-2);color:inherit}
.lv-buyer:hover b{color:var(--orange)}
.lv-rank{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;font-size:10.5px;font-weight:900;background:var(--panel-3);color:var(--muted-2)}
.lv-rank.r0{background:var(--orange);color:#000}.lv-rank.r1{background:var(--grey);color:#000}.lv-rank.r2{background:#a4683a;color:#fff}
.lv-recipes{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--sp-2)}
.lv-recipe{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:var(--r-sm);background:var(--well);border:1px solid var(--line)}
.lv-recipe.top{border-color:var(--orange-line);background:linear-gradient(160deg,#1f1308,var(--well))}
.lv-recipe b{font-size:13px;font-weight:800}.lv-recipe small{font-size:11.5px;color:var(--muted)}

/* ---------- stepper = workspace tabs (a richer .pipe) ---------- */
.lv-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);padding:6px;position:relative;
  overflow-x:auto;scrollbar-width:none;box-shadow:var(--hl),var(--sh-1)}
.lv-steps::-webkit-scrollbar{display:none}
.lv-step{position:relative;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:13px;color:inherit;min-width:140px;transition:background .2s}
.lv-step+.lv-step::before{content:"";position:absolute;left:-7px;top:50%;width:14px;height:2px;background:var(--line-2);border-radius:2px}
.lv-step.is-done+.lv-step::before{background:var(--orange)}
.lv-step:hover{background:var(--panel-2)}
.lv-step.is-active{background:linear-gradient(160deg,#241408,#171310);box-shadow:inset 0 0 0 1px var(--orange-line),0 10px 30px -18px var(--orange-glow)}
.lv-step.is-active::after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--orange);box-shadow:0 0 12px var(--orange)}
.lv-step-ic{width:28px;height:28px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:900;background:var(--well);border:1.5px solid var(--line-3);color:var(--muted-2);transition:.2s var(--ease-out)}
.lv-step-ic svg{width:14px;height:14px}
.lv-step.is-done .lv-step-ic{background:var(--orange);border-color:var(--orange);color:#000;box-shadow:0 0 14px -2px var(--orange-glow)}
.lv-step.is-skip .lv-step-ic{background:var(--panel-2);border-color:var(--line-3);color:var(--muted)}
.lv-step.is-warn:not(.is-done) .lv-step-ic{border-color:var(--warn);color:var(--warn-text);background:var(--warn-soft)}
.lv-step.is-live .lv-step-ic{border-color:var(--bad);background:var(--bad-soft)}
.lv-step-tx{display:flex;flex-direction:column;line-height:1.2;overflow:hidden}
.lv-step-tx b{font-weight:900;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.lv-step-tx small{font-size:11.5px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-step.is-active .lv-step-tx b{color:#fff}
.lv-step.is-warn:not(.is-done):not(.is-active) .lv-step-tx small{color:var(--warn-text)}
.lv-pulse{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--bad);box-shadow:0 0 0 0 rgba(255,59,48,.7);animation:lvPulse 1.6s infinite;flex:none}
.lv-tab{display:flex;flex-direction:column;gap:var(--sp-4)}
.lv-tab.lv-anim{animation:lvIn .35s var(--ease) both}

/* ---------- forms ---------- */
.lv-form{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--sp-3)}
.lv-f{display:flex;flex-direction:column;gap:6px;grid-column:span 6}
.lv-f.s2{grid-column:span 2}.lv-f.s3{grid-column:span 3}.lv-f.s4{grid-column:span 4}.lv-f.s6{grid-column:span 6}
.lv-f>span{font-size:10.5px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--muted-2)}
.lv-f>em{font-style:normal;font-size:11.5px;color:var(--muted);font-weight:500;line-height:1.35}
.lv .inp{width:100%}
.lv textarea.inp{height:auto;min-height:64px;padding:10px 12px;resize:vertical;line-height:1.45;background-image:none}
.lv input.inp:not([type=checkbox]),.lv-form-modal .inp{background-image:none;padding-right:12px}
.lv input.inp[inputmode=decimal]{font-variant-numeric:tabular-nums}
.lv-help.s6{grid-column:span 6;display:flex;gap:var(--sp-2);align-items:flex-start;padding:10px 12px;border-radius:var(--r-sm);background:var(--well);border:1px solid var(--line)}
.lv-help svg{width:14px;height:14px;flex:none;margin-top:2px;color:var(--orange)}
.lv-sel{height:30px;max-width:100%;background:var(--well);border:1px solid var(--line-2);border-radius:var(--r-xs);padding:0 26px 0 9px;font-size:12px;font-weight:700;color:var(--text-2);cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 13px) 50%,calc(100% - 9px) 50%;background-size:4px 4px;background-repeat:no-repeat;transition:border-color .15s,box-shadow .15s}
.lv-sel:hover{border-color:var(--line-3)}
.lv-sel:focus{border-color:var(--orange);box-shadow:var(--ring)}
.lv-sel option{background:var(--panel);color:var(--text)}
.lv-switch{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:12.5px;font-weight:700;color:var(--muted-2);cursor:pointer;white-space:nowrap}
.lv-switch input,.lv-opt input{accent-color:var(--orange);width:16px;height:16px}
.lv-search{display:flex;align-items:center;gap:var(--sp-2);flex:1;height:40px;padding:0 12px;border-radius:11px;background:var(--well);border:1px solid var(--line-2);color:var(--muted);transition:border-color .15s,box-shadow .15s}
.lv-search svg{width:16px;height:16px}
.lv-search:focus-within{border-color:var(--orange);box-shadow:var(--ring)}
.lv-search input{flex:1;border:0;background:none;outline:none;height:100%;color:var(--text);font-weight:600}

/* checklist */
.lv-check{display:flex;flex-direction:column;gap:2px}
.lv-ck{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:11px;border:1px solid transparent;background:none;color:inherit;font:inherit;font-size:13px;font-weight:600;text-align:left;width:100%;transition:background .15s,border-color .15s}
.lv-ck:hover{background:var(--panel-2);border-color:var(--line)}
.lv-ck.on>span:not(.lv-ck-box){color:var(--muted);text-decoration:line-through;text-decoration-color:rgba(255,255,255,.25)}
.lv-ck-box{width:20px;height:20px;flex:none;border-radius:6px;border:1.5px solid var(--line-3);background:var(--well);display:grid;place-items:center;color:#000;cursor:pointer;transition:.18s var(--ease)}
.lv-ck-box svg{width:13px;height:13px}
.lv-ck:hover .lv-ck-box{border-color:var(--orange-line)}
.lv-ck.on .lv-ck-box{background:var(--orange);border-color:var(--orange);transform:scale(1.05);box-shadow:0 0 12px -2px var(--orange-glow)}
.lv-ck>span:nth-child(2){flex:1}
.lv-ck-x{opacity:0;border:0;background:none;color:var(--muted);cursor:pointer;padding:4px;border-radius:6px;transition:opacity .15s}
.lv-ck-x svg{width:12px;height:12px}
.lv-ck:hover .lv-ck-x,.lv-ck-x:focus-visible{opacity:1}.lv-ck-x:hover{color:var(--bad-text);background:var(--bad-soft)}
.lv-ck-add{display:flex;gap:var(--sp-2);margin-top:6px}
.lv-ck-add .inp{height:34px}

/* ---------- breaks (Préparer) ---------- */
.lv-breaks{display:flex;flex-direction:column;gap:var(--sp-3)}
.lv-break{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--hl),var(--sh-1);transition:border-color .2s,box-shadow .25s}
.lv-break:hover{border-color:var(--line-3)}
.lv-break.ok{border-color:rgba(255,115,0,.28)}
.lv-break:focus-within{border-color:var(--orange-line);box-shadow:var(--hl),0 18px 50px -30px var(--orange-glow)}
.lv-break-h{display:flex;align-items:center;gap:var(--sp-3);padding:12px 14px;background:linear-gradient(90deg,rgba(255,115,0,.07),transparent 55%);border-bottom:1px solid var(--line);flex-wrap:wrap}
.lv-code{display:inline-grid;place-items:center;min-width:38px;height:30px;padding:0 9px;border-radius:var(--r-xs);background:var(--orange);color:#000;font-weight:900;font-size:14px;letter-spacing:.02em;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.18),0 4px 16px -4px var(--orange-glow);flex:none;font-variant-numeric:tabular-nums}
.lv-code.sm{min-width:28px;height:22px;font-size:11px;border-radius:7px;padding:0 6px;box-shadow:none}
.lv-title-in{flex:1;min-width:180px;height:36px;border:1px solid transparent;border-radius:10px;background:transparent;padding:0 8px;font:900 16px Poppins,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.01em;color:var(--text);outline:none;transition:.15s}
.lv-title-in:hover{border-color:var(--line-2)}
.lv-title-in:focus{border-color:var(--orange);background:var(--well);box-shadow:var(--ring)}
.lv-title-in::placeholder{color:var(--faint);text-transform:none;font-weight:700}
.lv-seg{display:inline-flex;padding:3px;gap:2px;background:var(--well);border:1px solid var(--line);border-radius:11px}
.lv-seg button{border:0;background:none;padding:6px 11px;border-radius:8px;font:700 12px Poppins,system-ui,sans-serif;color:var(--muted-2);cursor:pointer;white-space:nowrap;transition:.15s}
.lv-seg button:hover{color:#fff}
.lv-seg button.on{background:var(--orange);color:#000;box-shadow:0 4px 14px -6px var(--orange-glow)}
.lv-tools{display:inline-flex;gap:2px}
.lv-tools button{width:30px;height:30px;border-radius:var(--r-xs);border:1px solid transparent;background:none;color:var(--muted-2);display:grid;place-items:center;cursor:pointer;transition:.15s}
.lv-tools button svg{width:15px;height:15px}
.lv-tools button:hover{background:var(--panel-2);border-color:var(--line-2);color:#fff}
.lv-tools button.dng:hover{color:var(--bad-text);border-color:rgba(255,59,48,.4);background:var(--bad-soft)}
.lv-tools button[disabled]{opacity:.25;pointer-events:none}
.lv-break-b{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);grid-template-areas:"f p" "b p";gap:var(--sp-3) var(--sp-4);padding:14px}
.lv-break-f{grid-area:f;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:start}
.lv-break-f .lv-f{grid-column:auto}
.lv-break-o{align-self:center;display:inline-flex;gap:6px;align-items:center;font-size:12px;font-weight:700;color:var(--muted-2);white-space:nowrap}
.lv-break-o svg{width:14px;height:14px}
.lv-boxes{grid-area:b;display:flex;flex-direction:column;gap:6px}
.lv-box{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);background:var(--well);border:1px solid var(--line);transition:border-color .15s}
.lv-box:hover{border-color:var(--line-3)}
.lv-box.short{border-color:rgba(255,59,48,.45);background:rgba(255,59,48,.05)}
.lv-box-t{flex:1;display:flex;flex-direction:column;line-height:1.25;overflow:hidden}
.lv-box-t b{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-box-t small{font-size:11.5px;color:var(--muted);font-weight:600}
.lv-box.add{justify-content:flex-start;border:1.5px dashed var(--line-3);background:transparent;color:var(--muted-2);cursor:pointer;font:inherit;text-align:left}
.lv-box.add:hover{border-color:var(--orange);color:#fff;background:rgba(255,115,0,.04)}
.lv-box.add svg{width:34px;height:34px;padding:8px;border-radius:var(--r-xs);background:var(--orange-soft);color:var(--orange);flex:none;transition:.2s var(--ease)}
.lv-box.add:hover svg{background:var(--orange);color:#000;transform:rotate(90deg)}
.lv-box.add span{display:flex;flex-direction:column}.lv-box.add b{font-size:13px}.lv-box.add small{font-size:11.5px;color:var(--muted)}
.lv-qty{display:inline-flex;align-items:center;background:var(--bg);border:1px solid var(--line-2);border-radius:10px;overflow:hidden}
.lv-qty button{width:28px;height:28px;border:0;background:none;color:var(--text-2);font-size:16px;font-weight:800;cursor:pointer;transition:background .12s,color .12s}
.lv-qty button:hover{background:var(--orange);color:#000}
.lv-qty b{min-width:24px;text-align:center;font-weight:900;font-variant-numeric:tabular-nums}
.lv-price{grid-area:p;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;align-self:start}
.lv-price>div{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--well)}
.lv-price span{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lv-price b{font-weight:900;font-size:17px;font-variant-numeric:tabular-nums}
.lv-price small{font-size:11px;font-weight:600;color:var(--muted)}
.lv-price.empty{display:flex;align-items:center;gap:var(--sp-2);padding:14px;background:var(--well);color:var(--muted);font-size:12.5px;font-weight:600}
.lv-price.empty svg{width:14px;height:14px;color:var(--orange)}
.lv-price-warn{grid-column:1/-1;display:flex;gap:var(--sp-2);align-items:flex-start;padding:10px 12px;background:var(--bad-soft)!important;color:var(--bad-text);font-size:12px;font-weight:700;line-height:1.4}
.lv-price-warn svg{width:14px;height:14px;flex:none;margin-top:1px}
.lv-total{display:flex;align-items:center;gap:var(--sp-6);flex-wrap:wrap;padding:14px 18px;border-radius:var(--r);background:linear-gradient(160deg,#1f1308,var(--panel) 60%);border:1px solid var(--orange-line);
  position:sticky;bottom:calc(12px + var(--safe-b));z-index:5;box-shadow:0 20px 50px -20px #000,var(--hl);backdrop-filter:blur(10px)}
.lv-total>div{display:flex;flex-direction:column}
.lv-total span{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lv-total b{font-weight:900;font-size:18px;font-variant-numeric:tabular-nums}

/* box picker (modal) */
.lv-picker{gap:var(--sp-3)}
.lv-pick-bar{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}
.lv-pick-g{display:flex;align-items:center;gap:var(--sp-2);font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin:6px 0 -2px}
.lv-pick-g small{color:var(--muted);letter-spacing:0}
.lv-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.lv-tile{position:relative;display:flex;flex-direction:column;gap:3px;padding:10px;border-radius:16px;background:var(--well);border:1.5px solid var(--line);cursor:pointer;user-select:none;
  transition:transform .2s var(--ease),border-color .15s,box-shadow .2s,background .2s}
.lv-tile:hover{transform:translateY(-2px);border-color:var(--line-3)}
.lv-tile:active{transform:translateY(0) scale(.98)}
.lv-tile.on{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft),0 16px 30px -18px var(--orange-glow);background:#1a120a}
.lv-tile.over{border-color:var(--bad)}
.lv-tile-ph{aspect-ratio:1;border-radius:11px;background:#fff center/contain no-repeat;margin-bottom:6px;display:grid;place-items:center;font-weight:900;font-size:22px;color:#000}
.lv-tile b{font-size:12.5px;font-weight:800;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lv-tile small{font-size:11px;color:var(--muted);font-weight:600}
.lv-tile-f{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:var(--sp-1)}
.lv-tile-f em{margin-left:auto;font-style:normal;font-size:11.5px;font-weight:800;color:var(--muted-2);font-variant-numeric:tabular-nums}
.lv-av{font-size:10.5px;font-weight:800;padding:2px 7px;border-radius:var(--r-pill);background:var(--good-soft);color:var(--good-text)}
.lv-av.zero{background:var(--panel-3);color:var(--muted)}.lv-av.bad{background:var(--bad-soft);color:var(--bad-text)}
.lv-res{font-size:10.5px;font-weight:700;color:var(--warn-text)}
.lv-tile-n{position:absolute;top:6px;right:6px;min-width:26px;height:26px;padding:0 7px;border-radius:var(--r-pill);background:var(--orange);color:#000;font-weight:900;font-size:13px;display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.5);animation:lvPop .3s var(--ease)}
.lv-tile-m{position:absolute;top:6px;left:6px;width:26px;height:26px;border-radius:50%;border:0;background:#000;color:#fff;font-weight:900;font-size:15px;cursor:pointer;box-shadow:0 0 0 1px var(--line-3)}
.lv-tile-m:hover{background:var(--bad)}
.lv-pick-sum{flex:1;font-size:13px;color:var(--muted-2)}
.lv-pick-sum b{color:var(--text)}
.lv-pick-list{display:flex;flex-direction:column;gap:6px}
.lv-pick-live{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;background:var(--well);border:1px solid var(--line);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
.lv-pick-live:hover{border-color:var(--orange);background:var(--panel-2)}
.lv-pick-live b{font-weight:800}.lv-pick-live small{color:var(--muted);font-size:12px}

/* ---------- Voggt ---------- */
.lv-hero{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;background:radial-gradient(600px 220px at 0 0,rgba(255,115,0,.18),transparent 70%),var(--panel);border-color:var(--orange-line)}
.lv-hero-t{display:flex;gap:14px;align-items:flex-start;max-width:720px}
.lv-hero-ic{width:46px;height:46px;flex:none;border-radius:14px;display:grid;place-items:center;background:var(--orange);color:#000;box-shadow:0 10px 30px -10px var(--orange-glow)}
.lv-hero h3{font-weight:900;font-size:16px;text-transform:uppercase;letter-spacing:.04em}
.lv-hero p{color:var(--muted-2);font-size:13px;line-height:1.55;margin-top:var(--sp-1)}
.lv-hero p b{color:#fff}
.lv-hero-a{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}
.lv-csvs{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:var(--sp-3)}
.lv-csv{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--r);background:var(--card-bg);border:1px solid var(--line);box-shadow:var(--hl);transition:border-color .2s}
.lv-csv.ok{border-color:rgba(22,214,107,.28)}
.lv-csv header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lv-csv header>div{display:flex;flex-direction:column}
.lv-csv header b{font-weight:900;font-size:14px;text-transform:uppercase}
.lv-csv header small{font-size:12px;color:var(--muted);font-weight:600}
.lv-pre{margin:0;padding:10px 12px;border-radius:var(--r-sm);background:var(--bg);border:1px solid var(--line);font-size:11.5px;line-height:1.6;color:var(--text-2);overflow-x:auto;white-space:pre}
.lv-pre .mut{color:var(--faint)}
.lv-steps-list{display:flex;flex-direction:column;gap:var(--sp-2);padding-left:20px;font-size:13px;color:var(--muted-2);line-height:1.55}
.lv-steps-list b{color:#fff}
.lv-steps-list li::marker{color:var(--orange);font-weight:900}

/* ---------- En direct ---------- */
.lv-live{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;padding:22px 24px;border-radius:var(--r-lg);background:radial-gradient(600px 240px at 0 0,rgba(255,115,0,.16),transparent 70%),var(--panel);border:1px solid var(--orange-line);box-shadow:var(--hl),var(--sh-2)}
.lv-live.on{background:radial-gradient(700px 260px at 0 0,rgba(255,59,48,.28),transparent 70%),#140b0a;border-color:rgba(255,59,48,.55);box-shadow:0 0 0 1px rgba(255,59,48,.15),0 30px 80px -40px rgba(255,59,48,.8)}
.lv-live-t{display:flex;flex-direction:column;gap:var(--sp-1)}
.lv-live-t b{font-weight:900;font-size:clamp(30px,4vw,46px);line-height:1;letter-spacing:-.015em;font-variant-numeric:tabular-nums}
.lv-live-t small{color:var(--muted-2);font-weight:600;font-size:13px}
.lv-onair{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--sp-2);padding:5px 12px;border-radius:var(--r-pill);background:var(--bad);color:#fff;font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.lv-onair svg{width:14px;height:14px}
.lv-onair .lv-pulse{background:#fff;box-shadow:none;animation:lvBlink 1s infinite}
.lv-onair.off{background:#000;color:var(--orange);border:1px solid var(--orange-line);letter-spacing:.12em}
.lv-live-a{display:flex;gap:var(--sp-2);flex-wrap:wrap}
.lv-tools-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3)}
.lv-tool{position:relative;display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-4);border-radius:var(--r);background:var(--card-bg);border:1px solid var(--line);color:inherit;box-shadow:var(--hl);transition:transform .25s var(--ease),border-color .2s,box-shadow .25s}
.lv-tool:hover{transform:translateY(-3px);border-color:var(--orange);box-shadow:var(--hl),0 18px 40px -20px var(--orange-glow)}
.lv-tool-ic{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--orange-soft);color:var(--orange);margin-bottom:6px;transition:.2s var(--ease-out)}
.lv-tool:hover .lv-tool-ic{background:var(--orange);color:#000}
.lv-tool b{font-weight:900;font-size:14px;text-transform:uppercase;letter-spacing:.03em}
.lv-tool small{font-size:12px;color:var(--muted);font-weight:600}
.lv-tool>svg:last-child{position:absolute;top:14px;right:14px;width:14px;height:14px;color:var(--muted);transition:color .2s,transform .2s var(--ease)}
.lv-tool:hover>svg:last-child{color:var(--orange);transform:translate(2px,-2px)}
.lv-board{display:flex;flex-direction:column;gap:10px}
.lv-board-h{display:flex;align-items:center;gap:10px}
.lv-board-h>div{display:flex;flex-direction:column}.lv-board-h b{font-weight:800}.lv-board-h small{font-size:11.5px;color:var(--muted)}
.lv-board-n{font-weight:900;font-size:28px;font-variant-numeric:tabular-nums;line-height:1}
.lv-board-n small{font-size:14px;color:var(--muted)}
.lv-board-f{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);font-weight:600}
.lv-board-last{display:flex;flex-wrap:wrap;gap:6px}
.lv-board-empty{display:flex;align-items:center;gap:var(--sp-3);padding:12px;border-radius:14px;border:1.5px dashed var(--line-3);color:var(--muted-2)}
.lv-board-empty>svg{width:18px;height:18px;color:var(--orange);flex:none}
.lv-board-empty>span{flex:1;display:flex;flex-direction:column}.lv-board-empty b{color:#fff;font-size:13px}.lv-board-empty small{font-size:12px}
.lv-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 3px;border-radius:var(--r-pill);background:var(--well);border:1px solid var(--line);font-size:12px;animation:lvPop .35s var(--ease)}
.lv-chip .teamdot{width:20px;height:20px;border-radius:50%;font-size:7.5px}
.lv-bar{display:block;height:6px;border-radius:6px;background:var(--panel-3);overflow:hidden;min-width:60px}
.lv-bar>i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--orange),var(--orange-2));box-shadow:0 0 10px rgba(255,115,0,.6);transition:width .6s var(--ease)}
.lv-mini-breaks{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-2)}
.lv-mb{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:10px 12px;border-radius:14px;background:var(--well);border:1px solid var(--line)}
.lv-mb .lv-code{grid-row:span 2}.lv-mb b{font-weight:800;font-size:13px;text-transform:uppercase}.lv-mb small{font-size:11.5px;color:var(--muted)}

/* ---------- Commandes ---------- */
.lv-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;min-height:260px;padding:32px;border-radius:var(--r-lg);border:2px dashed var(--line-3);cursor:pointer;
  background:radial-gradient(500px 220px at 50% 0,rgba(255,115,0,.10),transparent 70%),var(--bg-2);transition:border-color .2s,background .2s,transform .2s var(--ease)}
.lv-drop:hover,.lv-drop.over{border-color:var(--orange);background:radial-gradient(500px 240px at 50% 0,rgba(255,115,0,.20),transparent 70%),#120d09}
.lv-drop.over{transform:scale(1.01)}
.lv-drop:hover .lv-drop-ic,.lv-drop.over .lv-drop-ic{transform:translateY(-3px)}
.lv-drop.busy{pointer-events:none;background-image:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.05) 50%,transparent 70%);background-size:200% 100%;animation:lvShimmer 1.1s linear infinite}
.lv-drop-ic{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:var(--orange);color:#000;box-shadow:0 14px 40px -12px var(--orange-glow);margin-bottom:var(--sp-1);transition:transform .25s var(--ease)}
.lv-drop-ic svg{width:28px;height:28px}
.lv-drop b{font-weight:900;font-size:17px;text-transform:uppercase;letter-spacing:.02em}
.lv-drop small{max-width:520px;color:var(--muted-2);font-size:13px;line-height:1.55}
.lv-toolbar{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}
.lv-legend-how{display:inline-flex;gap:6px}
.lv-split{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:var(--sp-4);align-items:start}
.lv-main,.lv-side{display:flex;flex-direction:column;gap:var(--sp-3)}
.lv-side{position:sticky;top:calc(var(--top) + var(--safe-t) + 16px)}
.lv-note{display:flex;align-items:center;gap:var(--sp-3);padding:11px 14px;border-radius:14px;background:var(--panel);border:1px solid var(--line);font-size:13px;box-shadow:var(--hl)}
.lv-note>div{flex:1;display:flex;flex-direction:column;gap:1px}
.lv-note b{font-weight:800}.lv-note small{color:var(--muted-2);font-size:12px;line-height:1.4}
.lv-note-ic{width:30px;height:30px;flex:none;border-radius:var(--r-xs);display:grid;place-items:center}
.lv-note-ic svg{width:16px;height:16px}
.lv-note.warn{border-color:rgba(255,214,10,.28)}.lv-note.warn .lv-note-ic{background:var(--warn-soft);color:var(--warn-text)}
.lv-note.bad{border-color:rgba(255,59,48,.35);background:linear-gradient(90deg,rgba(255,59,48,.07),var(--panel) 60%)}.lv-note.bad .lv-note-ic{background:var(--bad-soft);color:var(--bad-text)}
.lv-note.info .lv-note-ic{background:var(--info-soft);color:var(--info-text)}
.lv-note.good .lv-note-ic{background:var(--good-soft);color:var(--good-text)}
.lv-note a{text-decoration:underline;text-underline-offset:2px}
.lv-tray{border-radius:var(--r);border:1.5px solid rgba(255,214,10,.45);background:linear-gradient(160deg,rgba(255,214,10,.07),var(--panel) 50%);padding:var(--sp-3);display:flex;flex-direction:column;gap:10px;animation:lvIn .3s var(--ease)}
.lv-tray header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lv-tray header>div{display:flex;flex-direction:column}.lv-tray header b{font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:13px}.lv-tray header small{font-size:12px;color:var(--muted-2)}
.lv-tray-ic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--warn-soft);color:var(--warn-text)}
.lv-tray-ic svg{width:16px;height:16px}
.lv-bk{border-radius:var(--r);background:var(--card-bg);border:1px solid var(--line);overflow:hidden;box-shadow:var(--hl);transition:border-color .2s}
.lv-bk[open]{border-color:var(--line-3)}
.lv-bk summary{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr) 120px 110px 18px;align-items:center;gap:14px;padding:12px 14px;cursor:pointer;user-select:none;transition:background .15s}
.lv-bk summary::-webkit-details-marker{display:none}
.lv-bk summary:hover{background:var(--panel-2)}
.lv-bk summary>svg{width:16px;height:16px;color:var(--muted);transition:transform .25s var(--ease)}
.lv-bk[open] summary>svg{transform:rotate(180deg)}
.lv-bk-t{display:flex;flex-direction:column;line-height:1.25}
.lv-bk-t b{font-weight:900;font-size:13.5px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-bk-t small{font-size:11.5px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-bk-n{display:flex;flex-direction:column;gap:5px}
.lv-bk-n b{font-weight:900;font-size:16px;font-variant-numeric:tabular-nums}.lv-bk-n b small{color:var(--muted);font-size:12px}
.lv-bk-m{display:flex;flex-direction:column;align-items:flex-end}.lv-bk-m b{font-weight:900;font-variant-numeric:tabular-nums}.lv-bk-m small{font-size:12px}
.lv-bk>.lv-table{margin:0 12px 12px}
.lv-bk>.lv-help{padding:0 14px 14px}
.lv-how{display:inline-flex;align-items:center;height:19px;padding:0 7px;border-radius:6px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.lv-how.code{background:var(--good-soft);color:var(--good-text)}.lv-how.auto{background:var(--info-soft);color:var(--info-text)}.lv-how.man{background:var(--orange-soft);color:var(--orange)}
.lv-gifts{display:flex;flex-direction:column;gap:6px}
.lv-gift{display:grid;grid-template-columns:44px minmax(90px,.8fr) minmax(0,1.2fr) minmax(0,1.4fr);gap:10px;align-items:center;padding:8px 10px;border-radius:var(--r-sm);background:var(--well);border:1px solid var(--line);font-size:13px}
.lv-gift.ok{border-color:rgba(22,214,107,.25)}
.lv-gift>span:nth-child(3){color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-check-line{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;padding:9px 12px;border-radius:11px;background:var(--well);border:1px solid var(--line);font-size:12.5px;font-weight:700;color:var(--muted-2)}
.lv-check-line svg{width:14px;height:14px;flex:none}
.lv-check-line.good{color:var(--good-text);border-color:rgba(22,214,107,.25);background:rgba(22,214,107,.05)}
.lv-check-line.bad{color:var(--bad-text);border-color:rgba(255,59,48,.3);background:rgba(255,59,48,.05)}
.lv-check-line .btn{margin-left:auto}
.lv-checks{list-style:none;display:flex;flex-direction:column;gap:6px}
.lv-checks li{display:flex;gap:var(--sp-2);align-items:flex-start;font-size:12.5px;font-weight:600;color:var(--warn-text);line-height:1.4}
.lv-checks svg{width:13px;height:13px;flex:none;margin-top:2px}
.lv-recon{display:flex;flex-direction:column;gap:var(--sp-1)}
.lv-recon>div{display:flex;align-items:center;gap:var(--sp-2);padding:6px 8px;border-radius:var(--r-xs);background:var(--well);font-size:12.5px}
.lv-recon b{font-weight:800}.lv-recon small{font-weight:700;color:var(--muted-2)}
.lv-recon small.warn{color:var(--warn-text)}.lv-recon small.bad{color:var(--bad-text)}
.lv-opt-g{display:flex;flex-direction:column;gap:6px}
.lv-opt{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--r-sm);background:var(--well);border:1px solid var(--line);cursor:pointer;transition:border-color .15s,background .15s}
.lv-opt:hover,.lv-opt:has(input:checked){border-color:var(--orange-line)}
.lv-opt:has(input:checked){background:linear-gradient(160deg,rgba(255,115,0,.06),var(--well) 60%)}
.lv-opt>span{display:flex;flex-direction:column}
.lv-opt b{font-size:13px;font-weight:800}.lv-opt small{font-size:12px;color:var(--muted-2);line-height:1.4}
.lv-opt input{margin-top:2px}
.lv-imp{gap:var(--sp-3)}
.lv-short{display:flex;flex-direction:column;gap:var(--sp-2)}
.lv-short-row{display:flex;align-items:center;gap:var(--sp-3);padding:10px 12px;border-radius:14px;background:rgba(255,59,48,.05);border:1px solid rgba(255,59,48,.3);flex-wrap:wrap;transition:opacity .25s,border-color .25s}
.lv-short-row>span{flex:1;display:flex;flex-direction:column}.lv-short-row b{font-weight:800}.lv-short-row small{font-size:12px;color:var(--muted-2)}
.lv-short-row.done{opacity:.45;border-color:var(--line);background:var(--well)}

/* ---------- Bilan ---------- */
.lv-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.lv-stat{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--hl)}
.lv-stat span{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lv-stat b{font-weight:900;font-size:19px;font-variant-numeric:tabular-nums}
.lv-stat small{font-size:11.5px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-flow{display:flex;align-items:flex-end;gap:2px;height:140px;padding-bottom:2px;border-bottom:1px solid var(--line);
  background:repeating-linear-gradient(0deg,transparent 0 34px,rgba(255,255,255,.03) 34px 35px)}
.lv-flow i{flex:1;min-width:2px;border-radius:3px 3px 0 0;transition:filter .15s;animation:lvGrow .6s var(--ease) both}
.lv-flow i:hover{filter:brightness(1.35)}
.lv-bankrow{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--r-sm);background:var(--well);border:1px solid var(--line);width:100%;color:inherit;font:inherit;text-align:left}
.lv-bankrow>span:first-child{width:28px;height:28px;flex:none;border-radius:var(--r-xs);display:grid;place-items:center;background:var(--panel-3);color:var(--muted-2)}
.lv-bankrow>span:first-child svg{width:14px;height:14px}
.lv-bankrow.ok>span:first-child{background:var(--good-soft);color:var(--good-text)}
.lv-bankrow>div{flex:1;display:flex;flex-direction:column;line-height:1.3;overflow:hidden}
.lv-bankrow b{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-bankrow small{font-size:11.5px;color:var(--muted)}
button.lv-bankrow{cursor:pointer;transition:border-color .15s}button.lv-bankrow:hover{border-color:var(--orange)}

/* ---------- motion, skeletons ---------- */
@keyframes lvIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes lvPop{0%{transform:scale(.6);opacity:0}100%{transform:none;opacity:1}}
@keyframes lvGrow{from{transform:scaleY(.1);transform-origin:bottom}to{transform:none;transform-origin:bottom}}
@keyframes lvPulse{0%{box-shadow:0 0 0 0 rgba(255,59,48,.7)}70%{box-shadow:0 0 0 9px rgba(255,59,48,0)}100%{box-shadow:0 0 0 0 rgba(255,59,48,0)}}
@keyframes lvBlink{50%{opacity:.35}}
@keyframes lvShimmer{from{background-position:120% 0}to{background-position:-80% 0}}
.lv-sk{display:block;border-radius:10px;background:linear-gradient(100deg,var(--panel) 30%,var(--panel-3) 50%,var(--panel) 70%);background-size:200% 100%;animation:lvShimmer 1.2s linear infinite;min-height:14px}
.lv-sk-row{height:46px;border-radius:var(--r-sm)}
.lv-docs{display:flex;flex-direction:column;gap:6px}
@media (prefers-reduced-motion:reduce){.lv *,.lv{animation:none!important;transition:none!important}}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  .lv-split{grid-template-columns:minmax(0,1fr)}
  .lv-side{position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
  .lv-break-b{grid-template-columns:minmax(0,1fr);grid-template-areas:"f" "b" "p"}
}
@media (max-width:1100px){
  .lv-kpis,.lv-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lv-grid2{grid-template-columns:minmax(0,1fr)}
  .lv-steps{grid-template-columns:repeat(6,minmax(140px,1fr))}
}
@media (max-width:900px){
  .lv .inp,.lv-title-in,.lv-sel,.lv-search input{font-size:16px}
  .lv-sel{height:36px}
  .lv-row{grid-template-columns:52px minmax(0,1fr) auto;gap:var(--sp-3);padding:12px}
  .lv-row .lv-stack,.lv-row-go{display:none}
  .lv-date{width:50px;height:54px}
  .lv-tools-g{grid-template-columns:minmax(0,1fr)}
  .lv-tool{flex-direction:row;align-items:center;gap:var(--sp-3)}.lv-tool-ic{margin:0}
  .lv-bk summary{grid-template-columns:auto minmax(0,1fr) auto 18px}
  .lv-bk-n{display:none}
  .lv-gift{grid-template-columns:44px minmax(0,1fr)}
  .lv-gift>span:nth-child(3){grid-column:2}.lv-gift .lv-sel{grid-column:1/-1}
  .lv-csvs{grid-template-columns:minmax(0,1fr)}
  .lv-break-f{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lv-break-o{grid-column:1/-1}
  .lv-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lv-f.s2{grid-column:span 1}.lv-f.s3,.lv-f.s4,.lv-f.s6,.lv-help.s6{grid-column:span 2}
  .lv-total{position:static;gap:var(--sp-4)}
  .lv-table.dense th:nth-child(5),.lv-table.dense td:nth-child(5),.lv-table.dense th:nth-child(6),.lv-table.dense td:nth-child(6){display:none}
  .lv-ck-x{opacity:1}
}
@media (max-width:560px){
  .lv-kpis,.lv-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-2)}
  .lv-kpi{padding:12px}.lv-kpi>b{font-size:18px}
  .lv-card{padding:var(--sp-4)}
  .lv-break-h{gap:var(--sp-2)}.lv-title-in{order:3;flex-basis:100%}
  .lv-break-f{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lv-price{grid-template-columns:1fr 1fr}
  .lv-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lv-live{padding:18px}
  .lv-live-a,.lv-live-a .btn{width:100%}
  .lv-hero{flex-direction:column;align-items:stretch}
  .lv-row-n{min-width:0}
}
@media print{
  .lv-steps,.lv-toolbar,.lv-danger,.lv-side,.btn{display:none!important}
  .lv,.lv-card,.lv-bk,.lv-table{background:#fff!important;color:#000!important;border-color:#ccc!important;box-shadow:none!important}
}
