:root{--bg:#161616;--surface:#202020;--card:#262626;--raised:#303030;--line:#3b3b3b;--text:#f3f3f3;--muted:#b9b9b9;--subtle:#909090;--amber:#ffc107;--amber-soft:#342b10;--green:#88cba5;--red:#e59b98;--blue:#97b9e2;--radius:14px;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}
.brand.wordmark-brand,.wordmark-brand.topbar-brand{display:flex;flex-direction:column;align-items:flex-start;gap:6px;flex:none}.brand-wordmark{display:block;width:165px;max-width:100%;height:auto;object-fit:contain}.auth-brand .brand-wordmark{width:260px}.topbar-brand .brand-wordmark{width:90px}.wordmark-brand .brand-control{display:block;margin:0;font-size:10px;font-weight:500;line-height:1;letter-spacing:2px;color:#a5a5a5}.topbar-brand .brand-control{font-size:9px;letter-spacing:1.8px}@media(max-width:760px){.topbar>.topbar-brand{display:none}}
.language-control{display:flex;align-items:center;gap:8px;flex:none}.language-control label{font-size:11px;font-weight:500;margin:0;color:var(--muted)}.language-control select{height:34px;min-width:110px;max-width:145px;padding:5px 28px 5px 10px;font:inherit;font-size:12px;color:var(--text);background:#252525;border:1px solid #505050;border-radius:7px;color-scheme:dark;cursor:pointer}.language-control select:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.auth-language-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:21px}.auth-language-row .local-badge{margin:0}.topbar-actions .language-control{margin-left:1px}@media(max-width:760px){.topbar-actions{flex-wrap:wrap}.topbar:has(.language-control){height:auto;min-height:66px;padding-top:10px;padding-bottom:10px}.topbar-actions .language-control label{display:none}.language-control select{min-width:103px;max-width:120px}.auth-language-row{gap:10px}.auth-language-row .language-control{flex-wrap:wrap;justify-content:flex-end;gap:5px}.auth-language-row .language-control label{font-size:10px}.topbar-actions .account-summary{max-width:130px}}
*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.5}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.52}button,input{outline:none}button:focus-visible,input:focus-visible{outline:2px solid var(--amber);outline-offset:3px}button{color:inherit}input{width:100%;height:46px;padding:10px 13px;border:1px solid #4a4a4a;border-radius:8px;color:var(--text);background:#1c1c1c;transition:border-color .15s}input::placeholder{color:#8f8f8f}input:focus{border-color:var(--amber)}input::-webkit-search-cancel-button{display:none}label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}h1,h2,p{margin:0}h1{font-size:34px;line-height:1.18;letter-spacing:-1px;font-weight:650}h2{font-size:18px;letter-spacing:-.25px;font-weight:600}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}[hidden]{display:none!important}.muted{color:var(--muted)}.field-note{color:var(--subtle);font-size:12px;line-height:1.6;margin-top:8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:41px;padding:9px 15px;border:1px solid transparent;border-radius:8px;background:none;font-size:13px;font-weight:600;white-space:nowrap;transition:background .15s,border-color .15s}.button-primary{background:var(--amber);color:#1b1708;border-color:var(--amber)}.button-primary:hover:not(:disabled){background:#ffd04a;border-color:#ffd04a}.button-secondary{border-color:#484848;background:#292929}.button-secondary:hover:not(:disabled){background:#353535;border-color:#626262}.button-quiet{color:var(--muted);padding:8px 10px}.button-quiet:hover:not(:disabled){color:#fff;background:#343434}.button-danger{background:#a54640;border-color:#b6524c;color:#fff}.button-danger:hover:not(:disabled){background:#b9514a}.button-small{min-height:34px;padding:5px 11px;font-size:12px}.local-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid #544621;border-radius:6px;padding:4px 9px;color:#e1c777;background:#302916;font-size:11px;line-height:1.4;font-weight:600;white-space:nowrap}.local-badge:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--amber)}.brand{display:flex;align-items:center;gap:11px;font-size:19px;font-weight:650;letter-spacing:-.5px;line-height:1.2}.brand small{display:block;color:var(--subtle);font-size:11px;letter-spacing:.5px;font-weight:500;margin-top:5px}.brand-mark{display:grid;place-items:center;color:var(--amber);width:37px;height:39px}.brand-mark svg{width:33px;height:33px;stroke-width:1.6}.boot{height:100vh;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.app-shell{display:flex;min-height:100vh}.sidebar{width:224px;flex:none;background:#202020;border-right:1px solid #303030;padding:30px 16px 24px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:10}.sidebar .brand{margin:0 10px 45px}.nav-label{font-size:10px;letter-spacing:1.5px;color:#818181;margin:0 14px 13px;font-weight:650}.sidebar nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:12px;padding:13px 14px;width:100%;border:1px solid transparent;border-radius:8px;text-align:left;color:#bcbcbc;font-weight:550;background:transparent;font-size:13px}.nav-item svg{width:20px;height:20px}.nav-item:hover{color:#fff;background:#292929}.nav-item.is-active{color:var(--amber);background:#3a3116;border-color:#55451a}.sidebar-bottom{margin-top:auto;display:flex;align-items:flex-start;gap:9px;padding:20px 8px 0;border-top:1px solid #353535;color:#c6c6c6;font-size:11px}.sidebar-bottom small{display:block;font-size:10px;color:#8d8d8d;margin-top:4px;line-height:1.5}.local-dot{width:6px;height:6px;background:#8c9d8b;border-radius:50%;margin-top:5px;flex:none}.workspace{margin-left:224px;flex:1;min-width:0}.topbar{height:77px;border-bottom:1px solid #303030;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 40px;color:#ababab;font-size:12px}.topbar-actions{display:flex;align-items:center;gap:19px}.main-content{padding:37px 40px 32px;max-width:1700px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:29px}.page-heading .muted{font-size:13px;margin-top:11px}.eyebrow{font-size:10px;letter-spacing:1.75px;color:#a6a6a6;font-weight:650;margin-bottom:10px}.page-heading>.button{margin-top:18px}.device-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden}.search-area{padding:24px 25px 18px}.search-area label{margin-bottom:10px;font-size:13px}.search-input{position:relative;max-width:700px}.search-input>svg{position:absolute;top:14px;left:14px;width:20px;height:20px;color:#a2a2a2;pointer-events:none}.search-input input{height:48px;padding-left:44px;padding-right:43px;background:#1c1c1c;border-color:#4a4a4a;font-size:13px}.clear-search{position:absolute;right:6px;top:6px;border:0;border-radius:5px;background:transparent;width:35px;height:35px;color:#b7b7b7;font-size:22px;line-height:1}.clear-search:hover{background:#373737;color:#fff}.filter-bar{display:flex;align-items:center;gap:8px;padding:0 25px 21px;flex-wrap:wrap}.filter-chip{display:inline-flex;align-items:center;gap:7px;background:#242424;border:1px solid #444;border-radius:7px;min-height:35px;padding:6px 11px;color:#b7b7b7;font-size:12px;font-weight:600;white-space:nowrap}.filter-chip>span:last-child{border-radius:4px;background:#363636;min-width:22px;text-align:center;padding:0 5px;font-size:10px;line-height:19px;color:#c6c6c6}.filter-chip.is-active{background:#3a3116;border-color:#7c6320;color:#ffce3d}.filter-chip.is-active>span:last-child{background:#5b491b;color:#ffdc70}.filter-chip:hover{border-color:#8a8a8a}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex:none}.dot-active{background:#88cba5}.dot-pending{background:#e5c066}.dot-blocked{background:#d89794}.list-state{margin-left:auto;color:var(--subtle);font-size:11px}.table-wrap{overflow-x:auto;min-height:70px}table{border-collapse:collapse;text-align:left;width:100%;min-width:810px}th{height:43px;background:#212121;color:#aaa;font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;border-top:1px solid #393939;border-bottom:1px solid #393939;padding:12px 17px;white-space:nowrap}th:first-child,td:first-child{padding-left:25px}th:last-child,td:last-child{padding-right:25px}td{padding:18px 17px;border-bottom:1px solid #383838;font-size:12px;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#2a2a2a}.device-identifier{display:flex;align-items:center;gap:6px}.device-identifier code{font-family:"Cascadia Code",Consolas,monospace;font-size:11px;letter-spacing:-.25px;color:#e2e2e2;white-space:nowrap}.copy-id{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;color:#878787;width:26px;height:27px;border-radius:4px}.copy-id svg{width:14px;height:14px}.copy-id:hover{color:var(--amber);background:#383838}.device-name{font-weight:550;color:#dedede;font-size:12px;max-width:190px;overflow-wrap:anywhere}.device-note{color:#a9a9a9;font-size:10px;margin-top:5px;max-width:200px;overflow-wrap:anywhere}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:5px;font-size:10px;font-weight:600;border:1px solid #454545;white-space:nowrap}.status-active{background:#25362c;border-color:#3d5947;color:#a9d8bb}.status-pending{background:#3e341c;border-color:#67552a;color:#e9ce8b}.status-blocked,.status-expired{background:#3b2928;border-color:#66413e;color:#e6aaa6}.status-badge .status-dot{width:5px;height:5px;background:currentColor}.date-cell{color:#b9b9b9;font-size:11px;white-space:nowrap}.actions-heading{text-align:right}.device-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.approve-button{color:#f1cd68;border:1px solid #68562c;background:#3a321f;font-size:11px;min-height:32px;padding:5px 10px}.approve-button:hover:not(:disabled){border-color:#b49340;background:#504221}.block-button{color:#ceacaa;border:1px solid #5d4543;background:transparent;font-size:11px;min-height:32px;padding:5px 10px}.block-button:hover:not(:disabled){background:#482d2b;border-color:#a26964}.table-footer{border-top:1px solid #393939;min-height:64px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 25px;font-size:11px;color:#a9a9a9}.pagination{display:flex;align-items:center;gap:12px}.pagination>span{color:#aaa;font-size:11px;white-space:nowrap}.page-footnote{color:#8e8e8e;font-size:11px;margin-top:17px;max-width:850px;line-height:1.7}.empty-state{text-align:center;padding:43px 30px 48px;border-top:1px solid #393939;min-height:270px}.empty-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:16px;background:#303030;color:#a1a1a1}.empty-icon svg{width:38px;height:38px;stroke-width:1.5}.empty-state h2{font-size:17px;font-weight:550}.empty-state p{font-size:12px;max-width:410px;margin:9px auto 0;line-height:1.8;color:#aaa}.empty-state .button{margin-top:19px}.notice{padding:13px 16px;margin-bottom:20px;border:1px solid;border-radius:9px;font-size:12px}.notice-error{color:#efc1be;background:#3b2524;border-color:#704642}
.config-card{max-width:880px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.config-section{padding:26px 30px;border-bottom:1px solid #3b3b3b}.section-heading{display:flex;align-items:flex-start;gap:13px;margin-bottom:23px}.section-number{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;background:#3b3320;border:1px solid #594b28;color:#e2bd55;font-size:10px;font-weight:600;flex:none;margin-top:2px}.section-heading h2{font-size:16px}.section-heading p{font-size:12px;line-height:1.7;color:#a5a5a5;margin-top:6px;max-width:630px}.config-section>label,.config-section>input,.config-section>.pin-input,.config-section>.field-note{margin-left:42px;width:calc(100% - 42px)}.config-section>input{max-width:690px}.pin-input{display:flex;gap:10px;align-items:center;max-width:385px}.pin-input input{max-width:190px;letter-spacing:3px;font-family:"Cascadia Code",Consolas,monospace}.pin-input .button{font-size:11px}.config-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 30px;background:#222}.config-footer>span{font-size:11px}.revision-tag{font-size:11px;color:#aaa;border:1px solid #3e3e3e;background:#242424;padding:6px 10px;border-radius:6px;white-space:nowrap}.unsaved{color:#e5c066!important}.form-error{color:#edb6b1;font-size:12px;line-height:1.65;margin-top:14px}.auth-screen{display:grid;place-items:center;min-height:100vh;padding:30px;background:radial-gradient(ellipse at top,#312b1b 0,#1b1b1b 45%,#161616 80%)}.auth-card{width:100%;max-width:460px;border:1px solid #414141;border-radius:18px;background:#242424;padding:35px 37px 29px;box-shadow:0 20px 90px #0005}.auth-brand{margin-bottom:28px}.auth-card>.local-badge{margin-bottom:19px}.auth-card h1{font-size:29px;letter-spacing:-.7px}.auth-card>.muted{font-size:12px;line-height:1.8;margin-top:11px;margin-bottom:27px}.auth-card input{margin-bottom:19px;background:#1b1b1b}.auth-card label{font-size:12px;margin-bottom:8px}.auth-card #password-repeat-row input{margin-bottom:0}.auth-card #password-repeat-row .field-note{margin-bottom:19px}.auth-submit{width:100%;margin-top:7px;height:46px}.auth-footnote{font-size:10px;color:#929292;line-height:1.7;border-top:1px solid #3a3a3a;margin-top:27px;padding-top:19px}.modal{color:var(--text);background:#292929;border:1px solid #515151;border-radius:15px;padding:29px;max-width:480px;width:calc(100% - 36px);box-shadow:0 22px 100px #0009}.modal::backdrop{background:#000a;backdrop-filter:blur(3px)}.modal-heading{display:flex;align-items:center;gap:12px;margin-bottom:15px}.modal-heading h2{font-size:21px}.warning-mark{display:grid;place-items:center;width:33px;height:33px;background:#4e302d;color:#f2b1aa;border:1px solid #79504c;border-radius:9px;font-size:18px;font-weight:600}.modal p{color:#b9b9b9;font-size:12px;line-height:1.8}.modal-device{display:grid;gap:5px;background:#202020;border:1px solid #3b3b3b;border-radius:8px;padding:13px 15px;margin:19px 0 22px}.modal-device strong{font-size:12px}.modal-device code{font-size:11px;overflow-wrap:anywhere;color:#aaa}.modal label{font-size:12px}.optional{color:#999;font-weight:400}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.toast{position:fixed;bottom:27px;left:calc(50% + 112px);transform:translateX(-50%);background:#373124;border:1px solid #7a6531;color:#f0db9e;padding:12px 19px;border-radius:9px;box-shadow:0 12px 45px #0006;z-index:100;font-size:12px;max-width:calc(100% - 40px)}
.device-identifier code.short-code,.modal-device code.short-code{font-size:14px;letter-spacing:.5px;color:var(--text)}
a.button{text-decoration:none}a.button:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.backup-copy-note{display:flex;align-items:flex-start;gap:14px;padding:21px 23px;border:1px solid #65532b;border-radius:var(--radius);background:#30291a;margin-bottom:23px}.backup-copy-note>svg{width:23px;height:23px;color:#e2bd55;margin-top:2px}.backup-copy-note h2{font-size:15px;color:#efd598}.backup-copy-note p{font-size:12px;line-height:1.8;color:#c9bea3;margin-top:7px;max-width:850px}.backup-setup-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:25px 28px;margin-bottom:23px;max-width:1050px}.backup-setup-card>h2{font-size:18px}.backup-setup-card>p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:10px;max-width:820px}.backup-password-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:23px;max-width:820px}.backup-password-fields input{max-width:400px}.backup-setup-card>.field-note{font-size:11px;color:var(--subtle);margin-top:9px}.backup-setup-card>.form-error{color:#edb6b1}.backup-setup-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px}.backup-setup-actions>.muted{font-size:11px}.backup-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:21px}.backup-status-card{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:20px 22px;min-width:0}.backup-card-label{display:block;font-size:10px;letter-spacing:.55px;text-transform:uppercase;color:var(--subtle);margin-bottom:10px}.backup-status-card>strong{display:block;font-size:16px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.backup-status-card>p{font-size:11px;color:var(--subtle);line-height:1.8;margin-top:9px;max-width:330px}.backup-status-success{color:#a9d8bb}.backup-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 24px}.backup-files-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden}.backup-files-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:19px 23px}.backup-files-heading h2{font-size:16px}.backup-files-heading .muted{font-size:11px;white-space:nowrap}.backup-files{list-style:none;padding:0;margin:0}.backup-file{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 23px;border-bottom:1px solid var(--line)}.backup-file:last-child{border-bottom:0}.backup-file-description{display:grid;gap:6px;min-width:0}.backup-file-name{display:block;font-family:"Cascadia Code",Consolas,monospace;font-size:12px;overflow-wrap:anywhere;color:#e2e2e2}.backup-file-meta{font-size:11px;color:var(--subtle)}.backup-file>.button{flex:none}.backup-files-empty{font-size:12px;color:var(--subtle);padding:25px 23px;line-height:1.8}
.backup-actions>a.button,.backup-actions>a.button:visited,.backup-file>a.button,.backup-file>a.button:visited{color:var(--text);text-decoration:none}
@media(max-width:1000px){.backup-overview{grid-template-columns:1fr}.backup-status-card{padding:18px 21px}.backup-status-card>p{max-width:none}}
@media(max-width:760px){.sidebar nav{flex-wrap:wrap}.backup-copy-note{padding:18px;gap:11px}.backup-copy-note h2{font-size:14px}.backup-copy-note p{font-size:11px}.backup-setup-card{padding:21px 19px}.backup-password-fields{grid-template-columns:1fr;gap:18px}.backup-password-fields input{max-width:none}.backup-setup-actions{align-items:stretch;flex-direction:column;gap:13px}.backup-overview{gap:11px}.backup-actions{align-items:stretch;flex-direction:column}.backup-files-heading{padding:18px}.backup-files-heading h2{font-size:15px}.backup-file{padding:18px;gap:12px;align-items:flex-start;flex-direction:column}.backup-file>.button{align-self:flex-start}.backup-file-name{font-size:11px}.backup-files-empty{padding:21px 18px}.backup-files-heading .muted{font-size:10px}}
@media(min-width:1500px){.main-content{padding-top:43px}.search-input{max-width:800px}td{padding-top:21px;padding-bottom:21px}.device-identifier code{font-size:12px}}
@media(max-width:1150px){.sidebar{width:200px;padding-left:12px;padding-right:12px}.sidebar .brand{font-size:17px;margin-left:6px;margin-right:0}.workspace{margin-left:200px}.main-content{padding:28px 24px}.topbar{padding:0 24px;height:70px}.nav-item{padding-left:11px;gap:10px;font-size:12px}.sidebar-bottom{font-size:10px}.sidebar-bottom small{font-size:9px}.search-area{padding:21px 20px 17px}.filter-bar{padding:0 20px 19px}.table-footer{padding:13px 20px}.list-state{width:100%;margin-left:0;margin-top:3px}.toast{left:calc(50% + 100px)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:relative;width:100%;border-right:0;border-bottom:1px solid #353535;padding:17px 18px 12px}.sidebar .brand{margin:0 0 18px;font-size:17px}.sidebar .brand-mark{width:28px;height:28px}.sidebar .brand-mark svg{width:28px;height:28px}.brand small{font-size:10px;margin-top:3px}.nav-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:8px}.nav-item{width:auto;padding:10px 13px;font-size:12px}.nav-item svg{width:17px;height:17px}.workspace{margin-left:0}.topbar{height:59px;padding:0 20px}.topbar>span{display:none}.topbar-actions{justify-content:space-between;width:100%;gap:10px}.main-content{padding:25px 18px}.page-heading{align-items:flex-start;gap:13px;margin-bottom:23px}.page-heading h1{font-size:28px}.page-heading .muted{font-size:12px;line-height:1.7}.page-heading>.button{padding:8px 10px;font-size:0;min-width:38px;margin-top:24px}.page-heading>.button svg{width:18px;height:18px}.eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:8px}.search-area{padding:20px 17px 15px}.search-input input{font-size:12px;padding-left:38px}.search-input>svg{left:12px;width:17px;height:17px;top:16px}.filter-bar{padding:0 17px 17px;gap:6px}.filter-chip{font-size:11px;padding:6px 8px;gap:5px}.filter-chip>span:last-child{min-width:18px;font-size:9px}.table-footer{padding:13px 17px;flex-wrap:wrap;gap:12px}.pagination{width:100%;justify-content:space-between}.config-section{padding:23px 19px}.config-section>label,.config-section>input,.config-section>.pin-input,.config-section>.field-note{margin-left:0;width:100%}.section-heading{gap:10px;margin-bottom:20px}.section-heading p{font-size:11px}.config-footer{padding:18px 19px;align-items:stretch;flex-direction:column;gap:13px}.config-footer>.button{width:100%}.revision-tag{font-size:10px;margin-top:25px}.auth-card{padding:28px 25px}.auth-screen{padding:18px}.toast{left:50%;bottom:20px;max-width:calc(100% - 36px);width:max-content;text-align:center}.modal{padding:24px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
#device-table-wrap table{min-width:960px}.device-ip-cell{min-width:165px;max-width:245px}.device-ip-address{display:block;max-width:215px;font-family:"Cascadia Code",Consolas,monospace;font-size:12px;line-height:1.5;color:var(--text);overflow-wrap:anywhere;user-select:text}.device-ip-note{font-size:10px;line-height:1.6;color:var(--subtle);margin-top:3px}.device-ip-unavailable{font-size:11px;color:var(--muted)}
.account-summary{font-size:11px;color:var(--muted);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-owner-cell{font-size:11px;color:#c6c6c6;min-width:105px;max-width:165px;overflow-wrap:anywhere}#device-table-wrap table{min-width:1080px}.is-reseller #device-table-wrap table{min-width:790px}.reseller-lookup-panel{border:1px solid #65532b;border-radius:var(--radius);background:#30291a;padding:23px 25px;margin-bottom:24px;max-width:1050px}.reseller-lookup-panel h2{font-size:17px;color:#efd598}.reseller-lookup-panel>p{font-size:12px;line-height:1.8;color:#c9bea3;margin-top:8px}.reseller-lookup-panel form{display:flex;align-items:flex-end;gap:14px;margin-top:20px}.reseller-lookup-panel form>div{flex:1;max-width:360px}.reseller-lookup-panel input{text-transform:uppercase;letter-spacing:1px;font-family:"Cascadia Code",Consolas,monospace}.reseller-lookup-panel form>.button{height:46px}.lookup-result{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 19px;background:#25221a;border:1px solid #6c5b33;border-radius:8px;margin-top:19px}.lookup-result-details{display:grid;gap:6px;min-width:0}.lookup-code{font-size:17px;color:var(--amber);letter-spacing:1px}.lookup-result-details strong{font-size:12px;overflow-wrap:anywhere}.lookup-result-details .muted{font-size:11px}.reseller-create-card{max-width:1100px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:25px 28px;margin-bottom:24px}.reseller-create-card h2{font-size:18px}.reseller-create-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:23px 0 11px}.reseller-create-fields label{font-size:12px}.reseller-create-actions{display:flex;justify-content:flex-end;margin-top:23px}.reseller-list-panel{border:1px solid var(--line);background:var(--card);border-radius:var(--radius);overflow:hidden}.reseller-list-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 24px}.reseller-list-heading h2{font-size:17px}.reseller-list-heading .muted{font-size:11px}.reseller-list-panel table{min-width:650px}.reseller-username-cell{font-weight:600;overflow-wrap:anywhere;max-width:230px}.reseller-empty{font-size:12px;color:var(--subtle);padding:26px 24px;border-top:1px solid var(--line)}
@media(max-width:1000px){.reseller-create-fields{grid-template-columns:1fr;max-width:520px}.account-summary{max-width:170px}}
@media(max-width:760px){.topbar-actions{gap:9px}.account-summary{max-width:150px;font-size:10px}.topbar-actions>.local-badge{display:none}.reseller-lookup-panel{padding:21px 18px}.reseller-lookup-panel form{align-items:stretch;flex-direction:column;gap:13px}.reseller-lookup-panel form>div{max-width:none}.lookup-result{align-items:flex-start;flex-direction:column;gap:14px;padding:16px}.reseller-create-card{padding:22px 19px}.reseller-create-actions>.button{width:100%}.reseller-list-heading{padding:19px}.reseller-empty{padding:23px 19px}}
.reseller-account-actions{flex-wrap:wrap;min-width:175px;gap:8px}.reseller-account-actions>.button{white-space:nowrap}.reseller-credentials-modal{max-width:540px;max-height:calc(100vh - 36px);overflow-y:auto}.reseller-edit-fields{display:grid;gap:18px;margin-top:23px}.reseller-credentials-modal .field-note{font-size:11px;color:var(--subtle);margin-top:10px}.reseller-credentials-modal .reseller-session-note{border-left:2px solid #8d753a;background:#332d20;color:#dec88f;padding:11px 13px;margin-top:19px;font-size:11px}.reseller-credentials-modal .form-error{color:#edb6b1}
@media(max-width:760px){.reseller-credentials-modal .modal-actions{flex-wrap:wrap}.reseller-credentials-modal .modal-actions>.button{flex:1;min-width:130px}.reseller-edit-fields{gap:16px}}
.vpn-intro{border:1px solid #65532b;border-radius:var(--radius);background:#30291a;padding:21px 24px;margin-bottom:20px}.vpn-intro h2{font-size:16px;color:#efd598}.vpn-intro p{font-size:12px;color:#c9bea3;line-height:1.8;margin-top:8px;max-width:940px}.vpn-create-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);margin-bottom:23px;overflow:hidden}.vpn-create-panel>summary{padding:19px 24px;font-size:13px;font-weight:600;cursor:pointer;color:#e6d3a4}.vpn-create-panel[open]>summary{border-bottom:1px solid var(--line)}.vpn-create-panel>form{padding:22px 24px}.vpn-create-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:950px}.vpn-create-fields label{font-size:12px}.vpn-create-panel .field-note{margin-top:12px}.vpn-create-actions{display:flex;justify-content:flex-end;margin-top:20px}.vpn-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px}.vpn-summary-card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:17px 20px;min-width:0}.vpn-summary-card>span{display:block;color:var(--muted);font-size:10px;line-height:1.7}.vpn-summary-card>strong{display:block;font-size:26px;line-height:1.25;font-weight:600;color:#e6d3a4;margin-top:8px}.vpn-refresh-line{display:flex;justify-content:space-between;gap:15px;font-size:10px;line-height:1.8;color:var(--subtle);margin-bottom:18px}.vpn-empty{border:1px dashed #515151;border-radius:var(--radius);padding:37px 26px;text-align:center;background:#202020}.vpn-empty h2{font-size:18px}.vpn-empty p{font-size:12px;color:var(--muted);line-height:1.8;max-width:620px;margin:10px auto 0}.vpn-server-list{display:grid;gap:23px}.vpn-server-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:23px 25px;min-width:0}.vpn-server-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.vpn-server-heading h2{font-size:20px;overflow-wrap:anywhere}.vpn-server-heading p{font-size:11px;color:var(--muted);margin-top:6px}.vpn-server-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.vpn-server-actions>.button{font-size:11px;min-height:33px;padding:6px 10px;white-space:nowrap}.vpn-server-status{display:inline-block;border:1px solid;padding:5px 9px;border-radius:6px;font-size:10px;white-space:nowrap}.vpn-status-neutral{color:#c7c7c7;background:#303030;border-color:#525252}.vpn-status-stale{color:#edd18c;background:#3d321b;border-color:#746032}.vpn-status-warning{color:#f1b2ac;background:#432b28;border-color:#80534b}.vpn-status-ok{color:#a9d8bb;background:#25362c;border-color:#3d5947}.vpn-server-time{font-size:10px;color:var(--subtle);margin-top:13px}.vpn-state-note,.vpn-stale-note{font-size:11px;line-height:1.8;padding:11px 13px;margin-top:15px;border:1px solid #4c4c4c;border-radius:7px;background:#242424;color:#bebebe}.vpn-stale-note{color:#ecd096;border-color:#72603a;background:#372f1e}.vpn-meters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:22px}.vpn-meters.is-old{opacity:.7}.vpn-meter{min-width:0}.vpn-meter-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;margin-bottom:9px}.vpn-meter-heading>span{color:#bbb}.vpn-meter-heading>strong{font-size:13px;font-weight:600;white-space:nowrap}.vpn-meter-track{height:7px;background:#1b1b1b;border:1px solid #424242;border-radius:5px;overflow:hidden}.vpn-meter-track.is-unknown{background:repeating-linear-gradient(120deg,#222,#222 7px,#303030 7px,#303030 12px)}.vpn-meter-level{display:block;height:100%;background:#b99a44;border-radius:4px}.vpn-meter-level.is-high{background:#d38c78}.vpn-meter>p{font-size:10px;line-height:1.8;color:#969696;margin-top:8px;overflow-wrap:anywhere}.vpn-alerts{padding:12px 16px 12px 31px;margin-top:18px;background:#3b2925;border:1px solid #704b40;border-radius:7px;font-size:11px;color:#eac0ae;line-height:1.9}.vpn-quality{margin-top:22px;background:#222;border:1px solid #3f3f3f;border-radius:9px;padding:18px 20px}.vpn-quality.has-warning{border-color:#7e5146;background:#302421}.vpn-quality h3{font-size:14px}.vpn-quality-status{color:#bbb;font-size:11px;line-height:1.8;margin-top:6px}.vpn-quality.has-warning .vpn-quality-status{color:#e6b2a3}.vpn-quality-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:16px}.vpn-quality-stats>div>span{display:block;color:var(--subtle);font-size:10px;line-height:1.7}.vpn-quality-stats strong{display:block;font-size:16px;font-weight:550;margin-top:5px}.vpn-quality-explanation{font-size:10px;color:#939393;line-height:1.8;margin-top:15px}.vpn-server-details{margin-top:18px;border-top:1px solid #414141}.vpn-server-details>summary{font-size:11px;color:#ddc375;cursor:pointer;padding-top:17px;line-height:1.7}.vpn-detail-note{font-size:10px;color:var(--subtle);line-height:1.8;margin:14px 0}.vpn-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:13px}.vpn-chart{margin:0;padding:14px 15px 12px;border:1px solid #424242;border-radius:8px;background:#1e1e1e;min-width:0}.vpn-chart>figcaption{font-size:12px;color:#d0d0d0;margin-bottom:9px}.vpn-chart svg{display:block;width:100%;height:auto;stroke:none;fill:none;overflow:visible;flex:none}.vpn-chart-grid{stroke:#3d3d3d;stroke-width:1}.vpn-chart-label{fill:#a3a3a3;stroke:none;font-size:12px;font-family:inherit}.vpn-chart-line{fill:none;stroke:var(--vpn-series);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.vpn-chart-point{fill:var(--vpn-series);stroke:none}.vpn-series-cpu{--vpn-series:#e4bc52}.vpn-series-ram{--vpn-series:#9bacd7}.vpn-series-network{--vpn-series:#8fc8b7}.vpn-series-rx{--vpn-series:#93b9dd}.vpn-series-tx{--vpn-series:#d5ab83}.vpn-series-connections{--vpn-series:#d0b5dd}.vpn-chart-legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:10px;color:#b0b0b0;margin-top:3px}.vpn-chart-legend>span{display:inline-flex;align-items:center;gap:5px}.vpn-chart-legend i{display:inline-block;width:12px;height:3px;border-radius:2px;background:var(--vpn-series)}.vpn-chart-legend>.vpn-chart-unit{margin-left:auto;color:var(--subtle)}.vpn-chart-empty{font-size:11px;line-height:1.8;color:var(--subtle);min-height:88px;padding-top:25px}.vpn-client-details{margin-top:20px}.vpn-client-details h4{font-size:13px;font-weight:550;margin-bottom:13px}.vpn-client-details .table-wrap{border:1px solid #414141;border-radius:7px}.vpn-client-details table{min-width:800px}.vpn-client-details th,.vpn-client-details td{font-size:10px;padding:13px 15px}.vpn-client-details code{font-size:12px;white-space:nowrap}.vpn-client-details small{display:block;color:var(--subtle);font-size:10px;line-height:1.7;max-width:180px;overflow-wrap:anywhere;margin-top:4px}.vpn-client-warning{color:#e9b1a4}
@media(max-width:1350px){.vpn-meters{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 24px}.vpn-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.vpn-charts{grid-template-columns:1fr}}
@media(max-width:760px){.vpn-intro{padding:19px}.vpn-intro h2{font-size:14px}.vpn-intro p{font-size:11px}.vpn-create-panel>summary{padding:17px 19px}.vpn-create-panel>form{padding:20px 19px}.vpn-create-fields{grid-template-columns:1fr;gap:18px}.vpn-create-actions>.button{width:100%}.vpn-summary{gap:10px}.vpn-summary-card{padding:14px 15px}.vpn-summary-card>strong{font-size:23px}.vpn-refresh-line{flex-direction:column;gap:3px}.vpn-server-card{padding:20px 18px}.vpn-server-heading{flex-direction:column;gap:14px}.vpn-server-heading h2{font-size:18px}.vpn-server-actions{justify-content:flex-start}.vpn-meters{gap:19px 15px}.vpn-quality{padding:17px 15px}.vpn-quality-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 13px}.vpn-chart{padding:12px 9px}.vpn-chart-legend{gap:9px}.vpn-client-details th,.vpn-client-details td{padding:12px}.vpn-empty{padding:30px 19px}}
.vpn-refresh-failed .vpn-meters,.vpn-refresh-failed .vpn-quality{opacity:.7}
.vpn-series-disk{--vpn-series:#bbabdc}.vpn-series-iowait{--vpn-series:#e8b091}
.vpn-lb{margin-top:20px;padding:18px 20px;border:1px solid #48443b;border-radius:9px;background:#24231f}.vpn-lb-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.vpn-lb h3{font-size:14px}.vpn-lb-note{font-size:10px;color:#ada591;line-height:1.8;margin:9px 0 15px}.vpn-lb-facts{display:grid;grid-template-columns:2fr 1fr 1fr;gap:15px;margin:0}.vpn-lb-facts dt{font-size:10px;color:var(--subtle);margin-bottom:5px}.vpn-lb-facts dd{font-size:12px;margin:0;overflow-wrap:anywhere}.vpn-lb-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.vpn-lb-actions>.button{font-size:11px;padding:7px 11px;min-height:32px}.vpn-lb-details{border-top:1px solid #444037;margin-top:16px;padding-top:12px}.vpn-lb-details summary{font-size:11px;color:#d7c17d;cursor:pointer;line-height:1.7}.vpn-lb-detail-body{margin-top:12px}.vpn-lb-detail-body h4{font-size:11px;margin:17px 0 9px;font-weight:550}.vpn-lb-detail-body .field-note{font-size:10px;color:var(--subtle);line-height:1.8}.vpn-lb-targets{list-style:none;padding:0;display:grid;gap:6px;margin:8px 0}.vpn-lb-targets li{display:flex;gap:14px;flex-wrap:wrap;justify-content:space-between;padding:8px 10px;background:#1c1c1b;border-radius:5px;font-size:10px}.vpn-lb-targets code{font-size:12px;color:#ddd1ab}.vpn-lb-targets span{color:#a4a19a}.vpn-lb-history{padding-left:19px;max-height:360px;overflow-y:auto}.vpn-lb-history>li{padding:6px 0 10px;font-size:10px;color:#b9b3a6}.vpn-lb-history strong{display:block;font-size:10px;font-weight:500;margin-top:7px}.vpn-lb-modal{width:min(760px,calc(100vw - 36px));max-height:90vh;overflow-y:auto}.vpn-lb-modal .modal-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.vpn-lb-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin:20px 0}.vpn-lb-fields label,.vpn-lb-secret>label{font-size:12px}.vpn-lb-modal .field-note{font-size:11px;color:var(--subtle);line-height:1.8;margin:12px 0}.vpn-lb-modal input{font-family:inherit}.vpn-lb-secret{border-top:1px solid #4b4437;margin-top:22px;padding-top:20px}.vpn-lb-secret h3{font-size:15px;color:#e4cc8c}.vpn-lb-token{display:flex;align-items:center;gap:10px;margin-top:8px}.vpn-lb-token input{min-width:0;font-family:monospace}.vpn-lb-token button{white-space:nowrap;flex:none}.vpn-lb-secret #lb-certificate{font-family:monospace;font-size:11px}.vpn-lb-modal .form-error{margin-top:18px}
@media(max-width:760px){.vpn-lb{padding:16px 14px}.vpn-lb-facts{grid-template-columns:1fr 1fr}.vpn-lb-facts>div:first-child{grid-column:1/-1}.vpn-lb-fields{grid-template-columns:1fr}.vpn-lb-actions>.button{flex:1}.vpn-lb-token{align-items:stretch;flex-direction:column}}
.vpn-lb-preview select{width:100%;min-height:40px;padding:8px 12px;font:inherit;color:var(--text);background:#1c1c1c;border:1px solid #505050;border-radius:7px;color-scheme:dark}.vpn-lb-preview .vpn-lb-fields .field-note{overflow-wrap:anywhere}
.device-policy-card{margin-top:24px}.device-policy-card #inactivity-months{max-width:220px}
.updates-explanation{margin:0 0 24px;max-width:900px}.updates-card{margin-top:24px}.update-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:23px 0 0}.update-facts dt{color:var(--subtle);font-size:11px;margin-bottom:8px}.update-facts dd{margin:0;color:#eee;font-size:16px;overflow-wrap:anywhere}.update-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.update-release-summary h2{font-size:17px}.update-release-summary .muted{font-size:12px;margin-top:10px}#update-release-form input[type=file]{padding:11px;height:auto;font-size:12px}#update-release-form>div>label{margin-top:24px}@media(max-width:760px){.update-fields{grid-template-columns:1fr;gap:18px}.update-facts{grid-template-columns:1fr;gap:17px}.updates-card .config-footer{align-items:flex-start;gap:15px;flex-wrap:wrap}.updates-card .config-footer>.button{width:100%}}
.auth-card .language-control label{margin:0;font-size:11px;font-weight:500}
.update-audience select{width:100%;max-width:420px;min-height:42px;padding:8px 12px;font:inherit;color:var(--text);background:#1c1c1c;border:1px solid #505050;border-radius:8px;color-scheme:dark}
.update-audience select:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
#update-test-selection{min-width:0;margin:20px 0 0;padding:14px 16px 16px;border:1px solid var(--line);border-radius:8px}
#update-test-selection legend,#update-test-selection h3{font-size:13px;font-weight:600}
#update-test-selection h3{margin:18px 0 0}
#update-test-selection>label{margin-top:13px}
.update-device-search{display:flex;gap:9px;align-items:center}
.update-device-search input{min-width:0}
.update-device-list{padding:0;margin:8px 0 12px;list-style:none;max-height:230px;overflow:auto}
.update-device-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 3px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.update-device-list label{display:flex;align-items:center;gap:10px;margin:0;min-width:0;min-height:30px;font-weight:400}
.update-device-list input[type=checkbox]{flex:none;width:17px;height:17px;margin:0;accent-color:var(--amber)}
.update-device-list button{min-height:34px;padding:5px 10px;font-size:12px}
@media(max-width:760px){#update-test-selection{padding:12px 10px}.update-device-list li{gap:6px}}
.vpn-capacity-modal{max-width:520px;max-height:calc(100vh - 36px);overflow-y:auto}.vpn-capacity-modal .vpn-capacity-server-name{font-size:13px;font-weight:600;color:#e4c66e;margin-bottom:13px;overflow-wrap:anywhere}.vpn-capacity-field{margin-top:21px}.vpn-capacity-field>label{font-size:12px}.vpn-capacity-modal .field-note{font-size:11px;color:var(--subtle);line-height:1.8;margin-top:10px}.vpn-capacity-modal .form-error{color:#edb6b1}@media(max-width:760px){.vpn-capacity-modal .modal-actions{flex-wrap:wrap}.vpn-capacity-modal .modal-actions>.button{flex:1;min-width:130px}}
.device-name-modal{width:min(100% - 36px,560px)}.device-name-context{display:grid;gap:7px;padding:15px 17px;border:1px solid var(--line);border-radius:8px;background:#202020;margin:19px 0 21px}.device-name-context code{font-size:15px;letter-spacing:1px;color:#e6d3a4}.device-name-model-label{font-size:10px;color:var(--subtle);margin-top:4px}.device-name-context strong{font-size:12px;font-weight:550;overflow-wrap:anywhere}.device-reported-name{color:var(--subtle);font-size:10px;margin-top:5px}.device-name-button{color:#d9c683}.device-name-modal>form>label{margin-top:16px}.device-name-modal .modal-actions{margin-top:23px}
.diagnostics-card h2{font-size:18px}.diagnostics-status{font-size:15px;font-weight:600;margin:15px 0 6px;color:#c7dacd}.diagnostics-status.is-warning{color:#e9ce8b}.diagnostics-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;margin:26px 0}.diagnostics-stats dt{font-size:11px;color:var(--subtle);margin-bottom:7px}.diagnostics-stats dd{font-size:14px;margin:0;overflow-wrap:anywhere}.diagnostics-card .config-footer .muted{max-width:590px;line-height:1.7}.diagnostics-card .config-footer .button{white-space:nowrap}@media(max-width:700px){.diagnostics-stats{grid-template-columns:1fr}.diagnostics-card .config-footer{align-items:stretch;flex-direction:column}}
.vpn-install-modal{width:min(820px,calc(100vw - 36px));max-height:90vh;padding:24px;overflow:auto}.vpn-install-modal .modal-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.vpn-install-server{font-size:15px;font-weight:600;margin:10px 0}.vpn-install-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px 20px;margin:20px 0}.vpn-install-full{grid-column:1/-1}.vpn-install-notice{padding:12px 14px;border:1px solid #6b5826;border-radius:7px;background:#39321f;color:#e6ce8e;font-size:12px;margin:17px 0}.vpn-install-plan-actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.vpn-install-plan{border-top:1px solid #444;margin-top:22px;padding-top:20px}.vpn-install-plan h3,.vpn-install-job h3{font-size:15px;margin-bottom:13px}.vpn-install-plan dl{display:grid;gap:9px;margin:15px 0}.vpn-install-plan dl>div{display:grid;grid-template-columns:170px 1fr;gap:10px}.vpn-install-plan dt{font-size:11px;color:#aaa}.vpn-install-plan dd{margin:0;font-size:12px;overflow-wrap:anywhere}.vpn-install-plan ol{font-size:12px;padding-left:22px;line-height:1.9}.vpn-install-confirm{display:flex;align-items:flex-start;gap:10px;font-size:12px;margin:17px 0}.vpn-install-confirm input{width:16px;flex:none;margin-top:1px}.vpn-install-job{background:#222;border:1px solid #494339;border-radius:8px;margin-top:20px;padding:17px}.vpn-install-job>p{font-size:13px}.vpn-install-card-status{font-size:11px;color:#c6b471;margin:8px 0 12px}@media(max-width:650px){.vpn-install-fields{grid-template-columns:1fr}.vpn-install-plan dl>div{grid-template-columns:1fr;gap:3px}}
.panel-resources-card{margin-bottom:16px}.panel-resources-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0}@media(max-width:700px){.panel-resources-stats{grid-template-columns:1fr}}
