:root{
  --bg:#090c12;--panel:#10151e;--panel2:#141b26;--line:#222b39;--text:#edf2f7;--muted:#7f8b9c;
  --accent:#ff9f1a;--accent2:#ffbe4d;--danger:#ff4d5f;--ok:#35d07f;--warn:#ffb020;--blue:#65a5ff;
  --radius:18px;--shadow:0 20px 60px rgba(0,0,0,.25)
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 80% 0%,rgba(255,159,26,.08),transparent 30%),radial-gradient(circle at 20% 80%,rgba(72,110,255,.04),transparent 35%)}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(430px,100%);background:linear-gradient(180deg,#121923,#0e131b);border:1px solid var(--line);border-radius:24px;padding:36px;box-shadow:var(--shadow)}.brand-login{margin-bottom:36px}.login-card h1{font-size:28px;margin:0 0 8px}.login-card>p{margin:0 0 28px;color:var(--muted)}label{display:block;color:#aab4c2;font-size:13px;font-weight:700;margin:16px 0}label input{display:block;width:100%;margin-top:8px;background:#0a0f16;border:1px solid var(--line);color:var(--text);border-radius:12px;padding:13px 14px;outline:none}label input:focus,.search:focus,.command-bar input:focus{border-color:rgba(255,159,26,.7);box-shadow:0 0 0 3px rgba(255,159,26,.08)}.error{color:#ff7482;font-size:13px;margin-top:14px;min-height:18px}
.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid #171e29;background:rgba(11,15,22,.94);backdrop-filter:blur(20px);padding:26px 18px;display:flex;flex-direction:column;z-index:4}.brand{display:flex;align-items:center;gap:12px;padding:0 8px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--accent),#ff7b00);color:#171006;font-size:23px;font-weight:950;box-shadow:0 8px 25px rgba(255,159,26,.2)}.brand b{font-size:17px;letter-spacing:.14em}.brand small{display:block;margin-top:2px;color:#697586;font-size:9px;font-weight:800;letter-spacing:.14em}.sidebar nav{display:grid;gap:6px;margin-top:42px}.nav{display:flex;align-items:center;gap:13px;width:100%;border:0;background:transparent;color:#8e9aab;border-radius:12px;padding:12px 13px;text-align:left;font-weight:650}.nav span{width:24px;color:#697688;font-weight:900}.nav:hover{background:#111824;color:#dfe6ee}.nav.active{background:linear-gradient(90deg,rgba(255,159,26,.15),rgba(255,159,26,.035));color:#fff}.nav.active span{color:var(--accent)}.side-bottom{margin-top:auto}.server-mini{display:flex;gap:10px;align-items:center;padding:14px;border:1px solid #1e2734;border-radius:14px;background:#0d1219}.server-mini .dot{flex:0 0 auto}.server-mini b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.server-mini small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.logout{width:100%;border:0;background:transparent;color:#7d8999;padding:12px;margin-top:8px}.logout:hover{color:#fff}
main{min-width:0;padding:0 34px 42px}.topbar{height:104px;display:flex;align-items:center;justify-content:space-between}.topbar h1{font-size:23px;margin:0}.topbar p{margin:5px 0 0;color:var(--muted);font-size:12px}.top-actions{display:flex;align-items:center;gap:12px}.pill{display:flex;align-items:center;gap:7px;border:1px solid #1e2a36;background:#0d131b;border-radius:999px;padding:8px 11px;font-size:10px;color:#8e9baa;font-weight:800}.avatar{display:grid;place-items:center;width:38px;height:38px;border:1px solid #293342;border-radius:12px;background:#151d28;color:#c8d0db;font-size:11px;font-weight:900}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#667383}.dot.online{background:var(--ok);box-shadow:0 0 0 5px rgba(53,208,127,.08),0 0 15px rgba(53,208,127,.4)}.dot.offline{background:var(--danger);box-shadow:0 0 12px rgba(255,77,95,.35)}
.view{display:none}.view.active{display:block}.card{background:linear-gradient(180deg,rgba(18,24,34,.96),rgba(14,19,27,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 14px 40px rgba(0,0,0,.12)}.hero{min-height:145px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;position:relative}.hero:after{content:"BDT";position:absolute;right:24%;top:-39px;font-size:150px;font-weight:950;letter-spacing:-.08em;color:rgba(255,255,255,.018);transform:skewX(-10deg);pointer-events:none}.eyebrow{color:var(--accent);font-size:10px;letter-spacing:.15em;font-weight:900}.hero h2{font-size:27px;margin:7px 0 10px}.hero-status{display:flex;align-items:center;gap:9px;color:#7f8c9d;font-size:12px}.hero-status b{color:#b8c2ce}.server-actions{display:flex;gap:9px;z-index:1}.btn{border:1px solid #2a3442;background:#151d28;color:#d7dfe8;border-radius:11px;padding:10px 14px;font-size:12px;font-weight:800;transition:.16s transform,.16s background,.16s border-color}.btn:hover{transform:translateY(-1px);border-color:#3a4657}.btn.primary{background:linear-gradient(135deg,var(--accent),#ff8500);border-color:transparent;color:#241606}.btn.ghost{background:#121923}.btn.warning{border-color:rgba(255,176,32,.24);color:#ffd27a;background:rgba(255,176,32,.06)}.btn.danger{border-color:rgba(255,77,95,.2);color:#ff7a88;background:rgba(255,77,95,.055)}.btn.wide{width:100%;padding:13px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:14px}.stat{padding:21px;display:flex;align-items:center;gap:15px}.stat-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#151e2a;border:1px solid #273140;color:var(--accent);font-size:9px;font-weight:900}.stat small{display:block;color:#6f7b8b;font-size:9px;letter-spacing:.11em;font-weight:900}.stat b{display:block;font-size:23px;margin:2px 0}.stat em{display:block;color:#6e7b8c;font-size:10px;font-style:normal}.dashboard-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px;margin-top:14px}.panel-card{padding:22px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.card-head h3{font-size:14px;margin:0}.card-head p{color:#718094;font-size:10px;margin:5px 0 0}.badge{border:1px solid #293442;border-radius:9px;padding:7px 9px;color:#8794a6;font-size:10px}.meters{display:grid;gap:20px}.meter-head{display:flex;justify-content:space-between;font-size:11px;color:#8794a5;margin-bottom:8px}.meter-head b{color:#c6d0dc}.meter{height:6px;border-radius:100px;background:#0a0f15;overflow:hidden}.meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff8b00,var(--accent2));border-radius:100px;transition:width .4s}.link-btn{border:0;background:transparent;color:var(--accent);font-size:10px;font-weight:800}.mini-logs{height:151px;overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;color:#9ba8b7;line-height:1.7}.mini-logs div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-logs .err{color:#ff7c89}.mini-logs .warn{color:#f6bf62}
.console{overflow:hidden}.console-head{height:49px;border-bottom:1px solid #202836;background:#0c1118;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 17px;color:#6f7a8a;font-size:9px;letter-spacing:.12em;font-weight:900}.console-head>:last-child{justify-self:end}.terminal-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.terminal-dot.red{background:#ff5f56}.terminal-dot.yellow{background:#ffbd2e}.terminal-dot.green{background:#27c93f}.console-output{height:calc(100vh - 260px);min-height:420px;overflow:auto;padding:18px 20px;background:#090d13;font:11px/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#9aa8b9}.console-line{white-space:pre-wrap;overflow-wrap:anywhere}.console-line.error{color:#ff7886}.console-line.warning{color:#ffc662}.console-line.command{color:#7fb5ff}.console-line.success{color:#55db92}.console-line.info{color:#9aa8b9}.command-bar{display:flex;align-items:center;gap:10px;padding:11px 14px;border-top:1px solid #202836;background:#0d131a}.command-bar>span{color:var(--accent);font:bold 15px monospace}.command-bar input{flex:1;border:1px solid transparent;background:transparent;color:#e8eef5;outline:none;padding:10px}.hint{color:#778596;font-size:11px;margin-top:11px}.hint code{color:#e0a13c;background:#17130d;padding:2px 5px;border-radius:5px}.toolbar{display:flex;gap:10px;margin-bottom:12px}.search{flex:1;max-width:420px;background:#101722;border:1px solid var(--line);color:#dfe7ef;border-radius:11px;padding:11px 13px;outline:none;font-size:12px}.table-card{overflow:hidden}table{width:100%;border-collapse:collapse}th{color:#657285;background:#0e141c;font-size:9px;letter-spacing:.09em;text-align:left;padding:13px 15px;border-bottom:1px solid var(--line)}td{font-size:11px;color:#aeb9c6;padding:12px 15px;border-bottom:1px solid #1a2230}tbody tr:hover{background:#121a25}tbody tr:last-child td{border-bottom:0}.state{display:inline-flex;align-items:center;gap:7px;font-size:10px}.state:before{content:"";width:6px;height:6px;border-radius:50%;background:#697585}.state.running:before{background:var(--ok)}.state.failed:before{background:var(--danger)}.actions{display:flex;justify-content:flex-end;gap:6px}.tiny{padding:6px 8px;border-radius:8px;font-size:9px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#7f8d9f;font-size:9px}.logs-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.log-panel{padding:20px;min-width:0}.log-panel pre{margin:0;height:calc(100vh - 220px);min-height:450px;overflow:auto;background:#090d13;border:1px solid #1c2531;border-radius:12px;padding:16px;color:#94a3b5;font:10px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.toast{position:fixed;right:24px;bottom:24px;background:#161f2a;border:1px solid #2b3747;color:#dce5ef;border-radius:12px;padding:12px 15px;font-size:11px;box-shadow:var(--shadow);transform:translateY(30px);opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.show{transform:none;opacity:1}.toast.bad{border-color:rgba(255,77,95,.4);color:#ff9da6}
@media(max-width:1050px){.app{grid-template-columns:76px 1fr}.sidebar{padding:24px 10px}.brand{padding:0;justify-content:center}.brand>div,.nav:not(.active)::after,.nav{font-size:0}.nav{justify-content:center;padding:12px}.nav span{width:auto;font-size:17px}.server-mini>div,.logout{display:none}.server-mini{justify-content:center;padding:13px 8px}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.logs-grid{grid-template-columns:1fr}.log-panel pre{height:520px}}
@media(max-width:720px){.app{display:block}.sidebar{position:fixed;left:0;right:0;top:auto;bottom:0;width:100%;height:66px;border-right:0;border-top:1px solid #1d2632;display:block;padding:7px;z-index:10}.sidebar>.brand,.side-bottom{display:none}.sidebar nav{margin:0;display:grid;grid-template-columns:repeat(6,1fr);gap:3px}.nav,.nav.active{display:grid;place-items:center;background:transparent;padding:7px 3px;color:#788697}.nav span{font-size:15px}.nav.active span{color:var(--accent)}main{padding:0 14px 92px}.topbar{height:82px}.topbar p{display:none}.topbar h1{font-size:19px}.pill{display:none}.hero{align-items:flex-start;flex-direction:column;padding:22px}.server-actions{width:100%;overflow:auto}.server-actions .btn{white-space:nowrap}.stats-grid{grid-template-columns:1fr 1fr}.stat{padding:15px;gap:10px}.stat-icon{width:36px;height:36px}.stat b{font-size:18px}.dashboard-grid{grid-template-columns:1fr}.table-card{overflow:auto}table{min-width:760px}.console-output{height:calc(100vh - 265px);min-height:360px}.command-bar{padding:8px}.command-bar .btn{padding:9px}.logs-grid{grid-template-columns:1fr}.log-panel pre{height:500px}.toast{left:14px;right:14px;bottom:82px}}

/* SSH edition */
.ssh-console-card{overflow:hidden}.ssh-console-card #terminal{height:calc(100vh - 210px);min-height:430px;background:#080b10;padding:10px}.terminal-tools{display:flex;align-items:center;gap:12px}.danger-hint{border-color:rgba(255,90,90,.25);color:#ffb0b0}.file-toolbar{gap:10px}.path-input{flex:1;min-width:240px}.file-row{cursor:pointer}.file-row:hover{background:rgba(255,255,255,.035)}.editor-card{margin-top:16px;padding:0;overflow:hidden}.editor-card .card-head{padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.07)}#fileEditor{display:block;width:100%;min-height:520px;resize:vertical;border:0;outline:0;background:#080b10;color:#dce5f2;padding:18px;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;tab-size:4}.actions{display:flex;gap:8px;align-items:center}.toolbar button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:760px){.ssh-console-card #terminal{height:65vh;min-height:380px}.file-toolbar{flex-wrap:wrap}.path-input{order:3;width:100%;flex-basis:100%}#fileEditor{min-height:55vh}.terminal-tools{gap:5px}.terminal-tools .link-btn{font-size:11px}}

/* mtaserver.conf visual editor */
.config-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.config-topbar h2{font-size:27px;margin:6px 0 5px}.config-topbar p{margin:0;max-width:680px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.save-state{border:1px solid rgba(53,208,127,.22);background:rgba(53,208,127,.07);color:#69db9c;border-radius:999px;padding:8px 10px;font-size:9px;font-weight:900;letter-spacing:.08em}.save-state.dirty{border-color:rgba(255,176,32,.28);background:rgba(255,176,32,.08);color:#ffc55b}.config-loading{border:1px solid rgba(255,159,26,.2);background:rgba(255,159,26,.06);color:#f6be69;border-radius:13px;padding:13px 15px;margin-bottom:14px;font-size:11px}.config-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:22px}.config-stat{padding:17px 18px;min-width:0}.config-stat small{display:block;color:#6e7a8b;font-size:8px;letter-spacing:.12em;font-weight:900}.config-stat b{display:block;font-size:25px;margin:5px 0 3px}.config-stat span{display:block;color:#6f7c8d;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.danger-stat b{color:#ff7784}.config-section-title{display:flex;justify-content:space-between;align-items:end;margin:8px 2px 10px}.config-section-title h3{font-size:15px;margin:0}.config-section-title p{font-size:10px;color:#718094;margin:4px 0 0}.config-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.config-block{background:linear-gradient(180deg,rgba(18,24,34,.96),rgba(14,19,27,.96));border:1px solid var(--line);border-radius:16px;padding:18px}.config-block-head{margin-bottom:14px}.config-block-head h3{font-size:13px;margin:0}.config-block-head p{font-size:9px;color:#6f7d8e;margin:4px 0 0}.config-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.config-field{margin:0;color:#9aa7b7;font-size:10px}.config-field>span{display:block;margin-bottom:6px;font-weight:800}.config-field input,.config-field select{display:block;width:100%;height:40px;border:1px solid #263241;background:#0b1119;color:#e4ebf2;border-radius:10px;padding:0 11px;outline:0;font-size:11px}.config-field input:focus,.config-field select:focus{border-color:rgba(255,159,26,.6);box-shadow:0 0 0 3px rgba(255,159,26,.07)}.config-field small{display:block;color:#546171;font-size:8px;margin-top:5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.resource-manager,.missing-card{padding:20px;margin-top:14px}.resource-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.resource-head h3{font-size:15px;margin:0}.resource-head p{font-size:10px;color:#718094;margin:5px 0 0}.resource-head code{color:#e4a84a}.resource-actions{display:flex;gap:7px;flex-wrap:wrap}.resource-toolbar{display:flex;align-items:center;gap:12px;margin:18px 0 12px}.resource-toolbar .search{max-width:none}.inline-check{margin:0;display:flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid #263241;background:#0d141d;border-radius:11px;padding:10px 12px;color:#98a4b4;font-size:10px}.inline-check input{accent-color:var(--accent)}.resource-tabs{display:flex;gap:7px;overflow-x:auto;padding-bottom:3px;margin-bottom:13px}.resource-tab{border:1px solid #24303e;background:#0d141d;color:#7f8c9d;border-radius:10px;padding:8px 10px;font-size:10px;font-weight:800;white-space:nowrap}.resource-tab b{display:inline-grid;place-items:center;min-width:19px;height:19px;border-radius:999px;background:#172230;color:#9aa7b8;margin-left:5px;font-size:8px}.resource-tab.active{border-color:rgba(255,159,26,.35);background:rgba(255,159,26,.08);color:#ffc15e}.resource-tab.active b{background:rgba(255,159,26,.15);color:#ffc96c}.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:650px;overflow:auto;padding:2px}.resource-card{position:relative;margin:0;display:flex;align-items:center;gap:11px;padding:12px;border:1px solid #202b39;background:#0d131b;border-radius:12px;cursor:pointer;min-width:0}.resource-card:hover{border-color:#324052}.resource-card.enabled{border-color:rgba(53,208,127,.23);background:linear-gradient(90deg,rgba(53,208,127,.05),#0d131b 38%)}.resource-card>input{position:absolute;opacity:0;pointer-events:none}.resource-toggle{width:34px;height:19px;border-radius:999px;background:#202a36;position:relative;flex:0 0 auto;transition:.15s}.resource-toggle:after{content:"";position:absolute;left:3px;top:3px;width:13px;height:13px;background:#718095;border-radius:50%;transition:.15s}.resource-card>input:checked+.resource-toggle{background:rgba(53,208,127,.25)}.resource-card>input:checked+.resource-toggle:after{left:18px;background:#52da91}.resource-main{min-width:0;flex:1}.resource-main b{display:block;color:#d9e2eb;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-main small{display:block;color:#617083;font-size:8px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-badges{display:flex;justify-content:flex-end;align-items:center;gap:4px;flex-wrap:wrap;max-width:42%}.resource-badges i{font-style:normal;font-size:7px;font-weight:900;letter-spacing:.04em;border-radius:6px;padding:4px 5px;white-space:nowrap}.cat.mapping{color:#84b7ff;background:rgba(101,165,255,.09);border:1px solid rgba(101,165,255,.18)}.cat.models{color:#d2a2ff;background:rgba(174,105,255,.08);border:1px solid rgba(174,105,255,.16)}.cat.resources{color:#a9b4c2;background:#151d27;border:1px solid #253141}.on-tag{color:#65dd9e;background:rgba(53,208,127,.08);border:1px solid rgba(53,208,127,.18)}.warn-tag{color:#ffc45f;background:rgba(255,176,32,.08);border:1px solid rgba(255,176,32,.18)}.soft-tag{color:#77869a;background:#121923;border:1px solid #202c3a}.missing-list{display:grid;gap:7px;margin-top:15px}.missing-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#0d131b;border:1px solid rgba(255,77,95,.14);border-radius:11px;padding:11px 12px}.missing-row b{display:block;color:#ff9ca6;font-size:11px}.missing-row small{display:block;color:#735f66;font-size:9px;margin-top:3px}.counter{display:inline-grid;place-items:center;min-width:21px;height:21px;border-radius:999px;background:rgba(255,77,95,.1);color:#ff7c89;font-size:9px;margin-left:5px}.empty-state{grid-column:1/-1;border:1px dashed #263241;border-radius:12px;padding:28px;text-align:center;color:#647386;font-size:10px}.bad-text{color:#ff8994}.raw-config-card{margin-top:14px;overflow:hidden}.raw-config-card summary{cursor:pointer;padding:16px 18px;color:#98a5b6;font-size:11px;font-weight:800}.raw-config-card[open] summary{border-bottom:1px solid #202a37}.raw-note{padding:12px 16px 0;color:#6d7b8d;font-size:9px}.raw-config-card textarea{display:block;width:100%;min-height:400px;background:#080c12;color:#8795a7;border:0;outline:0;padding:16px;resize:vertical;font:10px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.config-backup-line{display:flex;justify-content:space-between;gap:12px;padding:12px 3px;color:#647183;font-size:9px}.config-backup-line b{color:#8795a7;font-weight:700;text-align:right}.config-savebar{position:sticky;bottom:14px;margin-top:4px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px;z-index:3;background:rgba(16,21,30,.94);backdrop-filter:blur(18px)}.config-savebar b{display:block;font-size:11px}.config-savebar span{display:block;color:#6e7b8c;font-size:9px;margin-top:3px}.btn:disabled{opacity:.42;cursor:not-allowed;transform:none!important}
@media(max-width:1180px){.config-stats{grid-template-columns:repeat(3,1fr)}.config-settings{grid-template-columns:1fr}.resource-grid{grid-template-columns:1fr}}
@media(max-width:720px){.sidebar nav{grid-template-columns:repeat(7,1fr);overflow-x:auto}.config-topbar{align-items:flex-start;flex-direction:column}.config-topbar h2{font-size:23px}.config-actions{justify-content:flex-start;width:100%}.config-actions .btn{padding:9px 10px}.config-stats{grid-template-columns:repeat(2,1fr);gap:8px}.config-stat{padding:13px}.config-stat b{font-size:21px}.config-settings{gap:8px}.config-block{padding:14px}.config-fields{grid-template-columns:1fr}.resource-manager,.missing-card{padding:14px}.resource-head{align-items:flex-start;flex-direction:column}.resource-actions{width:100%}.resource-actions .btn{flex:1}.resource-toolbar{align-items:stretch;flex-direction:column}.inline-check{width:max-content}.resource-grid{max-height:none}.resource-badges{max-width:38%}.resource-badges .soft-tag{display:none}.missing-row{align-items:flex-start;flex-direction:column}.config-backup-line{flex-direction:column}.config-backup-line b{text-align:left}.config-savebar{bottom:74px}.config-savebar span{display:none}.config-savebar .btn{white-space:nowrap}}

/* v0.4 — mobile-first fixes + hard override for mtaserver.conf editor */
@media (max-width:720px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{overflow-x:hidden}
  main{width:100%;padding:0 12px 94px}
  .topbar{height:76px;min-width:0}
  .topbar>div:first-child{min-width:0}
  .topbar h1{font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .top-actions{gap:7px}.avatar{width:36px;height:36px}

  /* 7 navigation buttons fit correctly and stay tappable */
  .sidebar{height:68px;padding:6px 4px;overflow:hidden}
  .sidebar nav{display:grid!important;grid-template-columns:repeat(7,minmax(48px,1fr))!important;gap:2px!important;overflow-x:auto!important;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .sidebar nav::-webkit-scrollbar{display:none}
  .nav,.nav.active{min-width:48px;height:54px;padding:5px 2px!important}
  .nav span{font-size:17px!important;line-height:1}

  /* editor header */
  .config-topbar{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;margin:2px 0 14px!important}
  .config-topbar>div:first-child{width:100%;min-width:0}
  .config-topbar .eyebrow{font-size:9px;letter-spacing:.12em}
  .config-topbar h2{font-size:25px!important;line-height:1.1;margin:7px 0 7px!important}
  .config-topbar p{display:block!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.45;font-size:9px!important;color:#647286}
  .config-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;width:100%!important}
  .config-actions .save-state{grid-column:1/-1;width:max-content;max-width:100%;padding:7px 10px}
  .config-actions .btn{width:100%;min-width:0;min-height:44px;padding:10px 8px!important;font-size:11px!important;white-space:normal;line-height:1.15}
  .config-actions #configSave{background:linear-gradient(135deg,var(--accent),#ff8500);color:#241606}

  .config-loading{font-size:11px;line-height:1.45;padding:12px}

  /* summary cards */
  .config-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-bottom:20px!important}
  .config-stat{display:flex!important;flex-direction:column!important;justify-content:center;min-width:0!important;min-height:94px;padding:12px!important;overflow:hidden}
  .config-stat small{display:block!important;font-size:8px!important;line-height:1.25;letter-spacing:.08em!important;white-space:normal}
  .config-stat b{display:block!important;font-size:24px!important;line-height:1;margin:7px 0 5px!important}
  .config-stat span{display:block!important;font-size:8px!important;line-height:1.25;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%}
  .config-stat.danger-stat{grid-column:1/-1;min-height:78px}

  .config-section-title{margin:2px 1px 10px!important;align-items:flex-start!important}
  .config-section-title h3{font-size:18px!important;line-height:1.15}
  .config-section-title p{font-size:10px!important;line-height:1.45;margin-top:6px!important}

  /* settings cards */
  .config-settings{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-bottom:14px!important}
  .config-block{padding:13px!important;border-radius:14px!important;min-width:0}
  .config-block-head{margin-bottom:12px!important}
  .config-block-head h3{font-size:15px!important}
  .config-block-head p{font-size:9px!important;line-height:1.4}
  .config-fields{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .config-field{font-size:11px!important;margin:0!important}
  .config-field>span{font-size:11px;margin-bottom:6px}
  .config-field input,.config-field select{height:46px!important;font-size:16px!important;padding:0 12px!important;border-radius:11px!important}
  .config-field small{font-size:8px!important;overflow-wrap:anywhere}

  /* resource autostart manager */
  .resource-manager,.missing-card{padding:13px!important;margin-top:10px!important;border-radius:15px!important;overflow:hidden}
  .resource-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:11px!important}
  .resource-head h3{font-size:18px!important;line-height:1.15}
  .resource-head p{font-size:10px!important;line-height:1.45;margin-top:6px!important}
  .resource-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:7px!important;width:100%!important}
  .resource-actions .btn{width:100%;min-height:43px;padding:8px!important;font-size:10px!important;line-height:1.2;white-space:normal}
  .resource-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin:14px 0 10px!important}
  .resource-toolbar .search{width:100%!important;max-width:none!important;min-width:0;height:46px;font-size:16px!important}
  .inline-check{display:flex!important;width:100%!important;min-height:44px;margin:0!important;padding:10px 12px!important;font-size:11px!important;justify-content:flex-start}
  .inline-check input{width:18px;height:18px;flex:0 0 auto;margin:0}

  .resource-tabs{display:flex!important;gap:7px!important;overflow-x:auto!important;overflow-y:hidden;padding:1px 0 7px!important;margin:0 0 10px!important;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .resource-tabs::-webkit-scrollbar{display:none}
  .resource-tab{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto;min-height:40px;border:1px solid #24303e!important;background:#0d141d!important;color:#8e9bad!important;border-radius:10px!important;padding:8px 11px!important;font-size:10px!important;font-weight:800!important;white-space:nowrap!important}
  .resource-tab.active{border-color:rgba(255,159,26,.42)!important;background:rgba(255,159,26,.10)!important;color:#ffc15e!important}
  .resource-tab b{display:inline-grid!important;place-items:center!important;min-width:20px!important;height:20px!important;margin-left:6px!important;border-radius:999px!important;background:#172230!important;color:#9aa7b8!important;font-size:8px!important}
  .resource-tab.active b{background:rgba(255,159,26,.18)!important;color:#ffd07b!important}

  .resource-grid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;max-height:none!important;overflow:visible!important;padding:0!important}
  .resource-card{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;align-items:center!important;column-gap:10px!important;row-gap:7px!important;width:100%;min-width:0!important;margin:0!important;padding:12px!important;border-radius:12px!important}
  .resource-toggle{grid-column:1;grid-row:1/3;width:36px!important;height:21px!important}
  .resource-toggle:after{width:15px!important;height:15px!important}
  .resource-card>input:checked+.resource-toggle:after{left:18px!important}
  .resource-main{grid-column:2;grid-row:1;min-width:0!important}
  .resource-main b{font-size:12px!important;line-height:1.25}
  .resource-main small{font-size:8px!important;margin-top:4px!important;line-height:1.3}
  .resource-badges{grid-column:2;grid-row:2;display:flex!important;justify-content:flex-start!important;align-items:center!important;gap:4px!important;max-width:none!important;min-width:0;overflow-x:auto;scrollbar-width:none}
  .resource-badges::-webkit-scrollbar{display:none}
  .resource-badges i{font-size:7px!important;padding:4px 6px!important}
  .resource-badges .soft-tag{display:inline-block!important}
  .empty-state{padding:22px 13px!important;font-size:10px!important;line-height:1.45}

  .missing-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;padding:11px!important}
  .missing-row b{font-size:12px!important;overflow-wrap:anywhere}
  .missing-row small{font-size:9px!important;line-height:1.35}
  .missing-row .btn{width:100%;min-height:42px}

  .raw-config-card summary{padding:14px!important;font-size:11px!important}
  .raw-note{padding:10px 13px 0!important;font-size:9px!important;line-height:1.4}
  .raw-config-card textarea{min-height:280px!important;padding:13px!important;font-size:10px!important}
  .config-backup-line{display:flex!important;flex-direction:column!important;gap:5px!important;padding:11px 2px!important;font-size:9px!important;line-height:1.35}
  .config-backup-line b{text-align:left!important;overflow-wrap:anywhere}
  .config-savebar{position:sticky!important;bottom:76px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:9px!important;margin-top:4px!important;padding:11px!important;border-radius:13px!important;z-index:8}
  .config-savebar div{min-width:0}
  .config-savebar b{font-size:11px!important}
  .config-savebar span{display:block!important;font-size:8px!important;line-height:1.35;margin-top:3px!important}
  .config-savebar .btn{width:100%;min-height:44px!important}
}

@media (max-width:430px){
  main{padding-left:10px;padding-right:10px}
  .config-topbar h2{font-size:23px!important}
  .config-actions{grid-template-columns:1fr 1fr}
  .config-actions #configRestore,.config-actions #configSave{grid-column:auto}
  .config-stat{min-height:90px;padding:11px!important}
  .config-stat b{font-size:22px!important}
  .resource-manager,.missing-card{padding:11px!important}
  .resource-actions{grid-template-columns:1fr}
  .resource-actions .btn{min-height:41px}
  .resource-card{padding:11px!important}
}
