:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--text);background:var(--surface);font-synthesis:none;--navy:#10273c;--teal:#076671;--muted:#778697;--line:#e3e9ef;--surface:#fff}*{box-sizing:border-box}body{margin:0;font-size:14px}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:5px;padding:9px 14px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}button:hover,.button:hover{background:var(--surface);border-color:var(--line)}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid var(--line);outline-offset:2px}.primary{background:var(--teal);border-color:var(--teal);color:var(--text);padding:11px 17px;font-weight:600}.primary:hover{background:var(--selected);color:var(--text)}.text-button{background:none;border:0;padding:0;color:var(--teal);font-weight:500;text-align:left}.icon-button{background:transparent;border:0;padding:8px;font-size:24px}.muted{color:var(--muted);font-size:12px}h1,h2,h3,p{margin-top:0}h1{font-size:29px;letter-spacing:-.8px;margin-bottom:8px}h2{font-size:16px;font-weight:650;margin-bottom:0}h3{font-size:13px}p{line-height:1.7}small{font-size:11px}input,select,textarea{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:5px;min-height:39px;color:var(--text);padding:9px 11px}textarea{resize:vertical}select{padding-right:26px}input::placeholder,textarea::placeholder{color:var(--muted)}input[type=date]{width:144px}svg{flex-shrink:0}.app-shell{display:flex;min-height:100vh}.sidebar{width:218px;background:var(--navy);color:var(--text);position:fixed;inset:0 auto 0 0;z-index:20;display:flex;flex-direction:column}.brand{display:flex;gap:13px;align-items:center;padding:30px 25px 27px;color:var(--text);font-size:25px;font-weight:600;letter-spacing:-.8px}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:1.1px;margin-top:5px;color:var(--muted)}.brandmark{display:flex;align-items:flex-end;gap:3px;height:28px}.brandmark i{width:5px;background:var(--selected);height:13px}.brandmark i:nth-child(2){height:21px;background:var(--selected)}.brandmark i:nth-child(3){height:28px;background:var(--selected)}.sidebar nav{padding-top:12px}.sidebar nav button{width:100%;border:0;border-left:3px solid transparent;border-radius:0;background:transparent;color:var(--text);justify-content:flex-start;padding:14px 23px;gap:16px;text-align:left;min-height:62px}.sidebar nav button span{font-size:13px}.sidebar nav button small{display:block;color:var(--muted);font-size:10px;margin-top:3px;letter-spacing:.2px}.sidebar nav button.active{background:var(--selected);border-left-color:var(--line);color:var(--text)}.sidebar nav button.active small{color:var(--text)}.sidebar nav button:hover{background:var(--selected)}.nav-count{background:var(--selected);color:var(--text);font-size:10px;border-radius:12px;min-width:21px;padding:3px;text-align:center;margin-left:auto}.sidebar-bottom{margin-top:auto;padding:25px;color:var(--muted);font-size:11px}.sidebar-bottom small{display:block;margin-top:14px;color:var(--muted)}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--selected);margin-right:7px}.workspace{margin-left:218px;width:calc(100% - 218px)}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid var(--line);background:var(--surface)}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb span{margin:0 13px;color:var(--text)}.account{display:flex;gap:11px;align-items:center}.account b{font-size:12px;font-weight:600}.account small{display:block;color:var(--muted);margin-top:4px}.account .text-button{font-size:11px;margin-left:13px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--raised);color:var(--text);display:inline-flex;align-items:center;justify-content:center;font-weight:600}.avatar.small{width:25px;height:25px;font-size:11px;margin-right:10px;background:var(--surface);color:var(--muted)}.content{padding:30px 34px 40px;max-width:1660px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.page-heading p{font-size:12px;color:var(--muted);margin-bottom:0}.toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}.date-range{display:flex;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:0 6px;gap:4px}.date-range input{border:0;font-size:12px;width:137px;padding:9px 6px}.date-range span{color:var(--muted)}.segmented{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:5px;overflow:hidden}.segmented button{border:0;border-radius:0;background:transparent;font-size:12px;padding:11px 16px}.segmented button.selected{background:var(--teal);color:var(--text)}.currency-label{background:var(--surface);border:1px solid var(--line);padding:10px 13px;border-radius:5px;font-size:12px}.currency-label small{margin-left:10px;color:var(--muted)}.refresh{margin-left:auto;font-size:12px}.pending-banner{width:100%;display:flex;justify-content:space-between;white-space:normal;text-align:left;background:var(--warning-bg);border:1px solid var(--line);border-radius:5px;padding:12px 15px;margin-bottom:17px;color:var(--warning);font-size:12px}.pending-banner b{display:inline-flex;width:17px;height:17px;background:var(--selected);color:var(--text);border-radius:50%;justify-content:center;align-items:center;margin-right:8px;font-size:11px}.pending-banner strong{display:flex;align-items:center;gap:9px;color:var(--text);font-size:11px;white-space:nowrap}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:19px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:22px 18px;display:flex;gap:14px;min-width:0}.metric-icon{width:34px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--teal);background:var(--surface);border-radius:6px;flex-shrink:0}.metric h3{font-weight:500;margin:1px 0 9px;font-size:11px}.metric strong{font-size:25px;letter-spacing:-.8px;white-space:nowrap;font-variant-numeric:tabular-nums}.metric strong small{font-size:14px;letter-spacing:0}.metric p{font-size:10px;color:var(--muted);margin:8px 0 0}.metric.profit{border-top:2px solid var(--line)}.metric.profit strong{color:var(--text)}.overview-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:18px;margin-bottom:20px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:5px;margin-bottom:20px;overflow:hidden}.overview-grid .panel{margin-bottom:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 20px 18px}.panel-heading h2 span{font-size:11px;font-weight:400;color:var(--muted);margin-left:8px}.legend{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:7px}.legend i{width:8px;height:8px;border-radius:2px;background:var(--selected)}.chart{display:flex;align-items:flex-end;height:237px;gap:14px;padding:22px 22px 28px;overflow-x:auto;background:repeating-linear-gradient(to top,transparent 0,transparent 46px,var(--surface) 47px,var(--surface) 48px);margin:0 20px}.bar-column{flex:1;min-width:35px;max-width:100px;display:flex;flex-direction:column;align-items:center;position:relative;justify-content:flex-end;height:100%}.bar{width:75%;background:var(--selected);border-radius:2px 2px 0 0;min-width:15px}.bar.negative{background:var(--selected)}.bar-column>small{position:absolute;bottom:-21px;font-size:10px;color:var(--muted);white-space:nowrap}.bar-value{font-size:9px;margin-bottom:7px;color:var(--muted);white-space:nowrap}.chart-note{font-size:10px;color:var(--muted);margin:14px 23px 16px}.breakdown{padding:0 20px 21px}.breakdown .panel-heading{padding-left:0;padding-right:0;margin-bottom:3px}.break-row{padding:13px 0;display:flex;justify-content:space-between;font-size:12px;border-bottom:1px solid var(--line)}.break-row span{display:flex;align-items:center;gap:12px}.break-row strong{font-weight:500;font-variant-numeric:tabular-nums}.expense{color:var(--muted)}.dot{width:9px;height:9px;display:inline-block;background:var(--selected);border-radius:50%}.d1{background:var(--surface)}.d2{background:var(--raised)}.d3{background:var(--warning-bg)}.break-total{display:flex;justify-content:space-between;margin-top:20px;font-size:13px;font-weight:600}.break-total strong{color:var(--teal);font-size:19px}.margin{display:flex;justify-content:space-between;margin:11px 0 19px;color:var(--muted);font-size:11px}.margin b{color:var(--accent-soft);font-weight:500}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th{text-align:left;font-size:11px;color:var(--muted);font-weight:500;background:var(--surface);padding:13px 18px}td{padding:14px 18px;border-top:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums}td small{display:block;color:var(--muted);font-size:10px;margin-top:5px}tr:hover td{background:var(--surface)}tfoot td{background:var(--surface);color:var(--text);font-weight:650}.number{text-align:right}.teal{color:var(--accent-soft);font-weight:600}.footer-note{font-size:10px;color:var(--muted);letter-spacing:.2px;margin-top:20px}.empty{text-align:center;padding:50px 20px;color:var(--muted)}.empty p{margin:15px 0 5px;color:var(--muted)}.loading{padding:60px;text-align:center;color:var(--muted)}.badge{display:inline-flex;align-items:center;border-radius:4px;font-size:9px;padding:5px 7px;font-weight:650;letter-spacing:.4px}.badge.pending{color:var(--warning);background:var(--warning-bg)}.badge.checked{color:var(--positive);background:var(--raised)}.badge.void{color:var(--muted);background:var(--surface)}.actions{display:flex;gap:7px}.actions button{font-size:10px;padding:6px 8px}.actions .approve{color:var(--teal);background:var(--surface);border-color:var(--line)}.table-filters{display:flex;gap:12px;margin:18px 0}.table-filters input{max-width:360px}.table-filters select{max-width:170px}.exports{display:flex;gap:8px}.exports .button{padding:7px 10px;font-size:11px}.truncate{max-width:230px;overflow:hidden;text-overflow:ellipsis}.panel-description{font-size:12px;color:var(--muted);padding:0 20px}.error,.success,.notice{border-radius:5px;padding:13px 15px;margin-bottom:18px;font-size:12px}.error{background:var(--error-bg);border:1px solid var(--line);color:var(--danger)}.success{background:var(--raised);color:var(--positive)}.notice{background:var(--surface);color:var(--muted)}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-size:12px;color:var(--muted)}.field small{color:var(--muted);font-size:10px;line-height:1.6}.field input[type=date]{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}dialog{padding:0;border:1px solid var(--line);box-shadow:0 20px 80px #00000040;border-radius:10px;width:min(690px,95vw);max-height:92vh;color:var(--navy)}dialog::backdrop{background:rgba(8,14,26,.64);backdrop-filter:blur(3px)}dialog header{display:flex;align-items:center;justify-content:space-between;padding:21px 26px;border-bottom:1px solid var(--line)}dialog header small{font-size:9px;letter-spacing:1.5px;color:var(--muted)}dialog header h2{margin-top:7px;font-size:20px}.modal-body{padding:22px 26px}.modal-body p{font-size:12px}.modal-body footer,dialog footer{border-top:1px solid var(--line);padding:17px 26px;display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:var(--surface)}.calculation{background:var(--surface);border:1px solid var(--line);padding:16px;margin:4px 0 17px;border-radius:6px;color:var(--teal)}.calculation h3{font-size:11px;font-weight:500;margin-bottom:15px}.calc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.calc-grid small{display:block;font-size:9px;margin-bottom:7px;color:var(--muted)}.calc-grid b{font-weight:600;font-size:15px}.details{display:grid;grid-template-columns:1fr 1.5fr;gap:0;font-size:12px;overflow-wrap:anywhere}.details dt,.details dd{margin:0;padding:10px;border-bottom:1px solid var(--line)}.details dt{color:var(--muted)}details pre{white-space:pre-wrap;max-width:500px;max-height:350px;overflow:auto;font-size:10px;background:var(--surface);padding:12px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-panel{padding:24px}.settings-panel h2{margin-bottom:15px}.settings-panel>p{color:var(--muted);font-size:12px}.dealer-list{margin:15px 0 24px;max-height:180px;overflow:auto}.dealer-list>div{padding:9px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.dealer-list small{color:var(--muted)}.mobile-menu,.mobile-brand{display:none}.login-page{display:flex;min-height:100vh;background:var(--surface)}.login-story{background:var(--navy);color:var(--text);width:44%;padding:28px 36px;display:flex;flex-direction:column;justify-content:space-between}.login-story .brand{padding:12px 0}.login-story>div:nth-child(2){padding:50px 20px}.login-story h1{font-size:45px;line-height:1.5;font-weight:500;letter-spacing:1px}.login-story p{color:var(--muted);line-height:2;font-size:15px}.rule{display:block;background:var(--selected);width:38px;height:3px;margin-bottom:30px}.login-features{display:flex;gap:24px;color:var(--muted);font-size:11px;margin-top:50px}.login-story>small{color:var(--muted);font-size:10px;margin-bottom:12px}.login-main{display:flex;justify-content:center;align-items:center;flex:1;padding:30px}.login-form{width:350px}.login-form h2{font-size:25px;margin-bottom:12px}.login-form>p{color:var(--muted);font-size:12px;margin-bottom:32px}.login-form .field{margin-bottom:24px}.login-form input{height:46px}.login-form>.primary{width:100%;justify-content:space-between;margin-top:7px;height:46px}.login-form>small{display:block;text-align:center;margin-top:24px;color:var(--muted);font-size:10px}.backdrop{display:none}@media(min-width:1600px){.metric strong{font-size:30px}.metric h3{font-size:13px}}@media(max-width:1200px){.sidebar{width:190px}.workspace{margin-left:190px;width:calc(100% - 190px)}.content{padding:26px 22px}.topbar{padding:0 22px}.metric{padding:18px 12px;gap:9px}.metric strong{font-size:20px}.metric-icon{width:27px;height:30px}.overview-grid{grid-template-columns:1.5fr 1fr}.panel-heading h2 span{display:none}.sidebar nav button{padding-left:19px}.brand{padding-left:20px}.metrics{gap:10px}.metric strong small{font-size:11px}}@media(max-width:950px){.metrics{grid-template-columns:repeat(2,1fr)}.metric strong{font-size:25px}.overview-grid{grid-template-columns:1fr}.chart{height:250px}.breakdown{padding-bottom:18px}.breakdown .break-row{padding:11px 0}.settings-grid{grid-template-columns:1fr}.login-story h1{font-size:32px}.login-features{flex-direction:column;gap:12px}}@media(max-width:700px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:220px}.sidebar.open{transform:translateX(0)}.workspace{width:100%;margin-left:0}.mobile-menu{display:inline-flex}.topbar{height:63px;padding:0 17px}.breadcrumb{display:none}.content{padding:22px 16px}.account{gap:9px}.account .avatar{width:29px;height:29px}.account .text-button{margin-left:8px}.account small{font-size:9px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:19px}h1{font-size:25px}.page-heading p{font-size:11px;max-width:230px}.page-heading .primary{font-size:11px;padding:10px 11px;gap:5px}.toolbar{gap:9px}.date-range{width:100%;justify-content:space-between}.date-range input{width:44%;max-width:190px}.segmented button{font-size:11px;padding:10px 13px}.currency-label{font-size:11px;padding:10px}.currency-label small{display:none}.refresh{font-size:10px;padding:9px 11px}.pending-banner{gap:10px;font-size:10px;line-height:1.7;padding:10px}.pending-banner strong{font-size:10px}.pending-banner strong svg{display:none}.pending-banner b{width:14px;height:14px;margin-right:4px}.metric{padding:17px 12px;gap:9px}.metric-icon{display:none}.metric strong{font-size:23px}.metric h3{font-size:11px}.metric p{font-size:9px}.metrics{gap:10px;margin-bottom:15px}.overview-grid{gap:15px;margin-bottom:15px}.panel-heading{padding:16px}.panel-heading h2{font-size:14px}.panel-heading>.muted{font-size:9px}.chart{margin:0 12px;padding-left:5px;padding-right:5px;gap:6px}.bar-value{font-size:8px}.bar-column{min-width:28px}.bar-column small{font-size:8px}.chart-note{font-size:8px}.table-filters{flex-wrap:wrap;gap:8px}.table-filters input{max-width:none}.table-filters select{max-width:none;flex:1}th,td{padding:12px 14px}.form-grid{grid-template-columns:1fr}.modal-body{padding:18px}.calc-grid{grid-template-columns:1fr 1fr}dialog header{padding:17px 18px}dialog footer{padding:15px 18px}.backdrop{display:block;position:fixed;inset:0;background:rgba(8,14,26,.64);z-index:19;border:0;border-radius:0}.footer-note{line-height:1.8}.login-story{display:none}.login-main{padding:30px}.login-form{max-width:360px;width:100%}.mobile-brand{display:block;background:var(--navy);margin-bottom:40px;border-radius:6px;width:max-content}.mobile-brand .brand{padding:16px 20px;font-size:22px}.login-form h2{font-size:23px}.exports .button{font-size:10px;padding:7px}.panel-heading{gap:10px}.details{grid-template-columns:1fr 1fr;font-size:10px}.settings-panel{padding:18px}}
.preview-tag{margin:0 25px 16px;padding:7px 10px;border:1px solid var(--line);color:var(--positive);font-size:11px;border-radius:4px;width:max-content}.preview-banner{padding:11px 14px;background:var(--raised);color:var(--muted);border:1px solid var(--line);font-size:11px;border-radius:5px;margin-bottom:24px;line-height:1.8}.role-picker{display:flex;align-items:center;gap:12px;font-size:12px}.role-picker>span:first-child{color:var(--muted)}.role-picker select{width:132px;font-size:12px}.team-select{width:160px}.right-actions{margin-left:auto}.explain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.explain-grid article{border-top:1px solid var(--line);padding:24px 8px;color:var(--muted)}.explain-grid svg{color:var(--positive);margin-bottom:15px}.explain-grid h3{font-size:14px}.explain-grid p{font-size:12px;color:var(--muted)}.payslip{max-width:900px}.payslip .panel-heading{background:var(--surface)}.payslip .panel-heading p{margin:8px 0 0}.slip-details{padding:18px 24px}.slip-details>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.slip-details b{font-weight:500;font-variant-numeric:tabular-nums}.pay-total{padding:22px 24px;background:var(--surface);color:var(--positive);display:flex;justify-content:space-between;align-items:center;gap:20px}.pay-total strong{font-size:27px}.settlement-summary{display:flex;gap:24px;align-items:center;background:var(--surface);border:1px solid var(--line);padding:25px;margin-bottom:20px;border-radius:6px}.settlement-summary>div{flex:1}.settlement-summary span{font-size:11px;color:var(--muted);display:block;margin-bottom:12px}.settlement-summary strong{font-size:25px;font-weight:600}td input[type=checkbox]{width:17px;height:17px;min-height:0;accent-color:var(--accent)}.metric strong{font-size:22px}pre{white-space:pre-wrap;word-break:break-word}.sidebar nav button{min-height:57px}.panel-description{margin-top:17px}@media(max-width:700px){.sidebar{position:static;transform:none!important;width:100%;height:auto;display:block}.app-shell{display:block}.sidebar .brand{padding:17px 20px;font-size:22px}.preview-tag,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto;padding:0}.sidebar nav button{min-width:max-content;width:auto;padding:12px;min-height:45px;border-left:0;border-bottom:2px solid transparent;gap:7px}.sidebar nav button svg{width:15px}.sidebar nav button span{font-size:11px}.sidebar nav button.active{border-bottom-color:var(--line)}.topbar{height:auto;padding:12px 16px}.role-picker{width:100%;gap:10px}.role-picker select{width:115px}.role-picker b{margin-left:auto;font-size:11px}.settlement-summary{flex-wrap:wrap;gap:20px;padding:20px}.settlement-summary>div{min-width:40%}.settlement-summary strong{font-size:21px}.explain-grid{grid-template-columns:1fr;gap:5px}.explain-grid article{padding:15px 5px}.pay-total{flex-wrap:wrap;font-size:12px}.pay-total strong{font-size:22px}.metric strong{font-size:19px}.preview-banner{font-size:10px}.right-actions .primary{font-size:11px}.team-select{width:120px}}
.login-screen{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--selected) 0%,var(--selected) 35%,var(--raised) 35%,var(--surface) 100%);padding:24px}.login-card{width:min(100%,480px);background:var(--surface);padding:42px;border-radius:20px;box-shadow:0 24px 80px #00000026}.login-card .brand{color:var(--text);margin-bottom:35px;padding:0}.login-card h1{font-size:30px;margin:12px 0}.login-card p{color:var(--muted);line-height:1.7}.login-card form{display:grid;gap:16px;margin:26px 0}.login-card>small{color:var(--muted);line-height:1.8}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--positive);font-weight:700}.negative{color:var(--danger)}.export-link{margin-left:auto;color:var(--positive);font-weight:600}.toolbar label{display:flex;align-items:center;gap:10px}.toolbar input{width:165px}.sidebar nav{overflow:auto;flex:1}.sidebar{height:100vh}.table-scroll td{max-width:340px}.table-scroll pre{max-width:500px;max-height:300px;overflow:auto;font-size:12px;white-space:pre-wrap}.error{background:var(--error-bg);color:var(--danger);padding:14px;border-radius:8px;margin:10px 0}.success{margin:10px 0}button:disabled{opacity:.5;cursor:not-allowed}.modal-body .notice{margin:0;font-size:13px}.modal-body p{line-height:1.7}.modal-body select{max-width:100%}.topbar .right-actions{display:flex;gap:8px}.login-card .primary{padding:14px}.metric strong{font-size:25px}@media(max-width:760px){.sidebar{height:auto;position:static;width:100%;padding:14px}.sidebar nav{display:flex;overflow:auto;gap:6px}.sidebar nav button{white-space:nowrap;flex-shrink:0;width:auto}.sidebar .brand{padding:0 8px 12px}.sidebar-bottom,.preview-tag{display:none}.app-shell{display:block}.workspace{margin-left:0;width:100%}.content{padding:20px 14px}.topbar{padding:12px 14px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:14px}.metric-icon{display:none}.metric strong{font-size:20px}.toolbar{flex-wrap:wrap;gap:10px}.page-heading{align-items:flex-start}.page-heading h1{font-size:26px}.explain-grid{grid-template-columns:1fr}.settlement-summary{display:flex;flex-wrap:wrap;gap:18px}.login-card{padding:26px}.panel-heading{gap:10px;flex-wrap:wrap}.panel-heading h2{font-size:16px}.pay-total{gap:12px;flex-wrap:wrap}dialog{width:calc(100vw - 24px);max-height:90vh}.modal-body{max-height:65vh;overflow:auto}}
@media(min-width:761px){.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.toolbar select{width:180px}.toolbar .export-link{margin-left:0}.toolbar .export-link:first-of-type{margin-left:auto}}
.subtabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:0 0 14px;margin:8px 0 24px;overflow:auto}.subtabs button{background:transparent;border-color:transparent;color:var(--muted)}.subtabs button.active{background:var(--raised);border-color:var(--line);color:var(--positive);font-weight:650}.subtabs.compact{margin:0;padding:12px 20px;border-top:1px solid var(--line)}.month-intro{padding:24px;background:var(--raised);border:1px solid var(--line);border-radius:10px;margin:0 0 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.month-intro h2{margin:8px 0}.month-intro p{margin:0;color:var(--muted)}.calendar-panel .panel-heading select{width:230px}.calendar-panel .panel-heading p{margin:7px 0 0}.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;padding:0 22px 16px;font-size:12px;color:var(--muted)}.calendar-legend span:first-child{color:var(--positive)}.calendar-legend span:nth-child(2){color:var(--warning)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0 20px 20px;gap:6px}.calendar-weekday{text-align:center;padding:8px;font-size:12px;color:var(--muted)}.calendar-day{min-height:106px;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:6px;border-radius:8px;padding:10px;white-space:normal;text-align:left;overflow:hidden}.calendar-day strong{font-size:15px}.calendar-day span{font-size:11px;overflow-wrap:anywhere}.calendar-day.selected{border:2px solid var(--line);background:var(--surface);padding:9px}.calendar-day .day-sales{color:var(--positive)}.calendar-day .day-cost{color:var(--warning)}.calendar-day .day-pending{color:var(--warning)}.day-empty{color:var(--muted)}.day-actions{display:flex;gap:8px;flex-wrap:wrap}.day-panel h2{margin-top:6px}.costing-panel>summary{padding:20px 24px;cursor:pointer;font-weight:600;color:var(--accent-soft)}.costing-panel>section{padding:10px}.day-panel td small{display:block;margin-top:5px}.calendar-padding{min-height:60px}.sidebar nav button{min-height:82px}.sidebar nav button span{line-height:1.7}.salary-sources{margin:0;padding:0}.salary-sources summary{cursor:pointer;padding:20px 24px;font-weight:600}.daily-breakdown{min-width:220px}.daily-breakdown summary{cursor:pointer;color:var(--positive)}.daily-breakdown table{margin-top:8px}
@media(max-width:760px){.calendar-grid{padding:0 8px 12px;gap:3px}.calendar-day{min-height:87px;padding:5px;gap:4px}.calendar-day.selected{padding:4px}.calendar-day strong{font-size:13px}.calendar-day span,.calendar-day small{font-size:9px}.calendar-legend{padding:0 12px 12px;gap:8px;font-size:10px}.calendar-panel .panel-heading select{width:100%}.calendar-padding{min-height:40px}.month-intro{padding:18px;flex-direction:column;align-items:flex-start}.sidebar nav button{min-height:55px}.sidebar nav button small{display:none}.day-actions{width:100%}.day-actions button{flex:1;font-size:12px;padding:9px}.subtabs{gap:4px}.subtabs button{font-size:12px;padding:8px}.table-scroll{max-width:100%;overflow-x:auto}}
.calendar-short{display:none}@media(max-width:760px){.calendar-full{display:none}.calendar-day .calendar-short{display:block;font-variant-numeric:tabular-nums;font-size:10px;white-space:nowrap}.calendar-day{min-height:90px}.calendar-day .day-pending{font-size:8px}.calendar-panel .panel-heading p{font-size:11px}}
.rating-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.rating-team{min-width:0}.rating-team .panel-heading{padding:18px 16px}.rating-total{padding:18px;background:var(--surface);display:grid;gap:8px;color:var(--positive)}.rating-total strong{font-size:27px;font-variant-numeric:tabular-nums}.rating-total span,.rating-total small{font-size:12px}.rating-team th,.rating-team td{padding:13px 12px}.rating-team th:not(:first-child),.rating-team td:not(:first-child){text-align:right}.rating-team tfoot td{font-weight:700;background:var(--surface)}.rating-average{padding:18px;display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between}.rating-average small{width:100%;color:var(--muted)}.monthly-overview .metric strong{font-size:clamp(17px,1.8vw,25px)}@media(max-width:760px){.rating-grid{grid-template-columns:1fr}.monthly-overview .metric strong{font-size:19px}}
.money-value{display:inline-flex;flex-direction:column;gap:4px;font-variant-numeric:tabular-nums}.money-value>small{font-size:10px!important;font-weight:400;color:var(--muted);white-space:normal;line-height:1.5}.rating-total .money-value>span{font-size:23px;font-weight:650}.rating-team .money-value>span{font-size:12px}.rating-team table{white-space:normal}.rating-team .rating-average .money-value>span{font-size:13px}.group-money-details{font-size:10px;max-width:105px;margin-top:7px}.group-money-details summary{cursor:pointer;color:var(--muted)}.group-money-details .money-value>span{font-size:10px}.metric strong .money-value>span{white-space:normal;overflow-wrap:anywhere}.metric strong{white-space:normal}.rating-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}@media(max-width:760px){.rating-grid{grid-template-columns:1fr}}

