body{margin:0;background:#f4f4f2;font-family:Figtree,Rubik,system-ui,sans-serif;color:#111;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}:focus-visible{outline:2px solid #6e6ee8;outline-offset:3px}#auth{position:fixed;inset:0;z-index:100;background:#f4f4f2;overflow:auto;display:grid;place-items:center;padding:24px}#auth[hidden]{display:none}.auth-card{position:relative;width:min(100%,440px);padding:36px;background:#fff;border:1px solid #e7e7e4;border-radius:20px;box-shadow:0 16px 70px #11111107}.auth-card img{width:148px;margin-bottom:30px}.auth-card h1{font-size:26px;letter-spacing:-.5px}.auth-card p{color:#777;font-size:14px;line-height:1.6}.auth-card label,.vx-dialog label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;margin:16px 0}.auth-card input,.auth-card select,.vx-dialog input,.vx-dialog textarea,.vx-dialog select{width:100%;padding:12px;border:1px solid #e1e1de;border-radius:10px;background:#fff;outline:none}.auth-card input:focus,.vx-dialog input:focus{border-color:#111}.primary{border:0;background:#111;color:#fff;border-radius:10px;padding:12px 18px;font-weight:600}.auth-card form .primary{width:100%;margin-top:12px}.auth-card .switch{background:transparent;border:0;display:block;margin:20px auto;color:#555;font-size:13px}.auth-card small{display:block;text-align:center;color:#999;font-size:11px}.lang{position:absolute;inset-inline-end:32px;top:36px;border:1px solid #ececea;background:#fff;border-radius:8px;padding:6px 10px;font-size:12px}.error{color:#a23232!important;font-size:13px}.vx-dialog{width:min(92vw,520px);border:1px solid #e7e7e4;border-radius:20px;padding:26px;box-shadow:0 20px 80px #0002;max-height:90vh;overflow:auto}.vx-dialog::backdrop{background:#1115}.vx-dialog h2{font-size:20px;margin:0 0 20px}.vx-dialog textarea{min-height:110px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.actions button{padding:10px 16px;border:1px solid #e1e1de;background:#fff;border-radius:10px}.actions .primary{background:#111;color:#fff}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:#111;color:#fff;padding:14px 20px;border-radius:12px;max-width:90vw;z-index:1000;transition:transform .2s;font-size:14px;box-shadow:0 8px 32px #0002}#toast.visible{transform:translateX(-50%) translateY(0)}.vx-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.vx-controls button,.vx-controls a{font-size:12px;padding:8px 12px;border:1px solid #e7e7e4;background:white;border-radius:8px;text-decoration:none}.vx-admin{max-width:1100px;margin:30px auto;padding:24px}.vx-admin header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.vx-admin img{width:150px}.vx-admin .cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.vx-admin section{background:#fff;border:1px solid #e7e7e4;padding:24px;border-radius:16px}.vx-admin h2{font-size:18px;margin-top:0}.vx-admin label{font-size:13px;display:flex;flex-direction:column;gap:7px;margin:12px 0}.vx-admin input,.vx-admin textarea,.vx-admin select{padding:10px;border:1px solid #e1e1de;border-radius:8px;width:100%;font:inherit;background:white}.vx-admin textarea{min-height:210px;font-family:monospace;font-size:12px;direction:ltr}.vx-admin .span{grid-column:1/-1}.vx-admin table{width:100%;border-collapse:collapse;font-size:13px}.vx-admin td,.vx-admin th{padding:12px;border-bottom:1px solid #eee;text-align:start}.status-note{font-size:13px;color:#777;line-height:1.6}.mobile-menu{display:none}
@media(max-width:900px){main>header{padding:16px!important}main>header>div[style*="240px"]{display:none!important}aside{width:210px!important;padding:14px 10px!important}main div[style*="width:320px;flex-shrink:0"]{width:260px!important}.vx-admin .cards{grid-template-columns:1fr}.vx-admin .span{overflow:auto}}
@media(max-width:640px){body{overflow-x:hidden}#dc-root>div>div{padding:0!important}aside{position:fixed;inset-block:0;inset-inline-start:0;width:256px!important;z-index:30;overflow:auto;box-shadow:0 0 0 100vmax #0005;display:none!important;border-radius:0!important}body.menu-open aside{display:flex!important}main{border-radius:0!important;min-height:100dvh}main>header{padding-inline-start:56px!important}main>header h1{font-size:19px!important}main>header>div:first-child{min-width:150px!important}.mobile-menu{display:block;position:fixed;top:20px;inset-inline-start:12px;z-index:31;border:1px solid #e7e7e4;border-radius:9px;padding:8px;background:#fff}main>div{padding:16px!important}main div[style*="grid-template-columns:repeat(4"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}main div[style*="grid-template-columns:1.3fr"]{grid-template-columns:1fr!important}main div[style*="width:360px"]{width:100%!important}main div[style*="width:320px;flex-shrink:0"]{width:100%!important;border-inline-start:0!important}main>div[style*="min-height:680px"]{flex-direction:column!important}.vx-admin{margin:0;padding:16px}.auth-card{padding:28px}}
.rate-row{display:grid;grid-template-columns:1fr 1.2fr 1fr .6fr 24px;gap:6px;align-items:center;margin:10px 0}.rate-row input,.rate-row select{min-width:0;padding:8px;font-size:12px}.rate-row button{border:0;background:transparent;color:#888;font-size:20px}#addRate{border:1px solid #e7e7e4;background:#fff;border-radius:8px;padding:8px 12px}

body:not(.authenticated) #dc-root{display:none}body:not(.authenticated) .mobile-menu{display:none}

.cost-table{overflow:auto;max-height:520px}.cost-table td{min-width:90px}.cost-table td:nth-child(2){min-width:280px}.rate-row{grid-template-columns:1fr 1fr 1fr auto}

.connection-field-status{display:block;font-size:12px;color:#9a6700;margin-top:6px}.connection-field-status[data-saved=true],.save-result{color:#18734b}.connection-summary{display:flex;flex-direction:column;gap:7px;padding:14px;margin:12px 0;border:1px solid #e5e5e1;border-radius:10px;background:#fafaf8}.connection-summary[data-verified=true]{border-color:#b9ddc9;background:#f3faf5}.connection-summary small{color:#62675f;overflow-wrap:anywhere}.connection-summary span{font-size:14px}.save-result:empty{display:none}
.vx-admin button{padding:8px 12px;border:1px solid #e7e7e4;border-radius:8px;background:#fff;color:#111;font:inherit;font-size:12px}.vx-admin button.primary{background:#111;border-color:#111;color:#fff}.vx-admin .rate-row{grid-template-columns:1fr 1.2fr 1fr 32px}.vx-admin input[type=checkbox]{width:auto}.vx-admin .cost-table{overflow:auto}
