:root{--bg:#faf8f4;--fg:#1d2420;--mut:#66706a;--card:#fff;--line:#e4e0d8;--brand:#1f3a2e;--acc:#b5532a;--warn:#b5532a;--bad:#a12a2a}
@media (prefers-color-scheme:dark){:root{--bg:#141815;--fg:#ecebe6;--mut:#9aa39d;--card:#1d231f;--line:#2e3631;--brand:#6fae8a;--acc:#e08a5e;--warn:#e08a5e;--bad:#e06c6c}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
main{max-width:1100px;margin:0 auto;padding:16px}
h1{font-size:1.4rem;margin:.4em 0}h1 small{color:var(--mut);font-weight:400;font-size:.9rem}
a{color:var(--brand)}
.top{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 16px;background:var(--brand);color:#fff}
.top a{color:#fff;text-decoration:none}.top .brand{font-weight:700;font-size:1.1rem}
.top nav{display:flex;gap:14px;flex:1;flex-wrap:wrap}.top form{margin:0}
.menu-btn{display:none;background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:5px 12px;min-height:32px;font-size:.9rem;font-weight:600}
button,input,select{font:inherit}
button{background:var(--brand);color:#fff;border:0;border-radius:8px;padding:12px 18px;min-height:44px;cursor:pointer}
button.link{background:none;padding:6px;min-height:0;text-decoration:underline;color:#fff}
input,select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--fg);min-height:44px}
label{display:block;margin:0 0 12px}label input{margin-top:4px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin:12px 0}
.narrow{max-width:380px;margin:12vh auto}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.stat{display:flex;flex-direction:column;text-decoration:none;color:inherit;margin:0}.stat b{font-size:1.6rem}.stat span{color:var(--mut);font-size:.9rem}
.filters{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin:10px 0}
.tablewrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:12px}
table{width:100%;border-collapse:collapse}th,td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{font-size:.8rem;color:var(--mut);text-transform:uppercase;letter-spacing:.03em}.n{text-align:right;white-space:nowrap}td small{display:block;color:var(--mut)}
.warn{color:var(--warn);font-weight:600}.err{color:var(--bad)}
.tag{display:inline-block;padding:2px 8px;border-radius:99px;font-size:.78rem;background:var(--line)}.tag.est{background:#f3dfc6;color:#6b3a10}.tag.bad{background:#f2cccc;color:#6b1414}
@media (prefers-color-scheme:dark){.tag.est{background:#4a3a24;color:#f0cfa0}.tag.bad{background:#512626;color:#f3b8b8}}
@media (max-width:600px){.filters{grid-template-columns:1fr}main{padding:12px}}

/* ---- v2: navigare mobilă, butoane mari, inventar, risipă ---- */
h2{font-size:1.1rem;margin:1.4em 0 .4em}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;border-radius:8px;padding:10px 16px;min-height:44px;text-decoration:none}
.btn.secondary,button.secondary{background:transparent;color:var(--brand);border:1px solid var(--brand)}
button.link-dark{background:none;color:var(--bad);padding:4px;min-height:0;text-decoration:underline}
.muted-text{color:var(--mut);font-size:.92rem}.ok-text{color:var(--brand);font-weight:600}
tr.muted td{color:var(--mut)}
.tag.ok,.tag.st-approved{background:#d5ebd9;color:#14532d}.tag.st-submitted{background:#f3dfc6;color:#6b3a10}.tag.st-draft{background:var(--line)}
@media (prefers-color-scheme:dark){.tag.ok,.tag.st-approved{background:#1f4a2c;color:#bfe8c9}.tag.st-submitted{background:#4a3a24;color:#f0cfa0}}
.actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0}
.big-btn{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:14px;background:var(--brand);color:#fff;text-decoration:none;text-align:left;width:100%;min-height:84px;border:0}
.big-btn b{font-size:1.25rem}.big-btn span{opacity:.85;font-size:.92rem}
.big-btn-form{margin:0}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end}
.form-grid label{margin:0}
.form-inline{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}.form-inline input,.form-inline select{width:auto;flex:1;min-width:120px}
.filters label{margin:0}.filters{align-items:end}
@media (min-width:601px){.filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}
.check{display:flex;gap:8px;align-items:center;margin:6px 0}.check input{width:22px;height:22px;min-height:0}
.nw{white-space:nowrap}
details summary{cursor:pointer;color:var(--brand)}
/* inventar */
.sticky-filter{position:sticky;top:0;z-index:5;background:var(--bg);padding:8px 0}
.inv-list{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.group-h{margin:0;padding:8px 12px;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);background:var(--bg);border-bottom:1px solid var(--line)}
.inv-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line)}
.inv-name{flex:1;margin:0;font-size:.98rem}.inv-name small{display:block;color:var(--mut);font-size:.8rem}
.inv-input{display:flex;align-items:center;gap:6px}.inv-input input{width:96px;text-align:right;font-size:1.05rem}
.inv-input .unit{width:42px;color:var(--mut);font-size:.85rem}.inv-input .ro{min-width:60px;text-align:right;font-weight:600}
.inv-input{position:relative}.state{display:inline-block;width:20px;text-align:center}.state.ok{color:#2e7d4f;font-weight:700}.state.err{color:var(--bad);font-weight:700}
.err-msg{position:absolute;right:0;top:100%;font-size:.75rem;color:var(--bad);white-space:nowrap}
.submit-box{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.submit-box form{margin:0}
.sheet-row{padding:6px 4px;border-bottom:1px solid var(--line);margin:0}
/* navigare jos pe telefon */
.bottom-nav{display:none}
@media (max-width:760px){
  .top .main-nav{display:none}
  .top.open .main-nav{display:flex;flex-direction:column;gap:0;order:10;flex-basis:100%;margin:6px -16px -10px;background:var(--brand)}
  .top.open .main-nav a{padding:13px 16px;border-top:1px solid rgba(255,255,255,.15);font-size:1.05rem}
  .menu-btn{display:inline-block!important}
  body.has-bottom main{padding-bottom:84px}
  .bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
  .bottom-nav a{flex:1;text-align:center;padding:14px 4px;text-decoration:none;font-weight:600;color:var(--brand)}
  .top .brand{flex:1}
}
.state-box{display:inline-block;width:22px;text-align:center}

/* ---- v3: analiză și grafice ---- */
:root{--series-1:#2a78d6;--grid:#e9e7e1;--h1:#cde2fb;--h2:#9ec5f4;--h3:#6da7ec;--h4:#3987e5;--h5:#256abf;--h6:#184f95;--h7:#0d366b;--good:#0b7a4b;--bad2:#c23a39}
@media (prefers-color-scheme:dark){:root{--series-1:#3987e5;--grid:#2a302c;--h1:#0d366b;--h2:#104281;--h3:#184f95;--h4:#1c5cab;--h5:#2a78d6;--h6:#5598e7;--h7:#9ec5f4;--good:#43c08a;--bad2:#ee7a79}}
.big-btn.alt{background:var(--card);color:var(--brand);border:1px solid var(--brand)}
.an-head h1{margin-bottom:2px}
.tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--line);margin:8px 0 10px;-webkit-overflow-scrolling:touch}
.tabs a{padding:10px 12px;white-space:nowrap;text-decoration:none;color:var(--mut);border-bottom:2px solid transparent;font-weight:600}
.tabs a.on{color:var(--brand);border-bottom-color:var(--brand)}
.filters.period{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:12px 0}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;min-width:0}
.kpi .l{font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}
.kpi .v{font-size:1.6rem;font-weight:700;font-variant-numeric:tabular-nums;margin-top:2px}.kpi .v small{font-size:.85rem;font-weight:500;color:var(--mut)}
.kpi .d{font-size:.85rem;color:var(--mut)}
.good{color:var(--good);font-weight:600}.bad{color:var(--bad2);font-weight:600}
section.card h2{margin:0 0 2px;font-size:1.1rem}.cap{color:var(--mut);font-size:.88rem;margin:2px 0 10px}
.insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:8px}
.insights div{border-top:2px solid var(--series-1);padding-top:6px;font-size:.92rem;color:var(--mut)}.insights b{display:block;color:var(--fg)}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:900px){.two{grid-template-columns:minmax(0,1fr)}}
.two .card{margin:0}
.note-box{border:1px dashed var(--mut);border-radius:10px;padding:10px 14px;color:var(--mut);font-size:.9rem}
svg.chart{width:100%;height:auto;display:block;overflow:visible}
svg.chart .gl{stroke:var(--grid);stroke-width:1}svg.chart .ref{stroke:var(--mut);stroke-width:1;stroke-dasharray:4 4}
svg.chart .tx{fill:var(--mut);font-size:12px}svg.chart .tv{fill:var(--fg);font-size:12px;font-weight:600}svg.chart .tl{fill:var(--fg);font-size:11px}
svg.chart .line{fill:none;stroke:var(--series-1);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
svg.chart .area{fill:var(--series-1);fill-opacity:.12}
svg.chart .dot{fill:var(--series-1);stroke:var(--card);stroke-width:2}
svg.chart .bar{fill:var(--series-1)}svg.chart .bar.hl{fill:var(--h6)}
svg.chart .pt{fill:var(--series-1);fill-opacity:.75;stroke:var(--card);stroke-width:2}
svg.chart .hit{fill:transparent;cursor:pointer}svg.chart .hit:hover{fill:var(--fg);fill-opacity:.04}
details>summary{margin-top:8px}
.hbs{display:flex;flex-direction:column;gap:8px}
.hb{display:grid;grid-template-columns:minmax(110px,1.4fr) 1fr minmax(84px,auto);gap:10px;align-items:center;font-size:.9rem}
.hl{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ht{height:12px;background:var(--grid);border-radius:4px;overflow:hidden;display:block}
.hf{display:block;height:100%;background:var(--series-1);border-radius:4px}
.hv{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.hv em{display:block;font-style:normal;font-weight:400;color:var(--mut);font-size:.78rem}
table.cal{border-collapse:separate;border-spacing:2px;width:auto;min-width:0}table.cal td,table.cal th{padding:0;border:0;text-align:center}
table.cal th{font-size:.7rem;color:var(--mut);font-weight:500;padding:2px}table.cal th.y{text-align:left;white-space:nowrap;padding-right:6px;font-size:.8rem}
table.cal td{width:22px;height:22px;border-radius:3px;cursor:pointer}table.cal td.nil{background:transparent;cursor:default}
table.cal.num td{width:auto;min-width:46px;height:26px;font-size:.78rem;font-variant-numeric:tabular-nums;padding:0 4px}table.cal td.tot{font-weight:700;background:none}
.heat.h0{background:var(--grid)}.heat.h1{background:var(--h1)}.heat.h2{background:var(--h2)}.heat.h3{background:var(--h3)}.heat.h4{background:var(--h4);color:#fff}
.heat.h5{background:var(--h5);color:#fff}.heat.h6{background:var(--h6);color:#fff}.heat.h7{background:var(--h7);color:#fff}
.heat-legend{display:flex;align-items:center;gap:3px;font-size:.78rem;color:var(--mut);margin-top:6px}.heat-legend i{width:18px;height:12px;border-radius:2px;display:inline-block}
#tip{position:fixed;z-index:50;pointer-events:none;background:var(--fg);color:var(--bg);padding:6px 9px;border-radius:6px;font-size:.82rem;max-width:280px;display:none;box-shadow:0 2px 8px rgba(0,0,0,.2)}

.desk{display:block}.mob{display:none}
@media(max-width:700px){.desk{display:none}.mob{display:block}}
table.pl td,table.pl th{white-space:nowrap;font-size:.82rem}table.pl td:first-child{white-space:normal;min-width:220px}
table.pl tr.subtotal td,table.pl tr.revenue td{background:var(--grid);font-weight:600}table.pl tr.result td{font-weight:700;border-top:2px solid var(--line)}
table.hist td small,table.cal.num td small{font-size:.68rem;opacity:.85}
/* rețetar editabil și alergeni */
.rl,.rl-head{display:grid;grid-template-columns:minmax(0,3fr) 110px 80px minmax(0,2fr) 36px;gap:8px;align-items:center;margin-bottom:6px}
.rl-head{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
.rl input,.rl select{width:100%;min-width:0}.rl-qty{text-align:right}.rl-del{font-size:1.3rem;line-height:1;padding:4px}
@media(max-width:700px){.rl-head{display:none}.rl{grid-template-columns:1fr 1fr 36px;padding:8px 0;border-bottom:1px solid var(--line)}
 .rl-name{grid-column:1/-1}.rl-note{grid-column:1/3}.rl-unit{grid-column:2}.rl-del{grid-row:2;grid-column:3}}
.al-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:8px 0 12px}
.al-item{border:1px solid var(--line);border-radius:10px;padding:6px 10px;margin:0}.al-item.on{border-color:var(--bad,#b3261e)}
.al-item legend{font-weight:600;padding:0 4px}.al-item label{display:inline-flex;gap:4px;align-items:center;margin-right:8px;font-size:.85rem}
table.al-matrix th.al-h{vertical-align:bottom;height:110px;padding:4px 2px;width:30px}table.al-matrix th.al-h span{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;font-size:.78rem}
table.al-matrix td.al-c{text-align:center;font-weight:700;padding:4px 2px;width:30px}table.al-matrix td.al-c.x{background:#f6d5d1;color:#7a1d14}table.al-matrix td.al-c.u{background:#fbebc8;color:#6b4a00}
table.al-matrix td small{display:block}
.warn-box{background:#fbebc8;color:#4a3500;border-radius:10px;padding:10px 14px}
.al-list .al-row{padding:12px 14px;margin-bottom:10px}.al-row-h{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}
.al-chips{display:flex;flex-wrap:wrap;gap:6px}.al-sel{width:auto;font-size:.82rem;padding:6px 8px}.al-sel.x{background:#f6d5d1;border-color:#c0473a}.al-sel.u{background:#fbebc8}
.al-row-f{display:flex;gap:8px;margin-top:8px}.al-row-f input{flex:1;min-width:0}
@media(prefers-color-scheme:dark){table.al-matrix td.al-c.x,.al-sel.x{background:#5a2420;color:#ffd9d4}table.al-matrix td.al-c.u,.al-sel.u,.warn-box{background:#4a3a14;color:#ffe9b8}}
.al-chip{display:inline-flex;flex-direction:column;align-items:center;gap:0;min-width:74px;padding:6px 8px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--fg);font-size:.82rem;cursor:pointer;line-height:1.2}
.al-chip em{font-style:normal;font-size:.68rem;min-height:.8rem;color:var(--mut)}.al-chip.x{background:#f6d5d1;border-color:#c0473a;color:#7a1d14;font-weight:600}.al-chip.u{background:#fbebc8;border-color:#c49a3a;color:#6b4a00}
.al-chip.x em,.al-chip.u em{color:inherit}.rl-del{background:none;border:1px solid var(--line);color:var(--fg);border-radius:8px;width:36px;height:36px;padding:0}
@media(prefers-color-scheme:dark){.al-chip.x{background:#5a2420;color:#ffd9d4}.al-chip.u{background:#4a3a14;color:#ffe9b8}}
/* HACCP */
.hc-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin:12px 0}
.hc-tile{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line);border-left:6px solid var(--line);border-radius:12px;background:var(--card);color:var(--fg);text-decoration:none;position:relative}
.hc-tile b{font-size:1.05rem}.hc-tile span{color:var(--mut);font-size:.9rem}.hc-tile em{position:absolute;top:10px;right:12px;font-style:normal;font-size:.72rem;color:var(--mut)}
.hc-tile.done{border-left-color:#3f8f5a}.hc-tile.bad{border-left-color:#c0473a}
.hc-list .card{margin-bottom:10px}.hc-row{padding:12px 14px;border-left:6px solid var(--line)}.hc-row.ok{border-left-color:#3f8f5a}.hc-row.bad{border-left-color:#c0473a}
.hc-row-h{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;margin-bottom:8px}.hc-row-h small{color:var(--mut)}
.hc-row-f{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hc-temp{display:inline-flex;align-items:center;gap:4px}.hc-temp input{width:96px;font-size:1.3rem;text-align:right;font-variant-numeric:tabular-nums}
.hc-action{display:block;margin-top:8px}.hc-action input,.hc-note{width:100%;margin-top:8px}
.seg{display:flex;gap:6px;margin:8px 0}.seg a{padding:8px 16px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--fg)}.seg a.on{background:var(--brand);color:#fff;border-color:var(--brand)}
.seg-btn{background:var(--card);color:var(--fg);border:1px solid var(--line);min-width:110px}.seg-btn.on{background:#3f8f5a;border-color:#3f8f5a;color:#fff}.seg-btn.bad.on{background:#c0473a;border-color:#c0473a}
button.link.small{font-size:.8rem}
.hc-yn{border:1px solid var(--line);border-radius:10px;padding:6px 10px}.hc-yn label{display:inline-flex;gap:4px;margin-right:12px}
.hc-steps{margin:4px 0 8px 18px;padding:0}.hc-steps li{color:var(--mut)}.hc-steps li.done{color:var(--fg)}
.hc-step-form{display:grid;grid-template-columns:minmax(0,1.4fr) 140px 90px minmax(0,2fr) auto;gap:8px;margin-top:6px}
@media(max-width:700px){.hc-step-form{grid-template-columns:1fr 1fr}.hc-step-form select,.hc-step-form input[name=action]{grid-column:1/-1}}
.hc-cook.abatere,.hc-nc.open{border-left:6px solid #c0473a}.hc-cook.ok,.hc-nc.closed{border-left:6px solid #3f8f5a}.hc-cook.deschis{border-left:6px solid #c49a3a}
tr.bad-row td{background:rgba(192,71,58,.08)}tr.muted-row td{opacity:.55}
table.hc-grid{border-collapse:separate;border-spacing:2px;width:auto}table.hc-grid td,table.hc-grid th{padding:0;border:0;text-align:center;font-size:.7rem}
table.hc-grid th.y{text-align:left;white-space:nowrap;padding-right:6px;font-size:.8rem}table.hc-grid td{width:16px}
table.hc-grid i{display:block;width:14px;height:8px;margin:1px 0;border-radius:2px;background:var(--grid)}table.hc-grid i.ok{background:#3f8f5a}table.hc-grid i.bad{background:#c0473a}
/* program de lucru */
.sch-wrap{max-height:75vh}table.sch{border-collapse:separate;border-spacing:0;width:auto;font-size:.82rem}
table.sch th,table.sch td{padding:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center}
table.sch thead th{position:sticky;top:0;background:var(--card);z-index:2;padding:4px 2px;font-weight:600;min-width:52px}
table.sch th.sch-name{position:sticky;left:0;background:var(--card);z-index:3;text-align:left;padding:6px 8px;min-width:150px;max-width:190px;white-space:normal}
table.sch th.sch-name small{display:block;font-weight:400;color:var(--mut)}
table.sch .we{background:rgba(127,127,127,.08)}table.sch .hol{background:rgba(224,138,94,.18)}
td.sch-c input{width:58px;border:0;border-radius:0;background:transparent;text-align:center;padding:8px 2px;font-size:.82rem;color:var(--fg);font-variant-numeric:tabular-nums}
td.sch-c input:focus{outline:2px solid var(--brand);background:var(--card)}td.sch-c.code input{color:#8a5a00;font-weight:700}td.sch-c.err{background:rgba(192,71,58,.2)}
td.sch-sum{min-width:110px;padding:4px 8px;font-size:.8rem;text-align:right;position:sticky;right:0;background:var(--card)}td.sch-sum.bad{box-shadow:inset 4px 0 #c0473a}td.sch-sum.warn{box-shadow:inset 4px 0 #c49a3a}td.sch-sum.ok{box-shadow:inset 4px 0 #3f8f5a}
.sch-iss ul{margin:4px 0 10px 18px;padding:0}.sch-iss li.bad{color:#b3261e}.sch-iss li.warn{color:#8a5a00}
@media(prefers-color-scheme:dark){.sch-iss li.bad{color:#f3b8b8}.sch-iss li.warn{color:#f0cfa0}td.sch-c.code input{color:#f0cfa0}}
.my-sch{list-style:none;margin:0;padding:0}.my-sch li{display:grid;grid-template-columns:90px 1fr;gap:4px 12px;padding:8px 4px;border-bottom:1px solid var(--line)}
.my-sch li.today{background:rgba(63,143,90,.12);font-weight:600}.my-sch li.past{color:var(--mut)}.my-sch .a{grid-column:2;font-size:.82rem;color:var(--mut)}
/* pontaj pe tabletă */
.kiosk{max-width:1100px;margin:0 auto}.kiosk-h{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.kiosk-clock{font-size:2.4rem;font-weight:700;font-variant-numeric:tabular-nums}
.kiosk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.kiosk-btn{display:flex;flex-direction:column;gap:6px;padding:20px 18px;border-radius:14px;border:2px solid var(--line);background:var(--card);color:var(--fg);text-decoration:none;min-height:96px}
.kiosk-btn b{font-size:1.2rem}.kiosk-btn span{color:var(--mut);font-size:.9rem}.kiosk-btn.in{border-color:#3f8f5a;background:rgba(63,143,90,.10)}
.kiosk-res{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border-radius:14px;margin:12px 0;font-size:1.1rem}.kiosk-res b{font-size:1.5rem}
.kiosk-res.intrare{background:rgba(63,143,90,.16)}.kiosk-res.iesire{background:rgba(31,58,46,.12)}
.kiosk-pin{max-width:380px;margin:12px auto;text-align:center}.kiosk-pin input{font-size:2rem;text-align:center;letter-spacing:.4em;width:100%}
.pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.pad button{font-size:1.6rem;padding:18px 0;background:var(--card);color:var(--fg);border:1px solid var(--line)}.pad button.ok{background:var(--brand);color:#fff}
tr.flag td{background:rgba(196,154,58,.10)}tr.sel td{background:rgba(63,143,90,.10)}.clock-edit{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.clock-edit input[name=reason]{min-width:180px}
pre.msg-body{white-space:pre-wrap;font-family:inherit;font-size:.85rem;background:var(--grid);padding:8px;border-radius:8px}
table.stock tr.fara_intrari td:first-child{box-shadow:inset 4px 0 #c49a3a}table.stock tr.fara_consum td:first-child{box-shadow:inset 4px 0 #6b8fb5}table.stock tr.mari td:first-child{box-shadow:inset 4px 0 #c0473a}
td.n.bad{color:#b3261e;font-weight:600}td.n.warn{color:#8a5a00}.tabs a small{color:var(--mut);font-weight:400}
@media(prefers-color-scheme:dark){td.n.bad{color:#f3b8b8}td.n.warn{color:#f0cfa0}}
input.q-in{width:90px;text-align:right;font-variant-numeric:tabular-nums}tr.stockout td{background:rgba(192,71,58,.10)}tr.stockout td:first-child{box-shadow:inset 4px 0 #c0473a}
.labels{display:flex;flex-wrap:wrap;gap:8px}.lbl{width:60mm;height:40mm;box-sizing:border-box;border:1px dashed #999;padding:3mm;display:flex;flex-direction:column;gap:1mm;font-size:9pt;background:#fff;color:#000}
.lbl b{font-size:12pt}.lbl .exp{font-weight:700;font-size:10pt}
@media print{body *{visibility:hidden}.labels,.labels *{visibility:visible}.labels{position:absolute;left:0;top:0}.lbl{border:0;page-break-after:always}}
.doc-pick{max-height:240px;overflow:auto;display:grid;gap:2px;margin:6px 0}.doc-pick small{color:var(--mut)}
table.train tr.st-neinceput td:first-child{box-shadow:inset 4px 0 #c0473a}table.train tr.st-in_lucru td:first-child{box-shadow:inset 4px 0 #c49a3a}table.train tr.st-semnat td:first-child{box-shadow:inset 4px 0 #3f8f5a}
main button.link{color:var(--brand);background:none;border:0;padding:4px 0;text-decoration:underline;cursor:pointer;min-height:0}
.form-grid fieldset,.form-grid textarea,.form-grid details,.form-grid h2{grid-column:1/-1}.form-grid textarea{width:100%}
fieldset.hc-yn label{white-space:nowrap}
.form-grid > p.cap{grid-column:1/-1}
details.cdoc{border-bottom:1px solid var(--line);padding:8px 0}details.cdoc summary{cursor:pointer;list-style:none}details.cdoc summary small{display:block;color:var(--mut);margin-top:2px}
details.cdoc form{margin-top:10px}button.chk{width:34px;height:34px;min-height:0;padding:0;border:2px solid var(--line);background:var(--card);color:#fff;border-radius:8px;font-weight:700}
button.chk.on{background:#3f8f5a;border-color:#3f8f5a}ul.ctl-actions{list-style:none;padding:0;margin:0 0 12px}ul.ctl-actions li{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line)}
ul.ctl-actions li span small{display:block;color:var(--mut)}ul.ctl-actions li.done span{text-decoration:line-through;color:var(--mut)}ul.ctl-actions li.bad span small{color:#b3261e}
.hc-tile span a{color:var(--brand)}
.doc-sel .doc-row{display:flex;gap:6px;align-items:baseline;white-space:normal;padding:3px 0}.doc-sel small{color:var(--mut)}
.doc-sel{display:block}.doc-sel .doc-row{display:flex !important;flex-direction:row !important;justify-content:flex-start;gap:10px;align-items:flex-start;text-align:left;margin:0}
.doc-sel .doc-row input{width:22px !important;height:22px;flex:0 0 22px;margin-top:2px}.doc-sel .doc-row small{white-space:nowrap}
.form-grid .actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.form-grid .actions .btn,.form-grid .actions button{width:auto;flex:0 0 auto}
textarea{font:inherit}
input[type=checkbox],input[type=radio]{width:auto;min-height:0;padding:0}
.form-grid label:has(textarea),.form-grid label.wide{grid-column:1/-1}
.qr-head{text-align:center}.qr-head h1{margin-bottom:0}.qr-actions{display:grid;grid-template-columns:1fr;gap:8px;margin:12px 0}
.qr-actions button{width:100%;min-height:3rem;font-size:1.05rem}.qr-ok{text-align:center}
.qr-nav{display:flex;gap:6px;overflow-x:auto;padding:6px 0;margin-bottom:8px;position:sticky;top:0;background:var(--bg,#faf8f3);z-index:2}
.qr-nav a{white-space:nowrap;border:1px solid var(--line,#ddd);border-radius:999px;padding:4px 10px;text-decoration:none}
.qr-item{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line,#eee)}.qr-item:last-child{border-bottom:0}
.qr-price{white-space:nowrap;font-weight:600}.qr-req{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.qr-req.st-deschis{border-left:6px solid #c0392b}.qr-req.st-preluat{border-left:6px solid #d4a017}.qr-table{font-size:1.4rem}
@media(min-width:640px){.qr-actions{grid-template-columns:repeat(3,1fr)}}
.resv-grid th,.resv-grid td{padding:3px 4px;text-align:center;font-size:.78rem;min-width:2.6rem}.resv-grid tbody th{text-align:left;white-space:nowrap}
.resv-grid td.busy{background:rgba(63,143,90,.22)}.resv-grid td.st-cerere{background:rgba(212,160,23,.3)}.resv-grid td.st-sosita{background:rgba(63,143,90,.45)}
.resv-actions{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}.resv-actions form{margin:0}.resv-actions button{width:auto}
.resv-move summary{font-size:.8rem;cursor:pointer;color:var(--mut,#666)}.resv-move select{min-width:12rem}
.resv-grid tbody th small{display:inline;font-weight:400;color:var(--mut,#666)}
button.linkbtn{background:none;border:0;padding:0 6px;min-height:0;color:var(--mut);cursor:pointer;font-size:.9em}button.linkbtn:hover{color:var(--bad)}
fieldset.days{display:flex;flex-wrap:wrap;gap:4px 14px;border:1px solid var(--line);border-radius:8px;padding:6px 10px}fieldset.days legend{padding:0 4px}
.daynav{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}.daynav .btn{width:auto;min-width:48px}.daynav form{margin:0;flex:1 1 150px;max-width:220px}.daynav .muted-text{flex-basis:100%}
input,select,textarea{max-width:100%}.tabs{max-width:100%;min-width:0}main,.card,section{min-width:0}
label{min-width:0;max-width:100%}input[type=file]{width:100%;min-width:0}.filters{flex-wrap:wrap}
.page-help{float:right;margin:4px 0 0 8px;position:relative;z-index:5}.page-help>summary{list-style:none;cursor:pointer;width:30px;height:30px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--mut);background:var(--card)}.page-help>summary::-webkit-details-marker{display:none}.page-help[open]>div{position:absolute;right:0;top:36px;width:min(340px,86vw);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 14px;box-shadow:0 6px 24px rgba(0,0,0,.15);font-size:.92rem}.page-help ul{margin:6px 0 0;padding-left:18px}.page-help li{margin:3px 0}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--mut)}.dot.ok{background:var(--good)}.dot.warn{background:var(--warn)}.dot.bad{background:var(--bad)}table.fresh td small{display:block}
.kiosk-stay{margin:14px 0;text-align:center}.kiosk-stay button.big{font-size:1.2rem;padding:16px 22px;width:100%;max-width:460px}
.badge{display:inline-block;min-width:18px;padding:0 5px;border-radius:9px;background:var(--bad);color:#fff;font-size:.75rem;font-weight:700;text-align:center;line-height:18px}
.zone-h{margin:14px 0 6px;font-size:1rem;color:var(--mut);text-transform:uppercase;letter-spacing:.04em}
.tables{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.tbl{border:2px solid var(--line);border-radius:10px;padding:8px;background:var(--card);display:flex;flex-direction:column;gap:4px}
.tbl.mine{border-color:var(--good);background:color-mix(in srgb,var(--good) 10%,var(--card))}
.tbl.other{opacity:.8;background:color-mix(in srgb,var(--mut) 8%,var(--card))}
.tbl.ask{box-shadow:0 0 0 3px var(--warn)}
.tbl-h{display:flex;justify-content:space-between;align-items:baseline}.tbl-h b{font-size:1.3rem}
.tbl-s{font-size:.85rem;color:var(--mut)}.tbl.busy .tbl-s{color:var(--fg);font-weight:600}
.tbl-req{font-size:.8rem;font-weight:700;color:var(--warn)}
.tbl-a{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.tbl-a form{margin:0}
button.sm{padding:6px 10px;min-height:36px;font-size:.85rem}button.sm.link{background:none;color:var(--mut);text-decoration:underline}
.note-open{display:flex;gap:4px}.note-open input{width:52px;min-height:36px;padding:4px}
.team-form{display:grid;gap:8px}.quick{display:flex;flex-wrap:wrap;gap:6px}
.tmsg{border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin:6px 0;background:var(--card);max-width:640px}
.tmsg.me{margin-left:auto;background:color-mix(in srgb,var(--good) 10%,var(--card))}.tmsg-h{font-size:.85rem;color:var(--mut);margin-bottom:2px}
.tbl-resv{font-size:.8rem;font-weight:700;color:#fff;background:var(--brand);border-radius:6px;padding:2px 6px;align-self:flex-start}.tbl.resv{border-style:dashed}
.tbl-resv.ok{background:var(--good)}button.sm.sign{background:var(--brand)}
.todo-sign{border:2px solid var(--warn);display:grid;gap:6px}.todo-row{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin:0}
@media (min-width:700px){.tabs{flex-wrap:wrap;overflow-x:visible}}.wx-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:0}.wx-day{border:1px solid var(--line);border-radius:10px;padding:8px;background:var(--card);text-align:center;text-decoration:none;color:var(--fg)}.wx-day b{display:block}.wx-day .t{font-size:1.1rem;font-weight:700}.wx-day small{display:block;color:var(--mut)}
/* meniul QR, ca meniul tipărit */
.qrm{max-width:760px;margin:0 auto}
.qrm-head{text-align:center;margin:8px 0 12px}.qrm-brand{font-size:2rem;font-weight:600;letter-spacing:.02em;color:var(--brand)}
.qrm-brand small{display:block;font-size:.95rem;font-style:italic;font-weight:400;color:var(--mut);letter-spacing:.06em}
.qrm-head p{margin:2px 0 0;color:var(--mut)}
.qrm-nav{display:grid;grid-template-columns:1fr;gap:10px;padding:8px 0;margin:0 0 6px;scroll-margin-top:8px}
@media (min-width:560px){.qrm-nav{grid-template-columns:1fr 1fr}.qrm-navgrp:first-child{grid-column:1/-1}}
.qrm-navgrp{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:9px 11px 11px;text-align:left}
.qrm-navgrp-t{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;padding:0 0 7px;border-bottom:1px solid var(--line);
  font-size:1.08rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand);text-decoration:none}
.qrm-navgrp-t::after{content:"↓";font-weight:400;opacity:.6}
.qrm-navgrp-t small,.qrm-grp small{display:block;font-size:.7rem;font-weight:500;letter-spacing:.12em;opacity:.7;margin-top:1px}
.qrm-chips{display:flex;flex-wrap:wrap;gap:6px}
.qrm-grp{scroll-margin-top:12px;margin:34px 0 6px;padding:13px 14px;border-radius:14px;background:var(--brand);color:#fff;text-align:center;
  font-size:1.35rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}
.qrm-up{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:6;background:var(--brand);color:#fff;text-decoration:none;border-radius:999px;padding:9px 14px;font-size:.9rem;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.qrm-chips a{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:5px 11px;text-decoration:none;color:var(--fg);background:var(--bg);font-size:.88rem;white-space:nowrap}
.qrm-sec{scroll-margin-top:12px;margin:18px 0 8px}
.qrm-sec h2{text-align:center;font-size:1.25rem;letter-spacing:.04em;margin:14px 0 10px;color:var(--brand)}
.qrm-sec h2 em{font-style:normal;font-weight:400;color:var(--mut)}
.qrm-item{display:grid;grid-template-columns:1fr;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:10px 0}
.qrm-item img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:var(--line)}
@media (min-width:560px){.qrm-item.has-photo{grid-template-columns:200px 1fr}.qrm-item.has-photo img{height:100%;aspect-ratio:auto;min-height:150px}}
.qrm-body{padding:10px 14px 12px}
.qrm-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.qrm-top h3{margin:0;font-size:1.02rem;text-transform:uppercase;letter-spacing:.02em}
.qrm-price{white-space:nowrap}.qrm-price b{font-size:1.15rem}.qrm-price small{color:var(--mut);margin-right:8px}
.qrm-en-t{color:var(--mut);font-size:.85rem;text-transform:uppercase;letter-spacing:.02em}
.qrm-ro{margin:4px 0 0;font-weight:500}.qrm-en{margin:2px 0 0;color:var(--mut);font-size:.92rem}
.qrm-al{margin:6px 0 0;font-size:.8rem;color:var(--mut)}
.qrm-foot{text-align:center;margin-top:20px}
.sec-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0}.sec-row input{flex:1 1 140px}.sec-row input.q-in{flex:0 0 70px}
.qa-item{border-bottom:1px solid var(--line);padding:6px 0}.qa-item>summary{display:flex;gap:10px;align-items:center;cursor:pointer;list-style:none}
.qa-item>summary::-webkit-details-marker{display:none}.qa-thumb{width:56px;height:42px;object-fit:cover;border-radius:6px;flex:0 0 56px}
.qa-item.nophoto form{margin-left:0}
.qa-name small{display:block;color:var(--mut)}.qa-item form{margin:8px 0 6px 66px}
.top-search{margin:0 8px}.top-search input{min-height:32px;padding:4px 10px;border-radius:999px;border:0;width:150px;font-size:.9rem}
@media (max-width:700px){.top-search input{width:96px}}
.search-res{list-style:none;padding:0;margin:0}.search-res li{padding:6px 0;border-bottom:1px solid var(--line)}.search-res small{display:block;color:var(--mut)}

/* înscriere din meniul QR și codul de client */
.qrm-sub{display:block;margin:4px 0 12px;padding:12px 14px;border-radius:14px;background:#b8860b;color:#fff;text-decoration:none;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.qrm-sub b{display:block;font-size:1.08rem}.qrm-sub span{display:block;font-size:.82rem;opacity:.9;margin-top:2px}
.sub-card h1{font-size:1.3rem;margin-top:0}.sub-done{text-align:center}
.sub-code{font-size:2.4rem;font-weight:800;letter-spacing:.18em;margin:6px 0;color:var(--brand);font-family:ui-monospace,Menlo,Consolas,monospace}
.sub-offer{font-size:1.1rem}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.voucher{border-top:1px solid var(--line);padding:8px 0}.voucher small{display:block;color:var(--mut)}
.qrm-nu{margin:6px 0 0;font-size:.8rem;color:var(--mut)}.qrm-nu summary{cursor:pointer}.qrm-nu p{margin:4px 0 0}
.residence{border:1px solid var(--line);border-radius:10px;padding:8px 12px}.residence legend{font-weight:600;padding:0 4px}
.residence .check{display:flex;gap:8px;align-items:center;margin:4px 0}.residence .city-in{margin-top:6px}
.sub-link{word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85rem}.sub-rules{margin-top:10px;font-size:.88rem}
.sub-rules summary{cursor:pointer;color:var(--brand)}.sub-ref h2{font-size:1.15rem;margin-top:0}
.rule-box{background:#fff7e0;border:1px solid #e6cf8a;border-radius:10px;padding:8px 12px;margin:8px 0}
/* comenzi din tabletă și ecranele bucătărie / bar */
.ko-search{margin:6px 0}.ko-sec{border:1px solid var(--line);border-radius:12px;margin:8px 0;background:var(--card)}
.ko-sec>summary{padding:12px 14px;font-weight:700;cursor:pointer}.ko-row{display:grid;grid-template-columns:1fr auto;gap:6px 10px;padding:8px 14px;border-top:1px solid var(--line);align-items:center}
.ko-row .ko-note{grid-column:1/-1;display:none}.ko-row.on{background:#eef6ef}.ko-row.on .ko-note{display:block}
.ko-qty{display:flex;gap:4px;align-items:center}.ko-qty .q-in{width:48px;text-align:center}.ko-qty button{min-width:40px;font-size:1.1rem}
.ko-send{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--brand);color:#fff;padding:10px 14px;border-radius:12px;margin:12px 0}
@media (min-width:761px){.ko-send{bottom:10px}}
.ko-sent{list-style:none;padding:0;margin:0}.ko-sent li{padding:4px 0}
.tag.st-bar{background:#e3ecf7}.tag.st-bucatarie{background:#f7ebe0}.tag.ks-gata{background:#dff1e2;color:#1d6b33}.tag.ks-nou{background:#fff1cc}.tag.ks-lucru{background:#e3ecf7}
.ks-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.ks-head h1 small{color:var(--mut);font-weight:400}
.ks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;align-items:start}
.ks-order{background:var(--card);border:2px solid var(--line);border-radius:14px;padding:10px 12px}
.ks-order.ks-nou{border-color:#d4a017;box-shadow:0 0 0 3px #fff1cc}.ks-order.ks-lucru{border-color:#4a78b5}.ks-order.ks-gata{opacity:.65;border-color:#2e7d4f}
.ks-order header{display:flex;justify-content:space-between;align-items:baseline;font-size:1.25rem}.ks-time{font-size:.85rem;color:var(--mut)}.ks-time.late{color:var(--bad);font-weight:700}
.ks-waiter{margin:2px 0 6px;color:var(--mut);font-size:.85rem}.ks-order ul{list-style:none;padding:0;margin:0}
.ks-line{display:flex;align-items:center;gap:6px;border-top:1px solid var(--line);padding:6px 0}.ks-item{flex:1;text-align:left;background:none;border:0;color:var(--fg);font-size:1.05rem;padding:4px 0;cursor:pointer}
.ks-item em{display:block;font-style:normal;color:var(--bad);font-weight:600;font-size:.9rem}.ks-q{font-size:1.2rem}.ks-l-gata .ks-item{text-decoration:line-through;color:var(--mut)}
.ks-order footer{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.ks-empty{color:var(--mut);font-size:1.1rem;padding:30px;text-align:center;grid-column:1/-1}
.ks-dlg{max-width:640px;width:94vw;border:0;border-radius:16px;padding:16px}.ks-dlg::backdrop{background:rgba(0,0,0,.45)}
.kr-photo{width:100%;max-height:240px;object-fit:cover;border-radius:12px}.kr h2{margin:10px 0 4px}.kr-al{color:var(--bad);font-weight:600;margin:0 0 8px}
.kr-t{width:100%}.kr-t td small{display:block;color:var(--mut)}.kr-t td,.kr-t th{padding:6px 4px;font-size:1.02rem}
.ready-box{border:2px solid #2e7d4f;background:#eef8f0}
.qrm-promos{margin:6px 0 12px}.qrm-promos-h{font-size:1.1rem;margin:4px 0 8px;color:var(--brand);text-align:center}.qrm-promos-h em{font-style:normal;font-weight:400;color:var(--mut)}
.qrm-promo-row{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch}
.qrm-promo{flex:0 0 82%;max-width:360px;scroll-snap-align:start;background:var(--card);border:2px solid #b8860b;border-radius:14px;overflow:hidden}
.qrm-promo:only-child{flex-basis:100%;max-width:none}.qrm-promo img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.qrm-promo-b{padding:10px 12px}.qrm-promo-b h3{margin:4px 0 2px;font-size:1.05rem;text-transform:uppercase}.qrm-promo-b p{margin:4px 0}
.qrm-promo-k{display:inline-block;background:#b8860b;color:#fff;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.qrm-promo.k-nou .qrm-promo-k{background:#2e7d4f}.qrm-promo.k-nou{border-color:#2e7d4f}.qrm-promo.k-reducere .qrm-promo-k{background:#b3261e}.qrm-promo.k-reducere{border-color:#b3261e}
.qrm-promo-p{font-size:1.25rem;font-weight:800;color:var(--brand)}
.bday{border:1px solid var(--line);border-radius:10px;padding:8px 12px}.bday legend{font-weight:600;padding:0 4px}.bday select{width:auto;margin-right:6px}
/* cardul clientului și ștampilele */
.loy-card{background:linear-gradient(135deg,#1f3a2c,#2f5a44);color:#fff;border-radius:18px;padding:18px;text-align:center;margin:6px 0 12px;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.loy-brand{font-size:1.6rem;font-weight:700}.loy-brand small{display:block;font-size:.85rem;font-weight:400;opacity:.85;font-style:italic}
.loy-name{font-size:1.2rem;margin:6px 0}.loy-qr{background:#fff;border-radius:12px;display:block;margin:0 auto;padding:6px;width:240px;max-width:80vw}.loy-qr svg{width:100%;height:auto;display:block}
.loy-card .sub-code{color:#fff}.loy-card .cap{color:#e6efe9}
.stamps{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.stamp{width:38px;height:38px;border-radius:50%;border:2px dashed var(--line);display:flex;align-items:center;justify-content:center;font-size:1.2rem;opacity:.35}
.stamp.on{border:2px solid var(--brand);background:#eef6ef;opacity:1}.loy-v{padding-left:18px}
#scan-v{width:100%;max-width:420px;border-radius:12px;background:#000}.stamp-form{border-top:1px solid var(--line);padding-top:8px;margin-top:8px}
.qr-test{text-align:center;border:2px dashed #b8860b}.qr-test .loy-qr{width:220px;border:1px solid var(--line)}
.qr-info{background:#fff7e0;border:1px solid #e6cf8a;border-radius:12px;padding:10px 12px;text-align:center}

.mfa .mfa-qr{max-width:15rem;margin:1rem auto;background:#fff;padding:.5rem;border-radius:8px}.mfa .mfa-qr svg{width:100%;height:auto;display:block}
.mfa-steps li{margin:.3rem 0}.mfa-key{font-size:1.05rem;letter-spacing:.05em;word-break:break-all}
.mfa-codes{columns:2;font-size:1.1rem;padding-left:1.5rem}.mfa-codes li{margin:.25rem 0}

/* ---- meniu principal grupat (v40) ---- */
.top .main-nav{align-items:center;gap:4px}
.nav-group{position:relative}
.nav-group>summary{list-style:none;cursor:pointer;padding:6px 10px;border-radius:999px;color:#fff;font-weight:600;white-space:nowrap;user-select:none}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary::after{content:"▾";margin-left:5px;font-size:.75em;opacity:.8}
.nav-group>summary:hover,.nav-group[open]>summary{background:rgba(255,255,255,.14)}
.nav-group.active>summary{background:rgba(255,255,255,.22)}
.nav-panel{position:absolute;left:0;top:calc(100% + 6px);z-index:30;min-width:200px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.18);padding:6px;display:flex;flex-direction:column}
.top .nav-panel a{color:var(--fg);padding:10px 12px;border-radius:8px;white-space:nowrap}
.top .nav-panel a:hover{background:var(--bg)}
.top .nav-panel a[aria-current="page"]{font-weight:700;color:var(--brand);background:var(--bg)}
@media (max-width:760px){
  .top.open .main-nav{gap:0;align-items:stretch}
  .nav-group{width:100%}
  .nav-group>summary{display:block;border-radius:0;padding:13px 16px;border-top:1px solid rgba(255,255,255,.15);font-size:1.05rem}
  .nav-group>summary::after{float:right}
  .nav-group.active>summary,.nav-group[open]>summary{background:rgba(255,255,255,.1)}
  .nav-panel{position:static;min-width:0;border:0;border-radius:0;box-shadow:none;padding:0;background:rgba(0,0,0,.18)}
  .top.open .main-nav .nav-panel a{color:#fff;padding:12px 16px 12px 32px;border-top:1px solid rgba(255,255,255,.08);border-radius:0;font-size:1rem}
  .top .nav-panel a[aria-current="page"]{color:#fff;background:rgba(255,255,255,.12)}
}

/* ---- închiderea zilei (v43) ---- */
.close-head{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}
.close-nav{display:flex;gap:6px;align-items:center;margin:0}.close-nav input{width:auto;min-height:40px}
.close-nav .btn,.close-nav button{min-height:40px;padding:8px 12px}
.close-warn{border-left:4px solid var(--warn)}.close-ok{border-left:4px solid var(--good)}
.close-list{margin:.3em 0 0;padding-left:1.2em}.close-list li{margin:.25em 0}
.close-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.close-cols .card{margin:0}
.close-cols+h2,.grid+h2{margin-top:1.2em}
tr.row-warn td{background:color-mix(in srgb,var(--warn) 12%,transparent)}
@media print{
  .top,.bottom-nav,.no-print,.page-help{display:none!important}
  body{background:#fff;color:#000}main{max-width:none;padding:0}
  .card{break-inside:avoid;border-color:#ccc}
  .close-print,.close-print *{visibility:visible}
}

/* ---- matricea meniului (v44): o culoare pe grupă ---- */
:root{--c-vedete:#0b7a4b;--c-populare:#b5532a;--c-promovat:#2a78d6;--c-scos:#8a8f8b}
@media (prefers-color-scheme:dark){:root{--c-vedete:#43c08a;--c-populare:#e08a5e;--c-promovat:#5598e7;--c-scos:#9aa39d}}
svg.chart .q-vedete{fill:var(--c-vedete);fill-opacity:.07}svg.chart .q-populare{fill:var(--c-populare);fill-opacity:.07}
svg.chart .q-promovat{fill:var(--c-promovat);fill-opacity:.07}svg.chart .q-scos{fill:var(--c-scos);fill-opacity:.07}
svg.chart .ql{font-size:13px;font-weight:700}
svg.chart .c-vedete{fill:var(--c-vedete)}svg.chart .c-populare{fill:var(--c-populare)}svg.chart .c-promovat{fill:var(--c-promovat)}svg.chart .c-scos{fill:var(--c-scos)}
svg.chart .pt2{fill-opacity:.8;stroke:var(--card);stroke-width:1.5;cursor:pointer}svg.chart .pt2:hover{fill-opacity:1;stroke:var(--fg)}
.me-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:10px 0}
.me-chip{border:1px solid var(--line);border-left:5px solid var(--mut);border-radius:10px;padding:10px 12px;background:var(--card);text-decoration:none;color:inherit;display:block}
.me-chip b{display:block;font-size:1.05rem}.me-chip .n{font-size:1.4rem;font-weight:700}.me-chip span{color:var(--mut);font-size:.88rem}
.me-chip.k-vedete{border-left-color:var(--c-vedete)}.me-chip.k-populare{border-left-color:var(--c-populare)}
.me-chip.k-promovat{border-left-color:var(--c-promovat)}.me-chip.k-scos{border-left-color:var(--c-scos)}
.me-sec{border-top:4px solid var(--mut)}.me-sec.k-vedete{border-top-color:var(--c-vedete)}.me-sec.k-populare{border-top-color:var(--c-populare)}
.me-sec.k-promovat{border-top-color:var(--c-promovat)}.me-sec.k-scos{border-top-color:var(--c-scos)}
.me-head{font-size:1.05rem;margin:.2em 0 .6em}
.me-grid{display:grid;grid-template-columns:1fr;gap:12px}.me-grid .card{margin:0}
@media(min-width:1500px){.me-grid{grid-template-columns:1fr 1fr}}
.me-sec th{white-space:normal;padding:8px 8px}.me-sec td{padding:8px 8px}.me-sec td:first-child{min-width:9rem}

/* ---- fișa tehnică (v47) ---- */
.sheet{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 22px;margin:14px 0}
.sheet-h{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.sheet-h h2{margin:.1em 0 .2em;font-size:1.5rem}
.sheet-brand{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--mut)}
.sheet-photo{width:150px;height:110px;object-fit:cover;border-radius:8px;flex:none}
.sheet-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.sheet-kpis div{border:1px solid var(--line);border-radius:8px;padding:8px 10px}
.sheet-kpis span{display:block;font-size:.78rem;color:var(--mut)}.sheet-kpis b{font-size:1.1rem}
.sheet h3{font-size:1rem;margin:14px 0 6px}.sheet-t th,.sheet-t td{padding:6px 8px}.sheet-t.sm td{padding:3px 6px;font-size:.9rem}
.sheet-sub{font-size:.85rem;color:var(--mut);margin-top:2px}
.sheet-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sheet-write .lines{height:120px;background:repeating-linear-gradient(transparent 0 27px,var(--line) 27px 28px)}
.sheet-f{display:flex;justify-content:space-between;gap:12px;margin-top:18px;font-size:.85rem;color:var(--mut);flex-wrap:wrap}
@media(max-width:700px){.sheet-kpis{grid-template-columns:1fr 1fr}.sheet-cols{grid-template-columns:1fr}.sheet-photo{width:96px;height:72px}}
@media print{
  .top,.bottom-nav,.no-print,.page-help{display:none!important}
  .print-area,.print-area *{visibility:visible}
  .sheet{border:0;border-radius:0;padding:0;margin:0;break-after:page;background:#fff;color:#000}
  .sheet:last-child{break-after:auto}
  .sheet .muted-text,.sheet-brand,.sheet-sub,.sheet-f,.sheet-kpis span{color:#444}
  .sheet-kpis div,.sheet-t th,.sheet-t td{border-color:#bbb}
  @page{size:A4;margin:14mm}
}
.sheet-al{margin:.2em 0;padding-left:1.1em}.sheet-al li{margin:.15em 0}
