/* ===== Restaurant Demo HorecaHero HACCP — temă „smokehouse premium" (jar, cupru, fum) ===== */
:root{
  --bg:#0b0704;           /* espresso aproape negru, cald */
  --on-bg:#f6ecda;        /* text crem deschis */
  --on-dim:#a2917a;       /* text estompat, mai cald */
  --on-line:rgba(246,236,218,.11);
  --paper:#221a11;        /* inputuri (închise) */
  --paper-2:#2b2117;
  --paper-card:#1b140d;   /* carduri = lemn afumat închis */
  --paper-card-2:#241b11;
  --ink:#f4ead7;          /* text deschis PE card închis */
  --ink-soft:#c9b795;
  --ink-faint:#94826a;
  --line:#3a2d1d;
  --line-strong:#50402a;
  --rule:#302517;
  --ox:#d5623c;           /* jar cupru mai viu, mai bogat */
  --ox-deep:#9a3421;
  --ox-glow:rgba(213,98,60,.35);
  --sage:#8ba557;         /* verde luminos pt dark */
  --amber:#e6a636;        /* chihlimbar / alamă */
  --gold:#caa15a;         /* accent auriu fin, hairline lux */
  /* umbre stratificate: ambientală moale + cheie clară = adâncime „scumpă" */
  --shadow:0 1px 0 rgba(246,236,218,.04) inset, 0 10px 34px -12px rgba(0,0,0,.72), 0 3px 10px -4px rgba(0,0,0,.5);
  --shadow-sm:0 1px 0 rgba(246,236,218,.05) inset, 0 6px 18px -10px rgba(0,0,0,.7);
  --radius:15px;
  --ease:cubic-bezier(.22,.61,.28,1);   /* iesire moale, „premium" */
  --spring:cubic-bezier(.34,1.56,.5,1); /* usor elastic la apasare/pop */
  --font-display:'Saira Condensed', 'Arial Narrow', sans-serif;
  --font-num:'Anton', Impact, sans-serif;
  --font:'Archivo', system-ui, sans-serif;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;min-height:100%;overflow-x:hidden;max-width:100%;}
img,svg{max-width:100%;}
body{
  background-color:var(--bg); color:var(--ink);
  font-family:var(--font); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  font-feature-settings:"tnum" 1, "ss01" 1; line-height:1.5;
  min-height:100vh;
  background-image:
    radial-gradient(120% 60% at 10% -8%, rgba(213,98,60,.16), transparent 55%),
    radial-gradient(120% 55% at 95% 108%, rgba(230,166,54,.11), transparent 55%),
    radial-gradient(90% 90% at 50% 40%, transparent 62%, rgba(0,0,0,.42) 100%),  /* vignette moale */
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.045'/></svg>");
  background-attachment:fixed;
}
/* ---- text care stă DIRECT pe fundalul închis ---- */
header.top{border-bottom-color:var(--on-line) !important;}
header.top::after{background:var(--on-line) !important;}
.brand h1{color:var(--on-bg);}
.brand .sub{color:var(--on-dim);}
.sync{color:var(--on-dim);} .sync b{color:var(--on-bg);}
.tab{color:var(--on-dim);}
.tab:hover{color:var(--on-bg);background:rgba(236,225,200,.08);}
.tabs{background:transparent;}
.toolbar h2, h2.onbg, .toolbar h2{color:var(--on-bg);}
h2{color:var(--on-bg);}
.zone-h{color:var(--on-bg);}
.zone-h .n{color:var(--on-dim);border-color:var(--on-line);}
.empty h3{color:var(--on-bg);} .empty p{color:var(--on-dim);}
.empty .big{background:rgba(236,225,200,.06);}
.onbg-dim{color:var(--on-dim) !important;}
.wrap{max-width:1060px;margin:0 auto;padding:32px 22px 80px;}
.hide{display:none !important;}

/* ---------- HEADER ---------- */
header.top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;
  padding-bottom:16px;border-bottom:2.5px solid var(--ink);position:relative;margin-bottom:24px;}
header.top::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--ink);opacity:.32;}
.brand{display:flex;align-items:flex-start;gap:15px;}
.brand .flame{flex:none;margin-top:2px;width:56px;height:56px;
  background:url(/logo.svg) center/contain no-repeat;}
