/* ============================================================
   Ristorante · Plancia — interfaccia tavolo-centrica
   Stile premium BLU NOTTE / ORO. Tutto sotto .rp-scope.
   ============================================================ */
.rp-scope{
  --abyss:#081427; --navy:#0c1f3c; --panel:#102746; --panel2:#143158;
  --line:rgba(212,175,55,.16); --line2:rgba(255,255,255,.07);
  --gold:#d4af37; --gold-b:#f2d27a; --gold-d:#a8841f;
  --ink:#eaf1fb; --muted:#93a6c6; --muted2:#6f86aa;
  --free:#3fb27f; --occ:#d4af37; --bill:#e0913c; --resv:#6f8dff;
  --r:18px;
  position:relative; min-height:100vh; color:var(--ink);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  background:
    radial-gradient(120% 80% at 12% -10%, #173a6b 0%, transparent 42%),
    radial-gradient(130% 90% at 100% 0%, #1a2f57 0%, transparent 46%),
    linear-gradient(180deg,#0a1a33 0%, #081427 60%, #060f1f 100%);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.rp-scope *{box-sizing:border-box}
.rp-scope .serif{font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif}
.rp-scope .mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}

/* ---------- layout shell ---------- */
.rp-scope .rp-wrap{max-width:1480px;margin:0 auto;padding:26px 30px 60px}
.rp-scope .rp-top{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:30px}
.rp-scope .rp-brand{display:flex;align-items:center;gap:14px}
.rp-scope .rp-crest{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;
  background:linear-gradient(160deg,#16365f,#0c1f3c);border:1px solid var(--line);
  box-shadow:0 10px 30px -12px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.06)}
.rp-scope .rp-crest b{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:700;
  background:linear-gradient(180deg,var(--gold-b),var(--gold-d));-webkit-background-clip:text;background-clip:text;color:transparent}
.rp-scope .rp-name{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:700;letter-spacing:.4px;line-height:1}
.rp-scope .rp-sub{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-top:3px;font-weight:600}
.rp-scope .rp-spacer{flex:1}
.rp-scope .rp-clock{text-align:right;line-height:1.25}
.rp-scope .rp-clock .t{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:600}
.rp-scope .rp-clock .d{font-size:12px;color:var(--muted);text-transform:capitalize}
.rp-scope .rp-svc{display:flex;background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:999px;padding:4px;gap:2px}
.rp-scope .rp-svc button{border:none;background:transparent;color:var(--muted);font-weight:700;font-size:13px;
  padding:9px 16px;border-radius:999px;cursor:pointer;display:flex;align-items:center;gap:7px;font-family:inherit}
.rp-scope .rp-svc button.on{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02;box-shadow:0 6px 18px -8px rgba(212,175,55,.7)}

/* ---------- dashboard ---------- */
.rp-scope .rp-dash{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:30px}
.rp-scope .kpi{position:relative;background:linear-gradient(180deg,rgba(20,49,88,.6),rgba(12,31,60,.55));
  border:1px solid var(--line2);border-radius:var(--r);padding:20px 20px 18px;overflow:hidden;
  box-shadow:0 18px 40px -28px rgba(0,0,0,.8)}
.rp-scope .kpi:before{content:'';position:absolute;top:0;left:18px;right:18px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.5}
.rp-scope .kpi .k-ic{font-size:18px;opacity:.9}
.rp-scope .kpi .k-v{font-family:'Cormorant Garamond',Georgia,serif;font-size:40px;font-weight:700;line-height:1;margin:8px 0 2px}
.rp-scope .kpi .k-l{font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.rp-scope .kpi.gold .k-v{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));-webkit-background-clip:text;background-clip:text;color:transparent}
.rp-scope .kpi.alarm{border-color:rgba(224,145,60,.4)}
.rp-scope .kpi.alarm .k-v{color:var(--bill)}

/* ---------- section heading ---------- */
.rp-scope .rp-head{display:flex;align-items:center;gap:16px;margin:6px 0 18px}
.rp-scope .rp-head h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:700;letter-spacing:.3px}
.rp-scope .rp-head .rule{flex:1;height:1px;background:linear-gradient(90deg,var(--line),transparent)}
.rp-scope .rp-areatabs{display:flex;gap:6px}
.rp-scope .rp-areatabs button{border:1px solid var(--line2);background:rgba(255,255,255,.03);color:var(--muted);
  font-weight:700;font-size:12.5px;padding:8px 16px;border-radius:999px;cursor:pointer;font-family:inherit}
.rp-scope .rp-areatabs button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.08)}

/* ---------- TABLE GRID (epicentro) ---------- */
.rp-scope .rp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}
.rp-scope .tbl{position:relative;cursor:pointer;border-radius:20px;padding:22px 20px 18px;min-height:172px;
  display:flex;flex-direction:column;border:1px solid var(--line2);
  background:linear-gradient(180deg,rgba(18,39,70,.7),rgba(10,26,51,.7));
  transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease;
  box-shadow:0 16px 38px -26px rgba(0,0,0,.85)}
.rp-scope .tbl:hover{transform:translateY(-3px);border-color:var(--line)}
.rp-scope .tbl:after{content:'';position:absolute;inset:0;border-radius:20px;pointer-events:none;opacity:.5;
  background:radial-gradient(80% 60% at 50% 0%, var(--glow,transparent), transparent 70%)}
.rp-scope .tbl .t-top{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}
.rp-scope .tbl .t-num{font-family:'Cormorant Garamond',Georgia,serif;font-size:54px;font-weight:700;line-height:.9}
.rp-scope .tbl .t-state{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;letter-spacing:1px;
  text-transform:uppercase;padding:6px 11px;border-radius:999px;white-space:nowrap}
.rp-scope .tbl .dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 10px currentColor}
.rp-scope .tbl .t-meta{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;position:relative;z-index:1}
.rp-scope .tbl .t-seats{font-size:13px;color:var(--muted)}
.rp-scope .tbl .t-tot{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:700}
.rp-scope .tbl .t-tot small{font-size:12px;color:var(--muted);font-family:'Inter',sans-serif}
/* status themes */
.rp-scope .tbl.free{--glow:rgba(63,178,127,.16)}
.rp-scope .tbl.free .t-state{background:rgba(63,178,127,.12);color:var(--free)}
.rp-scope .tbl.free .t-num{color:#cfe5db}
.rp-scope .tbl.seated{--glow:rgba(212,175,55,.22);border-color:var(--line)}
.rp-scope .tbl.seated .t-state{background:rgba(212,175,55,.14);color:var(--gold)}
.rp-scope .tbl.seated .t-num{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));-webkit-background-clip:text;background-clip:text;color:transparent}
.rp-scope .tbl.bill{--glow:rgba(224,145,60,.22);border-color:rgba(224,145,60,.4)}
.rp-scope .tbl.bill .t-state{background:rgba(224,145,60,.14);color:var(--bill)}
.rp-scope .tbl.bill .t-num{color:#f0c79b}
.rp-scope .tbl.reserved{--glow:rgba(111,141,255,.18)}
.rp-scope .tbl.reserved .t-state{background:rgba(111,141,255,.14);color:var(--resv)}
.rp-scope .tbl.reserved .t-num{color:#c7d2ff}
.rp-scope .tbl.sel{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 24px 50px -24px rgba(212,175,55,.5)}

/* ---------- COMMAND DECK (drawer) ---------- */
.rp-scope .rp-deck{position:fixed;top:0;right:0;height:100%;width:min(460px,94vw);z-index:60;
  transform:translateX(102%);transition:transform .32s cubic-bezier(.22,.61,.36,1);
  
  background:linear-gradient(180deg,#0e244a 0%, #0a1c38 100%);
  border-left:1px solid var(--line);box-shadow:-30px 0 80px -30px rgba(0,0,0,.9);display:flex;flex-direction:column}
.rp-scope .rp-deck.open{transform:translateX(0)}
.rp-scope .rp-scrim{position:fixed;inset:0;background:rgba(4,10,20,.55);backdrop-filter:blur(2px);z-index:55;opacity:0;pointer-events:none;transition:opacity .3s}
.rp-scope .rp-scrim.open{opacity:1;pointer-events:auto}
.rp-scope .dk-head{padding:24px 26px 18px;border-bottom:1px solid var(--line2);position:relative;overflow:hidden}
.rp-scope .dk-head:before{content:'';position:absolute;top:-40%;right:-10%;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,55,.18),transparent 65%)}
.rp-scope .dk-ey{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:700}
.rp-scope .dk-num{font-family:'Cormorant Garamond',Georgia,serif;font-size:64px;font-weight:700;line-height:.95;
  background:linear-gradient(180deg,var(--gold-b),var(--gold-d));-webkit-background-clip:text;background-clip:text;color:transparent}
.rp-scope .dk-meta{color:var(--muted);font-size:13px;margin-top:2px}
.rp-scope .dk-x{position:absolute;top:20px;right:20px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line2);
  background:rgba(255,255,255,.04);color:var(--ink);font-size:18px;cursor:pointer}
.rp-scope .dk-body{flex:1;overflow:auto;padding:20px 24px}
/* action tiles */
.rp-scope .dk-acts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}
.rp-scope .act{display:flex;flex-direction:column;gap:6px;align-items:flex-start;text-align:left;cursor:pointer;
  border:1px solid var(--line2);border-radius:14px;padding:15px 16px;color:var(--ink);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));font-family:inherit;transition:.14s}
.rp-scope .act:hover{border-color:var(--gold);transform:translateY(-2px)}
.rp-scope .act .a-ic{font-size:20px}
.rp-scope .act .a-l{font-weight:700;font-size:14px}
.rp-scope .act .a-s{font-size:11px;color:var(--muted)}
.rp-scope .act.primary{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02;border-color:transparent;grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}
.rp-scope .act.primary .a-l{font-size:16px}.rp-scope .act.primary .a-s{color:#5a4708}
.rp-scope .act.primary .a-amt{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:700}
.rp-scope .act.ghost{background:transparent}
.rp-scope .act.danger:hover{border-color:var(--bill)}
/* order list */
.rp-scope .dk-sec{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin:18px 0 10px;font-weight:700}
.rp-scope .ord{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line2)}
.rp-scope .ord .q{min-width:30px;height:30px;border-radius:8px;background:rgba(212,175,55,.14);color:var(--gold);
  font-weight:800;display:grid;place-items:center;font-size:14px}
