:root { --fundal:#10202e; --rand:#1c3347; --curte:#3a3a2c; --absenti:#3b2730; --text:#fff; --titlu:#ffd166; --secundar:#9fc5e8; --discret:#9fb3c8; --linie:#2b4257; --rosu:#ff9d9d; --marime:16px; }
* { box-sizing:border-box; }
html, body { margin:0; background:var(--fundal); color:var(--text); font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
body { font-size:var(--marime); padding:.5em .6em; line-height:1.25; min-height:100vh; }
.cap { display:flex; align-items:center; justify-content:space-between; gap:.5em; margin-bottom:.4em; }
.cap h1 { font-size:1.45em; margin:0; text-align:center; font-weight:700; }
.sageata { background:transparent; color:var(--text); border:1px solid #5b7083; border-radius:.3em; font-size:1.2em; line-height:1; padding:.15em .6em; min-width:44px; min-height:44px; cursor:pointer; }
/* Lățimile coloanelor se reglează aici: angajați / lucrări. */
.coloane { display:grid; grid-template-columns:minmax(0,46fr) minmax(0,54fr); gap:.6em; align-items:start; }
.titlu-col { font-size:1em; margin:0 0 .25em; color:var(--discret); font-weight:600; text-transform:uppercase; letter-spacing:.03em; }
.angajati { border-collapse:collapse; width:100%; table-layout:fixed; }
.angajati td { padding:.1em .3em; border-bottom:1px solid var(--linie); vertical-align:top; overflow-wrap:anywhere; }
.angajati .nume { width:52%; font-weight:600; }
.angajati .unde { color:var(--secundar); font-size:.92em; }
.stare-curte .unde { color:var(--titlu); }
.stare-absent td { background:#6b1f2a; }
.stare-concediu td { background:#3b2f5e; }
.stare-concediu .unde { color:#d3c6ff; font-weight:700; }
.stare-absent .unde { color:var(--rosu); font-weight:700; }
.lucrare { background:var(--rand); border-radius:.3em; padding:.3em .5em; margin-bottom:.35em; }
.lucrare h3 { margin:0; font-size:1.08em; color:var(--titlu); line-height:1.2; font-weight:700; }
.sef { font-size:.95em; color:var(--text); }
.sef.lipsa { color:var(--discret); }
.detalii { color:var(--secundar); font-size:.9em; white-space:pre-line; }
.repere { color:var(--discret); font-size:.84em; }
.oameni { font-size:.95em; }
.nota { color:var(--secundar); font-size:.8em; }
.tag { font-size:.68em; font-weight:700; border-radius:.8em; padding:.1em .5em; margin-left:.4em; vertical-align:middle; white-space:nowrap; }
.tag.lung { background:#2d5a85; color:#fff; }
.tag.gata { background:#1f7a46; color:#fff; }
.lucrare.finalizata { background:#1b3a30; }
.lucrare.curte { background:var(--curte); }
.lucrare.absenti { background:var(--absenti); }
.lucrare.concediu { background:#2f2850; }
.lucrare.concediu h3 { color:#d3c6ff; }
.lucrare.absenti h3 { color:#f4b6c2; }
.nimic { font-size:1.2em; color:var(--discret); text-align:center; padding:3em 1em; }
#subsol { color:var(--text); font-size:.85em; margin-top:.3em; padding-top:.25em; border-top:1px solid var(--linie); }
body.monitor { height:100vh; overflow:hidden; }
body.monitor .sageata { min-width:0; min-height:0; }
/* Pe telefon coloanele vin una sub alta: întâi fiecare își caută numele, apoi lucrările. */
@media (max-width:700px) {
  .coloane { grid-template-columns:1fr; }
  .col-lucrari { margin-top:.6em; }
  .cap h1 { font-size:1.1em; }
  .angajati .nume { width:46%; }
  body { font-size:15px; }
}