.brand .flame svg{display:none;}
.brand h1{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.5px;
  font-size:clamp(32px,6vw,52px);line-height:.92;margin:0;}
.brand .sub{margin-top:5px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-soft);font-weight:600;}
.brand .sub b{color:var(--ox);font-weight:700;}
.head-actions{display:flex;align-items:center;gap:10px;}
.sync{font-size:11px;color:var(--ink-faint);text-align:right;letter-spacing:1px;text-transform:uppercase;font-weight:600;line-height:1.4;}
.sync b{color:var(--ink);}

/* ---------- NAV SECȚIUNI ---------- */
.sectnav{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap;}
.sectnav a{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:15px;
  padding:9px 18px;border-radius:10px;border:1.5px solid var(--line-strong);background:var(--paper-card);color:var(--ink-soft);
  text-decoration:none;box-shadow:var(--shadow-sm);transition:.15s;}
.sectnav a:hover{color:var(--ink);transform:translateY(-1px);}
.sectnav a.active{background:var(--ox);color:#f6efe2;border-color:var(--ox-deep);}

/* ---------- DOCUMENTE (fișe/acte) ---------- */
.docgroup{background:var(--paper-card);border:1.5px solid var(--line-strong);border-radius:14px;margin-bottom:16px;overflow:hidden;box-shadow:var(--shadow);}
.docgroup>h3{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.6px;font-size:19px;
  padding:14px 18px;border-bottom:1.5px solid var(--rule);display:flex;align-items:center;gap:10px;}
.docgroup>h3 .cnt{margin-left:auto;font-family:var(--font);font-size:12px;font-weight:700;color:var(--ink-faint);}
.docitem{display:flex;align-items:center;gap:14px;padding:13px 18px;border-bottom:1px solid var(--rule);flex-wrap:wrap;}
.docitem:last-child{border-bottom:none;}
.docitem .dn{flex:1;min-width:180px;font-weight:600;font-size:14px;}
.docitem .dn small{display:block;color:var(--ink-faint);font-weight:400;font-size:11.5px;margin-top:2px;}
.docitem .dbtns{display:flex;gap:7px;flex-wrap:wrap;}

/* ---------- BUTTONS ---------- */
.btn{font-family:var(--font);font-size:13px;font-weight:700;letter-spacing:.2px;cursor:pointer;transition:.15s;
  border:1.5px solid var(--ink);background:var(--paper-2);color:var(--ink);
  padding:9px 14px;border-radius:9px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;box-shadow:var(--shadow-sm);}
.btn:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 rgba(35,29,22,.18);}
.btn svg{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.btn.primary{background:var(--ox);color:#f3e8d6;border-color:var(--ox-deep);box-shadow:2px 2px 0 rgba(111,32,26,.5);}
.btn.primary:hover{box-shadow:3px 3px 0 rgba(111,32,26,.55);}
.btn.ghost{background:transparent;box-shadow:none;}
.btn.ghost:hover{background:var(--ink);color:var(--paper);box-shadow:none;}
.btn.icon{padding:0;width:38px;height:38px;justify-content:center;}
.btn.sm{padding:6px 10px;font-size:12px;border-radius:7px;}

/* ---------- TABS ---------- */
.tabs{display:flex;flex-wrap:wrap;gap:6px;background:transparent;border:none;padding:0;margin-bottom:24px;overflow:visible;}
.tab{flex:none;font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:1.5px;font-size:16px;
  padding:8px 16px 7px;color:var(--ink-soft);cursor:pointer;border:1.5px solid transparent;border-radius:8px;transition:.15s;
  display:inline-flex;align-items:center;gap:8px;box-shadow:none;}
.tab:hover{color:var(--ink);background:rgba(35,29,22,.05);}
.tab.active{color:#f6efe2;background:var(--ox);box-shadow:2px 2px 0 rgba(0,0,0,.3);}
.tab .badge{background:var(--ox);color:#f3e8d6;font-family:var(--font);font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;}

/* ---------- STATS ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:30px;}
.stat{background:var(--paper-card);border:1.5px solid var(--line-strong);border-radius:12px;padding:15px 16px 13px;
  position:relative;overflow:hidden;box-shadow:var(--shadow);}
.stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--ink-faint);}
.stat .k{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;font-weight:700;color:var(--ink-soft);margin-top:8px;order:2;}
.stat .v{font-family:var(--font-num);font-size:44px;line-height:.9;letter-spacing:.5px;color:var(--ink);order:1;}
.stat.red::before{background:var(--ox);} .stat.red .v{color:var(--ox);}
.stat.amber::before{background:var(--amber);} .stat.amber .v{color:var(--amber);}
.stat.green::before{background:var(--sage);} .stat.green .v{color:var(--sage);}
.stat.blue::before{background:var(--ink);} .stat.blue .v{color:var(--ink);}

/* ---------- TOOLBAR ---------- */
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.toolbar h2{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:28px;}
.toolbar .right{display:flex;gap:10px;flex-wrap:wrap;}
.search{position:relative;}
.search input{background:var(--paper-2);border:1.5px solid var(--line-strong);color:var(--ink);padding:9px 14px 9px 34px;
  border-radius:9px;font-family:var(--font);font-size:14px;width:190px;}
.search input::placeholder{color:var(--ink-faint);}
.search input:focus{outline:none;border-color:var(--ox);}
.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--ink-faint);stroke:currentColor;stroke-width:2;fill:none;}

/* ---------- ZONE HEADERS ---------- */
.zone-h{display:flex;align-items:center;gap:13px;margin:28px 0 16px;font-family:var(--font-display);font-weight:700;
  text-transform:uppercase;letter-spacing:1px;font-size:24px;color:var(--ink);}
.zone-h::after{content:"";flex:1;border-bottom:2px dotted var(--line-strong);transform:translateY(2px);}
.zone-h .n{font-family:var(--font);font-size:12px;font-weight:700;letter-spacing:1.5px;color:var(--ink-soft);
  border:1.5px solid var(--line-strong);border-radius:30px;padding:3px 11px;}
.zone-h.urgent{color:var(--ox);} .zone-h.urgent .n{color:var(--ox);border-color:var(--ox);}

/* ---------- DE COMANDAT (carduri) ---------- */
.grid{display:flex;flex-direction:column;gap:15px;}
.icard{background:var(--paper-card);border:1.5px solid var(--line-strong);border-radius:14px;padding:18px 20px 16px;
  position:relative;box-shadow:var(--shadow);overflow:hidden;
  background-image:repeating-linear-gradient(0deg, transparent 0, transparent 31px, rgba(35,29,22,.04) 31px, rgba(35,29,22,.04) 32px);}
.icard .cap-stripe{position:absolute;left:0;top:0;bottom:0;width:5px;}
.icard .top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;}
.icard .tag{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:700;letter-spacing:1.6px;
  text-transform:uppercase;color:var(--ink-faint);}
.icard .tag::before{content:"";width:9px;height:9px;border-radius:2px;background:var(--cap,var(--ink-faint));}
.icard h4{font-family:var(--font-display);font-weight:700;font-size:25px;line-height:1;text-transform:uppercase;letter-spacing:.4px;margin:2px 0;}
.icard .supp{font-size:12px;color:var(--ink-soft);margin-top:5px;}
.icard .supp b{color:var(--ink);}
.sig{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:13px;
  padding:4px 11px 3px;border-radius:7px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;}
.sig .d{width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px rgba(0,0,0,.05);}
.sig.red{color:var(--ox);background:rgba(143,43,34,.10);border:1.5px solid rgba(143,43,34,.35);}
.sig.amber{color:var(--amber);background:rgba(156,106,20,.13);border:1.5px solid rgba(156,106,20,.4);}
.sig.green{color:var(--sage);background:rgba(86,104,56,.12);border:1.5px solid rgba(86,104,56,.4);}
.sig.new{color:var(--ink-faint);background:rgba(125,112,88,.1);border:1.5px solid var(--line-strong);}

.barwrap{margin:10px 0;}
.barline{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:7px;}
.barline .now{font-family:var(--font-num);font-size:30px;line-height:.85;color:var(--ox);}
.barline .now .u{font-family:var(--font);font-size:13px;font-weight:600;color:var(--ink-soft);margin-left:4px;}
.barline .tg{font-size:11px;letter-spacing:.6px;color:var(--ink-soft);text-transform:uppercase;font-weight:600;}
.bar{height:11px;border-radius:6px;background:rgba(35,29,22,.10);border:1px solid var(--line-strong);overflow:hidden;}
.bar>span{display:block;height:100%;border-radius:5px 0 0 5px;
  background-image:repeating-linear-gradient(45deg, var(--bc,var(--ox)) 0, var(--bc,var(--ox)) 7px, rgba(255,255,255,.2) 7px, rgba(255,255,255,.2) 14px);}
.bar.red>span{--bc:var(--ox);} .bar.amber>span{--bc:var(--amber);} .bar.green>span{--bc:var(--sage);}
.order{font-family:var(--font);font-size:13px;color:var(--ink-soft);margin:4px 0 12px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;}
.order b{font-family:var(--font-num);font-weight:400;font-size:20px;color:var(--ox);letter-spacing:.5px;}
.icard .acts{display:flex;gap:8px;}

/* ---------- ÎN REGULĂ / DE CONFIGURAT (rânduri) ---------- */
.okrow{display:flex;align-items:center;gap:14px;padding:13px 18px;background:var(--paper-card);
  border:1.5px solid var(--line-strong);border-radius:11px;margin-bottom:9px;box-shadow:var(--shadow-sm);}
.okrow .dotcap{width:11px;height:11px;border-radius:50%;flex:none;box-shadow:0 0 0 3px rgba(0,0,0,.05);}
.okrow .nm{flex:1;font-family:var(--font-display);font-weight:600;font-size:19px;text-transform:uppercase;letter-spacing:.4px;}
.okrow .nm small{font-family:var(--font);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-faint);font-weight:700;margin-left:8px;}
.okrow .qt{font-family:var(--font-num);font-size:23px;}
.okrow .qt .u{font-family:var(--font);font-size:11px;color:var(--ink-soft);margin-left:2px;}
.okrow .mini-acts{display:flex;gap:6px;}

