:root{color:#dbeafe;background:#07111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}.page{max-width:1380px;margin:0 auto;padding:28px}header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.auth-box{flex-shrink:0;align-items:center;gap:8px;display:flex}h1{color:#fff;align-items:center;gap:10px;margin:0 0 8px;display:flex}p{color:#93a4ba}code,pre{color:#bfdbfe;background:#020617;border:1px solid #1f2a44;border-radius:12px}code{white-space:nowrap;padding:8px 10px}main{grid-template-columns:1.1fr .9fr;align-items:start;gap:18px;display:grid}.card{background:#0f172adb;border:1px solid #263650;border-radius:18px;padding:20px;box-shadow:0 16px 40px #00000040}h2{color:#fff;align-items:center;gap:8px;margin:6px 0 16px;display:flex}h3{color:#e0f2fe;margin-top:22px}.grid{gap:14px;margin-bottom:16px;display:grid}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{color:#cbd5e1;flex-direction:column;gap:7px;font-weight:600;display:flex}.field small{color:#8293aa;font-weight:400}input,select{color:#e5efff;background:#0b1220;border:1px solid #334155;border-radius:10px;outline:none;width:100%;padding:12px}input:focus,select:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf821}.check{color:#cbd5e1;align-items:center;gap:10px;margin:8px 0 16px;display:flex}.check input{width:auto}.actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}button{color:#fff;cursor:pointer;background:#334155;border:0;border-radius:10px;align-items:center;gap:7px;padding:11px 14px;font-weight:700;display:inline-flex}button:hover{filter:brightness(1.15)}button.primary{background:#0284c7}button.danger{background:#be123c}pre{white-space:pre-wrap;padding:14px;line-height:1.45;overflow:auto}.error{color:#fecdd3;border-color:#fb7185}.logs{margin-top:18px}.logs pre{min-height:280px;max-height:520px}.status{background:#475569;border-radius:999px;margin-left:10px;padding:5px 10px;font-size:13px}.status.running{color:#111827;background:#ca8a04}.status.completed{background:#16a34a}.status.failed{background:#dc2626}.status.stopped{color:#e2e8f0;background:#64748b}.status.pending{color:#041014;background:#0891b2}.status.destroyed{color:#fecaca;background:#7f1d1d}ol{color:#cbd5e1;line-height:1.8}@media (width<=980px){main,.two{grid-template-columns:1fr}header{flex-direction:column}.auth-box{flex-wrap:wrap}}button.ts{background:#7c3aed}.ok{color:#bbf7d0;border-color:#34d399}button.small{padding:6px 9px;font-size:12px}.folder-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.folder-list li{background:#0b1220;border:1px solid #263650;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.folder-list li.selected{border-color:#38bdf8}.folder-list small{color:#64748b;word-break:break-all}.folder-actions{flex-shrink:0;gap:6px;display:flex}.tabs{gap:8px;margin-bottom:16px;display:flex}.tabs button{background:#1e293b;border:1px solid #334155}.tabs button.active{background:#0284c7;border-color:#0284c7}main.single{grid-template-columns:1fr}.search-select{position:relative}.search-select-trigger{color:#e5efff;background:#0b1220;border:1px solid #334155;border-radius:10px;justify-content:space-between;width:100%;padding:12px;font-weight:400}.search-select-menu{z-index:30;background:#0f172a;border:1px solid #38bdf8;border-radius:10px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 16px 40px #00000080}.search-select-menu input{border:0;border-bottom:1px solid #334155;border-radius:0}.search-select-options{max-height:280px;overflow-y:auto}.search-select-option{cursor:pointer;color:#cbd5e1;padding:9px 12px;font-size:14px;font-weight:400}.search-select-option:hover{background:#1e293b}.search-select-option.active{color:#fff;background:#0c4a6e}.search-select-empty{color:#64748b;padding:12px}.dns-records{margin:8px 0 14px}.dns-records h3{margin:0 0 8px;font-size:15px}.dns-records table{border-collapse:collapse;width:100%;font-size:13px}.dns-records th,.dns-records td{text-align:left;color:#cbd5e1;border-bottom:1px solid #1e293b;padding:6px 8px;font-weight:400}.dns-records th{color:#8293aa;font-weight:700}.dns-records tr.conflict td{background:#be123c2e}.dns-records .mono{word-break:break-all;font-family:monospace}.nginx-panel{background:#0369a114;border:1px solid #0369a1;border-radius:14px;margin:18px 0 6px;padding:18px}.nginx-panel-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.nginx-panel-heading h3{margin:0 0 5px}.nginx-enable{flex-shrink:0;margin:0}.nginx-listeners{background:#0206174d;border:1px solid #334155;border-radius:12px;margin:14px 0;padding:14px}.nginx-listener{border-bottom:1px solid #1e293b;grid-template-columns:minmax(130px,.6fr) minmax(150px,.6fr) auto;align-items:end;gap:10px;padding:11px 0;display:grid}.nginx-listener:last-child{border-bottom:0;padding-bottom:0}.nginx-listener .field{font-size:12px}.nginx-listener input,.nginx-listener select{padding:9px}.nginx-sg-warning{color:#fde68a;background:#f59e0b14;border:1px solid #f59e0b;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px;display:flex}.origin-note{color:#fbbf24;margin:-8px 0 14px;display:block}.gitea-panel{background:#0f172ab3;border:1px solid #475569;border-radius:12px;margin:14px 0 18px;padding:16px}.gitea-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.gitea-heading h3{margin:0 0 5px;font-size:16px}.gitea-connect{background:#166534;border:1px solid #22c55e;flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.gitea-connect:disabled{opacity:.45;cursor:not-allowed}.gitea-account{color:#bbf7d0;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.git-deploy-fields{border-top:1px solid #334155;margin-top:14px;padding-top:14px}.gitea-badge{white-space:nowrap;color:#bbf7d0;background:#14532d;border:1px solid #22c55e;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:13px;font-weight:700;display:inline-flex}.link-button{color:inherit;opacity:.75;cursor:pointer;background:0 0;border:none;padding:0 0 0 4px;font-size:12px;font-weight:600;text-decoration:underline}.link-button:hover{opacity:1}.git-detection{background:#02061799;border:1px solid #334155;border-radius:10px;margin:14px 0;padding:12px 14px;font-size:13px}.git-detection.ok{color:#dcfce7;background:#14532d59;border-color:#22c55e}.git-detection.warn{color:#fef3c7;background:#78350f59;border-color:#f59e0b}.git-detection ul{margin:8px 0 6px;padding-left:18px}.git-detection li{margin:3px 0}.git-advanced{border-top:1px dashed #475569;margin-top:12px;padding-top:12px}.mode-picker{gap:6px;display:flex}.mode-picker .mode{background:#0b1220;border:1px solid #334155;flex:1;justify-content:center;font-size:13px;font-weight:600}.mode-picker .mode.active{background:#0284c7;border-color:#0284c7}.mode-picker .mode:disabled{opacity:.4;cursor:not-allowed}.warn{color:#fde68a;background:#fbbf2414;border:1px solid #fbbf24;border-radius:10px}.form-title-row{justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;display:flex}.form-title-row h2{margin-bottom:8px}.new-server-button{background:#0f766e;border:1px solid #14b8a6;flex-shrink:0}.addon-heading{border-bottom:1px solid #263650;margin:24px 0 12px;padding-bottom:8px;font-size:16px}.ebs-panel{background:#0f172a8f;border:1px solid #475569;border-radius:14px;margin:0 0 18px;padding:18px}.ebs-panel h4{color:#e0f2fe;margin:2px 0 6px;font-size:15px}.ebs-panel h4:not(:first-child){border-top:1px solid #334155;margin-top:24px;padding-top:18px}.ebs-panel>p{margin:0 0 14px}.data-volume-modes{gap:7px;margin:12px 0 16px;display:flex}.data-volume-modes .mode{background:#0b1220;border:1px solid #334155;flex:1;justify-content:center;font-size:13px}.data-volume-modes .mode.active{background:#0284c7;border-color:#38bdf8}.ebs-data-fields{margin-top:16px}.ebs-safety{min-height:0;margin:12px 0 0;font-size:12px}.security-rules{background:#02061759;border:1px solid #334155;border-radius:14px;margin:14px 0 22px;padding:16px}.security-rules-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.security-rule{border-bottom:1px solid #1e293b;grid-template-columns:110px 110px 110px minmax(170px,1fr) minmax(190px,1.2fr) auto;align-items:end;gap:10px;padding:12px 0;display:grid}.security-rule:last-child{border-bottom:0;padding-bottom:0}.security-rule .field{font-size:12px}.security-rule input,.security-rule select{padding:9px}.security-rule input:disabled{opacity:.5}.automatic-rule{background:#0ea5e90f;border:1px solid #38bdf84d;border-radius:10px;margin-top:8px;padding:12px}.automatic-rule input:disabled{opacity:.85;color:#bae6fd}.automatic-rule-badge{color:#e0f2fe;background:#075985;border-radius:999px;place-self:end start;padding:8px 10px;font-size:11px;font-weight:800}.automatic-rule-badge.public{color:#ffedd5;background:#9a3412}.rule-remove{height:38px;margin-bottom:1px}.empty-rules{color:#64748b;border:1px dashed #334155;border-radius:10px;margin-top:12px;padding:12px;font-weight:400}@media (width<=1100px){.security-rule{grid-template-columns:repeat(3,minmax(0,1fr))}.rule-remove{place-self:end start}}@media (width<=680px){.form-title-row,.nginx-panel-heading,.nginx-sg-warning,.gitea-heading{flex-direction:column;align-items:stretch}.new-server-button,.gitea-connect{justify-content:center}.security-rule{grid-template-columns:repeat(2,minmax(0,1fr))}.security-rule .field:nth-child(4),.security-rule .field:nth-child(5){grid-column:1/-1}.nginx-listener{grid-template-columns:repeat(2,minmax(0,1fr))}.nginx-listener .rule-remove{grid-column:1/-1}.data-volume-modes{flex-direction:column}}.auth-screen{background:radial-gradient(circle at 50% 20%,#0c4a6e 0,#07111f 38%,#020617 100%);place-items:center;min-height:100vh;padding:28px;display:grid}.login-card{flex-direction:column;gap:16px;width:min(440px,100%);padding:34px;display:flex}.login-card h1{justify-content:center;margin:0}.login-card>p{text-align:center;margin:0 0 6px;line-height:1.6}.login-icon{color:#fff;background:linear-gradient(135deg,#0284c7,#7c3aed);border-radius:22px;place-items:center;width:72px;height:72px;margin:0 auto;display:grid;box-shadow:0 12px 30px #0284c74d}.login-submit{justify-content:center;width:100%;padding:13px}.login-submit:disabled{opacity:.65;cursor:wait}.login-error{min-height:0;margin:0}.role-badge{color:#bae6fd;white-space:nowrap;background:#0c4a6e;border:1px solid #0369a1;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:700}.role-badge.admin{color:#ddd6fe;background:#4c1d95;border-color:#7c3aed}.admin-page{flex-direction:column;gap:18px;display:flex}.key-create-form{gap:10px;margin:16px 0;display:flex}.key-create-form input{max-width:520px}.created-key{color:#bbf7d0;background:#10b98114;border:1px solid #34d399;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0;padding:14px;display:flex}.created-key strong{width:100%}.created-key code{overflow-wrap:anywhere;white-space:normal;max-width:100%}.admin-table-wrap{width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th,.admin-table td{text-align:left;vertical-align:top;color:#cbd5e1;border-bottom:1px solid #1e293b;padding:9px 10px}.admin-table th{color:#8293aa;white-space:nowrap}.admin-table code{white-space:nowrap;padding:3px 6px;display:inline-block}.audit-table{min-width:1100px}.audit-details{overflow-wrap:anywhere;max-width:280px}.audit-ok{color:#86efac!important}.audit-fail{color:#fda4af!important}.audit-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.audit-header h2{margin-bottom:10px}.audit-page-size{color:#94a3b8;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.audit-page-size select{width:auto;min-width:78px;padding:7px 30px 7px 9px}.audit-pagination{color:#cbd5e1;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:14px;display:flex}.audit-pagination button:disabled{opacity:.45;cursor:not-allowed;filter:none}.audit-pagination span{text-align:center;min-width:120px;font-size:13px}.server-results{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:12px 0;display:grid}.server-result{margin:0;font-size:14px;line-height:1.7;min-height:0!important}@media (width<=620px){.page{padding:16px}.key-create-form{flex-direction:column}.auth-box code{display:none}.audit-pagination{justify-content:center}}