.rp-scope .ord .n{flex:1;font-size:14px}
.rp-scope .ord .n small{display:block;color:var(--muted2);font-size:11px}
.rp-scope .ord .p{font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;font-weight:600}
.rp-scope .ord .rm{background:none;border:none;color:var(--muted2);cursor:pointer;font-size:16px;padding:4px}
.rp-scope .dk-empty{text-align:center;color:var(--muted);padding:30px 10px;font-size:14px}
.rp-scope .dk-empty .e-ic{font-size:34px;opacity:.5;margin-bottom:8px}
.rp-scope .dk-foot{border-top:1px solid var(--line2);padding:16px 24px 22px;background:rgba(8,18,36,.6)}
.rp-scope .tot-row{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);padding:4px 0}
.rp-scope .tot-row.grand{color:var(--ink);padding-top:10px;margin-top:6px;border-top:1px solid var(--line2)}
.rp-scope .tot-row.grand b{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:700;
  background:linear-gradient(180deg,var(--gold-b),var(--gold-d));-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- modal (menu picker / dialogs) ---------- */
.rp-scope .rp-modal{position:fixed;inset:0;z-index:70;display:none;align-items:center;justify-content:center;padding:20px}
.rp-scope .rp-modal.open{display:flex}
.rp-scope .rp-modal .bg{position:absolute;inset:0;background:rgba(4,10,20,.66);backdrop-filter:blur(3px)}
.rp-scope .rp-sheet{position:relative;width:min(880px,100%);max-height:88vh;display:flex;flex-direction:column;
  background:linear-gradient(180deg,#0e244a,#0a1c38);border:1px solid var(--line);border-radius:22px;overflow:hidden;
  box-shadow:0 40px 100px -40px #000}
.rp-scope .sh-head{display:flex;align-items:center;gap:14px;padding:20px 24px;border-bottom:1px solid var(--line2)}
.rp-scope .sh-head h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:700;flex:1}
.rp-scope .sh-tbl{background:rgba(212,175,55,.14);color:var(--gold);font-weight:800;font-size:13px;padding:5px 13px;border-radius:999px}
.rp-scope .sh-body{padding:18px 24px;overflow:auto}
.rp-scope .cats{display:flex;gap:8px;overflow:auto;padding-bottom:14px}
.rp-scope .cats button{flex:0 0 auto;border:1px solid var(--line2);background:rgba(255,255,255,.03);color:var(--muted);
  font-weight:700;font-size:13px;padding:8px 16px;border-radius:999px;cursor:pointer;white-space:nowrap;font-family:inherit}
.rp-scope .cats button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.08)}
.rp-scope .dishes{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.rp-scope .dish{border:1px solid var(--line2);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.025);display:flex;flex-direction:column;gap:8px}
.rp-scope .dish .d-t{font-weight:700;font-size:14.5px}
.rp-scope .dish .d-c{font-size:11.5px;color:var(--muted2);text-transform:uppercase;letter-spacing:1px}
.rp-scope .dish .d-b{display:flex;align-items:center;justify-content:space-between;margin-top:auto}
.rp-scope .dish .d-p{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:700}
.rp-scope .dish .d-add{border:none;background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02;font-weight:800;
  width:38px;height:38px;border-radius:11px;font-size:20px;cursor:pointer}
.rp-scope .dish .stp{display:flex;align-items:center;gap:10px}
.rp-scope .dish .stp button{width:34px;height:34px;border-radius:9px;border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink);font-size:18px;cursor:pointer}
.rp-scope .dish .stp b{font-size:16px;min-width:18px;text-align:center}
.rp-scope .sh-foot{display:flex;gap:12px;align-items:center;padding:16px 24px;border-top:1px solid var(--line2)}
.rp-scope .btn{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink);font-weight:700;font-size:14px;
  padding:13px 22px;border-radius:12px;cursor:pointer;font-family:inherit}
.rp-scope .btn.primary{flex:1;border:none;background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02;
  box-shadow:0 14px 30px -14px rgba(212,175,55,.7)}
.rp-scope .btn.primary.dis{opacity:.4;pointer-events:none;box-shadow:none}
.rp-scope .field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.rp-scope .field label{font-size:12px;color:var(--muted);letter-spacing:.4px}
.rp-scope .field input,.rp-scope .field select{background:#0a1c38;border:1px solid var(--line2);border-radius:11px;
  padding:13px 15px;color:var(--ink);font-size:15px;font-family:inherit}
.rp-scope .field input:focus,.rp-scope .field select:focus{outline:none;border-color:var(--gold)}
.rp-scope .frow{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* ---------- reservations strip ---------- */
.rp-scope .rp-resv{display:flex;gap:12px;overflow:auto;padding-bottom:6px;margin-bottom:26px}
.rp-scope .rv{flex:0 0 auto;min-width:210px;border:1px solid var(--line2);border-radius:14px;padding:14px 16px;background:rgba(111,141,255,.06)}
.rp-scope .rv .rv-t{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:700;color:#c7d2ff}
.rp-scope .rv .rv-n{font-size:14px;margin-top:2px}
.rp-scope .rv .rv-m{font-size:12px;color:var(--muted)}

/* ---------- toast ---------- */
.rp-scope .rp-toasts{position:fixed;right:22px;bottom:22px;z-index:90;display:flex;flex-direction:column;gap:10px}
.rp-scope .rp-toast{background:linear-gradient(180deg,#143158,#0c1f3c);border:1px solid var(--line);
  border-left:3px solid var(--gold);border-radius:12px;padding:13px 18px;min-width:240px;
  box-shadow:0 20px 50px -20px #000;animation:rpin .3s ease}
.rp-scope .rp-toast b{display:block;font-size:13px;color:var(--gold)}
.rp-scope .rp-toast span{font-size:13px;color:var(--ink)}
@keyframes rpin{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}

/* ---------- responsive ---------- */
@media(max-width:1100px){.rp-scope .rp-dash{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){
  .rp-scope .rp-wrap{padding:18px 16px 50px}
  .rp-scope .rp-dash{grid-template-columns:repeat(2,1fr);gap:12px}
  .rp-scope .kpi .k-v{font-size:32px}
  .rp-scope .rp-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
  .rp-scope .tbl .t-num{font-size:44px}
}
@media (prefers-reduced-motion: reduce){.rp-scope *{transition:none!important;animation:none!important}}

/* ============================================================
   AREA AMMINISTRAZIONE + TABELLONI (cucina / sala / totem)
   ============================================================ */
.rp-scope .adm-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.rp-scope .adm-nav button{border:1px solid var(--line2);background:rgba(255,255,255,.03);color:var(--muted);
  font-weight:700;font-size:13.5px;padding:11px 18px;border-radius:12px;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:9px}
.rp-scope .adm-nav button .nb{min-width:20px;height:20px;border-radius:999px;background:rgba(212,175,55,.18);color:var(--gold);font-size:11px;font-weight:800;display:grid;place-items:center;padding:0 6px}
.rp-scope .adm-nav button .nl{width:9px;height:9px;border-radius:50%;background:var(--free);animation:rppulse 1.4s infinite}
@keyframes rppulse{0%{box-shadow:0 0 0 0 rgba(63,178,127,.6)}70%{box-shadow:0 0 0 7px rgba(63,178,127,0)}100%{box-shadow:0 0 0 0 rgba(63,178,127,0)}}
.rp-scope .adm-nav button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.08)}
.rp-scope .adm-bar{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.rp-scope .adm-bar .sp{flex:1}
.rp-scope .seg{display:flex;background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:999px;padding:4px;gap:2px}
.rp-scope .seg button{border:none;background:transparent;color:var(--muted);font-weight:700;font-size:12.5px;padding:8px 15px;border-radius:999px;cursor:pointer;font-family:inherit}
.rp-scope .seg button.on{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02}

/* generic list rows */
.rp-scope .lrow{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line2);border-radius:14px;
  background:linear-gradient(180deg,rgba(20,49,88,.4),rgba(12,31,60,.4));margin-bottom:10px}
.rp-scope .lrow .av{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;font-weight:800;font-size:16px;flex:0 0 auto}
.rp-scope .lrow .nm{flex:1}
.rp-scope .lrow .nm .t{font-weight:700;font-size:15px}
.rp-scope .lrow .nm .s{font-size:12.5px;color:var(--muted);margin-top:2px}
.rp-scope .lrow .val{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:700}
.rp-scope .chip{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;
  padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.06);color:var(--muted)}
.rp-scope .chip.gold{background:rgba(212,175,55,.14);color:var(--gold)}
.rp-scope .chip.green{background:rgba(63,178,127,.14);color:var(--free)}
.rp-scope .chip.amber{background:rgba(224,145,60,.16);color:var(--bill)}
.rp-scope .chip.blue{background:rgba(111,141,255,.14);color:var(--resv)}
.rp-scope .ibtn{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink);font-weight:700;font-size:12.5px;
  padding:8px 13px;border-radius:10px;cursor:pointer;font-family:inherit}
.rp-scope .ibtn.gold{border-color:var(--gold);color:var(--gold)}
.rp-scope .ibtn.danger{border-color:rgba(224,145,60,.4);color:var(--bill)}
.rp-scope .empty{text-align:center;color:var(--muted);padding:46px 18px;border:1px dashed var(--line2);border-radius:16px}
.rp-scope .empty .e-ic{font-size:40px;opacity:.5;margin-bottom:10px}
.rp-scope .stockalarm{background:rgba(224,145,60,.12);border:1px solid var(--bill);color:var(--bill);border-radius:14px;padding:13px 18px;font-weight:700;margin-bottom:16px}
.rp-scope .mcheck{display:flex;align-items:flex-start;gap:11px;cursor:pointer;font-size:14px;padding:6px 0}
.rp-scope .mcheck input{width:20px;height:20px;margin-top:2px;accent-color:var(--gold);flex:0 0 auto}
.rp-scope .mcheck .mc-t b{display:block}.rp-scope .mcheck .mc-t small{color:var(--muted);font-size:12.5px}
.rp-scope .gfields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.rp-scope .gfields .full{grid-column:1/-1}

/* KDS — tabellone cucina */
.rp-scope.board{min-height:100vh}
.rp-scope .kds-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.rp-scope .ticket{border:1px solid var(--line2);border-radius:16px;overflow:hidden;background:linear-gradient(180deg,rgba(20,49,88,.5),rgba(12,31,60,.5));display:flex;flex-direction:column}
.rp-scope .ticket.urgent{border-color:var(--bill);box-shadow:0 0 0 1px rgba(224,145,60,.4)}
.rp-scope .tk-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line2);background:rgba(0,0,0,.18)}
.rp-scope .tk-head .tk-n{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:700;line-height:1}
.rp-scope .tk-head .tk-mins{font-size:12px;color:var(--muted)}
.rp-scope .tk-body{padding:8px 12px}
.rp-scope .tk-item{display:flex;align-items:center;gap:11px;padding:10px 6px;border-bottom:1px solid var(--line2)}
.rp-scope .tk-item:last-child{border-bottom:none}
.rp-scope .tk-item .q{min-width:28px;height:28px;border-radius:8px;background:rgba(212,175,55,.14);color:var(--gold);font-weight:800;display:grid;place-items:center}
.rp-scope .tk-item .nm{flex:1;font-size:14.5px}
.rp-scope .tk-item.done .nm{opacity:.45;text-decoration:line-through}
.rp-scope .tk-item .st{font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;padding:3px 9px;border-radius:999px}
.rp-scope .tk-item .st.inviato{background:rgba(111,141,255,.16);color:var(--resv)}
.rp-scope .tk-item .st.prep{background:rgba(212,175,55,.16);color:var(--gold)}
.rp-scope .tk-item .st.pronto{background:rgba(63,178,127,.16);color:var(--free)}
.rp-scope .tk-foot{padding:12px;border-top:1px solid var(--line2);display:flex;gap:8px}
.rp-scope .tk-foot button{flex:1;border:none;border-radius:11px;padding:12px;font-weight:800;font-size:13px;cursor:pointer;font-family:inherit}
.rp-scope .tk-foot .adv{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02}
.rp-scope .tk-foot .done{background:rgba(63,178,127,.18);color:var(--free);border:1px solid rgba(63,178,127,.4)!important}
.rp-scope .board-top{display:flex;align-items:center;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.rp-scope .board-top h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:32px;font-weight:700}
.rp-scope .board-top .eyebrow{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:700}

