/* Cancelaria Lojii: cer de noapte, aur și crem (inspirat de Planșa Lojii) */
:root{
  --night:#0f1642; --night-2:#141d55; --night-3:#0b1036;
  --card:#19225e; --card-2:#151d55;
  --gold:#d8b25a; --gold-deep:#a9822f; --gold-soft:#e8d4a2; --cream:#f3e7c7;
  --text:#ece6d6; --muted:#b5b3c8; --line:rgba(232,212,162,.22); --line-soft:rgba(143,168,240,.16);
  --blue:#8fa8f0; --silver:#b9b9c4; --danger:#ef8f8f; --ok:#9fd8a8;
  --radius:14px;
  --serif:"Alegreya",Georgia,"Times New Roman",serif;
  --sans:"Alegreya Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{background:var(--night);-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;background:var(--night);color:var(--text);font:400 17px/1.55 var(--sans)}
a{color:var(--gold-soft);text-decoration:none}
a:hover{color:var(--cream);text-decoration:underline}
h1,h2,h3{font-family:var(--serif);color:var(--cream);font-weight:700;line-height:1.2;margin:0 0 .5rem}
h2{font-size:1.55rem} h3{font-size:1.2rem}
p{margin:0 0 .8rem}
small,.muted{color:var(--muted)}

/* ---------- antet ---------- */
.sky{position:relative;overflow:hidden;padding:26px 16px 0;
  background:
    radial-gradient(1.2px 1.2px at 12% 18%,#fff8 50%,transparent 51%),
    radial-gradient(1px 1px at 28% 62%,#fff6 50%,transparent 51%),
    radial-gradient(1.4px 1.4px at 46% 12%,#fff9 50%,transparent 51%),
    radial-gradient(1px 1px at 63% 44%,#fff7 50%,transparent 51%),
    radial-gradient(1.3px 1.3px at 74% 20%,#fff8 50%,transparent 51%),
    radial-gradient(1px 1px at 84% 70%,#fff6 50%,transparent 51%),
    radial-gradient(1.2px 1.2px at 92% 35%,#fff8 50%,transparent 51%),
    radial-gradient(1px 1px at 38% 82%,#fff5 50%,transparent 51%),
    radial-gradient(1px 1px at 56% 76%,#fff5 50%,transparent 51%),
    radial-gradient(ellipse 80% 120% at 50% -30%,#2b3b93 0%,#18226a 45%,var(--night) 80%);
}
.sky .sparkle{position:absolute;width:14px;height:14px;opacity:.85}
.sky-inner{max-width:1100px;margin:0 auto;display:flex;gap:26px;align-items:center;padding-bottom:18px}
.seal{flex:0 0 auto;width:118px;height:118px;border-radius:50%;
  box-shadow:0 0 0 3px rgba(216,178,90,.55),0 0 42px rgba(216,178,90,.32)}
.seal img,.seal svg{width:100%;height:100%;border-radius:50%;display:block}
.brand h1{font-size:2.35rem;margin:0;letter-spacing:.005em}
.brand .subtitle{font-family:var(--serif);font-style:italic;color:var(--cream);opacity:.9;margin:.2rem 0 .55rem;font-size:1.05rem}
.brand .dateline{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;color:var(--muted)}
.brand .dateline b{color:var(--gold)}
.brand .greeting{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--cream);margin-top:.6rem;font-size:1.1rem}

/* cordonul cu noduri */
.cord{position:relative;height:36px;margin:0 -16px}
.cord .rope{position:absolute;left:0;right:0;top:50%;height:7px;transform:translateY(-50%);border-radius:4px;
  background:repeating-linear-gradient(118deg,#f4dd96 0 3px,#c99f45 3px 6px,#7c5b1c 6px 8px);
  box-shadow:0 1px 2px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.25)}
.cord .knot{position:absolute;top:1px;width:84px;height:34px;transform:translateX(-50%);filter:drop-shadow(0 1px 1px rgba(0,0,0,.6))}
.cord .k1{left:8%} .cord .k2{left:50%} .cord .k3{left:92%}

/* ---------- conținut ---------- */
.wrap{max-width:1100px;margin:0 auto;padding:22px 16px 60px}
.eyebrow{font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.8rem;color:var(--gold);margin:0 0 .75rem}
.section{margin:1.6rem 0}
.row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.spread{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between}

/* meniu tip pastilă */
.pills{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 1.4rem}
.pills a,.pills button{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1.35rem;border-radius:999px;
  border:1px solid var(--line);color:var(--cream);font:700 1rem var(--sans);background:transparent;cursor:pointer;text-decoration:none}
.pills a:hover,.pills button:hover{border-color:var(--gold);color:var(--cream);text-decoration:none}
.pills a.active{background:var(--gold-soft);border-color:var(--gold-soft);color:#1a1f45}
.pills .count{font-size:.78rem;color:var(--gold);font-weight:700}
.pills a.active .count{color:#5b4416}
.pills form{margin:0}

/* carduri de eveniment */
.events{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:.8rem}
.ev{display:flex;align-items:center;gap:1rem;min-height:104px;padding:.9rem 1rem;border-radius:12px;
  background:linear-gradient(135deg,#1c2668,#161f58);border:1px solid var(--line-soft);border-left:5px solid var(--gold);color:var(--text)}
a.ev:hover{text-decoration:none;border-color:rgba(232,212,162,.45);border-left-color:var(--gold)}
.ev.proposed{border-left-style:dashed}
.ev.more{background:var(--night-2);border-left-color:var(--gold-soft)}
.ev .d{flex:0 0 58px;text-align:center;font-family:var(--serif);color:var(--gold);line-height:1}
.ev .d b{display:block;font-size:1.65rem;font-weight:700}
.ev .d span{display:block;margin-top:.3rem;font:700 .78rem var(--sans);letter-spacing:.06em;text-transform:uppercase}
.ev .t{font-family:var(--serif);font-weight:700;font-size:1.18rem;color:var(--cream)}
.ev .s{color:var(--muted);font-size:.95rem}
.legend{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:.7rem;color:var(--muted);font-size:.95rem}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:.4rem;vertical-align:-1px;background:var(--gold)}
.legend i.p{background:transparent;border:1.5px dashed var(--gold)}

/* panouri */
.panel{background:linear-gradient(160deg,#1c2767,#151e57);border:1px solid rgba(232,212,162,.16);border-radius:16px;padding:1.4rem 1.5rem;margin:0 0 1.2rem}
.panel.dashed{background:#171e4f;border-style:dashed;border-color:rgba(232,212,162,.35)}
.panel.flat{background:var(--night-2)}
.big{font-family:var(--serif);font-weight:800;color:var(--gold);font-size:2.6rem;line-height:1}
.big small{font:700 1rem var(--serif);color:var(--cream)}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.2rem}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem}
.stat{background:var(--night-2);border:1px solid var(--line-soft);border-radius:12px;padding:1rem}
.stat b{display:block;font:800 1.9rem var(--serif);color:var(--gold)}

/* butoane */
.btn{display:inline-flex;align-items:center;gap:.45rem;padding:.65rem 1.25rem;border-radius:9px;border:1px solid var(--line);
  background:transparent;color:var(--cream);font:700 1rem var(--sans);cursor:pointer;text-decoration:none;line-height:1.2}
.btn:hover{border-color:var(--gold);text-decoration:none;color:var(--cream)}
.btn.gold{background:var(--gold-soft);border-color:var(--gold-soft);color:#1a1f45}
.btn.gold:hover{background:var(--cream)}
.btn.small{padding:.4rem .8rem;font-size:.9rem}
.btn.danger{border-color:rgba(239,143,143,.5);color:var(--danger)}
button.link{background:none;border:0;padding:0;color:var(--danger);font:inherit;cursor:pointer}

/* formulare */
form{margin:0}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem 1.1rem;margin-bottom:1.1rem}
.form-grid .wide{grid-column:1/-1}
.field{display:flex;flex-direction:column;gap:.35rem}
.field>span{font-size:.9rem;color:var(--muted);font-weight:500}
.field>span em{color:var(--gold);font-style:normal}
input,select,textarea{width:100%;font:400 1rem var(--sans);color:var(--text);background:var(--night-3);
  border:1px solid rgba(232,212,162,.24);border-radius:9px;padding:.62rem .75rem;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,178,90,.18)}
input[type=checkbox]{width:auto;accent-color:var(--gold)}
input[type=date],input[type=time]{color-scheme:dark}
select option{background:var(--night-3)}
.check{display:flex;gap:.55rem;align-items:center;color:var(--text)}
.err{color:var(--danger)}
.form-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
fieldset{border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;margin:0 0 1.1rem}
legend{padding:0 .4rem;color:var(--gold);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}
details{margin:.4rem 0}
summary{cursor:pointer;color:var(--gold-soft);font-weight:700}

/* tabele */
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;font-size:.98rem}
th{text-align:left;font-weight:700;color:var(--gold);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;padding:.6rem .7rem;border-bottom:1px solid var(--line)}
td{padding:.7rem .7rem;border-bottom:1px solid rgba(232,212,162,.1);vertical-align:top}
tr:hover td{background:rgba(255,255,255,.02)}

/* etichete */
.badge{display:inline-block;padding:.12rem .6rem;border-radius:999px;font-size:.82rem;font-weight:700;border:1px solid var(--line);color:var(--cream);white-space:nowrap}
.badge.gold{background:rgba(216,178,90,.16);border-color:rgba(216,178,90,.5);color:var(--gold-soft)}
.badge.blue{background:rgba(143,168,240,.14);border-color:rgba(143,168,240,.45);color:#c9d5fb}
.badge.red{background:rgba(239,143,143,.12);border-color:rgba(239,143,143,.45);color:#f6c3c3}
.badge.grey{color:var(--muted)}

/* mesaje */
.flash{border-radius:12px;padding:.85rem 1.1rem;margin:0 0 1.2rem;border:1px solid}
.flash.ok{background:rgba(159,216,168,.08);border-color:rgba(159,216,168,.4);color:#d5f0da}
.flash.bad{background:rgba(239,143,143,.08);border-color:rgba(239,143,143,.4);color:#f6d0d0}
.flash ul{margin:.3rem 0 0;padding-left:1.2rem}
.secret{font:700 1.25rem ui-monospace,Consolas,monospace;letter-spacing:.06em;color:var(--gold-soft);background:var(--night-3);padding:.4rem .8rem;border-radius:8px;display:inline-block;user-select:all}

.timeline{list-style:none;margin:0;padding:0}
.timeline li{position:relative;padding:0 0 .9rem 1.4rem;border-left:2px solid var(--line)}
.timeline li::before{content:"";position:absolute;left:-6px;top:.45rem;width:10px;height:10px;border-radius:50%;background:var(--gold)}
.timeline li:last-child{border-left-color:transparent}

/* autentificare */
.auth{max-width:440px;margin:6vh auto 0;padding:0 16px}
.auth .panel{padding:2rem}
.auth .seal{width:96px;height:96px;margin:0 auto 1rem}

footer{max-width:1100px;margin:0 auto;padding:0 16px 30px;color:var(--muted);font-size:.85rem;text-align:center}

@media (max-width:640px){
  body{font-size:16px}
  .sky-inner{gap:14px;align-items:flex-start}
  .seal{width:76px;height:76px}
  .brand h1{font-size:1.65rem}
  .brand .subtitle{font-size:.95rem}
  .brand .dateline{font-size:.72rem;letter-spacing:.1em}
  .cord .knot{width:64px}
  .pills a,.pills button{padding:.5rem 1rem;font-size:.95rem}
  .panel{padding:1.1rem}
  .events{grid-template-columns:1fr}
  .sky .sparkle{display:none}
}

/* paginare */
.pagination{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;padding:0;margin:1rem 0 0}
.pagination li>a,.pagination li>span{display:inline-block;min-width:2.2rem;text-align:center;padding:.35rem .6rem;border:1px solid var(--line);border-radius:8px;color:var(--cream)}
.pagination li.active>span{background:var(--gold-soft);color:#1a1f45;border-color:var(--gold-soft)}
.pagination li.disabled>span{opacity:.4}