/* ---------- ACORDEON CAPITOLE ---------- */
.capacc{background:var(--paper-card);border:1.5px solid var(--line-strong);border-radius:12px;margin-bottom:10px;overflow:hidden;box-shadow:var(--shadow-sm);}
.capacc>.h{display:flex;align-items:center;gap:12px;padding:15px 18px;cursor:pointer;user-select:none;transition:background .12s;}
.capacc>.h:hover{background:rgba(35,29,22,.04);}
.capacc>.h .sq{width:15px;height:15px;border-radius:4px;flex:none;}
.capacc>.h .t{flex:1;font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.6px;font-size:21px;}
.capacc>.h .cnt{font-family:var(--font);font-size:12px;color:var(--ink-soft);font-weight:700;letter-spacing:.5px;}
.capacc>.h .chev{transition:transform .2s;color:var(--ink-faint);flex:none;}
.capacc.open>.h .chev{transform:rotate(90deg);}
.capacc>.b{display:none;border-top:1.5px solid var(--rule);}
.capacc.open>.b{display:block;}
.capacc .okrow{border:none;border-bottom:1px solid var(--rule);border-radius:0;margin:0;box-shadow:none;background:transparent;}
.capacc .okrow:last-child{border-bottom:none;}
.mini{font-family:var(--font);font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;}
.mini .d{width:7px;height:7px;border-radius:50%;}
.mini.red{color:var(--ox);background:rgba(143,43,34,.12);} .mini.red .d{background:var(--ox);}
.mini.amber{color:var(--amber);background:rgba(156,106,20,.13);} .mini.amber .d{background:var(--amber);}

