:root { --ink:#101936; --muted:#69728b; --line:#e5e7ee; --paper:#f7f7f4; --white:#fff; --teal:#c9f2e9; --lilac:#e7e0ff; --cream:#fff0bf; --accent:#2563eb; --danger:#c83e43; font-family:"Segoe UI",system-ui,sans-serif; color:var(--ink); background:var(--paper); }
* { box-sizing:border-box; } body { margin:0; min-width:320px; background:var(--paper); } button,select,input { font:inherit; } button { cursor:pointer; } .app-shell { display:grid; grid-template-columns:236px minmax(0,1fr); min-height:100vh; }
.sidebar { min-height:100vh; background:#111b3a; color:#eef1fa; padding:29px 18px 20px; display:flex; flex-direction:column; position:sticky; top:0; height:100vh; } .brand { color:#fff; text-decoration:none; font-size:23px; font-weight:800; letter-spacing:-1.6px; display:flex; gap:9px; align-items:center; padding:0 10px; } .brand-mark { display:inline-flex; gap:2px; align-items:flex-end; height:19px; } .brand-mark i { width:5px; border-radius:6px; background:#73e0cc; display:block; } .brand-mark i:nth-child(1){height:11px}.brand-mark i:nth-child(2){height:19px}.brand-mark i:nth-child(3){height:14px}
.location-card { margin:42px 10px 25px; font-size:12px; color:#aab3cf; line-height:1.7; }.location-card strong{display:block;color:#fff;font-size:13px}.eyebrow { margin:0 0 7px; color:#8994b1; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:10px; letter-spacing:1.1px; font-weight:500; }.eyebrow.ink{color:#77839c}.side-nav{display:grid;gap:6px}.nav-item { border:0; background:transparent; color:#b8c0d8; text-align:left; padding:11px 12px; border-radius:8px; font-size:13px; display:flex; align-items:center; gap:10px; transition:.18s ease; }.nav-item:hover{color:#fff;background:#1d284b}.nav-item.active{background:#27365f;color:#fff;font-weight:700}.nav-icon{font-size:17px;width:15px;text-align:center}.nav-item b{margin-left:auto;background:#73e0cc;color:#10203e;min-width:19px;text-align:center;border-radius:99px;font-size:10px;padding:2px 5px}.sidebar-bottom{margin-top:auto}.machine-state{display:flex;gap:7px;align-items:center;font-size:11px;color:#afbad4;padding:10px}.pulse-dot,.terminal-online i{width:7px;height:7px;border-radius:50%;background:#65d9ad;box-shadow:0 0 0 4px rgba(101,217,173,.12)}.kiosk-install{background:#1c284b;color:#9fe0cf;border:1px solid #2c3a63;border-radius:9px;width:100%;text-align:left;padding:8px 10px;font-size:11px;font-weight:700;margin-top:10px}.kiosk-install:hover{background:#243051}.operator-button{background:#1c284b;color:#fff;border:0;border-radius:9px;width:100%;display:flex;align-items:center;gap:8px;padding:8px;font-size:11px;margin-top:10px}.avatar{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#d4a86a;color:#4b2a10;font-size:9px;font-weight:800}.chevron{margin-left:auto;font-size:18px;color:#9ba6c4}
.content-area { min-width:0; }.topbar{height:72px;padding:0 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:rgba(247,247,244,.84);backdrop-filter:blur(8px);position:sticky;top:0;z-index:4}.breadcrumb{font-size:12px;color:#8d95aa}.breadcrumb strong{color:#29324d}.slash{margin:0 9px;color:#b6bccb}.topbar-actions{display:flex;align-items:center;gap:11px}.live-time{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;color:#7d879c;margin-right:8px}.icon-button{border:1px solid var(--line);background:#fff;width:31px;height:31px;border-radius:50%;color:#5f6b84;font-weight:800}.lock-button{border:1px solid #d7dbe5;background:#fff;border-radius:6px;padding:8px 11px;font-size:11px;color:#43506b;font-weight:700}.lock-button span{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#9ca5b7;font-size:9px;margin-left:7px}.menu-button{display:none}.page-content{max-width:1240px;margin:auto;padding:43px 50px 46px}.hero-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:29px}.hero-row h1{font-size:30px;letter-spacing:-1.45px;margin:0 0 9px;line-height:1.15}.hero-copy{margin:0;color:#6f7890;font-size:13px}.primary-button,.outline-button{border:0;border-radius:7px;padding:11px 15px;background:var(--ink);color:#fff;font-size:12px;font-weight:700;box-shadow:0 2px 4px rgba(14,25,56,.14);transition:.18s}.primary-button:disabled,.outline-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none!important}.primary-button:hover{transform:translateY(-1px);background:#1b2854}.primary-button span{font-size:15px;margin-right:4px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:30px}.metric-card{height:145px;border-radius:9px;padding:20px;position:relative;overflow:hidden}.teal-card{background:var(--teal)}.lavender-card{background:var(--lilac)}.cream-card{background:var(--cream)}.metric-label{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;letter-spacing:.6px;color:#536476;display:block}.metric-card strong{display:block;font-size:29px;letter-spacing:-1.4px;margin:15px 0 7px}.metric-detail{font-size:10px;color:#526375}.metric-detail b{color:#226c5d}.metric-glyph{position:absolute;right:20px;bottom:14px;font-size:54px;line-height:1;color:rgba(20,49,61,.12);font-weight:800}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:16px}.panel{background:var(--white);border:1px solid #e7e9ef;border-radius:9px}.connection-panel{overflow:hidden}.panel-heading{padding:21px 23px 0;display:flex;justify-content:space-between;gap:10px}.panel-heading h2,.section-heading h2{font-size:17px;margin:0;letter-spacing:-.6px}.privacy-pill{background:#ebfaf7;color:#1b7a68;border-radius:99px;font-size:10px;font-weight:700;height:max-content;padding:5px 8px}.connection-body{padding:24px 23px;display:flex;align-items:center;gap:25px}.qr-shell{position:relative;flex:0 0 131px;width:131px;height:131px;padding:13px;border-radius:8px;border:1px solid #dfe4eb;background:#fff}.qr-code{width:100%;height:100%;background:repeating-linear-gradient(90deg,#172444 0 4px,transparent 4px 8px),repeating-linear-gradient(#172444 0 3px,transparent 3px 7px);opacity:.92;mask-image:linear-gradient(135deg,#000 20%,transparent 20% 25%,#000 25% 45%,transparent 45% 53%,#000 53% 70%,transparent 70% 78%,#000 78%);}.qr-corner{position:absolute;width:28px;height:28px;border:5px solid #172444}.qr-corner.one{left:13px;top:13px}.qr-corner.two{right:13px;top:13px}.qr-corner.three{left:13px;bottom:13px}.qr-corner.four{right:24px;bottom:25px;width:16px;height:16px;border-width:4px}.step-chip{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#697994;font-size:9px;letter-spacing:.8px}.connection-copy h3{font-size:17px;letter-spacing:-.5px;margin:8px 0}.connection-copy p{font-size:11px;line-height:1.65;color:#66718a;margin:0 0 13px;max-width:370px}.text-button{background:transparent;border:0;padding:0;color:#2c567d;font-size:11px;font-weight:800}.text-button:disabled{color:#a7aec0;cursor:not-allowed}.text-button span{font-size:15px;margin-left:4px}.connection-footer{border-top:1px solid #edf0f4;padding:11px 22px;display:flex;align-items:center;gap:7px;color:#788399;font-size:10px}.token-icon{font-size:16px}.connection-footer button{margin-left:auto;border:0;background:transparent;font-size:10px;color:#2e5079;font-weight:800}.terminal-panel{display:flex;flex-direction:column}.compact{padding-bottom:3px}.terminal-online{color:#329172;font-size:10px;font-weight:700;display:flex;gap:6px;align-items:center}.terminal-online i{width:6px;height:6px}.terminal-visual{width:178px;margin:24px auto 7px}.terminal-screen{height:117px;border-radius:12px 12px 4px 4px;background:#26365e;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;box-shadow:inset 0 0 0 5px #121e42,0 8px 12px rgba(17,27,58,.12)}.terminal-screen strong{font-size:24px;letter-spacing:-1px}.terminal-screen span:last-child{font-size:9px;color:#bac8e5}.contactless{font-size:23px;letter-spacing:-7px;transform:rotate(-10deg);display:inline-block;margin-right:7px}.terminal-base{height:18px;background:#162444;border-radius:0 0 8px 8px;padding:8px 17px;display:flex;gap:4px;justify-content:center}.terminal-base i{width:5px;height:5px;background:#f0c572;border-radius:50%}.terminal-note{text-align:center;color:#7d879a;font-size:10px;margin:10px 0 18px}.jobs-section{margin-top:30px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:13px}.jobs-list{display:grid;gap:8px}.job-row{display:grid;grid-template-columns:minmax(220px,1.4fr) .8fr .9fr auto;align-items:center;gap:15px;background:#fff;border:1px solid #e7e9ef;border-radius:8px;padding:13px 17px}.job-person{display:flex;align-items:center;gap:11px}.job-avatar{width:32px;height:32px;border-radius:7px;display:grid;place-items:center;font-size:10px;font-weight:800}.job-person strong{display:block;font-size:12px}.job-person small,.job-meta{font-size:10px;color:#8490a4}.job-meta{display:flex;flex-direction:column;gap:3px}.job-meta b{font-size:11px;color:#49566d}.job-status{font-size:10px;font-weight:800;display:flex;align-items:center;gap:6px}.status-dot{width:7px;height:7px;border-radius:50%}.status-dot.ready{background:#5ed5ae}.status-dot.payment{background:#e8ad39}.status-dot.printing{background:#5389ec}.job-amount{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:500;text-align:right}.privacy-banner{margin-top:25px;border-radius:9px;background:#172544;color:white;display:flex;gap:14px;align-items:center;padding:16px 20px}.shield-icon{font-size:25px;color:#74e0cd}.privacy-banner div{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.privacy-banner strong{font-size:12px}.privacy-banner div span{font-size:10px;color:#bcc7dd}.privacy-link{margin-left:auto;white-space:nowrap;border:0;background:transparent;color:#93e0d0;font-size:10px;font-weight:800}.small-hero{margin-bottom:26px}.queue-table{overflow:hidden}.queue-head,.queue-row{display:grid;grid-template-columns:1.35fr 1fr .85fr .6fr 40px;align-items:center;gap:12px;padding:13px 20px}.queue-head{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#8791a4;font-size:9px;letter-spacing:.7px;background:#fafbfc}.queue-row{border-top:1px solid #eef0f4;font-size:11px}.queue-row strong{font-size:12px}.queue-row .job-person{gap:9px}.row-action{border:0;background:#f2f4f8;color:#43516c;border-radius:5px;padding:6px;font-weight:800}.activity-feed{padding:5px 22px}.activity-item{display:flex;gap:13px;padding:18px 0;border-bottom:1px solid #edf0f4}.activity-item:last-child{border:0}.activity-time{width:57px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#8d98aa;font-size:10px;padding-top:3px}.activity-icon{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#e3f6f0;color:#237964;font-size:12px}.activity-item strong{font-size:12px;display:block}.activity-item span{font-size:10px;color:#7b879d;display:block;margin-top:3px}.hidden{display:none!important}
.modal{border:0;padding:0;border-radius:12px;width:min(690px,calc(100vw - 32px));background:#fff;color:var(--ink);box-shadow:0 20px 70px rgba(12,19,45,.3)}.modal::backdrop{background:rgba(14,22,47,.56);backdrop-filter:blur(3px)}.modal-header{display:flex;justify-content:space-between;gap:16px;padding:25px 29px 17px;border-bottom:1px solid #edf0f4}.modal-header h2{font-size:20px;letter-spacing:-.8px;margin:0}.close-button{border:0;width:30px;height:30px;border-radius:50%;background:#f0f2f5;color:#526079;font-size:23px;line-height:1}.customer-steps{display:flex;justify-content:space-between;padding:17px 29px;border-bottom:1px solid #edf0f4}.customer-step{font-size:10px;color:#9ca5b6;font-weight:700;display:flex;gap:6px;align-items:center}.customer-step i{display:grid;place-items:center;border-radius:50%;width:17px;height:17px;background:#e8ebf0;color:#79849a;font-style:normal;font-size:9px}.customer-step.active{color:#1f365b}.customer-step.active i{background:#172544;color:white}.customer-content{padding:26px 29px;min-height:260px}.customer-stage{display:none}.customer-stage.active{display:block}.local-file-card{border:1.5px dashed #c7d1df;border-radius:10px;min-height:179px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;color:#6c7790}.local-file-card.dragover{background:#f0fbf8;border-color:#3eaf99}.file-icon{display:grid;place-items:center;width:32px;height:36px;border-radius:5px;background:#e5f7f2;color:#228c76;font-size:20px}.local-file-card .file-icon{width:39px;height:43px;font-size:24px}.local-file-card strong{font-size:13px;color:#35435b}.local-file-card span:not(.file-icon){font-size:10px}.outline-button{background:#fff;color:#243454;border:1px solid #d7dce6;box-shadow:none;padding:9px 12px;font-size:11px}.local-notice{display:flex;align-items:flex-start;gap:8px;background:#f2fbf9;border-radius:7px;padding:10px 12px;margin-top:14px;color:#3d776d}.local-notice span{font-weight:800}.local-notice p{margin:0;font-size:10px;line-height:1.5}.local-notice strong{color:#176253}.customer-account-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:9px 2px;font-size:10px;color:#78849a}.customer-account-tabs{display:flex;gap:6px;margin-bottom:14px}.customer-account-tab{flex:1;border:1px solid #dbe0e9;background:#fff;color:#5d6883;border-radius:6px;padding:8px;font-size:11px;font-weight:700}.customer-account-tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}.customer-history-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0f4;padding:8px 0;font-size:10px}.customer-history-row strong{display:block;font-size:11px;color:#2c3a55}.customer-history-row span{color:#8490a4}.file-summary{display:flex;gap:10px;align-items:center;border:1px solid #e6eaf0;border-radius:7px;padding:13px}.file-summary strong{font-size:12px;display:block}.file-summary div span{font-size:10px;color:#78849a;display:block;margin-top:2px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:17px}.choice-grid label{font-size:10px;color:#6d7891;font-weight:700}.choice-grid label>span{display:block;margin-bottom:6px}.choice-grid select,.choice-grid input[type=number]{width:100%;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:9px;color:#273653;font-size:11px}.ink-coverage{margin-top:17px;border:1px solid #e6eaf0;border-radius:8px;padding:13px 15px;background:#fafbfd}.ink-coverage-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:700;color:#5d6883}.ink-coverage-head b{font-size:15px;color:#1f365b}.ink-coverage-note{display:block;margin-top:9px;font-size:9px;color:#7c879b;line-height:1.5}
.ink-channels{display:block;margin-top:6px;font-family:"DM Mono",ui-monospace,Consolas,monospace;font-size:9px;letter-spacing:.4px;color:#9aa4b8}
.ink-channels:empty{display:none}.ink-coverage-price{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf0f4;margin-top:11px;padding-top:9px;font-size:11px;color:#5d6883}.ink-coverage-price strong{font-size:15px;color:#1f365b}.stepper{border:1px solid #dbe0e9;border-radius:6px;display:flex;align-items:center;justify-content:space-between;color:#273653}.stepper button{width:32px;border:0;background:#f6f7f9;height:34px;font-size:17px;color:#4e5c73;flex:0 0 auto;cursor:pointer}.stepper output{font-size:12px;font-weight:800}.stepper input{flex:1;min-width:0;width:100%;border:0;background:transparent;text-align:center;font-family:inherit;font-size:12px;font-weight:800;color:#273653;height:34px;padding:0 2px;-moz-appearance:textfield}.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper input:focus{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.ready-package{text-align:center;padding:6px 16px}.package-lock{display:grid;place-items:center;width:50px;height:50px;margin:0 auto 13px;border-radius:50%;background:#e2f6f1;color:#197965;font-size:21px}.ready-package h3{font-size:16px;margin:0 0 7px}.ready-package>p{font-size:11px;line-height:1.6;color:#69758c;margin:0 auto 17px;max-width:425px}.ready-package dl{margin:0;text-align:left;border-top:1px solid #edf0f4}.ready-package dl div{display:flex;justify-content:space-between;border-bottom:1px solid #edf0f4;padding:9px 0;font-size:10px}.ready-package dt{color:#7c879b}.ready-package dd{margin:0;font-weight:700;color:#31405b}.modal-footer{padding:16px 29px;border-top:1px solid #edf0f4;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:10px;color:#778399}.modal-footer>div{display:flex;gap:8px}.compact-modal{width:min(455px,calc(100vw - 32px))}.checkout-body{padding:20px 27px 24px}.checkout-job{display:flex;gap:10px;align-items:center;border:1px solid #e7eaf0;border-radius:8px;padding:11px}.checkout-job strong{display:block;font-size:12px}.checkout-job span:not(.file-icon){font-size:10px;color:#7d879a;display:block;margin-top:2px}.checkout-job b{margin-left:auto;font-family:"DM Mono",monospace;font-size:14px}.pickup-name-row{display:block;margin-top:10px}.pickup-name-row>span{display:block;font-size:9px;color:#8490a4;font-weight:700;margin-bottom:5px}.pickup-name-row em{font-style:normal;font-weight:500;color:#a5aec0}.pickup-name-row input,.pickup-name-row textarea{width:100%;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:8px 9px;color:#273653;font-size:11px;font-family:inherit;resize:vertical}.pay-instruction{text-align:center;padding:25px 0 17px}.contactless.large{font-size:37px;color:#2a3e6a}.pay-instruction h3{margin:11px 0 5px;font-size:17px}.pay-instruction p{margin:0;color:#748097;font-size:11px}.pay-button{width:100%;padding:12px}.payment-security{font-size:9px;line-height:1.5;color:#8992a2;text-align:center;margin:12px 16px 0}.printer-row{display:flex;align-items:center;gap:9px;border:1px solid #e7eaf0;border-radius:8px;padding:9px 11px;margin-top:10px}.printer-row select{flex:1;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:7px 8px;color:#273653;font-size:11px}.printer-status-dot{width:8px;height:8px;border-radius:50%;flex:0 0 8px;background:#c4cad6}.printer-status-dot.checking{background:#e8ad39;animation:printer-pulse 1s ease-in-out infinite}.printer-status-dot.online{background:#5ed5ae}.printer-status-dot.offline{background:var(--danger)}@keyframes printer-pulse{0%,100%{opacity:1}50%{opacity:.35}}.printer-route{font-size:9.5px;color:#5d6883;background:#f3f6fa;border-radius:6px;padding:7px 9px;margin:8px 0 0;line-height:1.5}
.printer-route.hidden{display:none}
.printer-warning{background:#fdf3ea;color:#8a5a1e;border:1px solid #f0d0a4;border-radius:7px;padding:9px 11px;font-size:10px;line-height:1.5;margin:10px 0 0}.printer-list-row{display:flex;align-items:center;gap:9px;border:1px solid #e6eaf0;border-radius:8px;padding:10px 11px;margin-bottom:8px}.printer-list-row .printer-info{flex:1;min-width:0}.printer-list-row strong{display:block;font-size:11px}.printer-list-row .printer-info span{font-size:9px;color:#8490a4;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.printer-list-row .pill-default{background:#ebfaf7;color:#1b7a68;font-size:9px;font-weight:700;padding:2px 7px;border-radius:99px}.printer-list-row button{border:0;background:#f2f4f8;color:#43516c;border-radius:5px;padding:5px 8px;font-size:9px;font-weight:700}.scan-result-row{display:flex;align-items:center;gap:8px;border:1px solid #e6eaf0;border-radius:7px;padding:8px 10px;margin-bottom:6px}.scan-result-row span.scan-ip{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;color:#273653;flex:0 0 auto}.scan-result-row input{flex:1;min-width:0;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:6px 8px;color:#273653;font-size:11px}.scan-result-row button{border:0;background:var(--ink);color:#fff;border-radius:5px;padding:6px 10px;font-size:9px;font-weight:700;flex:0 0 auto}.local-badge{flex:0 0 auto;font-size:8px;font-weight:700;letter-spacing:.4px;border-radius:99px;padding:2px 6px;background:#eef1f6;color:#5d6883}
.scan-progress{font-size:10px;color:#8490a4;margin-top:8px}.operator-body{padding:22px 27px 6px}.operator-intro{font-size:11px;color:#69758c;line-height:1.6;margin:0 0 17px}.pricing-group{border:1px solid #e6eaf0;border-radius:8px;padding:13px 15px;margin-bottom:12px}.pricing-group h3{font-size:11px;margin:0 0 11px;letter-spacing:-.2px}.pricing-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.pricing-row:last-child{margin-bottom:0}.pricing-row label{font-size:10px;color:#6d7891;font-weight:700}.pricing-row input{width:92px;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:8px 9px;color:#273653;font-size:11px;text-align:right}.operator-note{font-size:9px;color:#96a0b3;line-height:1.5;margin:14px 0 20px}.error{color:var(--danger);font-size:10px;margin:0 0 8px}.architecture-flow{padding:31px 27px;display:flex;align-items:stretch;gap:10px}.architecture-flow>div{flex:1;background:#f6f8fc;padding:14px;border-radius:8px}.architecture-flow span{font-family:"DM Mono",monospace;font-size:10px;color:#6781ae}.architecture-flow strong{font-size:11px;display:block;margin:7px 0}.architecture-flow p{font-size:10px;color:#69758c;line-height:1.45;margin:0}.architecture-flow>i{display:flex;align-items:center;font-style:normal;color:#8b95a9}.toast{position:fixed;bottom:22px;right:22px;z-index:10;background:#152446;color:white;border-radius:7px;padding:11px 15px;font-size:11px;box-shadow:0 7px 22px rgba(9,20,49,.24);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}
@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:7;left:-245px;transition:left .25s;width:236px}.sidebar.open{left:0}.menu-button{display:block;border:0;background:transparent;font-size:20px;color:#24324f;padding:4px}.topbar{padding:0 24px}.page-content{padding:34px 24px}.workspace-grid{grid-template-columns:1fr}.terminal-panel{min-height:260px}.terminal-visual{margin-top:20px}.metrics{gap:10px}.metric-card{padding:16px}.connection-body{gap:15px}.topbar .breadcrumb{margin-right:auto;margin-left:13px}.lock-button span{display:none}}
@media (max-width:620px){.topbar{height:60px;padding:0 14px}.live-time,.lock-button{display:none}.page-content{padding:27px 15px}.hero-row{align-items:flex-start;flex-direction:column;margin-bottom:23px}.hero-row h1{font-size:26px}.primary-button{padding:10px 12px}.metrics{grid-template-columns:1fr}.metric-card{height:104px}.metric-card strong{margin:8px 0 4px}.workspace-grid{gap:12px}.panel-heading{padding:18px 17px 0}.connection-body{padding:20px 17px;flex-direction:column;text-align:center}.connection-copy p{max-width:400px}.connection-footer{padding:10px 15px}.terminal-panel{min-height:0}.terminal-visual{margin:19px auto 3px}.job-row{grid-template-columns:1fr auto;gap:9px;padding:12px}.job-row .job-meta{display:none}.privacy-banner{align-items:flex-start;flex-wrap:wrap}.privacy-banner div{display:block;flex:1}.privacy-banner div span{display:block;margin-top:4px}.privacy-link{margin-left:39px}.queue-head{display:none}.queue-row{grid-template-columns:1fr auto;padding:13px}.queue-row>*:nth-child(2),.queue-row>*:nth-child(3){display:none}.customer-steps{padding:14px 18px}.customer-step{font-size:0}.customer-step i{font-size:9px}.customer-content{padding:20px 18px;min-height:250px}.modal-header,.modal-footer{padding-left:18px;padding-right:18px}.choice-grid{grid-template-columns:1fr}.architecture-flow{flex-direction:column;padding:20px}.architecture-flow>i{justify-content:center;transform:rotate(90deg);height:10px}.modal-footer{align-items:flex-end}.modal-footer>span{max-width:150px}.checkout-body{padding:18px}}
.client-body{background:#eef1f7;min-height:100vh;padding:30px 20px}.client-shell{max-width:760px;margin:0 auto}.client-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:68px}.client-brand{color:var(--ink);padding:0;font-size:24px}.client-brand em{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;letter-spacing:1px;font-style:normal;color:#64728c;background:#dce4f2;border-radius:3px;padding:3px 5px;margin-left:-3px}.client-install{border:1px solid #cbd3e1;background:#fff;color:#263653;border-radius:6px;padding:8px 11px;font-size:11px;font-weight:800}.client-hero{text-align:center;margin-bottom:28px}.client-hero h1{font-size:31px;letter-spacing:-1.5px;line-height:1.1;margin:0 0 11px}.client-hero>p:last-child{font-size:13px;color:#66728a;max-width:490px;margin:0 auto;line-height:1.6}.client-card{background:#fff;border:1px solid #e2e6ee;border-radius:12px;box-shadow:0 15px 35px rgba(31,46,80,.08);overflow:hidden}.client-progress{display:flex;align-items:center;padding:20px 29px;border-bottom:1px solid #edf0f4}.client-progress span{font-size:10px;color:#9ba4b4;font-weight:800;display:flex;align-items:center;gap:5px}.client-progress b{font-weight:800}.client-progress i{height:1px;background:#e0e4eb;flex:1;margin:0 13px}.client-progress span.active{color:#26395e}.client-stage{padding:29px;display:none;min-height:280px}.client-stage.active{display:block}.client-drop{min-height:190px}.connect-kiosk{text-align:center;max-width:390px;margin:0 auto}.connect-kiosk .package-lock{margin-bottom:10px}.connect-kiosk h2{font-size:19px;letter-spacing:-.7px;margin:0 0 7px}.connect-kiosk p{font-size:11px;color:#6f7a90;line-height:1.6;margin:0 auto 20px}.connect-kiosk label{display:block;text-align:left;font-size:10px;color:#68738b;font-weight:800;margin-bottom:6px}.connect-kiosk input{width:100%;border:1px solid #cfd7e4;border-radius:7px;padding:11px 12px;text-align:center;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;letter-spacing:1.1px;color:#273958;text-transform:uppercase}.scan-button{border:0;background:transparent;color:#2a557f;font-size:11px;font-weight:800;margin-top:12px}.connect-kiosk small{display:block;color:#8a94a6;font-size:9px;margin-top:6px}.ready-summary{border-top:1px solid #ecf0f4;margin-top:22px;padding-top:12px;display:grid;grid-template-columns:95px 1fr;gap:4px;text-align:left;font-size:10px}.ready-summary span{color:#78849a}.ready-summary strong{font-size:10px;color:#33415d}.ready-price-note{font-size:9px;color:#8a94a6;line-height:1.5;margin:8px 0 0}.client-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 29px;border-top:1px solid #edf0f4}.client-footer>div{display:flex;align-items:center;gap:18px}.client-footer>div>span{font-size:10px;color:#778399}.client-safety{display:flex;gap:13px;margin:21px 7px 0;color:#59677e}.client-safety>span{font-size:24px;color:#258777}.client-safety strong{font-size:11px;color:#35445f}.client-safety p{font-size:10px;line-height:1.5;margin:3px 0 0}.complete-message{text-align:center;padding:30px 32px}.complete-message>span{display:grid;place-items:center;width:49px;height:49px;margin:0 auto 14px;border-radius:50%;background:#dff5ef;color:#1a816c;font-size:24px;font-weight:800}.complete-message h3{font-size:16px;margin:0 0 7px}.complete-message p{font-size:11px;color:#6e798f;line-height:1.6;margin:0}@media(max-width:620px){.client-body{padding:19px 13px}.client-header{margin-bottom:47px}.client-hero h1{font-size:27px}.client-progress{padding:16px 18px}.client-progress b{display:none}.client-progress i{margin:0 9px}.client-stage{padding:20px 17px;min-height:270px}.client-footer{padding:13px 17px}.client-footer>div>span{display:none}.client-safety{margin:18px 3px 0}.ready-summary{grid-template-columns:82px 1fr}}
.payment-methods{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.payment-option{border:1px solid #dce2eb;background:#fff;border-radius:7px;text-align:left;padding:9px 10px;display:grid;grid-template-columns:23px 1fr;column-gap:6px;color:#57637a}.payment-option>span{grid-row:span 2;font-size:18px;color:#4c6085}.payment-option strong{font-size:10px;color:#34425c}.payment-option small{font-size:8px;margin-top:2px}.payment-option.active{border-color:#4a638d;background:#f3f7fe;box-shadow:0 0 0 2px rgba(65,96,144,.1)}.payment-panel{display:flex;align-items:center;gap:15px;padding:18px 4px 17px}.payment-panel h3{font-size:16px;margin:0 0 5px;letter-spacing:-.5px}.payment-panel p{font-size:10px;color:#748097;line-height:1.55;margin:0 0 7px}.payment-qr{width:80px;height:80px;border:1px solid #d9e0eb;border-radius:6px;padding:8px;flex:0 0 80px;background:#fff}.payment-qr .qr-code,.payment-qr img{width:100%;height:100%;display:block;object-fit:contain}.payment-reference{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#657491;font-size:8px;letter-spacing:.5px}.cash-icon{display:grid;place-items:center;flex:0 0 56px;width:56px;height:56px;border-radius:50%;background:#fff0bf;color:#806418;font-size:28px;font-weight:800}@media(max-width:620px){.payment-panel{gap:11px}.payment-methods{gap:6px}.payment-option{padding:8px}.payment-security{margin-left:3px;margin-right:3px}}
.chat-panel{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.chat-messages{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:2px}
.chat-bubble{max-width:82%;padding:8px 11px;border-radius:10px;font-size:12px;line-height:1.45;word-break:break-word;white-space:pre-wrap}
.chat-bubble.mine{align-self:flex-end;background:var(--ink);color:#fff;border-bottom-right-radius:3px}
.chat-bubble.theirs{align-self:flex-start;background:#eef1f6;color:#273653;border-bottom-left-radius:3px}
.chat-bubble time{display:block;margin-top:3px;font-size:9px;opacity:.65}
.chat-unavailable{font-size:11px;color:#8490a4;margin:0;background:#f4f5f8;border-radius:7px;padding:9px 10px}
.chat-compose{display:flex;gap:8px;align-items:flex-end}
.chat-compose textarea{flex:1;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:8px 9px;color:#273653;font-size:11px;font-family:inherit;resize:vertical}
.chat-compose .primary-button{flex:0 0 auto;padding:9px 16px}
.tier-list{margin-top:10px}
.tier-head,.tier-row{display:grid;grid-template-columns:1fr 78px 78px 26px;gap:7px;align-items:center}
.tier-head{margin-bottom:4px}
.tier-head span{font-size:8.5px;font-weight:700;color:#9aa4b8;text-transform:uppercase;letter-spacing:.4px;text-align:right}
.tier-head span:first-child{text-align:left}
.tier-row{margin-bottom:6px}
.tier-row label{display:flex;align-items:center;gap:5px;font-size:10.5px;color:#5d6883;white-space:nowrap}
.tier-row label input{width:56px}
.tier-row input{border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:6px 7px;color:#273653;font-size:11px;min-width:0;width:100%;text-align:right}
.tier-row button[data-remove-tier]{border:0;background:transparent;color:#a5aec0;font-size:17px;line-height:1;padding:2px;cursor:pointer;border-radius:5px}
.binding-tier-row{display:grid;grid-template-columns:64px 64px 1fr 1fr 1fr 26px;gap:7px;align-items:center;margin-bottom:6px}
.binding-tier-row input{border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:6px 7px;color:#273653;font-size:11px;min-width:0;width:100%;text-align:right}
.binding-tier-row button[data-remove-binding-row]{border:0;background:transparent;color:#a5aec0;font-size:17px;line-height:1;padding:2px;cursor:pointer;border-radius:5px}
.tier-row button[data-remove-tier]:hover{color:var(--danger);background:#fdeced}
.add-tier{margin-top:4px;font-size:10.5px}
.paper-tier-group{border-top:1px solid #edf0f4;margin-top:11px;padding-top:10px}
.paper-tier-group h4{font-size:10px;color:#4f5e78;margin:0 0 5px}
.paper-tier-group .tier-list{margin-top:0}
.page-picker{border:1px solid #e6eaf0;border-radius:9px;padding:13px 14px;margin-top:12px}
.page-picker.hidden{display:none}
.preview-loading{font-size:10px;color:#8490a4;margin:0;padding:4px 0}
#pagePickerBody.hidden{display:none}
.page-picker-head{display:flex;align-items:center;gap:10px}
.page-picker-head label{font-size:10px;font-weight:700;color:#6d7891;white-space:nowrap}
.page-picker-head input{flex:1;min-width:0;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:7px 9px;color:#273653;font-size:11px}
.page-thumbs{display:flex;gap:7px;overflow-x:auto;padding:11px 2px 3px;scrollbar-width:thin}
.page-thumb{position:relative;flex:0 0 auto;border:2px solid #e0e5ee;border-radius:5px;background:#fff;padding:0;cursor:pointer;line-height:0;opacity:.42;transition:opacity .12s,border-color .12s}
.page-thumb.chosen{opacity:1;border-color:var(--ink)}
.page-thumb canvas{display:block;border-radius:3px;max-height:88px;width:auto}
.page-thumb span{position:absolute;bottom:2px;right:2px;background:rgba(16,25,54,.82);color:#fff;font-size:8px;font-weight:700;border-radius:3px;padding:1px 4px;line-height:1.4}
.sheet-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;border-top:1px solid #edf0f4;padding-top:10px;font-size:9.5px;color:#8490a4}
.sheet-nav{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.sheet-nav button{border:1px solid #dbe0e9;background:#fff;border-radius:5px;width:22px;height:22px;font-size:13px;color:#4e5c73;cursor:pointer;line-height:1}
.sheet-nav button:disabled{opacity:.35;cursor:not-allowed}
.sheet-nav b{font-family:"DM Mono",monospace;font-size:9.5px;color:#273653;min-width:34px;text-align:center}
.sheet-preview{display:flex;justify-content:center;padding:11px 0 2px}
.sheet-preview canvas{border:1px solid #dbe0e9;border-radius:3px;box-shadow:0 3px 12px rgba(20,30,60,.09)}
.price-breakdown{display:block;margin-top:5px;font-size:9.5px;color:#8490a4;text-align:right}
.price-breakdown.hidden{display:none}
.bulk-badge{display:inline-block;margin-left:7px;font-size:8.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:#176253;background:var(--teal);border-radius:99px;padding:2px 7px;vertical-align:middle}
.bulk-badge.hidden{display:none}
.inbox-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #eef1f6;padding:12px 4px}
.inbox-row:last-child{border-bottom:0}
.inbox-main{flex:1;min-width:0}
.inbox-main strong{display:block;font-size:12px;color:var(--ink)}
.inbox-file{display:block;font-size:10px;color:#5d6a82;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.inbox-file.muted{color:#a5aec0;font-style:italic}
.inbox-main small{display:block;font-size:9px;color:#8490a4;margin-top:3px;text-transform:uppercase;letter-spacing:.4px}
.inbox-actions{display:flex;gap:10px;flex:0 0 auto}
.nav-item b.hidden{display:none}
.kiosk-picker{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
#toggleLanScanButton{display:block;margin-top:10px}
#lanScanFields{margin-top:9px;border:1px solid #e6eaf0;border-radius:9px;padding:11px 12px}
.kiosk-picker .pricing-row{flex:1;min-width:190px;display:block}
.kiosk-picker label{display:block;font-size:9px;font-weight:700;color:#8490a4;text-transform:uppercase;letter-spacing:.4px;margin-bottom:5px}
.kiosk-picker input{width:100%;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:9px 10px;color:#273653;font-size:12px}
.kiosk-picker .outline-button{flex:0 0 auto;padding:9px 14px}
#kioskList{display:flex;flex-direction:column;gap:7px;margin-top:12px}
.kiosk-option{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid #e0e5ee;border-radius:9px;background:#fff;padding:11px 12px;cursor:pointer;font-family:inherit}
.kiosk-option:hover{border-color:var(--accent)}
.kiosk-option.selected{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink) inset;background:#f7f9fc}
.kiosk-directory-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}
.kiosk-directory-head strong{font-size:13px;color:var(--ink)}
.kiosk-directory-head span{font-size:10px;color:#8490a4;text-align:right}
.online-kiosk-list{display:grid;gap:8px}
.kiosk-select-label{margin-left:auto;color:#2c567d;font-size:10px;font-weight:800}
.client-stage[data-client-stage="1"]{min-height:0}
.kiosk-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#c9ceda}
.kiosk-dot.online{background:#1b9e7a;box-shadow:0 0 0 3px rgba(27,158,122,.16)}
.kiosk-dot.offline{background:#c8ccd6}
.kiosk-detail strong{display:block;font-size:12px;color:var(--ink)}
.kiosk-detail small{display:block;font-size:10px;color:#8490a4;margin-top:2px}
.chat-intro{font-size:10px;color:#8490a4;margin:0 0 2px;line-height:1.5}
.send-shortcut{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px dashed #d6dbe6;border-radius:9px;padding:12px;margin-top:12px}
.send-shortcut strong{display:block;font-size:12px;color:var(--ink)}
.send-shortcut p{margin:3px 0 0;font-size:10px;color:#8490a4;line-height:1.5;max-width:44ch}
.send-shortcut .outline-button{flex:0 0 auto;margin-left:auto;padding:9px 14px}
.referral-panel{border:1px solid #e7eaf0;border-radius:8px;padding:11px;margin-bottom:12px;background:#f9fafb}
.referral-points{display:flex;align-items:baseline;gap:8px}
.referral-points span{font-size:9px;font-weight:700;color:#8490a4;text-transform:uppercase;letter-spacing:.4px}
.referral-points strong{font-size:20px;color:var(--ink)}
.referral-points small{font-size:10px;color:#8490a4}
.referral-code-row{display:flex;align-items:center;gap:8px;margin-top:8px}
.referral-code-row span{font-size:10px;color:#8490a4}
.referral-code-row code{font-family:"DM Mono",monospace;font-size:13px;font-weight:700;letter-spacing:1px;background:#eef1f6;border-radius:5px;padding:3px 7px;color:#273653}
.redeem-points-row{border:1px solid #e7eaf0;border-radius:8px;padding:10px 11px;margin-top:10px}
.redeem-points-toggle{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:var(--ink);cursor:pointer}
.redeem-points-toggle b{font-weight:600;color:#8490a4;font-size:10px;margin-left:auto}
.redeem-points-controls,#redeemPointsControls{display:flex;align-items:center;gap:10px;margin-top:9px}
#redeemPointsSlider{flex:1}
#redeemPointsDiscount{font-family:"DM Mono",monospace;font-size:12px;font-weight:700;color:#1b7a68;flex:0 0 auto;min-width:60px;text-align:right}
.file-batch-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.file-batch-card{border:1px solid #e6eaf0;border-radius:9px;padding:13px 15px;background:#fff}
.file-batch-head{display:flex;align-items:center;gap:10px}
.file-batch-head .file-icon{flex:0 0 auto}
.file-batch-head strong{display:block;font-size:12px;color:#273653;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file-batch-head span{font-size:10px;color:#78849a;display:block;margin-top:2px}
.file-batch-remove{flex:0 0 auto;border:0;background:#f2f4f8;color:#8a4147;border-radius:6px;width:26px;height:26px;font-size:15px;font-weight:800;line-height:1}
.file-batch-preview-toggle{flex:0 0 auto;white-space:nowrap}
.file-preview-picker{border:1px solid #e6eaf0;border-radius:9px;padding:13px 14px;margin-top:12px}
.file-batch-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:12px}
.file-batch-controls label{font-size:9.5px;color:#6d7891;font-weight:700}
.file-batch-controls label>span{display:block;margin-bottom:5px}
.file-batch-controls select,.file-batch-controls input[type=number]{width:100%;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:7px 8px;color:#273653;font-size:10.5px}
.file-batch-kind{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:10px;color:#5d6883}
.file-batch-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf0f4;margin-top:11px;padding-top:9px;font-size:10px;color:#7c879b}
.file-batch-foot b{font-size:14px;color:#1f365b;font-family:"DM Mono",monospace}
.file-batch-note{font-size:9px;color:#96a0b3;margin-top:2px}
.batch-total-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf0f4;margin-top:16px;padding-top:13px;font-size:12px;color:#5d6883}
.batch-total-row strong{font-size:19px;color:#1f365b;font-family:"DM Mono",monospace}
.page-thumb.static{opacity:1;cursor:default}
@media(max-width:620px){.file-batch-controls{grid-template-columns:1fr 1fr}}
.inbox-file-list{display:block}
.inbox-file-list .inbox-file{white-space:normal;display:flex;align-items:center;gap:6px}
.inbox-file-list .inbox-file .text-button{flex:0 0 auto}
.inbox-file-detail{display:flex;flex:1;min-width:0;flex-direction:column}
.inbox-file-detail b{font-size:10px;color:#34415a;overflow:hidden;text-overflow:ellipsis}
.inbox-file-detail small{margin:1px 0 0;text-transform:none;letter-spacing:0}
.inbox-file-price{flex:0 0 auto;font-size:10px;color:#1f365b}
.inbox-batch-total{display:block;margin-top:3px;font-size:10px;font-weight:800;color:#1b7a68}
.batch-job-details{display:grid;gap:6px;margin-top:10px;border:1px solid #e7eaf0;border-radius:8px;padding:9px 11px}
.batch-job-details>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:6px;border-bottom:1px solid #edf0f4}
.batch-job-details>div:last-child{padding-bottom:0;border-bottom:0}
.batch-job-details span{min-width:0}
.batch-job-details strong,.batch-job-details small{display:block}
.batch-job-details strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.batch-job-details small{margin-top:2px;font-size:9px;color:#8490a4}
.batch-job-details b{flex:0 0 auto;font-size:10px;color:#1f365b}
.kiosk-list-controls{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}
.kiosk-list-controls input[type=text]{flex:1;min-width:160px;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:8px 10px;color:#273653;font-size:12px}
.kiosk-online-toggle{display:flex;align-items:center;gap:6px;font-size:10.5px;color:#5d6883;font-weight:700;white-space:nowrap}
#kioskList{margin-top:9px}
.kiosk-row{display:flex;align-items:center;gap:6px}
.kiosk-row .kiosk-option{flex:1;min-width:0}
.kiosk-favorite-star{flex:0 0 auto;width:34px;height:34px;border:1px solid #e0e5ee;border-radius:8px;background:#fff;color:#c9ceda;font-size:16px;line-height:1;cursor:pointer}
.kiosk-favorite-star:hover{border-color:var(--accent)}
.kiosk-favorite-star.active{color:#e0a530;border-color:#f0d9a8;background:#fdf7ea}
.kiosk-group-label{font-size:9px;font-weight:700;color:#8490a4;text-transform:uppercase;letter-spacing:.5px;margin:11px 0 6px}
.kiosk-group-label:first-child{margin-top:0}
.job-board-row{border-bottom:1px solid #eef1f6;padding:14px 4px}
.job-board-row:last-child{border-bottom:0}
.job-board-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.job-board-head strong{font-size:12.5px;color:var(--ink)}
.job-board-head small{font-size:10px;color:#8490a4}
.job-board-note{font-size:10.5px;color:#5d6883;margin:4px 0 0}
.job-board-files{margin:9px 0;display:flex;flex-direction:column;gap:4px}
.job-board-file{font-size:10px;color:#5d6883;background:#f6f8fb;border-radius:6px;padding:6px 9px}
.job-board-file b{color:#273653}
.job-board-bid{display:flex;gap:8px;align-items:center;margin-top:10px;flex-wrap:wrap}
.job-board-bid input[type=number]{width:110px;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:8px 9px;color:#273653;font-size:12px}
.job-board-bid input[type=text]{flex:1;min-width:150px;border:1px solid #dbe0e9;border-radius:6px;background:#fff;padding:8px 9px;color:#273653;font-size:12px}
.job-board-mine{font-size:10px;font-weight:700;color:#1b7a68;background:#ebfaf7;border-radius:99px;padding:3px 9px}
.client-mode-tabs{display:flex;gap:6px;margin-bottom:16px}
.client-mode-tab{flex:1;border:1px solid #dbe0e9;background:#fff;color:#5d6883;border-radius:7px;padding:9px;font-size:11px;font-weight:700;cursor:pointer}
.client-mode-tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.bidding-head{margin-bottom:10px}
.bidding-head strong{display:block;font-size:14px;color:#1f365b}
.bidding-head span{display:block;font-size:10.5px;color:#78849a;margin-top:3px}
.bidding-list{display:flex;flex-direction:column;gap:9px}
.bid-row{border:1px solid #e6eaf0;border-radius:9px;padding:12px 14px;display:flex;align-items:center;gap:12px}
.bid-row .bid-kiosk{flex:1;min-width:0}
.bid-row .bid-kiosk strong{display:block;font-size:12.5px;color:#1f365b}
.bid-row .bid-kiosk span{display:block;font-size:10px;color:#8490a4;margin-top:2px}
.bid-row .bid-message{font-size:10px;color:#5d6883;margin-top:5px;font-style:italic}
.bid-row .bid-amount{font-family:"DM Mono",monospace;font-size:16px;font-weight:700;color:#1f365b;flex:0 0 auto}
.bid-row button{flex:0 0 auto}
.google-signin-slot{display:flex;justify-content:center;margin-bottom:6px;min-height:0}
.google-signin-slot:empty{margin-bottom:0}

/* The auth-* helpers below are shared: the BYOD modal uses all of them, and
   the kiosk's operator recovery steps in index.html reuse the link/badge ones
   from inside a plain modal. So --auth-accent has to resolve outside
   .auth-modal too — it defaults to the same blue .text-button uses elsewhere
   on the kiosk, and .auth-modal overrides it to the BYOD purple. Without this
   default the color declarations would be invalid at computed-value time and
   silently fall back to inherited body text. */
:root{--auth-accent:#2c567d}

/* Card chrome below is scoped to the BYOD sign-in modal only (client.html) —
   the identical #customerAccountModal markup on the kiosk (index.html) never
   gets the auth-modal class, so it keeps its plain look. */
.auth-modal{--auth-grad-1:#7c3aed;--auth-grad-2:#4338ca;--auth-accent:#5b52e0;border-radius:20px;overflow:hidden}
.auth-modal::backdrop{background:linear-gradient(160deg,var(--auth-grad-1),var(--auth-grad-2))}
.auth-modal .modal-header{position:relative;justify-content:center;text-align:center;padding:28px 40px 8px;border-bottom:0}
.auth-modal .modal-header .eyebrow{display:none}
.auth-modal .modal-header h2{font-size:22px;letter-spacing:-.7px}
.auth-modal .close-button{position:absolute;right:18px;top:18px}
.auth-brand{margin:0 0 10px;font-size:19px;font-weight:800;letter-spacing:-.5px;color:var(--ink)}
.auth-brand span{color:var(--auth-accent)}
.auth-modal .operator-body{padding:6px 32px 4px}
.auth-modal .operator-intro{text-align:center;max-width:340px;margin:0 auto 18px}
.auth-modal .pricing-group{background:#faf9ff;border-color:#ece8fb}
.auth-field{display:block;margin-bottom:13px}
.auth-field>span{display:block;font-size:11px;font-weight:700;color:#3a4260;margin-bottom:6px}
.auth-field>input,.auth-password-wrap input{width:100%;box-sizing:border-box;border:1.5px solid #e3e0f5;border-radius:12px;background:#faf9ff;padding:12px 14px;font-size:13px;color:var(--ink);font-family:inherit}
.auth-field>input:focus,.auth-password-wrap input:focus{outline:none;border-color:var(--auth-accent);background:#fff}
.auth-password-wrap{position:relative;display:block}
.auth-password-wrap input{padding-right:56px}
.auth-eye-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--auth-accent);font-size:10px;font-weight:800;padding:8px 8px}
.auth-forgot-link,.auth-resend-link{display:block;margin:2px 0 4px;text-align:right;color:var(--auth-accent);font-size:11px;font-weight:700}
.auth-resend-link{text-align:center;margin:14px auto 0}
.auth-back-link{color:#6d7891;font-size:11px;font-weight:700;margin-bottom:12px}
.auth-modal .customer-account-tabs{background:#f2f0fb;border-radius:99px;padding:4px;gap:2px}
.auth-modal .customer-account-tab{border:0;border-radius:99px;background:transparent;color:#6d668f}
.auth-modal .customer-account-tab.active{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(76,52,190,.16)}
.auth-modal .primary-button{width:100%;background:linear-gradient(135deg,var(--auth-grad-1),var(--auth-grad-2));border-radius:12px;padding:13px 15px;font-size:13px;box-shadow:0 8px 18px rgba(93,63,211,.28)}
.auth-modal .primary-button:hover{background:linear-gradient(135deg,var(--auth-grad-1),var(--auth-grad-2));filter:brightness(1.05)}
.auth-modal .modal-footer{border-top:0;padding:6px 32px 26px;flex-direction:column;align-items:stretch;gap:10px}
.auth-modal .modal-footer>span{text-align:center;order:2}
.auth-modal .modal-footer>div{display:flex;flex-direction:column;gap:8px;order:1}
.auth-modal .outline-button{width:100%}
.auth-divider{display:flex;align-items:center;gap:10px;margin:16px 0 10px;color:#9ba2ba;font-size:10px;font-weight:700}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:#e7e5f5}
.auth-step-copy{font-size:11px;color:#69758c;line-height:1.6;margin:0 0 16px}
.auth-step-copy-center{text-align:center}
.auth-icon-badge{width:46px;height:46px;margin:4px auto 14px;border-radius:14px;background:var(--lilac);color:var(--auth-accent);display:grid;place-items:center;font-size:19px}
.auth-otp-row{display:flex;gap:10px;justify-content:center;margin-bottom:6px}
.auth-otp-box{width:46px;height:52px;text-align:center;font-size:19px;font-weight:800;border:1.5px solid #e3e0f5;border-radius:12px;background:#faf9ff;color:var(--ink)}
.auth-otp-box:focus{outline:none;border-color:var(--auth-accent);background:#fff}
.auth-requirements{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}
.auth-requirements li{display:flex;align-items:center;gap:8px;font-size:11px;color:#9aa1b5}
.auth-requirements li.met{color:#2c9a6a}
.auth-req-check{width:15px;height:15px;border-radius:50%;background:#eceef3;color:transparent;display:grid;place-items:center;font-size:9px;font-weight:800;flex:0 0 auto}
.pricing-group .totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:8px}.pricing-group .totals>div{background:#f6f8fc;border-radius:7px;padding:8px;min-width:0}.pricing-group .totals span{display:block;font-size:8px;color:#8a95a9;text-transform:uppercase;letter-spacing:.35px}.pricing-group .totals strong{display:block;font-size:12px;margin-top:3px;overflow:hidden;text-overflow:ellipsis}.operator-overview-row{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid #edf0f4;font-size:9px}.operator-overview-row:last-child{border-bottom:0}.operator-overview-row strong{font-size:10px}.operator-overview-row span{color:#8490a4;text-align:right}
.kiosk-lock-screen{position:fixed;inset:0;z-index:100;background:linear-gradient(145deg,#0f1934,#253b6d);display:grid;place-items:center;padding:20px}.kiosk-lock-card{width:min(360px,calc(100vw - 32px));background:#fff;border-radius:16px;padding:34px;text-align:center;box-shadow:0 28px 80px rgba(0,0,0,.35)}.kiosk-lock-card .brand-mark{margin:0 auto 18px}.kiosk-lock-card h2{font-size:24px;margin:6px 0 8px}.kiosk-lock-card p:not(.eyebrow){font-size:11px;line-height:1.6;color:#69758c;margin:0 0 20px}.kiosk-lock-card .primary-button{width:100%}
.kiosk-lock-card .primary-button,.kiosk-lock-card .kiosk-lock-secondary{display:block}
.kiosk-lock-card .kiosk-lock-secondary{width:100%;margin-top:9px}
.kiosk-lock-card #employeeLoginForm{text-align:left}
.kiosk-lock-card #employeeLoginForm .pickup-name-row{margin-top:0}
.kiosk-lock-card #employeeLoginForm .primary-button{width:100%;margin-top:4px}
.kiosk-lock-card #employeeLoginForm .auth-back-link{display:block;width:100%;text-align:center;margin-top:12px}
.auth-requirements li.met .auth-req-check{background:#2c9a6a;color:#fff}
.invoice-ready-body{padding:28px 30px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.invoice-ready-check{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#dff7ef;color:#176b59;font-size:23px;font-weight:900}.invoice-ready-body p{font-size:11px;color:#6f7a91;margin:0}.invoice-ready-body>strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;color:#263552}.invoice-ready-body .primary-button{text-decoration:none;margin-top:4px}
.history-invoice-link{display:inline-block;margin-top:3px;color:#2c567d!important;font-size:9px;font-weight:800;text-decoration:none}.history-amount{text-align:right;white-space:nowrap}
.status-dot.collected{background:#7b879d}
#employeeSalesTotals{grid-template-columns:repeat(4,minmax(0,1fr))}
.employee-collection-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid #edf0f4}.employee-collection-row:first-child{border-top:0}.employee-collection-row strong,.employee-collection-row small{display:block}.employee-collection-row strong{font-size:11px}.employee-collection-row small{font-size:9px;color:#8490a4;margin-top:3px}.employee-collection-row>b{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.employee-collection-row .primary-button{padding:8px 10px;font-size:10px}
.collection-method-fieldset{border:0;padding:0;margin:16px 0 0}.collection-method-fieldset legend{font-size:10px;font-weight:800;color:#5d6883;margin-bottom:8px}.collection-payment-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.collection-payment-option{border:1px solid #dce2eb;background:#fff;border-radius:8px;padding:11px 8px;color:#57637a;text-align:center}.collection-payment-option span,.collection-payment-option strong,.collection-payment-option small{display:block}.collection-payment-option span{font-size:20px;color:#4c6085;margin-bottom:5px}.collection-payment-option strong{font-size:11px;color:#34425c}.collection-payment-option small{font-size:8px;margin-top:3px}.collection-payment-option.active{border-color:#4a638d;background:#f3f7fe;box-shadow:0 0 0 2px rgba(65,96,144,.1)}
@media(max-width:620px){#employeeSalesTotals{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-collection-row{grid-template-columns:minmax(0,1fr) auto}.employee-collection-row .primary-button{grid-column:1/-1}.collection-payment-methods{grid-template-columns:1fr}}
#customerModal{max-height:calc(100vh - 32px);overflow:auto}
.add-local-files{margin-left:auto;white-space:nowrap;cursor:pointer}
@media(max-width:620px){.file-summary{align-items:flex-start;flex-wrap:wrap}.add-local-files{width:100%;margin-left:42px;text-align:center}}
