:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#17263a;background:#f2f5f8;font-size:16px;font-synthesis:none;--ink:#17263a;--yellow:#f4c743;--muted:#68788b;--line:#e2e7ed}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #5989c1;outline-offset:3px}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#101c29;color:#d0d8e3;display:flex;flex-direction:column;padding:32px 19px;z-index:2}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-size:25px;font-weight:700;letter-spacing:-.7px;padding:0 9px 39px}.brand-icon{display:grid;place-items:center;width:43px;height:45px;border-radius:10px;background:var(--yellow);color:#152334;font-size:36px;font-weight:800}.brand-sub{display:block;font-size:11px;letter-spacing:3px;font-weight:500;color:#8292a5;margin-top:4px}.side-label{font-size:12px;letter-spacing:1.7px;color:#8292a5;padding-left:12px;margin-bottom:12px}.site-switch{display:flex;background:#1c2939;border:1px solid #2b3a4c;border-radius:8px;padding:4px;margin:0 8px 30px}.site-switch button{flex:1;background:none;border:0;color:#a8b6c7;padding:9px;border-radius:5px;font-size:14px;font-weight:600}.site-switch .active{background:#f4c743;color:#17263a}.side-heading{display:flex;justify-content:space-between;padding:0 12px 12px;font-size:14px;color:#9dadc0}#houses{overflow:auto;scrollbar-width:thin;flex:1}.house-button{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;color:#b7c4d4;border-radius:7px;padding:11px 13px;margin-bottom:3px;font-size:15px;text-align:left}.house-button:hover{background:#1c2b3d}.house-button.active{color:#fff;background:#27384c;box-shadow:inset 3px 0 var(--yellow)}.house-button small{background:#1b2b3d;color:#91a3ba;padding:2px 7px;border-radius:4px;font-size:12px}.house-button.active small{background:#3a4b60;color:#e3eaf3}.sidebar-bottom{margin:26px 9px 0;border-top:1px solid #2d3b4d;padding-top:20px;font-size:13px}.server-dot{display:inline-block;width:7px;height:7px;border-radius:100%;background:#83c4a9;margin-right:7px}.sidebar-bottom small{display:block;color:#71859b;padding:8px 0 0 15px;font-size:12px}main{margin-left:238px}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 40px;font-size:14px}.breadcrumb{color:var(--muted)}.breadcrumb span{margin:0 15px;color:#a9b4c1}.breadcrumb b{font-weight:500;color:#31445b}.storage-badge{color:#7c8999;font-size:13px}.content{padding:34px 40px;max-width:1600px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.eyebrow{font-size:12px;letter-spacing:1.6px;color:#7c8a9b;font-weight:650}h1{font-size:36px;font-weight:650;letter-spacing:-1px;margin:8px 0}p{color:var(--muted);line-height:1.5;margin:0;font-size:14px}.heading p{font-size:16px}.secondary{background:#fff;border:1px solid #d7dfe8;color:#42536b;border-radius:7px;padding:11px 16px;font-size:14px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:25px}.metric{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);padding:19px 22px;border-radius:9px}.metric-icon{display:grid;place-items:center;border-radius:8px;background:#eff3f8;color:#526b8b;width:45px;height:45px;font-size:22px}.metric strong{font-size:25px;font-weight:650;display:block;letter-spacing:-.5px}.metric span{font-size:13px;color:var(--muted);display:block;margin-top:3px}.panel{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.panel-heading{padding:23px 25px 19px;display:flex;align-items:center;justify-content:space-between;gap:12px}h2{font-size:18px;font-weight:650;margin:0 0 5px;letter-spacing:-.2px}.text-button{background:none;border:0;color:#3f618b;font-size:14px;padding:8px;font-weight:600}.controller-grid{padding:0 25px 23px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.controller{position:relative;border:1px solid #dfe5ec;border-radius:8px;background:#fff;min-height:144px;padding:16px;cursor:pointer;color:var(--ink);text-align:left}.controller:hover{border-color:#9dacbf}.controller.selected{border-color:#bf9425;box-shadow:inset 0 0 0 1px #e0b739;background:#fffcf1}.controller-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.controller-name{font-size:22px;font-weight:650}.check{width:20px;height:20px;border-radius:5px;border:1px solid #cfd8e2;display:grid;place-items:center;font-size:13px}.selected .check{background:var(--yellow);border-color:var(--yellow)}.controller p{font-size:13px;line-height:1.45;min-height:37px}.controller-foot{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#7a8797;margin-top:12px;gap:5px}.document-dot{font-size:11px;font-weight:650;color:#3d7360;background:#e8f4ed;border-radius:4px;padding:3px 5px}.action-bar{background:#fafbfd;border-top:1px solid var(--line);padding:19px 25px;display:flex;justify-content:space-between;gap:18px;align-items:center}.action-bar strong{font-size:15px;display:block;font-weight:600}.action-bar div>span{font-size:13px;color:var(--muted);display:block;margin-top:5px}.primary{border:1px solid #ddb237;border-radius:7px;background:var(--yellow);color:#182535;padding:12px 18px;font-size:15px;font-weight:650;white-space:nowrap}.primary span{font-size:20px;margin-right:6px}.primary:hover:not(:disabled){background:#eabc36}.action-note{font-size:12px;padding:0 25px 14px;background:#fafbfd}.tabs{display:flex;gap:25px;margin-top:26px;border-bottom:1px solid #dce3eb;margin-bottom:20px}.tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:13px 1px;color:#78879a;font-weight:600;font-size:15px}.tabs .active{color:#233a56;border-bottom-color:#d2a62a}.tabs span{display:inline-block;background:#e3e9f0;color:#697c94;border-radius:5px;font-size:12px;padding:3px 6px;margin-left:5px}.format-select{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}select{font-size:14px;border:1px solid #dbe3ec;border-radius:6px;background:white;color:#33465e;padding:8px 12px}.bundle{border-top:1px solid var(--line);padding:19px 25px}.bundle-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.bundle-title{font-size:16px;font-weight:650}.bundle-meta{font-size:12px;color:#7b899a;margin-top:5px}.bundle-summary{font-size:13px;margin:0 0 12px;white-space:pre-line}.download-all{font-size:13px;border:1px solid #d9e2ec;border-radius:6px;padding:8px 11px;color:#395977;text-decoration:none;white-space:nowrap}.file-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #edf0f4}.file-icon{font-size:10px;font-weight:750;background:#faecea;color:#b56958;width:36px;height:39px;border-radius:6px;display:grid;place-items:center}.file-icon.xlsx{background:#e9f3eb;color:#47785c}.file-icon.data{background:#eef1f7;color:#697a95}.file-name{font-size:14px;font-weight:550;overflow-wrap:anywhere}.file-meta{font-size:12px;color:#7b899a;margin-top:4px}.file-actions{display:flex;gap:8px;align-items:center}.file-actions a,.file-actions button{color:#466284;background:none;border:0;text-decoration:none;padding:7px;font-size:13px}.empty{padding:35px;text-align:center;color:#7b899a}.empty strong{display:block;font-size:16px;color:#445870;font-weight:550;margin:12px 0 7px}.empty p{max-width:420px;margin:auto}.job{padding:20px 25px;border-top:1px solid var(--line)}.job-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:10px}.status{font-size:12px;padding:4px 8px;border-radius:5px;background:#edf2f7;color:#526a84;white-space:nowrap}.status.running,.status.queued{background:#fff2c7;color:#85671b}.status.completed{background:#e8f3ec;color:#3b7455}.status.needs_attention{background:#fbeee5;color:#976042}.job-message{white-space:pre-line;font-size:14px;max-height:170px;overflow:auto;line-height:1.6}.job-time{font-size:12px;color:#8a97a8;margin-top:10px}footer{padding:25px 3px;font-size:12px;color:#8794a5}footer>span{display:block;text-transform:uppercase;letter-spacing:1px;margin-bottom:7px}footer code{font-size:12px;overflow-wrap:anywhere}footer p{font-size:12px;margin-top:9px}.hidden{display:none!important}#toast{position:fixed;right:30px;bottom:25px;padding:15px 20px;background:#21374f;color:white;border-radius:8px;box-shadow:0 8px 25px #18263825;z-index:10;max-width:450px;font-size:14px}dialog{padding:0;width:min(1100px,95vw);height:90vh;border:0;border-radius:10px;box-shadow:0 15px 80px #0005}dialog::backdrop{background:#10203299}.dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;gap:20px}.dialog-heading h2{font-size:15px;overflow-wrap:anywhere}.dialog-heading button{background:none;border:0;font-size:22px;color:#61718a}iframe{width:100%;height:calc(100% - 63px);border:0}@media(min-width:1600px){.controller-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1150px){.sidebar{width:200px}main{margin-left:200px}.content{padding:28px 24px}.topbar{padding:0 24px}.controller-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{padding:16px}.metric-icon{display:none}}@media(max-width:800px){.sidebar{position:relative;width:100%;padding:16px;display:block}.brand{padding:0 0 16px;font-size:22px}.brand-sub,.side-label,.side-heading,.sidebar-bottom{display:none}.site-switch{position:absolute;right:16px;top:19px;width:130px;margin:0}#houses{display:flex;gap:6px;overflow:auto}.house-button{width:auto;flex-shrink:0;gap:12px}.house-button.active{box-shadow:inset 0 -3px var(--yellow)}main{margin-left:0}.topbar{height:55px}.storage-badge{display:none}.content{padding:22px 16px}.heading{align-items:flex-start}h1{font-size:30px}.heading p{font-size:14px}.secondary{padding:8px 10px}.metrics{gap:9px}.metric{padding:13px}.metric strong{font-size:22px}.metric span{font-size:12px}.controller-grid{padding:0 16px 17px;grid-template-columns:repeat(2,minmax(0,1fr))}.panel-heading{padding:18px 16px}.action-bar{padding:17px 16px;align-items:stretch;flex-direction:column}.action-note{padding-left:16px}.bundle{padding:17px 16px}.bundle-top{align-items:flex-start}.format-select{font-size:0;gap:0}.file-row{grid-template-columns:32px minmax(0,1fr)}.file-actions{grid-column:2;justify-content:flex-end}.file-name{font-size:13px}.eyebrow{font-size:10px}.heading .secondary{font-size:0}.heading .secondary:first-letter{font-size:22px}.job{padding:16px}.job-head{gap:10px}.job-message{font-size:13px}#toast{left:16px;right:16px;bottom:16px}}@media(prefers-reduced-motion:no-preference){button,a{transition:background .15s,border-color .15s}.controller{transition:background .15s,border-color .15s}.status.running{animation:pulse 2.5s infinite}@keyframes pulse{50%{opacity:.65}}}

