/* ============================================================
   ilaw.md — banner și modal consimțământ cookie
   ============================================================ */
.cc-banner{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:70;
  max-width:800px;margin:0 auto;
  background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);
  box-shadow:var(--shadow-pop);padding:22px 24px 20px;
  display:flex;flex-direction:column;gap:16px
}
.cc-banner[hidden],.cc-overlay[hidden],.cc-modal[hidden]{display:none !important}
.cc-banner h2{font-size:18px;font-weight:800;margin:0;color:var(--text);letter-spacing:-.2px}
.cc-banner p{margin:0;font-size:15.5px;line-height:1.6;color:var(--text-3)}
.cc-banner a{color:var(--gold-text);font-weight:700}
.cc-actions{display:flex;flex-wrap:wrap;gap:8px}
.cc-btn{
  border:0;border-radius:var(--r-sm);padding:11px 16px;font-size:14px;font-weight:800;
  font-family:var(--font);cursor:pointer;line-height:1.2
}
.cc-btn-primary{background:var(--gold-btn);color:var(--text-on-gold)}
.cc-btn-primary:hover{background:var(--gold-btn-hover)}
.cc-btn-secondary{
  background:var(--card);color:var(--text);border:1px solid var(--btn2-border)
}
.cc-btn-secondary:hover{background:var(--hover-soft)}
.cc-btn-ghost{
  background:transparent;color:var(--gold-text);padding-left:8px;padding-right:8px
}
.cc-btn-ghost:hover{color:var(--gold-text-dark)}
.cc-overlay{
  position:fixed;inset:0;z-index:71;background:rgba(16,32,39,.45)
}
.cc-modal{
  position:fixed;z-index:72;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;
  background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);
  box-shadow:var(--shadow-pop);padding:22px 22px 18px
}
.cc-modal h2{font-size:18px;font-weight:800;margin:0 0 8px;color:var(--text)}
.cc-modal .cc-lead{font-size:13.5px;line-height:1.55;color:var(--text-3);margin:0 0 16px}
.cc-row{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  padding:14px 0;border-top:1px solid var(--divider)
}
.cc-row:last-of-type{border-bottom:1px solid var(--divider);margin-bottom:16px}
.cc-row h3{font-size:14px;font-weight:800;margin:0 0 4px;color:var(--text)}
.cc-row p{margin:0;font-size:12.5px;line-height:1.5;color:var(--text-muted)}
.cc-switch{position:relative;flex:0 0 auto;width:42px;height:24px}
.cc-switch input{position:absolute;opacity:0;width:0;height:0}
.cc-switch span{
  display:block;width:42px;height:24px;border-radius:20px;background:var(--switch-off);
  transition:background .15s
}
.cc-switch span:after{
  content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;
  background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(16,32,39,.2)
}
.cc-switch input:checked + span{background:var(--gold-btn)}
.cc-switch input:checked + span:after{transform:translateX(18px)}
.cc-switch input:disabled + span{opacity:.55;cursor:not-allowed}
.cc-switch input:focus-visible + span{outline:2px solid var(--gold);outline-offset:2px}
body.cc-open{overflow:hidden}
@media(min-width:561px){
  .cc-banner{padding:32px 32px 26px;gap:18px;max-width:840px}
  .cc-banner h2{font-size:20px}
  .cc-banner p{font-size:16.5px;line-height:1.65}
  .cc-btn{padding:12px 18px;font-size:14.5px}
}
@media(max-width:560px){
  .cc-banner{left:10px;right:10px;bottom:10px;padding:16px}
  .cc-actions{flex-direction:column}
  .cc-actions .cc-btn{width:100%;text-align:center}
}