/* ---------- CUMPĂRĂTURI ---------- */
.shop-group{background:var(--paper-card);border:1.5px solid var(--line-strong);border-radius:14px;margin-bottom:14px;overflow:hidden;box-shadow:var(--shadow);}
.shop-group h3{font-family:var(--font-display);font-size:22px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;
  padding:14px 18px;border-bottom:1.5px solid var(--rule);display:flex;align-items:center;gap:10px;}
.shop-item{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-bottom:1px solid var(--rule);font-size:14px;}
.shop-item:last-child{border-bottom:none;}
.shop-item .q{font-family:var(--font-num);font-size:20px;color:var(--ox);letter-spacing:.5px;}

/* ---------- ISTORIC ---------- */
.hrow{display:flex;align-items:center;gap:13px;padding:13px 18px;border-bottom:1px solid var(--rule);font-size:13.5px;}
.hrow:last-child{border-bottom:none;}
.hrow .ico{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:none;font-family:var(--font-display);font-weight:700;border:1.5px solid;}
.hrow .ico.in{color:var(--sage);border-color:rgba(86,104,56,.4);background:rgba(86,104,56,.1);}
.hrow .ico.cor{color:var(--ox);border-color:rgba(143,43,34,.35);background:rgba(143,43,34,.1);}
.hrow .txt{flex:1;} .hrow .txt small{color:var(--ink-faint);}
.hrow .amt{font-family:var(--font-num);font-size:18px;}

