/* Unelte Utile — stiluri. Layout: antet cu căutare, conținut pe o coloană, pagină de unealtă cu bară laterală pe desktop. */
:root{
  --bg:#f6f7f4; --surf:#ffffff; --surf2:#eef2ee; --fg:#15201d; --muted:#56645f; --line:#dbe2dd;
  --acc:#0f5c4d; --acc2:#0b4a3e; --accs:#e2efe9; --hi:#f4d35e; --hitxt:#3b2f00; --err:#b3261e; --errs:#fbe9e7;
  --onacc:#ffffff; --topbg:#0f5c4d; --fr:#0b4a3e; --frtop:#f4d35e; --star:#9a6c00; --favbg:#fdf6dc; --favln:#c9a227;
  --f:"Onest", "Segoe UI", system-ui, -apple-system, sans-serif;
  --mono:"JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --r:12px; color-scheme:light;
}
/* Tema: implicit după sistem; <html data-theme="light|dark"> (butonul din antet) sau data-tema (iframe /embed) o forțează.
   Blocul întunecat e repetat: o dată pentru sistem (dacă nu e forțat „light”), o dată pentru „dark” forțat. */
@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-tema=light]){
  --bg:#0e1513; --surf:#151e1b; --surf2:#1b2622; --fg:#e6ede9; --muted:#9aaba4; --line:#27342f;
  --acc:#5cc4a7; --acc2:#7fd6bd; --accs:#17312a; --hi:#f4d35e; --hitxt:#2a2100; --err:#ff8a80; --errs:#3a1b19;
  --onacc:#08221c; --topbg:#0b2b24; --fr:#f4d35e; --frtop:#f4d35e; --star:#f4d35e; --favbg:#2c2610; --favln:#6b5716; color-scheme:dark}}
:root[data-theme=dark],:root[data-tema=dark]{
  --bg:#0e1513; --surf:#151e1b; --surf2:#1b2622; --fg:#e6ede9; --muted:#9aaba4; --line:#27342f;
  --acc:#5cc4a7; --acc2:#7fd6bd; --accs:#17312a; --hi:#f4d35e; --hitxt:#2a2100; --err:#ff8a80; --errs:#3a1b19;
  --onacc:#08221c; --topbg:#0b2b24; --fr:#f4d35e; --frtop:#f4d35e; --star:#f4d35e; --favbg:#2c2610; --favln:#6b5716; color-scheme:dark}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--f);font-size:16px;line-height:1.55}
a{color:var(--acc)}
a:hover{color:var(--acc2)}
h1,h2,h3{line-height:1.2;text-wrap:balance;margin:0 0 .5em}
h1{font-size:clamp(1.6rem,4vw,2.3rem);letter-spacing:-.02em}
h2{font-size:1.25rem}
h3{font-size:1.05rem}
.wrap{max-width:1120px;margin:0 auto;padding-inline:16px}
.narrow{max-width:720px}
.muted{color:var(--muted)} .small{font-size:.88rem}
.skip{position:absolute;left:-999px;top:0;background:var(--surf);color:var(--acc);font-weight:600;padding:10px 14px;border-radius:0 0 10px 10px;z-index:60}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--fr);outline-offset:2px}
.top :focus-visible{outline-color:var(--frtop)}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
main:focus{outline:none}

