/* Centralizator · aceleași culori, font și header ca orarul (orar.veronicamocanu.ro) */
:root{
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  --base:17px;
  --head:#20276b; --head-ink:#fff; --gold:#ffc93c;
  --bg:#f1f3fa; --surface:#fff; --surface2:#f5f7fc; --line:#ccd3e6; --line2:#e4e8f4;
  --ink:#151a2c; --ink2:#4e5670; --ink3:#767e96;
  --accent:#2f47c8; --accent-ink:#fff; --accent-soft:#e7eafc;
  --live:#0a7346; --live-bg:#dff5ea;
  --warn:#a03810; --warn-bg:#ffe9e0; --warn-line:#e2551c;
}
*,*::before,*::after{box-sizing:inherit}

/* culorile secțiunilor (aceleași ca materiile din orar) */
.c-limbi {--bar:#e2551c;--tint:#ffe9e0;--txt:#a03810}
.c-real  {--bar:#2f6be0;--tint:#e2ebff;--txt:#1a469f}
.c-uman  {--bar:#8b45dd;--tint:#f2e8ff;--txt:#65299f}
.c-tehnic{--bar:#0f9480;--tint:#d9f4ef;--txt:#0a6154}
.c-dirig {--bar:#d99400;--tint:#fff1cf;--txt:#875a00}

:root[data-theme="dark"]{
  --head:#161a45; --bg:#0f121c; --surface:#181d2b; --surface2:#20263a; --line:#39415e; --line2:#2a3048;
  --ink:#f0f2fa; --ink2:#b4bcd4; --ink3:#8b94ae;
  --accent:#8ea4ff; --accent-ink:#101426; --accent-soft:#232a4d;
  --live:#5ad9a4; --live-bg:#12302a;
  --warn:#ffb08a; --warn-bg:#33201a; --warn-line:#ff8757;
}
:root[data-theme="dark"] .c-limbi {--bar:#ff8757;--tint:#33201a;--txt:#ffb08a}
:root[data-theme="dark"] .c-real  {--bar:#6f9dff;--tint:#1a2340;--txt:#a8c3ff}
:root[data-theme="dark"] .c-uman  {--bar:#bb86f5;--tint:#271b3c;--txt:#d4b0ff}
:root[data-theme="dark"] .c-tehnic{--bar:#3fd0b6;--tint:#132f2b;--txt:#7ee5cf}
:root[data-theme="dark"] .c-dirig {--bar:#f0b53a;--tint:#332612;--txt:#ffd174}

html{font-size:var(--base);-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:'Archivo','Segoe UI',system-ui,-apple-system,sans-serif;
  font-variation-settings:'wdth' 100,'wght' 450;font-size:1rem;line-height:1.45;
}
h1,h2,h3{margin:0;font-variation-settings:'wdth' 100,'wght' 700;line-height:1.15;letter-spacing:-.01em}
b,strong{font-variation-settings:'wdth' 100,'wght' 700}
button,input,textarea,select{font:inherit;font-variation-settings:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--accent)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:6px}
[hidden]{display:none!important}
.wrap{max-width:960px;margin:0 auto;padding:0 1rem}
.wrap.wide{max-width:1240px}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- header (identic cu orarul) ---------- */
.top{background:var(--head);color:var(--head-ink)}
.top .wrap{display:flex;align-items:center;gap:1rem;padding-top:.9rem;padding-bottom:.9rem;flex-wrap:wrap}
.mark{
  font-variation-settings:'wdth' 110,'wght' 750;font-size:1.3rem;letter-spacing:-.04em;line-height:1;
  padding:.55rem .65rem;border-radius:10px;background:var(--gold);color:#241a00;white-space:nowrap
}
.brand{display:flex;gap:.8rem;align-items:center;min-width:0;flex:1 1 auto}
.brand h1{font-size:1.05rem}
.brand p{margin:.15rem 0 0;color:rgba(255,255,255,.72);font-size:.82rem}
.hbtns{display:flex;gap:.4rem;flex-wrap:wrap}
.hbtn{
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;
  border:2px solid rgba(255,255,255,.45);background:transparent;color:#fff;border-radius:10px;
  min-width:2.7rem;height:2.7rem;padding:0 .7rem;font-variation-settings:'wght' 650;font-size:1rem
}
.hbtn:hover{background:rgba(255,255,255,.16);border-color:#fff}
.stripe{display:flex;height:.4rem}
.stripe i{flex:1}

/* ---------- blocuri ---------- */
.card{background:var(--surface);border:2px solid var(--line);border-radius:16px;margin-top:1rem;overflow:hidden}
.pad{padding:1.1rem}
.hint{color:var(--ink2);font-size:.92rem;margin:.3rem 0 0}
.intro h2{font-size:1.55rem;font-variation-settings:'wdth' 104,'wght' 740;letter-spacing:-.02em}
.intro p{margin:.45rem 0 0;color:var(--ink2);max-width:62ch}
.intro .meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.8rem}
.pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.2rem .7rem;font-size:.85rem;
  font-variation-settings:'wght' 650;background:var(--tint,var(--surface2));color:var(--txt,var(--ink2));white-space:nowrap}
.pill.gold{background:var(--gold);color:#241a00}
.pill.ok{background:var(--live-bg);color:var(--live)}
.pill.off{background:var(--warn-bg);color:var(--warn)}

/* ---------- butoane ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:2px solid var(--line);background:var(--surface);
  color:var(--ink);border-radius:12px;padding:.6rem 1rem;min-height:2.9rem;font-variation-settings:'wght' 620;text-decoration:none;
  line-height:1.2;text-align:center
}
.btn:hover{border-color:var(--accent);color:var(--accent)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.primary:hover{filter:brightness(1.08);color:var(--accent-ink)}
.btn.big{min-height:3.6rem;padding:.8rem 1.8rem;font-size:1.15rem;font-variation-settings:'wght' 700}
.btn.danger{color:var(--warn);border-color:var(--warn-line)}
.btn.danger:hover{background:var(--warn-bg);color:var(--warn)}
.btn.wa{border-color:#25a35a;color:#167c42}
:root[data-theme="dark"] .btn.wa{color:#5ad98f}
.btn[disabled]{opacity:.55;cursor:default;filter:none}
.btn small{font-size:.8rem;opacity:.85;font-variation-settings:'wght' 500}
.links{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.linkish{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;font-variation-settings:'wght' 600}

/* ---------- mesaje ---------- */
.notice{display:flex;gap:.4rem .9rem;align-items:center;flex-wrap:wrap;padding:.8rem 1.1rem;border-radius:14px;margin-top:1rem;
  background:#fff1cf;border:2px solid #f0c24b;color:#4a3300}
.notice > span{flex:1 1 16rem}
.notice b{font-variation-settings:'wght' 700}
.notice .btn{min-height:2.5rem;padding:.4rem .8rem;background:#fff;border-color:#e0b43c;color:#4a3300}
.notice.ok{background:var(--live-bg);border-color:var(--live);color:var(--ink)}
.notice.ok .btn{background:var(--surface);border-color:var(--live);color:var(--live)}
.notice.err{background:var(--warn-bg);border-color:var(--warn-line);color:var(--ink)}
.toast{
  position:fixed;left:1rem;right:1rem;margin:0 auto;width:fit-content;max-width:38rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));
  transform:translateY(calc(100% + 2rem));z-index:100;display:flex;gap:1rem;align-items:center;background:var(--head);color:#fff;border-radius:14px;
  padding:.85rem 1.1rem;box-shadow:0 18px 40px rgba(12,16,40,.3);transition:transform .25s ease;font-size:.98rem;visibility:hidden
}
.toast.show{transform:translateY(0);visibility:visible}
.toast.err{background:#7a2a0c}
.toast button{border:2px solid rgba(255,255,255,.5);background:transparent;color:#fff;border-radius:10px;padding:.35rem .8rem;
  font-variation-settings:'wght' 650;white-space:nowrap}

/* ---------- câmpuri ---------- */
.lab,.fld > label,.fld > legend{display:block;font-variation-settings:'wght' 650;font-size:.95rem;margin:0 0 .35rem;padding:0}
.opt-tag{font-variation-settings:'wght' 450;color:var(--ink3);font-size:.82rem;margin-left:.3rem}
fieldset.fld{border:0;margin:0;padding:0;min-width:0}
.inp{
  width:100%;font-size:1.05rem;padding:.75rem .9rem;border:2px solid var(--line);border-radius:12px;
  background:var(--surface);color:var(--ink);-webkit-appearance:none;appearance:none
}
.inp::placeholder{color:var(--ink3)}
.inp:focus{border-color:var(--accent);outline:none}
textarea.inp{min-height:6.5rem;resize:vertical;line-height:1.4}
.err-msg{color:var(--warn);font-size:.9rem;margin:.35rem 0 0;font-variation-settings:'wght' 600}
.err-msg::before{content:"⚠ "}
.fld.bad .inp,.who.bad .inp{border-color:var(--warn-line);background:var(--warn-bg)}
.fld.bad .chip-r span{border-color:var(--warn-line)}

.chips{display:flex;flex-wrap:wrap;gap:.45rem}
.chip-r{position:relative;display:inline-flex}
.chip-r input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.chip-r span{
  display:inline-flex;align-items:center;gap:.35rem;min-height:2.75rem;padding:.45rem .85rem;border:2px solid var(--line);
  border-radius:12px;background:var(--surface);font-variation-settings:'wght' 600;cursor:pointer;user-select:none;-webkit-user-select:none
}
.chip-r span:hover{border-color:var(--bar,var(--accent))}
.chip-r input:checked + span{background:var(--txt,var(--accent));border-color:var(--txt,var(--accent));color:var(--surface)}
.chip-r input:checked + span::before{content:"✓";font-variation-settings:'wght' 750}
.chip-r input:focus-visible + span{outline:3px solid var(--gold);outline-offset:2px}
.other-inp{margin-top:.5rem}

/* alegerea numelui (ca la căutarea din orar) */
.searchbox{position:relative}
.searchbox > svg{position:absolute;left:1rem;top:1.55rem;transform:translateY(-50%);pointer-events:none;color:var(--ink2)}
.searchbox .inp{padding-left:2.9rem;font-size:1.15rem;padding-top:.85rem;padding-bottom:.85rem}
.sug{
  position:absolute;z-index:40;left:0;right:0;top:calc(100% + .4rem);background:var(--surface);
  border:2px solid var(--line);border-radius:14px;overflow:hidden;max-height:50vh;overflow-y:auto;
  box-shadow:0 18px 40px rgba(12,16,40,.22)
}
.sug button{display:flex;width:100%;gap:.7rem;align-items:baseline;text-align:left;background:none;border:0;border-bottom:1px solid var(--line2);padding:.8rem 1rem}
.sug button:last-child{border-bottom:0}
.sug button:hover,.sug button.on{background:var(--accent-soft)}
.sug b{font-variation-settings:'wght' 650;font-size:1.05rem}
.sug span{margin-left:auto;color:var(--ink2);font-size:.85rem;text-align:right}
.picked{margin-top:.6rem;display:inline-flex;gap:.4rem;align-items:center;border-radius:10px;padding:.35rem .75rem;font-size:.92rem;
  background:var(--live-bg);color:var(--live);font-variation-settings:'wght' 600}

/* ---------- secțiunile formularului ---------- */
.sec-h{display:flex;gap:.6rem 1rem;align-items:center;flex-wrap:wrap;padding:1rem 1.1rem;background:var(--tint);border-bottom:.4rem solid var(--bar)}
.sec-h h2{font-size:1.35rem;color:var(--txt);font-variation-settings:'wdth' 102,'wght' 730}
.sec-h .n{margin-left:auto;min-width:2rem;height:2rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 .6rem;
  background:var(--surface);color:var(--txt);font-variation-settings:'wght' 720;font-size:.95rem}
.sec-h .n:empty{display:none}
.who{overflow:visible}
.sec-b{padding:.9rem;display:flex;flex-direction:column;gap:.75rem}
.sec-b .hint{margin:0 .2rem}
.rows{display:flex;flex-direction:column;gap:.75rem}
.rows:empty{display:none}
.erow{border:2px solid var(--line2);border-left:8px solid var(--bar);border-radius:12px;background:var(--surface);padding:.75rem .9rem 1rem}
.erow-h{display:flex;align-items:center;gap:.6rem;margin-bottom:.7rem;min-height:2.2rem}
.erow-h .no{width:1.9rem;height:1.9rem;border-radius:50%;background:var(--tint);color:var(--txt);display:inline-flex;align-items:center;justify-content:center;
  font-size:.88rem;font-variation-settings:'wght' 720;flex:none}
.erow-h .tt{flex:1 1 auto;min-width:0;color:var(--ink2);font-variation-settings:'wght' 600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.erow-h .x{border:2px solid var(--line2);background:var(--surface);color:var(--ink2);border-radius:10px;padding:.3rem .7rem;font-size:.88rem;
  font-variation-settings:'wght' 620;flex:none}
.erow-h .x:hover{border-color:var(--warn-line);color:var(--warn)}
.fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.9rem .8rem}
.fields > .fld{grid-column:span 6}
.fields > .w-half{grid-column:span 3}
.fields > .w-narrow{grid-column:span 2}
.fields > .w-norm{grid-column:span 4}
.erow-f{margin-top:.8rem}
.erow.shut{padding:.65rem .8rem .75rem}
.erow.shut .erow-h{margin-bottom:0;align-items:flex-start}
.erow.shut .erow-f{margin-top:.55rem;gap:.4rem}
.erow-open{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;text-align:left;background:none;border:0;padding:.2rem 0 0;color:var(--ink)}
.erow-open b{font-variation-settings:'wght' 680;font-size:1.02rem;line-height:1.3}
.erow-open span{color:var(--ink2);font-size:.92rem;line-height:1.35}
.erow-open:hover b{color:var(--txt);text-decoration:underline}
.mini.del{color:var(--ink2)}
.mini.del:hover{border-color:var(--warn-line);color:var(--warn)}
.mini{border:2px solid var(--line2);background:var(--surface);color:var(--txt);border-radius:10px;padding:.4rem .8rem;font-size:.9rem;
  font-variation-settings:'wght' 650}
.mini:hover{border-color:var(--bar)}
.addrow{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:3.3rem;border:2px dashed var(--bar);
  border-radius:12px;background:transparent;color:var(--txt);font-variation-settings:'wght' 690;font-size:1.05rem;padding:.6rem 1rem}
.addrow:hover{background:var(--tint)}
.addrow b{font-size:1.4rem;line-height:1;font-variation-settings:'wght' 500}
#view.none-on .sec{display:none}
.endcard .chk{display:flex;gap:.8rem;align-items:flex-start;padding:.9rem 1rem;border:2px solid var(--line);border-radius:12px;cursor:pointer;font-variation-settings:'wght' 560}
.endcard .chk:hover{border-color:var(--accent)}
.endcard .chk input{width:1.45rem;height:1.45rem;margin:.1rem 0 0;flex:none;accent-color:var(--accent)}
.endcard .chk.on{border-color:var(--accent);background:var(--accent-soft)}
.endcard .bad > .chk{border-color:var(--warn-line);background:var(--warn-bg)}
.endcard .obs{margin-top:1.1rem}
.sendbar{margin-top:1rem;display:flex;flex-direction:column;gap:.8rem;align-items:stretch}
.sendbar .btn.big{width:100%}
.errlist{margin:0;padding:.9rem 1.1rem;border-radius:14px;background:var(--warn-bg);border:2px solid var(--warn-line);list-style:none}
.errlist b{display:block;margin-bottom:.3rem}
.errlist li{margin:.25rem 0}
.errlist button{background:none;border:0;padding:0;color:var(--warn);text-decoration:underline;text-align:left;font-variation-settings:'wght' 600}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- după trimitere ---------- */
.done{border-color:var(--live)}
.done .top-ok{display:flex;gap:.9rem;align-items:center;padding:1.1rem;background:var(--live-bg)}
.done .tick{width:3rem;height:3rem;border-radius:50%;background:var(--live);color:#fff;display:flex;align-items:center;justify-content:center;
  font-size:1.6rem;font-variation-settings:'wght' 750;flex:none}
:root[data-theme="dark"] .done .tick{color:#0c2019}
.done h2{font-size:1.4rem}
.done .who-line{color:var(--ink2);margin-top:.15rem}
.summary{list-style:none;margin:0;padding:0}
.summary > li{padding:.7rem 0;border-top:1px solid var(--line2)}
.summary > li:first-child{border-top:0}
.summary h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--txt);margin-bottom:.35rem}
.summary ol{margin:0;padding-left:1.3rem}
.summary ol li{margin:.2rem 0}
.summary ol li span{color:var(--ink2)}
.keep{margin-top:1rem;padding:.9rem 1rem;border-radius:12px;background:var(--surface2);border:2px dashed var(--line)}
.keep p{margin:0 0 .6rem;font-size:.95rem;color:var(--ink2)}

/* ---------- pagina de start ---------- */
.fgrid{display:grid;gap:1rem;margin-top:1rem;grid-template-columns:1fr}
@media (min-width:760px){.fgrid{grid-template-columns:1fr 1fr}}
.fcard{display:flex;flex-direction:column;gap:.5rem;padding:1.2rem 1.2rem 1.1rem;border-radius:16px;background:var(--surface);
  border:2px solid var(--line);border-left:10px solid var(--bar);color:var(--ink);text-decoration:none}
.fcard:hover{border-color:var(--bar)}
.fcard h2{font-size:1.4rem;color:var(--txt);font-variation-settings:'wdth' 102,'wght' 740}
.fcard p{margin:0;color:var(--ink2)}
.fcard .go{margin-top:auto;padding-top:.6rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.fcard .go .btn{background:var(--txt);border-color:var(--txt);color:var(--surface)}
.fcard .secs{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.15rem}

/* ---------- răspunsuri ---------- */
.tabs{display:flex;gap:.5rem;margin-top:1rem;flex-wrap:wrap}
.tabs button{
  flex:1 1 14rem;border:2px solid var(--line);background:var(--surface);border-radius:12px;
  min-height:3.2rem;font-size:1.02rem;font-variation-settings:'wght' 650;padding:.5rem .9rem
}
.tabs button:hover{border-color:var(--accent)}
.tabs button[data-on]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.tabs button span{opacity:.8;font-variation-settings:'wght' 500;margin-left:.3rem}
.status{display:flex;gap:.8rem 1.2rem;align-items:center;flex-wrap:wrap}
.status .st{display:flex;gap:.7rem;align-items:center;flex:1 1 20rem;min-width:0}
.status .dot{width:.9rem;height:.9rem;border-radius:50%;background:var(--live);flex:none;box-shadow:0 0 0 .3rem rgba(10,115,70,.18)}
.status .dot.off{background:var(--warn-line);box-shadow:0 0 0 .3rem rgba(226,85,28,.18)}
.status .st b{display:block;font-size:1.08rem}
.status .url{display:block;color:var(--ink2);font-size:.88rem;overflow-wrap:anywhere}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:.7rem;margin-top:1rem}
.stat{border-left:8px solid var(--bar);background:var(--tint);border-radius:12px;padding:.7rem .9rem}
.stat b{display:block;font-size:1.9rem;line-height:1.1;color:var(--txt);font-variation-settings:'wdth' 104,'wght' 760}
.stat span{display:block;color:var(--ink2);font-size:.9rem;margin-top:.15rem}
.stat small{color:var(--ink3);font-size:.85rem}
.tools{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:1rem}
.tools .lbl{color:var(--ink2);font-size:.92rem;margin-right:.2rem}
.tools .sp{flex:1 1 auto}
.filter{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:1rem}
.filter .searchbox{flex:1 1 18rem}
.filter .searchbox .inp{font-size:1.02rem;padding-top:.7rem;padding-bottom:.7rem}
.filter .searchbox > svg{top:50%}
.filter .chips .chip-r span{min-height:2.6rem}
.tbl-wrap{overflow-x:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:.95rem}
.tbl th{text-align:left;background:var(--surface2);color:var(--ink2);font-variation-settings:'wght' 650;padding:.6rem .7rem;
  border-bottom:2px solid var(--line);white-space:nowrap;font-size:.88rem}
.tbl td{padding:.6rem .7rem;border-bottom:1px solid var(--line2);vertical-align:top}
.tbl tr:last-child td{border-bottom:0}
.tbl tbody tr:hover td{background:var(--accent-soft)}
.tbl .nr{width:2.5rem;color:var(--ink3);text-align:right;font-variant-numeric:tabular-nums}
.tbl .who{font-variation-settings:'wght' 650;white-space:nowrap}
.tbl .num{text-align:center;font-variant-numeric:tabular-nums}
.tbl .when{color:var(--ink3);white-space:nowrap;font-size:.85rem}
.tbl .nw{white-space:nowrap}
.tbl .m-sum{display:none}
.dupl{display:inline-block;margin-left:.4rem;border-radius:999px;padding:.05rem .5rem;font-size:.75rem;background:#fff1cf;color:#6b4a00;
  font-variation-settings:'wght' 650;white-space:nowrap;vertical-align:.1rem}
.tbl .act{width:1%;white-space:nowrap}
.tbl .act a{display:inline-flex;align-items:center;gap:.3rem;border:2px solid var(--line2);border-radius:10px;padding:.2rem .6rem;
  text-decoration:none;font-size:.85rem;font-variation-settings:'wght' 650}
.tbl .act a:hover{border-color:var(--accent)}
.tbl mark{background:#fff1cf;color:inherit;border-radius:3px}
.tbl tfoot td{font-variation-settings:'wght' 700;background:var(--surface2);border-top:2px solid var(--line)}
.empty{padding:1rem 1.1rem;color:var(--ink2)}
.pivot{border-collapse:collapse;font-size:.92rem;margin:.2rem 0 .4rem}
.pivot th,.pivot td{border:1px solid var(--line2);padding:.4rem .6rem;text-align:center}
.pivot th{background:var(--surface2);color:var(--ink2);font-variation-settings:'wght' 650}
.pivot th:first-child,.pivot td:first-child{text-align:left}
.pivot .tot{font-variation-settings:'wght' 720}
.pivot td.z{color:var(--ink3)}
details.more{border-top:2px solid var(--line2)}
details.more summary{cursor:pointer;font-variation-settings:'wght' 650;padding:.8rem 1.1rem;background:var(--surface2);list-style:none;display:flex;align-items:center;gap:.6rem}
details.more summary::-webkit-details-marker{display:none}
details.more summary::before{content:"▸";transition:transform .2s}
details.more[open] summary::before{transform:rotate(90deg)}
details.more .in{padding:.9rem 1.1rem}
.names{columns:3;column-gap:1.6rem;margin:0;padding:0;list-style:none}
.names li{break-inside:avoid;padding:.3rem 0;border-bottom:1px solid var(--line2);display:flex;justify-content:space-between;gap:.6rem}
.names li span{color:var(--ink3);font-size:.85rem;text-align:right}
@media (max-width:900px){.names{columns:2}}
@media (max-width:560px){.names{columns:1}}
.obslist{list-style:none;margin:0;padding:0}
.obslist li{padding:.7rem 0;border-top:1px solid var(--line2);white-space:pre-line}
.obslist li:first-child{border-top:0}
.obslist b{display:block;margin-bottom:.15rem}
.del li{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap}
.del li > span{flex:1 1 14rem}
.login{max-width:30rem;margin:2rem auto 0}
.login form{display:flex;flex-direction:column;gap:.8rem;margin-top:1rem}
.bar-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}

footer{padding:1.6rem .2rem 2.6rem;color:var(--ink2);font-size:.88rem;text-align:center}
footer a,footer button{color:var(--accent)}

@media (max-width:640px){
  .mark{font-size:1rem;padding:.45rem .5rem;border-radius:8px}
  .top .wrap{gap:.7rem;padding-top:.75rem;padding-bottom:.75rem}
  .hbtn{min-width:2.5rem;height:2.5rem;padding:0 .6rem;font-size:.95rem}
  .brand h1{font-size:.95rem}
  .wrap{padding:0 .7rem}
  .pad{padding:.95rem}
  .intro h2{font-size:1.35rem}
  .sec-h h2{font-size:1.2rem}
  .sec-b{padding:.7rem}
  .erow{padding:.7rem .75rem .9rem}
  .fields > .w-norm,.fields > .w-half{grid-column:span 6}
  .fields > .w-narrow{grid-column:span 3}
  .chip-r span{padding:.45rem .7rem}
  .stat b{font-size:1.6rem}
  /* tabelele devin fișe scurte pe telefon: profesorul, ce, restul pe un rând */
  .tbl thead{display:none}
  .tbl,.tbl tbody,.tbl tfoot{display:block;width:100%}
  .tbl tr{display:grid;grid-template-columns:1fr auto;column-gap:.6rem;padding:.65rem .9rem;border-bottom:2px solid var(--line2)}
  .tbl tr:last-child{border-bottom:0}
  .tbl td{display:block;border:0;padding:0;grid-column:1}
  .tbl td.nr,.tbl td.meta{display:none}
  .tbl td.who{white-space:normal;font-size:1rem}
  .tbl td.main{font-variation-settings:'wght' 560}
  .tbl td.m-sum{display:block;color:var(--ink2);font-size:.9rem}
  .tbl td.when{font-size:.8rem;margin-top:.15rem}
  .tbl td.act{grid-column:2;grid-row:1 / span 3;align-self:start;width:auto}
  .tbl tbody tr:hover td{background:none}
  .tbl tfoot tr{display:flex;flex-wrap:wrap;gap:.2rem 1rem}
  .tbl tfoot td{display:block;background:none;border:0}
  .tbl tfoot td:empty{display:none}
  .tbl tfoot td[data-l]:not([data-l=""])::before{content:attr(data-l) ": ";color:var(--ink2);font-variation-settings:'wght' 500}
  .stats{grid-template-columns:1fr 1fr;gap:.5rem}
  .stat{padding:.55rem .7rem}
  .tools .lbl{flex-basis:100%}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- tipărire / PDF ---------- */
#print{display:none}
@media print{
  body > *:not(#print){display:none!important}
  #print{display:block;color:#000;font-size:9.5pt;line-height:1.3}
  html{font-size:10pt}
  body{background:#fff}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  @page{size:A4 landscape;margin:11mm 11mm 13mm;@bottom-center{content:"Pagina " counter(page) " din " counter(pages);font:8pt 'Archivo',sans-serif;color:#555}}
  .pr-school{font-size:10pt;font-weight:700;font-variation-settings:'wght' 700}
  .pr-title{text-align:center;margin:3mm 0 5mm}
  .pr-title h1{font-size:15pt;letter-spacing:.02em}
  .pr-title p{margin:1mm 0 0;font-size:11pt}
  .pr-sec{margin-top:6mm}
  .pr-sec h2{font-size:11.5pt;margin:0 0 2mm;break-after:avoid}
  .pr-sec .pr-none{font-style:italic;color:#444}
  .pr-t{width:100%;border-collapse:collapse;table-layout:fixed}
  .pr-t th,.pr-t td{border:.6pt solid #777;padding:1.2mm 1.6mm;vertical-align:top;text-align:left;word-wrap:break-word}
  .pr-t th{background:#e7eafc;font-weight:700;font-variation-settings:'wght' 700}
  .pr-t thead{display:table-header-group}
  .pr-t tr{break-inside:avoid}
  .pr-t .c{text-align:center}
  .pr-t tfoot td{font-weight:700;font-variation-settings:'wght' 700;background:#f2f4fa}
  .pr-pv{break-inside:avoid}
  .pr-piv{border-collapse:collapse;margin-top:1mm}
  .pr-piv th,.pr-piv td{border:.6pt solid #777;padding:1mm 2.5mm;text-align:center}
  .pr-piv th{background:#e7eafc}
  .pr-piv th:first-child,.pr-piv td:first-child{text-align:left}
  .pr-obs p{margin:0 0 2mm;white-space:pre-line}
  .pr-foot{margin-top:6mm;color:#555;font-size:8pt}
}