.attendance-panel{margin:20px 0;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.attendance-panel .panel-heading{padding:0;margin-bottom:14px}.attendance-panel h3{margin:0}.attendance-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.attendance-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.attendance-card strong{margin-right:8px}.attendance-card small{display:block;margin-top:7px;color:var(--muted)}.attendance-card button{font-size:12px;flex-shrink:0}.attendance-today{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.attendance-today span{color:var(--positive)}@media(max-width:600px){.attendance-panel{padding:12px}.attendance-list{grid-template-columns:1fr}.attendance-card{flex-wrap:wrap}.attendance-panel .panel-heading{align-items:flex-start;gap:12px;flex-direction:column}}

.leader-income-total{display:block;margin-top:8px;font-size:24px;color:var(--text)}.leader-income .panel-heading>div:first-child{max-width:760px}

.boss-context{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px}.boss-context>div>span{font-size:12px;color:var(--muted)}.boss-context h2{font-size:23px;line-height:1.4;margin-top:8px;letter-spacing:-.4px}.boss-context-right{flex-shrink:0}.boss-context .badge{font-size:11px;font-weight:500;letter-spacing:0;padding:9px 12px}.boss-metrics{display:grid;grid-template-columns:1fr 1fr 1.2fr .8fr;gap:14px;margin-bottom:24px}.boss-metric{padding:24px 22px;border-radius:10px;border:1px solid var(--line);background:var(--surface);min-width:0}.boss-metric>span{display:block;color:var(--muted);font-size:12px;margin-bottom:16px}.boss-metric>strong{font-size:clamp(18px,1.9vw,29px);line-height:1.2;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.6px;overflow-wrap:anywhere}.boss-metric-profit{background:var(--raised);border-color:var(--line)}.boss-metric-profit>strong{color:var(--positive)}.boss-metric-profit>strong.negative{color:var(--danger)}.boss-overview .panel{border-radius:10px}.boss-overview-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:20px;align-items:start}.boss-overview .panel-heading{padding:22px 24px}.boss-overview .panel-heading h2{font-size:16px}.boss-count{font-size:12px;color:var(--muted)}.boss-categories{padding:0 24px 18px;display:grid;grid-template-columns:1fr;gap:0}.boss-category{display:block;width:100%;text-align:left;border:0;border-top:1px solid var(--line);border-radius:0;padding:17px 0;background:var(--surface);white-space:normal}.boss-category:hover{border-color:var(--line);background:var(--surface)}.boss-category.selected{background:var(--surface);outline:1px solid var(--line);border-radius:5px;padding-left:10px;padding-right:10px}.boss-category-title{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}.boss-category-title span{display:flex;align-items:center;gap:10px}.boss-category-title i{width:9px;height:9px;display:inline-block;border-radius:3px}.boss-category-title strong{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.boss-bar{height:5px;background:var(--surface);border-radius:3px;margin:12px 0 8px;overflow:hidden}.boss-bar i{display:block;height:100%;border-radius:3px}.boss-category-foot{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.boss-category-foot span:last-child{color:var(--positive)}.boss-ranking ol{list-style:none;padding:0 24px 15px;margin:0}.boss-ranking li+li{border-top:1px solid var(--line)}.boss-ranking li>button{border:0;border-radius:0;width:100%;display:flex;padding:21px 0;gap:15px;text-align:left;background:var(--surface);white-space:normal}.boss-ranking li>button:hover{background:var(--surface)}.boss-rank{background:var(--surface);border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-size:12px;flex-shrink:0;color:var(--muted)}.boss-ranking li:first-child .boss-rank{background:var(--raised);color:var(--positive)}.boss-rank-body{flex:1;min-width:0}.boss-rank-body>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:14px}.boss-rank-body strong{color:var(--accent-soft)}.boss-rank-track{height:5px;background:var(--surface);border-radius:3px;margin:12px 0 10px;overflow:hidden}.boss-rank-track i{display:block;height:100%;border-radius:3px}.boss-rank-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.boss-status{padding:12px 16px;border-radius:7px;border:1px solid var(--line);background:var(--warning-bg);color:var(--warning);font-size:12px;margin-bottom:20px;line-height:1.6}.boss-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.boss-filters>input{width:165px}.boss-filters>select{width:165px}.boss-checkbox{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap}.boss-checkbox input{width:16px;min-height:16px;accent-color:var(--accent);margin:0}.boss-comparison th:not(:first-child),.boss-comparison td:not(:first-child){text-align:right}.boss-comparison td{padding:20px 18px;font-size:13px}.boss-comparison td>strong{color:var(--text);font-size:14px}.boss-comparison button{font-size:12px;border:0;background:var(--surface);color:var(--positive)}.boss-detail-actions{display:flex;align-items:center;gap:14px}.boss-detail-actions>strong{color:var(--positive);font-variant-numeric:tabular-nums}.boss-detail .boss-remark{white-space:normal;min-width:160px;max-width:300px;line-height:1.6}.boss-detail th,.boss-detail td{padding:15px 20px}.boss-overview .empty{padding:38px 20px}.boss-overview>.panel>.boss-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}@media(max-width:1100px){.boss-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.boss-metric>strong{font-size:25px}.boss-overview-grid{grid-template-columns:1fr}.boss-context h2{font-size:22px}.boss-comparison .panel-heading{flex-wrap:wrap}.boss-filters{width:100%}}@media(max-width:760px){.boss-context{align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:18px}.boss-context h2{font-size:21px}.boss-context-right{flex-shrink:1}.boss-metrics{gap:10px;margin-bottom:18px}.boss-metric{padding:17px 13px}.boss-metric>span{font-size:11px;margin-bottom:12px}.boss-metric>strong{font-size:20px}.boss-overview .panel-heading{padding:18px 16px}.boss-categories,.boss-ranking ol{padding-left:16px;padding-right:16px}.boss-category-title{font-size:12px}.boss-category-title strong{font-size:13px}.boss-category{padding-top:16px;padding-bottom:16px}.boss-overview>.panel>.boss-categories{grid-template-columns:1fr}.boss-filters{gap:9px}.boss-filters>input,.boss-filters>select{width:calc(50% - 5px);font-size:12px}.boss-filters .boss-checkbox{width:100%}.boss-overview-grid{gap:0}.boss-rank-body>div:first-child{font-size:13px}.boss-comparison td{padding:15px 13px}.boss-detail-actions{gap:10px}.boss-detail-actions>strong{font-size:13px}.boss-context .badge{font-size:10px}.boss-overview .subtabs{margin-bottom:20px}}
:root { --dealer-border: #e1e8ee; }
.dealer-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0 24px}
.dealer-metrics>div {background:var(--surface);border:1px solid var(--dealer-border);border-radius:12px;padding:22px;display:flex;flex-direction:column;gap:12px;min-width:0}
.dealer-metrics span {color:var(--muted);font-size:14px}
.dealer-metrics strong {font-size:24px;overflow-wrap:anywhere;color:var(--text)}
.panel>.dealer-metrics {margin:0;padding:24px}
.dealer-detail-row>td {padding-top:0!important;border-top:0!important;background:var(--surface)}
.dealer-detail-row summary {font-size:13px;color:var(--muted);cursor:pointer;padding:8px 0}
.dealer-detail-content {display:grid;gap:8px;padding:8px 0 16px;font-size:14px}
.dealer-detail-content p {margin:0;white-space:normal}
.dealer-form-grid {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dealer-form-line,.dealer-sales-line {padding:18px;border:1px solid var(--dealer-border);border-radius:10px;margin:16px 0;background:var(--surface)}
.dealer-form-line select,.dealer-sales-line select {max-width:100%}
.dealer-form-line .field:last-child {margin-bottom:0}
.dealer-footnote {padding:0 24px 24px;color:var(--muted);font-size:14px}
.dealer-loading {padding:32px}
.sale-dealer-line {display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center;padding:14px;background:var(--surface);border:1px solid var(--dealer-border);border-radius:8px;margin-bottom:12px}
.sale-dealer-line .field {margin:0}
.sale-dealer-total {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 24px;flex-wrap:wrap}
.sale-dealer-total strong {color:var(--text);font-variant-numeric:tabular-nums}
.receipt-preview {display:flex;flex-direction:column;gap:10px;background:var(--surface);color:var(--positive);padding:18px;border-radius:9px;margin:12px 0 22px}
.receipt-preview strong {font-size:18px}
.receipt-preview span {font-size:13px}
.dealer-page .right-actions {display:flex;gap:8px;flex-wrap:wrap}
.audit-footer {padding:24px;text-align:center;color:var(--muted)}
.audit-entity {max-width:180px;overflow-wrap:anywhere;white-space:normal}
.audit-diff {min-width:420px!important;margin:12px 0}
.audit-diff pre {font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;max-width:260px;font-size:13px;margin:0}
.audit-raw {white-space:pre-wrap;overflow-wrap:anywhere;max-width:520px;max-height:400px;overflow:auto;font-size:12px}
.audit-page .right-actions select {max-width:100%}
@media(max-width:700px){
 .dealer-metrics {grid-template-columns:1fr;gap:10px}
 .dealer-metrics>div {padding:18px}
 .dealer-metrics strong {font-size:22px}
 .panel>.dealer-metrics {padding:16px}
 .dealer-form-grid {grid-template-columns:1fr;gap:0}
 .dealer-page .panel-heading,.audit-page .panel-heading {align-items:stretch;flex-direction:column;gap:16px}
 .dealer-page .right-actions,.audit-page .right-actions {flex-wrap:wrap}
 .dealer-page .right-actions select {width:100%}
 .dealer-page .subtabs {overflow-x:auto;max-width:100%}
}

/* Warrior advertising workspace */
.ad-context{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:6px 0 24px}.ad-context>div>span{font-size:11px;letter-spacing:1.2px;color:var(--muted)}.ad-context h2{font-size:26px;margin:10px 0}.ad-context p{font-size:13px;color:var(--muted);margin-bottom:0}.ad-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.ad-metric{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:23px 20px;min-width:0;display:flex;flex-direction:column;gap:13px}.ad-metric>span{font-size:12px;color:var(--muted)}.ad-metric>strong{font-size:clamp(18px,1.75vw,25px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ad-metric>small{color:var(--muted);line-height:1.6}.ad-metric-highlight{background:var(--raised);border-color:var(--line)}.ad-metric-highlight>strong{color:var(--positive)}.ad-page .panel{border-radius:10px}.ad-description{color:var(--muted);font-size:12px;margin:10px 0 0;line-height:1.7}.ad-footnote{font-size:12px;color:var(--muted);padding:18px 22px;margin:0;line-height:1.8}.ad-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ad-summary-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:0 22px 24px;gap:20px}.ad-summary-strip>div{display:flex;flex-direction:column;gap:13px;background:var(--surface);padding:18px;border-radius:8px;min-width:0}.ad-summary-strip span{font-size:12px;color:var(--muted)}.ad-summary-strip strong{font-size:16px;overflow-wrap:anywhere}.ad-equation{display:grid;grid-template-columns:1fr auto;margin:0;padding:0 22px;font-size:13px}.ad-equation dt,.ad-equation dd{margin:0;padding:14px 0;border-bottom:1px solid var(--line)}.ad-equation dt{color:var(--muted)}.ad-equation dd{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.ad-wallet-heading{display:flex;justify-content:space-between;align-items:center;margin-top:26px;gap:12px}.ad-wallet-heading h3{margin:0}.ad-wallet-form{border:1px solid var(--line);border-radius:8px;padding:18px;margin-bottom:18px;background:var(--surface);min-width:0}.ad-wallet-form legend{font-size:12px;color:var(--muted)}.ad-page .panel-heading .right-actions{display:flex;gap:10px;flex-wrap:wrap}.ad-page .table-scroll{max-width:100%}.ad-page .subtabs{overflow-x:auto}
@media(max-width:1100px){.ad-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ad-two-columns{grid-template-columns:1fr}.ad-summary-strip{grid-template-columns:1fr}.ad-page .panel-heading{flex-wrap:wrap}}
@media(max-width:700px){.ad-context{flex-wrap:wrap}.ad-context h2{font-size:23px}.ad-metrics{gap:10px}.ad-metric{padding:17px 13px}.ad-metric>strong{font-size:19px}.ad-metric>small{font-size:11px}.ad-page .panel-heading{align-items:flex-start;flex-direction:column}.ad-page .panel-heading .muted{line-height:1.7}.ad-equation{padding:0 16px;font-size:12px;grid-template-columns:minmax(0,1fr) auto;gap:0 12px}.ad-equation dd{font-size:12px}.ad-wallet-form .form-grid{grid-template-columns:1fr}.ad-summary-strip{padding:0 16px 18px}.ad-footnote{padding:16px}.ad-wallet-heading{align-items:flex-start;flex-direction:column}.ad-context .badge{font-size:10px}}
.ad-reconciliation{padding:18px 0;border-top:1px solid var(--line);font-size:12px}.ad-reconciliation summary{cursor:pointer;color:var(--accent-soft);margin-bottom:14px}.ad-reconciliation .boss-checkbox{white-space:normal;line-height:1.7}.ad-reconciliation .boss-checkbox input{flex-shrink:0}
.ad-daily .panel-heading>.field{margin:0;min-width:165px}.ad-daily td input{width:180px;max-width:100%;font-variant-numeric:tabular-nums}.ad-daily td small{display:block;margin-top:7px;color:var(--muted);white-space:normal;line-height:1.5}.ad-daily-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-top:1px solid var(--line);flex-wrap:wrap}.ad-daily-footer>.field{margin:0;flex:1;min-width:200px;max-width:340px}.ad-assignment-date{padding:0 22px 16px}.ad-assignment-date>.field{max-width:220px;margin:0}.ad-report-groups p{white-space:normal;min-width:210px;line-height:1.7}.ad-report-groups{padding-top:8px}.ad-page .subtabs>button{flex-shrink:0}.ad-daily input:disabled{background:var(--surface);color:var(--muted)}
@media(max-width:700px){.ad-daily-footer{padding:16px;align-items:stretch;flex-direction:column;gap:14px}.ad-daily-footer>.field{max-width:none;min-width:0}.ad-daily td input{width:145px}.ad-assignment-date{padding:0 16px 16px}.ad-daily .panel-heading>.field{width:100%}}
.ad-buyer-page>.ad-context,.ad-buyer-page>.subtabs{display:none}.ad-buyer-page>.ad-metrics{grid-template-columns:1fr}.ad-buyer-page .ad-metric{flex-direction:row;align-items:center;gap:20px;padding:18px 22px}.day-zero{opacity:.55}
@media(max-width:700px){.ad-buyer-page .ad-metric{padding:16px;gap:12px;flex-wrap:wrap}.ad-buyer-page .ad-metric>small{width:100%;font-size:11px}}
.permission-heading{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.permission-note,.permission-global{font-size:12px;color:var(--muted,var(--muted))}.permission-section{margin:12px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.permission-section>summary{padding:15px;background:var(--surface);font-weight:700;cursor:pointer;display:flex;justify-content:space-between}.permission-section>summary span{font-size:12px;font-weight:400;color:var(--muted)}.permission-column-head,.permission-row{display:grid;grid-template-columns:minmax(0,1fr) 58px 58px;align-items:center;gap:8px;padding:10px 16px}.permission-column-head{font-size:12px;color:var(--muted);background:var(--surface)}.permission-row input{width:19px;height:19px;justify-self:center;accent-color:var(--accent);cursor:pointer}.permission-row span,.permission-column-head span:not(:first-child){text-align:center}.permission-item{border-top:1px solid var(--line);padding-bottom:10px}.permission-row strong{font-weight:500}.permission-range{margin:0 16px;font-size:13px}.permission-range>summary{cursor:pointer;color:var(--accent-soft)}.permission-global{margin:0 16px}.permission-scope{padding:10px 0}.permission-scope select{margin-top:6px}.permission-groups fieldset{border:1px solid var(--line);border-radius:7px;margin:10px 0;padding:10px;display:flex;gap:12px;flex-wrap:wrap}.permission-groups label{display:inline-flex;align-items:center;gap:6px}.permission-groups input{width:17px;height:17px;accent-color:var(--accent)}.permission-groups legend{font-weight:600}.permission-item input[type=checkbox]{min-height:0}.permissions-button{border-color:var(--line)!important;color:var(--accent-soft)}.permission-empty{padding:40px;text-align:center;color:var(--muted)}
.ad-section-title{font-size:14px;padding:0 22px;margin:0 0 15px}.ad-section-heading{display:flex;justify-content:space-between;align-items:center;padding:22px 22px 12px;gap:16px;border-top:1px solid var(--line)}.ad-section-heading h3{font-size:14px;margin:0 0 9px}.ad-section-heading p{margin:0;font-size:12px}.ad-history>summary{padding:20px 22px;cursor:pointer;font-weight:600}.ad-records select,.ad-daily select{min-width:135px}.ad-report-filters{display:flex;gap:16px;flex-wrap:wrap;padding:0 22px}.ad-report-filters>.field{flex:1;min-width:165px}.ad-performance-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:8px 22px 24px}.ad-performance-totals>div{display:flex;flex-direction:column;gap:12px;background:var(--surface);border-radius:8px;padding:20px}.ad-performance-totals span{font-size:12px;color:var(--muted)}.ad-performance-totals strong{font-size:22px;overflow-wrap:anywhere}.ad-wallet-balance{padding:5px 24px 30px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.ad-wallet-balance>span{font-size:13px;color:var(--muted)}.ad-wallet-balance>strong{font-size:40px;font-variant-numeric:tabular-nums;color:var(--positive);overflow-wrap:anywhere;max-width:100%}.ad-wallet-balance>small{font-size:12px;color:var(--muted)}.ad-personal>.subtabs{margin-top:0}.ad-workspace .ad-daily-footer{background:var(--surface)}.ad-report-filters input,.ad-report-filters select{width:100%}
@media(max-width:700px){.ad-section-title{padding:0 16px}.ad-section-heading{padding:18px 16px 12px;align-items:flex-start;flex-direction:column}.ad-report-filters{padding:0 16px;gap:10px}.ad-report-filters>.field{min-width:140px}.ad-performance-totals{padding:0 16px 20px;grid-template-columns:1fr;gap:10px}.ad-performance-totals>div{padding:14px;flex-direction:row;justify-content:space-between;align-items:center}.ad-performance-totals strong{font-size:19px}.ad-wallet-balance{padding:5px 16px 25px}.ad-wallet-balance>strong{font-size:34px}.ad-workspace .subtabs{gap:6px}}
/* Sales calendar, billed advertising and expandable cost sources */
.day-ad{color:var(--accent-soft);font-size:11px}.day-record-dialog .day-actions{justify-content:flex-end;margin-bottom:18px}.day-records small{display:block;margin-top:5px}.day-record-dialog{padding:20px!important}.day-record-dialog .table-scroll{margin:0 -4px}.cost-group{border-top:1px solid var(--line)}.cost-group>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px}.cost-group>summary:before{content:'▸';color:var(--muted)}.cost-group[open]>summary:before{content:'▾'}.cost-group>summary>strong{flex:1}.cost-group>summary>span{text-align:right;font-variant-numeric:tabular-nums}.cost-group>summary small{display:block;color:var(--muted);margin-top:5px}.cost-detail{padding:0 24px 24px}.modal-body>.cost-detail{padding:0}.cost-detail-totals{display:flex;gap:24px;flex-wrap:wrap;padding:18px 0 24px}.cost-detail-totals>div{display:flex;flex-direction:column;gap:9px;min-width:160px}.cost-detail-totals span{font-size:12px;color:var(--muted)}.cost-detail-totals strong{font-size:23px;color:var(--positive)}.cost-detail-totals small{color:var(--muted)}.cost-category{border:1px solid var(--line);border-radius:6px;margin-bottom:10px;overflow:hidden}.cost-category>summary{cursor:pointer;padding:16px;display:flex;align-items:center;gap:12px;background:var(--surface)}.cost-category>summary:before{content:'▸'}.cost-category[open]>summary:before{content:'▾'}.cost-category>summary span{flex:1}.cost-category>p{margin:16px}.cost-category td{padding:14px 16px}.cost-category td small{display:block;margin-top:5px;color:var(--muted)}.cost-entry-note{white-space:normal;min-width:150px;max-width:250px}.cost-detail-link{display:block!important;font-size:11px!important;margin-top:9px!important;color:var(--muted)!important}.ad-charge-button{flex-direction:column;gap:5px;align-items:flex-end}.ad-charge-button small{font-size:10px;color:var(--muted)}.rating-team .team-ad-total{color:var(--accent-soft);font-size:12px}.rating-team th,.rating-team td{padding-left:12px;padding-right:12px}.monthly-overview .metrics .metric strong{font-size:24px}.monthly-overview .rating-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
@media(max-width:760px){.cost-group>summary{padding:18px 14px;gap:9px;font-size:12px}.cost-detail{padding:0 14px 18px}.cost-detail-totals{gap:14px}.cost-detail-totals>div{min-width:130px}.cost-detail-totals strong{font-size:19px}.cost-category>summary{padding:14px 12px;font-size:12px}.day-record-dialog .day-actions{flex-wrap:wrap;justify-content:flex-start}.monthly-overview .rating-grid{grid-template-columns:1fr}.monthly-overview .metrics .metric strong{font-size:20px}.day-ad{font-size:9px}.rating-team th,.rating-team td{padding-left:10px;padding-right:10px}}
/* AJ keeps the source sheet's columns inside one scrollable ledger. */
.ad-client-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 24px;flex-wrap:wrap}
.ad-client-switch{display:flex;gap:6px;flex-wrap:wrap;padding:5px;background:var(--raised);border-radius:10px}
.ad-client-switch button{border-color:transparent;background:transparent;color:var(--muted)}
.ad-client-switch button.active{background:var(--surface);color:var(--positive);box-shadow:0 1px 4px #00000014}
.aj-page{min-width:0}.aj-page .ad-context{display:flex;align-items:center;justify-content:space-between;gap:16px}
.aj-page .ad-context p{font-size:14px}.aj-page .ad-metric strong{font-size:clamp(20px,2.1vw,30px)}
.aj-unit{color:var(--muted);font-size:13px;letter-spacing:.08em}.aj-daily{padding:0;overflow:hidden}
.aj-sheet-scroll{max-height:630px;overflow:auto;overscroll-behavior-x:contain}
.aj-sheet{width:max-content;min-width:100%;font-variant-numeric:tabular-nums;border-collapse:separate;border-spacing:0}
.aj-sheet th,.aj-sheet td{padding:10px 12px;min-width:145px;text-align:right;white-space:nowrap;font-size:13px}
.aj-sheet thead th{position:sticky;top:0;z-index:2;background:var(--surface);height:64px;white-space:normal;max-width:165px;color:var(--muted)}
.aj-sheet th:first-child{position:sticky;left:0;min-width:88px;width:88px;background:var(--surface);z-index:1;text-align:left;box-shadow:1px 0 0 #00000038}
.aj-sheet thead th:first-child{z-index:3;background:var(--surface)}
.aj-sheet .aj-calculated{background:var(--surface)}.aj-sheet thead .aj-calculated{background:var(--raised);color:var(--positive)}
.aj-sheet input{min-width:110px;width:122px;padding:9px 10px;min-height:38px;text-align:right;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:13px}
.aj-sheet input[type=text]{width:145px;text-align:left}.aj-sheet input[type=number]{appearance:textfield;-moz-appearance:textfield}
.aj-sheet input::-webkit-inner-spin-button,.aj-sheet input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.aj-sheet input:focus{outline:2px solid var(--line);outline-offset:1px}
.aj-sheet tfoot td,.aj-sheet tfoot th:first-child{font-weight:700;background:var(--surface);position:sticky;bottom:0;z-index:2;border-top:1px solid var(--line)}
.aj-sheet tfoot th:first-child{z-index:3}.aj-today th:first-child{color:var(--positive);background:var(--surface)}.aj-changed{font-size:8px;color:var(--warning);margin-left:7px}
.aj-notes{padding:16px 24px;color:var(--muted);font-size:12px;line-height:1.7;border-top:1px solid var(--line)}.aj-notes p{margin:3px 0}
.aj-save-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:18px 24px;background:var(--surface);border-top:1px solid var(--line)}
.aj-save-bar small{display:block;color:var(--muted);margin-top:6px}.aj-save-bar .field{margin:0;flex:1;max-width:340px}
.aj-page .ad-summary-strip small{display:block;margin-top:8px;color:var(--muted)}.aj-page .ad-summary-strip{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr))}.aj-page .ad-summary-strip>div{min-width:150px}
@media(max-width:700px){.ad-client-bar{gap:10px}.ad-client-switch{width:100%}.ad-client-switch button{flex:1;font-size:13px;padding:10px}.aj-page .ad-context{align-items:flex-start}.aj-page .ad-context h2{font-size:25px}.aj-page .ad-context p{line-height:1.7}.aj-page .ad-metrics{grid-template-columns:1fr 1fr}.aj-page .ad-metric{padding:15px}.aj-page .ad-metric strong{font-size:18px}.aj-page .ad-metric span{font-size:12px}.aj-sheet-scroll{max-height:520px}.aj-notes,.aj-save-bar{padding:16px}.aj-save-bar .field{max-width:none;flex-basis:100%}.aj-save-bar button{width:100%}.aj-page .panel-heading{align-items:flex-start;gap:12px}.aj-page .panel-heading button{flex-shrink:0}.aj-page .ad-equation{font-size:13px}}
.permission-team-picker{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.permission-team-picker h3{margin:0 0 8px}.permission-team-picker .permission-groups fieldset{display:block;background:var(--surface)}.permission-team-picker details{width:100%}.permission-team-picker summary{font-size:13px;color:var(--accent-soft);cursor:pointer}.permission-group-options{display:flex;flex-wrap:wrap;gap:12px;padding-top:12px}.permission-team-picker input[type=checkbox]{min-height:0}
.permissions-dialog{overflow:hidden}.permissions-dialog>form{display:flex;flex-direction:column;max-height:calc(90vh - 86px)}.permissions-dialog .modal-body{overflow:auto;min-height:0;max-height:none}.permissions-dialog footer{flex-shrink:0}
.permission-board{margin-top:24px}.permission-board-title{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:22px}.permission-board-title h3{font-size:17px;margin:0 0 7px}.permission-board-title p{color:var(--muted);margin:0}.permission-board-section{margin-bottom:20px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.permission-section-title{display:flex;justify-content:space-between;align-items:center;padding:14px 17px;background:var(--surface)}.permission-section-title h3{margin:0;font-size:14px}.permission-section-title span{font-size:11px;color:var(--muted)}.permission-card{border-top:1px solid var(--line);background:var(--surface)}.permission-card.is-enabled{background:var(--surface)}.permission-card-main{padding:16px;display:grid;grid-template-columns:minmax(135px,1fr) 203px minmax(130px,1fr);align-items:center;gap:12px}.permission-card-main>strong{font-size:13px;font-weight:550;line-height:1.6}.permission-levels{display:flex;background:var(--surface);border-radius:9px;padding:3px;gap:2px}.permission-levels button{flex:1;padding:7px 6px;border:0;border-radius:7px;background:transparent;font-size:12px;min-height:35px;gap:4px}.permission-levels button.selected{background:var(--surface);box-shadow:0 1px 4px #00000015;color:var(--text);font-weight:650}.permission-levels button.selected.view{background:var(--raised);color:var(--text)}.permission-levels button.selected.edit{background:var(--selected);color:var(--text)}.permission-selected-mark{display:inline-flex}.permission-range-button{white-space:normal;justify-content:space-between;text-align:left;min-height:40px;font-size:12px;border:1px solid var(--line);color:var(--text);background:var(--surface);line-height:1.5;padding:8px 11px}.permission-range-button:disabled{cursor:default;background:var(--surface);border-color:transparent;color:var(--muted);opacity:1}.permission-range-badge{font-size:12px;color:var(--muted);text-align:center}.permission-card-range{padding:0 16px 16px}.permission-card-range .permission-team-picker{margin:0;padding:14px;background:var(--surface)}.permission-team-picker input[type=checkbox]{position:absolute;opacity:0;width:22px;height:22px;margin:0;cursor:pointer}.round-permission-check{display:inline-flex;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line);background:var(--surface);align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,border-color .15s}.round-permission-check svg{opacity:0}.permission-team-picker input:checked+.round-permission-check{background:var(--selected);border-color:var(--line);box-shadow:0 2px 4px #00000020}.permission-team-picker input:checked+.round-permission-check svg{opacity:1;stroke:var(--text)}.permission-team-picker input:focus-visible+.round-permission-check{outline:2px solid var(--line);outline-offset:3px}.permission-team-picker input:disabled+.round-permission-check{opacity:.4}.permission-team-picker label{position:relative;cursor:pointer;min-height:30px}.permission-row-note{color:var(--muted);font-size:11px;margin:0;padding:10px 16px;line-height:1.6}.permission-range-done{font-size:12px;color:var(--text);border-color:var(--line)}.permission-income-options{display:flex;gap:8px;margin-bottom:12px}.permission-income-options button{font-size:12px}.permission-income-options button.selected{background:var(--raised);border-color:var(--line);color:var(--text)}.permission-result{padding:18px;border-radius:12px;background:var(--selected);color:var(--text);margin-top:22px}.permission-result h3{font-size:14px}.permission-result ul{padding-left:18px;line-height:1.8;font-size:12px}.permission-result p{color:var(--text);margin:8px 0 0;font-size:11px}@media(max-width:760px){.permission-card-main{grid-template-columns:minmax(0,1fr);gap:10px}.permission-card-main>strong{font-size:14px}.permission-levels{max-width:none}.permission-range-badge{text-align:left}.permission-board-title{gap:8px}.permission-board-title>button{font-size:11px;padding:7px}.permission-selected-mark{width:17px}.permission-income-options{flex-wrap:wrap}.permission-result{padding:16px}}
.round-permission-check{pointer-events:none}
.permission-team-picker .permission-select-all{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--surface);margin:12px 0}.permission-select-all strong{display:block;font-size:13px;color:var(--teal)}.permission-select-all small{display:block;color:var(--muted);line-height:1.6;margin-top:3px}.permission-team-picker input:indeterminate+.round-permission-check{position:relative;background:var(--selected);border-color:var(--line)}.permission-team-picker input:indeterminate+.round-permission-check svg{opacity:0}.permission-team-picker input:indeterminate+.round-permission-check::after{content:'';position:absolute;width:10px;height:2px;background:var(--surface);border-radius:1px}

/* Separate company profit panels use the existing ledger cards. */
.company-profit-panel > .ad-summary-strip { grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0 20px 16px; }
.company-profit-panel > .ad-metrics { margin: 0 20px 16px; }
.company-profit-panel > .muted, .company-profit-panel > .notice { margin: 0 20px 16px; }
@media (max-width: 900px) { .company-profit-panel > .ad-summary-strip { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 480px) { .company-profit-panel > .ad-summary-strip, .company-profit-panel > .ad-metrics { margin-left: 12px; margin-right: 12px; gap: 10px; } .company-tabs { flex-wrap: wrap; } }

/* Advertising payroll follows the existing ledger's tables and panels. */
.ad-pay-rate{display:flex;flex-wrap:wrap;gap:8px 24px;color:var(--muted,var(--muted));font-size:13px;line-height:1.7;margin:16px 0}
.ad-payroll .panel{min-width:0}
.ad-pay-table{min-width:1160px}
.ad-pay-table input{width:105px;min-width:85px}
.ad-pay-table th:first-child{min-width:115px}
.ad-pay-table td{vertical-align:top}
.ad-pay-table details{min-width:70px}
.ad-pay-table details[open]{max-width:430px}
.ad-pay-commission{margin-top:20px}
.ad-parttime-table{min-width:930px}
.ad-parttime-table input{width:130px}
.ad-parttime-table select{max-width:225px}
.ad-pay-save{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 24px}
.ad-pay-slip{max-width:900px}
.ad-pay-slip .ad-equation dd{font-variant-numeric:tabular-nums}
@media(max-width:600px){.ad-payroll .ad-context{align-items:flex-start;flex-direction:column;gap:16px}.ad-payroll .panel-heading{flex-wrap:wrap;gap:12px}.ad-pay-rate{display:block}.ad-pay-rate span{display:block;margin-top:6px}.ad-pay-save{position:sticky;bottom:0;background:var(--surface);padding:12px;border-top:1px solid var(--line);z-index:2}}

.ad-payroll .ad-pay-table{min-width:1070px}
.ad-payroll .ad-pay-table th,.ad-payroll .ad-pay-table td{padding:12px}
.ad-payroll .ad-pay-table input{width:88px;min-width:75px}
.ad-payroll .panel>p,.ad-wallet-panel>p{margin:16px 24px}
.ad-pay-commission{margin:20px 24px}
.ad-payroll .ad-pay-table input{padding:10px 8px;font-variant-numeric:tabular-nums}
.ad-payroll input[type=number]::-webkit-inner-spin-button,.ad-payroll input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* Approved Ledger visual system — October 2026 */
:root{--navy:#182f3b;--teal:#176b58;--muted:#687b84;--line:#e1e8e5;--surface:#fff;background:var(--surface);color:var(--navy)}
body{font-size:15px;line-height:1.5}h1,.page-heading h1{font-size:32px;font-weight:650;letter-spacing:-.7px}h2{font-size:18px}h3{font-size:15px}small,.muted{font-size:12px;color:var(--muted)}button,input,select,textarea{min-height:44px;border-radius:6px}button:disabled{cursor:not-allowed;opacity:.5}button.primary{background:var(--teal);border-color:var(--teal)}button.primary:hover{background:var(--selected)}button:focus-visible,summary:focus-visible{outline:3px solid var(--line);outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid var(--line)}.sidebar{width:228px;background:var(--surface);border-right:1px solid var(--line);color:var(--navy)}.brand{color:var(--positive);padding:35px 27px;font-size:28px}.brand small{color:var(--muted);font-size:12px;letter-spacing:1px}.brandmark i{background:var(--selected)}.brandmark i:nth-child(2){background:var(--surface)}.brandmark i:nth-child(3){background:var(--selected)}.sidebar nav{padding:15px 15px}.sidebar nav button{width:100%;min-height:51px;border:0;border-radius:7px;color:var(--muted);padding:13px 15px;margin:5px 0;gap:14px}.sidebar nav button span{font-size:14px}.sidebar nav button.active{background:var(--raised);color:var(--positive);font-weight:650;border:0}.sidebar nav button:hover{background:var(--raised)}.sidebar-bottom{font-size:13px;color:var(--muted);padding:24px}.sidebar-bottom small{color:var(--muted);font-size:12px;margin-top:6px}.workspace{margin-left:228px;width:calc(100% - 228px)}.topbar{height:68px;padding:0 38px;background:var(--surface)}.breadcrumb{font-size:13px;color:var(--muted)}.content{padding:34px 38px 48px;max-width:1600px}.page-heading{margin-bottom:24px}.page-context-label{font-size:12px;color:var(--muted);padding-top:10px}.toolbar{margin-bottom:25px;gap:14px}.toolbar label{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px}.toolbar input[type=month]{width:164px}.panel{border-color:var(--line);border-radius:8px;margin-bottom:24px;box-shadow:none}.panel-heading{padding:23px 24px;align-items:center}.panel-heading h2{font-size:18px}.panel-heading p{margin:7px 0 0;font-size:13px;color:var(--muted)}.panel>summary,details.panel>summary{padding:20px 24px;cursor:pointer;font-weight:600}.subtabs{border-bottom:1px solid var(--line);padding:0;margin:0 0 26px;gap:22px}.subtabs button{border:0;border-bottom:2px solid transparent;border-radius:0;padding:12px 5px;color:var(--muted);background:transparent}.subtabs button.active{border:0;border-bottom:2px solid var(--teal);background:transparent;color:var(--teal);font-weight:650}.subtabs.compact{margin-bottom:20px;padding:0 20px;border-top:0}.field{font-size:13px;color:var(--muted);gap:7px}.field small{font-size:12px}.field input,.field select{font-size:14px}.table-scroll table{font-size:14px}th{font-size:12px;background:var(--surface);color:var(--muted);padding:14px 20px}td{padding:16px 20px;color:var(--text)}td small{font-size:12px;color:var(--muted)}td strong{color:var(--navy)}.badge{font-size:11px;letter-spacing:0;padding:4px 8px}.badge.checked{color:var(--positive);background:var(--raised)}.error,.success,.notice{font-size:13px;line-height:1.6}.success{background:var(--raised);border:1px solid var(--line);color:var(--positive)}.fx-estimate{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--warning-bg);color:var(--warning);font-size:13px;padding:11px 16px;border-radius:7px;margin:0 0 25px}.fx-estimate button{margin-left:auto}.fx-estimate .badge{background:var(--warning-bg);color:var(--warning)}.ad-context h2{font-size:23px}.ad-context>div>span,.eyebrow{font-size:11px;color:var(--muted);letter-spacing:1px}.ad-context p{font-size:13px;color:var(--muted)}.ad-metric,.boss-metric{border-radius:7px;border:1px solid var(--line);background:var(--surface);padding:22px}.ad-metric strong,.boss-metric>strong{font-size:27px;font-weight:650;color:var(--positive)}.ad-metric>span,.boss-metric>span{font-size:12px}.ad-metrics{gap:14px;margin-bottom:24px}.date-navigator{display:flex;align-items:flex-end;gap:8px}.date-navigator .field{margin:0}.date-navigator .field>span{display:none}.date-navigator input[type=date]{width:174px;min-height:44px}.date-navigator button{min-width:42px;font-size:18px}.date-navigator button:last-child{font-size:13px}.daily-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;padding:0 24px 28px}.daily-section{padding:18px 0 4px;border-top:1px solid var(--line)}.daily-section h3{margin-bottom:22px;color:var(--positive)}.daily-section .form-grid{gap:2px 20px}.daily-preview{align-self:start;background:var(--surface);padding:23px;border-radius:7px;position:sticky;top:24px}.daily-preview h3{font-size:19px;margin:8px 0 18px}.daily-preview dl{display:grid;grid-template-columns:1fr auto;gap:16px 12px;font-size:13px;margin:0 0 24px}.daily-preview dt{color:var(--muted)}.daily-preview dd{margin:0;font-variant-numeric:tabular-nums;text-align:right}.daily-preview dd:last-child{font-size:18px;color:var(--teal);font-weight:600}.daily-save-footer,.aj-save-bar,.ad-daily-footer,.ad-pay-save{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--surface);padding:20px 24px;border-top:1px solid var(--line);position:sticky;bottom:0;z-index:3}.daily-save-footer>div{display:flex;gap:18px;align-items:center}.daily-save-footer strong{font-size:23px;color:var(--teal)}.team-entry{margin:0 24px 24px}.team-entry>h3{padding:16px 0 12px;border-bottom:1px solid var(--line);margin:0;font-size:16px}.team-entry>h3 span{font-size:12px;font-weight:400;color:var(--muted);margin-left:10px}.team-entry table input{max-width:240px;text-align:right}.unassigned-groups{margin:12px 24px 26px}.unassigned-groups>summary{padding:15px 0;color:var(--muted);cursor:pointer}.report-person{border-top:1px solid var(--line)}.report-person>summary,.report-group>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;cursor:pointer;list-style:none}.report-person>summary:before,.report-group>summary:before{content:'›';font-size:20px;color:var(--muted)}.report-person[open]>summary:before,.report-group[open]>summary:before{content:'⌄'}.report-person>summary>strong,.report-group>summary>strong{margin-right:auto}.report-group{margin:0 24px 16px;background:var(--surface);border:1px solid var(--line);border-radius:6px}.report-group>summary{padding:15px 20px}.report-stats{display:flex;gap:25px;color:var(--muted);font-size:13px}.report-empty{padding:12px 20px}.wallet-tabs{margin:0 24px}.wallet-balance{grid-template-columns:1fr;margin:0!important}.wallet-balance .ad-metric{border:0;padding:24px 28px}.wallet-balance .ad-metric strong{font-size:36px}.wallet-balance .ad-metric button{width:max-content}.ad-wallet-panel>p{padding:0 28px 16px}.automatic{color:var(--teal);background:var(--surface);border-radius:4px;padding:5px}.ad-pay-table{min-width:1000px!important}.ad-pay-table input{width:94px;min-width:0;padding:9px;text-align:right}.ad-pay-table th,.ad-pay-table td{padding:12px 9px}.ad-pay-table th:first-child{padding-left:20px}.ad-pay-table thead th[colspan]{text-align:center}.commission-source td{padding:8px 20px;background:var(--surface)}.commission-source summary{font-size:12px;color:var(--muted);cursor:pointer}.mobile-payroll{display:none}.parttime-manager{border-top:1px solid var(--line)}.parttime-manager>summary{padding:20px 24px;cursor:pointer}.parttime-manager>summary>span{float:right;font-size:13px;color:var(--muted)}.parttime-list{padding:0 24px}.parttime-entry{display:grid;grid-template-columns:1fr 1.4fr 1fr 1.5fr auto;align-items:start;gap:14px;border-top:1px solid var(--line);padding:18px 0}.parttime-entry .field{margin:0}.parttime-actions{padding-top:26px}.parttime-actions[open]{min-width:150px}.parttime-actions summary{cursor:pointer;color:var(--muted)}.attendance-preview{padding:18px 20px;margin-bottom:20px;background:var(--surface);border-radius:7px}.attendance-preview h3{margin-bottom:10px;color:var(--positive)}.attendance-preview p{margin-bottom:5px}.attendance-preview small{color:var(--muted)}.sales-entry-head,.sales-entry-row{display:grid;grid-template-columns:100px minmax(230px,1.8fr) minmax(90px,.5fr) minmax(150px,1fr);gap:20px;align-items:start}.sales-entry-head{font-size:12px;color:var(--muted);padding:17px 0;background:var(--surface)}.sales-entry-row{padding:20px 0;border-bottom:1px solid var(--line)}.sales-entry-row>strong{padding-top:10px}.sales-entry-row>strong>small{display:block;font-size:11px;color:var(--muted);font-weight:400}.sales-entry-row>.field{margin:0}.sales-entry-row>.field>span{display:none}.sales-split{display:flex;gap:8px;margin-bottom:8px}.sales-split select{width:45%;min-width:110px}.sales-split input{min-width:0;flex:1;text-align:right}.sales-split button{padding:5px;min-width:30px}.split-more{font-size:12px;min-height:28px}.directory-filters{display:flex;gap:12px;padding:0 24px 24px}.directory-filters input{max-width:330px}.directory-filters select{max-width:220px}.mobile-bottom-nav,.mobile-more{display:none}.page-context-label{white-space:nowrap}.login-screen{background:var(--surface)}.login-card .brand{padding:0 0 30px}.login-card{box-shadow:0 12px 70px #00000012}dialog{border-radius:8px;max-height:94vh}dialog::backdrop{background:rgba(8,14,26,.64);backdrop-filter:none}.modal-body{max-height:72vh;overflow:auto}dialog .field{margin-bottom:20px}dialog .field input,dialog .field select{min-height:46px}.panel>p.muted{padding:0 24px 18px}.right-actions{flex-wrap:wrap}.ad-equation dt,.ad-equation dd{font-size:14px}
@media(min-width:1000px){dialog:not(.permissions-dialog){position:fixed;margin:0 0 0 auto;inset:0 0 0 auto;height:100vh;max-height:100vh;width:540px;border-radius:0;border:0;border-left:1px solid var(--line);box-shadow:-8px 0 38px #00000017}dialog:not(.permissions-dialog)::backdrop{background:rgba(8,14,26,.64)}dialog:not(.permissions-dialog) .modal-body{max-height:calc(100vh - 160px)}dialog:not(.permissions-dialog) footer{margin-top:auto}}
@media(max-width:1100px){.sidebar{width:200px}.workspace{margin-left:200px;width:calc(100% - 200px)}.content{padding:28px 24px}.daily-layout{grid-template-columns:1fr 260px;gap:20px}.sales-entry-head,.sales-entry-row{grid-template-columns:70px minmax(220px,1.5fr) 85px minmax(120px,1fr);gap:10px}}
@media(max-width:760px){body{font-size:15px}.sidebar{display:none!important}.workspace{margin:0;width:100%}.topbar{padding:10px 18px;min-height:52px;height:auto}.breadcrumb{display:block;font-size:12px}.topbar .right-actions{gap:8px}.topbar button{border:0;background:transparent;padding:4px 6px;font-size:12px;min-height:36px}.content{padding:22px 16px 96px}.page-heading h1{font-size:27px}.page-context-label{font-size:10px}.toolbar{gap:8px}.toolbar label{font-size:12px;gap:8px}.toolbar select{width:132px;flex:1}.toolbar input[type=month]{width:148px}.panel-heading{padding:18px;flex-wrap:wrap}.panel-heading h2{font-size:17px}.panel-heading p{font-size:12px}.panel{border-radius:7px;margin-bottom:18px}.fx-estimate{font-size:12px;padding:11px;flex-wrap:wrap;gap:7px;margin-bottom:20px}.fx-estimate>span:nth-child(2){flex:1;min-width:210px}.fx-estimate button{margin:0;font-size:12px;min-height:28px}.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding:6px 6px calc(7px + env(safe-area-inset-bottom));box-shadow:0 -3px 15px #00000008}.mobile-bottom-nav button{flex:1;border:0;border-radius:5px;flex-direction:column;gap:4px;padding:6px 2px;color:var(--muted);font-size:11px;background:var(--surface);min-height:53px}.mobile-bottom-nav button.active{color:var(--teal);background:var(--surface)}.mobile-more{display:flex;position:fixed;bottom:75px;left:12px;right:12px;z-index:35;background:var(--surface);padding:22px;border:1px solid var(--line);border-radius:12px;box-shadow:0 -10px 80px #0000002b;flex-direction:column;gap:7px}.mobile-more h2{margin-bottom:10px}.mobile-more button{justify-content:flex-start;border:0}.daily-layout{display:flex;flex-direction:column;padding:0 18px 20px;gap:20px}.daily-preview{position:static;width:100%;padding:20px}.daily-section .form-grid{grid-template-columns:1fr 1fr;gap:0 12px}.daily-section .form-grid .field{min-width:0;font-size:12px}.daily-section input{width:100%;font-size:16px}.daily-save-footer,.aj-save-bar,.ad-daily-footer,.ad-pay-save{position:static;flex-wrap:wrap;padding:16px 18px;gap:16px}.daily-save-footer>div{flex-wrap:wrap;gap:8px 14px}.daily-save-footer button,.aj-save-bar>button,.ad-daily-footer>button{width:100%;min-height:46px}.date-navigator{width:100%;align-items:center}.date-navigator .field{flex:1}.date-navigator input[type=date]{width:100%;font-size:16px}.date-navigator button{min-width:42px}.team-entry{margin:0 16px 20px}.team-entry td,.team-entry th{padding:12px 6px;font-size:12px}.team-entry input{min-width:90px;max-width:125px;font-size:16px}.ad-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ad-metric{padding:17px 14px}.ad-metric strong{font-size:21px}.ad-metric span{font-size:12px}.subtabs{gap:16px;margin-bottom:20px}.subtabs button{font-size:13px}.report-person>summary,.report-group>summary{padding:16px;gap:10px;flex-wrap:wrap}.report-stats{width:100%;gap:8px 15px;flex-wrap:wrap;font-size:12px}.report-group{margin:0 12px 12px}.ad-report-filters{grid-template-columns:1fr 1fr}.ad-report-filters input[type=date]{width:100%}.desktop-payroll{display:none}.mobile-payroll{display:block}.employee-payroll{border-top:1px solid var(--line);padding:0 18px 16px}.employee-payroll>summary{padding:18px 0;display:flex;justify-content:space-between;cursor:pointer}.employee-payroll .form-grid{grid-template-columns:1fr 1fr;gap:0 12px}.employee-payroll input{font-size:16px}.parttime-entry{grid-template-columns:1fr 1fr;gap:12px}.parttime-entry input{font-size:16px}.parttime-actions{grid-column:1/-1;padding:0}.parttime-manager>summary{padding:18px;line-height:1.8}.parttime-manager>summary>span{float:none;display:block;margin-left:18px;font-size:12px}.parttime-list{padding:0 18px}.sales-entry-head{display:none}.sales-entry-row{grid-template-columns:1fr 1fr;gap:12px;padding:20px 0}.sales-entry-row>strong{grid-column:1/-1;padding:0;font-size:18px;display:flex;align-items:center;gap:10px}.sales-entry-row>div{grid-column:1/-1}.sales-entry-row>.field>span{display:block}.sales-entry-row input{font-size:16px}.sales-split input{max-width:none}.directory-filters{padding:0 18px 18px;flex-wrap:wrap}.directory-filters input,.directory-filters select{max-width:none}.wallet-balance .ad-metric strong{font-size:32px}dialog{width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;border-radius:0}.modal-body{max-height:calc(100dvh - 170px)}dialog header{padding:18px}dialog footer{padding:18px}.boss-metric>strong{font-size:23px}.boss-metrics{gap:10px}.ad-client-switch{flex-wrap:wrap}.ad-client-bar{gap:12px}.ad-client-switch button{font-size:12px}.table-scroll table{font-size:13px}}
.company-total{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:30px 32px;background:var(--surface);border:1px solid var(--line);border-radius:8px;margin-bottom:24px}.company-total>div{display:flex;flex-direction:column;gap:10px}.company-total span{color:var(--muted);font-size:13px}.company-total strong{font-size:42px;color:var(--positive);font-weight:650;letter-spacing:-1px}.company-total small{color:var(--muted);font-size:12px}.company-total b{font-size:16px;color:var(--positive)}.business-profits button{display:flex;width:100%;justify-content:space-between;padding:23px 24px;border:0;border-top:1px solid var(--line);border-radius:0;text-align:left;gap:25px}.business-profits button>div:first-child{flex:1}.business-profits h3{font-size:17px;margin:0 0 5px}.business-profits strong{font-size:23px;color:var(--positive);display:block}.business-profits button>div:nth-child(2){text-align:right}.business-profits small{font-size:12px}.overview-issues{margin:0 24px 24px}.rolling-dealers{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;padding:0 24px 24px}.rolling-dealer{border:1px solid var(--line);border-radius:8px;overflow:hidden}.rolling-dealer h3{font-size:18px;margin:0}.rolling-dealer>.panel-heading{padding:20px}.rolling-dealer>dl{display:grid;grid-template-columns:1fr 1.5fr;gap:16px 10px;margin:0;padding:0 20px 20px;font-size:13px}.rolling-dealer dt{color:var(--muted)}.rolling-dealer dd{margin:0;text-align:right}.rolling-dealer dd button{min-height:25px;font-size:12px}.unsettled-period{background:var(--surface);padding:18px 20px;display:flex;flex-direction:column;gap:8px}.unsettled-period>span{font-size:12px;color:var(--muted)}.unsettled-period>strong{font-size:17px;color:var(--positive)}.receipt-currencies{padding:18px 20px;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px}.receipt-currencies>span{width:100%;font-size:12px;color:var(--muted)}.rolling-dealer>details>summary{padding:15px 20px;border-top:1px solid var(--line);font-size:12px;cursor:pointer}.cost-totals{display:flex;gap:55px;padding:0 24px 24px}.cost-totals>div{display:flex;flex-direction:column;gap:8px}.cost-totals span{font-size:12px;color:var(--muted)}.cost-totals strong{font-size:26px;color:var(--positive)}.cost-allocation{display:flex;gap:10px;align-items:center}.cost-allocation .field{flex:1;min-width:0}.cost-allocation button{align-self:center}.allocation-check{font-size:13px;color:var(--warning);padding:12px 0}.allocation-check.complete{color:var(--positive)}.allocation-preview{padding:18px 20px;background:var(--surface);border-radius:7px;margin:22px 0}.allocation-preview h3{margin-bottom:18px}.allocation-preview>div>strong{font-size:13px}.allocation-preview dl{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:13px}.allocation-preview dd{margin:0;font-variant-numeric:tabular-nums}.plain-fieldset{border:0;margin:0;padding:0;min-width:0}.saved-row td{background:var(--raised)!important;box-shadow:inset 0 -1px #00000038}.person-search{max-width:260px}.person-team{margin:0 24px 24px}.person-team>h3{padding:10px 0;font-size:16px;color:var(--muted)}.person-group{border:1px solid var(--line);border-radius:6px;margin-bottom:12px}.person-group>summary{padding:18px;display:flex;gap:22px;align-items:center;cursor:pointer}.person-group>summary>strong{margin-right:auto;font-size:17px}.person-group>summary>span{font-size:13px;color:var(--muted)}.person-list{padding:0 18px 18px}.person-line{display:flex;justify-content:space-between;gap:15px;text-align:left;width:100%;border:0;border-radius:0;border-top:1px solid var(--line);padding:16px 0;background:var(--surface)}.person-line small{display:block;margin-top:4px;white-space:normal}.person-line>span:last-child{font-size:13px;color:var(--teal)}.employee-profile{display:flex;gap:15px;align-items:center;margin-bottom:28px}.employee-profile .avatar{width:54px;height:54px;font-size:23px}.employee-profile p{margin:5px 0 0}.employee-period{padding:16px 0;border-top:1px solid var(--line);margin-bottom:15px}.employee-period p{margin:10px 0}.employee-period small{display:block}.employee-income details{padding:12px 0;border-top:1px solid var(--line)}.employee-income summary{cursor:pointer}.sidebar nav{padding-top:0}.sidebar nav button{margin:2px 0;min-height:49px}.sidebar .brand{padding-top:30px;padding-bottom:24px}
@media(max-width:760px){.company-total{padding:23px 20px;align-items:flex-start;gap:22px;flex-direction:column}.company-total strong{font-size:36px}.company-total>div:last-child{gap:6px}.company-total>div:last-child small{font-size:11px}.business-profits button{padding:20px 18px;gap:12px}.business-profits h3{font-size:16px}.business-profits strong{font-size:21px}.business-profits small{font-size:11px;white-space:normal}.rolling-dealers{grid-template-columns:1fr;padding:0 18px 18px;gap:18px}.rolling-dealer .panel-heading{padding:18px}.unsettled-period>strong{font-size:16px}.cost-totals{gap:25px;padding:0 18px 20px}.cost-totals strong{font-size:23px}.cost-allocation{gap:8px}.cost-allocation input,.cost-allocation select{font-size:16px}.person-team{margin:0 18px 20px}.person-group>summary{flex-wrap:wrap;gap:10px;padding:16px}.person-group>summary>strong{min-width:45%;margin-right:0}.person-group>summary>span{font-size:12px}.person-search{max-width:none}.person-line{white-space:normal;flex-wrap:wrap}.person-line>span:last-child{margin-left:auto}.audit-page .right-actions select{width:100%;max-width:none}}
.rule-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0 24px 24px}.rule-cards article{padding:22px;border:1px solid var(--line);border-radius:7px}.rule-cards h3{font-size:17px;margin:0 0 12px}.rule-cards p{font-size:13px;color:var(--muted);line-height:1.9;margin:0 0 18px}.rule-cards button,.rule-link{color:var(--teal);background:transparent;border:0;padding:0;white-space:normal;text-align:left}.rule-link{margin:0 24px 24px}.row-actions>summary{cursor:pointer;padding:12px;font-size:13px;color:var(--muted)}.row-actions[open]{position:relative}.history-dialog{width:920px;max-width:90vw}.history-dialog .audit-page{border:0}.history-dialog .modal-body{padding:0}.history-dialog .audit-entity{max-width:140px;overflow-wrap:anywhere}.history-dialog .audit-page .panel-heading{flex-wrap:wrap}.history-dialog .audit-page .right-actions{flex-wrap:wrap}td>.text-button{margin-left:8px}
@media(max-width:760px){.rule-cards{grid-template-columns:1fr;padding:0 18px 18px;gap:14px}.rule-cards article{padding:18px}.history-dialog{width:100%;max-width:100%}}
dialog.confirmation-dialog{margin:auto;width:440px;max-width:calc(100vw - 32px);height:auto;max-height:calc(100dvh - 32px);border:1px solid var(--line);border-radius:10px;box-shadow:0 20px 80px #00000033}.confirmation-dialog header{padding:22px 24px}.confirmation-dialog .modal-body{padding:8px 24px 24px}.confirmation-dialog p{line-height:1.8}.confirmation-dialog footer{padding:18px 24px}.confirmation-dialog::backdrop{background:rgba(8,14,26,.64)}

/* Keep the date controls beside the title and all business sources visible sooner. */
.page-controls{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.page-controls .page-heading,.page-controls .toolbar{margin:0}.page-controls .page-context-label{display:none}.page-controls .toolbar{justify-content:flex-end}.company-total{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:26px;background:var(--surface);border:0;border-bottom:1px solid var(--line);border-radius:0;padding:24px 4px 32px}.company-total>div{min-width:0}.company-total strong{font-size:clamp(27px,3vw,46px);overflow-wrap:anywhere;line-height:1.2}.company-total .company-subtotal{border-left:1px solid var(--line);padding-left:26px}.company-total .company-subtotal strong{font-size:clamp(22px,2.1vw,32px);color:var(--text);letter-spacing:-.5px}.business-profits button{padding-top:18px;padding-bottom:18px}.business-profits strong.negative{color:var(--danger)}
@media(max-width:1050px){.page-controls{align-items:flex-start;flex-direction:column;gap:18px}.page-controls .toolbar{justify-content:flex-start}.company-total{grid-template-columns:1fr 1fr;gap:22px}.company-total>div:first-child{grid-column:1/-1}.company-total .company-subtotal{border-left:0;padding-left:0}}
@media(max-width:760px){.page-controls{gap:14px;margin-bottom:18px}.company-total{padding:6px 2px 24px;gap:22px 12px}.company-total strong{font-size:35px}.company-total .company-subtotal strong{font-size:22px;letter-spacing:-.5px}.company-total .company-subtotal span{font-size:12px}.company-total small{font-size:11px}.business-profits button{padding-top:16px;padding-bottom:16px}.business-profits strong{font-size:19px}}

.account-actions{display:flex;align-items:flex-start;gap:8px}.account-actions>.row-actions{min-width:64px}.account-actions>.row-actions[open]{min-width:140px}.account-actions .row-actions>div{display:flex;flex-direction:column;gap:6px;padding:6px 0}.account-actions .row-actions button{justify-content:flex-start;text-align:left;white-space:normal;font-size:12px}

.aj-page .ad-context{margin:0 0 18px;align-items:center}.aj-page .ad-context h2,.aj-page .ad-context>div>span{display:none}.aj-page .ad-context p{margin:0}.aj-page .daily-section .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px}.aj-page .daily-section:last-child .form-grid{grid-template-columns:1fr 2fr}.aj-page .daily-section{padding-bottom:18px;margin-bottom:18px}.aj-page .daily-section .field{margin-bottom:16px}.ad-pay-table{table-layout:fixed;min-width:900px!important}.ad-pay-table th:first-child{width:112px}.ad-pay-table input{width:100%}.desktop-payroll th,.desktop-payroll td{padding-left:7px;padding-right:7px}.ad-pay-table th{white-space:normal;line-height:1.5}
@media(max-width:1050px){.aj-page .daily-section .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.aj-page .ad-context{gap:12px}.aj-page .ad-context p{font-size:12px}.aj-page .daily-section:last-child .form-grid{grid-template-columns:1fr}.aj-page .daily-section .form-grid{gap:0 12px}.aj-page .daily-section:last-child{margin-bottom:0;padding-bottom:0}}

.daily-section input[type=number],.cost-allocation input[type=number]{text-align:right;font-variant-numeric:tabular-nums}

.audit-entity strong{font-weight:500}.audit-entity small{display:block;margin-top:5px;line-height:1.6;color:var(--muted)}

/* Warrior: date-owned entry, team reports, and side-by-side cash observations. */
.ad-owner{display:block;font-size:12px;font-weight:400;color:var(--muted,var(--muted));margin-top:6px;white-space:normal}
.warrior-entry-table{min-width:710px}
.warrior-entry-table th:first-child{width:20%}
.warrior-entry-table td input{max-width:240px}
.ad-group-expenses td{padding-top:0!important;background:var(--surface)}
.ad-group-expenses summary{color:var(--positive);cursor:pointer;padding:12px 0;font-size:13px}
.ad-expense-list{padding:8px 0 20px}
.ad-expense-entry{display:grid;grid-template-columns:180px 160px minmax(180px,1fr) auto;gap:14px;align-items:end;padding:10px 0}
.ad-expense-entry .field{margin:0}
.ad-expense-entry input,.ad-expense-entry select{width:100%;max-width:none!important}
.ad-common-expenses{border-top:1px solid var(--line);padding:0 28px}
.ad-common-expenses .ad-section-heading{padding-left:0;padding-right:0}
.ad-performance-totals{grid-template-columns:repeat(4,minmax(0,1fr))}
.warrior-wallet-balances{grid-template-columns:repeat(3,minmax(0,1fr));padding:0 28px}
.report-team>summary{background:var(--surface)}
.report-team .report-stats{gap:18px;flex-wrap:wrap}
.report-group td:last-child{min-width:150px;white-space:normal}
.report-group td p{margin:3px 0}
@media(max-width:800px){
 .ad-expense-entry{grid-template-columns:1fr 1fr}
 .ad-expense-entry .field:nth-child(3){grid-column:1/-1}
 .ad-common-expenses{padding:0 16px}
 .ad-performance-totals{grid-template-columns:repeat(2,minmax(0,1fr))}
 .warrior-wallet-balances{grid-template-columns:1fr;padding:0 16px}
 .report-team>summary,.report-group>summary{align-items:flex-start;flex-direction:column;gap:12px}
 .report-team .report-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;font-size:12px}
 .ad-wallet-panel .right-actions{justify-content:flex-start;flex-wrap:wrap}
}
.ad-client-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.ad-client-bar>select{width:auto;min-width:170px}
@media(max-width:600px){.ad-client-bar{align-items:stretch;flex-direction:column;gap:12px}.ad-client-bar>select{width:100%}}
@media(max-width:800px){
 .ad-performance-totals>div{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;padding:14px}
 .ad-performance-totals strong{font-size:19px}
 .report-team>summary,.report-group>summary{display:grid;grid-template-columns:12px minmax(0,1fr);gap:8px 10px}
 .report-team>summary>.report-stats,.report-group>summary>.report-stats{grid-column:2}
}

/* Dense daily ledger: primary inputs stay in one row, optional notes expand on demand. */
.ad-daily{overflow:visible}
.ad-daily .panel-heading{padding:14px 18px;gap:16px}
.ad-daily .panel-heading h2{font-size:17px;margin:0}
.ad-daily-hint{font-size:12px;color:var(--muted)}
.ad-entry-grid{padding:0 18px}
.warrior-entry-table{min-width:850px;table-layout:fixed}
.warrior-entry-table th:first-child{width:18%}
.warrior-entry-table th:nth-child(2){width:11%}
.warrior-entry-table th:nth-child(3){width:16%}
.warrior-entry-table th:nth-child(4){width:38%}
.warrior-entry-table th:nth-child(5){width:17%}
.warrior-entry-table th{padding:9px 10px;font-size:12px}
.warrior-entry-table td{padding:9px 10px;vertical-align:top;font-size:14px}
.warrior-entry-table td>input{width:100%;max-width:none}
.warrior-entry-table .ad-group-name,.warrior-entry-table .ad-group-buyer{padding-top:15px}
.ad-team-tag{display:inline-block;min-width:30px;margin-right:8px;font-size:11px;color:var(--muted)}
.ad-group-name strong{white-space:normal;overflow-wrap:anywhere}
.warrior-entry-table .ad-team-start td{border-top:2px solid var(--line)}
.ad-inline-costs{display:flex;flex-direction:column;gap:6px;min-width:0}
.ad-inline-cost-fields{display:grid;grid-template-columns:minmax(95px,1fr) minmax(74px,1fr) 28px 28px;gap:5px;align-items:center}
.ad-daily .ad-inline-cost-fields select,.ad-daily .ad-inline-cost-fields input,.ad-daily .ad-inline-cost-actions input{width:100%;min-width:0!important;max-width:none!important}
.ad-inline-cost-fields .ad-cost-more,.ad-inline-cost-fields .ad-add-inline-cost{width:28px;min-height:34px;padding:0;border:0;background:transparent;color:var(--teal);font-size:18px;border-radius:4px}
.ad-inline-cost-fields .ad-cost-more:hover,.ad-inline-cost-fields .ad-add-inline-cost:hover{background:var(--raised)}
.ad-cost-more.has-note{background:var(--raised)}
.ad-inline-cost-actions{display:flex;align-items:center;gap:8px;margin-top:6px}
.ad-inline-cost-actions .text-button{flex-shrink:0;padding:3px 0;min-height:30px;font-size:12px}
.ad-daily .ad-inline-costs small{margin:0;font-size:11px;line-height:1.3;font-variant-numeric:tabular-nums}
.ad-daily .unassigned-groups{margin:0 18px}
.ad-daily .unassigned-groups>summary{padding:10px 0;font-size:12px}
.ad-daily .ad-common-expenses{padding:0 18px}
.ad-daily .ad-section-heading{padding:10px 0;border:0;flex-direction:row;align-items:center}
.ad-daily .ad-section-heading h3{margin:0;font-size:13px}
.ad-daily .ad-section-heading h3 span{font-size:12px;font-weight:400;color:var(--muted);margin-left:12px}
.ad-daily .ad-expense-list{padding:0 0 10px}
.ad-daily .ad-expense-entry{padding:6px 0;gap:10px;grid-template-columns:150px 130px minmax(160px,1fr) auto}
.ad-daily .ad-expense-entry .field>span{font-size:11px;margin-bottom:3px}
.ad-daily-footer{position:sticky;bottom:0;z-index:3;padding:10px 18px;gap:12px;border-radius:0 0 8px 8px;box-shadow:0 -3px 10px #00000010}
.ad-daily-footer strong{font-size:14px}
.ad-workspace .ad-history{margin-top:12px}
.ad-workspace .ad-history>summary{padding:12px 18px;font-size:13px}
@media(min-width:761px){
 .topbar{height:52px;min-height:52px;padding:0 24px}
 .content{max-width:none;padding:20px 24px 28px}
 .page-controls{flex-direction:row;align-items:center;gap:16px;margin-bottom:14px}
 .page-controls .toolbar{justify-content:flex-end}
 .page-heading h1{font-size:26px}
 .page-controls input,.page-controls select,.topbar button{min-height:36px;padding-top:6px;padding-bottom:6px}
 .ad-client-bar{margin-bottom:12px;gap:12px}
 .ad-client-switch{padding:3px;gap:3px}
 .ad-client-switch button,.ad-client-bar>select{min-height:36px;padding:6px 12px}
 .ad-workspace>.subtabs{margin-bottom:14px;gap:20px}
 .ad-workspace>.subtabs button{min-height:36px;padding:7px 4px}
 .ad-daily input,.ad-daily select,.ad-daily button{min-height:34px;padding:5px 9px;font-size:13px}
 .ad-daily .date-navigator{gap:5px}
 .ad-daily .date-navigator input[type=date]{min-height:34px;width:150px}
 .ad-daily .date-navigator button{min-width:32px}
 .ad-daily-footer>.primary{min-height:36px}
 .ad-daily .ad-expense-entry+.ad-expense-entry .field>span{display:none}
 .ad-workspace .success{padding:8px 14px;margin-bottom:10px}
}
@media(max-width:760px){
 .ad-daily .panel-heading{padding:12px;flex-direction:column;align-items:stretch;gap:10px}
 .ad-daily .panel-heading>div:first-child{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
 .ad-daily-hint{font-size:11px}
 .ad-entry-grid{padding:0 12px}
 .ad-daily .warrior-entry-table{display:block;min-width:0;width:100%}
 .warrior-entry-table thead{display:none}
 .warrior-entry-table tbody{display:block}
 .warrior-entry-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:12px 0;border-top:1px solid var(--line)}
 .warrior-entry-table td{display:block;padding:0;border:0!important;white-space:normal}
 .warrior-entry-table .ad-group-name,.warrior-entry-table .ad-group-buyer{padding:0}
 .warrior-entry-table .ad-group-buyer{text-align:right;color:var(--muted)}
 .warrior-entry-table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:4px}
 .warrior-entry-table td:nth-child(3){grid-row:2;grid-column:1}
 .warrior-entry-table .ad-spend-remark{grid-row:2;grid-column:2}
 .warrior-entry-table .ad-inline-cost-cell{grid-column:1/-1}
 .warrior-entry-table input,.warrior-entry-table select{min-height:44px;font-size:16px}
 .ad-inline-cost-fields{grid-template-columns:minmax(88px,1fr) minmax(76px,1fr) 40px 40px;gap:4px}
 .ad-inline-cost-fields .ad-cost-more,.ad-inline-cost-fields .ad-add-inline-cost{width:40px;min-height:44px}
 .ad-daily .unassigned-groups{margin:0 12px}
 .ad-daily .ad-common-expenses{padding:0 12px}
 .ad-daily .ad-section-heading h3 span{display:block;margin:2px 0 0;font-size:11px}
 .ad-daily .ad-section-heading>button{font-size:12px;padding:8px}
 .ad-daily .ad-expense-entry{grid-template-columns:1fr 1fr}
 .ad-daily .ad-expense-entry .field:nth-child(3){grid-column:1/-1}
 .ad-daily-footer{position:sticky;bottom:calc(67px + env(safe-area-inset-bottom));flex-direction:row;flex-wrap:nowrap;padding:10px 12px;gap:8px}
 .ad-daily-footer strong{font-size:12px}
 .ad-daily-footer>button{width:auto;min-height:44px;padding:8px 12px;font-size:12px;flex-shrink:0}
}

@media(max-width:760px){
 .content-advertising .page-controls{flex-direction:row;align-items:center;gap:8px;margin-bottom:12px}
 .content-advertising .page-heading h1{font-size:24px}
 .content-advertising .page-controls .toolbar label{font-size:0;gap:0}
 .content-advertising .page-controls .toolbar input{font-size:14px;width:145px}
 .content-advertising .ad-client-bar{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}
 .content-advertising .ad-client-switch{width:auto;flex:1;min-width:0;padding:3px}
 .content-advertising .ad-client-switch button{padding:7px 9px;white-space:nowrap}
 .content-advertising .ad-client-bar>select{width:auto;min-width:115px;max-width:135px;font-size:13px}
 .content-advertising .ad-workspace>.subtabs{margin-bottom:12px;gap:14px}
}

/* Shared workspace density. Keep the page controls visible; scroll the work area. */
:root {
  --workspace-gutter: 14px;
  --control-height: 32px;
  --line: #dce4e0;
  --muted: #65746f;
}
body { font-size: 14px; line-height: 1.45; }
button, input, select, textarea { font: inherit; }
button:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid var(--line);
  outline-offset: 2px;
}
.page-controls .right-actions { display: flex; gap: 6px; }
.page-body { min-width: 0; }
.sales-split-list { flex: 1; min-width: 0; }
.sales-dealer-cell { display: flex; align-items: flex-start; gap: 6px; }
.sales-dealer-cell .split-more { flex: 0 0 30px; width: 30px; padding: 4px; }

@media (min-width: 761px) {
  body:has(.app-shell) { overflow: hidden; }
  .app-shell { height: 100dvh; min-height: 0; overflow: hidden; }
  .sidebar { width: 176px; height: 100dvh; }
  .sidebar .brand { padding: 18px 16px 16px; font-size: 23px; gap: 10px; }
  .sidebar .brand small { font-size: 11px; margin-top: 3px; }
  .sidebar .brandmark { transform: scale(.8); transform-origin: left center; margin-right: -4px; }
  .sidebar nav { padding: 0 8px; overflow-y: auto; }
  .sidebar nav button { min-height: 36px; padding: 7px 10px; margin: 2px 0; gap: 10px; border-radius: 5px; }
  .sidebar nav button span { font-size: 13px; line-height: 1.4; }
  .sidebar nav button svg { width: 17px; height: 17px; flex-shrink: 0; }
  .sidebar-bottom { padding: 14px 16px; font-size: 12px; }
  .sidebar-bottom small { margin-top: 3px; font-size: 11px; }
  .workspace { width: calc(100% - 176px); margin-left: 176px; min-width: 0; height: 100dvh; display: flex; flex-direction: column; }
  .content { width: 100%; flex: 1; min-height: 0; display: flex; flex-direction: column; padding: 0 var(--workspace-gutter) 12px; margin: 0; }
  .page-controls { flex: 0 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; min-height: 56px; margin: 0; padding: 8px 0; }
  .page-controls .page-heading { gap: 8px; }
  .page-controls .page-heading h1 { font-size: 21px; line-height: 1.3; letter-spacing: -.4px; }
  .page-controls .toolbar { gap: 8px; flex-wrap: wrap; }
  .page-controls .toolbar label { gap: 7px; font-size: 12px; }
  .page-controls .toolbar input[type=month] { width: 148px; }
  .page-controls .toolbar select { width: 128px; }
  .page-controls .right-actions { padding-left: 8px; border-left: 1px solid var(--line); }
  .page-body { flex: 1; min-height: 0; overflow: auto; overflow-anchor: none; scrollbar-gutter: stable; padding-right: 2px; }
  .page-body > :last-child { margin-bottom: 0; }
  .content .fx-estimate { flex-shrink: 0; min-height: 30px; margin: 0 0 8px; padding: 4px 10px; gap: 8px; font-size: 12px; border-radius: 5px; }
  .content .fx-estimate .badge { padding: 2px 5px; font-size: 11px; }
  .content .fx-estimate button { min-height: 24px; padding: 2px 4px; font-size: 12px; }
  .content > .error, .content > .success { flex-shrink: 0; }
  .workspace button, .workspace input, .workspace select, .workspace textarea {
    min-height: var(--control-height); padding: 5px 9px; font-size: 13px; line-height: 1.4; border-radius: 5px;
  }
  .workspace input[type=checkbox], .workspace input[type=radio] { min-height: 16px; width: 16px; padding: 0; }
  .workspace .text-button { padding: 3px 5px; min-height: 26px; }
  .workspace h2 { font-size: 15px; line-height: 1.4; }
  .workspace h3 { font-size: 13px; line-height: 1.45; }
  .workspace p { line-height: 1.5; }
  .workspace .panel { margin-bottom: 10px; border-radius: 5px; }
  .workspace .panel-heading { padding: 10px 12px; gap: 10px; min-height: 44px; }
  .workspace .panel-heading h2 { font-size: 15px; margin: 0; }
  .workspace .panel-heading p, .workspace .ad-description { margin: 3px 0 0; font-size: 12px; line-height: 1.4; }
  .workspace .panel > summary { padding: 9px 12px; font-size: 13px; }
  .workspace .panel-heading > .muted { font-size: 12px; }
  .workspace .subtabs { flex-shrink: 0; min-height: 34px; padding: 0; margin: 0 0 8px; gap: 14px; align-items: stretch; }
  .workspace .subtabs button { min-height: 32px; padding: 5px 8px; font-size: 13px; white-space: nowrap; }
  .workspace .field { gap: 4px; margin-bottom: 10px; font-size: 12px; }
  .workspace .form-grid { gap: 0 12px; }
  .workspace .error, .workspace .success, .workspace .notice { padding: 7px 10px; margin: 0 0 8px; font-size: 12px; }
  .workspace .directory-filters { padding: 8px 12px; gap: 8px; margin: 0; }
  .workspace .directory-filters input { max-width: 300px; }
  .workspace .directory-filters select { max-width: 220px; }
  .workspace .row-actions > summary { padding: 4px 7px; min-height: 28px; }
  .workspace .account-actions { align-items: center; }
  .workspace .table-scroll { max-height: calc(100dvh - 260px); overflow: auto; }
  .page-users, .page-costs, .page-receipts, .page-audit { display: flex; flex-direction: column; overflow: hidden; }
  .page-users > .panel, .page-costs > .panel, .page-receipts > .panel, .page-audit > .panel { display: flex; flex: 1; flex-direction: column; min-height: 0; }
  :is(.page-users,.page-costs,.page-receipts,.page-audit) > .panel > :not(.table-scroll) { flex-shrink: 0; }
  :is(.page-users,.page-costs,.page-receipts,.page-audit) > .panel > .table-scroll { flex: 1; min-height: 0; max-height: none; }
  .workspace .table-scroll table { font-size: 13px; }
  .workspace table th, .workspace table td { padding: 8px 10px; font-size: 13px; line-height: 1.4; }
  .workspace table thead { position: sticky; top: 0; z-index: 2; }
  .workspace table thead th { background: var(--surface); color: var(--muted); font-size: 12px; font-weight: 600; }
  .workspace table td button { min-height: 28px; padding: 3px 7px; font-size: 12px; }
  .workspace table td small { font-size: 11px; margin-top: 2px; }
  .workspace table input, .workspace table select { min-height: 30px; padding: 4px 6px; font-size: 13px; }
  .workspace .empty { padding: 22px 12px; }
  .workspace .metrics, .workspace .ad-metrics, .workspace .boss-metrics, .workspace .dealer-metrics { gap: 10px; margin: 0 0 10px; }
  .workspace .metric, .workspace .ad-metric, .workspace .boss-metric, .workspace .dealer-metrics > div { padding: 12px 14px; gap: 5px; border-radius: 5px; }
  .workspace .metric h3, .workspace .ad-metric > span, .workspace .boss-metric > span, .workspace .dealer-metrics span { font-size: 12px; margin: 0 0 5px; }
  .workspace .metric strong, .workspace .ad-metric strong, .workspace .boss-metric > strong, .workspace .dealer-metrics strong { font-size: 23px; line-height: 1.25; }
  .workspace .metric-icon { width: 28px; height: 28px; }
  .workspace .ad-summary-strip { gap: 12px; padding: 12px; }
  .workspace .ad-summary-strip > div { gap: 4px; min-width: 0; }
  .workspace .ad-summary-strip strong { font-size: 19px; margin-top: 4px; }
  .workspace .ad-summary-strip span, .workspace .ad-summary-strip small { font-size: 12px; }
  .workspace .ad-context, .workspace .boss-context { margin: 0 0 8px; gap: 10px; }
  .workspace .ad-context h2, .workspace .boss-context h2 { font-size: 17px; margin: 0; }
  .workspace .ad-context p, .workspace .ad-context > div > span { font-size: 12px; margin: 2px 0 0; }
  .workspace .ad-two-columns, .workspace .boss-overview-grid { gap: 10px; }
  .workspace .ad-equation { padding: 10px 14px; gap: 7px 12px; font-size: 13px; margin: 0; }
  .workspace .ad-footnote, .workspace .dealer-footnote { padding: 4px 12px 10px; margin: 0; font-size: 12px; }
  .workspace .panel > p.muted { margin: 4px 12px 10px; font-size: 12px; }

  /* An entry sheet has one scrollable body and an always-visible save footer. */
  .page-calendar:has(.sales-daily) { display: flex; flex-direction: column; overflow: hidden; }
  .workspace .sales-daily { flex: 1; min-height: 0; display: flex; flex-direction: column; margin-bottom: 0; }
  .sales-daily > .panel-heading { flex-shrink: 0; }
  .sales-daily > form { display: flex; flex: 1; flex-direction: column; min-height: 0; }
  .sales-entry-scroll { overflow: auto; flex: 1; min-height: 0; padding: 0 12px; }
  .workspace .team-entry { margin: 0; }
  .workspace .team-entry > h3 { padding: 5px 8px; font-size: 13px; background: var(--surface); border-top: 1px solid var(--line); border-bottom: 0; }
  .workspace .team-entry > h3 span { margin-left: 8px; font-size: 12px; }
  .workspace .sales-entry-head, .workspace .sales-entry-row { grid-template-columns: 78px minmax(280px,1.5fr) 82px minmax(150px,1fr); gap: 10px; }
  .workspace .sales-entry-head { padding: 5px 8px; font-size: 12px; background: var(--surface); position: sticky; top: 0; z-index: 1; }
  .workspace .sales-entry-row { padding: 4px 8px; align-items: center; min-height: 40px; }
  .workspace .sales-entry-row:hover { background: var(--surface); }
  .workspace .sales-entry-row > strong { padding: 0; font-size: 13px; }
  .workspace .sales-entry-row > strong > small { display: inline; margin-left: 5px; font-size: 10px; }
  .workspace .sales-entry-row > .field { margin: 0; }
  .workspace .sales-entry-row input, .workspace .sales-entry-row select { min-height: 30px; padding: 4px 7px; }
  .workspace .sales-split { margin: 0; gap: 6px; }
  .workspace .sales-split + .sales-split { margin-top: 4px; }
  .workspace .sales-split select { width: 44%; min-width: 100px; }
  .workspace .sales-entry-row .split-more { min-height: 30px; font-size: 17px; border: 1px solid var(--line); }
  .workspace .daily-save-footer, .workspace .aj-save-bar, .workspace .ad-daily-footer, .workspace .ad-pay-save {
    flex-shrink: 0; padding: 8px 12px; min-height: 48px; gap: 12px; border-top: 1px solid var(--line); border-radius: 0; margin: 0; background: var(--surface);
  }
  .workspace .daily-save-footer { position: static; }
  .workspace .daily-save-footer > div { gap: 14px; font-size: 12px; }
  .workspace .daily-save-footer strong { font-size: 19px; }
  .workspace .date-navigator { gap: 5px; align-items: center; }
  .workspace .date-navigator .field { margin: 0; }
  .workspace .sales-daily > .panel-heading > div:first-child { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
  .workspace .date-navigator input[type=date] { width: 143px; min-height: 32px; font-size: 13px; }
  .workspace .date-navigator button { min-width: 30px; min-height: 32px; padding: 4px 8px; }

  /* Overview totals stay on one line, with all four business rows in view. */
  .workspace .company-total { grid-template-columns: 1.2fr 1fr 1fr; gap: 16px; padding: 14px 12px; margin: 0 0 10px; background: var(--surface); border: 1px solid var(--line); border-radius: 5px; }
  .workspace .company-total > div:first-child { grid-column: auto; }
  .workspace .company-total > div { gap: 5px; }
  .workspace .company-total span { font-size: 12px; }
  .workspace .company-total strong { font-size: 29px; }
  .workspace .company-total .company-subtotal { border-left: 1px solid var(--line); padding-left: 16px; }
  .workspace .company-total .company-subtotal strong { font-size: 23px; }
  .workspace .company-total small { font-size: 11px; }
  .workspace .business-profits button { min-height: 66px; padding: 10px 14px; gap: 15px; }
  .workspace .business-profits h3 { font-size: 14px; margin: 0 0 3px; }
  .workspace .business-profits strong { font-size: 21px; }
  .workspace .business-profits small { font-size: 12px; }
  .workspace .boss-categories, .workspace .boss-ranking ol { padding: 0 12px 8px; }
  .workspace .boss-category { padding: 9px 0; }
  .workspace .boss-bar { margin: 6px 0; height: 4px; }
  .workspace .boss-ranking li > button { padding: 10px 0; gap: 10px; }
  .workspace .boss-rank-track { margin: 6px 0; }
  .workspace .boss-status { padding: 7px 10px; margin-bottom: 8px; }

  /* Advertising uses the same compact controls, fields, and ledger rows. */
  .workspace .ad-client-bar { gap: 10px; margin-bottom: 8px; }
  .workspace .ad-client-switch { padding: 2px; gap: 2px; }
  .workspace .ad-client-switch button, .workspace .ad-client-bar > select { min-height: 32px; padding: 5px 12px; }
  .workspace .ad-client-bar > select { min-width: 145px; }
  .workspace .aj-page .ad-context { min-height: 32px; margin-bottom: 6px; }
  .workspace .aj-page .ad-context p { font-size: 12px; }
  .workspace .daily-layout { grid-template-columns: minmax(0,1fr) 280px; gap: 16px; padding: 12px; }
  .workspace .daily-section, .workspace .aj-page .daily-section { padding: 0 0 8px; margin-bottom: 8px; }
  .workspace .daily-section:last-child { padding-bottom: 0; margin-bottom: 0; }
  .workspace .daily-section h3 { margin: 0 0 8px; font-size: 13px; }
  .workspace .aj-page .daily-section .form-grid { gap: 0 12px; }
  .workspace .aj-page .daily-section .field { margin-bottom: 8px; }
  .workspace .daily-preview { padding: 12px; position: static; }
  .workspace .daily-preview h3 { font-size: 14px; margin: 0 0 8px; }
  .workspace .daily-preview > .eyebrow { display: none; }
  .workspace .daily-preview dl { gap: 6px 10px; font-size: 12px; margin: 0; }
  .workspace .daily-preview p { margin: 10px 0 0; font-size: 11px; }
  .workspace .aj-save-bar > div { display: flex; align-items: center; gap: 12px; }
  .workspace .aj-save-bar .field { flex-direction: row; align-items: center; margin: 0; white-space: nowrap; }
  .workspace .aj-save-bar strong { font-size: 13px; }
  .workspace .ad-daily .panel-heading { padding: 8px 12px; }
  .workspace .ad-daily { display: flex; flex-direction: column; max-height: calc(100dvh - 236px); }
  .workspace .ad-daily > .panel-heading { flex-shrink: 0; }
  .workspace .ad-daily > form { display: flex; flex-direction: column; flex: 1; min-height: 0; }
  .workspace .ad-record-scroll { flex: 1; min-height: 0; overflow: auto; }
  .workspace .ad-record-scroll .table-scroll { overflow: visible; max-height: none; }
  .workspace .ad-daily-footer { position: static; }
  .workspace .ad-daily-hint { font-size: 12px; }
  .workspace .ad-entry-grid { padding: 0 12px; }
  .workspace .ad-entry-grid .team-entry > h3 { padding: 6px 8px; }
  .workspace .warrior-entry-table th, .workspace .warrior-entry-table td { padding: 5px 7px; }
  .workspace .ad-common-expenses { padding: 0 12px; }
  .workspace .ad-daily .ad-section-heading { padding: 6px 0; }
  .workspace .unassigned-groups { margin: 0 12px; }
  .workspace .unassigned-groups > summary { padding: 7px 0; }
  .workspace .ad-history { margin-top: 8px; }
  .workspace .ad-pay-rate { margin: 0 0 8px; padding: 6px 10px; font-size: 12px; }
  .workspace .ad-pay-rate span { font-size: 11px; margin-left: 10px; }
  .workspace .ad-pay-table th, .workspace .ad-pay-table td { padding: 5px 7px; }
  .workspace .ad-payroll .ad-pay-table input { min-height: 30px; height: 30px; padding: 4px 6px; }
  .workspace .ad-payroll .ad-context > div > span { display: none; }
  .workspace .ad-payroll .ad-context > div { display: flex; align-items: baseline; flex-wrap: wrap; gap: 10px; }
  .workspace .ad-payroll .ad-context h2 { font-size: 15px; }
  .workspace .ad-payroll .ad-metric { padding: 10px 12px; }
  .workspace .ad-payroll .ad-metric strong { font-size: 21px; }
  .workspace .ad-payroll .desktop-payroll { max-height: calc(100dvh - 490px); }
  .workspace .ad-payroll:has(#payroll-panel-summary) .ad-pay-save { position: static; margin-bottom: 10px; }
  .workspace .commission-source td { padding: 3px 8px; }
  .workspace .commission-source summary { font-size: 11px; line-height: 1.4; }
  .workspace .ad-pay-save { position: sticky; bottom: 0; z-index: 4; font-size: 12px; }
  .workspace .parttime-manager > summary { padding: 8px 12px; font-size: 13px; }
  .workspace .parttime-list { padding: 0 12px 8px; }
  .workspace .parttime-entry { padding: 7px 0; gap: 10px; }
  .workspace .parttime-entry .field { margin: 0; }

  .workspace .cost-totals { padding: 10px 12px; gap: 24px; margin: 0; }
  .workspace .cost-totals strong { font-size: 22px; }
  .workspace .cost-totals span { font-size: 12px; }
  .workspace .person-team { margin: 0; padding: 0 12px 12px; }
  .workspace .person-team h3 { padding: 7px 0; margin: 0; }
  .workspace .person-group > summary { padding: 9px 10px; font-size: 12px; gap: 8px; }
  .workspace .person-group { margin-bottom: 7px; }
  .workspace .person-group > summary > strong { font-size: 14px; }
  .workspace .person-line { padding: 8px; font-size: 12px; }
  .workspace .person-list { padding: 8px; }
  .workspace .person-line small { font-size: 11px; }
  .workspace .calendar-day { min-height: 74px; padding: 6px; gap: 3px; }
  .workspace .calendar-grid { padding: 0 12px 12px; gap: 4px; }
  .workspace .calendar-legend { padding: 0 12px 8px; }
  .workspace .calendar-weekday { padding: 4px; }
  .workspace .attendance-panel { margin: 10px 0; padding: 12px; }
  .workspace .attendance-card { padding: 9px 10px; }
  .workspace .rating-team th, .workspace .rating-team td { padding: 7px 9px; }
  .workspace .rating-total, .workspace .rating-average { padding: 12px; }
  .workspace .rule-cards { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; padding: 0 12px 12px; }
  .workspace .rule-cards article { padding: 10px 12px; border-radius: 5px; display: flex; flex-direction: column; }
  .workspace .rule-cards h3 { font-size: 13px; margin: 0 0 5px; }
  .workspace .rule-cards p { font-size: 12px; line-height: 1.5; margin: 0 0 6px; }
  .workspace .rule-cards button { margin-top: auto; align-self: flex-start; min-height: 25px; padding: 2px 0; font-size: 12px; }
  .workspace .rule-link { margin: 0 12px 8px; font-size: 12px; }
  .workspace .rolling-dealers { gap: 10px; padding: 0 12px 12px; }
  .workspace .rolling-dealer { padding: 12px; border-radius: 5px; }
  .workspace .rolling-dealer .panel-heading { padding: 0 0 8px; min-height: 0; }
  .workspace .rolling-dealer dl { gap: 6px 12px; margin: 0 0 8px; font-size: 13px; }
  .workspace .unsettled-period { padding: 10px 12px; gap: 4px; margin: 0 0 8px; }
  .workspace .unsettled-period strong { font-size: 16px; }
  .workspace .receipt-currencies { padding: 0; gap: 6px 12px; margin: 0 0 8px; font-size: 12px; }
  .workspace .receipt-currencies strong { font-size: 16px; }
  .workspace .rolling-dealer > details > summary { font-size: 12px; padding: 4px 0; }

  /* Dialogs keep actions visible independently of long forms. */
  dialog:not(.confirmation-dialog) { max-height: 100dvh; }
  dialog:not(.confirmation-dialog)[open] { display: flex; flex-direction: column; }
  dialog:not(.confirmation-dialog) > header { flex-shrink: 0; padding: 12px 16px; }
  dialog header h2 { font-size: 17px; margin: 0; }
  dialog:not(.confirmation-dialog) > form { display: flex; flex-direction: column; flex: 1; min-height: 0; }
  dialog:not(.confirmation-dialog) .modal-body { min-height: 0; max-height: none; overflow: auto; flex: 1; padding: 14px 16px; }
  dialog:not(.confirmation-dialog) footer { flex-shrink: 0; padding: 10px 16px; margin: 0; }
  dialog .field { margin-bottom: 10px; gap: 4px; font-size: 12px; }
  dialog .field input, dialog .field select, dialog button { min-height: 34px; padding: 6px 9px; font-size: 13px; }
  dialog textarea { min-height: 60px; font-size: 13px; }
  dialog .form-grid { gap: 0 12px; }
  dialog .subtabs { margin: 6px 0 10px; padding: 0; }
  dialog .allocation-preview { padding: 10px 12px; margin: 10px 0; }
  dialog .allocation-preview h3 { font-size: 13px; margin: 0 0 6px; }
  dialog .allocation-preview dl { margin: 4px 0; gap: 4px 12px; }
}

@media (min-width: 1100px) {
  .page-personnel > .panel, .page-groups > .panel { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; }
  .page-personnel > .panel > .panel-heading, .page-groups > .panel > .panel-heading { grid-column: 1 / -1; }
  .page-personnel .person-team + .person-team, .page-groups .person-team + .person-team { border-left: 1px solid var(--line); }
  .calendar-workspace:has(> .calendar-panel) { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); align-items: start; gap: 10px; }
  .calendar-workspace:has(> .calendar-panel) > .subtabs, .calendar-workspace > .costing-panel { grid-column: 1 / -1; }
  .calendar-workspace:has(> .calendar-panel) > .subtabs { margin-bottom: 0; }
  .calendar-workspace > .calendar-panel, .calendar-workspace > .day-panel { margin-bottom: 0; min-width: 0; }
  .workspace .calendar-panel .panel-heading select { width: 170px; }
  .workspace .calendar-grid { padding: 0 8px 8px; gap: 3px; }
  .workspace .calendar-day, .workspace .calendar-day.selected { min-height: 60px; padding: 4px; gap: 1px; }
  .workspace .calendar-day strong { font-size: 13px; }
  .workspace .calendar-day span { font-size: 10px; line-height: 1.25; }
  .workspace .calendar-day .calendar-full { display: none; }
  .workspace .calendar-day .calendar-short { display: inline; white-space: nowrap; }
  .workspace .calendar-day > span { font-size: 11px; white-space: nowrap; }
  .workspace .calendar-padding { min-height: 0; }
  .workspace .day-panel .panel-heading { gap: 8px; flex-wrap: wrap; }
  .workspace .day-panel .panel-heading .eyebrow { display: none; }
  .workspace .day-panel .panel-heading h2 { margin: 0; }
  .workspace .day-panel .subtabs { gap: 4px; padding: 0 8px; }
  .workspace .day-panel .subtabs button, .workspace .day-actions button { font-size: 12px; padding: 5px 7px; }
  .workspace .day-panel .table-scroll { max-height: calc(100dvh - 294px); }
  .workspace .day-records th, .workspace .day-records td { font-size: 12px; padding: 7px 8px; }
  .workspace .day-records td:first-child { min-width: 80px; }
  .workspace .day-records td:first-child > strong { display: block; font-size: 12px; }
  .workspace .day-records .badge { display: inline-block; margin-top: 4px; padding: 2px 4px; font-size: 10px; }
  .workspace .day-records .day-remark { display: block; white-space: normal; max-width: 130px; font-size: 11px; }
}
@media (min-width: 761px) and (max-height: 760px) {
  .workspace .aj-daily > .panel-heading > div:first-child { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
  .workspace .daily-layout { padding: 6px 12px; }
  .workspace .aj-page .daily-section .field { margin-bottom: 6px; }
  .workspace .daily-section h3 { margin-bottom: 6px; }
  .workspace .daily-section, .workspace .aj-page .daily-section { padding-bottom: 6px; margin-bottom: 6px; }
}
@media (min-width: 761px) and (max-width: 1050px) {
  .sidebar { width: 152px; }
  .sidebar .brand { padding-left: 12px; font-size: 21px; }
  .sidebar nav button { padding-left: 8px; gap: 8px; }
  .workspace { margin-left: 152px; width: calc(100% - 152px); }
  .page-controls .toolbar { gap: 6px; }
  .page-controls .toolbar label { font-size: 0; gap: 0; }
  .page-controls .toolbar input[type=month] { width: 137px; }
  .page-controls .toolbar select { width: 112px; }
  .workspace .sales-entry-head, .workspace .sales-entry-row { grid-template-columns: 60px minmax(215px,1.5fr) 62px minmax(100px,1fr); gap: 7px; }
  .workspace .sales-entry-row > strong > small { display: block; margin: 0; }
  .workspace .daily-layout { grid-template-columns: minmax(0,1fr) 235px; gap: 10px; }
  .workspace .company-total { gap: 10px; }
  .workspace .company-total strong { font-size: 24px; }
  .workspace .company-total .company-subtotal strong { font-size: 20px; }
}

/* Touch screens retain readable inputs and natural document scrolling. */
@media (max-width: 760px) {
  .content { padding: 12px 12px 88px; }
  .page-controls, .content-advertising .page-controls { position: relative; display: flex; flex-direction: column; align-items: stretch; gap: 8px; margin: 0 0 10px; }
  .page-controls .page-heading { min-height: 36px; padding-right: 128px; align-items: center; }
  .page-controls .page-heading h1, .content-advertising .page-heading h1 { font-size: 23px; }
  .page-controls .toolbar { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 8px; }
  .page-controls .toolbar label, .content-advertising .page-controls .toolbar label { font-size: 0; gap: 0; }
  .page-controls .toolbar input[type=month] { width: 145px; font-size: 14px; }
  .page-controls .toolbar select { width: 128px; font-size: 14px; }
  .page-controls .right-actions { position: absolute; top: 0; right: 0; margin: 0; }
  .page-controls .right-actions button { min-height: 36px; padding: 5px 7px; font-size: 12px; }
  .fx-estimate { padding: 8px 10px; margin-bottom: 10px; font-size: 12px; gap: 6px; }
  .panel { margin-bottom: 12px; }
  .panel-heading { padding: 12px; gap: 8px; }
  .panel-heading h2 { font-size: 16px; }
  .panel-heading p { margin-top: 4px; }
  .subtabs { margin: 0 0 10px; padding-bottom: 4px; }
  .team-entry { margin: 0 12px 12px; }
  .sales-entry-row { padding: 12px 0; gap: 8px; }
  .sales-entry-row > strong { font-size: 15px; }
  .sales-entry-row .sales-dealer-cell { grid-column: 1 / -1; }
  .sales-split { margin-bottom: 4px; gap: 5px; }
  .sales-split select { min-width: 85px; }
  .sales-dealer-cell .split-more { min-height: 44px; }
  .sales-entry-row input, .sales-entry-row select { min-height: 44px; font-size: 16px; }
  .daily-save-footer { position: sticky; bottom: calc(67px + env(safe-area-inset-bottom)); padding: 8px 12px; gap: 8px; z-index: 3; }
  .daily-save-footer > div { font-size: 12px; gap: 8px; }
  .daily-save-footer strong { font-size: 18px; }
  .daily-save-footer button { min-height: 44px; }
  .company-total { padding: 12px; gap: 12px; margin-bottom: 12px; }
  .company-total > div { gap: 5px; }
  .company-total strong { font-size: 29px; }
  .company-total .company-subtotal strong { font-size: 21px; }
  .business-profits button { padding: 12px; }
  .business-profits strong { font-size: 18px; }
  .daily-layout { padding: 12px; gap: 12px; }
  .daily-preview { padding: 12px; }
  .person-team { margin: 0 12px 12px; }
  .aj-page .ad-context { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; gap: 10px; margin: 0 0 10px; }
  .aj-page .ad-context > div { min-width: 0; flex: 1; }
  .aj-page .ad-context p { font-size: 12px; line-height: 1.45; }
  .aj-page .ad-context > button { flex-shrink: 0; }
  .aj-page .daily-section { padding: 10px 0 6px; margin-bottom: 10px; }
  .aj-page .daily-section h3 { font-size: 14px; margin: 0 0 10px; }
  .aj-page .daily-section .field { gap: 4px; margin-bottom: 10px; }
  .aj-page .daily-section .field input { min-height: 44px; }
  .daily-preview > .eyebrow { display: none; }
  .daily-preview h3 { margin: 0 0 10px; font-size: 16px; }
  .daily-preview dl { gap: 8px 12px; font-size: 13px; margin: 0; }
  .daily-preview dt, .daily-preview dd { padding: 0; margin: 0; }
  .daily-preview p { margin: 12px 0 0; font-size: 12px; }
}

/* Company templates, daily entry and observed wallets share one compact workspace. */
.out-workspace{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}
.out-company-bar,.out-company-bar>div{display:flex;align-items:center;gap:12px}.out-company-bar{justify-content:space-between}.out-company-bar .field{display:flex;align-items:center;gap:10px;margin:0}.out-company-bar select{min-width:190px}.out-company-bar .muted{font-size:12px}
.out-tabs{margin:0!important}.out-content{min-height:0;min-width:0;flex:1}.out-daily,.out-wallet{display:flex;flex-direction:column;gap:10px;height:100%;min-height:0}.out-workspace .panel{margin:0;padding:12px}.out-workspace .panel-heading{margin:0 0 10px;gap:12px;flex-wrap:wrap}.out-workspace h2{font-size:16px;margin:0}.out-workspace h3{font-size:14px;margin:0}.out-workspace .panel-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}.out-workspace button{white-space:nowrap}.out-workspace table{font-size:13px}.out-workspace th,.out-workspace td{padding:8px 10px}.out-workspace td small,.out-workspace th small{display:block;color:var(--muted);font-size:11px;font-weight:400;line-height:1.5;white-space:normal}.out-workspace td small{margin-top:3px}.out-workspace .table-scroll{min-height:0;overflow:auto;overscroll-behavior:contain}.out-workspace thead th{position:sticky;top:0;z-index:1;background:var(--surface)}
.out-daily-panel{flex:1;min-height:260px;display:flex;flex-direction:column}.out-daily-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:14px;min-height:0;flex:1}.out-entry-fields{display:flex;flex-direction:column;min-width:0;min-height:0}.out-template-table{flex:1;border:1px solid var(--line);border-radius:5px}.out-template-table table{width:100%;table-layout:fixed;min-width:560px}.out-template-table th:first-child{width:23%;min-width:115px}.out-template-table th:last-child{width:76px}.out-template-table td,.out-template-table th{padding:8px 6px}.out-template-table tbody th{text-align:left;vertical-align:middle;background:var(--surface)}.out-template-table input{width:100%;min-width:0;padding:7px 5px;text-align:right;font-variant-numeric:tabular-nums}.out-row-profit{color:var(--positive);font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.out-disabled-cell{display:block;text-align:center;color:var(--muted)}.out-daily-notes{display:flex;gap:10px;margin-top:10px}.out-daily-notes .field{flex:1;margin:0}.out-daily-notes .field:last-child:not(:first-child){max-width:160px}.out-entry-hint{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;color:var(--muted);font-size:11px}.out-entry-hint button{font-size:12px}.out-preview{background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:12px;overflow:auto;align-self:stretch}.out-preview h3{color:var(--positive);display:flex;justify-content:space-between;align-items:center}.out-preview h3 small{font-size:11px;color:var(--muted);font-weight:400}.out-preview dl{display:grid;grid-template-columns:1fr auto;gap:9px 8px;margin:14px 0 0;font-size:13px}.out-preview dt{color:var(--muted)}.out-preview dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.out-preview-total{border-top:1px solid var(--line);padding-top:10px;font-weight:600;color:var(--positive)!important}.out-preview .out-profit{background:var(--raised);color:var(--positive);padding:10px 5px;font-weight:700;font-size:16px;margin-top:1px}.out-preview dl{column-gap:0}.out-preview p{font-size:11px;line-height:1.6;color:var(--muted);margin:10px 0 0}
.out-day-history{height:154px;flex-shrink:0;display:flex;flex-direction:column}.out-day-history .panel-heading{margin-bottom:6px}.out-day-history td,.out-day-history th{padding:5px 10px}.out-day-history .table-scroll{flex:1}.out-selected-row{background:var(--surface)}.out-empty-inline{font-size:12px;color:var(--muted);text-align:center;margin:12px}.out-save-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:10px 14px;flex-shrink:0}.out-save-bar>div{display:flex;align-items:center;gap:12px}.out-save-bar strong{color:var(--positive);font-size:22px;font-variant-numeric:tabular-nums}.out-save-bar small{color:var(--muted)}.out-save-bar .primary{min-width:140px}
.out-empty{display:grid;place-content:center;text-align:center;min-height:260px}.out-empty p{color:var(--muted)}.out-empty button{justify-self:center}.out-projects{height:100%;display:flex;flex-direction:column}.out-projects .table-scroll{flex:1}.out-rule-detail{margin-bottom:4px}.out-projects table th:nth-child(1){width:18%}.out-projects table th:nth-child(2){width:35%}
.out-balance-strip{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:16px}.out-balance-strip>div{display:flex;flex-direction:column;gap:6px}.out-balance-strip span,.out-profit-strip span{color:var(--muted);font-size:12px}.out-balance-strip strong{font-size:27px;color:var(--positive);font-variant-numeric:tabular-nums}.out-balance-strip small{font-size:12px;color:var(--muted)}.out-profit-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;border-top:1px solid var(--line);padding-top:12px}.out-profit-strip>div{display:flex;flex-direction:column;gap:8px;padding-left:12px;border-left:1px solid var(--line)}.out-profit-strip>div:first-child{border:0;padding:0}.out-profit-strip strong{font-size:23px;font-variant-numeric:tabular-nums}.out-reconcile-note{font-size:12px;margin:12px 0 0;color:var(--muted)}.out-events{display:flex;flex-direction:column;flex:1;min-height:140px}.out-events .table-scroll{flex:1}.out-events td{vertical-align:top}.out-events td:first-child{white-space:nowrap}.out-event-filters{display:flex;gap:8px}.out-event-filters input{width:180px}.out-remark{max-width:240px;overflow-wrap:anywhere}.out-legacy{height:100%;overflow:auto}.out-legacy .notice{font-size:12px}
.out-template-dialog{width:960px;max-width:calc(100vw - 32px)}.out-template-dialog form{min-height:0}.out-company-fields{display:flex;gap:14px;align-items:end;margin-bottom:14px}.out-company-fields .field{width:220px;margin:0}.out-company-fields p{font-size:12px;color:var(--muted);max-width:280px}.out-template-editor{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px}.out-template-list{display:flex;flex-direction:column;gap:6px;border-right:1px solid var(--line);padding-right:14px;max-height:430px;overflow:auto}.out-template-list h3{font-size:13px;margin:0 0 6px}.out-template-list h3 small{color:var(--muted);font-weight:400}.out-template-list button{text-align:left;white-space:normal;overflow-wrap:anywhere;padding:9px 10px}.out-template-list button.active{background:var(--raised);border-color:var(--line);color:var(--positive)}.out-template-list button small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.out-template-rules .field{margin-bottom:10px}.out-template-rules .form-grid{grid-template-columns:1fr 1fr}.out-rule-section{border-top:1px solid var(--line);margin-top:8px;padding-top:9px}.out-rule-section h3{font-size:14px;margin:0 0 10px}.out-rule-section h3 small{color:var(--muted);font-size:11px;font-weight:400;margin-left:8px}.out-rule-row,.out-rule-labels{display:grid;grid-template-columns:142px 90px minmax(0,1fr);gap:10px;align-items:center}.out-rule-row{margin:6px 0}.out-rule-row input[type=number]{width:70px;padding-right:5px}.out-rule-labels{font-size:11px;color:var(--muted);margin-bottom:4px}.out-check{display:flex;align-items:center;gap:8px;font-size:13px}.out-check input,.out-income-option input{width:16px;height:16px;min-height:16px;accent-color:var(--accent)}.out-check strong{font-weight:500}.out-rate-input{display:flex;gap:5px;align-items:center;font-size:12px}.out-rule-row select{min-width:0;width:100%;font-size:12px}.out-income-option{display:flex;align-items:center;gap:8px;font-size:13px;padding:5px 0}.out-income-option strong{width:70px;font-weight:500}.out-income-option span{font-size:12px;color:var(--muted)}.out-rule-note{font-size:12px;color:var(--muted);margin:12px 0 0;background:var(--surface);padding:9px 12px;border-radius:4px}.out-template-dialog footer>span{margin-right:auto;font-size:12px}.out-impact{padding:12px;background:var(--surface);border-radius:5px;line-height:1.7;font-size:13px;margin:12px 0}
@media(min-width:1024px){.workspace .content-outsourcing{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.content-outsourcing .page-body{display:flex;flex:1;min-height:0}.page-outsourcing>.out-workspace{flex:1}.workspace .company-total{grid-template-columns:1.2fr 1fr 1fr 1fr}.workspace .company-total strong{font-size:25px}.workspace .company-total .company-subtotal strong{font-size:21px}}
@media(min-width:1024px) and (max-height:740px){.out-workspace{gap:7px}.out-day-history{height:125px}.out-workspace .panel{padding:10px}.out-preview dl{gap:7px 0}.out-save-bar{padding:8px 12px}}
@media(max-width:1023px){.out-daily-layout{grid-template-columns:1fr}.out-template-table{min-height:180px;max-height:450px}.out-preview{display:block}.out-preview dl{grid-template-columns:1fr auto}.out-daily-panel{min-height:0}.out-day-history{height:200px}.out-save-bar{position:sticky;bottom:68px;z-index:3}.out-wallet{height:auto}.out-events .table-scroll{max-height:400px}.out-company-bar{flex-wrap:wrap}.out-company-bar .muted{display:none}.out-balance-strip{grid-template-columns:1fr 1fr}.out-balance-strip>small{grid-column:1/-1}.out-profit-strip{grid-template-columns:repeat(2,1fr);row-gap:18px}.out-profit-strip>div:nth-child(odd){padding-left:0;border:0}.out-template-dialog{max-width:calc(100vw - 16px)}.out-company-fields{flex-wrap:wrap}.out-company-fields p{margin:0}.out-template-editor{grid-template-columns:1fr}.out-template-list{display:flex;flex-direction:row;border:0;border-bottom:1px solid var(--line);padding:0 0 10px;max-height:none;overflow:auto}.out-template-list h3{display:none}.out-template-list button{flex-shrink:0}.out-rule-row,.out-rule-labels{grid-template-columns:110px 80px minmax(120px,1fr)}.out-template-rules{min-width:0}.out-company-fields .field{width:auto;flex:1}.out-rule-section h3 small{display:block;margin:4px 0 0}.out-template-dialog input:not([type=checkbox]),.out-template-dialog select,.out-workspace input,.out-workspace select{font-size:16px;min-height:44px}.out-template-dialog button,.out-workspace button{min-height:44px}.out-entry-hint{align-items:start}.out-entry-hint>span{max-width:70%}.out-workspace .panel-heading{align-items:start}.out-save-bar>div{flex-wrap:wrap;gap:3px 8px}.out-save-bar strong{font-size:18px}.out-save-bar span{font-size:11px}.out-save-bar small{font-size:11px}.out-save-bar .primary{min-width:120px}.out-workspace .right-actions{flex-wrap:wrap}.out-event-filters{flex-wrap:wrap}.out-template-table table{min-width:700px}.out-template-table td{padding:8px}.out-template-table th:first-child{width:150px}}
@media(max-width:480px){.out-template-dialog .modal-body{padding:12px!important}.out-rule-row,.out-rule-labels{grid-template-columns:118px 86px 1fr;gap:5px}.out-rule-row select{grid-column:1/-1;margin:2px 0 8px}.out-rule-labels span:last-child{display:none}.out-income-option{flex-wrap:wrap}.out-income-option span{width:100%;padding-left:24px}.out-template-rules .form-grid{grid-template-columns:1fr}.out-workspace .panel-heading .date-navigator{width:100%}}
/* Match the workspace density without inheriting the older full-height drawer. */
dialog.out-template-dialog:not(.permissions-dialog){width:960px;max-width:calc(100vw - 32px);height:auto;max-height:calc(100dvh - 32px);inset:0;margin:auto;border:1px solid var(--line);border-radius:8px;box-shadow:0 20px 80px #00000033}
.out-template-dialog .out-template-list button{display:block;text-align:left}.out-template-dialog .out-template-list button small{display:block}
.workspace .out-company-bar .field{flex-direction:row;margin:0;gap:10px}.workspace .out-company-bar .field>span{white-space:nowrap}
.workspace .out-workspace .panel-heading{padding:0;min-height:0;margin-bottom:10px}.workspace .out-workspace .panel{margin-bottom:0}
.workspace .out-workspace .table-scroll{max-height:none}.workspace .out-template-table td,.workspace .out-template-table th{padding:8px 6px}.workspace .out-day-history td,.workspace .out-day-history th{padding:5px 10px}
.workspace .out-daily-notes .field{margin:0}.out-preview dl{row-gap:7px}.out-preview .out-profit{padding:9px 5px}.out-preview{padding:11px}.out-preview p{margin-top:8px}
@media(min-width:1024px){.out-day-history{height:140px}.out-workspace .success{position:absolute;right:150px;top:63px;z-index:4}.out-daily-panel{min-height:290px}}
@media(max-width:760px){dialog.out-template-dialog:not(.permissions-dialog){width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;margin:0}.out-template-dialog form{display:flex;flex-direction:column;flex:1;min-height:0}.out-template-dialog[open]{display:flex;flex-direction:column}.out-template-dialog .modal-body{overflow:auto;flex:1;max-height:none!important}.out-template-dialog footer{flex-shrink:0}.workspace .out-company-bar .field{width:100%}.out-company-bar>div{flex:1;min-width:0}.out-company-bar select{min-width:0}.out-company-bar{gap:8px}.out-preview dl{row-gap:10px}}
@media(min-width:1024px){.out-preview dl{font-size:12px;line-height:1.4;row-gap:6px;margin-top:10px}.out-day-history{height:128px}}
.out-mobile-table-hint{display:none}
@media(max-width:760px){.out-company-fields{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px}.out-company-fields .field{width:100%;min-width:0}.out-company-fields p{grid-column:1/-1;max-width:none}.out-template-dialog .out-check,.out-template-dialog .out-income-option{min-height:44px}.out-mobile-table-hint{display:block;font-size:11px;color:var(--muted);margin:0 0 7px}.out-template-table tbody th{position:sticky;left:0;z-index:1;box-shadow:1px 0 0 var(--line)}.out-template-table thead th:first-child{position:sticky;left:0;z-index:3}.out-day-history table{min-width:600px}.out-events table{min-width:760px}.out-projects table{min-width:600px}}
@media(min-width:1024px) and (max-height:740px){.out-preview dl{row-gap:4px;margin-top:8px}.out-preview .out-material-note{display:none}.out-preview .out-profit{padding:7px 5px}}

/* WARRIOR / Deep Space Glass — shared visual and interaction tokens. */
:root{color-scheme:dark;--background:#080e1a;--surface:#101a2b;--raised:#152237;--selected:#142e52;--text:#ecf2ff;--navy:var(--text);--muted:#a3b4cb;--line:#293a53;--accent:#3c8dff;--accent-soft:#8ccfff;--teal:var(--accent-soft);--positive:#67e5c3;--warning:#f0c578;--warning-bg:#2b251d;--danger:#ff9aa9;--error-bg:#2a1b2a;--workspace-gutter:18px;--control-height:36px;font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;background:var(--background);color:var(--text);font-synthesis:none;font-optical-sizing:auto}
body{background:var(--background);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;line-height:1.4;transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s,transform .12s}
button,.button{background:linear-gradient(180deg,#1c2b43,#121e31);border:1px solid #354862;color:var(--text);border-radius:7px}
button:hover,.button:hover{background:#213554;border-color:#5a789f;color:#fff}
button:active:not(:disabled){transform:translateY(1px);background:#142941}
button:disabled{cursor:not-allowed;opacity:.45;box-shadow:none;transform:none}
.primary,.workspace .primary{background:linear-gradient(180deg,#338aff,#1e58da);border:1px solid #70afff;color:#fff;font-weight:600;box-shadow:inset 0 1px 0 #a2cdff33,0 3px 14px #1240b328}
.primary:hover{background:linear-gradient(180deg,#4d9dff,#2869ef);border-color:#a3d1ff;box-shadow:0 0 18px #2b76ff33}
.text-button{background:transparent;border-color:transparent;color:var(--accent-soft);box-shadow:none}
.text-button:hover{background:#2d6baf22;border-color:transparent}
a{color:var(--accent-soft)}
input,select,textarea{background:#0b1526;border-color:#344963;color:var(--text);border-radius:6px;box-shadow:inset 0 1px 3px #00000030}
input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:#55749a}
input::placeholder,textarea::placeholder{color:#8296b1;opacity:1}
input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed;background:#111b2b}
input:focus,select:focus,textarea:focus{outline:2px solid #6bcaff;outline-offset:1px;border-color:#6bcaff;box-shadow:0 0 0 4px #249af31c}
button:focus-visible,summary:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid #6bcaff;outline-offset:3px}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}
input[type=number]{font-variant-numeric:tabular-nums;appearance:textfield}
input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
option{background:#101a2b;color:var(--text)}
::selection{background:#2971b9;color:white}
*{scrollbar-width:thin;scrollbar-color:#40546d transparent}
h1,h2,h3,strong{color:inherit}h1{font-weight:700;letter-spacing:-.5px}h2{font-weight:650}h3{font-weight:600}
small,.muted{color:var(--muted)}
.sidebar{background:linear-gradient(155deg,#111f34,#0b1422 65%);border-right:1px solid var(--line);color:var(--text)}
.sidebar .brand,.brand{display:flex;flex-direction:column;align-items:flex-start;gap:8px;letter-spacing:0;padding:22px 18px 24px}
.brand-logo{display:block;width:146px;height:23px;position:relative;overflow:hidden;isolation:isolate}
.brand-logo img{display:block;position:absolute;max-width:none;width:162px;height:81px;left:-7px;top:-29px;mix-blend-mode:screen}
.brand small,.sidebar .brand small{font-size:11px;letter-spacing:2px;color:#9fb2cd;margin:0}
.sidebar nav{padding:0 10px;gap:3px}
.sidebar nav button{border-left:2px solid transparent;border-radius:6px;min-height:40px;color:#b4c3d9;gap:11px;padding:9px 11px;margin:3px 0}
.sidebar nav button span{font-size:14px;font-weight:450}
.sidebar nav button svg{width:18px;height:18px}
.sidebar nav button:hover{background:#233e5d66;color:#eff6ff}
.sidebar nav button.active{border-left-color:#53c7ff;background:linear-gradient(90deg,#173b70,#142b4c);color:#97daff;box-shadow:inset 0 1px 0 #6bb3fc14}
.sidebar-bottom{border-top:1px solid var(--line);margin: auto 16px 0;padding:15px 0 20px;color:#bac9dc}
.sidebar-bottom small{color:var(--muted);margin-top:4px}
.workspace{background:radial-gradient(ellipse at 75% -30%,#18366366,transparent 60%),var(--background)}
.workspace .content{max-width:none;padding-bottom:12px}
.workspace .page-controls{min-height:64px;padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:12px}
.workspace .page-heading h1{font-size:23px;line-height:1.3;margin:0}
.page-context-label{display:none}
.workspace button,.workspace input,.workspace select,.workspace textarea{font-size:14px;border-radius:6px}
.workspace h2,.workspace .panel-heading h2{font-size:16px;line-height:1.4}
.workspace h3{font-size:14px}
.workspace .field{font-size:13px;gap:5px}
.workspace .subtabs{gap:18px;border-bottom:1px solid var(--line);min-height:40px;margin-bottom:10px}
.workspace .subtabs button{position:relative;border:0;border-radius:0;background:transparent;color:#a8bbd6;min-height:40px;font-size:14px;padding:8px 4px;box-shadow:none}
.workspace .subtabs button.active{color:#eef6ff;font-weight:650;box-shadow:inset 0 -2px 0 #429dff}
.workspace .subtabs button.active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:#429dff;box-shadow:0 0 8px #378eff66}
.workspace .subtabs button:hover{color:#fff;background:#3b6da018}
.panel,.workspace .panel,.metric,.ad-metric{background:linear-gradient(135deg,#132136e6,#0e1828ed);border:1px solid var(--line);border-radius:8px;box-shadow:inset 0 1px 0 #86b7e008}
.workspace .panel-heading{padding:12px 14px;gap:12px}
.table-scroll{border-color:var(--line)}
table{font-variant-numeric:tabular-nums}thead th,.workspace thead th{background:#17253b;color:#afc4e0;font-weight:500;font-size:12px;letter-spacing:.1px}
td,th{border-color:#25364d;color:inherit}
tbody tr{transition:background-color .14s}tbody tr:hover{background:#2f60951c}
tbody tr:focus-within{background:#15437a42}
.workspace td,.workspace th{font-size:13px}
.workspace tbody th{background:#101e30}
.negative,.error{color:var(--danger)}.teal,.positive{color:var(--positive)}
.badge.checked,.badge.approved,.badge.active{color:var(--positive);background:#153c39;border-color:#296254}
.badge.pending,.fx-estimate{color:var(--warning);background:var(--warning-bg);border-color:#504532}
.success{background:#10362d;color:var(--positive);border-color:#26634e}
.error{background:var(--error-bg);border-color:#70404e;color:var(--danger)}
.notice{color:#a9c1dc;background:#14243a;border-color:#304764}
.workspace .fx-estimate{font-size:12px;border:1px solid #504532;background:#251f17}
.segmented button.selected,.ad-client-switch button.active,.company-overview-switch button.active,.out-template-list button.active{background:#193e70;color:#9bd8ff;border-color:#4b8ecb}
.empty{color:var(--muted)}
/* Centered layered dialogs, with short motion and no layout bounce. */
dialog,dialog:not(.permissions-dialog),dialog.out-template-dialog:not(.permissions-dialog){position:fixed;inset:0;margin:auto;width:min(600px,calc(100vw - 40px));max-width:calc(100vw - 40px);height:auto;max-height:calc(100dvh - 40px);border:1px solid #40516e;border-radius:12px;background:linear-gradient(145deg,#17253a,#101a2b);color:var(--text);padding:0;box-shadow:0 24px 100px #00000085,0 0 0 1px #8badf10a}
dialog[open]{animation:dialog-enter .18s cubic-bezier(.2,.8,.2,1)}
dialog::backdrop,dialog:not(.permissions-dialog)::backdrop{background:#030813a8;backdrop-filter:blur(5px);animation:backdrop-enter .18s ease-out}
dialog header{padding:16px 22px;border-color:var(--line)}dialog header h2{font-size:18px;line-height:1.4;margin:0;max-width:100%;overflow-wrap:anywhere}
dialog .modal-body,dialog:not(.permissions-dialog) .modal-body{padding:18px 22px;max-height:calc(100dvh - 205px);overflow:auto;overscroll-behavior:contain}
dialog .field{margin-bottom:14px;font-size:13px}dialog .field input,dialog .field select{min-height:38px}
dialog footer{padding:14px 22px;background:#121f32;border-color:var(--line);gap:9px}
dialog .icon-button{width:32px;height:32px;font-size:23px;min-height:32px;color:#aabdd8;background:transparent;border:0;flex-shrink:0}
dialog.permissions-dialog{width:960px}dialog.history-dialog{width:920px}dialog.out-template-dialog:not(.permissions-dialog){width:960px}
dialog.confirmation-dialog{width:440px}dialog.confirmation-dialog .modal-body{padding-top:18px}
@keyframes dialog-enter{from{opacity:0;transform:translateY(7px) scale(.985)}to{opacity:1;transform:none}}
@keyframes backdrop-enter{from{opacity:0}to{opacity:1}}
/* Compact ON/OFF controls preserve native checkbox form and keyboard semantics. */
.glass-switch{position:relative;display:inline-flex;align-items:center;flex:0 0 66px;width:66px;height:36px;vertical-align:middle;cursor:pointer;isolation:isolate}
.glass-switch input[type=checkbox],.workspace .glass-switch input[type=checkbox],.out-template-dialog .glass-switch input{position:absolute;inset:0;width:100%;height:100%;min-height:100%;margin:0;opacity:0;z-index:2;cursor:pointer;appearance:none}
.switch-track{position:relative;display:block;width:66px;height:28px;border-radius:18px;background:linear-gradient(#1a283e,#0d1728);border:1px solid #3b4b64;box-shadow:inset 0 2px 5px #00000070,0 1px 0 #94b5d412;transition:background .18s,border-color .18s,box-shadow .18s;pointer-events:none}
.switch-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:linear-gradient(145deg,#fff,#c2d6ed 70%,#95acc9);box-shadow:0 1px 5px #00000080,inset 0 1px 0 white;transition:transform .18s cubic-bezier(.2,.8,.2,1)}
.switch-on,.switch-off{position:absolute;top:0;line-height:26px!important;font-size:10px!important;letter-spacing:.6px;font-weight:700;transition:opacity .15s;color:#abbdd5!important;width:auto!important;padding:0!important}
.switch-on{left:9px;opacity:0}.switch-off{right:7px;opacity:1}
.glass-switch input:checked+.switch-track{background:linear-gradient(135deg,#217ac6,#2442ad);border-color:#6cbaff;box-shadow:inset 0 1px 5px #85d2ff30,0 0 9px #269cff20}
.glass-switch input:checked+.switch-track .switch-thumb{transform:translateX(37px)}
.glass-switch input:checked+.switch-track .switch-on{opacity:1;color:#e4f5ff!important}.glass-switch input:checked+.switch-track .switch-off{opacity:0}
.glass-switch input:focus-visible+.switch-track{outline:2px solid #69caff;outline-offset:3px}
.glass-switch:has(input:disabled){opacity:.4;cursor:not-allowed}.glass-switch input:disabled{cursor:not-allowed}
.out-income-option>.glass-switch,.out-check>.glass-switch{flex-shrink:0}.out-income-option>span:not(.glass-switch){width:auto}
.out-template-dialog .out-rule-row,.out-template-dialog .out-rule-labels{grid-template-columns:178px 94px minmax(0,1fr);gap:12px}
.out-check{gap:10px}.out-template-dialog .out-income-option{gap:10px;min-height:40px}
.out-template-dialog .out-income-option strong{width:76px;flex-shrink:0}
.out-template-dialog .out-rule-row select{font-size:13px;min-height:36px}
.out-template-dialog .out-rule-section h3 small{font-size:12px}
.permission-card-main{grid-template-columns:minmax(125px,1fr) 66px auto minmax(140px,1.1fr);gap:12px}
/* Field errors remain actionable in wide tables and in nested disclosures. */
.form-errors{flex-shrink:0;grid-column:1/-1;order:-1;margin:0 0 10px;padding:12px 14px;border:1px solid #895464;border-radius:8px;background:#301e2e;color:#ffd4dc;font-size:13px;position:relative;z-index:3}
.form-errors>strong{display:inline-block;margin-right:12px}.form-errors>span{font-size:12px;color:#d5a7b4}.form-errors ul{margin:6px 0 0;padding:0;list-style:none;max-height:128px;overflow:auto}
.form-errors li{margin:2px 0}.form-errors button,.workspace .form-errors button{white-space:normal;text-align:left;justify-content:flex-start;border:0;background:transparent;box-shadow:none;color:#ffd4dc;min-height:28px;font-size:13px;padding:3px 0;text-decoration:underline;text-underline-offset:3px}
.form-errors button:hover{color:#fff}.field-error-message{display:block!important;color:var(--danger)!important;font-size:12px!important;line-height:1.5!important;margin:5px 0 0!important;white-space:normal;text-align:left;font-weight:400;max-width:100%}
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#ef7e98!important;box-shadow:0 0 0 1px #ef7e9833}
.field-reveal{animation:field-reveal 1.1s ease-out}@keyframes field-reveal{0%,45%{box-shadow:0 0 0 5px #f786a144}100%{box-shadow:0 0 0 1px #ef7e9820}}
.validated-form>.form-errors{margin:10px 12px}.out-daily>.form-errors{margin:0}.validated-form:has(>.form-errors)>.modal-body{max-height:calc(100dvh - 310px)}
/* Save feedback is stable, centralized and visible above every editor. */
.save-status{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:100;display:flex;align-items:center;gap:9px;border:1px solid #3c6e91;background:#12273eed;backdrop-filter:blur(14px);border-radius:8px;padding:10px 16px;font-size:13px;color:#d7eaff;box-shadow:0 8px 30px #0006;pointer-events:none}
.save-status.idle{display:none}.save-status.saved{color:#91eed3;border-color:#397a6b}.save-status-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center}.save-status.saving .save-status-icon{border:2px solid #80c7ff40;border-top-color:#80c7ff;border-radius:50%;animation:spin .7s linear infinite}
dialog.save-retry-dialog:not(.permissions-dialog){width:420px;padding:26px 26px 0;text-align:center;border-color:#4b5675}
.retry-symbol{display:grid;place-items:center;width:40px;height:40px;margin:0 auto 16px;border:1px solid #b8834c;border-radius:50%;font-size:23px;color:#efc27d;background:#573f2429}
.save-retry-dialog h2{font-size:20px;margin:0 0 12px}.save-retry-dialog p{font-size:14px;line-height:1.7;margin:0 0 6px;overflow-wrap:anywhere}.save-retry-dialog #retry-retained{color:#a8bdd7;font-size:13px}
.save-retry-dialog footer{justify-content:center;margin:22px -26px 0;padding:18px 24px}.save-retry-dialog footer button{flex:1;min-height:40px}
@keyframes spin{to{transform:rotate(360deg)}}
/* Company daily template: entry above, history and reconciliation below. */
.workspace .out-workspace{gap:10px}.out-company-bar{min-height:36px}.out-company-bar .field>span{font-size:12px;color:var(--muted)}
.out-company-bar select{min-width:170px}.out-company-bar .muted{font-size:12px}
.out-daily-layout{display:flex}.out-entry-fields{flex:1}.out-daily-panel{flex:1.15;min-height:258px!important}
.out-template-table{border-radius:6px;background:#0d192a}.out-template-table table{min-width:650px}
.workspace .out-template-table td,.workspace .out-template-table th{padding:10px 8px}.out-template-table th:first-child{width:23%}.out-template-table th:last-child{width:90px}
.out-template-table tbody th{background:#111f31}.out-template-table th strong{font-size:14px;font-weight:600}.out-template-table th small{font-size:11px;color:#a0b9d6;line-height:1.5;margin-top:4px}
.out-template-table input{padding:8px;font-size:14px;min-height:36px}.out-row-profit{color:var(--positive);font-weight:650;font-size:16px!important}
.out-daily-notes{margin-top:10px;align-items:center}.workspace .out-daily-notes .field{flex-direction:row;align-items:center;gap:10px}.out-daily-notes .field>span{flex-shrink:0;font-size:12px}.out-daily-notes .field:last-child:not(:first-child){max-width:210px}
.out-entry-hint{font-size:12px;color:#9eb8d8;margin-top:6px}
.out-daily-support{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(350px,1fr);gap:12px;flex:.85;min-height:195px}
.out-day-history{height:auto;min-height:0}.out-day-history table{font-size:12px}.out-day-history th:first-child{width:95px}.out-day-history td:nth-child(2){max-width:180px;overflow:hidden;text-overflow:ellipsis}
.out-selected-row{background:#16417630}.out-preview{background:linear-gradient(135deg,#14253b,#0d1929);border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow:auto}
.out-preview h3{color:var(--text);font-size:16px!important}.out-preview dl{grid-template-columns:minmax(72px,1fr) auto minmax(62px,1fr) auto;gap:7px 8px;font-size:12px;line-height:1.4;margin:10px 0 0}
.out-preview dt{color:#a8bfdc}.out-preview dd{color:#e8f1ff}.out-preview dt:nth-of-type(even){border-left:1px solid var(--line);padding-left:10px}
.out-preview .out-preview-total{border-top:1px solid #3a5a7c;padding-top:9px;margin-top:4px;font-size:14px;color:var(--accent-soft)!important}
.out-preview .out-profit{border-top:1px solid #3a5a7c;padding:9px 0 0;margin-top:4px;font-size:15px;background:transparent;color:var(--positive);font-weight:650}
.out-preview .out-profit:nth-last-child(2){border-left:0;padding-left:0}
.out-preview p{font-size:11px;line-height:1.5;color:var(--muted);margin-top:9px}
.out-save-bar{background:linear-gradient(110deg,#132a45eb,#122f61d9,#112238ed);border:1px solid #385a82;border-radius:8px;box-shadow:0 -5px 30px #06101a28;backdrop-filter:blur(12px);padding:12px 16px}
.out-save-bar strong{font-size:23px;color:#90dcff;letter-spacing:-.3px}.out-save-bar>div{gap:12px}.out-save-bar small:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#66dbca;margin:0 7px 2px 0}.out-save-bar .primary{min-height:38px;min-width:155px}
.out-balance-strip strong{color:var(--accent-soft)}.out-profit-strip strong{font-size:25px}.out-profit-strip>div:nth-child(3) strong{color:var(--positive)}
.out-template-list button.active{background:#1b3b63;border-color:#5183b3;color:#b9e6ff}.out-rule-note,.out-impact{background:#162a42;color:#aac4e0;border:1px solid #2c4766}
/* Login uses the same identity, restrained surfaces and readable contrast. */
.login-screen{background:radial-gradient(ellipse at 50% 0,#162a4c,transparent 60%),#080e1a;min-height:100dvh}.login-card{background:linear-gradient(145deg,#17263b,#101b2c);border:1px solid #34445d;box-shadow:0 24px 100px #0006;border-radius:14px;padding:32px;width:410px;max-width:calc(100vw - 32px)}
.login-card .brand{padding:0 0 30px;align-items:center}.login-card .brand-logo{width:224px;height:34px}.login-card .brand-logo img{width:249px;height:124.5px;left:-11px;top:-44.5px}.login-card h1{font-size:24px;text-align:center;margin-bottom:25px}.login-card .field{font-size:13px;margin-bottom:18px}.login-card input{min-height:42px}.login-card .primary{width:100%;min-height:42px;margin-top:5px}
@media(min-width:761px){.sidebar{width:184px}.workspace{margin-left:184px;width:calc(100% - 184px)}.page-body{scrollbar-gutter:auto;padding-right:0}.workspace .out-workspace .panel-heading{margin-bottom:10px}.workspace .out-workspace .panel{padding:12px}.sidebar .brand{padding:24px 18px 22px}.sidebar nav button{min-height:39px}.workspace .content-outsourcing{height:100dvh}.out-workspace .success{display:none}.workspace .out-tabs{min-height:36px}.workspace .out-tabs button{min-height:36px}.out-daily-panel .panel-heading h2{font-size:14px}.out-daily-panel .panel-heading p{font-size:11px}.out-daily{gap:12px}.out-projects .panel-heading p{max-width:650px}.workspace .company-total strong{font-size:28px}}
@media(min-width:761px) and (max-height:760px){.workspace .page-controls{min-height:58px;margin-bottom:8px;padding:8px 0}.sidebar nav button{min-height:36px}.out-daily-support{min-height:185px}.out-daily-panel{min-height:240px!important}.workspace .out-template-table td,.workspace .out-template-table th{padding:7px}.out-template-table th small{font-size:10px}.out-workspace{gap:7px!important}.out-daily{gap:9px}.out-save-bar{padding:9px 12px}.workspace .out-workspace .panel{padding:10px}.out-preview{padding:10px}.out-preview dl{font-size:12px;gap:6px}.out-preview p{margin-top:6px}}
@media(min-width:761px) and (max-width:1150px){.sidebar{width:166px}.workspace{margin-left:166px;width:calc(100% - 166px)}.sidebar .brand{padding-left:13px}.sidebar .brand-logo{width:140px}.sidebar nav{padding:0 7px}.sidebar nav button{gap:8px;padding-left:8px}.sidebar nav button span{font-size:13px}.out-daily-support{grid-template-columns:minmax(0,1fr) 340px}.out-template-table th:first-child{width:20%}.out-preview dl{font-size:11px;gap:6px}.out-template-table table{min-width:620px}.workspace .out-template-table th strong{font-size:13px}}
@media(max-width:1023px) and (min-width:761px){.workspace .content-outsourcing{height:100dvh;overflow:hidden}.content-outsourcing .page-body{display:flex;min-height:0;overflow:auto}.page-outsourcing>.out-workspace{flex:1}.out-template-table{min-height:140px;max-height:none}.out-daily-support{min-height:220px}.out-save-bar{position:static}.out-template-dialog .out-template-editor{grid-template-columns:160px minmax(0,1fr)}.out-template-dialog .out-template-list{flex-direction:column;border-right:1px solid var(--line);border-bottom:0}.out-template-dialog .out-rule-row{grid-template-columns:178px 85px minmax(0,1fr)}.out-template-dialog input:not([type=checkbox]),.out-template-dialog select,.out-workspace input,.out-workspace select{font-size:14px;min-height:36px}.out-template-dialog button,.out-workspace button{min-height:36px}}
@media(max-width:760px){:root{--workspace-gutter:12px}.workspace{margin-left:0;width:100%;background:var(--background)}.workspace .content{padding:0 12px 88px}.workspace .page-controls{padding:14px 0 10px;gap:12px;min-height:0;margin-bottom:12px}.workspace .page-heading h1{font-size:22px}.workspace .toolbar{gap:8px}.workspace .toolbar label{font-size:12px}.workspace .toolbar input[type=month]{width:148px}.workspace .right-actions button{font-size:12px}.workspace button,.workspace input,.workspace select,.workspace textarea{min-height:44px;font-size:16px}.workspace .subtabs{gap:18px;overflow:auto;white-space:nowrap}.workspace .subtabs button{font-size:14px;min-height:44px}.workspace .panel{border-radius:8px}.out-daily{height:auto;gap:12px}.out-daily-panel{min-height:0!important}.out-daily-support{display:flex;flex-direction:column;min-height:0;flex:none}.out-preview{order:-1;padding:14px}.out-preview dl{font-size:12px;gap:10px 6px}.out-day-history{height:220px}.out-save-bar{position:sticky;bottom:66px;padding:10px 12px;z-index:4}.out-save-bar>div{gap:3px 8px}.out-save-bar strong{font-size:18px}.out-save-bar .primary{min-width:130px;font-size:14px}.out-save-bar>div>span{font-size:11px}.out-template-table{min-height:180px;max-height:420px}.out-template-table table{min-width:740px}.out-daily-notes{flex-direction:column;align-items:stretch}.out-daily-notes .field{flex-direction:column!important;align-items:stretch!important}.out-daily-notes .field:last-child:not(:first-child){max-width:none}.out-entry-hint{font-size:11px;align-items:center}.out-entry-hint .text-button{font-size:12px}.out-company-bar .field>span{display:none}.out-company-bar select{width:100%;min-width:0}.out-company-bar>button{font-size:13px}.mobile-bottom-nav{background:#101d30f5;border-color:#354b68;backdrop-filter:blur(12px)}.mobile-bottom-nav button{background:transparent;color:#a8bdd8}.mobile-bottom-nav button.active{color:#8ed2ff;background:#173a642e}.mobile-more{background:#121f34;border:1px solid #354b68}.mobile-more button{border-color:var(--line);background:#17273e;color:var(--text)}dialog,dialog:not(.permissions-dialog),dialog.out-template-dialog:not(.permissions-dialog){max-width:calc(100vw - 20px);max-height:calc(100dvh - 28px);height:auto;width:calc(100vw - 20px);margin:auto;border-radius:12px;inset:0}dialog .modal-body,dialog:not(.permissions-dialog) .modal-body{padding:16px;max-height:calc(100dvh - 190px)}dialog header{padding:14px 16px}dialog footer{padding:12px 16px;flex-wrap:wrap}dialog button,dialog .field input,dialog .field select{min-height:44px;font-size:16px}dialog header h2{font-size:16px}dialog .icon-button{min-height:40px;width:40px}.out-template-dialog .out-template-editor{display:block}.out-template-dialog .out-template-list{flex-direction:row;border:0;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:12px}.out-template-dialog .out-rule-row,.out-template-dialog .out-rule-labels{grid-template-columns:minmax(155px,1fr) 100px;gap:6px}.out-template-dialog .out-rule-row select{grid-column:1/-1;min-height:44px;font-size:14px;margin-bottom:10px}.out-rule-labels span:last-child{display:none}.out-template-dialog .out-check,.out-template-dialog .out-income-option{min-height:44px}.out-template-dialog .out-income-option>span:not(.glass-switch){padding-left:76px;flex-basis:100%;margin-top:-6px;font-size:12px}.out-template-dialog .out-income-option strong{width:auto}.out-income-option{flex-wrap:wrap}.out-company-fields .field{min-width:0}.out-template-dialog footer>span{display:none}.glass-switch{height:44px}.permission-card-main{display:flex;flex-wrap:wrap;gap:10px}.permission-card-main>strong{flex:1;min-width:60%}.permission-levels{flex:1}.permission-range-button{width:100%}.save-status{bottom:82px;max-width:calc(100vw - 32px)}.save-retry-dialog footer{flex-wrap:nowrap}.out-event-filters input{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
#page-context-actions:empty{display:none}#page-context-actions{flex:1;min-width:0}
#page-context-actions .out-company-bar{justify-content:flex-start;gap:8px}#page-context-actions .out-company-bar>div{gap:8px}#page-context-actions .field>span{display:none}#page-context-actions .out-company-bar .field{margin:0}#page-context-actions .out-company-bar .muted{display:none}
#page-context-actions .out-company-bar select{max-width:230px;min-width:150px;width:auto}#page-context-actions .out-company-bar>button{font-size:12px}
.out-preview-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid #385775;margin-top:12px;padding-top:10px}
.out-preview-summary>div{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.out-preview-summary>div+div{border-left:1px solid #385775;padding-left:10px}.out-preview-summary span{font-size:12px;color:var(--accent-soft);white-space:nowrap}.out-preview-summary strong{font-size:21px;letter-spacing:-.3px;font-variant-numeric:tabular-nums;color:#92dcff}.out-preview-summary>div:last-child strong{color:var(--positive)}
@media(min-width:761px){.workspace .out-daily-panel{flex:1.45;min-height:310px!important}.out-daily-support{flex:.8;min-height:188px}.workspace .out-workspace .panel-heading h2{font-size:15px}.workspace .out-template-table input{font-size:14px;min-height:36px}}
@media(min-width:761px) and (max-width:1150px){.sidebar .brand-logo img{width:155px;height:77.5px;left:-7px;top:-28px}.out-daily-support{grid-template-columns:minmax(0,1fr) 340px}.out-preview-summary strong{font-size:18px}.out-preview-summary span{font-size:11px}.page-controls .toolbar{margin-left:auto}#page-context-actions .out-company-bar select{max-width:170px}}
@media(max-width:760px){#page-context-actions{order:3;flex-basis:100%}#page-context-actions .out-company-bar{justify-content:space-between}#page-context-actions .out-company-bar>div{flex:1}#page-context-actions .out-company-bar .field{width:100%}#page-context-actions .out-company-bar select{max-width:none;width:100%}.out-preview-summary strong{font-size:20px}.out-preview-summary{gap:8px}.out-preview-summary>div{gap:5px}}
.workspace .out-template-table tbody td,.workspace .out-template-table tbody th{padding:6px 8px}.out-template-table th small{margin-top:2px}.out-template-table tbody th strong{line-height:1.35}
.out-preview .out-material-note{display:none}
@media(min-width:761px){.out-save-bar{padding:10px 14px}.out-preview-summary{margin-top:9px;padding-top:9px}}
@media(min-width:761px){.out-daily:has(>.form-errors) .out-daily-support{display:none}.out-daily:has(>.form-errors) .out-daily-panel{flex:1}.out-daily:has(>.form-errors) .out-save-bar{flex-shrink:0}.form-errors ul{display:flex;flex-wrap:wrap;gap:0 22px}.form-errors li{flex:0 1 auto}}
button.primary,.workspace button.primary{background:linear-gradient(180deg,#338aff,#1e58da);border-color:#70afff;color:#fff}button.primary:hover,.workspace button.primary:hover{background:linear-gradient(180deg,#4d9dff,#2869ef);border-color:#a3d1ff;color:#fff}
dialog,dialog:not(.permissions-dialog),dialog.out-template-dialog:not(.permissions-dialog),dialog.save-retry-dialog:not(.permissions-dialog){height:fit-content}
dialog.save-retry-dialog:not(.permissions-dialog) footer{margin:22px -26px 0;padding:18px 24px}
@media(min-width:761px){dialog.out-template-dialog:not(.permissions-dialog) .modal-body{max-height:calc(100dvh - 158px)}.out-template-dialog .out-income-option{min-height:36px;padding:0}.out-template-dialog .out-income-option .glass-switch{height:36px}.out-template-dialog .out-rule-note{margin-top:8px;padding:8px 10px}.out-template-dialog .out-company-fields{margin-bottom:10px}}
@media(min-width:761px){.workspace .rolling-dealer>dl{padding:0 0 6px}.workspace .receipt-currencies{padding:6px 0 10px;gap:5px 14px}.workspace .ad-payroll .ad-metric{padding:9px 12px;gap:2px}.workspace .ad-payroll .ad-metric>span{margin-bottom:3px}.workspace .ad-payroll .ad-pay-rate{padding:3px 0;margin-bottom:6px;line-height:1.5}.workspace .ad-payroll .ad-pay-rate span{display:inline;margin-top:0}.workspace .ad-payroll .ad-context{align-items:center;margin-bottom:6px}.workspace .ad-payroll .ad-context>button{min-height:30px;font-size:12px}.workspace .ad-payroll .desktop-payroll{max-height:calc(100dvh - 440px)}.workspace .ad-payroll .ad-metrics{margin-bottom:6px}}
.mobile-brand{display:none}
@media(max-width:760px){.page-controls .page-heading{width:100%;display:flex;justify-content:space-between}.mobile-brand{display:block;order:2}.mobile-brand .brand{padding:0}.mobile-brand .brand small{display:none}.mobile-brand .brand-logo{width:118px;height:18px}.mobile-brand .brand-logo img{width:131px;height:65.5px;top:-23.5px;left:-5.5px}}
@media(min-width:761px){.permission-identity{display:grid;grid-template-columns:1fr 1fr;gap:16px}.permission-card-main{padding:10px 14px;min-height:52px}.permission-section-title{padding:10px 14px}.permission-board-title{margin:8px 0 14px;gap:12px}.permission-board-title h3{margin:0;font-size:16px}.permission-board-title p{font-size:12px;margin:4px 0 0}.permission-board-section{margin-bottom:12px}.permission-card-main .permission-levels button{padding:5px 8px;min-height:30px}}
.glass-switch>.switch-track{width:66px;padding:0}.glass-switch .switch-thumb{width:20px;height:20px;padding:0}.out-income-option>.glass-switch{width:66px;padding:0}
@media(max-width:760px){.workspace .page-controls .page-heading{padding-right:0;min-height:30px;margin:0;align-items:center}.workspace .page-controls .toolbar{width:100%;justify-content:space-between;align-items:center;margin:0}.workspace .page-controls .right-actions{position:static;inset:auto;display:flex;margin-left:auto;padding:0;gap:6px;flex-wrap:nowrap}.workspace .page-controls .right-actions button{min-height:40px;font-size:12px;padding:6px 9px}.workspace .page-controls .toolbar label{font-size:0;gap:0}.workspace .page-controls{gap:9px;padding-top:12px}.workspace .page-controls .toolbar input[type=month]{width:148px;font-size:14px}}
@media(max-width:760px){.page-controls .mobile-brand{margin:0;background:transparent;border-radius:0}.workspace .page-controls .page-heading{min-height:30px}}
/* Keep the selected artwork integrated with every dark surface. */
.brand-logo{isolation:auto;mix-blend-mode:lighten}.brand-logo img{mix-blend-mode:normal}
.login-card .brand{margin:0;padding:0 0 24px}.login-card h1{margin:0 0 24px}.login-card form{gap:16px;margin:0}.login-card .field{margin:0}
.audit-page .right-actions{display:flex;align-items:center;gap:8px}.audit-page .right-actions select{width:auto;min-width:150px;max-width:250px}.workspace .audit-footer{padding:12px}
@media(max-width:760px){.audit-page .right-actions{flex-wrap:wrap}.audit-page .right-actions select{flex:1;min-width:140px;max-width:100%}}

/* PR month-end review: pending amounts and actual deductions stay distinct. */
.pr-panel .panel-heading{gap:16px;align-items:center}.pr-actions,.pr-row-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.pr-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 18px 12px;border:1px solid var(--line);border-radius:8px;background:#122137}.pr-summary>div{padding:14px 18px;display:flex;flex-direction:column;gap:7px;border-right:1px solid var(--line)}.pr-summary>div:last-child{border:0}.pr-summary span,.pr-summary small{color:var(--muted);font-size:12px}.pr-summary strong{font-size:23px;font-variant-numeric:tabular-nums;line-height:1.2}.pr-summary>div:first-child strong{color:var(--warning)}.pr-table table{width:100%;min-width:840px}.pr-table td{vertical-align:middle}.pr-table td small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.pr-table .pr-money{font-variant-numeric:tabular-nums;white-space:nowrap}.pr-table .badge{white-space:nowrap}.pr-other-groups summary{font-size:11px;color:var(--muted);margin-top:6px;cursor:pointer}.pr-footer{border-top:1px solid var(--line);padding:14px 18px;display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 24px;font-size:12px;color:var(--muted)}.pr-footer details{flex:1;min-width:180px}.pr-footer summary{cursor:pointer}.pr-footer p{line-height:1.8;max-width:850px}.pr-review-intro{margin-top:0;color:var(--muted)}.pr-review-list{list-style:none;padding:0;margin:0;max-height:220px;overflow:auto;border-bottom:1px solid var(--line)}.pr-review-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.pr-review-list small{display:block;margin-top:4px;font-size:12px;color:var(--muted)}.pr-review-list li>span{font-variant-numeric:tabular-nums;white-space:nowrap}.pr-review-totals{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:13px}.pr-review-totals dd{margin:0;font-variant-numeric:tabular-nums;text-align:right}.pr-review-totals dt:first-child,.pr-review-totals dd:nth-child(2){font-weight:700;font-size:16px}.pr-reserve-note{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 16px;background:#112337;border:1px solid var(--line);border-radius:8px;font-size:13px;margin-bottom:14px}.pr-reserve-note small{color:var(--muted)}
@media(max-width:760px){.pr-panel .panel-heading{align-items:stretch;flex-direction:column}.pr-actions{justify-content:space-between;flex-wrap:wrap}.pr-actions button{font-size:13px}.pr-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 12px 12px}.pr-summary>div{padding:12px;border-bottom:1px solid var(--line)}.pr-summary>div:nth-child(2){border-right:0}.pr-summary>div:nth-child(3){border-bottom:0}.pr-summary strong{font-size:19px}.pr-summary small{font-size:11px}.pr-footer{padding:12px}.pr-row-actions button{font-size:13px}.pr-review-totals{gap:12px 8px;font-size:12px}}
