:root{
  --blush-light:#f2ebee;
  --blush-mid:#ecd2ca;
  --rose:#e0b3bc;
  --mauve:#c59ba3;
  --brown:#6e4d4c;
  --brown-light:#7e5a59;
  --ink:#222222;
  --white:#ffffff;
  --border:#ddd0d4;
  --good:#4f7a52;
  --bad:#b1473f;
  --serif:'Prata', Georgia, serif;
  --sans:'Montserrat', system-ui, sans-serif;
  --radius:10px;
}

*{box-sizing:border-box;}

body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:var(--blush-light);
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3{
  font-family:var(--serif);
  color:var(--brown);
  margin:0 0 .4em;
  font-weight:400;
}

a{color:var(--brown);}

button{
  font-family:var(--sans);
  cursor:pointer;
  border:none;
  border-radius:var(--radius);
  padding:.6em 1.1em;
  font-size:.92rem;
  font-weight:500;
  background:var(--mauve);
  color:var(--white);
  transition:background .2s ease;
}
button:hover{background:var(--brown-light);}
button.secundar{background:var(--white);color:var(--brown);border:1px solid var(--border);}
button.secundar:hover{background:var(--blush-mid);}
button.pericol{background:var(--white);color:var(--bad);border:1px solid var(--bad);}
button.pericol:hover{background:var(--bad);color:var(--white);}
button.mic{padding:.35em .7em;font-size:.8rem;}
button:disabled{opacity:.5;cursor:not-allowed;}

input,select{
  font-family:var(--sans);
  font-size:.92rem;
  padding:.5em .6em;
  border:1px solid var(--border);
  border-radius:6px;
  background:var(--white);
  color:var(--ink);
}
input:focus,select:focus{outline:2px solid var(--rose);}
input[type="number"]{width:6.5em;}
td input[type="text"]{width:100%;min-width:220px;}

textarea.c-nume{
  display:block;
  width:100%;
  min-width:220px;
  resize:none;
  overflow:hidden;
  font-family:var(--sans);
  font-size:.92rem;
  line-height:1.35;
  padding:.5em .6em;
  border:1px solid var(--border);
  border-radius:6px;
  background:var(--white);
  color:var(--ink);
}
textarea.c-nume:focus{outline:2px solid var(--rose);}

/* ---------- login ---------- */
.login-wrap{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1.5rem;
}
.login-card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:2.4rem 2.2rem;
  max-width:380px;
  width:100%;
  text-align:center;
  box-shadow:0 10px 40px rgba(110,77,76,.12);
}
.login-card h1{font-size:1.5rem;}
.login-card p{color:var(--brown-light);font-size:.9rem;margin-top:0;}
.login-card form{display:flex;flex-direction:column;gap:.7rem;margin-top:1.2rem;}
.login-card input{width:100%;text-align:center;}
.login-card button{width:100%;margin-top:.3rem;}
.eroare{
  background:#fbeceb;
  color:var(--bad);
  border:1px solid #f0c9c6;
  border-radius:6px;
  padding:.6em .8em;
  font-size:.85rem;
}

/* ---------- app shell ---------- */
.top-bar{
  background:var(--white);
  border-bottom:1px solid var(--border);
  padding:.8rem 1.4rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  flex-wrap:wrap;
  position:sticky;
  top:0;
  z-index:10;
}
.top-bar .brand{font-family:var(--serif);color:var(--brown);font-size:1.15rem;}
.top-bar .brand span{color:var(--mauve);}

.container{max-width:1180px;margin:0 auto;padding:1.4rem;}

.tabs{
  display:flex;
  gap:.4rem;
  margin-bottom:1.2rem;
  flex-wrap:wrap;
  border-bottom:1px solid var(--border);
}
.tabs button{
  background:none;
  color:var(--brown-light);
  border-radius:8px 8px 0 0;
  padding:.7em 1.1em;
}
.tabs button:hover{background:var(--blush-mid);color:var(--brown);}
.tabs button.activ{
  background:var(--white);
  color:var(--brown);
  font-weight:600;
  border:1px solid var(--border);
  border-bottom:1px solid var(--white);
  margin-bottom:-1px;
}

.card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:1.3rem;
  margin-bottom:1.2rem;
}
.card h2{font-size:1.15rem;display:flex;align-items:center;gap:.5rem;justify-content:space-between;}
.card .sub{color:var(--brown-light);font-size:.85rem;margin:-0.3em 0 1em;}

.rand-eveniment{
  display:flex;
  gap:.6rem;
  align-items:center;
  flex-wrap:wrap;
}
.rand-eveniment select{min-width:220px;}

table{width:100%;border-collapse:collapse;font-size:.9rem;}
thead th{
  text-align:left;
  color:var(--brown-light);
  font-weight:600;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.03em;
  padding:.5em .6em;
  border-bottom:2px solid var(--border);
}
tbody td{padding:.45em .6em;border-bottom:1px solid var(--border);vertical-align:middle;}
tbody tr:last-child td{border-bottom:none;}
tfoot td{padding:.6em;font-weight:600;border-top:2px solid var(--border);}
.numeric{text-align:right;font-variant-numeric:tabular-nums;}
.tabel-scroll{overflow-x:auto;}