/* antet */
.top{background:var(--topbg);color:#fff;position:sticky;top:0;z-index:20}
.topin{display:flex;align-items:center;gap:14px;padding-block:10px}
.logo{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-weight:700;font-size:1.05rem;white-space:nowrap}
.logo:hover{color:#fff}
.lm{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--hi);color:var(--hitxt);font-family:var(--mono);font-size:1.2rem;line-height:1}
.sbox{position:relative;flex:1;min-width:0}
#q{width:100%;font:inherit;font-size:.95rem;padding:9px 14px;border-radius:10px;border:0;background:rgba(255,255,255,.14);color:#fff}
#q::placeholder{color:rgba(255,255,255,.86)}
#q:focus{background:#fff;color:#15201d;outline:3px solid var(--frtop);outline-offset:1px}
#q:focus::placeholder{color:#56645f}
.qres{position:absolute;left:0;right:0;top:calc(100% + 6px);background:var(--surf);color:var(--fg);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 12px 32px rgba(0,0,0,.18);max-height:70vh;overflow:auto}
.qres a{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;text-decoration:none;color:var(--fg);border-top:1px solid var(--line)}
.qres a:first-child{border-top:0}
.qres a:hover,.qres a:focus,.qres a.on{background:var(--accs)}
.qres a.on{box-shadow:inset 3px 0 0 var(--acc)}
.qres a:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}
.qres mark,.qp mark{background:transparent;color:inherit;font-weight:800;text-decoration:underline;text-decoration-color:var(--acc);text-decoration-thickness:2px;text-underline-offset:2px}
.qres .qall{justify-content:center;font-weight:600;color:var(--acc);background:var(--surf2)}
.qres .qk{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--acc);margin-right:6px}
.qres a span{color:var(--muted);font-size:.82rem;white-space:nowrap}
.qres .none{margin:0;padding:12px 14px;color:var(--muted)}
.lang{color:#fff;font-size:.9rem;text-decoration:none;border:1px solid rgba(255,255,255,.35);padding:6px 10px;border-radius:8px;white-space:nowrap}
.lang:hover{color:#fff;background:rgba(255,255,255,.12)}
.thm{flex:none;display:grid;place-items:center;width:38px;height:36px;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:transparent;color:#fff;cursor:pointer}
.thm:hover{background:rgba(255,255,255,.12)}
.thm svg{width:20px;height:20px;display:none}
.thm[data-m=auto] .i-auto,.thm[data-m=light] .i-light,.thm[data-m=dark] .i-dark{display:block}
@media (max-width:640px){.topin{flex-wrap:wrap}.sbox{order:3;flex-basis:100%}.logo span:last-child{font-size:.98rem}.thm{margin-left:auto}.thm[hidden]+.lang{margin-left:auto}}

/* home */
.hero{padding-block:34px 10px}
.hero.sm{padding-block:8px 6px}
.lead{font-size:1.08rem;color:var(--muted);max-width:62ch;margin:.2em 0 .6em}
.blk{margin-block:34px}
.bh{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.bh h2{margin:0;font-size:1.35rem;letter-spacing:-.01em}
/* plăcuța cu iconița categoriei */
.ic{--h:160;flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:hsl(var(--h) 80% 93%);font-size:1.3rem;line-height:1}
.ic.sm{width:28px;height:28px;border-radius:8px;font-size:.95rem}
.ic.lg{width:56px;height:56px;border-radius:16px;font-size:1.8rem}
/* carduri unelte */
.pop{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.pt{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--surf);border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--fg);transition:transform .15s,box-shadow .15s,border-color .15s;min-width:0}
.pt:hover{border-color:var(--acc);color:var(--fg);transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,40,30,.09)}
.ptx{display:flex;flex-direction:column;gap:1px;min-width:0}
.pt b{font-weight:600;line-height:1.3}
.ptx>span{font-size:.8rem;color:var(--muted)}
/* grila de categorii */
.cgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:900px){.cgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cg{--h:160;display:flex;align-items:center;gap:12px;padding:12px;border-radius:16px;background:var(--surf);border:1px solid var(--line);text-decoration:none;color:var(--fg);transition:transform .15s,box-shadow .15s,border-color .15s,background .15s;min-width:0}
.cg:hover{color:var(--fg);transform:translateY(-2px);border-color:hsl(var(--h) 55% 55%);background:hsl(var(--h) 80% 97%);box-shadow:0 8px 22px rgba(15,40,30,.08)}
.cg>span:last-child{display:flex;flex-direction:column;min-width:0}
.cg b{font-weight:650;font-size:.95rem;line-height:1.25}
.cg small{color:var(--muted);font-size:.78rem}
@media (max-width:520px){.cgrid{grid-template-columns:1fr 1fr;gap:8px}.cg{padding:10px;gap:9px;border-radius:14px}.cg .ic{width:36px;height:36px;font-size:1.1rem;border-radius:10px}.cg b{font-size:.84rem}.cg small{font-size:.72rem}}
/* bandă hero (continuă antetul) */
.hband{background:linear-gradient(160deg,var(--topbg) 0%,var(--topbg) 45%,#137a63 100%);color:#fff;position:relative;overflow:hidden}
.hband::after{content:"";position:absolute;right:-120px;top:-140px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(244,211,94,.28),rgba(244,211,94,0) 70%);pointer-events:none}
.hero.hx{padding-block:30px 34px;position:relative;z-index:1}
.hx h1{font-size:clamp(1.75rem,5vw,2.9rem);max-width:22ch;margin:0 0 14px;color:#fff}
.hk{font-family:var(--mono);font-size:.85rem;color:var(--hi);margin:0 0 8px;letter-spacing:.03em}
.hstat{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 18px}
.hstat li{padding:5px 12px;border-radius:99px;background:rgba(255,255,255,.12);font-size:.86rem;color:rgba(255,255,255,.95)}
.hstat b{color:var(--hi);font-family:var(--mono)}
.hq{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 6px}
.hq>span{font-size:.86rem;color:rgba(255,255,255,.8);margin-right:2px}
.hq a{padding:7px 13px;border-radius:99px;background:#fff;color:#0f5c4d;font-weight:600;font-size:.88rem;text-decoration:none;transition:transform .15s}
.hq a:hover{color:#0b4a3e;transform:translateY(-1px)}
.btn.hsurp{background:var(--hi);color:var(--hitxt)}
.btn.hsurp:hover{background:#ffe17a;color:var(--hitxt)}
:root[data-theme=dark] .hq a{background:#e6ede9;color:#0b2b24}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hq a{background:#e6ede9;color:#0b2b24}}
/* banner jocuri cu prietenii */
.pbn{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:center;margin-block:38px;padding:26px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#5b21b6 0%,#9d23a8 45%,#e2366b 80%,#f97316 120%);box-shadow:0 14px 40px rgba(91,33,182,.28);position:relative;overflow:hidden}
.pbn::before{content:"";position:absolute;inset:auto -60px -90px auto;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.1)}
.pbn-t{position:relative}
.pbn-k{display:inline-block;margin:0 0 8px;padding:3px 10px;border-radius:99px;background:rgba(255,255,255,.2);font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.pbn h2{font-size:clamp(1.4rem,4vw,2rem);margin:0 0 8px;color:#fff}
.pbn p{margin:0 0 16px;color:rgba(255,255,255,.92);max-width:44ch}
.pbn-go{display:inline-block;padding:12px 22px;border-radius:12px;background:#fff;color:#6d28d9;font-weight:800;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .15s}
.pbn-go:hover{color:#5b21b6;transform:translateY(-2px) scale(1.02)}
.pbn-g{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative}
.pbn-g a{display:flex;align-items:center;gap:9px;padding:11px 12px;border-radius:14px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);color:#fff;font-weight:650;font-size:.92rem;text-decoration:none;line-height:1.2;transition:background .15s,transform .15s}
.pbn-g a:hover{background:rgba(255,255,255,.24);color:#fff;transform:translateY(-1px)}
.pbn-g span{font-size:1.35rem}
.pbn-g li:last-child:nth-child(odd){grid-column:1/-1}
@media (max-width:760px){.pbn{grid-template-columns:1fr;padding:22px 18px;gap:16px}}
/* rând orizontal (unelte noi) */
.hscroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:10px;overflow-x:auto;padding:2px 2px 12px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.hscroll .pt{scroll-snap-align:start}
@media (max-width:520px){.hscroll{grid-auto-columns:78%;margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px}}
/* ghiduri pe prima pagină */
.ghl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gh{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:16px;background:var(--surf);border:1px solid var(--line);border-top:4px solid var(--hi);text-decoration:none;color:var(--fg);transition:transform .15s,box-shadow .15s}
.gh:hover{color:var(--fg);transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,40,30,.08)}
.gh b{line-height:1.3}
.gh span{font-size:.88rem;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:860px){.ghl{grid-template-columns:1fr}.gh.gx{display:none}}
/* toate uneltele (pliabil) */
.all details{background:var(--surf);border:1px solid var(--line);border-radius:16px}
.all summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;cursor:pointer;list-style:none;font-size:1.1rem}
.all summary::-webkit-details-marker{display:none}
.all summary small{font-family:var(--mono);color:var(--muted);font-size:.85rem;margin-left:6px}
.chev{width:12px;height:12px;border-right:2.5px solid var(--muted);border-bottom:2.5px solid var(--muted);transform:rotate(45deg);transition:transform .2s;margin-right:4px}
.all details[open] .chev{transform:rotate(-135deg)}
.all .cats{padding:4px 18px 20px}
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px 28px}
.cat h3{display:flex;align-items:center;gap:8px;border-bottom:2px solid var(--line);padding-bottom:8px;font-size:1rem}
.cat h3 a{color:var(--fg);text-decoration:none}
.cat h3 a:hover{color:var(--acc)}
.cnt{font-family:var(--mono);font-size:.78rem;color:var(--muted);font-weight:500}
.cat ul{list-style:none;padding:0;margin:0 0 6px}
.cat li{padding:3px 0;font-size:.93rem}
.cat li a{color:var(--fg);text-decoration:none}
.cat li a:hover{color:var(--acc);text-decoration:underline}
.more{font-size:.9rem;font-weight:600;text-decoration:none;white-space:nowrap}
/* plăcuțe în tema întunecată */
:root[data-theme=dark] .ic{background:hsl(var(--h) 35% 20%)}
:root[data-theme=dark] .cg:hover{background:hsl(var(--h) 30% 14%)}
:root[data-theme=dark] .pt:hover,:root[data-theme=dark] .cg:hover,:root[data-theme=dark] .gh:hover{box-shadow:0 8px 22px rgba(0,0,0,.35)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ic{background:hsl(var(--h) 35% 20%)}:root:not([data-theme=light]) .cg:hover{background:hsl(var(--h) 30% 14%)}}

/* Mestero */
.slogan{font-family:var(--mono);font-size:.9rem;color:var(--acc);margin:0 0 .4em;letter-spacing:.02em}
.sponsor{padding:10px 12px;border-left:3px solid var(--hi);background:var(--surf2);border-radius:0 8px 8px 0}
.adslot{display:flex;flex-direction:column;align-items:center;gap:4px;margin-block:22px;min-height:90px;max-width:100%;overflow:hidden}
.adslot .bl{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* banner partener */
.banner{display:flex;flex-direction:column;align-items:center;gap:4px;margin-block:26px}
.banner .bl{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.banner a{display:block;max-width:100%;min-width:0}
.banner img{display:block;max-width:100%;height:auto;border-radius:4px}

/* breadcrumb + listă categorie */
.bc{font-size:.88rem;color:var(--muted);padding-top:16px;display:flex;flex-wrap:wrap;gap:6px}
.bc a{color:var(--muted)}
.cband{--h:160;background:linear-gradient(180deg,hsl(var(--h) 70% 95%),var(--bg));border-bottom:1px solid var(--line)}
.chero{display:flex;gap:16px;align-items:center;padding-block:14px 22px!important}
.chero h1{margin:0 0 4px}
.chero .lead{margin:0}
.ccount{display:inline-block;margin-left:4px;padding:1px 9px;border-radius:99px;background:var(--surf);border:1px solid var(--line);font-size:.82rem;font-weight:600;color:var(--fg);white-space:nowrap}
@media (max-width:520px){.chero{align-items:flex-start;gap:12px}.chero .ic.lg{width:46px;height:46px;font-size:1.45rem;border-radius:13px;margin-top:2px}}
:root[data-theme=dark] .cband{background:linear-gradient(180deg,hsl(var(--h) 30% 13%),var(--bg))}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .cband{background:linear-gradient(180deg,hsl(var(--h) 30% 13%),var(--bg))}}
.tl{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-block:22px 36px}
.ti{display:flex;flex-direction:column;gap:5px;padding:16px 18px;background:var(--surf);border:1px solid var(--line);border-radius:16px;text-decoration:none;color:var(--fg);transition:transform .15s,box-shadow .15s,border-color .15s}
.ti:hover{border-color:var(--acc);color:var(--fg);transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,40,30,.08)}
.ti b{line-height:1.3}
.ti span{font-size:.9rem;color:var(--muted)}
.ti .hot{display:inline-block;margin-left:4px;padding:1px 8px;border-radius:99px;background:var(--hi);color:var(--hitxt);font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;vertical-align:2px}
.st{color:var(--star)}
.cabout{max-width:72ch;margin-block:10px 30px;padding:20px 22px;background:var(--surf);border:1px solid var(--line);border-radius:16px}
.cabout h2{margin-top:0!important}
.cabout>:last-child{margin-bottom:0}

/* pagina uneltei */
.tpage{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:32px;margin-block:12px 48px}
@media (max-width:900px){.tpage{grid-template-columns:1fr}}
.tmain{min-width:0}
.tool{background:var(--surf);border:1px solid var(--line);border-radius:16px;padding:20px;margin-top:14px}
@media (max-width:480px){.tool{padding:16px 14px}}
.side{align-self:start;position:sticky;top:80px}
@media (max-width:900px){.side{position:static}}
.side h2{font-size:1rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.side ul{list-style:none;padding:0;margin:0 0 10px}
.side li{border-top:1px solid var(--line)}
.side li a{display:block;padding:8px 0;color:var(--fg);text-decoration:none}
.side li a:hover{color:var(--acc)}
.expl{margin-top:26px;max-width:68ch}
.expl p{margin:0 0 .8em}
.expl h2{font-size:1.2rem;margin:1.4em 0 .5em}
.expl ul,.expl ol{margin:0 0 .9em;padding-left:1.4em}
.expl li{margin:.25em 0}
.expl .tw{margin:.4em 0 1em}
.faq h3{font-size:1rem;margin:1.1em 0 .3em}
.faq p{margin:0}

/* formular */
.fg{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px 16px}
.f{display:flex;flex-direction:column;gap:5px;min-width:0}
.f.w2{grid-column:span 2}
.f.wf,.f-area{grid-column:1/-1}
@media (max-width:520px){.f.w2{grid-column:1/-1}}
.f label{font-size:.88rem;font-weight:600;color:var(--fg)}
.f input,.f select,.f textarea,.cui input,.cui select,.cui textarea{font:inherit;font-size:1rem;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg);min-width:0}
.f textarea,.cui textarea{font-family:var(--mono);font-size:.9rem;line-height:1.5;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus,.cui input:focus,.cui select:focus,.cui textarea:focus{border-color:var(--acc);outline:2px solid var(--acc);outline-offset:1px}
.f input[type=color]{padding:3px;height:44px}
.f input[type=range]{padding:0}
.ig{display:flex;align-items:stretch}
.ig input,.ig select{border-top-right-radius:0;border-bottom-right-radius:0}
.suf{display:flex;align-items:center;padding:0 10px;border:1px solid var(--line);border-left:0;border-radius:0 10px 10px 0;background:var(--surf2);color:var(--muted);font-size:.88rem;white-space:nowrap}
.hint{color:var(--muted);font-size:.8rem}
.chk{display:flex!important;align-items:center;gap:8px;font-weight:500!important;cursor:pointer;padding-top:22px}
.chk input{width:20px!important;height:20px;accent-color:var(--acc)}
.btn{display:inline-block;margin-top:14px;font:inherit;font-weight:600;padding:11px 20px;border:0;border-radius:10px;background:var(--acc);color:var(--onacc);cursor:pointer;text-decoration:none}
.btn:hover{background:var(--acc2);color:var(--onacc)}
.btn2{font:inherit;font-size:.9rem;font-weight:600;padding:8px 14px;border:1px solid var(--acc);border-radius:10px;background:transparent;color:var(--acc);cursor:pointer}
.btn2:hover{background:var(--accs)}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}

/* rezultate */
.out{margin-top:18px}
.out:empty{display:none}
.big{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border-radius:12px;background:var(--accs);margin-bottom:12px}
.big span{font-size:.88rem;color:var(--muted);font-weight:600}
.big strong{font-family:var(--mono);font-size:clamp(1.5rem,5vw,2.1rem);font-weight:500;color:var(--acc);word-break:break-word;line-height:1.2}
.rows{margin:0;display:grid}
.rows>div{display:flex;justify-content:space-between;gap:16px;padding:9px 2px;border-bottom:1px dashed var(--line)}
.rows>div:last-child{border-bottom:0}
.rows dt{color:var(--muted);min-width:0}
.rows dd{margin:0;font-family:var(--mono);font-weight:500;text-align:right;font-variant-numeric:tabular-nums;word-break:break-word;min-width:0}
.rows .hl dd{color:var(--acc);font-weight:700}
.rows .hl{background:var(--accs);border-radius:8px;padding-inline:8px}
.rows .sub dt{padding-left:12px;font-size:.92rem}
.rhtml{margin-top:8px}
.tw{overflow-x:auto;margin:6px 0}
table{border-collapse:collapse;width:100%;font-size:.92rem;font-variant-numeric:tabular-nums}
th,td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--surf2);font-weight:600;white-space:nowrap}
td.n,th.n{text-align:right}
.rl{margin:6px 0;padding-left:20px}
.outtxt textarea{width:100%;font-family:var(--mono);font-size:.9rem;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surf2);color:var(--fg);resize:vertical}
.acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.note{font-size:.88rem;color:var(--muted);margin:12px 0 0}
.err{color:var(--err);background:var(--errs);padding:10px 12px;border-radius:10px;margin:0}

/* elemente pentru unelte personalizate */
.cui .sec{margin-top:16px}
.cui .pv{max-width:100%;border-radius:10px;border:1px solid var(--line);display:block}
.cui .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.cui .card{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--bg);min-width:0}
.cui .card img,.cui .card canvas{max-width:100%;display:block;border-radius:6px}
.cui .drop{border:2px dashed var(--line);border-radius:12px;padding:22px;text-align:center;color:var(--muted);cursor:pointer}
.cui .drop.on{border-color:var(--acc);background:var(--accs)}
.cui .check{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line)}
.cui .check input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--acc)}
.cui .check.done span{text-decoration:line-through;color:var(--muted)}
.bigclock{font-family:var(--mono);font-size:clamp(2.4rem,11vw,4.5rem);text-align:center;font-variant-numeric:tabular-nums;padding:10px 0}
.wheel{display:block;margin:0 auto;max-width:100%}
.swatch{display:inline-block;width:100%;height:56px;border-radius:8px;border:1px solid var(--line)}
.kbd{font-family:var(--mono);background:var(--surf2);padding:1px 6px;border-radius:5px}

/* footer */
.foot{background:var(--surf);border-top:1px solid var(--line);margin-top:40px;font-size:.92rem}
.footin{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding-block:30px 18px}
@media (max-width:760px){.footin{grid-template-columns:1fr}}
.fbrand{font-weight:700;font-size:1.05rem;margin:0 0 6px}
.fh{font-weight:700;margin:0 0 8px}
.fcats{list-style:none;padding:0;margin:0;columns:2 180px;column-gap:24px}
.fcats li{padding:2px 0}
.fcats a{color:var(--fg);text-decoration:none}
.fcats a:hover{color:var(--acc)}
.fbot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-block:14px 26px;border-top:1px solid var(--line);color:var(--muted)}
.nf{padding-block:60px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.top,.side,.foot,.acts,.bc{display:none}.tool{border:0;padding:0}}
.bigclock.done{color:var(--accent,#bc4749)}

/* robotelul care dansează în colț (decorativ, nu primește clicuri) */
@keyframes moreItemSpin { to { transform: rotate(360deg); } }
@keyframes scriptsShimmer { 0% { transform: translateX(-100%) rotate(25deg); } 100% { transform: translateX(200%) rotate(25deg); } }
@keyframes svgFadeInScale { from { opacity: 0; scale: 0.95; } to { opacity: 1; scale: 1; } }
@keyframes roT { 0%,3%    { transform: translateY(0) rotate(0deg) scale(1); } 8%       { transform: translateY(-30px) rotate(-8deg) scale(1); } 13%      { transform: translateY(0) rotate(8deg) scale(1); } 18%,22%  { transform: translateY(-6px) rotate(0deg) translateX(0) scale(1); } 27%      { transform: translateY(-6px) translateX(18px) rotate(6deg) scale(1); } 31%      { transform: translateY(-6px) translateX(-18px) rotate(-6deg) scale(1); } 36%,40%  { transform: translateY(0) rotate(0deg) scale(1); } 45%      { transform: translateY(-8px) rotate(360deg) scale(1); } 50%      { transform: translateY(-8px) rotate(720deg) scale(1); } 55%      { transform: translateY(0) rotate(720deg) scale(1); } 60%,63%  { transform: translateY(0) rotate(0deg) scale(1); } 68%      { transform: translateY(-12px) translateX(-16px) rotate(-10deg) scale(1); } 72%      { transform: translateY(-12px) translateX(16px) rotate(10deg) scale(1); } 76%      { transform: translateY(0) rotate(0deg) scale(1); } 82%      { transform: translateY(-40px) rotate(0deg) scale(1.05); } 86%      { transform: translateY(0) rotate(0deg) scale(1); } 92%,100% { transform: translateY(0) rotate(0deg) scale(1); } }
@keyframes roAL { 0%,3%    { transform: rotate(0deg); } 8%       { transform: rotate(-100deg); } 13%      { transform: rotate(-10deg); } 18%,22%  { transform: rotate(-30deg); } 27%      { transform: rotate(-90deg); } 31%      { transform: rotate(20deg); } 36%,40%  { transform: rotate(-60deg); } 45%,55%  { transform: rotate(-160deg); } 60%,63%  { transform: rotate(0deg); } 68%      { transform: rotate(-120deg); } 72%      { transform: rotate(-20deg); } 76%      { transform: rotate(-60deg); } 82%      { transform: rotate(-170deg); } 86%      { transform: rotate(-20deg); } 92%,100% { transform: rotate(0deg); } }
@keyframes roAR { 0%,3%    { transform: rotate(0deg); } 8%       { transform: rotate(100deg); } 13%      { transform: rotate(10deg); } 18%,22%  { transform: rotate(30deg); } 27%      { transform: rotate(-20deg); } 31%      { transform: rotate(90deg); } 36%,40%  { transform: rotate(60deg); } 45%,55%  { transform: rotate(160deg); } 60%,63%  { transform: rotate(0deg); } 68%      { transform: rotate(20deg); } 72%      { transform: rotate(120deg); } 76%      { transform: rotate(60deg); } 82%      { transform: rotate(170deg); } 86%      { transform: rotate(20deg); } 92%,100% { transform: rotate(0deg); } }
@keyframes roLL { 0%,3%    { transform: translateX(0) rotate(0deg); } 18%,22%  { transform: translateX(20px) rotate(14deg); } 27%      { transform: translateX(-14px) rotate(-10deg); } 31%      { transform: translateX(20px) rotate(14deg); } 36%,44%  { transform: translateX(0) rotate(0deg); } 46%,54%  { transform: translateX(6px) rotate(30deg); } 56%,63%  { transform: translateX(0) rotate(0deg); } 68%      { transform: translateX(-18px) rotate(-16deg); } 72%      { transform: translateX(18px) rotate(16deg); } 76%,100% { transform: translateX(0) rotate(0deg); } }
@keyframes roLR { 0%,3%    { transform: translateX(0) rotate(0deg); } 18%,22%  { transform: translateX(-20px) rotate(-14deg); } 27%      { transform: translateX(14px) rotate(10deg); } 31%      { transform: translateX(-20px) rotate(-14deg); } 36%,44%  { transform: translateX(0) rotate(0deg); } 46%,54%  { transform: translateX(-6px) rotate(-30deg); } 56%,63%  { transform: translateX(0) rotate(0deg); } 68%      { transform: translateX(18px) rotate(16deg); } 72%      { transform: translateX(-18px) rotate(-16deg); } 76%,100% { transform: translateX(0) rotate(0deg); } }
@keyframes roS { 0%,3%,92%,100% { transform: scaleX(1); opacity: 0.5; } 8%,45%,50%,82% { transform: scaleX(0.55); opacity: 0.2; } 18%,22%,27%,31%,68%,72% { transform: scaleX(0.85); opacity: 0.4; } }
.robo{position:fixed;right:10px;bottom:6px;z-index:5;pointer-events:none;opacity:.92}
.robo svg{display:block;overflow:visible}
.robo .r-b{fill:var(--acc)} .robo .r-e{fill:var(--surf)} .robo .r-m{stroke:var(--surf);stroke-width:3;fill:none;stroke-linecap:round}
.robo .r-a{stroke:var(--hi);stroke-width:11;stroke-linecap:round} .robo .r-l{stroke:var(--muted);stroke-width:13;stroke-linecap:round} .robo .r-s{fill:var(--line)}
.robo .r-t{animation:roT 15s ease-in-out infinite;transform-origin:120px 150px}
.robo .r-al{animation:roAL 15s ease-in-out infinite;transform-origin:95px 92px}
.robo .r-ar{animation:roAR 15s ease-in-out infinite;transform-origin:145px 92px}
.robo .r-ll{animation:roLL 15s ease-in-out infinite;transform-origin:108px 145px}
.robo .r-lr{animation:roLR 15s ease-in-out infinite;transform-origin:132px 145px}
.robo .r-s{animation:roS 15s ease-in-out infinite;transform-origin:120px 240px}
@media (max-width:760px){.robo{display:none}}
@media (prefers-reduced-motion:reduce){.robo *{animation:none!important}}
@media print{.robo{display:none}}
.expl p,.expl li,.expl td,.faq p{overflow-wrap:anywhere}

/* favorite, „Surprinde-mă”, unelte noi */
.th{display:flex;align-items:flex-start;gap:12px}
.th h1{flex:1;min-width:0}
.fav{flex:none;display:grid;place-items:center;width:44px;height:44px;margin-top:2px;font:inherit;font-size:1.45rem;line-height:1;border:1px solid var(--line);border-radius:12px;background:var(--surf);color:var(--muted);cursor:pointer}
.fav:hover{border-color:var(--star);color:var(--star)}
.fav[aria-pressed=true]{color:var(--star);border-color:var(--favln);background:var(--favbg)}
.hero .surp{margin-top:6px}
.pt b .newb{color:var(--hitxt)}
.newb{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:99px;background:var(--hi);color:var(--hitxt);vertical-align:2px}

/* robotelul reacționează: clic pe el (doar pe desen), petrecere la primul rezultat, gânditor la calcule lungi */
.robo .r-t{pointer-events:auto;cursor:pointer}
.robo .rbub{position:absolute;right:52px;bottom:62px;padding:4px 10px;border-radius:12px 12px 2px 12px;background:var(--surf);color:var(--fg);border:1px solid var(--line);font-size:.82rem;font-weight:600;white-space:nowrap;box-shadow:0 4px 14px rgba(0,0,0,.12);opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s;pointer-events:none}
.robo .rbub.on{opacity:1;transform:none}
@keyframes roJump{0%,100%{transform:translateY(0)}40%{transform:translateY(-22px)}60%{transform:translateY(-18px)}}
@keyframes roWave{0%,100%{transform:rotate(-45deg)}50%{transform:rotate(15deg)}}
@keyframes roCheerL{0%,100%{transform:rotate(-20deg)}50%{transform:rotate(-70deg)}}
@keyframes roCheerR{0%,100%{transform:rotate(20deg)}50%{transform:rotate(70deg)}}
.robo.party svg{animation:roJump .5s ease-out 3}
.robo.party .r-al{animation:roCheerL .25s ease-in-out 6}
.robo.party .r-ar{animation:roCheerR .25s ease-in-out 6}
.robo.wave .r-ar{animation:roWave .38s ease-in-out 4}
.robo.think .r-t{animation-play-state:paused}
.confetti{position:fixed;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}
@media (max-width:600px){.robo .rbub{right:40px;bottom:48px}}
@media print{.confetti,.fav,.surp{display:none}}

/* ---------- fonturi găzduite local (OFL, vezi assets/fonts/OFL-*.txt); înlocuiesc Google Fonts ---------- */
@font-face{font-family:"Onest";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/onest-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Onest";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/onest-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-latin-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-latin-ext-500.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ---------- subsol: instalare aplicație, setări cookie ---------- */
.flinks{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center}
.lnkb{font:inherit;color:var(--acc);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.lnkb:hover{color:var(--acc2)}
.pwa-tip{flex-basis:100%;margin:6px 0 0;padding:10px 12px;background:var(--accs);color:var(--fg);border-radius:10px;font-size:.9rem}
.pwa-sh{display:inline-block;font-family:var(--mono);font-weight:700;color:var(--acc)}

/* bannerul discret „Instalează aplicația” (după a 2-a vizită) */
.pwa-bar{position:fixed;left:12px;bottom:12px;z-index:30;display:flex;align-items:center;gap:12px;max-width:430px;width:calc(100% - 90px);padding:10px 10px 10px 12px;background:var(--surf);color:var(--fg);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.16);font-size:.9rem;line-height:1.35;animation:pwaIn .3s ease-out}
.pwa-bar img{flex:none;border-radius:9px}
.pwa-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pwa-tx span{color:var(--muted)}
.pwa-bar .btn2{flex:none;padding:7px 12px}
.pwa-x{flex:none;align-self:flex-start;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:1.3rem;line-height:1;cursor:pointer}
.pwa-x:hover{background:var(--surf2);color:var(--fg)}
@keyframes pwaIn{from{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}
@media (max-width:480px){.pwa-bar{left:8px;bottom:8px;width:calc(100% - 16px)}}

/* ---------- banner cookie-uri (doar când consent.activ = true) ---------- */
.ck{position:fixed;left:12px;bottom:12px;z-index:40;width:min(440px,calc(100% - 24px));max-height:calc(100vh - 24px);overflow:auto;padding:16px 18px;background:var(--surf);color:var(--fg);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.2);font-size:.92rem;line-height:1.45}
.ck-h{font-weight:700;font-size:1rem;margin:0 0 4px}
.ck-p{margin:0 0 12px;color:var(--muted)}
.ck-p a{color:var(--acc)}
.ck-set{display:grid;gap:8px;margin:0 0 12px}
.ck-o{display:flex;gap:9px;align-items:flex-start;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surf2);cursor:pointer}
.ck-o input{margin-top:3px;accent-color:var(--acc);width:17px;height:17px;flex:none}
.ck-o span{color:var(--muted)} .ck-o b{color:var(--fg)}
.ck-b{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ck-b .btn2{flex:1 1 auto}
.ck-all,.ck-min,.ck-save{background:var(--acc);color:var(--onacc)}
.ck-all:hover,.ck-min:hover,.ck-save:hover{background:var(--acc2);color:var(--onacc)}
.ck-lnk{font:inherit;font-size:.9rem;background:none;border:0;padding:8px 6px;color:var(--acc);text-decoration:underline;cursor:pointer}
@media print{.ck,.pwa-bar,.pwa-f{display:none}}

/* ---------- pagina de căutare (/ro/cauta, /hu/kereses) ---------- */
.qp-f{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;max-width:640px}
.qp-f .f{flex:1 1 260px}
.qp-f .btn{margin-top:0}
.qp-n{margin:14px 0 0}
.qp .ti .qk{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--acc)}
@media (max-width:520px){.hstat .hx-o{display:none}.hero.hx{padding-block:22px 26px}.hstat{margin-bottom:14px}}
/* pagina uneltei: culoarea categoriei */
.ic.xs{display:inline-grid;width:22px;height:22px;border-radius:6px;font-size:.75rem;vertical-align:-5px;margin-right:6px}
.bcc{display:inline-flex;align-items:center;text-decoration:none}
.bcc:hover{text-decoration:underline}
.tpage .tool{border-top:4px solid hsl(var(--h) 60% 50%);box-shadow:0 6px 24px rgba(15,40,30,.05)}
.side h2{display:flex;align-items:center}
.side{padding:16px 18px;background:var(--surf);border:1px solid var(--line);border-radius:16px}
.side li:first-child{border-top:0}
@media (max-width:900px){.side{margin-top:6px}}
.fcats{columns:3 170px}
.fcats li{padding:3px 0;break-inside:avoid}
.fcats a{display:inline-flex;align-items:center;font-size:.9rem}

/* ---------- reclame proprii (config 'promo'): banner rotativ, vizibil ---------- */
.promo{--sec:7s;position:relative;display:grid;margin-block:18px;border-radius:16px;overflow:hidden;max-width:100%;box-shadow:0 10px 26px rgba(10,20,30,.18)}
.promo-top{margin-block:22px 6px}
.pr-i{--pa:#f4d35e;--pb:#1b1b1b;--pc:#2a2a2a;grid-area:1/1;display:flex;align-items:center;gap:14px;min-height:72px;padding:12px 14px 16px 12px;text-decoration:none;color:#fff;background:linear-gradient(110deg,var(--pb),var(--pc));opacity:0;visibility:hidden;transform:translateX(18px);transition:opacity .5s,transform .5s,visibility 0s .5s;position:relative;overflow:hidden}
.pr-i.on{opacity:1;visibility:visible;transform:none;transition:opacity .5s,transform .5s,visibility 0s}
.pr-i::before{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.14),transparent);transform:skewX(-18deg);pointer-events:none}
.pr-i.on::before{animation:prShine 1.4s .4s ease-out}
@keyframes prShine{to{left:130%}}
.pr-i:hover{color:#fff}
.pr-ico{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);font-size:1.5rem;line-height:1}
.pr-i.on .pr-ico{animation:prPop .6s ease-out}
@keyframes prPop{0%{transform:scale(.6) rotate(-12deg)}60%{transform:scale(1.12) rotate(4deg)}100%{transform:none}}
.pr-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;line-height:1.25}
.pr-k{font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--pa)}
.pr-tx b{font-size:1.05rem;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pr-d{font-size:.86rem;color:rgba(255,255,255,.82);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pr-b{flex:none;padding:10px 16px;border-radius:11px;background:var(--pa);color:var(--pb);font-weight:800;font-size:.88rem;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.25);transition:transform .15s}
.pr-i:hover .pr-b{transform:scale(1.05)}
/* punctele + bara de timp până la următorul */
.pr-dots{position:absolute;right:12px;bottom:6px;display:flex;gap:5px;z-index:2;pointer-events:none}
.pr-dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.35);transition:background .3s,width .3s}
.pr-dots i.on{width:16px;border-radius:3px;background:#fff}
.promo[data-rot]::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:rgba(255,255,255,.55);transform-origin:left;transform:scaleX(0);z-index:2;pointer-events:none}
.promo.tick::after{animation:prBar var(--sec) linear forwards}
.promo.hold::after{animation-play-state:paused}
@keyframes prBar{to{transform:scaleX(1)}}
@media (max-width:640px){.pr-d{display:none}.pr-i{min-height:64px;gap:11px;padding:10px 10px 14px}.pr-ico{width:42px;height:42px;font-size:1.3rem}.pr-tx b{font-size:.95rem;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.pr-b{font-size:0;padding:10px 13px}.pr-b::after{content:"→";font-size:1.05rem}}
.pr-qaptura{--pb:#2f5a68;--pc:#4b8494;--pa:#f3d9a4}
.pr-deliatti{--pb:#101113;--pc:#34353c;--pa:#d4b26a}
.pr-balauria{--pb:#0f0d0b;--pc:#5a2410;--pa:#ff8a3d}
.promo-mini{margin:16px 0 0}
.promo-mini .pr-i{flex-wrap:wrap;min-height:0;padding:10px 10px 16px}
.promo-mini .pr-ico{width:40px;height:40px;font-size:1.2rem}
.promo-mini .pr-tx b{white-space:normal;font-size:.9rem}
.promo-mini .pr-b{flex-basis:100%;text-align:center;padding:8px 10px}
@media (max-width:900px){.promo-mini{display:none}}
@media (prefers-reduced-motion:reduce){.pr-i,.pr-i.on{transition:none;transform:none}.pr-i.on::before,.pr-i.on .pr-ico,.promo.tick::after{animation:none}}
@media print{.promo{display:none}}
