/* MasterHub Panel — interfață */
:root{
  --ink:#14161b; --ink-2:#4a5061; --ink-3:#7c8395; --line:#e6e8ee; --wash:#f4f5f8; --paper:#fff;
  --side:#0f1115; --side-2:#181b22; --side-ink:#c9cdd6; --side-ink-2:#7f8696;
  --red:#e4141c; --red-d:#b80f16; --red-t:#fdecee; --ok:#12804a; --ok-t:#e7f6ee; --warn:#a15c00; --warn-t:#fff4e2; --info:#1d4fa8; --info-t:#eaf1fd;
  --r:14px; --shadow:0 1px 2px rgba(20,22,27,.04),0 10px 30px -18px rgba(20,22,27,.25);
  --font:Inter,"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif; --mono:ui-monospace,"SFMono-Regular",Consolas,monospace;
}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:var(--font);font-size:15px;line-height:1.55;color:var(--ink);background:var(--wash);-webkit-font-smoothing:antialiased}
a{color:var(--red-d);text-decoration:none}
a:hover{color:var(--red)}
h1,h2,h3{margin:0;letter-spacing:-.02em;line-height:1.2}
code,.mono{font-family:var(--mono);font-size:.92em}
:focus-visible{outline:3px solid #f5a3a7;outline-offset:2px;border-radius:6px}

/* ---------- structură ---------- */
.app{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}
.side{background:var(--side);color:var(--side-ink);padding:22px 16px;position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:6px}
.brand{display:flex;align-items:center;gap:11px;padding:4px 8px 20px;color:#fff;font-weight:800;font-size:19px;letter-spacing:-.02em}
.brand svg{width:34px;height:34px;flex:none}
.brand i{font-style:normal;color:var(--red)}
.brand small{display:block;font-size:11px;font-weight:600;color:var(--side-ink-2);letter-spacing:.08em;text-transform:uppercase}
.nav-label{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--side-ink-2);padding:14px 10px 6px}
.nav a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:10px;color:var(--side-ink);font-weight:600;font-size:14.5px}
.nav a svg{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.nav a:hover{background:var(--side-2);color:#fff}
.nav a.on{background:var(--red);color:#fff}
.nav a.on svg{opacity:1}
.side-foot{margin-top:auto;padding:14px 10px 0;border-top:1px solid #23262f;font-size:13px}
.side-foot b{display:block;color:#fff;font-weight:700;overflow:hidden;text-overflow:ellipsis}
.side-foot span{color:var(--side-ink-2)}
.side-foot form{margin:10px 0 0}
.side-foot button{width:100%;background:var(--side-2);color:var(--side-ink);border:1px solid #262a33}
.side-foot button:hover{background:#22262f;color:#fff}
.main{padding:26px clamp(18px,3vw,40px) 60px;min-width:0}
.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.topbar h1{font-size:clamp(24px,2.6vw,30px);font-weight:800}
.topbar p{margin:6px 0 0;color:var(--ink-3)}
.crumbs{font-size:13px;color:var(--ink-3);margin-bottom:6px;font-weight:600}
.crumbs a{color:var(--ink-2)}
.burger{display:none}

.impersonate{background:#1d1f26;color:#fff;padding:10px 16px;border-radius:12px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}
.impersonate button{background:#fff;color:var(--ink);border:0}

/* ---------- componente ---------- */
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.card-h{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}
.card-h h2{font-size:16.5px;font-weight:750}
.card-h p{margin:2px 0 0;color:var(--ink-3);font-size:13.5px}
.card-b{padding:18px 20px}
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.stack{display:grid;gap:16px}
.stat{padding:18px 20px}
.stat span{display:block;color:var(--ink-3);font-size:13px;font-weight:600}
.stat b{display:block;font-size:28px;font-weight:800;letter-spacing:-.03em;margin-top:4px}
.stat small{color:var(--ink-3)}
.meter{height:8px;border-radius:99px;background:var(--wash);overflow:hidden;margin-top:10px}
.meter i{display:block;height:100%;background:var(--red);border-radius:99px}
.meter.ok i{background:var(--ok)}

.btn,button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;font-size:14px;line-height:1;padding:11px 16px;border-radius:10px;border:1px solid var(--red);background:var(--red);color:#fff;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s}
.btn:hover,button:hover{background:var(--red-d);border-color:var(--red-d);color:#fff}
.btn.ghost,button.ghost{background:#fff;color:var(--ink);border-color:var(--line)}
.btn.ghost:hover,button.ghost:hover{border-color:#cfd3dc;background:var(--wash);color:var(--ink)}
.btn.dark,button.dark{background:var(--ink);border-color:var(--ink)}
.btn.sm,button.sm{padding:8px 11px;font-size:13px;border-radius:8px}
button.link{background:none;border:0;color:var(--red-d);padding:0;font-weight:700}
button.link:hover{color:var(--red);background:none}
button.danger,.btn.danger{background:#fff;color:var(--red-d);border-color:#f2c3c6}
button.danger:hover{background:var(--red-t)}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
form.inline{display:inline}

label{display:block;font-weight:650;font-size:13.5px;margin:0 0 6px;color:var(--ink-2)}
input,select,textarea{width:100%;font:inherit;font-size:14.5px;padding:10px 12px;border:1px solid #d9dce4;border-radius:10px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:none;border-color:#f09aa0;box-shadow:0 0 0 4px var(--red-t)}
.field{margin-bottom:14px}
.help{font-size:12.5px;color:var(--ink-3);margin-top:5px}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.with-suffix{display:flex;align-items:stretch}
.with-suffix span{display:flex;align-items:center;padding:0 12px;background:var(--wash);border:1px solid #d9dce4;border-right:0;border-radius:10px 0 0 10px;color:var(--ink-3);font-family:var(--mono);font-size:13.5px;white-space:nowrap}
.with-suffix input{border-radius:0 10px 10px 0}
.with-suffix.after span{border-right:1px solid #d9dce4;border-left:0;border-radius:0 10px 10px 0}
.with-suffix.after input{border-radius:10px 0 0 10px}
.check{display:flex;gap:9px;align-items:center;font-weight:600;color:var(--ink-2)}
.check input{width:auto}

table{width:100%;border-collapse:collapse}
th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);text-align:left;font-weight:700;padding:10px 20px;border-bottom:1px solid var(--line);background:#fafbfc}
td{padding:13px 20px;border-bottom:1px solid #f0f1f4;vertical-align:middle}
tr:last-child td{border-bottom:0}
td .muted{color:var(--ink-3);font-size:13px}
.table-wrap{overflow-x:auto}
.empty{padding:34px 20px;text-align:center;color:var(--ink-3)}
.empty b{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}

.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:12px;font-weight:750;white-space:nowrap}
.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.b-active,.b-ok{background:var(--ok-t);color:var(--ok)}
.b-suspended,.b-warn,.b-pending{background:var(--warn-t);color:var(--warn)}
.b-error,.b-terminated,.b-closed{background:var(--red-t);color:var(--red-d)}
.b-info{background:var(--info-t);color:var(--info)}
.b-mute{background:var(--wash);color:var(--ink-3)}

.alert{padding:13px 16px;border-radius:12px;margin-bottom:16px;font-weight:600;border:1px solid transparent}
.alert.ok{background:var(--ok-t);color:var(--ok);border-color:#c5e8d4}
.alert.err{background:var(--red-t);color:var(--red-d);border-color:#f5c9cc}
.alert.warn{background:var(--warn-t);color:var(--warn);border-color:#f3dcb2}
.alert.info{background:var(--info-t);color:var(--info);border-color:#cddcf6}
.reveal{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px 16px;border-radius:12px;background:#14161b;color:#fff;margin-bottom:16px}
.reveal span{color:#b9bfcc;font-size:13.5px}
.reveal code{font-size:16px;background:#23262f;padding:7px 12px;border-radius:8px;user-select:all}
.reveal small{color:#8b92a3;width:100%}

.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:-4px 0 20px;overflow-x:auto}
.tabs a{padding:10px 14px;font-weight:700;font-size:14px;color:var(--ink-3);border-bottom:2px solid transparent;white-space:nowrap}
.tabs a:hover{color:var(--ink)}
.tabs a.on{color:var(--ink);border-bottom-color:var(--red)}

.kv{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;margin:0}
.kv dt{color:var(--ink-3);font-size:13.5px;font-weight:600}
.kv dd{margin:0;font-weight:600;word-break:break-word}
.copy{cursor:pointer;border-bottom:1px dashed #c9cdd6}
.svc{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f0f1f4;font-weight:600}
.svc:last-child{border-bottom:0}
.note{font-size:13.5px;color:var(--ink-3)}
.mt{margin-top:16px}
.right{text-align:right}
details.more summary{cursor:pointer;font-weight:700;color:var(--red-d);list-style:none}
details.more summary::-webkit-details-marker{display:none}
details.more[open] summary{margin-bottom:12px}
.danger-zone{border-color:#f5c9cc}
.danger-zone .card-h{background:#fffafa}
.qr{width:180px;height:180px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px}
.dns-table input,.dns-table select{padding:8px 10px;font-size:13.5px;border-radius:8px}
.dns-table td{padding:8px 10px}
.dns-table th{padding:10px}
.dns-table tr.locked td{background:#fafbfc;color:var(--ink-3)}

/* ---------- autentificare ---------- */
.auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);background:#fff}
.auth-art{background:radial-gradient(1200px 500px at 0% 0%,#3a0b0f 0%,transparent 60%),radial-gradient(900px 500px at 100% 100%,#2a0a0d 0%,transparent 55%),var(--side);color:#fff;padding:48px clamp(28px,5vw,72px);display:flex;flex-direction:column;justify-content:space-between}
.auth-art h2{font-size:clamp(30px,3.6vw,46px);font-weight:800;letter-spacing:-.035em;max-width:14ch;margin:0 0 16px}
.auth-art h2 em{font-style:normal;color:var(--red)}
.auth-art p{color:#b9bfcc;max-width:46ch;font-size:16px}
.auth-art ul{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px;color:#d7dbe3;font-weight:600}
.auth-art li{display:flex;gap:10px;align-items:center}
.auth-art li:before{content:"";width:18px;height:18px;border-radius:6px;background:var(--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat;flex:none}
.auth-art .copy-foot{color:#6f7686;font-size:13px}
.auth-form{display:grid;place-items:center;padding:40px 24px}
.auth-box{width:100%;max-width:400px}
.auth-box h1{font-size:28px;font-weight:800;margin:0 0 6px}
.auth-box > p{color:var(--ink-3);margin:0 0 26px}
.auth-box button{width:100%;padding:13px 16px;font-size:15px}

/* ---------- mobil ---------- */
@media(max-width:1100px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .app{grid-template-columns:1fr}
  .side{position:fixed;inset:0 auto 0 0;width:270px;z-index:50;transform:translateX(-100%);transition:transform .2s}
  body.nav-open .side{transform:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.45)}
  .burger{display:inline-flex;margin:0 0 14px}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .auth{grid-template-columns:1fr}.auth-art{display:none}
  th,td{padding:10px 12px}
}
.narrow{max-width:560px}.mid{max-width:820px}
ol.steps{margin:0 0 16px;padding-left:20px;line-height:1.9}
.stat-inline b{font-size:24px;font-weight:800;letter-spacing:-.02em}
.meter i.w0{width:0%}.meter i.w5{width:5%}.meter i.w10{width:10%}.meter i.w15{width:15%}.meter i.w20{width:20%}.meter i.w25{width:25%}.meter i.w30{width:30%}.meter i.w35{width:35%}.meter i.w40{width:40%}.meter i.w45{width:45%}.meter i.w50{width:50%}.meter i.w55{width:55%}.meter i.w60{width:60%}.meter i.w65{width:65%}.meter i.w70{width:70%}.meter i.w75{width:75%}.meter i.w80{width:80%}.meter i.w85{width:85%}.meter i.w90{width:90%}.meter i.w95{width:95%}.meter i.w100{width:100%}
.actions.end{justify-content:flex-end}
.inline-select{border:0;background:transparent;padding:0 0 0 4px;font-family:var(--mono);font-size:13.5px;color:var(--ink);width:auto;box-shadow:none}
.inline-select:focus{box-shadow:none}
.w-sm{width:90px}
a.card{color:var(--ink);display:block}
a.card:hover{border-color:#f2c3c6}
.app{background:linear-gradient(90deg,var(--side) 260px,var(--wash) 260px)}
.actions input,.actions select{width:auto;min-width:220px;flex:1 1 220px}
form.actions{flex-wrap:wrap}
@media(max-width:900px){.app{background:var(--wash)}form.actions{flex-wrap:wrap}}
.actions input.w-sm{min-width:0;flex:0 0 96px}
.dns-table td:nth-child(1){width:150px}.dns-table td:nth-child(2){width:110px}.dns-table td:nth-child(4),.dns-table td:nth-child(5){width:96px}.dns-table td:nth-child(6){width:60px;text-align:center}
.dns-table input.mono{min-width:280px}
.impersonate button.sm{background:#fff;color:#14161b;border-color:#fff}.impersonate button.sm:hover{background:#e9ebf0;color:#14161b}
.fm-head{flex-wrap:wrap}
.fm-crumbs{font-family:var(--mono);font-size:14px;display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.fm-crumbs span{color:var(--ink-3)}
.fm td{padding:9px 14px}.fm th{padding:9px 14px}
.w-check{width:36px}
.fm-name a{color:var(--ink);font-weight:600}
.fm-name a:hover{color:var(--red-d)}
.fi{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;background:var(--wash);color:var(--ink-3);margin-right:8px;font-size:12px}
.fi.d{background:#fff4e2;color:#b26b00}
details.pop{position:relative}
details.pop summary{list-style:none}
details.pop summary::-webkit-details-marker{display:none}
details.pop > form,details.pop > .pop-body{position:absolute;z-index:20;top:calc(100% + 6px);left:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:0 20px 40px -20px rgba(20,22,27,.35);min-width:320px}
details.pop.right > .pop-body{left:auto;right:0}
.w-md{max-width:200px}
textarea.editor{display:block;width:100%;min-height:62vh;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;font-family:var(--mono);font-size:13.5px;line-height:1.6;padding:16px 20px;tab-size:4;white-space:pre;background:#fbfbfc;resize:vertical}
pre.log{margin:0;padding:16px 20px;background:#0f1115;color:#d7dbe3;font-family:var(--mono);font-size:12.5px;line-height:1.55;max-height:65vh;overflow:auto;border-radius:0 0 var(--r) var(--r);white-space:pre-wrap;word-break:break-all}
/* identitate vizuală */
a.brand,a.brand:hover{color:#fff;text-decoration:none}
.brand .logo-img{height:38px;max-width:190px;width:auto;flex:none;object-fit:contain}
.logo-bg{fill:var(--red)}
.brand-preview{display:flex;align-items:center;gap:14px;padding:16px;border-radius:12px;background:var(--side);color:#fff}
.brand-preview .logo-img{height:42px;max-width:220px}
.brand-preview .brand{padding:0}
.swatch{display:inline-block;width:22px;height:22px;border-radius:7px;vertical-align:middle;border:1px solid var(--line)}
input[type=color]{width:56px;height:40px;padding:3px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer}
.tabs-inline{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px}
.tabs-inline a{padding:8px 14px;border-radius:999px;border:1px solid var(--line);color:var(--ink-2);font-weight:600;font-size:14px;text-decoration:none;background:var(--paper)}
.tabs-inline a.on{background:var(--ink);border-color:var(--ink);color:#fff}
textarea.code{font-family:var(--mono);font-size:13px}
/* tichete */
.ticket-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.ticket-layout > .stack:only-child{grid-column:1/-1;max-width:900px}
.msg{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.msg.staff{border-color:var(--red);box-shadow:0 0 0 3px var(--red-t)}
.msg-h{display:flex;justify-content:space-between;gap:10px;padding:12px 18px;border-bottom:1px solid var(--line);font-size:14px}
.msg-h span{color:var(--ink-3)}
.msg-b{padding:16px 18px;line-height:1.65;overflow-wrap:anywhere}
.alert.faded{opacity:.55}
.nav .count{margin-left:auto;background:var(--red);color:#fff;border-radius:999px;font-size:11px;font-weight:800;padding:1px 7px}
.announce-list{margin-bottom:18px}
@media (max-width:900px){.ticket-layout{grid-template-columns:1fr}}
.actions .check input,.actions input[type=checkbox],.actions input[type=radio],.actions input[type=color]{min-width:0;flex:none}
details.pop.right > form{left:auto;right:0}
.w-pop{width:380px;max-width:calc(100vw - 40px)}
.text-left{text-align:left}
/* statistici, pachete */
.chart{width:100%;height:auto;display:block}
.chart .bar{fill:var(--red)}
.chart .bar:hover{fill:var(--red-d)}
.chart text{font-size:11px;fill:var(--ink-3);font-family:var(--font)}
.pkg-card h2{margin:0}
.pkg-card .price{margin:10px 0 6px;font-size:15px}
.pkg-card .price b{font-size:26px;letter-spacing:-.02em}
.ticks{list-style:none;padding:0;margin:12px 0 18px;display:grid;gap:7px;font-size:14px;color:var(--ink-2)}
.ticks li:before{content:"✓";color:var(--ok);font-weight:800;margin-right:8px}
.card-b h3{margin:0 0 12px;font-size:15px}
code.block{display:block;padding:10px 12px;margin-top:6px;border-radius:10px;background:var(--wash);border:1px solid var(--line);white-space:pre-wrap;word-break:break-all;cursor:pointer}
.steps-list{margin:0;padding-left:20px;display:grid;gap:14px}
.steps-list li{padding-left:4px}
button[disabled]{opacity:.5;cursor:not-allowed}

/* ===================== File Manager ===================== */
.fic{display:inline-block;width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat;vertical-align:-4px}
.fic.big{width:44px;height:44px}
.fic-home{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011l9-7%209%207v9a1%201%200%200%201-1%201h-5v-6h-6v6H4a1%201%200%200%201-1-1z%22/%3E%3C/svg%3E")}
.fic-dir{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206.5A1.5%201.5%200%200%201%204.5%205H9l2%202.2h8.5A1.5%201.5%200%200%201%2021%208.7V18a1.5%201.5%200%200%201-1.5%201.5h-15A1.5%201.5%200%200%201%203%2018z%22/%3E%3C/svg%3E")}
.fic-file{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M14%203v5h5%22/%3E%3C/svg%3E")}
.fic-php{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M9%2013l-2%202%202%202M15%2013l2%202-2%202%22/%3E%3C/svg%3E")}
.fic-html{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M9%2013l-2%202%202%202M15%2013l2%202-2%202M13%2012l-2%206%22/%3E%3C/svg%3E")}
.fic-css{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M9.5%2012.5h5M9.5%2015.5h5M9.5%2018h3%22/%3E%3C/svg%3E")}
.fic-js{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M10%2012v4.5a1.5%201.5%200%200%201-3%200M15.5%2012.5c-1.5-.8-3%200-2.5%201.2.4%201%202.8%201%202.6%202.6-.2%201.3-2%201.5-3%20.7%22/%3E%3C/svg%3E")}
.fic-img{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22/%3E%3Ccircle%20cx%3D%229%22%20cy%3D%2210%22%20r%3D%221.8%22/%3E%3Cpath%20d%3D%22M21%2016l-5-5-8%209%22/%3E%3C/svg%3E")}
.fic-zip{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M11%203v2h2v2h-2v2h2v2h-2v2%22/%3E%3Crect%20x%3D%2210%22%20y%3D%2214%22%20width%3D%224%22%20height%3D%224%22%20rx%3D%221%22/%3E%3C/svg%3E")}
.fic-db{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%226%22%20rx%3D%227%22%20ry%3D%222.8%22/%3E%3Cpath%20d%3D%22M5%206v12c0%201.5%203.1%202.8%207%202.8s7-1.3%207-2.8V6M5%2012c0%201.5%203.1%202.8%207%202.8s7-1.3%207-2.8%22/%3E%3C/svg%3E")}
.fic-up{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%2014l-4-4%204-4%22/%3E%3Cpath%20d%3D%22M5%2010h9a5%205%200%200%201%205%205v3%22/%3E%3C/svg%3E")}
.fic-folder-plus{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206.5A1.5%201.5%200%200%201%204.5%205H9l2%202.2h8.5A1.5%201.5%200%200%201%2021%208.7V18a1.5%201.5%200%200%201-1.5%201.5h-15A1.5%201.5%200%200%201%203%2018z%22/%3E%3Cpath%20d%3D%22M12%2010.5v6M9%2013.5h6%22/%3E%3C/svg%3E")}
.fic-file-plus{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M12%2011v6M9%2014h6%22/%3E%3C/svg%3E")}
.fic-upload{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2016V4M7%209l5-5%205%205%22/%3E%3Cpath%20d%3D%22M4%2016v3a1%201%200%200%200%201%201h14a1%201%200%200%200%201-1v-3%22/%3E%3C/svg%3E")}
.fic-download{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%204v12M7%2011l5%205%205-5%22/%3E%3Cpath%20d%3D%22M4%2016v3a1%201%200%200%200%201%201h14a1%201%200%200%200%201-1v-3%22/%3E%3C/svg%3E")}
.fic-search{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%226.5%22/%3E%3Cpath%20d%3D%22M20%2020l-4.2-4.2%22/%3E%3C/svg%3E")}
.fic-chart{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020V10M10%2020V4M16%2020v-7M22%2020H2%22/%3E%3C/svg%3E")}
.fic-refresh{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2011a8%208%200%200%200-14.6-4.5L4%208M4%204v4h4M4%2013a8%208%200%200%200%2014.6%204.5L20%2016M20%2020v-4h-4%22/%3E%3C/svg%3E")}
.fic-edit{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020h4L19%209l-4-4L4%2016z%22/%3E%3Cpath%20d%3D%22M13.5%206.5l4%204%22/%3E%3C/svg%3E")}
.fic-copy{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M16%208V5a1%201%200%200%200-1-1H5a1%201%200%200%200-1%201v10a1%201%200%200%200%201%201h3%22/%3E%3C/svg%3E")}
.fic-dup{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M14%2011v6M11%2014h6M16%208V5a1%201%200%200%200-1-1H5a1%201%200%200%200-1%201v10a1%201%200%200%200%201%201h3%22/%3E%3C/svg%3E")}
.fic-move{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h14M15%208l4%204-4%204%22/%3E%3Cpath%20d%3D%22M5%205v14%22/%3E%3C/svg%3E")}
.fic-unzip{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M12%2010v7M9%2014l3%203%203-3%22/%3E%3C/svg%3E")}
.fic-rename{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207h10M4%2012h6M4%2017h6%22/%3E%3Cpath%20d%3D%22M14%2019l1-3%205-5%202%202-5%205z%22/%3E%3C/svg%3E")}
.fic-lock{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%2210%22%20width%3D%2214%22%20height%3D%2210%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M8%2010V7a4%204%200%200%201%208%200v3%22/%3E%3C/svg%3E")}
.fic-trash{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207h16M10%2011v6M14%2011v6M6%207l1%2012a2%202%200%200%200%202%202h6a2%202%200%200%200%202-2l1-12M9%207V4h6v3%22/%3E%3C/svg%3E")}
.fic-save{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%204h11l4%204v11a1%201%200%200%201-1%201H5a1%201%200%200%201-1-1V5a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M8%204v5h7V4M8%2020v-6h8v6%22/%3E%3C/svg%3E")}
.fic-back{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%206l-6%206%206%206%22/%3E%3C/svg%3E")}
.fic-expand{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%209V4h5M20%209V4h-5M4%2015v5h5M20%2015v5h-5%22/%3E%3C/svg%3E")}
.fic-wrap{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%206h16M4%2012h13a3%203%200%200%201%200%206h-4M15%2016l-2%202%202%202M4%2018h5%22/%3E%3C/svg%3E")}
.fic-replace{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%225.5%22/%3E%3Cpath%20d%3D%22M14%2014l3%203M14%2021h7M18%2018l3%203-3%203%22/%3E%3C/svg%3E")}
.fic-goto{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2012h12M12%208l4%204-4%204M20%205v14%22/%3E%3C/svg%3E")}

.fm-app{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:start}
.fm-tree{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:10px 6px;box-shadow:var(--shadow);font-size:14px}
.fm-tree a{display:flex;align-items:center;gap:7px;padding:5px 8px;border-radius:7px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none;flex:1;min-width:0}
.fm-tree a:hover{background:var(--wash);color:var(--ink)}
.fm-tree a.on,.fm-tree-root.on{background:var(--red-t);color:var(--red-d);font-weight:700}
.fm-tree .fic-dir{color:#d9a21b}
.fm-tree-root{font-weight:700;color:var(--ink)!important}
.fm-tree ul{list-style:none;margin:0;padding:0 0 0 14px}
.fm-tree-list{padding-left:4px!important}
.fm-tree li{display:flex;flex-wrap:wrap;align-items:center}
.fm-tree li > ul{flex-basis:100%;display:none}
.fm-tree li.open > ul{display:block}
.fm-tog{width:18px;height:18px;padding:0;border:0;background:transparent;color:var(--ink-3);flex:none;display:grid;place-items:center;cursor:pointer;border-radius:4px}
.fm-tog:before{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.fm-tog:hover{background:var(--wash);color:var(--ink)}
.fm-tree li.open > .fm-tog:before{transform:rotate(45deg)}
.fm-tog.empty{visibility:hidden}
.fm-main{position:relative;overflow:hidden}
.fm-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:10px 12px;background:var(--side);border-radius:var(--r) var(--r) 0 0}
.fm-tb{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:0;border-radius:8px;background:transparent;color:#e7e9ef;font:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;line-height:1}
.fm-tb:hover{background:rgba(255,255,255,.1);color:#fff}
.fm-tb[disabled]{opacity:.45}
.fm-tb.busy{opacity:.6;cursor:progress}
.fm-tb-spacer{flex:1}
.fm-search{display:flex;align-items:center;margin-left:6px;background:rgba(255,255,255,.08);border-radius:8px}
.fm-search input{background:transparent;border:0;color:#fff;min-width:220px;padding:8px 10px;font-size:14px}
.fm-search input::placeholder{color:#9aa1b2}
.fm-search input:focus{outline:none}
.fm-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:12px 16px;border-bottom:1px solid var(--line);font-size:14px}
.fm-crumbs a{color:var(--ink-2);font-weight:600;text-decoration:none;display:inline-flex;align-items:center}
.fm-crumbs a:hover{color:var(--red-d)}
.fm-crumbs .sep{color:var(--ink-3)}
.fm-selbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:6px 10px;border-bottom:1px solid var(--line);background:var(--wash)}
.fm-selcount{font-size:13px;color:var(--ink-3);margin-right:8px;padding-left:6px}
.fm-selcount b{color:var(--ink)}
.fm-sb{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:0;border-radius:7px;background:transparent;color:var(--ink-2);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;line-height:1}
.fm-sb:hover:not([disabled]){background:var(--paper);color:var(--ink);box-shadow:0 0 0 1px var(--line)}
.fm-sb[disabled]{opacity:.38;cursor:default}
.fm-sb.danger:not([disabled]){color:var(--red-d)}
table.fm{font-size:14px}
table.fm th{position:sticky;top:0;background:var(--paper);z-index:1}
table.fm td,table.fm th{padding:8px 14px;white-space:nowrap}
table.fm tbody tr[data-name]{cursor:default;user-select:none}
table.fm tbody tr[data-name]:hover{background:#f7f8fb}
table.fm tbody tr.sel{background:var(--red-t)!important}
.fm-name{display:flex;align-items:center;gap:10px;min-width:220px}
.fm-name a{color:var(--ink);font-weight:600;text-decoration:none}
.fm-name a:hover{color:var(--red-d);text-decoration:underline}
.fm-name .fic-dir{color:#d9a21b}.fm-name .fic-php{color:#7a5af5}.fm-name .fic-html{color:#e05d2c}.fm-name .fic-css{color:#2b7bd6}
.fm-name .fic-js{color:#c9a400}.fm-name .fic-img{color:#12804a}.fm-name .fic-zip{color:#8a6d3b}.fm-name .fic-db{color:#4a5061}.fm-name .fic-file{color:var(--ink-3)}
.fm-up a{display:inline-flex;gap:8px;align-items:center;color:var(--ink-2);font-weight:700;text-decoration:none}
.fm-link{color:var(--ink-3);font-size:12px}
.fm-foot{padding:10px 16px;border-top:1px solid var(--line)}
.fm-drop{position:absolute;inset:0;display:none;place-items:center;background:color-mix(in srgb,var(--red) 12%,rgba(255,255,255,.92));border:3px dashed var(--red);border-radius:var(--r);z-index:5;text-align:center;color:var(--red-d)}
.fm-drop.on{display:grid}
.fm-drop div{display:grid;gap:6px;justify-items:center}
.fm-drop b{font-size:20px}
.fm-drop.busy b:after{content:" — se încarcă…"}
.fm-dialog{border:0;border-radius:16px;padding:0;width:min(480px,calc(100vw - 32px));box-shadow:0 30px 80px -20px rgba(0,0,0,.45)}
.fm-dialog::backdrop{background:rgba(15,17,21,.45)}
.fm-dialog form{padding:22px}
.fm-dialog h3{margin:0 0 6px;font-size:18px}
.fm-dialog .note{margin:0 0 14px;word-break:break-word}
.dlg-actions{flex-direction:row-reverse;justify-content:flex-start}
.fm-perm table{width:100%;border-collapse:collapse;margin-top:6px}
.fm-perm th,.fm-perm td{padding:6px;text-align:center;font-size:13px;border-bottom:1px solid var(--line)}
.fm-perm th:first-child{text-align:left}
.fm-perm input{width:auto}
@media (max-width:1100px){.fm-app{grid-template-columns:1fr}.fm-tree{position:static;max-height:260px}}
@media (max-width:700px){.fm-search input{min-width:120px}table.fm td:nth-child(4),table.fm th:nth-child(4),table.fm td:nth-child(6),table.fm th:nth-child(6){display:none}}

/* ===================== Editor de cod ===================== */
.ed-app{--tab:4;--ed-bg:#1b1e26;--ed-fg:#d6dbe5;--ed-line:#2a2f3a;--ed-gut:#5c6475;display:flex;flex-direction:column;height:calc(100vh - 64px);min-height:480px;background:var(--ed-bg);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
.ed-top{display:flex;align-items:center;gap:4px;padding:8px 10px;background:#11141a;border-bottom:1px solid var(--ed-line);color:#e7e9ef}
.ed-file{display:flex;align-items:center;gap:10px;min-width:0;margin-left:4px}
.ed-file div{display:grid;min-width:0}
.ed-file b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ed-file small{font-size:11.5px;color:#8a92a5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ed-file .fic{color:#9aa4ff}
.ed-dirty{color:#f5b340;font-size:18px;line-height:1}
.ed-spacer{flex:1}
.ed-btn{display:inline-grid;place-items:center;width:36px;height:34px;border:0;border-radius:8px;background:transparent;color:#cfd4de;cursor:pointer;padding:0}
.ed-btn:hover,.ed-btn.on{background:rgba(255,255,255,.1);color:#fff}
.ed-save{display:inline-flex;align-items:center;gap:7px;margin-left:6px;padding:8px 14px;border:0;border-radius:8px;background:var(--red);color:#fff;font:inherit;font-weight:700;font-size:14px;cursor:pointer}
.ed-save:hover{background:var(--red-d)}
.ed-save.busy{opacity:.6;cursor:progress}
.ed-find{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;background:#232733;border-bottom:1px solid var(--ed-line);color:#cfd4de;font-size:13px}
.ed-find input:not([type=checkbox]){width:230px;background:#151820;border:1px solid #3a4050;color:#fff;border-radius:7px;padding:6px 9px;font-size:13px}
.ed-find.goto input{width:300px}
.ed-find.goto .ed-opt,.ed-find.goto [data-ed=prev],.ed-find.goto [data-ed=next]{display:none}
.ed-rep{display:inline-flex;gap:6px;align-items:center}
.ed-count{min-width:90px;color:#8a92a5}
.ed-mini{padding:5px 9px;border:1px solid #3a4050;border-radius:7px;background:#2c3140;color:#e7e9ef;font:inherit;font-size:12.5px;cursor:pointer}
.ed-mini:hover{background:#363c4d}
.ed-opt{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);cursor:pointer}
.ed-opt input{width:auto}
.ed-body{position:relative;flex:1;display:flex;min-height:0;margin:0}
.ed-gutter{flex:none;width:58px;padding:12px 10px 40px 0;overflow:hidden;text-align:right;color:var(--ed-gut);background:var(--ed-bg);border-right:1px solid var(--ed-line);white-space:pre;user-select:none}
.ed-scroll{position:relative;flex:1;min-width:0}
.ed-gutter,.ed-hl,.ed-ta{font-family:ui-monospace,"Cascadia Code","SFMono-Regular",Consolas,"Liberation Mono",monospace;font-size:13.5px;line-height:21px;tab-size:var(--tab)}
.ed-hl,.ed-ta{position:absolute;inset:0;margin:0;padding:12px 16px 40px;border:0;white-space:pre;overflow:hidden;word-wrap:normal;letter-spacing:0}
.ed-hl{color:var(--ed-fg);pointer-events:none;background:transparent}
.ed-hl code{font:inherit;background:none;padding:0}
.ed-marks{color:transparent}
.ed-marks mark{background:rgba(255,213,79,.28);color:transparent;border-radius:2px}
.ed-marks mark.cur{background:rgba(255,160,40,.6);box-shadow:0 0 0 1px #ffb74d}
.ed-ta{width:100%;height:100%;resize:none;overflow:auto;background:transparent;color:transparent;caret-color:#fff;outline:none;border-radius:0;box-shadow:none}
.ed-ta::selection{background:rgba(110,140,255,.35);color:transparent}
.ed-ta:focus{box-shadow:none;border:0}
.ed-wrap .ed-hl,.ed-wrap .ed-ta{white-space:pre-wrap;word-break:break-word}
.ed-wrap .ed-gutter{display:none}
.ed-status{display:flex;align-items:center;gap:16px;padding:5px 12px;background:var(--red);color:#fff;font-size:12px}
.ed-status select{width:auto;padding:1px 4px;font-size:12px;background:rgba(255,255,255,.15);color:#fff;border:0;border-radius:4px}
.ed-status select option{color:#000}
.ed-status .bad{background:#fff;color:var(--red-d);padding:1px 8px;border-radius:4px;font-weight:700}
.ed-status .good{font-weight:700}
.t-c{color:#6f7a8f;font-style:italic}.t-s{color:#a5d6a7}.t-k{color:#c792ea}.t-n{color:#f78c6c}.t-v{color:#f07178}
.t-f{color:#82aaff}.t-a{color:#ffcb6b}.t-p{color:#89ddff}.t-m{color:#ff5370;font-weight:700}
body.ed-fullscreen .side,body.ed-fullscreen .burger{display:none}
body.ed-fullscreen .app{display:block;background:var(--ed-bg,#1b1e26)}
body.ed-fullscreen .main{padding:0;max-width:none}
body.ed-fullscreen .main > .alert{display:none}
body.ed-fullscreen .ed-app{position:fixed;inset:0;height:100vh;border-radius:0;z-index:50}
[hidden]{display:none!important}
.ed-status label{color:#fff;display:inline-flex;gap:6px;align-items:center;font-weight:400;margin:0}
.fm-search{flex:1;min-width:180px;max-width:420px}
.fm-search input{min-width:0;flex:1}
.fm-tb-spacer{display:none}
.checklist{display:grid;gap:8px;margin:4px 0 12px}
.chk{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.chk-i{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff}
.chk.ok .chk-i{background:var(--ok)}.chk.bad .chk-i{background:#c62828}.chk.unk .chk-i{background:var(--ink-3)}
.chk.bad{border-color:#f3c7c7;background:#fff8f8}
.chk .mono{font-size:12.5px;word-break:break-all}
.hz{padding:14px;border:1px dashed var(--line);border-radius:12px}
.hz h3{margin:0 0 4px;font-size:15px}
.prot{padding:10px 12px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 10px;border-radius:999px;background:var(--wash);border:1px solid var(--line);font-size:13px}
.chip-x{padding:0 6px;border:0;background:transparent;color:var(--ink-3);font-size:12px;cursor:pointer}
.chip-x:hover{color:var(--red-d);background:transparent}
.small-text{font-size:12.5px;max-width:320px;overflow:hidden;text-overflow:ellipsis}
/* icoane pentru panoul contului */
.ti-globe{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M3%2012h18M12%203c2.5%202.6%203.8%205.6%203.8%209s-1.3%206.4-3.8%209c-2.5-2.6-3.8-5.6-3.8-9S9.5%205.6%2012%203z%22/%3E%3C/svg%3E")}
.ti-sub{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M8%2012h8M12%208v8%22/%3E%3C/svg%3E")}
.ti-dns{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%226%22%20rx%3D%222%22/%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%2218%22%20height%3D%226%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M7%207h.01M7%2017h.01M11%207h6M11%2017h6%22/%3E%3C/svg%3E")}
.ti-ssl{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203%204%206v6c0%204.5%203.4%208.3%208%209%204.6-.7%208-4.5%208-9V6z%22/%3E%3Crect%20x%3D%229%22%20y%3D%2211%22%20width%3D%226%22%20height%3D%225%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M10%2011V9.5a2%202%200%200%201%204%200V11%22/%3E%3C/svg%3E")}
.ti-link{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%2014a4%204%200%200%200%205.7%200l3-3a4%204%200%200%200-5.7-5.7l-1%201%22/%3E%3Cpath%20d%3D%22M14%2010a4%204%200%200%200-5.7%200l-3%203a4%204%200%200%200%205.7%205.7l1-1%22/%3E%3C/svg%3E")}
.ti-redirect{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2012h12M12%206l6%206-6%206%22/%3E%3Cpath%20d%3D%22M4%205v14%22/%3E%3C/svg%3E")}
.ti-shield{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203%204%206v6c0%204.5%203.4%208.3%208%209%204.6-.7%208-4.5%208-9V6z%22/%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22/%3E%3C/svg%3E")}
.ti-gear{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22/%3E%3Cpath%20d%3D%22M12%202v3M12%2019v3M4.2%204.2l2.1%202.1M17.7%2017.7l2.1%202.1M2%2012h3M19%2012h3M4.2%2019.8l2.1-2.1M17.7%206.3l2.1-2.1%22/%3E%3C/svg%3E")}
.ti-mail{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22m3.5%206.5%208.5%206.5%208.5-6.5%22/%3E%3C/svg%3E")}
.ti-forward{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%205l7%207-7%207%22/%3E%3Cpath%20d%3D%22M21%2012H9a6%206%200%200%200-6%206v1%22/%3E%3C/svg%3E")}
.ti-reply{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%205l-7%207%207%207%22/%3E%3Cpath%20d%3D%22M3%2012h12a6%206%200%200%201%206%206v1%22/%3E%3C/svg%3E")}
.ti-inbox{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2013l3-8h12l3%208v6a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1z%22/%3E%3Cpath%20d%3D%22M3%2013h5l1%202h6l1-2h5%22/%3E%3C/svg%3E")}
.ti-track{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M12%207v5l3%202%22/%3E%3C/svg%3E")}
.ti-webmail{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%204h16v12H5.2L4%2017.2z%22/%3E%3Cpath%20d%3D%22M8%209h8M8%2012h5%22/%3E%3C/svg%3E")}
.ti-phpmyadmin{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%226%22%20rx%3D%227%22%20ry%3D%222.8%22/%3E%3Cpath%20d%3D%22M5%206v12c0%201.5%203.1%202.8%207%202.8s7-1.3%207-2.8V6%22/%3E%3Cpath%20d%3D%22M9%2013l2%202%204-4%22/%3E%3C/svg%3E")}
.ti-backup{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2012a8%208%200%201%201-2.3-5.7%22/%3E%3Cpath%20d%3D%22M20%204v5h-5%22/%3E%3Cpath%20d%3D%22M12%208v4l3%202%22/%3E%3C/svg%3E")}
.ti-key{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%228%22%20cy%3D%2215%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22m11%2012%209-9M17%206l3%203M14%209l2%202%22/%3E%3C/svg%3E")}
.ti-cron{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2213%22%20r%3D%228%22/%3E%3Cpath%20d%3D%22M12%209v4l2.5%202.5M9%202h6%22/%3E%3C/svg%3E")}
.ti-logs{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h8l5%205v12a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M8%2012h8M8%2015h8M8%2018h5%22/%3E%3C/svg%3E")}
.ti-stats{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020V10M10%2020V4M16%2020v-7M22%2020H2%22/%3E%3C/svg%3E")}
.ti-wp{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M6.5%208.5l3.5%209%202-6%202%206%203.5-9M5%208.5h4M15%208.5h4%22/%3E%3C/svg%3E")}
.ti-ban{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M5.6%205.6l12.8%2012.8%22/%3E%3C/svg%3E")}
.ti-twofa{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%226%22%20y%3D%222.5%22%20width%3D%2212%22%20height%3D%2219%22%20rx%3D%222.5%22/%3E%3Cpath%20d%3D%22M10%2018h4M9.5%2010.5l2%202%203.5-3.5%22/%3E%3C/svg%3E")}
.ti-box{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207.5%2012%203l9%204.5v9L12%2021l-9-4.5z%22/%3E%3Cpath%20d%3D%22M3%207.5%2012%2012l9-4.5M12%2012v9%22/%3E%3C/svg%3E")}
.ti-card{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222.5%22%20y%3D%225%22%20width%3D%2219%22%20height%3D%2214%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M2.5%2010h19M6%2015h4%22/%3E%3C/svg%3E")}
.ti-ticket{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%206h16v4a2%202%200%200%200%200%204v4H4v-4a2%202%200%200%200%200-4z%22/%3E%3Cpath%20d%3D%22M13%206v12%22%20stroke-dasharray%3D%222%202%22/%3E%3C/svg%3E")}
.ti-user{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22M4%2021c1-4%204.2-6%208-6s7%202%208%206%22/%3E%3C/svg%3E")}
.ti-activity{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2012h4l3-8%204%2016%203-8h4%22/%3E%3C/svg%3E")}
.ti-folder{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206.5A1.5%201.5%200%200%201%204.5%205H9l2%202.2h8.5A1.5%201.5%200%200%201%2021%208.7V18a1.5%201.5%200%200%201-1.5%201.5h-15A1.5%201.5%200%200%201%203%2018z%22/%3E%3C/svg%3E")}
.ti-catchall{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%204h16v16H4z%22/%3E%3Cpath%20d%3D%22M4%209h16M9%209v11%22/%3E%3C/svg%3E")}

.dash{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}
.dash-sec{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;margin-bottom:16px}
.dash-sec h2{margin:0;padding:11px 16px;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:#fff;background:var(--side)}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:4px;padding:12px}
.tile{display:flex;flex-direction:column;align-items:center;gap:9px;padding:14px 8px 12px;border-radius:12px;text-align:center;color:var(--ink-2);font-size:13px;font-weight:600;text-decoration:none;line-height:1.25}
.tile:hover{background:var(--wash);color:var(--ink)}
.tile .ti{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--tb,var(--red-t));color:var(--tc,var(--red-d))}
.tile .ti i{display:block;width:24px;height:24px;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
.tile .ti{width:50px;height:50px;border-radius:14px;color:#fff;background:linear-gradient(145deg,var(--g1),var(--g2));box-shadow:0 6px 14px -8px var(--g2),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .15s}
.tile .ti i{width:26px;height:26px}
.tile:hover .ti{transform:translateY(-2px)}
.tile.c1{--g1:#4f8df7;--g2:#1f5fd6}.tile.c2{--g1:#34c27a;--g2:#13894f}.tile.c3{--g1:#ffb347;--g2:#e5780b}.tile.c4{--g1:#a77bf3;--g2:#6d3fd1}.tile.c5{--g1:#ff6b6b;--g2:#d41c2a}.tile.c6{--g1:#2fc4cf;--g2:#0b8791}.tile.c7{--g1:#f472b6;--g2:#c0267a}.tile.c8{--g1:#6b7a90;--g2:#3a4556}
.side-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:16px;overflow:hidden}
.side-box h3{margin:0;padding:14px 16px;border-bottom:1px solid var(--line);font-size:16px}
.side-box .sb-label{padding:12px 16px 4px;font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);font-weight:700}
.use{padding:8px 16px}
.use-h{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:6px}
.use-h b{font-weight:700}
.bar{height:6px;border-radius:999px;background:var(--wash);overflow:hidden}
.bar i{display:block;height:100%;background:var(--ok);border-radius:999px}
.bar.warn i{background:#e9a100}.bar.full i{background:#c62828}
.info-row{display:flex;justify-content:space-between;gap:10px;padding:9px 16px;border-top:1px solid var(--line);font-size:13.5px}
.info-row span{color:var(--ink-3)}
.info-row b{font-weight:600;text-align:right;word-break:break-all}
@media (max-width:1150px){.dash{grid-template-columns:1fr}}

.bar i.w0{width:0%}.bar i.w5{width:5%}.bar i.w10{width:10%}.bar i.w15{width:15%}.bar i.w20{width:20%}.bar i.w25{width:25%}.bar i.w30{width:30%}.bar i.w35{width:35%}.bar i.w40{width:40%}.bar i.w45{width:45%}.bar i.w50{width:50%}.bar i.w55{width:55%}.bar i.w60{width:60%}.bar i.w65{width:65%}.bar i.w70{width:70%}.bar i.w75{width:75%}.bar i.w80{width:80%}.bar i.w85{width:85%}.bar i.w90{width:90%}.bar i.w95{width:95%}.bar i.w100{width:100%}
.auth-form{position:relative}
.en-field{margin-top:-6px;padding-left:12px;border-left:3px solid var(--line)}

.ti-ftp{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M7%2017V7m0%200L3.5%2010.5M7%207l3.5%203.5%22/%3E%3Cpath%20d=%22M17%207v10m0%200-3.5-3.5M17%2017l3.5-3.5%22/%3E%3C/svg%3E")}
.ti-spam{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M12%203%204%206v6c0%204.5%203.4%208.3%208%209%204.6-.7%208-4.5%208-9V6z%22/%3E%3Cpath%20d=%22M9.5%209.5l5%205M14.5%209.5l-5%205%22/%3E%3C/svg%3E")}
.ti-mx{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Crect%20x=%223%22%20y=%225%22%20width=%2218%22%20height=%2214%22%20rx=%222%22/%3E%3Cpath%20d=%22M7%2015V9l2.5%203L12%209v6M14.5%209l4%206M18.5%209l-4%206%22/%3E%3C/svg%3E")}
.ti-vacation{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M12%2021V11%22/%3E%3Cpath%20d=%22M12%2011C9%206%204%207%203%209c3-1%206%200%209%202zM12%2011c3-5%208-4%209-2-3-1-6%200-9%202zM12%2011c-1-4%201-7%203-8-1%203-1%205-3%208z%22/%3E%3Cpath%20d=%22M5%2021h14%22/%3E%3C/svg%3E")}
.ti-imap{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M3%207h12M11%203l4%204-4%204%22/%3E%3Cpath%20d=%22M21%2017H9M13%2013l-4%204%204%204%22/%3E%3C/svg%3E")}
.ti-malware{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Ccircle%20cx=%2212%22%20cy=%2213%22%20r=%225%22/%3E%3Cpath%20d=%22M12%208V5M9%206%207.5%204M15%206l1.5-2M7%2013H3M21%2013h-4M7.8%2016.5%205%2019M16.2%2016.5%2019%2019M12%2018v3%22/%3E%3C/svg%3E")}
.ti-git{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Ccircle%20cx=%226%22%20cy=%226%22%20r=%222.2%22/%3E%3Ccircle%20cx=%226%22%20cy=%2218%22%20r=%222.2%22/%3E%3Ccircle%20cx=%2218%22%20cy=%229%22%20r=%222.2%22/%3E%3Cpath%20d=%22M6%208.2v7.6M18%2011.2c0%203-3%204-7%204.6L8%2016.5%22/%3E%3C/svg%3E")}
.ti-apps{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Crect%20x=%223.5%22%20y=%223.5%22%20width=%227%22%20height=%227%22%20rx=%221.6%22/%3E%3Crect%20x=%2213.5%22%20y=%223.5%22%20width=%227%22%20height=%227%22%20rx=%221.6%22/%3E%3Crect%20x=%223.5%22%20y=%2213.5%22%20width=%227%22%20height=%227%22%20rx=%221.6%22/%3E%3Cpath%20d=%22M17%2013.5v7M13.5%2017h7%22/%3E%3C/svg%3E")}
.ti-node{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M12%202.8%2020%207.4v9.2L12%2021.2%204%2016.6V7.4z%22/%3E%3Cpath%20d=%22M9.5%209.5v5M14.5%209.5c-1.6%200-2.2.6-2.2%201.4%200%201.8%204%20.9%204%202.8%200%20.8-.7%201.3-2%201.3%22/%3E%3C/svg%3E")}
.ti-resources{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Crect%20x=%225%22%20y=%225%22%20width=%2214%22%20height=%2214%22%20rx=%222%22/%3E%3Crect%20x=%229%22%20y=%229%22%20width=%226%22%20height=%226%22%20rx=%221%22/%3E%3Cpath%20d=%22M9%202v3M15%202v3M9%2019v3M15%2019v3M2%209h3M2%2015h3M19%209h3M19%2015h3%22/%3E%3C/svg%3E")}
.ti-help{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Ccircle%20cx=%2212%22%20cy=%2212%22%20r=%229%22/%3E%3Cpath%20d=%22M9.5%209.3a2.6%202.6%200%200%201%205%20.9c0%201.8-2.5%202.2-2.5%203.8M12%2017h.01%22/%3E%3C/svg%3E")}
.ti-php{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cellipse%20cx=%2212%22%20cy=%2212%22%20rx=%2210%22%20ry=%226.5%22/%3E%3Cpath%20d=%22M6%2015l1-6h2a1.5%201.5%200%200%201%200%203H7.5M11.5%208.5%2010.5%2015M11%2011.5h2.3l-.6%203.5M15%2015l1-6h2a1.5%201.5%200%200%201%200%203h-1.5%22/%3E%3C/svg%3E")}
.ti-lockdir{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M3%206.5A1.5%201.5%200%200%201%204.5%205H9l2%202.2h8.5A1.5%201.5%200%200%201%2021%208.7V18a1.5%201.5%200%200%201-1.5%201.5h-15A1.5%201.5%200%200%201%203%2018z%22/%3E%3Crect%20x=%229.5%22%20y=%2212%22%20width=%225%22%20height=%224%22%20rx=%22.8%22/%3E%3Cpath%20d=%22M10.5%2012v-1a1.5%201.5%200%200%201%203%200v1%22/%3E%3C/svg%3E")}
.ti-pointer{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M4%2012h9M10%208l4%204-4%204%22/%3E%3Crect%20x=%2215%22%20y=%225%22%20width=%226%22%20height=%2214%22%20rx=%221.5%22/%3E%3C/svg%3E")}
.ti-filter{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M3%205h18l-7%208v6l-4%202v-8z%22/%3E%3C/svg%3E")}

/* ---------- bara de sus ---------- */
.main{padding-top:0}
.hdr{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;margin:0 calc(-1*clamp(18px,3vw,40px)) 24px;padding:12px clamp(18px,3vw,40px);background:rgba(255,255,255,.88);backdrop-filter:saturate(1.6) blur(10px);-webkit-backdrop-filter:saturate(1.6) blur(10px);border-bottom:1px solid var(--line)}
.hdr .burger{margin:0;padding:8px}
.hdr .burger svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round}
.gsearch{position:relative;flex:1;max-width:520px;display:flex;align-items:center}
.gsearch > svg{position:absolute;left:13px;width:18px;height:18px;fill:none;stroke:var(--ink-3);stroke-width:1.8;stroke-linecap:round;pointer-events:none}
.gsearch input{width:100%;height:42px;padding:0 74px 0 40px;border-radius:12px;border:1px solid var(--line);background:var(--wash);font-size:14.5px;transition:background .15s,border-color .15s,box-shadow .15s}
.gsearch input:focus{background:#fff;border-color:#c9cdd6;box-shadow:0 0 0 4px rgba(20,22,27,.06);outline:none}
.gsearch input::-webkit-search-cancel-button{display:none}
.gsearch kbd{position:absolute;right:10px;font:600 11.5px var(--font);color:var(--ink-3);background:#fff;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;padding:2px 7px;pointer-events:none}
.gs-res{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px -20px rgba(20,22,27,.35);padding:6px;max-height:420px;overflow:auto;z-index:40}
.gs-res a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:9px;color:var(--ink);font-weight:600;font-size:14px}
.gs-res a small{color:var(--ink-3);font-weight:500;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}
.gs-res a.on,.gs-res a:hover{background:var(--wash);color:var(--ink)}
.gs-res mark{background:none;color:var(--red-d)}
.gs-empty{padding:14px;color:var(--ink-3);font-size:14px}
.hdr-r{margin-left:auto;display:flex;align-items:center;gap:8px}
.hdr-link{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 12px;border-radius:10px;color:var(--ink-2);font-weight:600;font-size:14px}
.hdr-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.hdr-link:hover{background:var(--wash);color:var(--ink)}
details.lang-dd,details.user-dd{position:relative}
.lang-dd summary,.user-dd summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;height:40px;padding:0 10px;border-radius:10px;border:1px solid var(--line);background:#fff;font-weight:600;font-size:14px;color:var(--ink);user-select:none;transition:background .15s,border-color .15s}
.lang-dd summary::-webkit-details-marker,.user-dd summary::-webkit-details-marker{display:none}
.lang-dd summary:hover,.user-dd summary:hover,details[open] > summary{background:var(--wash);border-color:#d6d9e0}
.flag{width:22px;height:15px;border-radius:3px;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.chev{width:12px;height:12px;color:var(--ink-3);transition:transform .15s}
details[open] > summary .chev{transform:rotate(180deg)}
.lang-code{display:none}
.lang-menu,.dd-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:200px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px -20px rgba(20,22,27,.35);padding:6px;z-index:45;animation:ddin .12s ease-out}
@keyframes ddin{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.lang-menu a,.dd-menu a{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:9px;color:var(--ink);font-weight:600;font-size:14px}
.lang-menu a:hover,.dd-menu a:hover{background:var(--wash);color:var(--ink)}
.lang-menu a.on{color:var(--ink)}
.lang-menu .tick{width:14px;height:14px;margin-left:auto;color:var(--red)}
.dd-menu{min-width:250px}
.dd-menu a svg{width:17px;height:17px;fill:none;stroke:var(--ink-3);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dd-head{padding:10px 11px 12px;margin-bottom:4px;border-bottom:1px solid var(--line)}
.dd-head b{display:block;font-size:14.5px}
.dd-head span{font-size:12.5px;color:var(--ink-3);word-break:break-all}
.dd-menu form{margin:4px 0 0;padding-top:4px;border-top:1px solid var(--line)}
.dd-out{width:100%;justify-content:flex-start;background:transparent;border:0;color:var(--red-d);font-weight:700;padding:9px 11px;border-radius:9px;text-align:left}
.dd-out:hover{background:var(--red-t);color:var(--red-d)}
.avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#2b3140,#0f1115);color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.02em;flex:none}
.u-n{display:flex;flex-direction:column;line-height:1.15;text-align:left}
.u-n b{font-size:13.5px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.u-n small{font-size:11.5px;color:var(--ink-3);font-weight:500}
.user-dd summary{padding:0 10px 0 6px}
.lang-dd.on-auth{position:absolute;top:20px;right:24px;z-index:5}
@media (max-width:900px){
  .hdr{gap:8px}
  .hdr .burger{display:inline-flex}
  .gsearch kbd,.hdr-link span,.u-n,.lang-name{display:none}
  .lang-code{display:inline}
}
@media (max-width:560px){.hdr-link{display:none}.gsearch input{padding-right:12px}}

/* ---------- pagini de funcții (v9) ---------- */
.page-h{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:16px 18px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.page-h .tile{padding:0;gap:0}
.page-h .tile:hover{background:none}
.page-h h2{font-size:19px}
.page-h p{margin:3px 0 0;color:var(--ink-3);font-size:14px;max-width:80ch}
.page-back{margin-left:auto;flex:none}
@media (max-width:700px){.page-h{flex-wrap:wrap}.page-back{margin-left:0}}
.mb{margin-bottom:14px}
.grow{flex:1}
.input-suffix{display:flex;align-items:stretch}
.input-suffix input{border-top-right-radius:0;border-bottom-right-radius:0;min-width:0;flex:1}
.input-suffix select{border-top-left-radius:0;border-bottom-left-radius:0;border-left:0;max-width:60%;background-color:var(--wash)}
.choice-list{display:grid;gap:8px}
.choice{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;cursor:pointer;font-weight:400;margin:0;transition:border-color .15s,background .15s}
.choice:hover{border-color:#cfd3db}
.choice:has(input:checked){border-color:var(--red);background:var(--red-t)}
.choice input{margin-top:3px;flex:none;width:auto}
.choice b{display:block;font-size:14.5px}
.choice small{display:block;color:var(--ink-3);font-size:13px;margin-top:2px}
.progress-ind{height:6px;border-radius:999px;background:var(--wash);overflow:hidden;position:relative}
.progress-ind i{position:absolute;inset:0 auto 0 0;width:35%;border-radius:999px;background:linear-gradient(90deg,var(--red),#ff7a7f);animation:pind 1.3s ease-in-out infinite}
@keyframes pind{0%{left:-35%}100%{left:100%}}
.app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.app-card{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);color:var(--ink);transition:border-color .15s,transform .15s}
a.app-card,.app-card > summary{display:flex;gap:14px;align-items:flex-start;padding:16px;cursor:pointer;list-style:none}
.app-card > summary::-webkit-details-marker{display:none}
.app-card:hover{border-color:#cfd3db;color:var(--ink)}
.app-card b{display:block;font-size:15.5px}
.app-card small{display:block;color:var(--ink-2);font-size:13.5px;margin-top:3px;line-height:1.45}
.app-card em{display:inline-block;font-style:normal;font-size:11.5px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin-top:8px}
.app-card .pop-body{position:static!important;margin:0 16px 16px;width:auto!important;min-width:0!important;box-shadow:none;border:1px dashed var(--line);background:var(--wash)}
.app-card[open]{border-color:var(--red)}
.app-logo{flex:none;width:48px;height:48px;border-radius:13px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:22px;background:linear-gradient(145deg,#6b7a90,#3a4556);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.al-wp{background:linear-gradient(145deg,#3b8fd3,#21759b)}.al-joomla{background:linear-gradient(145deg,#f9a541,#e44d26)}.al-drupal{background:linear-gradient(145deg,#3fa9f5,#0678be)}
.al-prestashop{background:linear-gradient(145deg,#e5a5c7,#a1236e)}.al-nextcloud{background:linear-gradient(145deg,#2d9cf5,#0063b1)}.al-matomo{background:linear-gradient(145deg,#56c26b,#2f7d3b)}
.al-phpbb{background:linear-gradient(145deg,#5d8fd8,#105289)}.al-grav{background:linear-gradient(145deg,#8f77e6,#4c3ba3)}
.help-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}
.help-card .card-h{justify-content:flex-start;gap:12px}
.help-card .tile{padding:0}
.help-card .tile .ti{width:40px;height:40px;border-radius:11px}
.help-card .tile .ti i{width:21px;height:21px}
.help-list{margin:0;padding-left:18px;display:grid;gap:10px;color:var(--ink-2);font-size:14.5px}
.steps-list{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--ink-2)}
.stat small{display:block;color:var(--ink-3);font-size:12.5px;margin-top:2px}
.ti-terminal{--i:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%221.7%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Crect%20x=%223%22%20y=%224%22%20width=%2218%22%20height=%2216%22%20rx=%222%22/%3E%3Cpath%20d=%22m7%209%203%203-3%203M13%2015h4%22/%3E%3C/svg%3E")}
.term-wrap{background:#0f1115;border-radius:14px;overflow:hidden;border:1px solid #23262f;box-shadow:var(--shadow)}
.term-wrap:fullscreen{border-radius:0;display:flex;flex-direction:column}
.term-wrap:fullscreen .term-frame{flex:1;height:auto}
.term-bar{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#181b22;color:#c9cdd6;font-size:13px;border-bottom:1px solid #23262f}
.term-bar b{font-family:var(--mono);font-weight:600}
.term-bar .actions{margin-left:auto}
.term-dots{display:flex;gap:6px}.term-dots i{width:11px;height:11px;border-radius:50%;background:#ff5f57}.term-dots i:nth-child(2){background:#febc2e}.term-dots i:nth-child(3){background:#28c840}
.term-bar .term-btn{background:transparent!important;color:#c9cdd6!important;border:1px solid #2e333d!important;box-shadow:none!important}
.term-bar .term-btn:hover{background:#22262f!important;color:#fff!important}
.term-frame{display:block;width:100%;height:calc(100vh - 300px);min-height:420px;border:0;background:#0f1115}
.term-start .card-b{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px;align-items:center}
.term-preview{background:#0f1115;color:#e6e8ee;font-family:var(--mono);font-size:14px;line-height:1.9;padding:20px 22px;border-radius:12px;min-height:150px}
.term-preview .g{color:#28c840;margin-right:6px}
.term-preview i{display:inline-block;width:9px;height:17px;background:#e4141c;vertical-align:-3px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
@media (max-width:800px){.term-start .card-b{grid-template-columns:1fr}}
.app-logo.sm-logo{width:30px;height:30px;border-radius:9px;font-size:14px}
.job-log{border-top:1px solid var(--line)}
.job-log > summary{cursor:pointer;padding:10px 16px;font-size:13px;font-weight:600;color:var(--ink-3);list-style:none}
.job-log > summary::-webkit-details-marker{display:none}
.job-log > summary:before{content:"▸ "}
.job-log[open] > summary:before{content:"▾ "}
.nowrap{flex-wrap:nowrap}
/* ferestrele din tabele se deschid centrat (nu mai sunt tăiate de marginea tabelului) */
.table-wrap details.pop[open] > .pop-body,.table-wrap details.pop[open] > form.pop-body{position:fixed!important;top:50%;left:50%!important;right:auto!important;transform:translate(-50%,-50%);z-index:70;width:min(480px,92vw);min-width:0;max-height:86vh;overflow:auto;box-shadow:0 0 0 100vmax rgba(15,17,21,.45),0 30px 80px -20px rgba(0,0,0,.5);border-radius:16px;padding:20px}
/* site public: comutator */
.site-status{margin-bottom:18px;border-width:1px}
.site-status.is-on{border-color:#bfe5cf}.site-status.is-off{border-color:#f3c7c7}
.ss-head{display:flex;gap:14px;align-items:flex-start}
.ss-dot{width:12px;height:12px;border-radius:50%;margin-top:7px;flex:none;background:var(--ok);box-shadow:0 0 0 5px var(--ok-t)}
.is-off .ss-dot{background:#c62828;box-shadow:0 0 0 5px #fdecee}
.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;margin:0;font-weight:700;user-select:none}
.switch input{position:absolute;opacity:0;width:1px;height:1px}
.switch .sw{width:50px;height:28px;border-radius:999px;background:#d5d8df;position:relative;transition:background .2s;flex:none}
.switch .sw:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.switch input:checked + .sw{background:var(--ok)}
.switch input:checked + .sw:after{transform:translateX(22px)}
.switch input:focus-visible + .sw{outline:3px solid #f5a3a7;outline-offset:2px}
.warn-text{color:var(--warn);font-weight:700}
.w-md{max-width:260px}
/* servere de jocuri */
.game-logo{flex:none;width:56px;height:56px;border-radius:16px;display:grid;place-items:center;color:#fff;font-weight:900;font-size:17px;letter-spacing:-.02em;box-shadow:0 14px 26px -16px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.25)}
.game-logo.sm{width:38px;height:38px;border-radius:11px;font-size:12px}
.gl-cs16{background:linear-gradient(145deg,#f7b733,#d9822b)}.gl-czero{background:linear-gradient(145deg,#6a8cff,#3446c7)}.gl-l4d2{background:linear-gradient(145deg,#e94b3c,#8f1d14)}
.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:14px}
.game-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);text-decoration:none;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}
.game-card:hover{transform:translateY(-2px);border-color:var(--red)}
.gc-body{flex:1;min-width:0;display:grid;gap:2px}.gc-body b{font-size:15.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-body small{color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-body code{font-size:12.5px;color:var(--ink-2);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.game-card>.badge{flex:none;align-self:flex-start}.game-card>.game-logo{flex:none}
.gs-hero{display:flex;flex-wrap:wrap;align-items:center;gap:20px;padding:20px;border-radius:18px;background:linear-gradient(135deg,#14161c,#262a35);color:#fff;box-shadow:var(--shadow)}
.gs-hero .game-logo{width:72px;height:72px;font-size:21px;border-radius:20px}
.gs-stats{flex:1;min-width:260px;display:grid;grid-template-columns:minmax(210px,1.5fr) repeat(3,minmax(100px,1fr));gap:16px 22px}
.gs-stats b.mono{font-size:17px;white-space:nowrap}
@media(max-width:1100px){.gs-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gs-stats small{display:block;color:#9aa1ae;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.gs-stats b{display:block;font-size:19px;margin:3px 0}.gs-stats .muted{color:#9aa1ae}
.gs-stats .ghost{color:#dfe3ea!important;border-color:#3a3f4b!important;background:transparent!important}
.gs-power{display:flex;gap:8px;flex-wrap:wrap}.gs-power .ghost{color:#fff!important;border-color:#3a3f4b!important;background:transparent!important}
.gs-out{margin:0;padding:14px 16px;height:calc(100vh - 470px);min-height:340px;overflow:auto;color:#d6dae2;background:#0f1115;font:13px/1.5 var(--mono);white-space:pre-wrap;word-break:break-word}
.gs-cmd{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#181b22;border-top:1px solid #23262f}
.gs-cmd span{color:#28c840;font-family:var(--mono);font-weight:700}
.gs-cmd input{flex:1;background:#0f1115;border:1px solid #2e333d;color:#fff;font-family:var(--mono)}

.gs-files{grid-template-columns:240px minmax(0,1fr)}
.file-list{display:grid;gap:2px}.file-list a{padding:8px 10px;border-radius:9px;font:13px var(--mono);color:var(--ink-2);text-decoration:none;word-break:break-all}
.file-list a:hover{background:var(--soft,#f3f4f6)}.file-list a.on{background:var(--ink);color:#fff}
textarea.code{font:13px/1.5 var(--mono);width:100%;tab-size:4}
.small-log{max-height:260px;overflow:auto}
.edit-table input{min-width:0;padding:7px 9px}.edit-table input[name$="[name]"]{min-width:230px}.edit-table select{min-width:120px}.edit-table td{vertical-align:middle}.w-xs{width:86px}
.new-row td{background:var(--soft,#f7f7f8)}
@media(max-width:820px){.gs-files{grid-template-columns:1fr}.gs-out{height:50vh}}
#gs-live{color:#28c840}
#gs-live.off{color:#ff7b72}
/* v16: game panel */
.gs-tabs a{padding:10px 12px}
.choice span{display:grid;gap:2px}.choice small{color:var(--ink-3)}
.fm-crumbs{font:13.5px var(--mono);margin:0 0 12px;color:var(--ink-3)}.fm-crumbs a{color:var(--ink-2)}.fm-crumbs b{color:var(--ink)}
.fm-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--line)}
.fm-table td{vertical-align:middle}.fm-dir{font-weight:700}.w-cb{width:34px}
.fm-table input[type=checkbox]{width:auto}
.lib-file{font:12px var(--mono);color:var(--ink-3)}
.local-card{border:1px dashed var(--line);background:var(--wash,#fafafa)}
.fs{border:1px solid var(--line);border-radius:12px;padding:10px 14px 4px;margin:6px 0 0}.fs legend{font-size:13px;color:var(--ink-3);padding:0 6px}
input.w-xs{width:86px!important;min-width:0}
/* v18: bara de hărți, jucători live */
.map-bar{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.map-now small{display:block;color:var(--ink-3);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.map-now b{font:700 18px var(--mono)}
.map-pick select{min-width:220px;font-family:var(--mono)}.quick-cmds{margin-left:auto}
.pl-table td{vertical-align:middle}#pl-live.off{color:var(--red)}
.pl-modal{position:fixed;inset:0;z-index:80;background:rgba(15,17,21,.45);display:grid;place-items:center;padding:16px}
.pl-modal[hidden]{display:none}.pl-modal .pop-body{position:static;width:min(440px,94vw);background:var(--paper);border-radius:16px;padding:20px;box-shadow:0 30px 80px -20px rgba(0,0,0,.5)}
.pl-modal [hidden]{display:none}
.pw-show{display:inline-flex;gap:8px;align-items:center}.pw-show code{background:var(--wash,#f3f4f6);padding:5px 10px;border-radius:8px;font-size:15px;user-select:all}.pw-note{display:block;margin-top:4px}

/* radio online */
.gl-radio{background:linear-gradient(145deg,#ff5f8f,#9b1d5a)}
.game-logo svg{width:55%;height:55%;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.radio-audio{width:100%;max-width:520px;margin-top:12px}
.song-pick{max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:8px;display:grid;gap:4px}
.rchart{width:100%;height:160px;display:block}
.rchart rect{fill:var(--red);opacity:.85}
details.inline{display:inline-block}
.pub{background:var(--wash);min-height:100vh}
.pub-main{max-width:980px;margin:0 auto;padding:32px 16px}
.pub-foot{text-align:center;color:var(--ink-3);font-size:13px;padding:0 16px 32px}
.radio-head{display:flex;gap:16px;align-items:center}
.radio-head h1{margin:0;font-size:26px}
.radio-head p{margin:4px 0 0}
.radio-head .badge{margin-left:auto}
.radio-logo{flex:none;width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#ff5f8f,#9b1d5a)}
.radio-logo svg{width:34px;height:34px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.radio-now{display:flex;flex-direction:column;gap:2px;margin-top:20px}
.radio-now small{color:var(--ink-3);text-transform:uppercase;font-size:12px;letter-spacing:.06em}
.radio-now b{font-size:18px}

/* comandă și upgrade */
.ti-game{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%208h10a5%205%200%200%201%204.8%206.4l-.6%202a2.4%202.4%200%200%201-4%201L15%2015.5H9l-2.2%201.9a2.4%202.4%200%200%201-4-1l-.6-2A5%205%200%200%201%207%208z%22/%3E%3Cpath%20d%3D%22M7%2011v3M5.5%2012.5h3M15.5%2012h.01M17.5%2013.5h.01%22/%3E%3C/svg%3E")}
.ti-radio{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%229%22%20width%3D%2218%22%20height%3D%2211%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22m7%209%2010-5%22/%3E%3Ccircle%20cx%3D%228.5%22%20cy%3D%2214.5%22%20r%3D%222.5%22/%3E%3Cpath%20d%3D%22M14%2013h4M14%2016h4%22/%3E%3C/svg%3E")}
.ti-up{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M12%2016.5v-9M8%2011.5l4-4%204%204%22/%3E%3C/svg%3E")}
.ti-cart{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%204h2l2.4%2011.2a1.5%201.5%200%200%200%201.5%201.2h8.6a1.5%201.5%200%200%200%201.5-1.1L21%208H6.2%22/%3E%3Ccircle%20cx%3D%229.5%22%20cy%3D%2220%22%20r%3D%221.2%22/%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2220%22%20r%3D%221.2%22/%3E%3C/svg%3E")}
.buy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.buy-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.buy-row:first-child{border-top:0}
.buy-row small{display:block;color:var(--ink-3)}
.has-img{background:var(--wash)!important;overflow:hidden;padding:0}
.has-img img{width:100%;height:100%;object-fit:cover;display:block}
.radio-logo.big{width:96px;height:96px;border-radius:22px}
.radio-logo.big svg{width:48px;height:48px}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:760px){.row3{grid-template-columns:1fr}}
.nowrap{flex-wrap:nowrap}
.w-md{width:200px}
.dj-live{display:inline-flex;align-items:center;gap:8px}
.dj-live::before{content:"";width:10px;height:10px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 0 rgba(229,72,77,.6);animation:djpulse 1.6s infinite}
@keyframes djpulse{0%{box-shadow:0 0 0 0 rgba(229,72,77,.55)}70%{box-shadow:0 0 0 10px rgba(229,72,77,0)}100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}}
.pub-wide{max-width:980px}
.dj-steps li{margin-bottom:6px}
.push-right{margin-left:auto}
.djl-meter{display:flex;align-items:center;gap:12px;margin-top:6px}
.djl-meter meter{flex:1;height:14px}
.djlive.onair{border-color:#e5484d;box-shadow:0 0 0 3px rgba(229,72,77,.15)}
.err-text{color:#c62828}
/* radio: grila, chat, widget */
.radio-shows{display:flex;flex-wrap:wrap;gap:12px 28px;padding-top:12px;border-top:1px solid var(--line)}
.radio-shows small{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:700}
.sched{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:16px}
@media(max-width:900px){.sched{grid-template-columns:1fr}}
.sched-day h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}
.sched-day.today h3{color:var(--accent,#2563eb)}
.sched-item{background:var(--wash);border-radius:10px;padding:8px 10px;margin-bottom:8px;display:flex;flex-direction:column;gap:2px;font-size:13.5px}
.sched-item.now{background:#fde8ec;box-shadow:inset 3px 0 0 #e5484d}
.sched-item small{color:var(--ink-3)}
.sched-act{display:flex;gap:10px;font-size:12.5px;margin-top:4px}
.linkbtn{background:none;border:0;padding:0;color:#c62828;font:inherit;font-size:12.5px;cursor:pointer;min-height:0;box-shadow:none}
.rchart-x{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-3)}
.widget-preview iframe{width:100%;height:150px;border:1px solid var(--line);border-radius:12px;background:#fff}
.rchat{display:flex;flex-direction:column}
.rchat-list{height:280px;overflow-y:auto;padding:12px 18px;display:flex;flex-direction:column;gap:8px}
.rchat-msg{font-size:14px;line-height:1.4}
.rchat-msg b{margin-right:6px}
.rchat-msg .badge{margin-right:6px;font-size:10.5px;padding:1px 6px}
.rchat-msg.dj .rchat-text{font-weight:600}
.rchat-time{color:var(--ink-3);font-size:11.5px;margin-right:6px;font-family:ui-monospace,monospace}
.rchat-text{word-break:break-word}
.rchat-form{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--line)}
.rchat-form input{flex:1;min-width:0}
.rchat-form .rchat-name{flex:0 0 130px}
.rchat-err{color:#c62828;padding:0 18px 10px;margin:0}
.pub-grid .card{min-width:0}
.wdg-body{background:transparent;margin:0}
.wdg{display:flex;gap:14px;align-items:center;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:16px;font-size:14px;max-height:150px;box-sizing:border-box}
.wdg-logo{width:86px;height:86px;border-radius:16px}
.wdg-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.wdg-top{display:flex;align-items:center;gap:8px;justify-content:space-between}
.wdg-now{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wdg audio{width:100%;height:34px}
.wdg-foot{display:flex;justify-content:space-between;gap:8px;font-size:12.5px}
/* încadrare: nimic nu iese din carduri, pe orice lățime */
.sched{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.sched-act{flex-wrap:wrap}
.card-b .actions,.radio-head{flex-wrap:wrap}
input[type=file]{max-width:100%;min-width:0}
.radio-head>div{min-width:0}
.radio-head h1{overflow-wrap:anywhere}
.gs-hero b{overflow-wrap:anywhere}
.grid>*{min-width:0}
.actions>form.actions{min-width:0;flex:1 1 240px}
.actions>form.actions input[type=file]{flex:1 1 160px}
.geo-bar{display:flex;align-items:center;gap:8px;min-width:140px}
.geo-track{flex:1;height:8px;border-radius:4px;background:var(--wash);overflow:hidden}
.geo-track i{display:block;height:100%;background:var(--red,#e5484d);min-width:2px}
.geo-track i.w0{width:0%}.geo-track i.w5{width:5%}.geo-track i.w10{width:10%}.geo-track i.w15{width:15%}.geo-track i.w20{width:20%}.geo-track i.w25{width:25%}.geo-track i.w30{width:30%}.geo-track i.w35{width:35%}.geo-track i.w40{width:40%}.geo-track i.w45{width:45%}.geo-track i.w50{width:50%}.geo-track i.w55{width:55%}.geo-track i.w60{width:60%}.geo-track i.w65{width:65%}.geo-track i.w70{width:70%}.geo-track i.w75{width:75%}.geo-track i.w80{width:80%}.geo-track i.w85{width:85%}.geo-track i.w90{width:90%}.geo-track i.w95{width:95%}.geo-track i.w100{width:100%}
.geo-bar span{font-size:12.5px;color:var(--ink-3)}
/* insignele jocurilor (design propriu, fără logo-uri oficiale) */
.gl-css{background:linear-gradient(145deg,#4a5d73,#1c2836)}
.gl-l4d{background:linear-gradient(145deg,#c43b2f,#5e120c)}
.gl-tf2{background:linear-gradient(145deg,#cf6a32,#7b2e12)}
.gl-dods{background:linear-gradient(145deg,#7a8b4f,#3a4423)}
.gl-hl2dm{background:linear-gradient(145deg,#f08a24,#a14a06)}
.gl-hldm{background:linear-gradient(145deg,#ff9b2f,#c45d00)}
.gl-dod{background:linear-gradient(145deg,#8a7a4f,#4a3f23)}
.gl-tfc{background:linear-gradient(145deg,#5f7fa8,#2c4466)}
.game-logo{position:relative;overflow:hidden}
.game-logo:not(.has-img)::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(255,255,255,.28),rgba(255,255,255,0) 45%);pointer-events:none}
.game-logo.gl-dods,.game-logo.gl-l4d2{font-size:14px}
.game-logo.sm.gl-dods,.game-logo.sm.gl-l4d2{font-size:10px}
.game-logo.big{width:84px;height:84px;border-radius:22px;font-size:24px}
.game-logo.has-img img{width:100%;height:100%;object-fit:cover;display:block}
.gp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;padding-top:12px;border-top:1px solid var(--line)}
.gp-stats small{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:700}
.gp-stats b{font-size:18px;overflow-wrap:anywhere}
.gp-fill{display:block;margin-top:6px;max-width:220px}
.gwdg .wdg-logo{font-size:22px}
.gw-players{display:flex;align-items:center;gap:8px;font-size:13.5px}
.gw-players .gp-fill{flex:1;margin:0}
.game-img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:14px;padding:16px}
.game-img-item{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:12px}
.gi-body{flex:1;min-width:0;display:grid;gap:6px}
.gi-body>*{min-width:0}
.gi-body form.actions input[type=file]{flex:1 1 100%;width:100%}
.game-img-item{overflow:hidden}
.join-help{display:none;margin-top:14px;padding:14px 16px;border-radius:12px;background:var(--wash);font-size:14px}
.join-help.show{display:block}
.join-help ol{margin:8px 0 0;padding-left:20px}
.join-help li{margin-bottom:6px}
.bg-thumb{width:160px;height:90px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
body.pub.has-bg .pub-foot,body.pub.has-bg .pub-foot a{color:rgba(255,255,255,.85)}
body.pub.has-bg .card{box-shadow:0 20px 50px -20px rgba(0,0,0,.6)}
.mapvote{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:8px}
.mv-item{display:flex;align-items:center;gap:10px;justify-content:space-between;background:var(--wash);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-weight:600;cursor:pointer;min-height:0;box-shadow:none;text-align:left}
.mv-item:hover,.mv-item:focus-visible{border-color:var(--red,#e5484d);color:var(--ink);background:var(--wash)}
.mv-name{flex:0 0 40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,monospace;font-size:13px}
.mv-item .geo-track{flex:1}
.mv-n{flex:none;min-width:22px;text-align:right;font-variant-numeric:tabular-nums}
.req-item{padding:14px 20px;border-top:1px solid var(--line)}
.req-item p{margin:6px 0}
.req-head{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}
details.card>summary{cursor:pointer;list-style:none}
details.card>summary::-webkit-details-marker{display:none}
.gp-stats b.mono{overflow-wrap:normal;white-space:nowrap;font-size:16px}
details.card:not([open])>summary.card-h{border-bottom:0}
.gp-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.gp-stats b.mono{font-size:15px}
.input-suffix{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--paper)}
.input-suffix input{border:0;border-radius:0;flex:1;min-width:0;box-shadow:none}
.input-suffix span{display:flex;align-items:center;padding:0 12px;background:var(--wash);color:var(--ink-2);font-family:ui-monospace,monospace;font-size:13px;white-space:nowrap}
.gp-ip{display:block;font-size:12.5px;margin-top:2px}
.input-prefix span{border-right:1px solid var(--line)}

/* tab-uri cu iconițe (servere de jocuri, radio, cont de găzduire): pastile pe mai multe rânduri, fără bară de derulare */
.tabs.gs-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:6px;margin:18px 0 20px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:visible}
.tabs.gs-tabs a{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:11px;border:0;font-size:14px;font-weight:650;color:var(--ink-2);text-decoration:none;transition:background .15s,color .15s,transform .15s}
.tabs.gs-tabs a svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;opacity:.75}
.tabs.gs-tabs a:hover{background:var(--wash);color:var(--ink)}
.tabs.gs-tabs a:hover svg{opacity:1}
.tabs.gs-tabs a.on{background:var(--red);color:#fff;box-shadow:0 8px 18px -10px var(--red)}
.tabs.gs-tabs a.on svg{opacity:1}
@media(max-width:760px){
  .tabs.gs-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tabs.gs-tabs::-webkit-scrollbar{display:none}
  .tabs.gs-tabs a{white-space:nowrap}
}
/* bare de derulare subțiri și discrete (meniu, tabele, pagină) */
*{scrollbar-width:thin;scrollbar-color:rgba(120,128,145,.45) transparent}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(120,128,145,.4);border-radius:999px;border:3px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:rgba(120,128,145,.7);background-clip:padding-box;border:3px solid transparent}
.side{scrollbar-color:rgba(255,255,255,.18) transparent}
.side::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);background-clip:padding-box;border:3px solid transparent}
.side::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.32);background-clip:padding-box;border:3px solid transparent}

/* ================================================================== paginile publice: temă luminoasă, profesională (servere, radio, DJ, widgeturi) */
body.pub{--g-card2:#f6f7fb;--g-line:#e7e9f0;--g-ink:#151821;--g-ink2:#4a5061;--g-ink3:#7c8395;
  background:radial-gradient(1100px 520px at 0% -10%,color-mix(in srgb,var(--red) 14%,transparent),transparent 60%),radial-gradient(900px 480px at 110% 0%,rgba(80,120,255,.10),transparent 60%),linear-gradient(180deg,#f7f8fc,#eef0f6);
  background-attachment:fixed;color:var(--g-ink);min-height:100vh}
.pub-top{max-width:980px;margin:0 auto;padding:18px 16px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}
.pub-brand{display:flex;align-items:center;gap:10px;color:var(--g-ink);font-weight:800;letter-spacing:-.01em;font-size:17px}
.pub-brand img{height:34px;max-width:220px;object-fit:contain}
.pub-lang{display:flex;gap:2px;background:#fff;border:1px solid var(--g-line);border-radius:999px;padding:3px;box-shadow:0 4px 14px -8px rgba(20,22,27,.25)}
.pub-lang a{padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--g-ink3)}
.pub-lang a.on{background:var(--red);color:#fff}
.pub-main{padding-top:20px}
.pub-foot{color:var(--g-ink3)}
body.pub .card{background:#fff;border:1px solid var(--g-line);border-radius:20px;box-shadow:0 1px 2px rgba(20,22,27,.04),0 22px 44px -28px rgba(20,22,27,.28)}
body.pub .card-h{border-bottom-color:var(--g-line)}
body.pub h1{letter-spacing:-.02em}
body.pub table th{background:#fafbfd}
body.pub .btn:not(.ghost),body.pub button:not(.ghost):not(.mv-item):not(.linkbtn):not(:disabled){box-shadow:0 10px 22px -12px var(--red)}
/* partea de sus */
.pub-hero{position:relative;overflow:hidden}
.pub-hero::before{content:"";position:absolute;inset:-45% -12% auto auto;width:440px;height:440px;background:radial-gradient(circle,color-mix(in srgb,var(--red) 16%,transparent),transparent 70%);pointer-events:none}
.pub-hero::after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--red),color-mix(in srgb,var(--red) 50%,#ffb36b))}
.pub-hero .card-b{position:relative}
.pub-hero .radio-head h1{font-size:30px}
.pub-hero .game-logo.big,.pub-hero .radio-logo{width:96px;height:96px;border-radius:24px;box-shadow:0 16px 34px -16px rgba(20,22,27,.45),0 0 0 1px rgba(20,22,27,.05)}
.pub-hero .radio-logo svg{width:46px;height:46px}
/* insignă live cu puls */
.live-badge.b-active::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#16a34a;margin-right:6px;box-shadow:0 0 0 0 rgba(22,163,74,.55);animation:livepulse 1.8s infinite;vertical-align:1px}
@keyframes livepulse{0%{box-shadow:0 0 0 0 rgba(22,163,74,.5)}70%{box-shadow:0 0 0 9px rgba(22,163,74,0)}100%{box-shadow:0 0 0 0 rgba(22,163,74,0)}}
/* plăci cu date */
body.pub .gp-stats{border-top:0;padding-top:0;margin-top:18px;gap:10px}
body.pub .gp-stats>div,body.pub .radio-now,body.pub .radio-shows>div,body.pub .pub-hero .grid.g3>div{background:var(--g-card2);border:1px solid var(--g-line);border-radius:14px;padding:12px 14px}
body.pub .gp-stats small,body.pub .radio-now small{display:flex;align-items:center;gap:6px;color:var(--g-ink3)}
body.pub .gp-stats small svg,body.pub .radio-now small svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.pub .gp-stats b{font-size:19px}
body.pub .gp-stats b.mono{white-space:normal;overflow-wrap:anywhere;font-size:15px;line-height:1.3}
body.pub .geo-track i{background:linear-gradient(90deg,var(--red),color-mix(in srgb,var(--red) 55%,#ffb36b))}
body.pub .radio-now{margin-top:18px}
body.pub .radio-now b{font-size:20px}
body.pub .radio-shows{border-top:0;padding-top:0;margin-top:12px}
body.pub .radio-shows>div{flex:1 1 220px}
body.pub .radio-audio{max-width:100%;margin-top:14px}
body.pub .pub-hero .grid.g3 small{text-transform:uppercase;font-size:11.5px;letter-spacing:.06em;font-weight:700;color:var(--g-ink3)}
body.pub .pub-hero .grid.g3 b{font-size:18px}
/* egalizator animat */
.eq{display:inline-flex;align-items:flex-end;gap:2px;height:12px}
.eq i{display:block;width:3px;height:3px;background:var(--red);border-radius:1px}
.eq.on i{animation:eqb 1s ease-in-out infinite}
.eq.on i:nth-child(2){animation-delay:.2s}.eq.on i:nth-child(3){animation-delay:.45s}.eq.on i:nth-child(4){animation-delay:.1s}
@keyframes eqb{0%,100%{height:3px}50%{height:12px}}
/* chat, voturi, grilă */
body.pub .rchat-msg.dj{background:color-mix(in srgb,var(--red) 7%,transparent);border-radius:10px;padding:6px 8px;margin:0 -8px}
body.pub .mv-item{background:var(--g-card2)}
body.pub .mv-item:hover,body.pub .mv-item:focus-visible{background:#fff;border-color:var(--red);color:var(--g-ink,var(--ink));box-shadow:0 6px 16px -10px var(--red)}
body.pub .mv-item:active{transform:scale(.99)}
body.pub .sched-item{border:1px solid var(--g-line)}
body.pub .sched-item.now{background:color-mix(in srgb,var(--red) 9%,#fff);box-shadow:inset 3px 0 0 var(--red)}
body.pub .sched-day.today h3{color:var(--red)}
body.pub .join-help{border:1px solid var(--g-line)}
body.pub details.card>summary.card-h{display:flex;align-items:center}
body.pub details.card>summary.card-h::after{content:"＋";margin-left:auto;color:var(--g-ink3);font-size:18px;padding-left:12px}
body.pub details.card[open]>summary.card-h::after{content:"－"}
body.pub button:disabled{box-shadow:none;opacity:.55;cursor:not-allowed}
body.pub td.mono{white-space:nowrap}
body.pub.has-bg .card{background:rgba(255,255,255,.94)}
body.pub.has-bg .pub-brand,body.pub.has-bg .pub-foot{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}
/* widgeturi (pe alte site-uri): card alb elegant, cu bandă colorată */
.wdg-body .wdg{background:#fff;border:1px solid #e7e9f0;box-shadow:0 14px 34px -22px rgba(20,22,27,.45);border-radius:18px;position:relative;overflow:hidden}
.wdg-body .wdg::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--red),color-mix(in srgb,var(--red) 50%,#ffb36b))}
.wdg-body .wdg a{font-weight:700}
.wdg-body .wdg .badge{font-size:11px}
html:has(body.pub){background:#eef0f6}
body.pub .pub-widget{align-items:start}
body.pub .widget-preview iframe{border:0;border-radius:18px;background:transparent;height:156px}
body.pub code.block{display:block;white-space:pre-wrap;word-break:break-all;padding:12px 14px;border-radius:12px;background:var(--g-card2);border:1px solid var(--g-line);font-size:12.5px}
.wdg-top b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wdg-top .badge{flex:none}
/* player-ul radioului (pagina publică) */
.rp-player{display:flex;align-items:center;gap:14px;margin-top:14px;padding:12px 16px;border-radius:18px;background:var(--g-card2,#f6f7fb);border:1px solid var(--g-line,#e7e9f0)}
.rp-play{flex:none;width:58px;height:58px;border-radius:50%;padding:0;display:grid;place-items:center;background:var(--red);color:#fff;border:0;box-shadow:0 12px 26px -12px var(--red);cursor:pointer;transition:transform .15s}
.rp-play:hover{transform:scale(1.06)}
.rp-play svg{width:26px;height:26px;fill:#fff}
.rp-play .i-pause{display:none}
.rp-play.on .i-play{display:none}.rp-play.on .i-pause{display:block}
.rp-play.on{animation:rpglow 2s infinite}
@keyframes rpglow{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--red) 45%,transparent)}70%{box-shadow:0 0 0 14px transparent}100%{box-shadow:0 0 0 0 transparent}}
.rp-pl-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.rp-pl-txt b{font-size:15px}
.rp-pl-txt .muted{font-size:12.5px}
#rp-vol{flex:0 0 120px;accent-color:var(--red)}
@media(max-width:560px){#rp-vol{display:none}}
.rp-meta{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline;margin-top:4px}
.radio-now .rp-next b{font-size:15px;font-weight:700}
.rp-meta{font-size:14.5px}
.rp-changed{animation:rpchange .9s ease}
@keyframes rpchange{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:none}}
tr.rp-new td{animation:rpchange .9s ease;background:color-mix(in srgb,var(--red) 6%,transparent)}
/* v60: card singur pe rând = lățime completă; widget radio încape în 150px și cu melodia următoare */
.pub-grid>:only-child{grid-column:1/-1}
body.pub .radio-now .rp-next b{font-size:15px;font-weight:700}
.wdg{padding:10px 12px;gap:12px}
.wdg-main{gap:3px}
.wdg-now{font-size:13px;line-height:18px}
.wdg-top{line-height:22px}
.wdg-top b{font-size:15px}
.wdg audio{height:30px;margin:2px 0}
.wdg-foot{line-height:16px;font-size:12px}
.wdg-logo{width:80px;height:80px}
@media (max-height:139px){.wdg-next{display:none}}
@media (max-width:360px){.wdg-logo{width:56px;height:56px}}
#rp-hist td:first-child{width:72px;white-space:nowrap}
/* moderarea chatului radio */
td.nowrap{white-space:nowrap}
.chat-mod .chat-msg-cell{min-width:180px;overflow-wrap:anywhere}
.chat-ban{display:flex;gap:6px;align-items:center}
.chat-ban select{width:auto;min-height:0;padding:5px 8px;font-size:13px}
.rchat-tools{display:inline-flex;gap:8px;align-items:center;margin-left:10px;vertical-align:baseline}
.rchat-ip{font-size:11.5px;color:var(--ink-3);background:transparent;padding:0}
.rchat-act{font-size:12.5px;font-weight:700;padding:0;min-height:0;background:none;border:0;box-shadow:none;cursor:pointer;color:var(--ink-2,#555)}
.rchat-act:hover{background:none;color:var(--red);text-decoration:underline}
.rchat-act.danger-text{color:#d93036}
.rchat-act.sure{color:#fff;background:#d93036;border-radius:6px;padding:2px 8px}
.rchat-mod{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;justify-content:space-between;padding:0 16px 12px}
.rchat-len{display:inline-flex;gap:6px;align-items:center;font-weight:600}
.rchat-len select{width:auto;min-height:0;padding:4px 8px;font-size:13px}
.chat-mod .actions{flex-wrap:nowrap}
.chat-mod .chat-ban select{min-width:0;width:auto;flex:none}
.chat-ban .wb-level{max-width:210px}
.wb-req{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);flex-wrap:wrap}
.wb-req select{min-width:0;width:auto;flex:none;padding:6px 8px;font-size:13px}
.wb-add input{flex:2 1 280px}
.mv-locked .mv-item,.mv-item:disabled{opacity:.6;cursor:not-allowed}
body.pub .mv-item:disabled:hover{background:var(--g-card2);border-color:var(--g-line);box-shadow:none;color:var(--g-ink)}
.mv-who{padding-bottom:0}
.mv-who .alert{margin:0}
.mv-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.mv-acts form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
tr.mv-act-row td{padding-top:0;border-top:0}
#voturi tr:not(.mv-act-row) td{border-bottom:0}
.mv-acts select{min-width:0;width:auto;flex:none;padding:5px 8px;font-size:13px}
tr.mv-cur td{background:color-mix(in srgb,var(--red) 4%,transparent)}
hr.sep{border:0;border-top:1px solid var(--line);margin:18px 0}
pre.console.mini{max-height:180px;overflow:auto;margin-top:8px;font-size:12px;white-space:pre-wrap;word-break:break-word}
/* biblioteca: căutare și categorii; tabul Configurări */
.lib-filter{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.lib-filter form{flex:1 1 320px}
.lib-filter input[type=search]{flex:1 1 220px}
.lib-cats{display:flex;flex-wrap:wrap;gap:6px}
.lib-cats a{padding:6px 12px;border-radius:999px;border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink-2,#555);text-decoration:none;background:#fff}
.lib-cats a.on{background:var(--red);border-color:var(--red);color:#fff}
.cfg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
.cfg-item{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--wash);display:flex;flex-direction:column;min-width:0}
.cfg-item p{margin:6px 0 4px;font-size:13.5px;color:var(--ink-2,#555);flex:1}
.cfg-item small{overflow-wrap:anywhere;font-size:11.5px}
.cfg-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
/* editorul de pluginuri */
.pedit{margin-bottom:16px;border:2px solid color-mix(in srgb,var(--red) 35%,var(--line))}
.pedit h3{margin:0 0 6px;font-size:15px}
.ptexts{display:flex;flex-direction:column;gap:8px}
.ptext{display:flex;gap:10px;align-items:flex-start}
.ptext textarea{flex:1;font-family:ui-monospace,monospace;font-size:13px;min-height:38px;resize:vertical}
.ptext small{flex:none;width:60px;padding-top:10px;text-align:right}
.pcvars{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:8px 16px}
.pcvars .actions{grid-column:1/-1}
.pcvar{display:flex;flex-direction:column;gap:4px;font-size:13px}
.pcvar input{font-family:ui-monospace,monospace}
details.pop > .pop-body.pop-wide{width:min(480px,88vw);text-align:left}
details.pop > .pop-body.pop-wide input{width:100%}
details.pop > .pop-body.pop-wide textarea{width:100%}
.disk-big{font-size:1.35rem;margin-bottom:4px}
.disk-group + .disk-group{border-top:1px solid var(--line)}
.disk-group h3{margin:0 0 4px}
td.w-check{width:28px}
table.disk-t{table-layout:fixed;width:100%}
table.disk-t td{overflow-wrap:anywhere}
table.disk-t td:nth-child(1){width:56px;padding-right:0}
table.disk-t td:nth-child(1) input{width:18px;height:18px;min-width:18px}
table.disk-t td:nth-child(3){width:230px}
table.disk-t td:nth-child(4){width:150px}
table.disk-t td:nth-child(5){width:100px}
@media (max-width:720px){table.disk-t td:nth-child(3),table.disk-t td:nth-child(4){display:none}}
.opt-card{display:block;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:10px 0;cursor:pointer}
.opt-card:has(input[type=radio]:checked){border-color:var(--red);background:var(--wash)}
.opt-card .row-inline{display:flex;gap:8px;align-items:center;margin-top:8px}
.opt-card .row-inline input[type=text],.opt-card .row-inline input:not([type]){flex:1;min-width:0}
.opt-card .note{display:inline}
.opt-card > .note:last-child{display:block;margin-top:6px}
.pend-card{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.opt-card input[type=radio]{display:inline-block;width:auto;margin:0 6px 0 0;vertical-align:middle}
.contact-msg .msg-body{background:var(--wash);border-radius:12px;padding:14px 16px;white-space:normal;line-height:1.6}
.contact-msg textarea{width:100%}
.site-img-prev{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.empty-img{display:grid;place-items:center;background:var(--wash);color:var(--muted,#7a8191);font-size:14px}
.lic-code{font-size:15px;padding:3px 8px}.lic-empty h2{margin:0 0 6px}.lic-kv{grid-template-columns:160px 1fr}
/* v85: ghidul licenței */
.guide-steps{counter-reset:g;list-style:none;margin:0;padding:0;display:grid;gap:22px}
.guide-steps>li{counter-increment:g;position:relative;padding-left:52px}
.guide-steps>li:before{content:counter(g);position:absolute;left:0;top:-2px;width:36px;height:36px;border-radius:50%;background:var(--red,#e4141c);color:#fff;font-weight:800;display:grid;place-items:center}
.guide-steps h3{margin:4px 0 8px;font-size:17px}
.guide-steps ul,.guide-steps ol{margin:6px 0;padding-left:18px;display:grid;gap:7px;color:var(--ink-2)}
.guide-steps p{margin:6px 0;color:var(--ink-2)}
.guide-opt{border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:10px 0;background:var(--bg-2,#f8f9fb)}
.guide-opt h4{margin:2px 0 6px;font-size:15px}
.guide-dns{max-width:520px}.guide-dns td,.guide-dns th{padding:6px 10px}
.guide code{word-break:break-all}
.lic-plans-c{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.lic-plan-c{border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px}
.lic-plan-c .pp{font-size:24px;font-weight:800}.lic-plan-c .pp span{font-size:14px;font-weight:500;color:var(--muted)}
.lic-plan-c p{margin:0;color:var(--muted);font-size:14px;flex:1}
.lic-next{background:var(--red-t,#fdecec);border-radius:12px;padding:12px 16px;margin-top:12px}
details.pop > .pop-body.wide{width:min(560px,90vw);text-align:left}.pop-body.wide .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
/* v86: module de licență */
.lic-feats{list-style:none;margin:10px 0;padding:0;display:grid;gap:7px}
.lic-feats li{position:relative;padding-left:26px;font-weight:600}
.lic-feats li small{font-weight:500;color:var(--muted)}
.lic-feats li:before{content:"✓";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:#dcfce7;color:#15803d;font-size:12px;font-weight:800;display:grid;place-items:center}
.lic-feats li.off{color:var(--muted)}.lic-feats li.off:before{content:"✕";background:#f1f2f5;color:#9aa1ad}
.lock-card .card-b{max-width:720px;margin:0 auto;text-align:left;padding:32px}
.lock-ic{width:56px;height:56px;border-radius:16px;background:var(--red-t,#fdecec);color:var(--red,#e4141c);display:grid;place-items:center;margin-bottom:12px}.lock-ic svg{width:28px;height:28px}
.lic-up{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
.lic-up select{max-width:320px}
.lic-feats.sm{gap:2px;margin:0;font-size:13px}.lic-feats.sm li{padding-left:22px}.lic-feats.sm li:before{width:16px;height:16px;font-size:10px}.lic-feats.sm small{display:none}
.lic-feats.inline{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0}
/* v87: clienți — licențe panou separat */
.ctabs a{display:inline-flex;align-items:center;gap:7px}.ctabs a svg{width:16px;height:16px}
.ctabs .count{background:var(--wash,#f1f2f5);color:var(--ink-2);border-radius:999px;padding:1px 8px;font-size:12px}
.ctabs a.on .count{background:var(--red,#e4141c);color:#fff}
.badge.b-lic{background:#ede9fe;color:#6d28d9}
.svc-cell{display:flex;flex-direction:column;gap:3px;align-items:flex-start}
.svc{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;color:var(--ink-2)}.svc svg{width:15px;height:15px;opacity:.75}
.svc.lic{color:#6d28d9;font-weight:600}.svc.lic small{font-weight:500;color:var(--muted)}
.mb{margin-bottom:14px}
.ctabs svg,.svc svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
/* v93: adresa panoului vândut */
.lic-access{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--wash,#f8f9fb)}
.lic-access h3{margin:0 0 8px;font-size:15px}.lic-access p{margin:6px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dns-check{list-style:none;margin:8px 0;padding:0;display:grid;gap:5px;font-size:14px}
.dns-check li{position:relative;padding-left:24px}
.dns-check li:before{content:"✓";position:absolute;left:0;top:1px;width:17px;height:17px;border-radius:50%;background:#dcfce7;color:#15803d;font-size:11px;font-weight:800;display:grid;place-items:center}
.dns-check li.off:before{content:"✕";background:#fee2e2;color:#b91c1c}
.lic-access p.note{display:block}
.lic-access h4{margin:14px 0 4px;font-size:14px}.creds-form{margin-top:6px}.creds-form .row{display:grid;grid-template-columns:2fr 80px 1.2fr 2fr;gap:10px}@media(max-width:800px){.creds-form .row{grid-template-columns:1fr}}.lic-kv.creds dd{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
/* v97: alegerea adresei panoului vândut */
.dom-choice{border:0;padding:0;margin:4px 0 14px;display:grid;gap:10px}
.dom-choice legend{font-weight:700;font-size:14px;margin-bottom:6px}
.dc-opt{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:start;cursor:pointer}
.dc-opt>input{margin-top:14px}
.dc-box{display:grid;gap:6px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#fff}
.dc-opt>input:checked+.dc-box{border-color:var(--red,#e4141c);box-shadow:0 0 0 3px var(--red-t,#fdecec)}
.dc-row{display:flex;align-items:center;gap:6px}.dc-row input{flex:1;min-width:0}.dc-row code{white-space:nowrap}
.dc-box small{color:var(--muted);line-height:1.5}
.lic-plan-c.cur{border-color:#86efac;background:#f0fdf4}
