.business-page{background:#f3f7f4;color:#172c22;margin:0;font:16px/1.5 system-ui,sans-serif}.business-page #business-root{max-width:1200px;margin:auto;padding:24px}.business-header{display:flex;justify-content:space-between;align-items:center;padding:10px 0 24px}.business-header a{color:#19663e;text-decoration:none;font-size:24px}.business-login{max-width:760px;margin:24px auto}.business-device-inputs{grid-column:1/-1;display:grid;gap:20px}.business-device-inputs fieldset{border:1px solid #c8d6cb;border-radius:10px;padding:18px;display:grid;gap:12px}.business-page .crm-card{background:white}.business-page input,.business-page select,.business-page textarea{background:white;color:#172c22;border:1px solid #b9c9bd}.business-page .gk-btn{cursor:pointer;display:inline-block;padding:10px 16px;border:1px solid #b6cbbb;border-radius:8px;background:#edf4ee;color:#172c22;text-decoration:none}.business-page .gk-btn-primary{background:#176947;color:white}.business-page .crm-dialog{background:white;color:#172c22}.business-page .crm-tabs button{background:#edf4ee;color:#172c22}.business-page .crm-table small{display:block;color:#56665c}.business-page .crm-link{color:#176947}.business-page .crm-error{color:#a11b1b}.business-page .crm-muted,.business-page .crm-summary-note{color:#56665c}button:disabled{opacity:.5;cursor:wait}textarea{min-height:90px}small{display:block}p{white-space:pre-line}

/* Public business portal: Geekys website palette. */
.business-page{color-scheme:dark;--gk-bg:#0d0d0d;--gk-surface:#171a16;--gk-border:#353c2d;--gk-ink:#f5f5f5;--gk-ink-soft:#bfc5b8;--gk-success:#9bc85c;--gk-success-bg:#1b3520;--gk-warning:#e0c56e;--gk-warning-bg:#39311c;--gk-danger:#ff9999;--gk-danger-bg:#3a2020;background:#0d0d0d;color:#f5f5f5;min-height:100vh}
.business-page #business-root{padding:28px 24px 56px}
.business-header{border-bottom:1px solid #544724;margin-bottom:28px;padding-bottom:22px;gap:16px}
.business-header a{color:#9bc85c;font-weight:800;letter-spacing:-.03em}
.business-page h1,.business-page h2,.business-page h3{color:#f5f5f5;letter-spacing:-.025em}
.business-page h1{font-size:clamp(26px,4vw,36px);line-height:1.2}
.business-page .crm-card,.business-page .crm-dialog{background:#171a16;color:#f5f5f5;border-color:#353c2d;border-radius:16px}
.business-page .business-login{padding:32px}
.business-page input,.business-page select,.business-page textarea{background:#0d0d0d;color:#f5f5f5;border:1px solid #515744;border-radius:9px;padding:12px}
.business-page input:focus,.business-page select:focus,.business-page textarea:focus{outline:2px solid #9bc85c;outline-offset:2px}
.business-page .crm-field{color:#dce1d6;font-size:14px}
.business-page .gk-btn,.business-page .crm-tabs button{background:#23291f;color:#f5f5f5;border:1px solid #48543a;border-radius:999px;padding:12px 20px;font-weight:700}
.business-page .gk-btn-primary,.business-page .crm-tabs button[aria-current=page]{background:#32651a;border-color:#32651a;color:#fff}
.business-page .gk-btn:hover,.business-page .crm-tabs button:hover{background:#34432b}
.business-page .gk-btn-primary:hover{background:#407d23}
.business-page button:focus-visible,.business-page a:focus-visible,.business-page summary:focus-visible{outline:2px solid #d4af37;outline-offset:4px}
.business-page .crm-link{color:#b3d881;text-decoration:underline;text-underline-offset:3px}
.business-page .crm-error{color:#ffaaaa}
.business-page .crm-muted,.business-page .crm-summary-note,.business-page .crm-table small{color:#bfc5b8}
.business-page .business-device-inputs fieldset{border-color:#515744}
.business-page .crm-message,.business-page [role=status]:not(:empty){background:#1d2c18;border:1px solid #52673d;border-radius:10px;padding:14px 18px}
.business-page summary{cursor:pointer;color:#d4af37;margin:18px 0}
.business-page .business-job{padding:0;overflow:hidden}
.business-page .business-job-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0;padding:22px;list-style:none;color:#f5f5f5}
.business-page .business-job-summary::-webkit-details-marker{display:none}
.business-page .business-job-summary::after{content:'+';font-size:26px;color:#9bc85c;line-height:1}
.business-page .business-job[open]>.business-job-summary::after{content:'−'}
.business-page .business-job-summary strong{display:block;font-size:22px}
.business-page .business-job-summary small{color:#bfc5b8;margin-top:3px}
.business-page .business-job-meta{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-left:auto}
.business-page .business-attention{display:inline-flex;align-items:center;gap:7px;border:1px solid #78a94a;border-radius:999px;background:#1b3520;color:#b9e57f;padding:6px 10px;font-size:13px;font-weight:800;line-height:1;white-space:nowrap}
.business-page .business-attention [aria-hidden=true]{font-size:15px;color:#9bc85c}
.business-page .business-job-body{border-top:1px solid #353c2d;padding:8px 22px 22px}
@media(max-width:900px){
 .business-page .crm-device-table thead,.business-page .crm-invoice-table thead{display:none}
 .business-page .crm-device-table,.business-page .crm-device-table tbody,.business-page .crm-invoice-table,.business-page .crm-invoice-table tbody{display:block;width:100%}
 .business-page .crm-device-table>tbody>tr:not(.crm-history-row),.business-page .crm-invoice-table>tbody>tr{display:block;margin:0 0 14px;padding:12px 14px;border:1px solid #353c2d;border-radius:12px;background:#11140f}
 .business-page .crm-device-table>tbody>tr:not(.crm-history-row)>td,.business-page .crm-invoice-table>tbody>tr>td{display:grid;grid-template-columns:minmax(100px,30%) minmax(0,1fr);gap:12px;align-items:start;padding:8px 0;border:0;overflow-wrap:anywhere}
 .business-page .crm-device-table>tbody>tr:not(.crm-history-row)>td::before,.business-page .crm-invoice-table>tbody>tr>td::before{color:#8f998c;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
 .business-page .crm-device-table>tbody>tr>td:nth-child(1)::before{content:'Device'} .business-page .crm-device-table>tbody>tr>td:nth-child(2)::before{content:'Fault'} .business-page .crm-device-table>tbody>tr>td:nth-child(3)::before{content:'Status / update'} .business-page .crm-device-table>tbody>tr>td:nth-child(4)::before{content:'Estimate'} .business-page .crm-device-table>tbody>tr>td:nth-child(5)::before{content:'Final charge'} .business-page .crm-device-table>tbody>tr>td:nth-child(6)::before{content:'Actions'}
 .business-page .crm-invoice-table>tbody>tr>td:nth-child(1)::before{content:'Invoice'} .business-page .crm-invoice-table>tbody>tr>td:nth-child(2)::before{content:'Business / job'} .business-page .crm-invoice-table>tbody>tr>td:nth-child(3)::before{content:'Total'} .business-page .crm-invoice-table>tbody>tr>td:nth-child(4)::before{content:'Paid'} .business-page .crm-invoice-table>tbody>tr>td:nth-child(5)::before{content:'Balance'} .business-page .crm-invoice-table>tbody>tr>td:nth-child(6)::before{content:'Status'} .business-page .crm-invoice-table>tbody>tr>td:nth-child(7)::before{content:'Actions'}
 .business-page .crm-history-row{display:block;margin:-8px 0 16px}.business-page .crm-history-row td{display:block!important;padding:0 14px 12px!important;border:0!important}.business-page .crm-history-row td::before{content:none!important}
 .business-page .crm-action-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
 .business-page .crm-table-wrap{overflow:visible}
 .business-page .crm-dialog{box-sizing:border-box;width:calc(100% - 32px);max-height:92dvh;overflow:auto}
}
@media(max-width:650px){
 .business-page #business-root{padding:20px 14px 40px}.business-page .crm-card{padding:17px}.business-page .business-login{padding:24px 18px}.business-page .business-job{padding:0}.business-header a{font-size:22px}
 .business-page .crm-header>.gk-btn,.business-page .crm-dialog-actions .gk-btn{width:100%;box-sizing:border-box;text-align:center}
 .business-page .crm-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.business-page .crm-tabs button{min-width:0;padding:11px 8px}
 .business-page .business-job-summary{position:relative;display:grid;grid-template-columns:1fr;padding:18px 48px 18px 18px}.business-page .business-job-summary::after{position:absolute;right:18px;top:20px}.business-page .business-job-meta{align-items:flex-start;justify-content:flex-start;flex-direction:row;flex-wrap:wrap;gap:8px;margin:0}.business-page .business-attention{font-size:12px;white-space:normal}.business-page .business-job-body{padding:8px 16px 18px}
 .business-page .crm-device-table>tbody>tr:not(.crm-history-row)>td,.business-page .crm-invoice-table>tbody>tr>td{grid-template-columns:88px minmax(0,1fr);gap:9px}.business-page .crm-action-group{display:grid;grid-template-columns:1fr;width:100%}.business-page .crm-device-table .gk-btn,.business-page .crm-invoice-table .gk-btn{width:100%;box-sizing:border-box;margin:3px 0;text-align:center}
 .business-page .business-device-inputs fieldset{padding:14px}.business-page .crm-dialog{width:calc(100% - 20px);padding:18px}.business-page .crm-dialog-actions{flex-direction:column-reverse}
}
.business-page .crm-decision-actions{display:grid;gap:12px;width:min(100%,220px)}
.business-page .crm-decision-actions .gk-btn{box-sizing:border-box;margin:0;width:100%;text-align:center}
.business-page .gk-btn-approve{background:#32651a;border-color:#4d8b2d;color:#fff}
.business-page .gk-btn-approve:hover{background:#407d23;border-color:#64a53d}
.business-page .gk-btn-decline{background:#8f2530;border-color:#b33b47;color:#fff}
.business-page .gk-btn-decline:hover{background:#a92d39;border-color:#d1535e}
