/* VAYA Admin application — v1.1 */
.vp-admin-shell {
    --va-bg:#050b18; --va-panel:#0a1527; --va-panel2:#0d192c; --va-border:#233550;
    --va-soft:#17263c; --va-text:#f3f7fd; --va-muted:#91a0b7; --va-purple:#9550f5;
    --va-cyan:#28bcec; --va-green:#45d88d; --va-red:#ff6475; --va-amber:#ffb42c;
    min-height:100vh; background:radial-gradient(circle at 75% 0,rgba(47,97,200,.1),transparent 29%),var(--va-bg); color:var(--va-text);
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.vp-admin-shell .vp-sidebar { width:195px; padding:0 16px; background:linear-gradient(180deg,#061021,#040b17); border-right:1px solid var(--va-border); color:var(--va-text); z-index:90; }
.vp-admin-shell .vp-sidebar-brand { height:84px; padding:0 8px; border:0; color:#fff; }
.vp-admin-brand { font-size:17px; white-space:nowrap; letter-spacing:.02em; }
.vp-admin-brand b { color:#8362ff; font-size:22px; letter-spacing:-.04em; }
.vp-admin-shell .vp-nav { padding:25px 0; }
.vp-admin-shell .vp-nav-item { height:49px; margin:0 0 9px; border:1px solid transparent; border-radius:7px; padding:0 14px; color:#c8d3e3; font-size:13px; gap:12px; }
.vp-admin-shell .vp-nav-item:hover { background:rgba(255,255,255,.04); color:#fff; }
.vp-admin-shell .vp-nav-item.active { color:#fff; background:linear-gradient(90deg,rgba(114,68,216,.28),rgba(54,82,180,.28)); border-color:#7452ef; box-shadow:inset 0 0 25px rgba(91,66,222,.08); }
.vp-admin-shell .vp-nav-icon { width:20px; display:grid; place-items:center; }
.vp-admin-shell .vp-nav-icon .vp-icon { width:18px; height:18px; }
.vp-admin-shell .vp-main { margin-left:195px; min-height:100vh; }
.vp-admin-shell .vp-topbar { height:88px; padding:0 26px; background:rgba(5,11,24,.88); backdrop-filter:blur(18px); border-color:var(--va-soft); }
.vp-admin-shell .vp-page-title { color:#fff; font-size:24px; letter-spacing:-.04em; }
.vp-admin-shell .vp-page-subtitle { color:#9dadc2; font-size:12px; }
.vp-admin-top-actions { margin-left:auto; display:flex; align-items:center; gap:12px; }
.vp-admin-access,.vp-monitoring-only { display:inline-flex; align-items:center; min-height:36px; padding:0 13px; border:1px solid #24536a; border-radius:7px; color:#33d6e9; font-size:11px; background:rgba(28,143,172,.07); }
.vp-admin-primary,.vp-admin-secondary { min-height:38px; border-radius:7px; padding:0 15px; font:650 12px inherit; cursor:pointer; }
.vp-admin-primary { border:0; color:#fff; background:linear-gradient(100deg,#8e42ef,#22b7e8); box-shadow:0 10px 24px rgba(38,102,218,.17); }
.vp-admin-secondary { border:1px solid #354964; color:#dce5f1; background:#091424; }
.vp-admin-shell .vp-content { padding:20px 26px 34px; }
.vp-admin-dashboard { max-width:1600px; margin:0 auto; }
.vp-admin-stat-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-bottom:16px; }
.vp-admin-stat-grid.is-servers { grid-template-columns:repeat(6,1fr); }
.vp-admin-stat-grid article { min-height:106px; display:grid; grid-template-columns:46px 1fr; grid-template-rows:1fr 1fr; align-items:center; gap:0 11px; padding:16px; background:linear-gradient(145deg,var(--va-panel2),#091322); border:1px solid var(--va-border); border-radius:8px; }
.vp-admin-stat-grid article>i { grid-row:1/3; width:42px; height:42px; border-radius:50%; display:grid; place-items:center; font-style:normal; border:1px solid; font-size:21px; }
.vp-admin-stat-grid article>i .vp-icon { width:20px; height:20px; }
.vp-admin-stat-grid article>i.purple { color:#aa65ff; background:rgba(149,80,245,.13); border-color:#6f3bac; }
.vp-admin-stat-grid article>i.green { color:var(--va-green); background:rgba(69,216,141,.11); border-color:#238b5a; }
.vp-admin-stat-grid article>i.cyan { color:var(--va-cyan); background:rgba(40,188,236,.11); border-color:#247995; }
.vp-admin-stat-grid article>i.blue { color:#4ea7ff; background:rgba(78,167,255,.1); border-color:#295c8c; }
.vp-admin-stat-grid article>i.amber { color:var(--va-amber); background:rgba(255,180,44,.11); border-color:#95651d; }
.vp-admin-stat-grid article>i.red { color:var(--va-red); background:rgba(255,100,117,.11); border-color:#923945; }
.vp-admin-stat-grid article>i.gray { color:#a6b3c7; background:rgba(166,179,199,.1); border-color:#46546a; }
.vp-admin-stat-grid article>span { align-self:end; color:#b8c4d5; font-size:10px; }
.vp-admin-stat-grid article>strong { align-self:start; color:#fff; font-size:24px; line-height:1.25; }
.vp-admin-panel { background:linear-gradient(145deg,rgba(12,25,45,.96),rgba(7,17,31,.98)); border:1px solid var(--va-border); border-radius:9px; overflow:visible; box-shadow:0 20px 50px rgba(0,0,0,.12); }
.vp-admin-overview-grid,.vp-admin-settings-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.vp-admin-section-head { min-height:67px; padding:14px 18px; border-bottom:1px solid var(--va-border); display:flex; align-items:center; justify-content:space-between; gap:15px; }
.vp-admin-section-head h2 { margin:0; color:#fff; font-size:16px; }
.vp-admin-section-head p { margin:3px 0 0; color:var(--va-muted); font-size:10px; }
.vp-admin-section-head a { color:#46c3f2; font-size:11px; }
.vp-admin-compact-list { padding:7px 17px 14px; }
.vp-admin-compact-list>div { display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid var(--va-soft); }
.vp-admin-compact-list>div:last-child { border:0; }
.vp-admin-compact-list>div>span:nth-child(2) { flex:1; }
.vp-admin-compact-list strong { display:block; color:#eef4fb; font-size:11px; }
.vp-admin-compact-list small { display:block; color:var(--va-muted); font-size:9px; margin-top:2px; }
.vp-admin-initials { width:35px; height:35px; border-radius:50%; display:grid; place-items:center; color:#e4d5ff; background:linear-gradient(145deg,#50328d,#172a5c); border:1px solid #7252c1; font-size:11px; flex:0 0 auto; }
.vp-capacity-block { padding:25px; }
.vp-capacity-block>span { color:var(--va-muted); font-size:11px; }
.vp-capacity-block>strong { float:right; font-size:17px; }
.vp-capacity-block>div,.vp-admin-progress { height:7px; margin:10px 0 7px; border-radius:99px; background:#1a2940; overflow:hidden; }
.vp-capacity-block>div i,.vp-admin-progress i { display:block; height:100%; background:linear-gradient(90deg,#8c4bef,#2ab5eb); border-radius:inherit; }
.vp-capacity-block small { color:var(--va-muted); font-size:9px; }
.vp-server-summary { margin:0 25px 20px; padding-top:16px; border-top:1px solid var(--va-border); display:flex; gap:25px; color:#cbd5e3; font-size:11px; }
.vp-server-summary i { display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:6px; }
.vp-server-summary .is-online { background:var(--va-green); }.vp-server-summary .is-offline { background:var(--va-red); }

.vp-admin-toolbar { display:grid; grid-template-columns:minmax(240px,420px) 150px; gap:10px; padding:14px 17px; border-bottom:1px solid var(--va-border); }
.vp-admin-toolbar input,.vp-admin-toolbar select,.vp-admin-drawer input,.vp-admin-drawer select { width:100%; min-height:38px; border:1px solid #31445f; border-radius:7px; background:#071120; color:#eef3fa; padding:0 11px; font:11px inherit; }
.vp-admin-table-wrap { overflow-x:auto; min-height:350px; }
.vp-admin-table { width:100%; border-collapse:collapse; color:#dce5f0; font-size:10px; }
.vp-admin-table th { padding:12px 15px; text-align:left; color:#8f9db2; font-size:9px; font-weight:600; text-transform:uppercase; letter-spacing:.03em; border-bottom:1px solid var(--va-border); }
.vp-admin-table td { padding:13px 15px; border-bottom:1px solid rgba(35,53,80,.82); vertical-align:middle; }
.vp-admin-table tbody tr:hover { background:rgba(41,75,124,.06); }
.vp-admin-user-cell,.vp-server-name { display:flex; align-items:center; gap:9px; min-width:150px; }
.vp-admin-user-cell strong,.vp-server-name strong { display:block; color:#f1f5fb; font-size:11px; }
.vp-admin-user-cell small,.vp-server-name small,.vp-cell-sub { display:block; color:var(--va-muted); font-size:8.5px; margin-top:3px; }
.vp-server-name>.vp-icon { width:30px; height:30px; padding:6px; color:#47bdf3; border:1px solid #26658b; background:rgba(39,139,202,.1); border-radius:50%; }
.vp-plan-badge { display:inline-block; padding:5px 8px; border-radius:5px; border:1px solid; }
.vp-plan-badge.is-basic { color:#5bb5ff; border-color:#316b9f; background:rgba(53,129,207,.08); }
.vp-plan-badge.is-pro { color:#b975ff; border-color:#6e3c9d; background:rgba(163,83,231,.08); }
.vp-plan-badge.is-plus { color:#52dfd2; border-color:#287d76; background:rgba(42,184,172,.08); }
.vp-admin-progress { width:125px; margin:6px 0 0; height:5px; }
.vp-admin-status { display:inline-flex; align-items:center; gap:6px; width:max-content; padding:5px 8px; border-radius:5px; font-style:normal; border:1px solid; font-size:9px; }
.vp-admin-status i { width:6px; height:6px; border-radius:50%; background:currentColor; }
.vp-admin-status.is-active { color:var(--va-green); border-color:#246947; background:rgba(69,216,141,.06); }
.vp-admin-status.is-suspended,.vp-admin-status.is-offline { color:var(--va-red); border-color:#71343e; background:rgba(255,100,117,.06); }
.vp-admin-status.is-expired { color:var(--va-amber); border-color:#73531d; background:rgba(255,180,44,.06); }
.vp-text-danger { color:var(--va-red)!important; }.vp-text-warning { color:var(--va-amber)!important; }.vp-text-success { color:var(--va-green)!important; }
.vp-actions-cell { position:relative; }
.vp-row-menu-trigger { width:30px; height:32px; border:1px solid #3c506d; border-radius:6px; background:#0a1627; color:#fff; cursor:pointer; font-size:18px; }
.vp-row-menu { position:absolute; z-index:60; top:45px; right:15px; width:165px; padding:6px; background:#101d30; border:1px solid #3a4d67; border-radius:7px; box-shadow:0 20px 45px rgba(0,0,0,.45); }
.vp-row-menu[hidden] { display:none; }
.vp-row-menu button { width:100%; border:0; border-radius:5px; padding:9px 10px; background:transparent; color:#dce5f1; text-align:left; font:10px inherit; cursor:pointer; }
.vp-row-menu button:hover { background:rgba(151,80,245,.1); color:#fff; }
.vp-admin-policy { margin:10px 15px 15px; padding:10px 12px; color:#aab9cc; border:1px solid #3e3873; border-radius:6px; background:rgba(91,64,170,.06); font-size:9px; }
.vp-admin-empty { padding:50px!important; text-align:center!important; color:var(--va-muted)!important; }

.vp-slot-chips { display:flex; gap:6px; min-width:205px; }
.vp-slot-chips>span { min-width:61px; padding:6px; border:1px solid; border-radius:5px; color:#c8d4e5; font-size:9px; }
.vp-slot-chips small { display:block; margin-top:2px; font-size:8px; }
.vp-slot-chips .is-active { color:#4bc8f5; border-color:#287f9f; }.vp-slot-chips .is-busy { color:var(--va-amber); border-color:#95651d; }.vp-slot-chips .is-inactive { color:#a6b3c7; border-color:#4a5a70; }.vp-slot-chips .is-offline,.vp-slot-chips .is-error { color:var(--va-red); border-color:#873943; }
.vp-server-row { cursor:pointer; }.vp-server-row.is-selected { outline:1px solid #7254eb; outline-offset:-1px; background:rgba(91,69,192,.08)!important; }
.vp-server-legend { display:flex; align-items:center; gap:24px; padding:15px 20px; color:#aebbd0; font-size:9px; }
.vp-server-legend span { white-space:nowrap; }.vp-server-legend i { display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:6px; }
.vp-server-legend i.active { background:#42bdf3; }.vp-server-legend i.busy { background:var(--va-amber); }.vp-server-legend i.inactive { background:#8c9bb2; }.vp-server-legend i.offline { background:var(--va-red); }
.vp-server-legend p { margin-left:auto; color:#8493aa; }

.vp-admin-plan-rules { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; padding:18px; }
.vp-admin-plan-rules article { padding:17px; border:1px solid var(--va-border); border-radius:7px; background:#071120; }
.vp-admin-plan-rules b { color:#b96fff; display:block; font-size:13px; }.vp-admin-plan-rules strong { display:block; margin:9px 0 5px; }.vp-admin-plan-rules span { color:var(--va-muted); font-size:9px; }
.vp-policy-list { list-style:none; margin:0; padding:16px 20px; }.vp-policy-list li { padding:10px 0 10px 23px; position:relative; border-bottom:1px solid var(--va-soft); color:#c8d3e2; font-size:10px; }.vp-policy-list li:before { content:'✓'; position:absolute; left:0; color:var(--va-green); }

.vp-admin-drawer[hidden] { display:none; }
.vp-admin-drawer { position:fixed; inset:0; z-index:999; }
.vp-admin-drawer-backdrop { position:absolute; inset:0; background:rgba(1,5,12,.62); backdrop-filter:blur(4px); }
.vp-admin-drawer>aside { position:absolute; top:0; right:0; width:min(465px,100%); height:100%; overflow:auto; padding:26px 25px; background:linear-gradient(180deg,#0d192b,#07111f); border-left:1px solid #344762; color:var(--va-text); box-shadow:-30px 0 80px rgba(0,0,0,.38); }
.vp-admin-drawer h2 { margin:0; font-size:21px; }.vp-drawer-sub { color:var(--va-muted); font-size:10px; line-height:1.55; margin:7px 0 20px; }
.vp-drawer-close { position:absolute; top:17px; right:18px; border:0; background:transparent; color:#a4b0c2; font-size:25px; cursor:pointer; }
.vp-admin-drawer form>label,.vp-duration-grid label { display:block; color:#dfe6f0; font-size:10px; font-weight:600; margin-bottom:13px; }
.vp-admin-drawer form>label>input,.vp-duration-grid input,.vp-duration-grid select { margin-top:6px; }
.vp-password-input { display:grid; grid-template-columns:1fr 90px; gap:8px; margin-top:6px; }.vp-password-input button { border:1px solid #6650aa; border-radius:6px; background:transparent; color:#d9c4ff; font:10px inherit; cursor:pointer; }
.vp-plan-picker { border:0; margin:5px 0 15px; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.vp-plan-picker legend { color:#dfe6f0; font-size:10px; font-weight:600; margin-bottom:7px; }.vp-plan-picker label { position:relative; cursor:pointer; }.vp-plan-picker input { position:absolute; opacity:0; }.vp-plan-picker span { min-height:108px; padding:12px; display:flex; flex-direction:column; border:1px solid #345070; border-radius:7px; background:#081321; }.vp-plan-picker input:checked+span { border-color:#9257ed; box-shadow:inset 0 0 0 1px #9257ed; background:rgba(132,65,216,.08); }.vp-plan-picker b { color:#63baff; font-size:13px; }.vp-plan-picker label:nth-of-type(2) b { color:#be73ff; }.vp-plan-picker label:nth-of-type(3) b { color:#55ded3; }.vp-plan-picker strong { margin:auto 0 5px; font-size:10px; }.vp-plan-picker small { color:var(--va-muted); font-size:8px; }
.vp-duration-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px; }.vp-admin-toggle { display:flex!important; align-items:center; justify-content:space-between; gap:15px; padding:12px; border:1px solid var(--va-border); border-radius:7px; }.vp-admin-toggle span { font-size:10px; }.vp-admin-toggle small { display:block; color:var(--va-muted); font-size:8px; margin-top:3px; }.vp-admin-toggle input { width:18px!important; min-height:auto!important; accent-color:var(--va-purple); }
.vp-admin-form-feedback { min-height:18px; margin:8px 0; color:var(--va-green); font-size:10px; }.vp-admin-form-feedback.is-error { color:var(--va-red); }
.vp-admin-drawer footer { position:sticky; bottom:-26px; display:grid; grid-template-columns:1fr 2fr; gap:9px; margin:15px -25px -26px; padding:15px 25px; background:#091424; border-top:1px solid var(--va-border); }
.vp-monitoring-only { margin:14px 0; color:#c69cff; border-color:#5d4387; background:rgba(137,83,204,.07); }
.vp-server-detail-list { border-bottom:1px solid var(--va-border); padding-bottom:12px; }.vp-server-detail-list>div { display:flex; justify-content:space-between; gap:20px; padding:8px 0; color:#c9d4e3; font-size:10px; }.vp-server-detail-list span:first-child { color:var(--va-muted); }.vp-server-slot-details { padding-top:14px; }.vp-server-slot-card { margin-bottom:10px; padding:14px; border:1px solid #3c506b; border-radius:7px; background:#081321; }.vp-server-slot-card.is-active { border-color:#267c9d; }.vp-server-slot-card.is-busy { border-color:#93641d; }.vp-server-slot-card.is-offline,.vp-server-slot-card.is-error { border-color:#823a45; }.vp-server-slot-card header { display:flex; justify-content:space-between; font-size:12px; }.vp-server-slot-card p { display:flex; justify-content:space-between; margin:9px 0 0; color:var(--va-muted); font-size:9px; }
.vp-admin-toast { position:fixed; z-index:1100; right:22px; bottom:22px; max-width:390px; padding:13px 17px; border:1px solid #3b8063; border-radius:7px; background:#0d2420; color:#baf3d6; box-shadow:0 18px 55px rgba(0,0,0,.42); font-size:11px; }.vp-admin-toast.is-error { border-color:#80404a; background:#291219; color:#ffc3ca; }

@media(max-width:1200px){.vp-admin-stat-grid,.vp-admin-stat-grid.is-servers{grid-template-columns:repeat(3,1fr)}.vp-admin-table{min-width:980px}.vp-admin-overview-grid,.vp-admin-settings-grid{grid-template-columns:1fr}}
@media(max-width:900px){.vp-admin-shell .vp-sidebar{transform:translateX(-100%);transition:.2s}.menu-open .vp-admin-shell .vp-sidebar{transform:translateX(0)}.vp-admin-shell .vp-main{margin-left:0}.vp-admin-shell .vp-mobile-menu{display:block;color:#fff}.vp-admin-shell .vp-topbar{padding:0 16px}.vp-admin-access{display:none}.vp-admin-shell .vp-content{padding:16px}.vp-admin-stat-grid,.vp-admin-stat-grid.is-servers{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.vp-admin-stat-grid,.vp-admin-stat-grid.is-servers{grid-template-columns:1fr 1fr}.vp-admin-stat-grid article{min-height:90px;padding:11px}.vp-admin-stat-grid article>strong{font-size:19px}.vp-admin-plan-rules{grid-template-columns:1fr}.vp-duration-grid{grid-template-columns:1fr}.vp-plan-picker{grid-template-columns:1fr}.vp-plan-picker span{min-height:75px}.vp-admin-top-actions .vp-admin-primary{padding:0 10px}.vp-admin-shell .vp-page-subtitle{display:none}}