/* ---------- FURNIZORI ---------- */
.srow{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--paper-card);border:1.5px solid var(--line-strong);
  border-radius:11px;margin-bottom:9px;box-shadow:var(--shadow-sm);}
.srow .nm{flex:1;}
.srow .nm b{font-family:var(--font-display);font-size:19px;text-transform:uppercase;letter-spacing:.4px;}
.srow .nm small{color:var(--ink-faint);display:block;margin-top:2px;font-size:12px;}

/* ---------- EMPTY ---------- */
.empty{text-align:center;padding:60px 24px;}
.empty .big{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;
  border:2.5px solid var(--ox);color:var(--ox);transform:rotate(-6deg);font-family:var(--font-display);font-weight:700;font-size:26px;
  box-shadow:inset 0 0 0 4px rgba(143,43,34,.08);}
.empty h3{font-family:var(--font-display);font-size:26px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;margin-bottom:9px;}
.empty p{color:var(--ink-soft);max-width:430px;margin:0 auto 22px;line-height:1.55;font-size:14.5px;}

/* ---------- MODAL ---------- */
.modal-bg{position:fixed;inset:0;background:rgba(35,29,22,.55);display:none;place-items:center;z-index:50;padding:20px;}
.modal-bg.show{display:grid;animation:fade .15s ease;}
.modal{background:var(--paper-card-2);border:2px solid var(--ink);border-radius:16px;width:100%;max-width:460px;
  box-shadow:7px 7px 0 rgba(35,29,22,.25);animation:pop .18s cubic-bezier(.2,.9,.3,1.2);}
.modal header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:2px solid var(--ink);}
.modal header h3{font-family:var(--font-display);font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;}
.modal .body{padding:22px;display:grid;gap:15px;max-height:70vh;overflow-y:auto;}
.modal .foot{padding:16px 22px;border-top:1.5px solid var(--rule);display:flex;gap:10px;justify-content:flex-end;}
.field label{display:block;font-size:11px;color:var(--ink-soft);margin-bottom:7px;letter-spacing:1px;text-transform:uppercase;font-weight:700;}
.field input,.field select{width:100%;background:var(--paper);border:1.5px solid var(--line-strong);color:var(--ink);
  padding:11px 13px;border-radius:9px;font-family:var(--font);font-size:15px;}