/* SALA board — forecast */
.rp-scope .fc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:26px}
.rp-scope .fc{border:1px solid var(--line2);border-radius:14px;padding:14px 16px;background:rgba(111,141,255,.05)}
.rp-scope .fc .fh{display:flex;justify-content:space-between;align-items:baseline}
.rp-scope .fc .fh .ft{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:700}
.rp-scope .fc .fh .fp{font-size:12px;color:var(--muted)}
.rp-scope .fc .bar{height:7px;border-radius:999px;background:rgba(255,255,255,.08);margin-top:10px;overflow:hidden}
.rp-scope .fc .bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold-d),var(--gold-b))}
.rp-scope .fc.full .bar i{background:linear-gradient(90deg,#b5532f,var(--bill))}
.rp-scope .fc .fm{font-size:11.5px;color:var(--muted);margin-top:7px}

/* TOTEM */
.rp-scope.totem .tt-hero{text-align:center;padding:34px 20px 24px}
.rp-scope.totem .tt-hero .h{font-family:'Cormorant Garamond',Georgia,serif;font-size:44px;font-weight:700}
.rp-scope.totem .tt-hero .s{color:var(--muted);margin-top:6px;font-size:15px}
.rp-scope.totem .tt-cart{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(8,18,36,.4),rgba(8,18,36,.92));
  border-top:1px solid var(--line);padding:16px 20px;display:flex;align-items:center;gap:14px;margin-top:20px}
.rp-scope.totem .tt-cart .tc-tot{flex:1;font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:700}

/* ============================================================
   AREA AMMINISTRAZIONE + TABELLONI (cucina / sala / totem)
   ============================================================ */
/* nav admin */
.rp-scope .adm-nav{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 24px}
.rp-scope .adm-nav button{position:relative;border:1px solid var(--line2);background:rgba(255,255,255,.03);color:var(--muted);
  font-weight:700;font-size:13.5px;padding:11px 20px;border-radius:999px;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:8px}
.rp-scope .adm-nav button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.08)}
.rp-scope .adm-nav .badge{background:var(--bill);color:#231a02;font-size:11px;font-weight:800;border-radius:999px;padding:1px 7px}
.rp-scope .adm-nav .ni-light{width:9px;height:9px;border-radius:50%;background:var(--bill);box-shadow:0 0 8px var(--bill);animation:rppulse 1.2s infinite}
@keyframes rppulse{0%,100%{opacity:1}50%{opacity:.35}}
/* segmented sub-nav */
.rp-scope .seg{display:inline-flex;background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:999px;padding:4px;gap:2px;margin-bottom:20px}
.rp-scope .seg button{border:none;background:transparent;color:var(--muted);font-weight:700;font-size:13px;padding:8px 16px;border-radius:999px;cursor:pointer;font-family:inherit}
.rp-scope .seg button.on{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02}
/* admin top bar */
.rp-scope .adm-bar{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.rp-scope .adm-bar .grow{flex:1}
/* list rows */
.rp-scope .lrow{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line2);border-radius:14px;
  background:linear-gradient(180deg,rgba(20,49,88,.4),rgba(12,31,60,.4));margin-bottom:10px}
.rp-scope .lrow .l-main{flex:1;min-width:0}
.rp-scope .lrow .l-t{font-weight:700;font-size:15px;display:flex;align-items:center;gap:9px}
.rp-scope .lrow .l-s{font-size:12.5px;color:var(--muted);margin-top:2px}
.rp-scope .lrow .l-p{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:700}
.rp-scope .lrow.low{border-color:rgba(224,145,60,.45);background:rgba(224,145,60,.06)}
.rp-scope .swatch{width:14px;height:14px;border-radius:4px;flex:0 0 auto}
.rp-scope .chip{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:4px 10px;border-radius:999px;white-space:nowrap}
.rp-scope .chip.k{background:rgba(212,175,55,.14);color:var(--gold)}
.rp-scope .chip.b{background:rgba(111,141,255,.14);color:var(--resv)}
.rp-scope .chip.off{background:rgba(255,255,255,.06);color:var(--muted)}
.rp-scope .chip.low{background:rgba(224,145,60,.16);color:var(--bill)}
.rp-scope .chip.auto{background:rgba(63,178,127,.14);color:var(--free)}
.rp-scope .ibtn{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink);width:38px;height:38px;border-radius:10px;
  cursor:pointer;font-size:16px;display:grid;place-items:center;flex:0 0 auto}
.rp-scope .ibtn:hover{border-color:var(--gold)}
.rp-scope .ibtn.danger:hover{border-color:var(--bill);color:var(--bill)}
.rp-scope .empty{text-align:center;color:var(--muted);padding:46px 20px;border:1px dashed var(--line2);border-radius:16px}
.rp-scope .empty .e-ic{font-size:40px;opacity:.5;margin-bottom:10px}
.rp-scope .stockalarm{display:flex;align-items:center;gap:12px;border:1px solid rgba(224,145,60,.4);background:rgba(224,145,60,.08);
  border-radius:14px;padding:14px 18px;margin-bottom:18px;color:#f0c79b;font-weight:600}
.rp-scope .stockalarm b{color:var(--bill)}
/* magazzino spunta + campi */
.rp-scope .mcheck{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line2);border-radius:12px;
  background:rgba(255,255,255,.025);cursor:pointer;margin-bottom:14px}
.rp-scope .mcheck input{width:20px;height:20px;accent-color:var(--gold)}
.rp-scope .mcheck .m-t{font-weight:700;font-size:14px}.rp-scope .mcheck .m-s{font-size:12px;color:var(--muted)}
.rp-scope .gfields{border:1px solid var(--line2);border-radius:12px;padding:16px;margin-bottom:14px;background:rgba(0,0,0,.12)}
.rp-scope .grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.rp-scope .toggle{display:inline-flex;align-items:center;gap:12px;cursor:pointer}
.rp-scope .toggle .tk{width:50px;height:28px;border-radius:999px;background:rgba(255,255,255,.1);position:relative;transition:.2s;flex:0 0 auto}
.rp-scope .toggle .tk:after{content:'';position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:.2s}
.rp-scope .toggle.on .tk{background:linear-gradient(90deg,var(--gold-d),var(--gold-b))}
.rp-scope .toggle.on .tk:after{left:25px}

/* ---------- TABELLONE CUCINA (KDS) ---------- */
.rp-scope .board-top{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.rp-scope .board-top h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:700}
.rp-scope .kds-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;align-items:start}
.rp-scope .ticket{border:1px solid var(--line2);border-radius:16px;overflow:hidden;background:linear-gradient(180deg,rgba(20,49,88,.5),rgba(10,26,51,.6))}
.rp-scope .ticket.urgent{border-color:var(--bill);box-shadow:0 0 0 1px rgba(224,145,60,.4)}
.rp-scope .tk-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line2);background:rgba(0,0,0,.18)}
.rp-scope .tk-head .tk-n{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:700}
.rp-scope .tk-head .tk-ago{font-size:12px;color:var(--muted)}
.rp-scope .tk-head .tk-ago.urgent{color:var(--bill);font-weight:700}
.rp-scope .tk-items{padding:8px 16px}
.rp-scope .tk-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line2)}
.rp-scope .tk-item:last-child{border-bottom:none}
.rp-scope .tk-item .q{min-width:28px;height:28px;border-radius:7px;display:grid;place-items:center;font-weight:800;font-size:14px;background:rgba(255,255,255,.06)}
.rp-scope .tk-item .nm{flex:1;font-size:14.5px;font-weight:600}
.rp-scope .tk-item .st{font-size:10.5px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;padding:4px 9px;border-radius:999px}
.rp-scope .tk-item.inviato .st{background:rgba(111,141,255,.16);color:var(--resv)}
.rp-scope .tk-item.prep .st{background:rgba(212,175,55,.16);color:var(--gold)}
.rp-scope .tk-item.prep .nm{color:var(--gold-b)}
.rp-scope .tk-item.pronto .st{background:rgba(63,178,127,.18);color:var(--free)}
.rp-scope .tk-item.pronto .nm{text-decoration:line-through;color:var(--muted)}
.rp-scope .tk-foot{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--line2);background:rgba(0,0,0,.12)}
.rp-scope .tk-foot .btn{flex:1;padding:11px;font-size:13px}

