/* stil.css — portat din pensiunea-nisa-prototip.html, fără redesenare.
   Fiecare culoare, mărime și rotunjire de aici este o decizie deja luată și
   aprobată. Nu se inventează culori noi; paleta de mai jos este completă.

   Pragurile de accesibilitate nu sunt preferințe (§11):
     · text de la 19px în sus, butoane de la 20px
     · zone de apăsat de cel puțin 60px — folosește tableta cu mâinile ude
     · niciun gri pe gri; fiecare pereche text/fundal peste 4,5:1
     · nopțile libere au textură de pânză, rezervările sunt pline — ocuparea
       se citește din celălalt capăt al camerei, fără a citi un cuvânt
*/

@import url('../fonturi/fonturi.css');

:root{
  --paper:#FAF6EE; --linen:#EFE7D8; --stone:#DCD2BF; --ink:#2B2621; --muted:#6E6459;
  --pine:#2F5D4E; --pine-soft:#E2EBE6; --cherry:#A63A3A; --cherry-soft:#F3E2E0;
  --ochre:#BE8412; --ochre-soft:#F6EBD3; --blue:#3C6E8F; --blue-soft:#E3EDF3; --line:#D8CDB8;
  --amandoua:#A58FB0; --amandoua-soft:#EFE8F2; /* „Amândouă" în banda de vânzare (faza 7) */
  --shadow:0 2px 0 rgba(43,38,33,.06), 0 8px 24px -12px rgba(43,38,33,.25); --r:18px;
}
*{box-sizing:border-box} html,body{margin:0;padding:0}
body{background:var(--paper);color:var(--ink);font-family:'Source Sans 3',system-ui,sans-serif;font-size:19px;line-height:1.45;-webkit-font-smoothing:antialiased}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
button:focus-visible,input:focus-visible{outline:3px solid var(--pine);outline-offset:2px}
.device{max-width:1120px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;background:var(--paper);position:relative}

.topbar{display:flex;align-items:baseline;gap:14px;padding:20px 26px 16px;border-bottom:1px solid var(--line)}
.brand{font-family:'Fraunces',Georgia,serif;font-weight:700;font-size:26px;letter-spacing:-.01em}
.today{color:var(--muted);font-size:18px;margin-left:auto;text-align:right}
.today em{display:block;font-style:normal;color:var(--ochre);font-weight:600;font-size:16px}

main{flex:1;overflow:auto;padding:22px 26px 26px}
.screen{display:none;animation:fade .18s ease} .screen.on{display:block}
@keyframes fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
h2.title{font-family:'Fraunces',Georgia,serif;font-size:26px;font-weight:700;margin:0 0 4px}
p.sub{margin:0 0 20px;color:var(--muted);font-size:18px}

