.vpn-page{background:#f5f7f8;color:#202b32;font-size:15px;letter-spacing:0}
.vpn-page header{background:#fff;border-bottom:1px solid #dbe1e4;backdrop-filter:none}
.vpn-page header>.container{flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.vpn-page header .nav{flex-wrap:wrap;gap:6px}.vpn-page header .brand{color:#172b38;letter-spacing:0}
.vpn-page header .btn{color:#3d505c;background:#fff;border:1px solid #e1e6e9;border-radius:6px;padding:6px 10px;box-shadow:none;font-size:13px;transform:none}
.vpn-page .container{max-width:1160px}.vpn-page a{color:#165c9c}.vpn-page .glass{background:#fff;border-color:#dbe1e4;color:#202b32;border-radius:8px;box-shadow:none}
.vpn-shell{min-width:0;padding:10px 0 36px}.vpn-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.vpn-eyebrow{font-size:12px;color:#637a87;margin-bottom:6px;font-weight:600}.vpn-shell h1{font-size:28px;line-height:1.25;margin:0;overflow-wrap:anywhere;letter-spacing:0}
.vpn-shell h2{font-size:19px;margin:0 0 16px}.vpn-shell h3{font-size:16px;margin:0 0 6px}.vpn-shell p{margin:8px 0 14px;overflow-wrap:anywhere}
.vpn-shell small{display:block;color:#657783;font-size:12px;margin-top:4px;overflow-wrap:anywhere}
.vpn-auth{max-width:460px;margin:0 auto;padding:28px 0}.vpn-form{max-width:580px;display:grid;gap:16px}.vpn-field{display:grid;gap:6px}
.vpn-page input,.vpn-page select,.vpn-page textarea{background:#fff;color:#202b32;border:1px solid #c6d1d7;border-radius:6px;padding:10px 12px;box-shadow:none;font:inherit;min-width:0}
.vpn-page input:focus,.vpn-page select:focus,.vpn-page textarea:focus{outline:2px solid #93b9dd;outline-offset:1px;border-color:#2873b4;box-shadow:none;background:#fff}
.vpn-page label{font-size:14px;font-weight:500}.vpn-page input[type=radio],.vpn-page input[type=checkbox]{width:17px;height:17px;accent-color:#2076af;padding:0;margin:0 7px 0 0;flex:none}
.vpn-field div[id^=id_]{display:flex;flex-wrap:wrap;gap:8px}.vpn-field div[id^=id_] label{display:flex;align-items:center;border:1px solid #d4dce0;background:#fff;padding:10px 13px;border-radius:6px;min-height:24px}
.vpn-field div[id^=id_] label:has(input:checked){border-color:#2b78ac;background:#eaf4fb}
.vpn-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vpn-button,.vpn-icon{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 14px;background:#fff;border:1px solid #ccd6dc;border-radius:6px;color:#234152!important;font:500 14px/1.35 system-ui;cursor:pointer;text-decoration:none!important;max-width:100%;text-align:center}
.vpn-button.primary{background:#126cb0;border-color:#126cb0;color:#fff!important}.vpn-button:hover,.vpn-icon:hover{filter:brightness(.96)}.vpn-button:disabled{opacity:.6;cursor:wait}.vpn-button.danger,.vpn-icon.danger{color:#b33343!important;border-color:#e0b1b9;background:#fff9fa}
.vpn-icon{width:40px;height:40px;padding:9px;flex:none}.vpn-shell svg{width:19px;height:19px;flex:none}.vpn-form>.vpn-button{justify-self:start}
.vpn-identity{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:#516774;margin-bottom:24px;overflow-wrap:anywhere}.vpn-identity strong{color:#202b32}
.vpn-badge{display:inline-block;font-size:12px;line-height:1.5;padding:3px 8px;background:#e7edf1;color:#466273;border-radius:4px;white-space:normal}.vpn-badge.success{color:#1a7050;background:#e0f1e8}.vpn-badge.danger{color:#a43243;background:#fce7eb}.vpn-badge.warning{color:#886322;background:#fbf0d8}
.vpn-muted{color:#687c87;font-size:13px}.vpn-warning{color:#956326;font-size:13px}.vpn-band{padding:24px 0;border-top:1px solid #dce3e7;margin-top:24px}
.vpn-profiles{display:grid;gap:12px}.vpn-profile-row{display:grid;grid-template-columns:44px minmax(150px,1fr) minmax(120px,180px) auto;gap:16px;align-items:center;padding:20px;background:#fff;border:1px solid #dbe2e6;border-radius:8px;min-width:0}
.vpn-profile-title{min-width:0}.vpn-profile-title h2{font-size:17px;margin:0 0 5px;overflow-wrap:anywhere}.vpn-profile-title p{margin:0;font-size:13px;color:#617784}
.vpn-device-icon{width:44px;height:44px;background:#edf2f7;color:#32739e;display:flex;align-items:center;justify-content:center;border-radius:6px}
.vpn-alert{display:flex;gap:14px;padding:18px;border-left:3px solid #397fbb;background:#edf5fc;margin:20px 0}.vpn-alert>svg{margin-top:3px}.vpn-alert.danger{border-color:#c04d60;background:#fff0f2}.vpn-alert.warning{border-color:#bc8b37;background:#fff7e8}.vpn-alert p{margin-bottom:6px}
.vpn-connect-grid{display:grid;grid-template-columns:minmax(280px,380px) minmax(300px,1fr);gap:60px;align-items:start;border-top:1px solid #dce3e7;padding-top:28px}
.vpn-qr{display:block;width:300px;height:300px;max-width:100%;aspect-ratio:1;object-fit:contain;background:#fff;margin-bottom:18px;image-rendering:pixelated}
.vpn-copy{margin:22px 0 12px}.vpn-copy>div{display:flex;gap:8px;margin-top:8px;min-width:0}.vpn-copy input{font:13px/1.5 ui-monospace,monospace;flex:1;min-width:0}
.vpn-steps{padding-left:23px;display:grid;gap:18px;margin:24px 0}.vpn-steps li{padding-left:6px}.vpn-steps li::marker{color:#126cb0;font-weight:700}
.vpn-shell details>summary{cursor:pointer;font-weight:600;padding:10px 0}.vpn-shell details>form{margin-top:14px}
.vpn-counters{display:flex;gap:56px;border-top:1px solid #dce3e7;border-bottom:1px solid #dce3e7;padding:20px 0}.vpn-counters>div{display:grid;gap:3px}.vpn-counters strong{font-size:28px;line-height:1.2}.vpn-counters span{font-size:13px;color:#647985}
.vpn-table-wrap{overflow-x:auto;max-width:100%;background:#fff;border-top:1px solid #dce3e7}.vpn-table-wrap table{font-size:14px;min-width:650px}.vpn-table-wrap th{font-size:12px;color:#5b7280;text-align:left;background:#edf2f5}.vpn-table-wrap th,.vpn-table-wrap td{padding:14px 12px}.vpn-table-wrap tbody tr+tr{border-color:#e3e8eb}.vpn-table-wrap td:first-child{overflow-wrap:anywhere;max-width:280px}
.vpn-node-form{display:flex;gap:12px;align-items:center}.vpn-node-form>label{display:flex;align-items:center;font-size:13px}.vpn-node-form>input{width:82px}
.vpn-filter{display:flex;gap:10px;margin-bottom:18px}.vpn-filter>input{max-width:400px}.vpn-filter>select{max-width:230px}.vpn-pagination{display:flex;gap:20px;justify-content:flex-end;margin-top:16px;font-size:13px}
.vpn-admin-profile{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #dce3e7}.vpn-admin-profile>div:first-child{min-width:0}.vpn-admin-profile h3{overflow-wrap:anywhere}.vpn-admin-profile form{display:flex;gap:8px;flex-wrap:wrap}.vpn-admin-profile .vpn-toolbar{align-content:center}
.vpn-page .errorlist{color:#b02e45;list-style:none;padding:0;margin:4px 0;font-size:13px}.vpn-page footer{font-size:12px;color:#71838c}
@media(max-width:700px){.vpn-page .container{padding:16px}.vpn-page header>.container{gap:8px!important}.vpn-page header .spacer{display:none}.vpn-page header .nav{width:100%}.vpn-shell h1{font-size:24px}.vpn-heading{align-items:flex-start}.vpn-auth{padding-top:10px}.vpn-profile-row{grid-template-columns:40px minmax(0,1fr);padding:16px;gap:12px}.vpn-profile-row>div:nth-child(3){grid-column:2}.vpn-profile-row>.vpn-button{grid-column:2;justify-self:start}.vpn-connect-grid{grid-template-columns:minmax(0,1fr);gap:28px}.vpn-counters{gap:22px;flex-wrap:wrap}.vpn-counters strong{font-size:24px}.vpn-filter{flex-wrap:wrap}.vpn-filter>input{max-width:none;flex:1 1 100%}.vpn-filter>select{flex:1;max-width:none}.vpn-admin-profile{flex-direction:column}.vpn-qr{width:280px;height:280px}.vpn-copy>div{width:100%}}