/* ---------- TABELLONE SALA (previsione) ---------- */
.rp-scope .fc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-bottom:8px}
.rp-scope .fc{border:1px solid var(--line2);border-radius:14px;padding:14px;text-align:center;background:rgba(255,255,255,.025)}
.rp-scope .fc .fc-t{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:700}
.rp-scope .fc .fc-bar{height:6px;border-radius:999px;background:rgba(255,255,255,.08);margin:10px 0 8px;overflow:hidden}
.rp-scope .fc .fc-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold-d),var(--gold-b))}
.rp-scope .fc.full .fc-bar i{background:linear-gradient(90deg,#a23,#e0913c)}
.rp-scope .fc .fc-l{font-size:11.5px;color:var(--muted)}
.rp-scope .fc .fc-n{font-size:13px;color:var(--muted);margin-top:4px}

/* ---------- TOTEM ---------- */
.rp-scope .tt-hero{text-align:center;padding:30px 20px 24px}
.rp-scope .tt-hero .tt-k{font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);font-weight:700}
.rp-scope .tt-hero h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:42px;font-weight:700;margin:8px 0 4px}
.rp-scope .tt-hero p{color:var(--muted)}
.rp-scope .tt-cart{position:sticky;bottom:16px;margin-top:18px;display:flex;align-items:center;gap:16px;
  border:1px solid var(--line);border-radius:16px;padding:16px 20px;background:linear-gradient(180deg,#143158,#0c1f3c);box-shadow:0 20px 50px -20px #000}
.rp-scope .tt-cart .c-sum{flex:1}
.rp-scope .tt-cart .c-sum b{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;font-weight:700}
.rp-scope .tt-cart .c-sum small{display:block;color:var(--muted);font-size:12.5px}

/* ============================================================
   AMMINISTRAZIONE + TABELLONI + TOTEM
   ============================================================ */
.rp-scope .adm-body{margin-top:8px}
.rp-scope .adm-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px;border-bottom:1px solid var(--line2);padding-bottom:4px}
.rp-scope .adm-nav button{position:relative;border:none;background:transparent;color:var(--muted);font-weight:700;font-size:14px;
  padding:11px 16px;border-radius:10px 10px 0 0;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:8px}
.rp-scope .adm-nav button.on{color:var(--gold);box-shadow:inset 0 -2px 0 var(--gold)}
.rp-scope .badge{background:var(--bill);color:#231a02;font-size:11px;font-weight:800;border-radius:999px;padding:1px 7px;min-width:18px;text-align:center}
.rp-scope .ni-light{width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px var(--gold);animation:nipulse 1.4s infinite}
@keyframes nipulse{0%,100%{opacity:1}50%{opacity:.35}}
.rp-scope .adm-bar{display:flex;align-items:center;gap:16px;margin:6px 0 16px}
.rp-scope .adm-bar h2,.rp-scope .adm-bar h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700}
.rp-scope .adm-bar h2{font-size:26px}
.rp-scope .adm-bar .rule{flex:1;height:1px;background:linear-gradient(90deg,var(--line),transparent)}
.rp-scope .btn.sm{padding:9px 15px;font-size:13px;border-radius:10px}

/* list rows */
.rp-scope .llist{display:flex;flex-direction:column;gap:8px}
.rp-scope .lrow{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line2);border-radius:13px;
  background:linear-gradient(180deg,rgba(20,49,88,.4),rgba(12,31,60,.4))}
.rp-scope .lr-main{flex:1;min-width:0}
.rp-scope .lr-main b{display:flex;align-items:center;gap:8px;font-size:15px}
.rp-scope .lr-sub{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.rp-scope .sw{width:11px;height:11px;border-radius:50%;display:inline-block}
.rp-scope .lr-side{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.rp-scope .price{font-size:19px;font-weight:700}
.rp-scope .chip{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;background:rgba(63,178,127,.14);color:var(--free)}
.rp-scope .chip.low{background:rgba(224,145,60,.16);color:var(--bill)}
.rp-scope .chip.in{background:rgba(63,178,127,.16);color:var(--free)}
.rp-scope .chip.out{background:rgba(224,145,60,.16);color:var(--bill)}
.rp-scope .chip.auto{background:rgba(111,141,255,.16);color:var(--resv);margin-left:6px}
.rp-scope .ibtn{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink);font-weight:700;font-size:12.5px;
  padding:7px 12px;border-radius:9px;cursor:pointer;font-family:inherit;text-decoration:none;display:inline-block}
.rp-scope .ibtn:hover{border-color:var(--gold)}
.rp-scope .ibtn.d:hover{border-color:var(--bill);color:var(--bill)}
.rp-scope .ibtn.g{border-color:rgba(212,175,55,.5);color:var(--gold)}
.rp-scope .empty{padding:30px;text-align:center;color:var(--muted);border:1px dashed var(--line2);border-radius:14px}
.rp-scope .empty.big{padding:60px 30px;font-size:18px;font-family:'Cormorant Garamond',serif}
.rp-scope .stockalarm{background:rgba(224,145,60,.12);border:1px solid rgba(224,145,60,.4);color:var(--bill);
  font-weight:700;padding:12px 16px;border-radius:12px;margin-bottom:16px}
.rp-scope .seg{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}
.rp-scope .seg button{border:1px solid var(--line2);background:rgba(255,255,255,.03);color:var(--muted);font-weight:700;
  font-size:13px;padding:9px 16px;border-radius:999px;cursor:pointer;font-family:inherit}
.rp-scope .seg button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.08)}
.rp-scope .setbox{background:linear-gradient(180deg,rgba(20,49,88,.4),rgba(12,31,60,.4));border:1px solid var(--line2);
  border-radius:16px;padding:20px;max-width:620px}
.rp-scope .mcheck{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink);cursor:pointer;margin:8px 0}
.rp-scope .mcheck input{width:18px;height:18px;accent-color:var(--gold)}
.rp-scope .gfields{border-top:1px solid var(--line2);margin-top:12px;padding-top:14px}