.monthbar{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.monthbar .m{font-family:'Fraunces',serif;font-size:23px;font-weight:700;min-width:190px}
.arrow{width:52px;height:52px;border-radius:14px;border:2px solid var(--line);background:#fff;font-size:24px;line-height:1;color:var(--pine);font-weight:700}
.calwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff;box-shadow:var(--shadow)}
table.cal{border-collapse:collapse;width:100%;min-width:1000px}
table.cal th{font-weight:600;font-size:15px;color:var(--muted);padding:9px 0 7px;border-bottom:1px solid var(--line);text-align:center;width:2.8%;position:relative}
table.cal th.we{color:var(--cherry)}
table.cal th.hol{background:var(--ochre-soft);color:#8A5F09}
table.cal th.hol::after{content:'';position:absolute;left:50%;bottom:3px;transform:translateX(-50%);width:7px;height:7px;border-radius:50%;background:var(--ochre)}
table.cal th.roomhead{width:15%;text-align:left;padding-left:18px;font-size:16px}
.roomcell{padding:0 18px;font-weight:700;font-size:18px;white-space:nowrap;border-right:1px solid var(--line)}
.roomcell small{display:block;font-weight:400;font-size:14px;color:var(--muted)}
table.cal td{height:64px;border-bottom:1px solid var(--linen);padding:0}
tr:last-child td{border-bottom:none}
.night{position:relative;background:repeating-linear-gradient(90deg,var(--paper) 0 3px,#F4EEE2 3px 6px);border-right:1px solid var(--linen)}
.night.hol{background:repeating-linear-gradient(90deg,#FBF2DE 0 3px,#F7EBD0 3px 6px)}
.night.today-col{background:repeating-linear-gradient(90deg,#F1EADA 0 3px,#EDE4D0 3px 6px)}
.stay{position:absolute;inset:7px 0;display:flex;align-items:center;color:#fff;font-weight:700;font-size:16px;padding-left:12px;white-space:nowrap;overflow:hidden;z-index:2}
.stay.start{border-radius:12px 0 0 12px;margin-left:5px} .stay.end{border-radius:0 12px 12px 0;margin-right:5px}
.stay.direct,.stay.telefon{background:var(--pine)} .stay.booking{background:var(--blue)} .stay.airbnb{background:var(--cherry)} .stay.facebook{background:#4B6584}
.stay.casa{background:repeating-linear-gradient(45deg,var(--ochre) 0 10px,#A8740F 10px 20px)}
.stay.new{animation:pop .5s ease;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--pine)}
@keyframes pop{from{transform:scale(.85);opacity:0}to{transform:none;opacity:1}}
.legend{display:flex;gap:20px;flex-wrap:wrap;margin-top:16px;font-size:17px;color:var(--muted)}
.legend span{display:flex;align-items:center;gap:9px}
.dot{width:18px;height:18px;border-radius:6px;display:inline-block}

.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;margin-bottom:16px;box-shadow:var(--shadow)}
.card h3{margin:0 0 10px;font-size:20px;font-family:'Fraunces',serif}
.card.feast{background:var(--ochre-soft);border-color:#E6D3A8} .card.feast h3{color:#8A5F09}
.card.tip{background:var(--pine-soft);border-color:#BFD3C9} .card.tip h3{color:var(--pine)}
.rowline{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--linen);font-size:19px}
.rowline:last-child{border-bottom:none}
.tag{font-size:15px;padding:5px 12px;border-radius:999px;font-weight:600;white-space:nowrap}
.tag.pine{background:var(--pine-soft);color:var(--pine)}
.tag.blue{background:var(--blue-soft);color:var(--blue)}
.tag.cherry{background:var(--cherry-soft);color:var(--cherry)}
.tag.ochre{background:var(--ochre-soft);color:#8A5F09}
.bignum{font-family:'Fraunces',serif;font-size:50px;font-weight:700;line-height:1;letter-spacing:-.02em}
.bignum small{font-size:21px;font-weight:500;color:var(--muted);margin-left:6px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:700px){.grid2{grid-template-columns:1fr}}
.priceRow{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--linen)}
.priceRow:last-child{border-bottom:none}
.priceRow label{flex:1;font-size:19px;font-weight:600}
.priceRow label small{display:block;font-weight:400;font-size:15px;color:var(--muted)}
.priceRow input{width:120px;font-size:21px;font-weight:700;font-family:inherit;padding:11px 13px;border:2px solid var(--line);border-radius:12px;background:var(--paper);text-align:right}
.priceRow span{color:var(--muted);width:34px}
.bar{height:12px;border-radius:99px;background:var(--linen);overflow:hidden;margin-top:8px}
.bar i{display:block;height:100%;border-radius:99px}
.bigbtn{width:100%;background:var(--pine);color:#fff;font-size:21px;font-weight:700;padding:19px;border-radius:16px;box-shadow:var(--shadow)}

.switch{display:flex;align-items:center;gap:16px;padding:6px 0}
.switch .lab{flex:1}
.switch .lab b{display:block;font-size:20px}
.switch .lab small{color:var(--muted);font-size:17px;line-height:1.35;display:block;margin-top:3px}
.tgl{width:82px;height:46px;border-radius:999px;background:var(--stone);position:relative;flex:0 0 auto;transition:background .2s}
.tgl::after{content:'';position:absolute;top:5px;left:5px;width:36px;height:36px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.25);transition:transform .2s}
.tgl.on{background:var(--pine)} .tgl.on::after{transform:translateX(36px)}
.seg{display:flex;gap:10px;margin-top:6px}
.seg button{flex:1;padding:15px;border:2px solid var(--line);border-radius:14px;background:#fff;font-size:19px;font-weight:600;color:var(--muted)}
.seg button.on{border-color:var(--pine);background:var(--pine-soft);color:var(--pine)}

/* ===== asistentul: bara verde și foaia de jos ===== */
.askbar{margin:0 26px;display:flex;align-items:center;gap:14px;background:#fff;border:2px solid var(--pine);border-radius:999px;padding:12px 14px 12px 22px;box-shadow:var(--shadow);cursor:pointer}
.askbar .txt{flex:1;font-size:19px;color:var(--muted)}
.askbar .txt b{color:var(--pine);display:block;font-size:17px;letter-spacing:.02em;text-transform:uppercase}
.askbar .mic{width:58px;height:58px;border-radius:50%;background:var(--pine);color:#fff;display:grid;place-items:center;flex:0 0 auto}
.askbar .mic svg{width:28px;height:28px;stroke-width:1.9}
.pulse{animation:ring 2.6s infinite}
@keyframes ring{0%,100%{box-shadow:0 0 0 0 rgba(47,93,78,.35)}50%{box-shadow:0 0 0 10px rgba(47,93,78,0)}}

.sheet{position:fixed;left:0;right:0;bottom:0;z-index:50;max-width:1120px;margin:0 auto;background:var(--paper);border-radius:26px 26px 0 0;box-shadow:0 -12px 40px -12px rgba(43,38,33,.4);transform:translateY(102%);transition:transform .28s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;max-height:78vh}
.sheet.open{transform:none}
.sheet .grab{width:56px;height:6px;border-radius:99px;background:var(--stone);margin:12px auto 4px}
.sheet .head{display:flex;align-items:center;gap:12px;padding:6px 24px 12px;border-bottom:1px solid var(--line)}
.sheet .head b{font-family:'Fraunces',serif;font-size:21px}
.sheet .head .ctx{color:var(--muted);font-size:17px}
.closex{margin-left:auto;width:48px;height:48px;border-radius:14px;border:2px solid var(--line);background:#fff;font-size:22px;color:var(--muted);line-height:1}
.thread{flex:1;overflow-y:auto;padding:18px 24px;display:flex;flex-direction:column;gap:14px;min-height:170px}
.bubble{max-width:80%;padding:14px 18px;border-radius:20px;font-size:19px;box-shadow:0 1px 2px rgba(43,38,33,.1);white-space:pre-line}
.bubble.bot{background:#fff;border:1px solid var(--line);border-bottom-left-radius:6px;align-self:flex-start}
.bubble.me{background:var(--pine-soft);border-bottom-right-radius:6px;align-self:flex-end}
.bubble b{color:var(--pine)} .bubble.warn b{color:var(--cherry)}
.typing i{width:9px;height:9px;border-radius:50%;background:var(--stone);display:inline-block;margin-right:6px;animation:blink 1.2s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes blink{0%,60%,100%{opacity:.3}30%{opacity:1}}
.chips{display:flex;gap:10px;flex-wrap:wrap;padding:0 24px 12px}
.chip{background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:11px 17px;font-size:17px;color:var(--pine);font-weight:600;min-height:52px}
/* Butoanele de confirmare a unei propuneri nesigure — se văd altfel decât sugestiile. */
.chip.da{background:var(--pine);border-color:var(--pine);color:#fff}
.chip.nu{border-color:var(--cherry);color:var(--cherry)}
.composer{display:flex;gap:12px;align-items:center;padding:14px 24px 22px;border-top:1px solid var(--line)}
.composer input{flex:1;font-family:inherit;font-size:20px;padding:17px 20px;border:2px solid var(--line);border-radius:999px;background:#fff}
.circle{width:64px;height:64px;border-radius:50%;background:var(--pine);color:#fff;display:grid;place-items:center;flex:0 0 auto;box-shadow:var(--shadow)}
.circle svg{width:29px;height:29px;stroke-width:1.9}
.circle.rec{background:var(--cherry);animation:pulseBtn 1s infinite}
.circle[disabled]{background:var(--stone);box-shadow:none}
@keyframes pulseBtn{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
.scrim{position:fixed;inset:0;background:rgba(43,38,33,.35);z-index:40;opacity:0;pointer-events:none;transition:opacity .25s}
.scrim.on{opacity:1;pointer-events:auto}

.doing{position:fixed;left:50%;transform:translate(-50%,-140%);top:0;z-index:60;background:var(--pine);color:#fff;padding:15px 26px;border-radius:0 0 20px 20px;font-size:19px;font-weight:700;box-shadow:var(--shadow);transition:transform .3s;max-width:92vw;text-align:center}
.doing.on{transform:translate(-50%,0)}
.doing.rau{background:var(--cherry)}

nav{display:flex;border-top:1px solid var(--line);background:#fff;position:sticky;bottom:0;margin-top:16px}
nav button{flex:1;padding:12px 4px 14px;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:15px;font-weight:600;color:var(--muted);border-top:4px solid transparent;min-height:60px}
nav button.on{color:var(--pine);border-top-color:var(--pine);background:var(--pine-soft)}
nav svg{width:29px;height:29px;stroke-width:1.8}
.hidden{display:none!important}

/* ===== adăugare turist: buton + pași ===== */
.fab{position:fixed;right:calc(50% - 545px);bottom:34px;z-index:30;display:flex;align-items:center;gap:12px;
  background:var(--pine);color:#fff;border-radius:999px;padding:16px 26px 16px 20px;font-size:20px;font-weight:700;box-shadow:0 8px 24px -8px rgba(43,38,33,.5)}
.fab svg{width:28px;height:28px;stroke-width:2.4}
@media(max-width:1150px){.fab{right:26px}}
.wiz{position:fixed;inset:0;z-index:70;background:var(--paper);display:none;flex-direction:column;max-width:1120px;margin:0 auto}
.wiz.on{display:flex}
.wizhead{display:flex;align-items:center;gap:14px;padding:20px 26px;border-bottom:1px solid var(--line)}
.wizhead b{font-family:'Fraunces',serif;font-size:23px}
.wizhead .step{margin-left:auto;color:var(--muted);font-size:17px}
.wizbody{flex:1;overflow:auto;padding:26px}
.wizfoot{padding:18px 26px 26px;border-top:1px solid var(--line);display:flex;gap:12px}
.wizfoot button{flex:1;padding:19px;border-radius:16px;font-size:20px;font-weight:700;min-height:60px}
.btn-main{background:var(--pine);color:#fff;box-shadow:var(--shadow)}
.btn-ghost{background:#fff;color:var(--muted);border:2px solid var(--line)}
.btn-warn{background:#fff;color:var(--cherry);border:2px solid var(--cherry)}
.shot{width:100%;aspect-ratio:16/10;border:3px dashed var(--stone);border-radius:20px;background:#fff;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--muted);font-size:20px}
.shot svg{width:64px;height:64px;stroke-width:1.5;color:var(--pine)}
.shot.scan{border-style:solid;border-color:var(--pine);background:var(--pine-soft);color:var(--pine);font-weight:700}
.fld{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--linen)}
.fld:last-child{border-bottom:none}
.fld label{width:190px;font-size:18px;color:var(--muted)}
.fld input,.fld select{flex:1;font-family:inherit;font-size:19px;padding:13px 15px;border:2px solid var(--line);border-radius:12px;background:#fff;min-height:52px}
.ok{display:flex;align-items:center;gap:12px;background:var(--pine-soft);border:1px solid #BFD3C9;color:var(--pine);
  border-radius:16px;padding:16px 20px;font-size:19px;font-weight:600;margin-bottom:18px}
.rau{display:flex;align-items:center;gap:12px;background:var(--cherry-soft);border:1px solid #E6C9C6;color:var(--cherry);
  border-radius:16px;padding:16px 20px;font-size:19px;font-weight:600;margin-bottom:18px}

/* ===== acasă ===== */
.salut{font-family:'Fraunces',serif;font-size:30px;font-weight:700;margin:0 0 2px;letter-spacing:-.01em}
.salut+.sub{margin-bottom:22px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
@media(max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}}
.stat{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 16px;box-shadow:var(--shadow)}
.stat b{display:block;font-family:'Fraunces',serif;font-size:38px;line-height:1;letter-spacing:-.02em}
.stat span{display:block;color:var(--muted);font-size:17px;margin-top:6px}
.stat.free b{color:var(--pine)} .stat.alert b{color:var(--cherry)}
.primary{width:100%;display:flex;align-items:center;gap:18px;background:var(--pine);color:#fff;
  border-radius:20px;padding:24px 26px;text-align:left;box-shadow:var(--shadow);margin-bottom:18px}
.primary .ic{width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;flex:0 0 auto}
.primary svg{width:32px;height:32px;stroke-width:2.4}
.primary b{display:block;font-size:23px;font-family:'Fraunces',serif}
.primary span{font-size:17px;opacity:.85}
.quick{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.quick button{background:#fff;border:2px solid var(--line);border-radius:16px;padding:18px;
  font-size:18px;font-weight:600;color:var(--pine);display:flex;align-items:center;gap:12px;min-height:60px}
.quick svg{width:26px;height:26px;stroke-width:1.9}
.todo{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--linen);font-size:19px}
.todo:last-child{border-bottom:none}
.todo .pin{width:12px;height:12px;border-radius:50%;flex:0 0 auto}

/* ===== de blocat pe site-uri (faza 3) ===== */
.sync{background:#FFF6E4;border:2px solid var(--ochre);border-radius:var(--r);padding:20px 22px;margin-bottom:18px;box-shadow:var(--shadow)}
.sync h3{margin:0 0 4px;font-size:20px;font-family:'Fraunces',serif;color:#8A5F09}
.sync .task{padding:14px 0;border-bottom:1px solid #EBDDBF}
.sync .task:last-of-type{border-bottom:none}
.sync .what{font-size:19px;margin-bottom:4px}
.sync .todo2{font-size:19px;background:#fff;border-radius:10px;padding:12px 16px;margin:8px 0 12px;font-weight:700}
.sync .acts{display:flex;gap:10px;flex-wrap:wrap}
.sync .acts a,.sync .acts button{padding:13px 18px;border-radius:12px;font-size:17px;font-weight:700;
  border:2px solid var(--ochre);background:#fff;color:#8A5F09;text-decoration:none;display:inline-block;min-height:52px}
.sync .acts .done{background:var(--pine);border-color:var(--pine);color:#fff}

/* ===== tipărire: A4 orizontal ===== */
@media print{
  @page{size:A4 landscape;margin:10mm}
  body{background:#fff;font-size:13pt}
  .topbar,nav,.askbar,.fab,.sheet,.scrim,.doing,.monthbar,.legend,#feastCard,.printbar,.fara-semnal{display:none!important}
  .screen{display:none!important}
  .screen#s-cal{display:block!important}
  main{padding:0;overflow:visible}
  .calwrap{border:none;box-shadow:none;overflow:visible}
  table.cal{min-width:0;width:100%}
  table.cal td{height:52px}
  .stay{color:#000!important;background:#fff!important;border:2px solid #000;font-size:11pt}
  .stay.casa{background:repeating-linear-gradient(45deg,#ddd 0 6px,#fff 6px 12px)!important}
  .night{background:#fff!important}
  .printhead{display:block!important}
}
.printhead{display:none;font-family:'Fraunces',serif;font-size:20pt;font-weight:700;margin-bottom:8mm}
.printbar{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.printbar button{flex:1;min-width:220px;padding:17px;border-radius:16px;font-size:19px;font-weight:700;
  background:#fff;color:var(--pine);border:2px solid var(--pine);min-height:60px}

/* ===== fără semnal =====
   R9: dacă ceva nu merge, i se spune. O bară care se vede, nu o pictogramă mică. */
.fara-semnal{display:none;align-items:center;gap:12px;background:var(--ochre-soft);border-bottom:2px solid var(--ochre);
  color:#8A5F09;padding:13px 26px;font-size:18px;font-weight:600}
.fara-semnal.on{display:flex}
.fara-semnal b{font-weight:700}

/* ===== ce se vinde: camere / toată casa / amândouă (faza 7) =====
   Trei tonuri liniștite. „Camere" este neutru (e ce se întâmplă oricum), „Toată casa"
   folosește ocrul din calendar, iar „Amândouă" are un ton al lui, care nu se confundă
   cu nicio sursă de rezervări (pin, albastru, vișiniu). Textul stă pe fiecare culoare
   cu peste 4,5:1 — nu se citește doar din culoare, ci și din cuvânt. */
.m-camere{background:var(--linen);color:var(--muted)}
.m-casa{background:var(--ochre);color:var(--ink)}
.m-amandoua{background:var(--amandoua);color:var(--ink)}
.dot.m-camere{border:2px solid var(--stone)}
.legend-mod{margin-top:10px}
.legend-mod .legend-titlu{font-weight:700;color:var(--ink)}

table.cal tr.modrow td{height:44px;border-bottom:2px solid var(--line)}
table.cal td.modhead{font-size:16px;line-height:1.15;white-space:normal;background:#fff}
table.cal td.modhead small{display:block;font-weight:400;font-size:14px;color:var(--muted)}
table.cal td.modhead .mini-renunt{display:inline-block;margin-top:3px;padding:0;font-size:14px;font-weight:700;
  color:var(--cherry);text-decoration:underline;min-height:0}
table.cal td.modcell{position:relative;cursor:pointer;padding:0;box-shadow:inset -1px 0 0 rgba(255,255,255,.8)}
table.cal td.modcell:focus-visible{outline:3px solid var(--pine);outline-offset:-3px}
.modlbl{position:absolute;left:7px;top:50%;transform:translateY(-50%);z-index:3;pointer-events:none;
  font-size:14px;font-weight:700;white-space:nowrap}
/* nopțile alese: un cadru verde sus și jos, cu capete la prima și la ultima noapte */
table.cal td.modcell.sel{box-shadow:inset 0 5px 0 var(--pine),inset 0 -5px 0 var(--pine)}
table.cal td.modcell.sel.s1{box-shadow:inset 0 5px 0 var(--pine),inset 0 -5px 0 var(--pine),inset 5px 0 0 var(--pine)}
table.cal td.modcell.sel.s2{box-shadow:inset 0 5px 0 var(--pine),inset 0 -5px 0 var(--pine),inset -5px 0 0 var(--pine)}
table.cal td.modcell.sel.s1.s2{box-shadow:inset 0 0 0 5px var(--pine)}

.modcorp{padding:8px 24px 26px;overflow-y:auto;flex:1;min-height:0}
.modacum{margin:6px 0 14px;color:var(--muted);font-size:17px}
.modopt{display:flex;align-items:stretch;gap:16px;width:100%;text-align:left;background:#fff;border:2px solid var(--line);
  border-radius:16px;padding:14px 18px 14px 14px;margin-bottom:12px;min-height:76px}
.modopt .culoare{width:16px;border-radius:7px;flex:0 0 auto}
.modopt b{display:block;font-family:'Fraunces',serif;font-size:22px}
.modopt span.explica{display:block;color:var(--muted);font-size:17px;line-height:1.3;margin-top:2px}
.modopt.acum{border-color:var(--pine);background:var(--pine-soft)}
.modopt[disabled]{opacity:.55}
.modcorp .rau{margin:4px 0 14px}
.modcorp .renunt{width:100%;padding:17px;border-radius:16px;font-size:19px;font-weight:700;min-height:60px;
  background:#fff;color:var(--muted);border:2px solid var(--line)}

/* ===== Acasă: sincronizarea și cererile (faza 7) ===== */
.sinc{display:flex;gap:16px;align-items:flex-start;background:var(--linen);border:2px solid var(--stone);
  border-radius:var(--r);padding:18px 22px;margin-bottom:18px;box-shadow:var(--shadow)}
.sinc .led{width:46px;height:46px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  background:var(--stone);color:var(--ink);font-size:24px;font-weight:700;line-height:1}
.sinc h3{margin:0 0 2px;font-size:20px;font-family:'Fraunces',serif}
.sinc p{margin:0;font-size:19px}
.sinc p.sub{margin:6px 0 0;font-size:17px}
.sinc.la-zi{background:var(--pine-soft);border-color:#BFD3C9}
.sinc.la-zi .led{background:var(--pine);color:#fff} .sinc.la-zi h3{color:var(--pine)}
.sinc.intarziat{background:var(--cherry-soft);border-color:var(--cherry)}
.sinc.intarziat .led{background:var(--cherry);color:#fff} .sinc.intarziat h3{color:var(--cherry)}
.sinc-detaliu{margin:-10px 0 18px;padding:10px 18px;border-left:4px solid var(--ochre);background:#FFF6E4;border-radius:0 10px 10px 0}
.sinc-detaliu p{margin:0;font-size:18px}
.sinc-detaliu p.sub{font-size:16px;color:var(--muted);margin-top:4px}
.sinc .demo{font-size:14px;font-weight:700;color:var(--muted);margin-left:8px;font-family:'Source Sans 3',system-ui,sans-serif}
.cerere{padding:13px 0;border-bottom:1px solid var(--linen)}
.cerere:last-child{border-bottom:none}
.cerere small{display:block;color:var(--muted);font-size:17px}
.mut{color:var(--muted);margin:6px 0 0;font-size:17px}

/* ===== ecranul Prețuri (faza 7) ===== */
.inapoi{display:inline-flex;align-items:center;min-height:52px;padding:0 18px;border:2px solid var(--line);
  border-radius:14px;background:#fff;color:var(--pine);font-weight:700;font-size:19px;margin-bottom:14px}
.pgrid .prow{display:grid;grid-template-columns:minmax(140px,1.3fr) repeat(3,minmax(120px,1fr));gap:0 14px;
  align-items:start;padding:10px 0;border-bottom:1px solid var(--linen)}
.pgrid .prow:last-child{border-bottom:none}
.pgrid .prow.ph{padding:0 0 8px;border-bottom:2px solid var(--line);font-size:16px;font-weight:600;color:var(--muted)}
.pgrid .prow.ph span:not(:first-child){text-align:right}
.pgrid .pn{font-weight:700;font-size:19px;padding-top:12px}
.pgrid .pn small{display:block;font-weight:400;font-size:15px;color:var(--muted)}
.pgrid .pcell input{width:100%;font-size:21px;font-weight:700;font-family:inherit;text-align:right;
  padding:11px 13px;border:2px solid var(--line);border-radius:12px;background:var(--paper);min-height:56px}
.pgrid .pcell input.auto{background:var(--linen);border-color:transparent}
.pgrid .pcell input.manual{background:var(--ochre-soft);border-color:var(--ochre)}
.pgrid .pnota{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;
  margin-top:5px;font-size:15px;color:var(--muted);min-height:24px;text-align:right}
.pgrid .pnota.manual{color:#8A5F09;font-weight:600}
.pgrid .pnota button{padding:6px 10px;border-radius:10px;border:2px solid var(--ochre);background:#fff;
  color:#8A5F09;font-size:15px;font-weight:700;min-height:40px}
.pscurt{margin:14px 0 0;color:var(--muted);font-size:17px}
@media(max-width:700px){
  .pgrid .prow{grid-template-columns:repeat(3,1fr);gap:0 10px}
  .pgrid .prow.ph{display:none}
  .pgrid .pn{grid-column:1/-1;padding-top:0;padding-bottom:6px}
  .pgrid .pcell::before{content:attr(data-lab);display:block;font-size:15px;color:var(--muted);margin-bottom:3px}
  .pgrid .pcell input{font-size:19px;padding:10px 8px}
}
.perioada{padding:14px 0;border-bottom:1px solid var(--linen)}
.perioada:last-of-type{border-bottom:none}
.perioada .pe-sus{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.perioada .pe-sus b{font-family:'Fraunces',serif;font-size:20px}
.perioada .pe-preturi{margin-top:4px;color:var(--muted);font-size:17px}
.perioada .acts{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.perioada.stearsa .pe-sus,.perioada.stearsa .pe-preturi{opacity:.5;text-decoration:line-through}
.mini{padding:11px 18px;border-radius:12px;border:2px solid var(--line);background:#fff;font-size:17px;
  font-weight:700;min-height:52px;color:var(--pine)}
.mini.rosu{color:var(--cherry);border-color:var(--cherry)}
.forma-perioada{background:var(--paper);border:2px dashed var(--stone);border-radius:var(--r);padding:16px 18px;margin-top:14px}
.forma-perioada h4{margin:0 0 8px;font-family:'Fraunces',serif;font-size:19px}
.forma-perioada .priceRow input{width:130px}
.forma-perioada .priceRow label small .alt{color:#8A5F09;font-weight:600}
.salveaza-rand{padding:6px 0 10px}
.nou-tag{font-size:14px;font-weight:700;color:var(--pine);background:var(--pine-soft);border-radius:999px;padding:3px 10px;margin-left:8px}

@media print{
  table.cal tr.modrow,.legend-mod,#sheetMod,#scrimMod{display:none!important}
}