.field input:focus,.field select:focus{outline:none;border-color:var(--ox);}
.field .hint{font-size:11.5px;color:var(--ink-faint);margin-top:6px;}
.two{display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.close{background:none;border:none;color:var(--ink-soft);cursor:pointer;font-size:26px;line-height:1;}
.close:hover{color:var(--ox);}
.info-line{background:var(--paper);border:1.5px solid var(--line-strong);border-radius:9px;padding:13px 15px;font-size:14px;}
.info-line b{color:var(--ox);}

/* ---------- CONFIGURARE RAPIDĂ ---------- */
.modal.wide{max-width:800px;}
.cfg-cap{margin-bottom:20px;}
.cfg-caph{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:18px;margin-bottom:10px;padding-bottom:7px;border-bottom:2px solid var(--rule);}
.cfg-caph .sq{width:14px;height:14px;border-radius:4px;flex:none;}
.cfg-bulk{margin-left:auto;font-family:var(--font);font-weight:500;font-size:12px;color:var(--ink-soft);text-transform:none;letter-spacing:0;display:flex;align-items:center;gap:6px;}
.cfg-bulk select{padding:6px 9px;font-size:12px;border-radius:7px;border:1.5px solid var(--line-strong);background:var(--paper);color:var(--ink);font-family:var(--font);}
.cfg-row{display:grid;grid-template-columns:1.7fr .9fr .9fr .9fr 1.2fr;gap:8px;align-items:center;padding:5px 0;}
.cfg-row.cfg-head{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--ink-faint);font-weight:700;padding-bottom:2px;}
.cfg-row input,.cfg-row select{padding:8px 9px;font-size:14px;border-radius:8px;border:1.5px solid var(--line-strong);background:var(--paper);color:var(--ink);width:100%;font-family:var(--font);}
.cfg-row input:focus,.cfg-row select:focus{outline:none;border-color:var(--ox);}
.cfg-nm{font-weight:600;font-size:14px;}
.cfg-nm small{color:var(--ink-faint);margin-left:6px;font-weight:400;}
@media(max-width:680px){
  .cfg-row{grid-template-columns:1fr 1fr;gap:6px;padding:10px 0;border-bottom:1px solid var(--rule);}
  .cfg-row.cfg-head{display:none;}
  .cfg-nm{grid-column:1 / -1;}
  .cfg-bulk{font-size:11px;}
}