/* forecast */
.rp-scope .fc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:8px}
.rp-scope .fc{border:1px solid var(--line2);border-radius:13px;padding:14px 16px;background:rgba(111,141,255,.05)}
.rp-scope .fc.full{border-color:rgba(224,145,60,.5);background:rgba(224,145,60,.08)}
.rp-scope .fc-t{font-size:22px;font-weight:700;color:#c7d2ff}
.rp-scope .fc.full .fc-t{color:var(--bill)}
.rp-scope .fc-bar{height:7px;border-radius:7px;background:rgba(255,255,255,.08);margin:8px 0 6px;overflow:hidden}
.rp-scope .fc-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--resv),#9db3ff);border-radius:7px}
.rp-scope .fc.full .fc-bar span{background:linear-gradient(90deg,var(--bill),#f0b070)}
.rp-scope .fc-n{font-size:12px;color:var(--muted)}

/* KDS */
.rp-scope .kds-board{margin-top:6px}
.rp-scope .kds-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.rp-scope .ticket{border:1px solid var(--line2);border-radius:16px;overflow:hidden;background:linear-gradient(180deg,rgba(20,49,88,.5),rgba(10,26,51,.6))}
.rp-scope .ticket.urgent{border-color:var(--bill);box-shadow:0 0 0 1px rgba(224,145,60,.4)}
.rp-scope .tk-head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line2)}
.rp-scope .tk-num{font-size:26px;font-weight:700;color:var(--gold)}
.rp-scope .tk-area{font-size:12px;color:var(--muted);flex:1}
.rp-scope .tk-time{font-size:14px;font-weight:800;color:var(--muted)}
.rp-scope .tk-time.u{color:var(--bill)}
.rp-scope .tk-item{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line2)}
.rp-scope .tk-q{min-width:26px;height:26px;border-radius:7px;background:rgba(255,255,255,.06);display:grid;place-items:center;font-weight:800;font-size:13px}
.rp-scope .tk-n{flex:1;font-size:14.5px}
.rp-scope .tk-s{font-size:10.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:3px 9px;border-radius:999px}
.rp-scope .tk-item.st-inviato .tk-s{background:rgba(147,166,198,.18);color:var(--muted)}
.rp-scope .tk-item.st-prep .tk-q{background:rgba(224,145,60,.2)}
.rp-scope .tk-item.st-prep .tk-s{background:rgba(224,145,60,.18);color:var(--bill)}
.rp-scope .tk-item.st-pronto .tk-q{background:rgba(63,178,127,.22)}
.rp-scope .tk-item.st-pronto .tk-s{background:rgba(63,178,127,.18);color:var(--free)}
.rp-scope .tk-item.st-pronto .tk-n{color:#bfe7d3}
.rp-scope .tk-foot{display:flex;gap:8px;padding:12px 16px}
.rp-scope .tk-foot .btn{flex:1}

/* TOTEM */
.rp-scope .tt-hero{text-align:center;padding:30px 20px 24px}
.rp-scope .tt-hero .rp-crest{margin:0 auto 14px}
.rp-scope .tt-hero h1{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:700;margin:0}
.rp-scope .tt-hero p{color:var(--muted);margin:6px 0 0;font-size:15px}
.rp-scope .tt-cart{position:sticky;bottom:16px;margin-top:18px;display:flex;align-items:center;gap:16px;
  background:linear-gradient(180deg,#143158,#0c1f3c);border:1px solid var(--line);border-radius:16px;padding:14px 20px;
  box-shadow:0 20px 50px -20px #000}
.rp-scope .tt-info{flex:1;font-size:15px;color:var(--muted)}
.rp-scope .tt-info b{color:var(--ink);font-size:18px}
.rp-scope .tt-info .serif{font-size:24px;color:var(--gold)}
.rp-scope .tt-cart .btn.primary{min-width:200px}

@media(max-width:680px){
  .rp-scope .adm-nav{overflow:auto}
  .rp-scope .lrow{flex-direction:column;align-items:flex-start}
  .rp-scope .lr-side{justify-content:flex-start}
  .rp-scope .tt-cart .btn.primary{min-width:140px}
}

/* ============================================================
   v1.3 — immagini piatti, avatar camerieri, tasti rapidi tavolo
   ============================================================ */
/* immagine auto nel menu */
.rp-scope .dish{position:relative}
.rp-scope .dish-img{position:relative;height:88px;border-radius:14px 14px 0 0;background-size:cover;background-position:center;
  margin:-14px -16px 10px;border-bottom:1px solid var(--line2)}
.rp-scope .d-qbadge{position:absolute;top:8px;right:8px;background:linear-gradient(180deg,var(--gold-b),var(--gold-d));
  color:#231a02;font-weight:800;font-size:13px;border-radius:999px;min-width:24px;height:24px;display:grid;place-items:center;
  padding:0 7px;box-shadow:0 4px 12px rgba(0,0,0,.45)}
/* thumb e avatar in amministrazione */
.rp-scope .mthumb{width:56px;height:42px;border-radius:9px;object-fit:cover;flex:0 0 auto;border:1px solid var(--line2)}
.rp-scope .savatar{width:44px;height:44px;border-radius:13px;flex:0 0 auto;box-shadow:0 6px 16px -8px rgba(0,0,0,.6)}
.rp-scope .sh-head .savatar{margin-right:2px}
/* tasti rapidi sul tavolo occupato */
.rp-scope .t-quick{display:flex;gap:6px;margin-top:12px;position:relative;z-index:2}
.rp-scope .qbtn{flex:1;border:1px solid var(--line2);background:rgba(255,255,255,.06);color:var(--ink);font-weight:700;
  font-size:11px;letter-spacing:.2px;padding:8px 6px;border-radius:9px;cursor:pointer;font-family:inherit;white-space:nowrap;transition:.12s}
.rp-scope .qbtn:hover{border-color:var(--gold);transform:translateY(-1px)}
.rp-scope .qbtn.gold{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02;border-color:transparent}
.rp-scope .tbl.seated,.rp-scope .tbl.bill{min-height:200px}

/* offset per la barra di amministrazione di WordPress (pannello a destra) */
body.admin-bar .rp-scope .rp-deck{top:32px;height:calc(100% - 32px)}
@media screen and (max-width:782px){ body.admin-bar .rp-scope .rp-deck{top:46px;height:calc(100% - 46px)} }
/* margine di sicurezza in cima alle viste (evita sovrapposizione con menu/admin bar) */
.rp-scope .rp-wrap{padding-top:30px}
body.admin-bar .rp-scope .rp-wrap{padding-top:24px}

/* ============================================================
   v1.4 — totem: modalità self, tastiera virtuale, ticket, stripe
   ============================================================ */
.rp-scope .tt-mode{display:flex;gap:6px;margin-right:10px}
.rp-scope .tt-mode button{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--muted);font-weight:700;
  font-size:13px;padding:9px 14px;border-radius:999px;cursor:pointer;font-family:inherit}
.rp-scope .tt-mode button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.1)}
.rp-scope .tt-disc{color:var(--free);font-weight:700;font-size:13px;margin-left:8px}
/* checkout */
.rp-scope .tt-checkout{max-width:680px}
.rp-scope .co-tot{background:rgba(255,255,255,.03);border:1px solid var(--line2);border-radius:12px;padding:12px 16px;margin-bottom:16px}
.rp-scope .vk-field{display:flex;flex-direction:column;gap:3px;border:1px solid var(--line2);border-radius:12px;padding:12px 16px;margin-bottom:10px;cursor:pointer;background:#0a1c38}
.rp-scope .vk-field.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.rp-scope .vk-lab{font-size:11px;color:var(--muted);letter-spacing:.4px}
.rp-scope .vk-val{font-size:17px;min-height:22px}
.rp-scope .vk-val.ph{color:var(--muted2)}
.rp-scope .vk-field.on .vk-val:after{content:'|';color:var(--gold);animation:vkc 1s step-end infinite;margin-left:1px}
@keyframes vkc{50%{opacity:0}}
/* tastiera */
.rp-scope .vk{display:flex;flex-direction:column;gap:7px;margin-top:6px;user-select:none}
.rp-scope .vk-row{display:flex;gap:6px;justify-content:center}
.rp-scope .vk-key{flex:1 1 0;min-width:0;height:50px;border:1px solid var(--line2);border-radius:10px;background:linear-gradient(180deg,#16335b,#0e2447);
  color:var(--ink);font-size:18px;font-weight:600;cursor:pointer;font-family:inherit;transition:.08s}
.rp-scope .vk-key:active{transform:translateY(1px);background:#1c3f6f}
.rp-scope .vk-key.sp{flex:1.4 1 0;font-size:14px;color:var(--muted);background:rgba(255,255,255,.05)}
.rp-scope .vk-key.wide{flex:3 1 0}
.rp-scope .vk-key.done{background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02;border-color:transparent}
.rp-scope .vk-key.back{color:var(--bill)}
/* ticket */
.rp-scope .tk-big{font-size:18px;color:var(--muted);margin-top:8px}
.rp-scope .tk-big b{display:block;font-size:54px;letter-spacing:2px;background:linear-gradient(180deg,var(--gold-b),var(--gold-d));-webkit-background-clip:text;background-clip:text;color:transparent}
.rp-scope .tk-ticket{background:rgba(212,175,55,.16);color:var(--gold);font-weight:800;font-size:12px;padding:3px 9px;border-radius:999px}
.rp-scope .tk-self{background:rgba(63,178,127,.16);color:var(--free);font-weight:800;font-size:10px;letter-spacing:1px;padding:3px 8px;border-radius:999px}
/* settings sections */
.rp-scope .seth{font-size:18px;margin:0 0 12px;color:var(--gold-b)}
.rp-scope .sethint{font-size:12.5px;color:var(--muted);margin:10px 0 0;line-height:1.5}
.rp-scope .vk-key.sp.act{background:rgba(212,175,55,.18);color:var(--gold);border-color:var(--gold)}

/* ============================================================
   v1.5 — Personale & turni
   ============================================================ */
.rp-scope .savatar.sm{width:30px;height:30px;border-radius:9px}
.rp-scope .stpill{font-size:10.5px;font-weight:800;letter-spacing:.5px;padding:3px 9px;border-radius:999px;margin-left:8px;vertical-align:middle}
.rp-scope .stpill.in{background:rgba(63,178,127,.16);color:var(--free)}
.rp-scope .stpill.shift{background:rgba(212,175,55,.16);color:var(--gold)}
.rp-scope .stpill.leave{background:rgba(111,141,255,.16);color:var(--resv)}
.rp-scope .stpill.rest{background:rgba(147,166,198,.14);color:var(--muted)}
.rp-scope .stpill.off{background:rgba(224,145,60,.14);color:var(--bill)}
.rp-scope .hpill{font-weight:800;font-size:13px;color:var(--gold);background:rgba(212,175,55,.12);padding:5px 11px;border-radius:999px}
.rp-scope .att-rec{display:inline-block;margin-right:10px}
/* turni — planner settimanale */
.rp-scope .sh-week{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.rp-scope .sh-week b{flex:1;text-align:center;font-size:18px}
.rp-scope .sh-board{border:1px solid var(--line2);border-radius:14px;overflow:hidden;overflow-x:auto}
.rp-scope .sh-grid{display:grid;grid-template-columns:160px repeat(7,1fr);min-width:760px}
.rp-scope .sh-grid+.sh-grid{border-top:1px solid var(--line2)}
.rp-scope .sh-head2{background:rgba(255,255,255,.03)}
.rp-scope .sh-head2 .sh-col{font-size:12px;color:var(--muted);font-weight:700;text-transform:capitalize}
.rp-scope .sh-name{display:flex;align-items:center;gap:8px;padding:12px;font-size:13.5px;font-weight:600;border-right:1px solid var(--line2)}
.rp-scope .sh-col{padding:9px;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--line2);min-height:54px}
.rp-scope .sh-col:last-child{border-right:none}
.rp-scope .sh-col.today{background:rgba(212,175,55,.06)}
.rp-scope .sh-chip{cursor:pointer;background:rgba(212,175,55,.14);color:var(--gold);border-radius:9px;padding:6px 10px;font-weight:700;font-size:12.5px;text-align:center;line-height:1.2}
.rp-scope .sh-chip small{display:block;color:var(--muted);font-weight:500;font-size:10px}
.rp-scope .sh-chip:hover{background:rgba(224,145,60,.18);color:var(--bill)}
.rp-scope .sh-leave{background:rgba(111,141,255,.14);color:var(--resv);border-radius:9px;padding:6px 10px;font-weight:700;font-size:11.5px}
.rp-scope .sh-add{width:34px;height:34px;border-radius:9px;border:1px dashed var(--line2);background:transparent;color:var(--muted);font-size:18px;cursor:pointer}
.rp-scope .sh-add:hover{border-color:var(--gold);color:var(--gold)}
/* ferie */
.rp-scope .lv-st{font-size:10.5px;font-weight:800;letter-spacing:.5px;padding:2px 9px;border-radius:999px;margin-left:8px}
.rp-scope .lv-st.richiesta{background:rgba(224,145,60,.16);color:var(--bill)}
.rp-scope .lv-st.approvata{background:rgba(63,178,127,.16);color:var(--free)}
.rp-scope .lv-st.rifiutata{background:rgba(147,166,198,.14);color:var(--muted)}
/* performance */
.rp-scope .perf-list{display:flex;flex-direction:column;gap:10px}
.rp-scope .perf-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line2);border-radius:13px;background:linear-gradient(180deg,rgba(20,49,88,.4),rgba(12,31,60,.4))}
.rp-scope .perf-main{flex:1}
.rp-scope .perf-top{display:flex;justify-content:space-between;align-items:baseline}
.rp-scope .perf-rev{font-size:20px;color:var(--gold)}
.rp-scope .perf-bar{height:8px;border-radius:8px;background:rgba(255,255,255,.07);margin:7px 0 5px;overflow:hidden}
.rp-scope .perf-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--gold-d),var(--gold-b));border-radius:8px}
.rp-scope .perf-meta{font-size:12.5px;color:var(--muted)}
/* profilo */
.rp-scope .pf-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:6px 0 14px}
.rp-scope .pf-li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line2);font-size:13px}
.rp-scope .pf-li span{flex:1;color:var(--muted)}
.rp-scope .pf-li small{color:var(--muted2)}
.rp-scope .pf-empty{color:var(--muted);font-size:13px;padding:8px 0}
.rp-scope .pf-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:rgba(255,255,255,.03);border:1px solid var(--line2);border-radius:12px;padding:14px}
.rp-scope .pf-info div{display:flex;flex-direction:column}
.rp-scope .pf-info span{font-size:11px;color:var(--muted)}
.rp-scope .pf-info b{font-size:14px}
/* assegnazione cameriere */
.rp-scope .dk-waiter{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line2);border-radius:12px;margin-bottom:16px;cursor:pointer;background:rgba(255,255,255,.03)}
.rp-scope .dk-waiter:hover{border-color:var(--gold)}
.rp-scope .dk-waiter .wpick{color:var(--muted)}
.rp-scope .dk-waiter span{font-weight:600;font-size:14px}
.rp-scope .dk-waiter .wchev{margin-left:auto;color:var(--muted)}
.rp-scope .t-waiter{width:22px;height:22px;border-radius:6px;vertical-align:middle;margin-right:6px}
.rp-scope .wlist{display:flex;flex-direction:column;gap:8px}
.rp-scope .wrow{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:1px solid var(--line2);background:rgba(255,255,255,.03);border-radius:12px;padding:10px 14px;cursor:pointer;color:var(--ink);font-family:inherit}
.rp-scope .wrow.on{border-color:var(--gold);background:rgba(212,175,55,.08)}
.rp-scope .wrow:hover{border-color:var(--gold)}
.rp-scope .wmeta{flex:1}.rp-scope .wmeta b{display:block;font-size:14px}.rp-scope .wmeta span{font-size:12px;color:var(--muted)}
.rp-scope .wok{color:var(--gold);font-weight:800}
@media(max-width:680px){.rp-scope .pf-cols{grid-template-columns:1fr}.rp-scope .pf-info{grid-template-columns:1fr}}