.location-selectors{flex:1;padding:0 8px}.location-label{display:flex;justify-content:space-between;color:#c1cede;font-size:14px;margin:0 0 9px}.location-label span{color:#8da0b7}.location-selectors select{width:100%;min-height:43px;background:#1c2939;color:#eef3f9;border-color:#3d4c5f;font-size:14px;padding:9px 7px}.location-note{color:#9babc0;font-size:12px;margin-top:12px;line-height:1.5}#ispControl{margin-top:24px}.isp-badge{font-size:12px;background:#edf2f7;color:#425976;padding:4px 6px;border-radius:4px;margin-left:6px}.controller-top{flex-wrap:wrap;gap:6px}.controller-foot{flex-wrap:wrap}@media(max-width:800px){.location-selectors{padding:0;display:grid;grid-template-columns:1fr;gap:8px}.location-label{margin:0}#ispControl{margin-top:8px}.location-selectors select{font-size:16px}.location-note{margin-top:4px}}

.payment-notice{padding:16px;margin-bottom:20px;border:1px solid #d4a329;background:#fff4ce;border-radius:8px;color:#503b00;font-weight:600}.checkout-box{padding:18px;border:1px solid #c9d4df;border-radius:8px;margin:16px 0}.checkout-box button{margin:8px 12px 0 0}
.checkout-page{max-width:820px;margin:40px auto;padding:30px;background:white;border-radius:16px}.checkout-page h1{margin:24px 0}.checkout-page p{margin:16px 0;line-height:1.6}.checkout-page label{display:block;margin:14px 0}.checkout-page input{display:block;width:100%;padding:12px;border:1px solid #b7c5d0;border-radius:6px;margin-top:6px}.checkout-page dt{font-weight:700;margin-top:16px}.checkout-page dd{margin:4px 0;overflow-wrap:anywhere}.checkout-page [hidden]{display:none}.checkout-page #error{color:#a62020}.checkout-page .primary,.checkout-page .secondary{display:inline-block;margin:8px 0}.checkout-page #qr{margin-top:20px}
.checkout-box{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.checkout-box>p{margin:0;line-height:1.5}.checkout-box>a.primary{display:inline-flex;align-items:center;position:static;margin:0;max-width:100%;white-space:normal;text-decoration:none;line-height:1.4}
.login-page{max-width:520px}.admin-page{max-width:1100px}.admin-page nav{display:flex;align-items:center;justify-content:space-between}.admin-card{border:1px solid var(--line);border-radius:10px;padding:20px;margin:16px 0}.admin-card button{margin:8px 10px 8px 0}.admin-card input[type=checkbox]{display:inline-block;width:auto;margin-right:8px}.admin-card select{max-width:100%;padding:10px}.admin-page section{margin:30px 0}#files{display:flex;flex-wrap:wrap;gap:14px}.account-nav{display:flex;align-items:center;gap:12px;font-size:14px}.account-nav a{color:inherit}.checkout-page #error{white-space:pre-wrap}
