:root{
  --ink:#09090b; --panel:#111013; --line:#26262b; --line2:#33333b;
  --gold:#B08D4C; --gold2:#C6A768; --cream:#EDE8DD; --dim:#a49d8e; --muted:#8b8578;
  --green:#4FA06E; --blue:#5B8FD6; --amber:#C6A768; --red:#E7938A;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{background:#050506;color:var(--cream);font-family:-apple-system,'Helvetica Neue',Arial,sans-serif}
a{color:inherit;text-decoration:none}
.serif{font-family:Georgia,'Times New Roman',serif}
.scene{position:relative;min-height:100vh;overflow:hidden;
  background:radial-gradient(120% 90% at 62% 30%, #17171b 0%, #0a0a0c 46%, #060608 100%)}
.bottles{position:fixed;inset:0;z-index:0;pointer-events:none}
.bottles img{position:absolute}
.glow{position:fixed;z-index:0;border-radius:50%;filter:blur(90px);pointer-events:none}
.wrap{position:relative;z-index:2;padding:34px 46px}

.top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo{height:80px;filter:drop-shadow(0 2px 10px rgba(0,0,0,.55))}
.rolebox{display:flex;align-items:center;gap:14px;color:var(--dim);font-size:14px}
.dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green)}
.linkbtn{color:var(--dim);border:1px solid var(--line2);border-radius:9px;padding:7px 12px;font-size:13px;cursor:pointer;background:rgba(255,255,255,.02)}
.linkbtn:hover{border-color:var(--gold)}

.nav{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:24px 0 6px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:10px;
  border:1px solid var(--line2);background:rgba(255,255,255,.03);color:#d3cdc0;font-size:14.5px;cursor:pointer}
.btn i{font-size:16px;color:var(--gold)}
.btn:hover{border-color:var(--gold)}
.btn.active{border-color:var(--gold);background:rgba(176,141,76,.16);color:#F1E4C4}

/* dashboard */
.kicker{color:var(--gold2);font-size:16px;letter-spacing:6px;margin:44px 0 12px}
.hero{font-family:Georgia,serif;font-weight:500;font-size:112px;line-height:.9;letter-spacing:-3px;color:#F8F3E8;text-shadow:0 2px 40px rgba(0,0,0,.6)}
.sub{color:var(--muted);font-size:17px;letter-spacing:1.5px;margin-top:14px}
.rule{width:88px;height:2px;background:var(--gold);margin-top:22px}
.bottombar{margin-top:52px}
.bar{display:flex;height:7px;width:560px;max-width:80vw;border-radius:5px;overflow:hidden;background:rgba(255,255,255,.07);margin-bottom:18px}
.stats{display:flex;align-items:flex-end;gap:48px;flex-wrap:wrap}
.stat .l{color:var(--dim);font-size:14px;letter-spacing:1px;margin-bottom:6px}
.stat .v{font-size:38px;font-weight:500;font-family:Georgia,serif}
.stat.alert .l,.stat.alert .v{color:var(--red);cursor:pointer}

/* login overlay */
.overlay{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:rgba(5,5,6,.72)}
.card{background:var(--panel);border:1px solid var(--line2);border-radius:16px;padding:30px 32px;width:340px;text-align:center}
.card h2{font-family:Georgia,serif;font-weight:500;font-size:22px;margin-bottom:6px}
.card p{color:var(--muted);font-size:13px;margin-bottom:18px}
.card input{width:100%;padding:11px 13px;border-radius:9px;border:1px solid var(--line2);background:#0c0c0e;color:var(--cream);font-size:15px;margin-bottom:12px}
.card button{width:100%;padding:11px;border-radius:9px;border:1px solid var(--gold);background:rgba(176,141,76,.14);color:#F1E4C4;font-size:15px;cursor:pointer}
.err{color:var(--red);font-size:13px;min-height:16px;margin-top:8px}

/* foglio */
.toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:20px 0 14px}
.title{font-family:Georgia,serif;font-size:26px;color:#F3EEE3}
.count{color:var(--dim);font-size:15px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:6px 13px;border-radius:20px;font-size:13px;border:1px solid var(--line2);color:#b7b1a4;cursor:pointer}
.chip.on{background:rgba(176,141,76,.18);border-color:var(--gold);color:#F1E4C4}
.search{margin-left:auto;display:flex;align-items:center;gap:8px;color:var(--muted);border:1px solid var(--line2);border-radius:9px;padding:0 12px}
.search input{background:transparent;border:0;color:var(--cream);padding:9px 0;font-size:14px;outline:none;width:200px}
.tblwrap{position:relative;z-index:2;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:rgba(9,9,11,.55)}
table{width:100%;border-collapse:collapse;font-size:14px}
thead th{text-align:left;padding:12px 12px;font-weight:500;color:#E4D3AC;font-size:13px;background:rgba(176,141,76,.10);border-bottom:1px solid #6a5327;white-space:nowrap;position:sticky;top:0}
tbody td{padding:9px 12px;border-bottom:1px solid #20202700;color:#DAD4C7;border-bottom:1px solid var(--line)}
tbody tr:nth-child(even) td{background:rgba(255,255,255,.018)}
.muted{color:var(--muted)}
.dcell{border:1px solid var(--line2);border-radius:7px;padding:5px 8px;background:rgba(255,255,255,.03);color:var(--cream);font-size:13px;width:104px}
.dcell.empty{border-style:dashed;color:#6f6f78}
.ck{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid #4a4a52}
.ck.on{background:var(--green);color:#fff;border-color:var(--green)}
.pill{padding:3px 11px;border-radius:20px;font-size:12.5px;white-space:nowrap}
.p-DA_SPEDIRE{background:rgba(255,255,255,.06);color:var(--dim)}
.p-AFFIDATO{background:rgba(198,167,104,.18);color:#E4CE9A}
.p-SPEDITO{background:rgba(91,143,214,.18);color:#9DBEEA}
.p-CONSEGNATO{background:rgba(79,160,110,.18);color:#8FD3AA}
.p-alert{background:rgba(226,75,74,.18);color:var(--red)}
.foot{display:flex;align-items:center;justify-content:space-between;margin-top:14px;color:var(--muted);font-size:13px}
.pager{display:flex;gap:8px;align-items:center}
.hidden{display:none!important}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:20;background:#161418;border:1px solid var(--gold);color:#F1E4C4;padding:10px 16px;border-radius:10px;font-size:14px;opacity:0;transition:opacity .2s}
.toast.show{opacity:1}
