/* Identitate proprie: registru pe hârtie caldă, cerneală vânătă. Fără fonturi externe. */
:root{
  /* Petrol, lime, mentă, alb cald. Fără fonturi externe. */
  --paper:#f3f6f1; --card:#ffffff; --line:#e1e8e2; --line-strong:#c9d4cc;
  --ink:#0f2a2d; --ink-2:#4a6062; --ink-3:#7b8c8c;
  --accent:#0c4a4f; --accent-h:#083a3e; --accent-soft:#e2f5ee;
  --lime:#d7f35b; --lime-h:#c8e744; --mint:#cfeee2; --petrol-dark:#0a3437;
  --ok:#17795a; --ok-soft:#ddf3ea; --warn:#8a6100; --warn-soft:#fbf0cf; --err:#b3261e; --err-soft:#fbe6e3; --gray:#677577; --gray-soft:#eaefec;
  --serif:var(--sans);
  --sans:"Inter","SF Pro Text","Segoe UI Variable","Segoe UI",system-ui,-apple-system,Roboto,"Helvetica Neue",Arial,sans-serif;
  --r:8px; --r-card:14px;
  --umbra:0 1px 2px rgba(15,42,45,.05),0 4px 14px rgba(15,42,45,.05);
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{background:var(--paper);color:var(--ink);font:14px/1.45 var(--sans)}
[hidden]{display:none!important}
h1,h2,h3{font-family:var(--sans);font-weight:700;line-height:1.2;margin:0;letter-spacing:-.01em;color:var(--ink)}
h1{font-size:1.55rem} h2{font-size:1.05rem} h3{font-size:1rem}
p{margin:0}
a{color:var(--accent)}
.muted{color:var(--ink-2)} em.muted{font-style:normal}
.num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9em}
.stack{display:grid;gap:.8rem}
.row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.spacer{flex:1}

.brand{display:flex;align-items:center;gap:.55rem;font-weight:700;font-size:1.05rem;letter-spacing:-.01em}
.brand-mark{display:inline-grid;place-items:center;width:1.9rem;height:1.9rem;flex:none}
.brand-mark svg{width:100%;height:100%;display:block}

.btn{appearance:none;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);border-radius:var(--r);padding:.42rem .8rem;font:inherit;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;white-space:nowrap}
.btn:hover{background:#f1f5f2}
.btn:disabled{opacity:.55;cursor:default}
.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-h)}
.btn-lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.btn-lime:hover{background:var(--lime-h);border-color:var(--lime-h)}
.btn-danger{background:var(--err);border-color:var(--err);color:#fff}
.btn-danger:hover{background:#951f18}
.btn-ghost{background:transparent;border-color:transparent}
.btn-ghost:hover{background:rgba(0,0,0,.05)}
.btn-sm{padding:.2rem .5rem;font-size:.86em}
.btn-wide{width:100%;justify-content:center}
.link{appearance:none;background:none;border:0;padding:0;color:var(--accent);font:inherit;text-decoration:underline;cursor:pointer}

.field{display:grid;gap:.22rem;min-width:0}
.field>span{font-weight:600;font-size:.88em;color:var(--ink-2)}
.field small{font-size:.82em}
input,select,textarea{font:inherit;color:inherit;background:#fff;border:1px solid var(--line-strong);border-radius:var(--r);padding:.45rem .6rem;width:100%;min-width:0}
input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent)}
input:disabled,select:disabled,textarea:disabled{background:#f1f4f1;color:var(--ink-2)}
input.invalid,select.invalid{border-color:var(--err)}
.data-ro{position:relative;display:block;min-width:0}
.data-ro>input:not(.data-nativ){padding-right:2.1rem}
.data-nativ{position:absolute;right:0;bottom:0;width:2rem;height:100%;padding:0;border:0;opacity:0;pointer-events:none}
.data-buton{position:absolute;right:.2rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:1.7rem;height:1.7rem;padding:0;border:0;background:none;color:var(--ink-2);border-radius:4px;cursor:pointer}
.data-buton:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}
.data-buton:disabled{opacity:.45;cursor:default}
.check{display:flex;gap:.45rem;align-items:center}

.alert{border-radius:var(--r);padding:.55rem .75rem;border:1px solid}
.alert-err{background:var(--err-soft);border-color:#ecbab5;color:#7c1a14}
.alert-warn{background:var(--warn-soft);border-color:#e8d48f;color:#5e4300}
.alert-ok{background:var(--ok-soft);border-color:#b6dec6;color:#14532f}
.alert-info{background:var(--accent-soft);border-color:#b9e3d3;color:#0b3b3f}
.alert ul{margin:.3rem 0 0;padding-left:1.1rem}