/* ---------- VIZUALIZATOR DOCUMENTE ---------- */
.vwrap{position:fixed;inset:0;background:rgba(35,29,22,.65);display:none;flex-direction:column;z-index:200;padding:18px;}
.vwrap.show{display:flex;animation:fade .15s ease;}
.vbar{display:flex;align-items:center;gap:9px;background:var(--ink);color:var(--paper-2);padding:11px 16px;border-radius:13px 13px 0 0;}
.vbar .vt{flex:1;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.vbar .btn{box-shadow:none;}
.vbody{flex:1;background:#f4f1ea;border-radius:0 0 13px 13px;overflow:auto;}
.vbody iframe{width:100%;height:100%;border:none;background:#fff;display:block;}
.vbody .docview{max-width:840px;margin:0 auto;background:#fff;color:#1a1a1a;padding:42px 50px;font-family:'Archivo',sans-serif;line-height:1.55;box-shadow:0 0 30px rgba(0,0,0,.12);min-height:100%;}
.vbody .docview h1,.vbody .docview h2,.vbody .docview h3{font-family:'Saira Condensed',sans-serif;}
.vbody .docview table{border-collapse:collapse;width:100%;margin:14px 0;}
.vbody .docview td,.vbody .docview th{border:1px solid #c9c2b4;padding:6px 9px;font-size:13px;vertical-align:top;}
.vbody .docview img{max-width:100%;height:auto;}

/* ---------- TOASTS ---------- */
#toasts{position:fixed;bottom:22px;right:22px;display:grid;gap:10px;z-index:100;}
.toast{background:var(--paper-card-2);border:2px solid var(--ink);border-left:6px solid var(--sage);
  padding:12px 17px;border-radius:10px;font-size:14px;box-shadow:5px 5px 0 rgba(35,29,22,.2);animation:slidein .2s ease;max-width:340px;}
.toast.err{border-left-color:var(--ox);} .toast.warn{border-left-color:var(--amber);}
.toast .t{font-weight:700;margin-bottom:2px;} .toast .m{color:var(--ink-soft);font-size:12.5px;}
.warn-banner{background:rgba(156,106,20,.12);border:1.5px solid rgba(156,106,20,.4);color:var(--amber);
  padding:11px 16px;border-radius:10px;font-size:13px;margin-bottom:18px;font-weight:600;}

@keyframes fade{from{opacity:0;}}
@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.97);}}
@keyframes slidein{from{opacity:0;transform:translateX(20px);}}

@media(max-width:680px){
  .stats{grid-template-columns:repeat(2,1fr);gap:10px;}
  .search input{width:100%;}
  .search{flex:1;}
  .toolbar .right{width:100%;}
  .brand h1{font-size:30px;} .brand .flame{width:44px;height:44px;}
  .icard .acts{flex-wrap:wrap;}
  .okrow{flex-wrap:wrap;gap:9px;}
  .okrow .nm{min-width:55%;}
  .okrow .mini-acts{margin-left:auto;}
  .docitem .dn{min-width:0;flex-basis:100%;}
  .zone-h{font-size:20px;}
  .toolbar h2{font-size:22px;}
  .sectnav{gap:6px;} .sectnav a{font-size:12px;padding:7px 11px;}
  .tab{font-size:13px;padding:7px 10px;letter-spacing:.8px;}
}
@media(max-width:420px){ .wrap{padding:18px 12px 70px;} .stat .v{font-size:34px;}
  .sectnav a{font-size:11px;padding:6px 9px;letter-spacing:.5px;}
  .tab{font-size:12px;padding:6px 9px;}
}
@media print{
  body{background:#fff;color:#000;}
  .tabs,.toolbar,header.top,.stats,#toasts,.btn{display:none !important;}
}

/* ===== prioritate: text pe fundalul ÎNCHIS (bate regulile vechi) ===== */
.brand h1{color:var(--on-bg)!important;}
.brand .sub{color:var(--on-dim)!important;}
.brand .sub b{color:var(--amber)!important;}
.sync{color:var(--on-dim)!important;} .sync b{color:var(--on-bg)!important;}
.tab{color:var(--on-dim)!important;}
.tab.active{color:#f6efe2!important;}
.toolbar h2, h2{color:var(--on-bg)!important;}
.zone-h{color:var(--on-bg)!important;}
.zone-h.urgent{color:var(--ox)!important;}
.zone-h .n{color:var(--on-dim)!important;border-color:var(--on-line)!important;}
.empty h3{color:var(--on-bg)!important;}
.empty p{color:var(--on-dim)!important;}

/* butoane care stau pe suprafețe ÎNCHISE (header, bara vizualizator) — contur deschis */
.head-actions .btn{background:rgba(236,225,200,.08)!important;color:var(--on-bg)!important;border-color:var(--on-line)!important;box-shadow:none!important;}
.head-actions .btn:hover{background:rgba(236,225,200,.18)!important;color:var(--on-bg)!important;}
.head-actions .btn svg{stroke:var(--on-bg);}
.vbar .btn{background:rgba(236,225,200,.12)!important;color:var(--on-bg)!important;border-color:var(--on-line)!important;}
.vbar .btn:hover{background:rgba(236,225,200,.24)!important;}

/* ======================================================================
   STRAT PREMIUM — mișcare, adâncime, focus, desktop, platformă
   (adăugat la final ca să rafineze fără a strica structura existentă)
   ====================================================================== */

/* --- micro-interacțiuni: tot ce e apăsabil capătă tranziție unitară --- */
.vt,.tile,.dayb,.btn,.tab,.scan-btn,.close-btn,.btn-save,.lnk,.ct,.ck,
.sectnav a,.okrow .mini-acts .btn,.sigrow button{
  transition:transform .16s var(--ease), box-shadow .22s var(--ease),
             background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
  will-change:transform;
}
/* apăsare fizică, consistentă peste tot */
.vt:active,.tile:active,.dayb:active,.btn:active,.tab:active,
.scan-btn:active,.btn-save:active,.lnk:active,.sigrow button:active{ transform:scale(.972); }

/* hover DOAR pe dispozitive cu mouse (desktop) — pe telefon nu „se blochează" starea */
@media (hover:hover) and (pointer:fine){
  .tile:hover,.dayb:hover{ transform:translateY(-2px); box-shadow:var(--shadow); border-color:var(--gold); }
  .vt:hover:not(.active){ border-color:var(--gold); color:var(--ink); }
  .scan-btn:hover{ filter:brightness(1.06) saturate(1.05); box-shadow:0 14px 40px -14px var(--ox-glow), var(--shadow-sm); }
  .btn-save:hover{ filter:brightness(1.06); }
}

/* focus vizibil, elegant (accesibilitate + aspect îngrijit la tastatură) */
:where(button,a,input,select,textarea):focus-visible{
  outline:none; box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--gold); border-radius:10px;
}

/* --- carduri & butoane: material, nu suprafețe plate --- */
.tile,.todo-card,.form,.icard,.okrow,.docgroup,.shop-group,.stat,.capacc{
  background-image:linear-gradient(180deg, rgba(246,236,218,.035), rgba(246,236,218,0) 42%);
  background-repeat:no-repeat;
}
.scan-btn,.btn-save{
  background-image:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0) 55%);
  box-shadow:0 10px 30px -12px var(--ox-glow), var(--shadow-sm);
  letter-spacing:.5px;
}
.vt.active{ box-shadow:0 8px 22px -10px var(--ox-glow); }

/* accent auriu fin pe titlurile de zonă */
.zone-h::after{ border-bottom-style:solid; border-color:var(--line-strong); opacity:.7; }

/* inputuri: focus cald, tranziție */
.fld input,.fld select,.field input,.field select,input[type=number],input[type=text],input[type=password],select{
  transition:border-color .18s var(--ease), box-shadow .18s var(--ease), background-color .18s var(--ease);
}
.fld input:focus,.fld select:focus{ outline:none; border-color:var(--ox); box-shadow:0 0 0 3px var(--ox-glow); }

/* toasts: apariție cu spring */
.toast{ animation:toastIn .32s var(--spring) both; }
@keyframes toastIn{ from{opacity:0; transform:translateY(10px) scale(.96);} }

/* la schimbarea de secțiune, conținutul „respiră" scurt */
#home:not(.hide),#regView:not(.hide),#stocView:not(.hide),#raportView:not(.hide),
#pragView:not(.hide),#profitView:not(.hide),#contaView:not(.hide),#foiView:not(.hide),
#pierdView:not(.hide),#qrView:not(.hide),#etView:not(.hide),#acteView:not(.hide),#formView:not(.hide){
  animation:viewIn .34s var(--ease) both;
}
@keyframes viewIn{ from{opacity:0; transform:translateY(8px);} }