.chip{
  display:inline-block;
  padding:.2em .6em;
  border-radius:100px;
  font-size:.72rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.chip.masa{background:var(--blush-mid);color:var(--brown);}
.chip.prezidiu{background:var(--rose);color:var(--white);}
.chip.decor{background:var(--mauve);color:var(--white);}

.negativ{color:var(--bad);font-weight:600;}
.pozitiv{color:var(--good);}

.stare-salvare{
  font-size:.8rem;
  color:var(--brown-light);
  display:flex;
  align-items:center;
  gap:.35em;
}
.stare-salvare.ok{color:var(--good);}
.stare-salvare.eroare{color:var(--bad);}

.gol{
  text-align:center;
  color:var(--brown-light);
  padding:2rem 1rem;
  font-size:.9rem;
}

.floare-in-rand{
  display:flex;
  gap:.4rem;
  align-items:center;
  margin-bottom:.4rem;
}
.floare-in-rand select{flex:1;min-width:140px;}

.rand-distributie{
  border:1px solid var(--border);
  border-radius:8px;
  padding:1rem;
  margin-bottom:1rem;
  background:var(--blush-light);
}
.rand-distributie-cap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:.6rem;
  flex-wrap:wrap;
  margin-bottom:.7rem;
}
.rand-distributie-cap input[type=text]{font-weight:600;min-width:160px;}
.cost-rand{font-family:var(--serif);color:var(--brown);font-size:1.05rem;}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;}
@media (max-width:780px){.grid-2{grid-template-columns:1fr;}}

.rezumat-stat{
  display:flex;
  justify-content:space-between;
  padding:.5em 0;
  border-bottom:1px dashed var(--border);
  font-size:.95rem;
}
.rezumat-stat:last-child{border-bottom:none;}
.rezumat-stat b{font-family:var(--serif);font-weight:400;color:var(--brown);}

.field-inline{display:flex;align-items:center;gap:.5rem;}
.field-inline label{font-size:.85rem;color:var(--brown-light);}

.recipient-card{
  border:1px solid var(--border);
  border-radius:8px;
  padding:.8rem;
  margin:0 0 .7rem 1.4rem;
  background:var(--white);
}
.recipient-cap{
  display:flex;
  gap:.5rem;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:.6rem;
}
.recipient-cap input[type=text]{min-width:110px;font-weight:600;}
.cost-recipient{font-family:var(--serif);color:var(--brown);margin-left:auto;}

/* ---------- modal ---------- */
.modal-overlay{
  position:fixed;
  inset:0;
  background:rgba(34,34,34,.45);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1rem;
  z-index:100;
}
.modal-card{
  background:var(--white);
  border-radius:var(--radius);
  padding:1.6rem;
  max-width:360px;
  width:100%;
  box-shadow:0 20px 60px rgba(0,0,0,.25);
}
.modal-card h3{margin-bottom:.9rem;font-size:1.2rem;}
.modal-card p{font-size:.92rem;line-height:1.4;margin:0 0 .3rem;}
.modal-card label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--brown-light);margin-bottom:.8rem;}
.modal-card label input{width:100%;}
.modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem;}

.user-info{font-size:.82rem;color:var(--brown-light);}
.bifa{display:flex;gap:.5rem;align-items:flex-start;font-size:.82rem;color:var(--brown-light);margin-top:1rem;line-height:1.35;}
.bifa input{margin-top:.15rem;}
.linie{border:none;border-top:1px dashed var(--border);margin:1.1rem 0;}
.parola-temp{
  font-family:ui-monospace,Menlo,monospace;
  font-size:1.2rem;
  letter-spacing:.05em;
  text-align:center;
  background:var(--blush-light);
  border:1px dashed var(--mauve);
  border-radius:8px;
  padding:.7em;
  user-select:all;
}
td select{max-width:220px;}
.login-card a{font-size:.85rem;}

/* ---------- etapa 2: CRM, calendar, sarcini ---------- */
.mic-text{font-size:.78rem;color:var(--brown-light);font-weight:400;}
.rand-click{cursor:pointer;}
.rand-click:hover td{background:var(--blush-light);}
.filtre{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem;}
.filtre input[type=text]{flex:1;min-width:220px;}

.ev-antet{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin-bottom:1rem;}
.ev-antet h2{margin:0;font-size:1.3rem;}