/* ============================================================
   v1.6 — planner prenotazioni, timeline turni, biometria, booking
   ============================================================ */
/* selettore servizio */
.rp-scope .rp-svc{display:inline-flex;gap:6px}
.rp-scope .rp-svc button{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--muted);font-weight:700;font-size:13px;padding:8px 14px;border-radius:999px;cursor:pointer;font-family:inherit}
.rp-scope .rp-svc button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.1)}
/* planner tavoli × fasce */
.rp-scope .pl-board{border:1px solid var(--line2);border-radius:14px;overflow:auto}
.rp-scope .pl-grid{display:grid;grid-template-columns:120px repeat(var(--cols,5),minmax(120px,1fr));min-width:680px}
.rp-scope .pl-grid+.pl-grid{border-top:1px solid var(--line2)}
.rp-scope .pl-head{background:rgba(255,255,255,.03);position:sticky;top:0}
.rp-scope .pl-col{padding:10px;text-align:center;border-right:1px solid var(--line2);font-size:13px}
.rp-scope .pl-col small{display:block;color:var(--muted);font-size:11px;font-weight:600}
.rp-scope .pl-tname{padding:10px 12px;border-right:1px solid var(--line2);display:flex;flex-direction:column;justify-content:center;gap:2px}
.rp-scope .pl-tnum{font-size:22px;line-height:1}
.rp-scope .pl-tname small{color:var(--muted);font-size:11px}
.rp-scope .pl-slot{padding:7px;border-right:1px solid var(--line2);display:flex;flex-direction:column;gap:6px;min-height:58px}
.rp-scope .pl-slot>.pl-cell{flex:0 0 auto;width:100%}
.rp-scope .pl-slot>.pl-add{flex:0 0 auto;width:100%}
.rp-scope .pl-slot>.pl-add:only-child{flex:1;min-height:44px}
.rp-scope .pl-add.mini{min-height:26px;font-size:14px;opacity:.7}
.rp-scope .pl-switch{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer;border:1px solid var(--line2);padding:8px 12px;border-radius:999px;margin-right:8px}
.rp-scope .pl-switch input{accent-color:var(--gold);width:16px;height:16px}
.rp-scope .pl-slot:last-child{border-right:none}
.rp-scope .pl-cell{flex:1;border-radius:9px;padding:8px 10px;cursor:pointer;line-height:1.2;border:1px solid transparent}
.rp-scope .pl-cell b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-scope .pl-cell small{font-size:11px;color:var(--muted)}
.rp-scope .pl-cell.conf{background:rgba(63,178,127,.14);border-color:rgba(63,178,127,.3)}
.rp-scope .pl-cell.pend{background:rgba(224,145,60,.14);border-color:rgba(224,145,60,.35)}
.rp-scope .pl-cell.online.pend{box-shadow:0 0 0 1px rgba(224,145,60,.4)}
.rp-scope .pl-cell:hover{filter:brightness(1.15)}
.rp-scope .pl-add{flex:1;border:1px dashed var(--line2);background:transparent;color:var(--muted);border-radius:9px;font-size:18px;cursor:pointer}
.rp-scope .pl-add:hover{border-color:var(--gold);color:var(--gold)}
/* timeline turni giorno */
.rp-scope .tl-wrap{border:1px solid var(--line2);border-radius:14px;overflow:hidden}
.rp-scope .tl-row,.rp-scope .tl-axis{display:grid;grid-template-columns:150px 1fr;align-items:center}
.rp-scope .tl-row+.tl-row{border-top:1px solid var(--line2)}
.rp-scope .tl-axis{background:rgba(255,255,255,.03);border-bottom:1px solid var(--line2)}
.rp-scope .tl-name{display:flex;align-items:center;gap:8px;padding:12px;font-size:13.5px;font-weight:600;border-right:1px solid var(--line2)}
.rp-scope .tl-track{position:relative;height:46px}
.rp-scope .tl-hours{height:28px}
.rp-scope .tl-h{position:absolute;top:7px;transform:translateX(-50%);font-size:11px;color:var(--muted)}
.rp-scope .tl-bar{position:absolute;top:8px;height:30px;background:linear-gradient(180deg,rgba(212,175,55,.9),rgba(184,128,31,.9));border-radius:8px;color:#231a02;padding:3px 8px;cursor:pointer;overflow:hidden;box-shadow:0 4px 10px -4px rgba(0,0,0,.5)}
.rp-scope .tl-bar b{font-size:12px;display:block;line-height:1.1}
.rp-scope .tl-bar small{font-size:10px;opacity:.8}
.rp-scope .tl-leave{position:absolute;top:8px;left:8px;height:30px;display:flex;align-items:center;padding:0 12px;background:rgba(111,141,255,.16);color:var(--resv);border-radius:8px;font-weight:700;font-size:12px}
.rp-scope .tl-add{position:absolute;top:8px;left:8px;height:30px;border:1px dashed var(--line2);background:transparent;color:var(--muted);border-radius:8px;font-size:12px;padding:0 12px;cursor:pointer}
.rp-scope .tl-add:hover{border-color:var(--gold);color:var(--gold)}
/* biometria + pill */
.rp-scope .biopill{background:rgba(63,178,127,.14);color:var(--free);font-size:11px;font-weight:800;padding:4px 9px;border-radius:999px}
.rp-scope .biorow{display:flex;align-items:center;gap:12px;justify-content:space-between;border:1px solid var(--line2);border-radius:12px;padding:12px 14px;margin-top:6px;background:rgba(255,255,255,.03)}
.rp-scope .biorow b{display:block;font-size:13.5px}
.rp-scope .biorow span{display:block;font-size:12px;color:var(--muted)}
.rp-scope .defpill{background:rgba(212,175,55,.16);color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.4px;padding:2px 8px;border-radius:999px;vertical-align:middle}
/* selettore cameriere (riga con stella predefinito) */
.rp-scope .wrow{display:flex;align-items:center;gap:6px;padding:0}
.rp-scope .wsel{flex:1;display:flex;align-items:center;gap:12px;background:transparent;border:none;color:var(--ink);cursor:pointer;font-family:inherit;text-align:left;padding:10px 12px}
.rp-scope .wstar{background:transparent;border:1px solid var(--line2);color:var(--muted);width:40px;height:40px;border-radius:10px;cursor:pointer;font-size:16px;flex:0 0 auto;margin-right:10px}
.rp-scope .wstar.on{color:var(--gold);border-color:var(--gold);background:rgba(212,175,55,.1)}
/* booking pubblico */
.rp-scope .bk-card{max-width:640px;margin:24px auto;background:linear-gradient(180deg,rgba(20,49,88,.5),rgba(12,31,60,.5));border:1px solid var(--line2);border-radius:20px;padding:26px 30px;box-shadow:0 30px 80px -40px #000}
.rp-scope .bk-lab{display:block;font-size:11px;color:var(--muted);letter-spacing:.4px;margin:6px 0 8px}
.rp-scope .bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-bottom:14px}
.rp-scope .bk-slot{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink);border-radius:11px;padding:10px 6px;font-weight:700;cursor:pointer;font-family:inherit;line-height:1.2}
.rp-scope .bk-slot small{display:block;font-size:10.5px;color:var(--muted);font-weight:600}
.rp-scope .bk-slot.on{border-color:var(--gold);background:rgba(212,175,55,.12);color:var(--gold)}
.rp-scope .bk-slot.full{opacity:.4;cursor:not-allowed}
.rp-scope .btn.lg{width:100%;padding:15px;font-size:16px;margin-top:6px}

