.gl{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:11px;border:1px solid var(--line2,rgba(255,255,255,.16));background:var(--glass,rgba(255,255,255,.05));color:#d9ccba;text-decoration:none;flex:none}
.gl:hover{color:#fff;border-color:rgba(225,29,46,.5)}
.mtr{display:flex;align-items:center;gap:8px}
.sidefoot{border-top:1px solid var(--line)}
@media(max-width:900px){
.top{margin-bottom:4px}.top h1,.top h2{font-size:22px!important;letter-spacing:-.01em}.top p,.top .pill{display:none}
.main{padding-top:14px}
.panel,.card{padding:16px;border-radius:20px}.panel{margin-bottom:14px}
.panelhead{margin-bottom:12px}.panelhead h2{font-size:16.5px}
label.f,.card label,label{font-size:10.5px;margin:12px 0 5px}
input,select,textarea{padding:11px 13px!important;font-size:14.5px!important;border-radius:12px!important}
.formgrid{gap:2px 10px}
.rowcard{padding:12px 14px;border-radius:14px}.rowcard b{font-size:14px}.rowcard small{font-size:12px}
.check{padding:12px 14px;font-size:14px}
.btn,button.btn{padding:11px 16px;font-size:13.5px;border-radius:13px}
.muted{font-size:12.5px}
table{font-size:12.5px}
.stats4{grid-template-columns:repeat(5,1fr)!important;gap:6px!important}.stats4 .s{padding:10px 6px!important;border-radius:14px!important;text-align:center}.stats4 .s:last-child{grid-column:auto!important}.stats4 .n{font-size:20px!important}.stats4 .l{font-size:8.5px!important;letter-spacing:.04em!important}
.mc{padding:16px 14px 14px 18px}.mc-name{font-size:17px}
.mc-tiles{gap:6px}.mc-tiles .t{padding:10px 12px}.mc-tiles b{font-size:15px}
.bdg{font-size:13px;padding:4px 11px}
.mc-acts .ab{padding:10px 4px;font-size:13px}
.bigadd{padding:13px!important;font-size:14.5px!important}
.seg a{padding:8px 13px;font-size:12.5px}
}
.panel .help,.panel p.muted{line-height:1.55}

.two>section:nth-child(2):not(:only-child){order:-1}
.srvlist{display:grid;gap:12px}
.srv{position:relative;padding:14px 14px 14px 18px;border-radius:18px;background:rgba(0,0,0,.25);border:1px solid var(--line);overflow:hidden}
.srv:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:0 5px 5px 0;background:var(--bar)}
.srv-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.srv-top b{font-size:17px}
.srv-url{font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:var(--muted);margin:6px 0 10px;word-break:break-all}
.srv-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--muted);margin-bottom:8px}.srv-meta b{color:#fff}
.srv-acts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.srv-acts form{margin:0}.srv-acts .btn,.srv-acts button{width:100%;text-align:center;justify-content:center;margin:0!important}
.bdg{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:99px;font-weight:800;font-size:12px;border:1px solid}
.b-grn{color:#4ade80;background:rgba(52,211,153,.1);border-color:rgba(52,211,153,.4)}.b-amb{color:#fbbf24;background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.45)}.b-red{color:#fb7185;background:rgba(251,113,133,.1);border-color:rgba(251,113,133,.45)}.b-gry{color:#cbbfae;background:rgba(255,255,255,.06);border-color:var(--line2)}.b-blu{color:#93c5fd;background:rgba(96,165,250,.1);border-color:rgba(96,165,250,.45)}
/* switches */
.check{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-direction:row-reverse;cursor:pointer}
.check input[type=checkbox]{-webkit-appearance:none;appearance:none;flex:none;width:46px!important;height:27px!important;border-radius:99px!important;background:rgba(255,255,255,.12)!important;border:1px solid var(--line2)!important;position:relative;transition:.2s;margin:0;padding:0!important}
.check input[type=checkbox]::after{content:"";position:absolute;top:2px;left:2px;width:21px;height:21px;border-radius:50%;background:#d9ccba;transition:.2s}
.check input[type=checkbox]:checked{background:linear-gradient(135deg,#ff6b78,#e11d2e)!important;border-color:transparent!important}
.check input[type=checkbox]:checked::after{left:21px;background:#fff}
.check input[type=checkbox]:checked::before{display:none}
@media(max-width:900px){.formgrid{grid-template-columns:1fr 1fr!important}.formgrid>div,.formgrid>.full,.formgrid>button{grid-column:1/-1}}
.check{white-space:nowrap}.check span,.check{font-size:14px}
.formgrid .check{min-height:54px;padding:0 14px}

.bnav{grid-template-columns:repeat(6,1fr)!important}.bnav a{font-size:9px!important;padding:9px 0!important}
main h1,.page-h,.content>h1{font-size:30px}
.asg{margin:4px 0 8px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03)}
.asg summary{cursor:pointer;padding:11px 14px;font-weight:800;font-size:13px;color:#e9dccb;list-style:none}.asg summary::-webkit-details-marker{display:none}
.asg form{padding:0 12px 12px}.asg-l{max-height:230px;overflow:auto;display:grid;gap:6px}
.asg-i{display:flex!important;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;background:rgba(0,0,0,.25);border:1px solid var(--line);margin:0!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer}
.asg-i input{width:18px!important;height:18px;accent-color:#e11d2e;margin:0;padding:0!important;flex:none}
.asg-i span{display:flex;flex-direction:column;font-size:14px;color:#fff;min-width:0}.asg-i small{font-family:ui-monospace,monospace;color:var(--muted);font-size:12px}
/* drawer menu */
.bnav{display:none!important}
@media(max-width:900px){.main{padding-bottom:40px!important}.bulk{bottom:18px!important}}
.hb{display:none;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;border:1px solid var(--line2);background:var(--glass);color:#fff;padding:0;margin:0 0 0 8px;cursor:pointer}
@media(max-width:900px){.hb{display:inline-flex}.mtr{display:flex;align-items:center}}
.dr-bd{position:fixed;inset:0;background:rgba(0,0,0,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:.25s;z-index:90}
.dr{position:fixed;top:0;bottom:0;right:0;width:min(84vw,330px);z-index:95;display:flex;flex-direction:column;padding:18px 14px calc(18px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#23151a,#120a0d);border-left:1px solid rgba(225,29,46,.35);box-shadow:-20px 0 60px rgba(0,0,0,.6);transform:translateX(104%);transition:transform .28s cubic-bezier(.2,.8,.2,1);overflow-y:auto}
.dr-open .dr-bd{opacity:1;pointer-events:auto}.dr-open .dr{transform:none}.dr-open{overflow:hidden}
.dr-h{position:relative;padding:6px 44px 16px 6px;border-bottom:1px solid var(--line);margin-bottom:10px}.dr-h b{display:block;font-size:19px}.dr-h small{color:var(--gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:800}
.dr-x{position:absolute;right:0;top:2px;width:38px;height:38px;border-radius:12px;border:1px solid var(--line2);background:var(--glass);color:#fff;margin:0;padding:0;cursor:pointer}
.dr-n{display:grid;gap:6px}
.dr-n a{display:flex!important;align-items:center;gap:14px;padding:14px 14px!important;border-radius:16px;color:#d9ccba;text-decoration:none;font-weight:800;font-size:15px;border:1px solid transparent}
.dr-n a svg{width:22px;height:22px;flex:none;opacity:.9}
.dr-n a.on{color:#fff;background:linear-gradient(90deg,rgba(225,29,46,.28),rgba(225,29,46,.06));border-color:rgba(225,29,46,.45)}.dr-n a.on svg{color:var(--gold)}
.dr-n a.on::after{display:none}
.dr-out{margin-top:auto;display:block;text-align:center;padding:14px;border-radius:16px;border:1px solid var(--line2);background:var(--glass);color:#fff;text-decoration:none;font-weight:800}
/* no sideways overflow anywhere */
html,body{overflow-x:hidden}.main,.main *{min-width:0}.formgrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.main input,.main select,.main textarea{max-width:100%}
.check{white-space:normal!important;flex-direction:row!important;gap:10px}
.check input[type=checkbox]{order:2;margin-left:auto}
.check>*:not(input){order:1;min-width:0;overflow-wrap:anywhere;font-size:14px;line-height:1.25}
.formgrid .check{padding:10px 12px;min-height:54px}
.bulk{flex-wrap:wrap;justify-content:stretch;gap:6px}.bulk b{flex:1 0 100%}.bulk button{flex:1 1 0;min-width:0;padding:9px 4px!important}

.addrow{display:grid;grid-template-columns:1.2fr 1fr;gap:10px;margin-bottom:16px}.addrow .bigadd{margin:0!important}
.bigadd.alt{background:rgba(255,255,255,.06)!important;color:#f3ece3!important;border:1px solid var(--line2)!important;border-radius:18px;font-weight:800;padding:14px 8px}
.nuhead{position:relative}.nux{position:absolute;right:0;top:0;width:38px;height:38px;border-radius:12px;border:1px solid var(--line2);background:var(--glass);color:#fff;padding:0;margin:0}
.modesw{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;border-radius:16px;background:rgba(0,0,0,.35);border:1px solid var(--line);margin:4px 0 6px}
.modesw a{text-align:center;padding:11px 6px;border-radius:12px;color:#cbbfae;font-weight:800;font-size:13.5px;text-decoration:none}.modesw a.on{background:linear-gradient(135deg,#ff6b78,#e11d2e);color:#fff}
.pw{position:relative;display:flex;gap:8px;align-items:stretch}.pw input{flex:1;min-width:0}
.pst{flex:none;padding:0 14px!important;margin:0!important;border-radius:14px!important;background:rgba(255,255,255,.07)!important;border:1px solid var(--line2)!important;color:#ffd7a0!important;font-weight:800;font-size:13px}
.m3u{margin-top:6px;padding:12px;border-radius:18px;background:rgba(251,191,36,.06);border:1px dashed rgba(251,191,36,.45)}.m3u label{margin-top:0;color:#fbbf24}
.m3uout{margin-top:10px;font-size:12.5px;color:var(--muted);line-height:1.6;word-break:break-all}.m3uout code{color:#fbbf24;font-size:11.5px}.m3uout.ok{color:#4ade80}.m3uout.bad{color:#fbbf24}.m3uout b{color:#fff}
.nuhead h2{padding-right:46px}
.m3u{padding:10px!important;margin:4px 0 8px!important}.m3uout{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.m3uout .chip{padding:5px 11px;border-radius:99px;background:rgba(255,255,255,.07);border:1px solid var(--line2);font-weight:800;color:#fff}.m3uout.ok .chip:first-child{color:#4ade80;border-color:rgba(74,222,128,.5)}.m3uout.bad .chip:first-child{color:#fbbf24;border-color:rgba(251,191,36,.5)}.m3uout div{flex:1 0 100%}
.m3uout.ok,.m3uout.bad{background:none!important}
.mc-add{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.mca{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 6px;border-radius:14px;font-weight:800;font-size:13.5px;text-decoration:none;border:1px dashed var(--line2);color:#e9dccb;background:rgba(255,255,255,.04)}.mca.pl{color:#fbbf24;border-color:rgba(251,191,36,.5)}.mca.dv{color:#93c5fd;border-color:rgba(147,197,253,.45)}
body.addpage .ftiles,body.addpage .srch,body.addpage .selbar,body.addpage .addrow,body.addpage .devlist,body.addpage .bulk,body.addpage .top,body.addpage .flash{display:none!important}
a.nux{display:flex;align-items:center;justify-content:center;text-decoration:none}

.modesw{display:none!important}
.addrow{grid-template-columns:1fr!important}
.mc-add{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.mca{border-style:solid!important;border-width:1px;font-size:14px;padding:13px 6px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.mca.pl{background:linear-gradient(135deg,rgba(251,191,36,.18),rgba(251,191,36,.05))!important;color:#fcd34d!important}
.mca.dv{background:linear-gradient(135deg,rgba(96,165,250,.2),rgba(96,165,250,.05))!important;color:#bfdbfe!important}
.mca:active{transform:scale(.98)}

.vfban{display:block;margin-bottom:12px;padding:13px 16px;border-radius:16px;background:linear-gradient(135deg,rgba(251,191,36,.2),rgba(225,29,46,.14));border:1px solid rgba(251,191,36,.55);color:#fde68a;text-decoration:none;font-weight:700;font-size:14px}.vfban b{color:#fff}
.vfbox{margin:0 0 14px;padding:14px;border-radius:18px;background:rgba(251,191,36,.07);border:1px solid rgba(251,191,36,.5)}
.vft{font-weight:800;color:#fbbf24;font-size:13px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px}
.vfd{display:flex;flex-direction:column;margin-bottom:12px}.vfd b{font-size:18px}.vfd span{color:var(--muted);font-family:ui-monospace,monospace;font-size:13px}
.vfa{display:grid;grid-template-columns:1fr 1fr;gap:8px}.vfa form{margin:0}.vfa form button,.vwa{width:100%;margin:0!important;padding:12px 6px!important;border-radius:13px!important;font-weight:800;font-size:13.5px}
.vwa{grid-column:1/-1;display:flex;align-items:center;justify-content:center;background:#16a34a;color:#fff;text-decoration:none}
.vok{background:linear-gradient(135deg,#34d399,#059669)!important;color:#06231a!important}.vno{background:rgba(251,113,133,.15)!important;color:#fb7185!important;border:1px solid rgba(251,113,133,.5)!important}
.vfn{margin:0 0 12px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px dashed var(--line2);color:var(--muted);font-size:12.5px}
.addplbtn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;padding:15px;border-radius:16px;background:linear-gradient(135deg,#ff6b78,#e11d2e);color:#fff;font-weight:800;text-decoration:none}

/* v16 card enhancement */
.mc{position:relative;border-radius:20px;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));border:1px solid var(--line);box-shadow:0 10px 28px rgba(0,0,0,.35);overflow:hidden;transition:transform .15s,border-color .15s}
.mc:hover{transform:translateY(-2px);border-color:rgba(251,191,36,.45)}
.mc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(#fbbf24,#e11d48)}
.mc-name{font-weight:900;letter-spacing:.2px}
.mc-tiles .t{border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--line)}
.mc-tiles b{color:#fff}
.mc-acts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.mc-acts .ab{border-radius:12px;background:rgba(255,255,255,.06);border:1px solid var(--line);font-weight:800}
.card,.srv{border-radius:18px;box-shadow:0 8px 24px rgba(0,0,0,.3)}

/* v17 gradient card theme (Marvel red/gold) */
.card,.mc,.srv,.panel,.box2{background:linear-gradient(145deg,rgba(225,29,46,.16) 0%,rgba(20,8,11,.92) 48%,rgba(251,191,36,.12) 100%)!important;border:1px solid rgba(251,191,36,.28)!important;box-shadow:0 12px 32px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.07)}
.mc::before{background:linear-gradient(180deg,#fbbf24,#e11d2e)!important;width:5px}
.mc:hover,.srv:hover{border-color:rgba(251,191,36,.6)!important;box-shadow:0 14px 36px rgba(225,29,46,.25)}
.mc-tiles .t{background:linear-gradient(135deg,rgba(251,191,36,.14),rgba(225,29,46,.10))!important;border:1px solid rgba(251,191,36,.25)!important}
.mc-acts .ab{background:linear-gradient(135deg,rgba(225,29,46,.28),rgba(251,191,36,.14))!important;border:1px solid rgba(251,191,36,.3)!important;color:#fff}
.mc-acts .ab:hover{filter:brightness(1.2)}
.ftiles>*{background:linear-gradient(135deg,rgba(225,29,46,.2),rgba(251,191,36,.1))!important;border:1px solid rgba(251,191,36,.25)!important}
.btn,button.btn,.primary{background:linear-gradient(135deg,#e11d2e,#b91c2a 55%,#f59e0b)!important;color:#fff!important;border:0!important}

/* v18 polish (colors unchanged) */
html{scroll-behavior:smooth}
button,.ab,.mca,.gl,a.btn{transition:transform .12s,filter .15s,box-shadow .15s}
button:active,.ab:active,.mca:active{transform:scale(.97)}
input:focus,select:focus,textarea:focus{outline:none;border-color:#f4c448!important;box-shadow:0 0 0 3px rgba(244,196,72,.18)}
.mc,.srv{animation:mtin .35s ease both}
@keyframes mtin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:rgba(244,196,72,.35);border-radius:8px}
@media (prefers-reduced-motion:reduce){.mc,.srv{animation:none}}