.chip.tip-decor{background:var(--mauve);color:var(--white);}
.chip.tip-planning{background:var(--brown);color:var(--white);}
.chip.tip-dp{background:linear-gradient(90deg,var(--mauve) 50%,var(--brown) 50%);color:var(--white);}
.chip.st-lead{background:#eee7ea;color:var(--brown);}
.chip.st-oferta{background:#f6e3c8;color:#7a5220;}
.chip.st-confirmat{background:#d9e9d8;color:#3d6a40;}
.chip.st-in-lucru{background:#d8e4f0;color:#345a80;}
.chip.st-finalizat{background:#cfd8d0;color:#2f4a33;}
.chip.st-anulat{background:#f0d6d3;color:var(--bad);}

label.camp{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:var(--brown-light);margin-bottom:.8rem;}
label.camp input,label.camp select{width:100%;}
.rand-3{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:.7rem;}
@media (max-width:640px){.rand-3{grid-template-columns:1fr;}}
textarea.note{width:100%;font-family:var(--sans);font-size:.92rem;padding:.6em;border:1px solid var(--border);border-radius:6px;resize:vertical;}
td input[type=date],td input[type=time]{width:auto;}

.adauga-sarcina{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem;}
.adauga-sarcina input[type=text]{flex:1;min-width:220px;}
.sarcina-gata .t-text{text-decoration:line-through;color:var(--brown-light);}
.intarziat{border-color:var(--bad);color:var(--bad);}
.sarcina-mea,.agenda-rand{cursor:pointer;}
.sarcina-mea:hover,.agenda-rand:hover{background:var(--blush-light);}

.cal-bara{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem;}
.cal-titlu{margin:0 0 0 .5rem;font-size:1.2rem;text-transform:capitalize;}
.cal-legenda{display:flex;gap:1rem;font-size:.8rem;color:var(--brown-light);margin-bottom:.7rem;flex-wrap:wrap;}
.cal-punct{display:inline-block;width:.8em;height:.8em;border-radius:50%;vertical-align:middle;}
.cal-punct.tip-decor{background:var(--mauve);}
.cal-punct.tip-planning{background:var(--brown);}
.cal-punct.tip-dp{background:linear-gradient(90deg,var(--mauve) 50%,var(--brown) 50%);}
.cal-grila{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);}
.cal-zile-cap{background:none;border:none;gap:0;margin-bottom:.3rem;}
.cal-zile-cap div{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--brown-light);text-align:center;padding:.3rem 0;}
.cal-celula{background:var(--white);min-height:96px;padding:.3rem;display:flex;flex-direction:column;gap:2px;overflow:hidden;}
.cal-gol{background:var(--blush-light);}
.cal-azi{background:#fdf6f1;box-shadow:inset 0 0 0 2px var(--rose);}
.cal-nr{font-size:.75rem;color:var(--brown-light);}
.cal-chip{
  display:block;width:100%;text-align:left;font-size:.68rem;font-weight:500;line-height:1.25;
  padding:.2em .4em;border-radius:4px;color:var(--white);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.cal-chip.tip-decor{background:var(--mauve);}
.cal-chip.tip-planning{background:var(--brown);}
.cal-chip.tip-dp{background:linear-gradient(90deg,var(--mauve) 50%,var(--brown) 50%);}
.cal-chip:hover{filter:brightness(.92);}
@media (max-width:640px){.cal-celula{min-height:64px;}.cal-chip{font-size:.6rem;}}

/* ---------- notificări ---------- */
.notif-wrap{position:relative;}
.notif-badge{
  position:absolute;top:-6px;right:-6px;background:var(--bad);color:var(--white);
  border-radius:999px;font-size:.65rem;font-weight:700;line-height:1;
  padding:.25em .45em;min-width:1.2em;text-align:center;
}
.notif-panel{
  position:absolute;right:0;top:calc(100% + .5rem);width:320px;max-width:90vw;max-height:70vh;overflow-y:auto;
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:50;
}
.notif-cap{display:flex;justify-content:space-between;align-items:center;padding:.7rem .9rem;border-bottom:1px solid var(--border);}
.notif-lista{display:flex;flex-direction:column;}
.notif-item{padding:.6rem .9rem;border-bottom:1px solid var(--blush-light);cursor:pointer;display:flex;flex-direction:column;gap:.15rem;font-size:.85rem;}
.notif-item:hover{background:var(--blush-light);}
.notif-item.necitit{background:#fdf6f1;font-weight:600;}
.notif-item:last-child{border-bottom:none;}

/* ---------- Acasă (homepage) ---------- */
.sarcini-rapide{display:flex;flex-direction:column;gap:.5rem;}
.sarcina-rapida{
  display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;
  padding:.5rem .7rem;border:1px solid var(--border);border-radius:8px;
}
.sarcina-rapida.intarziat{border-color:var(--bad);}
.sarcina-rapida .sr-text{flex:1;min-width:180px;cursor:pointer;font-size:.9rem;}
.sarcina-rapida .sr-text:hover{text-decoration:underline;}
.sarcina-rapida select,.sarcina-rapida input[type=date]{font-size:.82rem;padding:.35em .5em;}
.grup-sarcini{margin-bottom:1rem;}
.grup-sarcini:last-child{margin-bottom:0;}
.grup-sarcini h3{
  font-size:.9rem;margin:0 0 .5rem;cursor:pointer;color:var(--brown);
  padding-bottom:.3rem;border-bottom:1px solid var(--blush-light);
}
.grup-sarcini h3:hover{text-decoration:underline;}
.grup-sarcini .sarcina-rapida{margin-bottom:.4rem;}