/* ============================================================
   v1.6.1 — fix impaginazione righe amministrazione (colonne strette WP)
   I pulsanti non si comprimono e il gruppo azioni va a capo come blocco.
   ============================================================ */
.rp-scope .lrow{flex-wrap:wrap}
.rp-scope .lr-main{flex:1 1 240px;min-width:160px}
.rp-scope .lr-side{flex:0 0 auto;flex-shrink:0;flex-wrap:wrap;margin-left:auto;gap:10px}
.rp-scope .ibtn{white-space:nowrap;flex:0 0 auto;width:auto!important;height:auto!important;min-height:36px;
  padding:8px 13px;display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1.1;font-size:12.5px;border-radius:9px}
.rp-scope .lrow > .savatar,.rp-scope .lrow > .mthumb{flex:0 0 auto}
/* su larghezze molto strette, azioni a piena riga sotto le info */
@media (max-width:560px){
  .rp-scope .lr-side{width:100%;justify-content:flex-start;margin-left:0;margin-top:4px}
}

/* ============================================================
   v1.7 — drag&drop prenotazioni, barra giorni, voce totem, comande mobile
   ============================================================ */
/* drag & drop planner */
.rp-scope .pl-cell[draggable="true"]{cursor:grab}
.rp-scope .pl-cell.dragging{opacity:.45;cursor:grabbing}
.rp-scope .pl-slot.drop-hot{outline:2px dashed var(--gold);outline-offset:-3px;background:rgba(212,175,55,.08)}
.rp-scope .pl-day.drop-hot{border-color:var(--gold);background:rgba(212,175,55,.18);color:var(--gold)}
/* barra giorni */
.rp-scope .pl-days{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.rp-scope .pl-day{border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--muted);font-weight:700;font-size:12px;
  padding:7px 12px;border-radius:10px;cursor:pointer;font-family:inherit;text-transform:capitalize;transition:.12s}
.rp-scope .pl-day.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.12)}
.rp-scope .pl-day:hover{border-color:var(--gold)}
/* voce totem */
.rp-scope .tt-voice.on{border-color:var(--gold);color:var(--gold)}
/* ===== tabellone comande mobile ===== */
.rp-scope .cmd-wrap{max-width:560px;margin:0 auto;padding-bottom:96px}
.rp-scope .cmd-top{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:5;background:linear-gradient(180deg,var(--abyss),rgba(6,15,31,.96));
  padding:14px 2px 12px;border-bottom:1px solid var(--line2);margin-bottom:12px}
body.admin-bar .rp-scope .cmd-top{top:32px}
.rp-scope .cmd-h{font-size:24px;line-height:1}
.rp-scope .cmd-sub{font-size:12.5px;color:var(--muted);margin-top:2px}
.rp-scope .cmd-top>div:first-child{flex:1}
.rp-scope .cmd-voice{margin-left:auto;width:46px;height:46px;border-radius:14px;border:1px solid var(--line2);background:rgba(255,255,255,.05);
  font-size:20px;cursor:pointer;flex:0 0 auto}
.rp-scope .cmd-voice.on{border-color:var(--gold);background:rgba(212,175,55,.12)}
.rp-scope .cmd-back{width:46px;height:46px;border-radius:14px;border:1px solid var(--line2);background:rgba(255,255,255,.05);color:var(--ink);font-size:22px;cursor:pointer;flex:0 0 auto}
.rp-scope .cmd-area{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--gold-b);margin:10px 2px 8px;font-weight:800}
.rp-scope .cmd-tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:10px;margin-bottom:8px}
.rp-scope .cmd-t{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;border-radius:16px;border:1px solid var(--line2);
  background:linear-gradient(180deg,rgba(20,49,88,.45),rgba(12,31,60,.45));cursor:pointer;font-family:inherit;color:var(--ink);min-height:84px}
.rp-scope .cmd-t .cmd-tn{font-size:30px;line-height:1}
.rp-scope .cmd-t .cmd-ts{font-size:11px;color:var(--muted)}
.rp-scope .cmd-t.seated{border-color:rgba(224,145,60,.5)} .rp-scope .cmd-t.bill{border-color:rgba(224,145,60,.7)}
.rp-scope .cmd-t.free{border-color:rgba(63,178,127,.4)} .rp-scope .cmd-t.reserved{border-color:rgba(111,141,255,.5)}
.rp-scope .cmd-cats{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px;-webkit-overflow-scrolling:touch}
.rp-scope .cmd-cats button{flex:0 0 auto;border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--muted);font-weight:700;
  font-size:13px;padding:9px 14px;border-radius:999px;cursor:pointer;font-family:inherit;white-space:nowrap}
.rp-scope .cmd-cats button.on{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.1)}
.rp-scope .cmd-sent{background:rgba(255,255,255,.03);border:1px solid var(--line2);border-radius:12px;padding:10px 12px;margin-bottom:12px}
.rp-scope .cmd-sec{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-weight:700}
.rp-scope .cmd-srow{display:flex;justify-content:space-between;font-size:13px;padding:3px 0}
.rp-scope .cmd-srow span:last-child{font-size:11px;color:var(--muted)}
.rp-scope .cmd-srow .st-pronto{color:var(--free)} .rp-scope .cmd-srow .st-prep{color:var(--gold)}
.rp-scope .cmd-list{display:flex;flex-direction:column;gap:10px}
.rp-scope .cmd-dish{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--line2);border-radius:14px;
  background:linear-gradient(180deg,rgba(20,49,88,.35),rgba(12,31,60,.35))}
.rp-scope .cmd-di{width:54px;height:54px;border-radius:11px;background-size:cover;background-position:center;flex:0 0 auto}
.rp-scope .cmd-dm{flex:1;min-width:0}.rp-scope .cmd-dm b{display:block;font-size:15px}.rp-scope .cmd-dm span{font-size:12px;color:var(--muted)}
.rp-scope .cmd-add{width:46px;height:46px;border-radius:13px;border:none;background:linear-gradient(180deg,var(--gold-b),var(--gold-d));color:#231a02;font-size:24px;cursor:pointer;flex:0 0 auto}
.rp-scope .cmd-stp{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.rp-scope .cmd-stp button{width:40px;height:40px;border-radius:11px;border:1px solid var(--line2);background:rgba(255,255,255,.06);color:var(--ink);font-size:20px;cursor:pointer}
.rp-scope .cmd-stp b{min-width:20px;text-align:center;font-size:17px}
.rp-scope .cmd-bar{position:fixed;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;padding:12px 16px;
  background:linear-gradient(180deg,rgba(10,28,56,.92),var(--abyss));border-top:1px solid var(--line2);z-index:6}
.rp-scope .cmd-bar .cmd-binfo{flex:1;font-size:14px;color:var(--muted)}
.rp-scope .cmd-bar .btn{flex:0 0 auto;padding:14px 22px}
@media(min-width:560px){ .rp-scope .cmd-bar{left:50%;transform:translateX(-50%);max-width:560px;border-radius:18px 18px 0 0} }

/* v1.7.2 — immagine piatto cliccabile come il tasto + (comande/totem/picker) */
.rp-scope .dish-img.clickable,.rp-scope .cmd-di.clickable{cursor:pointer;transition:filter .12s,transform .06s}
.rp-scope .dish-img.clickable:hover,.rp-scope .cmd-di.clickable:hover{filter:brightness(1.08)}
.rp-scope .dish-img.clickable:active,.rp-scope .cmd-di.clickable:active{filter:brightness(1.15);transform:scale(.97)}

/* v1.8 — area Strumenti fiscali */
.rp-scope .fisbox{border:1px solid var(--line2);border-radius:12px;padding:12px 14px;margin:12px 0;background:rgba(255,255,255,.03)}
.rp-scope .fisbox.on{border-color:rgba(63,178,127,.5);background:rgba(63,178,127,.07)}
.rp-scope .fisbox.off{border-color:rgba(224,145,60,.45);background:rgba(224,145,60,.07)}
.rp-scope .fisbox b{display:block;font-size:14px;color:var(--ink)}
.rp-scope .fisbox span{display:block;font-size:12.5px;color:var(--muted);margin-top:3px}
.rp-scope .fv-grid{display:grid;grid-template-columns:1fr 90px 90px;gap:8px;align-items:center;margin-top:8px}
.rp-scope .fv-h{font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-weight:700;padding-bottom:2px}
.rp-scope .fv-c{font-size:13.5px;color:var(--ink);font-weight:600}
.rp-scope .fv-i{background:rgba(255,255,255,.05);border:1px solid var(--line2);color:var(--ink);border-radius:9px;padding:8px 10px;font-family:inherit;font-size:13px;width:100%}
.rp-scope .fv-i:focus{outline:none;border-color:var(--gold)}

/* ============================================================
   v1.9 — RESTYLE & FULL RESPONSIVE (livello finale, vince per ordine)
   Mobile-first: rifinitura grafica + adattamento a ogni schermo.
   ============================================================ */

/* ---- rifinitura grafica globale ---- */
.rp-scope{ --r:18px; -webkit-tap-highlight-color:transparent; }
.rp-scope ::selection{ background:rgba(212,175,55,.28); }
/* scrollbar discreta dentro lo scope */
.rp-scope ::-webkit-scrollbar{ height:8px; width:8px; }
.rp-scope ::-webkit-scrollbar-thumb{ background:rgba(212,175,55,.28); border-radius:8px; }
.rp-scope ::-webkit-scrollbar-track{ background:transparent; }
/* barre a scorrimento orizzontale (tab, categorie, segmenti): niente barra visibile */
.rp-scope .adm-nav,.rp-scope .cats,.rp-scope .cmd-cats,.rp-scope .rp-areatabs,.rp-scope .pl-days{
  -webkit-overflow-scrolling:touch; scrollbar-width:none; scroll-snap-type:x proximity; }
.rp-scope .adm-nav::-webkit-scrollbar,.rp-scope .cats::-webkit-scrollbar,.rp-scope .cmd-cats::-webkit-scrollbar,.rp-scope .rp-areatabs::-webkit-scrollbar{ display:none; }
/* titoli che scalano con lo schermo (mai overflow) */
.rp-scope .rp-name{ font-size:clamp(22px,4.6vw,30px); }
.rp-scope .kpi .k-v{ font-size:clamp(28px,5.2vw,40px); }
.rp-scope .dk-num{ font-size:clamp(46px,12vw,64px); }
.rp-scope .rp-head h2,.rp-scope .adm-bar h2{ font-size:clamp(20px,3.4vw,26px); }
/* card e bottoni un filo più raffinati */
.rp-scope .tbl{ transition:transform .14s ease, border-color .14s ease, box-shadow .14s ease; }
.rp-scope .btn{ border-radius:12px; transition:transform .12s ease, border-color .12s, filter .12s; }
@media (hover:hover){
  .rp-scope .btn:hover{ border-color:var(--gold); }
  .rp-scope .tbl:hover{ box-shadow:0 22px 50px -28px rgba(0,0,0,.85); }
}
.rp-scope .btn:active,.rp-scope .ibtn:active,.rp-scope .qbtn:active,.rp-scope .act:active{ transform:translateY(1px); }
/* aree fisse: rispetta le tacche (notch) dei telefoni */
.rp-scope .cmd-bar{ padding-bottom:calc(12px + env(safe-area-inset-bottom)); }
.rp-scope .tt-cart{ padding-bottom:env(safe-area-inset-bottom); }
/* input più comodi al tocco (evita zoom iOS) */
@media (pointer:coarse){
  .rp-scope .field input,.rp-scope .field select,.rp-scope .fv-i,.rp-scope input,.rp-scope select{ font-size:16px; }
  .rp-scope .btn,.rp-scope .ibtn,.rp-scope .qbtn,.rp-scope .seg button,.rp-scope .adm-nav button,.rp-scope .rp-svc button{ min-height:44px; }
}

/* ---- ≤1200: dashboard a 4 ---- */
@media (max-width:1200px){
  .rp-scope .rp-dash{ grid-template-columns:repeat(4,1fr); }
}

/* ---- ≤1024: tablet ---- */
@media (max-width:1024px){
  .rp-scope .rp-wrap{ padding:22px 22px 56px; }
  .rp-scope .dishes{ grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); }
  .rp-scope .kds-cols{ grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); }
  .rp-scope .rp-deck{ width:min(440px,96vw); }
}