/* --- DESKTOP: nu mai arăta ca un telefon întins; un panou elevat, intenționat --- */
@media (min-width:900px){
  /* html body .app → specificitate mai mare decât regula veche .app din app.html */
  html body .app{
    max-width:720px; margin:26px auto 60px; padding:30px 30px 90px;
    background:linear-gradient(180deg, rgba(36,27,17,.72), rgba(20,15,9,.72));
    border:1px solid var(--line-strong); border-radius:26px;
    box-shadow:0 40px 120px -40px rgba(0,0,0,.85), 0 0 0 1px rgba(246,236,218,.03) inset;
    /* fără backdrop-filter aici: strica position:fixed pentru ferestre (teme, farfurie, etc.) */
  }
  #homeNav{ grid-template-columns:repeat(3,1fr); }   /* butoanele Acasă profită de lățime */
  .vtabs{ gap:9px; }
  .tile:hover{ box-shadow:0 18px 44px -22px rgba(0,0,0,.9); }
}
@media (min-width:1200px){
  html body .app{ max-width:780px; }
}

/* --- iPhone: respectă zona sigură (notch / bară de jos) --- */
@supports (padding:max(0px)){
  :root[data-platform="ios"] .app{
    padding-left:max(16px, env(safe-area-inset-left));
    padding-right:max(16px, env(safe-area-inset-right));
    padding-bottom:max(80px, calc(env(safe-area-inset-bottom) + 60px));
  }
  :root[data-platform="ios"] #toasts{ bottom:max(20px, calc(env(safe-area-inset-bottom) + 8px)); }
}
/* iOS: momentum scroll + fără highlight albastru urât la atingere */
:root[data-platform="ios"] body{ -webkit-overflow-scrolling:touch; }
button,a,.tile,.vt{ -webkit-tap-highlight-color:transparent; }

/* reduce mișcarea pentru cine a cerut-o din sistem */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{ animation-duration:.01ms !important; transition-duration:.01ms !important; }
}
