/* Owner portal and payroll use the shared black-and-gold theme. */
.operator-shell{min-height:100vh;background:var(--bg);color:var(--ink)}
.operator-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 4vw;background:var(--bg);border-bottom:1px solid var(--line)}
.operator-header>div{display:flex;flex-wrap:wrap;gap:10px}
.operator-main{max-width:1580px;margin:auto;padding:36px 4vw 64px}.operator-main .page-heading{margin-bottom:24px}
.operator-access{max-width:520px;margin:32px auto;padding:28px}.operator-access h1{font-size:28px;margin:12px 0}.operator-access p{color:var(--muted);font-size:14px;line-height:1.7}.operator-access>.btn{margin-top:16px}
.operator-search input::placeholder{color:var(--muted)}.operator-placeholder p{color:var(--muted);font-size:13px;line-height:1.7}
.operator-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px;margin:22px 0}
.operator-stats .surface-card{padding:18px}.operator-stats span{display:block;font-size:12px;color:var(--muted)}.operator-stats strong{display:block;font-size:30px;margin-top:8px}
.operator-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:24px;align-items:start}
.operator-directory,.operator-detail,.operator-placeholder{padding:24px;min-width:0}.operator-directory h2{margin:0 0 16px}
.operator-search{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.operator-search label{display:grid;gap:7px;font-size:12px;font-weight:600}.operator-search label:first-child{flex:1;min-width:180px}
.operator-search input,.operator-search select{width:100%;min-height:44px;padding:8px 10px;border:1px solid var(--control-line);border-radius:var(--radius-control);background:var(--bg);color:var(--ink);font:inherit}
.operator-client-list{margin-top:18px}.operator-client{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:17px 12px;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;color:var(--ink);cursor:pointer;font:inherit;border-radius:7px}
.operator-client:hover{background:var(--surface-raised)}.operator-client.selected{background:var(--gold-surface)}.operator-client.selected{box-shadow:inset 3px 0 var(--gold)}.operator-client:focus-visible{outline:3px solid var(--gold-hover);outline-offset:2px}
.operator-client strong,.operator-client small{display:block}.operator-client strong{font-size:14px}.operator-client small{font-size:11px;color:var(--muted);margin-top:6px;overflow-wrap:anywhere}.operator-client-state{text-align:right;flex-shrink:0;max-width:40%}
.operator-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px}.operator-pagination span{margin-right:auto;font-size:11px;color:var(--muted)}.operator-pagination .btn{font-size:11px;padding:9px 12px}
.operator-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:16px 0 24px}.operator-facts div{min-width:0}.operator-facts dt{font-size:11px;color:var(--muted)}.operator-facts dd{margin:5px 0 0;font-size:14px;font-weight:600;text-transform:capitalize}
.operator-detail h3{font-size:15px;margin:0 0 3px}.operator-plan-form{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.operator-detail textarea{resize:vertical}
.operator-status-action{display:flex;gap:16px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.operator-status-action p{font-size:12px;line-height:1.6;color:var(--muted)}
.operator-error{padding:15px 18px;border:1px solid var(--danger);border-radius:10px;background:var(--danger-surface);color:var(--danger);font-size:13px}.operator-loading,.operator-empty{font-size:13px;line-height:1.6;color:var(--muted);padding:14px 0}
.operator-request{padding:14px;margin-bottom:20px;border-radius:9px;border:1px solid var(--gold-line);background:var(--gold-surface);font-size:12px}.operator-request p{overflow-wrap:anywhere}.operator-branches{margin-top:24px;font-size:13px}.operator-branches summary{cursor:pointer;font-weight:600}.operator-branches p{padding:8px 0}.operator-branches small{display:block;margin-top:4px;font-size:11px;color:var(--muted)}
.operator-activity-heading{margin-top:24px!important}.operator-events article{padding:12px 0;border-bottom:1px solid var(--line)}.operator-events strong{display:block;font-size:12px;line-height:1.6}.operator-events small,.operator-events p{font-size:11px;color:var(--muted)}
.payroll-period{font-size:11px;color:var(--muted);margin-top:5px;display:block}.payroll-month-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0;padding:18px 22px}.payroll-month-summary strong{font-size:22px}.payroll-month-summary small{display:block;margin-top:5px;color:var(--muted);font-size:11px}
@media(max-width:1100px){.operator-layout{grid-template-columns:1fr}.operator-detail{scroll-margin-top:20px}}
@media(max-width:620px){.operator-main{padding:24px 16px 48px}.operator-header{padding:14px 16px;flex-wrap:wrap}.operator-header .brand-wordmark{width:155px}.operator-directory,.operator-detail,.operator-placeholder{padding:18px}.operator-client{align-items:start;gap:10px}.operator-client-state{max-width:35%}.operator-client small{font-size:10px}.operator-facts{gap:16px 10px}.operator-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-search label:first-child{flex-basis:100%}.payroll-month-summary{align-items:start}.payroll-month-summary strong{white-space:nowrap}}