/* ---- ≤768: tablet stretto / phone landscape ---- */
@media (max-width:768px){
  .rp-scope .rp-wrap{ padding:18px 16px 56px; }
  .rp-scope .rp-top{ gap:12px; margin-bottom:22px; }
  .rp-scope .rp-crest{ width:46px;height:46px;border-radius:12px; }
  .rp-scope .rp-crest b{ font-size:24px; }
  .rp-scope .rp-clock .t{ font-size:20px; }
  .rp-scope .rp-dash{ grid-template-columns:repeat(3,1fr); gap:12px; }
  .rp-scope .kpi{ padding:16px 16px 14px; }
  .rp-scope .rp-grid{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; }
  .rp-scope .dishes{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:10px; }
  .rp-scope .kds-cols{ grid-template-columns:1fr; }
  .rp-scope .frow,.rp-scope .gfields,.rp-scope .grid3,.rp-scope .pf-cols,.rp-scope .pf-info,.rp-scope .dk-acts{ grid-template-columns:1fr; }
  /* righe elenco (personale, menu, magazzino…): in colonna senza vuoti */
  .rp-scope .lrow{ flex-direction:column; align-items:stretch; }
  .rp-scope .lr-main{ flex:0 0 auto; width:100%; min-width:0; }
  .rp-scope .lr-side{ width:100%; margin-left:0; margin-top:8px; justify-content:flex-start; }
  .rp-scope .act.primary{ grid-column:1/-1; }
  .rp-scope .adm-nav,.rp-scope .rp-areatabs{ flex-wrap:nowrap; overflow-x:auto; }
  .rp-scope .adm-nav button,.rp-scope .rp-areatabs button{ scroll-snap-align:start; white-space:nowrap; flex:0 0 auto; }
  .rp-scope .fv-grid{ grid-template-columns:1fr 78px 78px; }
}

/* ---- ≤560: smartphone ---- */
@media (max-width:560px){
  .rp-scope .rp-wrap{ padding:16px 12px 64px; }
  .rp-scope .rp-top{ margin-bottom:18px; }
  .rp-scope .rp-clock{ display:none; }
  .rp-scope .rp-svc button{ padding:9px 12px; font-size:12px; }
  .rp-scope .rp-dash{ grid-template-columns:repeat(2,1fr); }
  .rp-scope .rp-grid{ grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); }
  .rp-scope .tbl{ min-height:150px; padding:18px 16px 16px; }
  .rp-scope .tbl.seated,.rp-scope .tbl.bill{ min-height:auto; }
  .rp-scope .t-quick{ flex-wrap:wrap; }
  .rp-scope .qbtn{ flex:1 1 30%; }
  /* drawer comando a tutto schermo */
  .rp-scope .rp-deck{ width:100vw; border-left:none; }
  .rp-scope .dk-head{ padding:20px 18px 14px; }
  .rp-scope .dk-body{ padding:16px 16px calc(20px + env(safe-area-inset-bottom)); }
  .rp-scope .dk-acts{ gap:10px; }
  /* form e liste */
  .rp-scope .rp-sheet{ width:96vw; max-width:96vw; }
  .rp-scope .dishes{ grid-template-columns:1fr 1fr; }
  .rp-scope .bk-slots{ grid-template-columns:repeat(auto-fill,minmax(84px,1fr)); }
  .rp-scope .bk-card{ margin:14px auto; padding:20px 16px; border-radius:16px; }
  .rp-scope .tl-row,.rp-scope .tl-axis{ grid-template-columns:108px 1fr; }
  .rp-scope .tl-name{ padding:8px; font-size:12px; }
  .rp-scope .fv-grid{ grid-template-columns:1fr 64px 64px; gap:6px; }
  .rp-scope .pf-info{ grid-template-columns:1fr; }
  /* heading sezione su due righe ok */
  .rp-scope .adm-bar{ flex-wrap:wrap; gap:8px; }
}

/* ---- ≤380: phone piccoli ---- */
@media (max-width:380px){
  .rp-scope .rp-dash{ grid-template-columns:1fr 1fr; gap:10px; }
  .rp-scope .kpi .k-v{ font-size:30px; }
  .rp-scope .rp-grid{ grid-template-columns:1fr 1fr; }
  .rp-scope .dishes{ grid-template-columns:1fr 1fr; }
  .rp-scope .cmd-tgrid{ grid-template-columns:repeat(auto-fill,minmax(88px,1fr)); }
}

/* board larghi: scorrimento orizzontale fluido su mobile (planner, turni) */
.rp-scope .pl-board,.rp-scope .sh-board{ -webkit-overflow-scrolling:touch; }
@media (max-width:768px){
  .rp-scope .pl-board,.rp-scope .sh-board,.rp-scope .tl-wrap{ border-radius:12px; }
}

/* ============================================================
   v1.10 — LISTINO pubblico (menu prezzi, sola consultazione)
   ============================================================ */
.rp-scope .lst-head{display:flex;align-items:center;gap:18px;margin:6px 0 22px}
.rp-scope .lst-head h1{font-size:clamp(28px,5vw,40px);font-weight:700;letter-spacing:.4px}
.rp-scope .lst-rule{flex:1;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.rp-scope .lst-wrap{display:grid;grid-template-columns:1fr 1fr;gap:26px 40px;align-items:start}
.rp-scope .lst-sec{break-inside:avoid}
.rp-scope .lst-cat{font-size:24px;font-weight:700;color:var(--gold-b);border-bottom:1px solid var(--line);padding-bottom:6px;margin:0 0 12px;
  display:flex;align-items:center;gap:10px}
.rp-scope .lst-cat:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.18)}
/* vista griglia: card con immagine */
.rp-scope .lst-grid{display:flex;flex-direction:column;gap:10px}
.rp-scope .lst-card{display:flex;align-items:center;gap:14px;padding:10px;border:1px solid var(--line2);border-radius:14px;
  background:linear-gradient(180deg,rgba(20,49,88,.4),rgba(12,31,60,.4));transition:border-color .14s,transform .12s}
@media (hover:hover){.rp-scope .lst-card:hover{border-color:var(--gold);transform:translateY(-1px)}}
.rp-scope .lst-img{width:64px;height:64px;border-radius:12px;background-size:cover;background-position:center;flex:0 0 auto;border:1px solid var(--line2)}
.rp-scope .lst-meta{flex:1;min-width:0}
.rp-scope .lst-meta b{display:block;font-size:16px;line-height:1.2}
.rp-scope .lst-meta span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}
.rp-scope .lst-card .lst-price{font-size:22px;font-weight:700;color:var(--gold-b);white-space:nowrap}
/* vista elenco: nome … prezzo con guida punteggiata */
.rp-scope .lst-list{display:flex;flex-direction:column;gap:9px}
.rp-scope .lst-row{display:flex;align-items:baseline;gap:10px}
.rp-scope .lst-row .lst-name{font-size:15.5px;font-weight:600}
.rp-scope .lst-row .lst-dots{flex:1;border-bottom:1px dotted rgba(255,255,255,.22);transform:translateY(-4px)}
.rp-scope .lst-row .lst-price{font-size:18px;font-weight:700;color:var(--gold-b);white-space:nowrap}
.rp-scope .lst-foot{margin-top:26px;text-align:center;color:var(--muted);font-size:13px;border-top:1px solid var(--line2);padding-top:14px}
@media (max-width:768px){ .rp-scope .lst-wrap{grid-template-columns:1fr;gap:20px} }
