/* Screen-only appearance: documents retain their original print colours. */
@media screen {
html[data-sc-theme="light"]{color-scheme:light}
html[data-sc-theme="dark"]{color-scheme:dark;--sc-bg:#111820;--sc-panel:#1b2530;--sc-raised:#243240;--sc-text:#e6edf5;--sc-muted:#b1c0cf;--sc-line:#435365;--sc-link:#8bcbff}
html[data-sc-theme="dark"] body{background:var(--sc-bg)!important;color:var(--sc-text)!important}
html[data-sc-theme="dark"] body :is(main,.content,.main-content,.page-content){background-color:var(--sc-bg)!important;color:var(--sc-text)!important}
html[data-sc-theme="dark"] body :is(.box,.card,.panel,fieldset,.contact-panel,.client-panel,.client-panel-body,.client-menu,.login-card,.quick-link,.service-card,dialog,.modal-content,.calendar,.planner,.invoice-grid>div){background:var(--sc-panel)!important;color:var(--sc-text)!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body :is(h1,h2,h3,h4,legend,label,summary,.contact-section-title,.service-heading,.client-name){color:var(--sc-text)!important}
html[data-sc-theme="dark"] body :is(.muted,small,.help,.hint,.subtitle){color:var(--sc-muted)!important}
html[data-sc-theme="dark"] body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){background:#111c27!important;color:var(--sc-text)!important;border-color:#607489!important}
html[data-sc-theme="dark"] body :is(input,textarea)::placeholder{color:#a1b0bf!important;opacity:1}
html[data-sc-theme="dark"] body :is(input,select,textarea):disabled{background:#26303b!important;color:#a9b4c0!important}
html[data-sc-theme="dark"] body :is(table,tbody,tr,td){background-color:var(--sc-panel)!important;color:var(--sc-text)!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body :is(th,thead,.client-panel-heading,.topbar,.service-tabs,.service-total,.service-form-footer){background:var(--sc-raised)!important;color:var(--sc-text)!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body tr:hover>td{background-color:#293b4b!important}
html[data-sc-theme="dark"] body .contact-table td:nth-child(2){background:#453b24!important}
html[data-sc-theme="dark"] body .contact-table .group-cell{background:#203c32!important}
html[data-sc-theme="dark"] body a:not(.button):not(.brand){color:var(--sc-link)}
html[data-sc-theme="dark"] body :is(button,.button){background:#286190!important;color:#fff!important;border-color:#719abd!important}
html[data-sc-theme="dark"] body :is(button,.button):hover{background:#3275a8!important}
html[data-sc-theme="dark"] body :is(button,.button):disabled{background:#35414e!important;color:#a9b4c0!important;cursor:not-allowed}
html[data-sc-theme="dark"] body :is(.notice,.warning,.alert-warning){background:#433b25!important;color:#ffedb3!important;border-color:#807044!important}
html[data-sc-theme="dark"] body :is(.error,.alert-danger){color:#ffada7!important}
html[data-sc-theme="dark"] body :is(.success,.alert-success){color:#9be4bc!important}
html[data-sc-theme="dark"] body :is(pre,code){background:#101a23!important;color:#d4e7fa!important}
html[data-sc-theme="dark"] body header.sidebar{background:#13202c!important;color:#f2f6fb!important}
html[data-sc-theme="dark"] body header.sidebar nav{background:#1b2937!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body header.sidebar nav a{color:#e5f0ff!important;background:#263c50!important;border-color:#49627b!important}
html[data-sc-theme="dark"] body header.sidebar nav a:is(.active,[aria-current="page"]){background:#385b7e!important;color:#fff!important;box-shadow:inset 0 -3px #f0c64f!important}
html[data-sc-theme="dark"] body header.sidebar nav a:hover{background:#35546e!important}
html[data-sc-theme="dark"] body :is(.isp-header-info,.isp-header-info strong,#slavconet-info-header){color:#fff!important}
html[data-sc-theme="dark"] body .isp-masthead :is(small,.sc94-caption){color:#dce7f3!important}
html[data-sc-theme="dark"] body :is(.id-scan,.id-review,.id-review-row,.id-ocr-filled){background:#243444!important;color:var(--sc-text)!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body :is(.plan-side details,.plan-person,.plan-time-grid,.plan-hours,.plan-hour,.plan-hour-axis){background-color:var(--sc-panel)!important;color:var(--sc-text)!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body :is(.plan-side summary,.plan-person-name,.plan-toolbar,.plan-filters){background:var(--sc-raised)!important;color:var(--sc-text)!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body .plan-unspecified{background:#443d28!important;color:#ffedb3!important;border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body .plan-muted{color:var(--sc-muted)!important}
html[data-sc-theme="dark"] body .badge{background:#17453e!important;color:#a2f1dd!important}
/* Client navigation: the current section stays neutral; red is a hover state. */
html[data-sc-theme="dark"] body .client-menu .client-name{background:var(--sc-raised)!important;color:var(--sc-text)!important}
html[data-sc-theme="dark"] body .client-menu a{border-color:var(--sc-line)!important}
html[data-sc-theme="dark"] body .client-menu .count{background:var(--sc-raised)!important;color:var(--sc-text)!important}
html[data-sc-theme="dark"] body .client-menu a:hover{background:#9e2033!important;color:#fff!important}
html[data-sc-theme="dark"] body .client-menu a:hover .count{background:#5a1c27!important;color:#fff!important}
html[data-sc-theme="dark"] body :focus-visible{outline:2px solid #f2cc60!important;outline-offset:2px}
body header.sidebar .sc95-masthead .isp-header-tools #sc-theme-toggle{grid-column:1/-1;grid-row:3;justify-self:center;font-size:10px!important;min-height:25px!important;padding:3px 8px!important;white-space:nowrap}
.sc-theme-floating{position:fixed;right:12px;top:12px;z-index:1000}
body #billing-copy-status{display:block;min-height:1.4em}
body .sc-bulk-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
body .sc-bulk-message{width:100%;max-width:680px;box-sizing:border-box}
}
@media screen and (max-width:1200px){body header.sidebar .sc95-masthead .isp-header-tools #sc-theme-toggle{grid-column:2/4;grid-row:2;justify-self:end}body header.sidebar .sc95-masthead .isp-test-label{display:none!important}}
@media screen and (max-width:720px){body .topbar{height:auto!important;min-height:34px!important;row-gap:6px}body .plan-grid{grid-template-columns:minmax(0,1fr)!important}body .plan-grid,body .plan-side,body .plan-grid>*{min-width:0;max-width:100%}body .plan-grid>:not(.plan-side){overflow-x:auto}body .plan-side .mini{min-width:0!important;width:100%!important;table-layout:fixed}}
@media print{html{color-scheme:light!important}#sc-theme-toggle,.sc-theme-floating{display:none!important}}

/* Minimal administration, screen only. Retain semantic states and print layouts. */
@media screen {
html{--sc-bg:#f4f6f8;--sc-panel:#fff;--sc-raised:#eef2f5;--sc-text:#243447;--sc-muted:#607185;--sc-line:#dce3e9;--sc-link:#226da0;--sc-shadow:0 2px 8px #20354c0a,0 12px 28px #20354c05}
html[data-sc-theme="dark"]{--sc-bg:#151c25;--sc-panel:#1c2632;--sc-raised:#253240;--sc-text:#e1e8ef;--sc-muted:#a5b4c3;--sc-line:#354454;--sc-link:#93c8eb;--sc-shadow:0 2px 10px #0002,0 12px 28px #0001}
html body{background:var(--sc-bg)!important;color:var(--sc-text)!important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px;line-height:1.45}
html body :is(h1,h2,h3,h4){text-shadow:none!important;letter-spacing:0;font-weight:600}
html body h1{font-size:23px}html body h2{font-size:18px}html body h3{font-size:16px}
html body :is(.box,.card,.panel,fieldset,.contact-panel,.client-panel,.client-menu,.service-card,.login-card,.gps-panel,.gps-card,.update-panel){border:1px solid var(--sc-line)!important;border-radius:8px!important;background:var(--sc-panel)!important;color:var(--sc-text)!important;box-shadow:var(--sc-shadow)!important;background-image:none!important}
html body .box{padding:16px;margin:14px 0}
html body :is(.client-panel-heading,.service-heading,.topbar){background:var(--sc-raised)!important;color:var(--sc-text)!important;border-color:var(--sc-line)!important;box-shadow:none!important;text-shadow:none!important;padding:10px 14px}
html body .client-panel-body{padding:12px}
html body :is(button,.button){font-family:inherit;font-size:13px;font-weight:500;line-height:1.4;padding:7px 12px!important;min-height:32px;border:1px solid #3979a4!important;border-radius:5px!important;background:#286e9c!important;background-image:none!important;color:white!important;box-shadow:0 1px 3px #142c431a!important;text-shadow:none!important;text-decoration:none;transform:none!important;transition:background-color .12s,border-color .12s}
html body :is(button,.button):hover{background:#225e86!important;box-shadow:0 2px 5px #142c4326!important}
html[data-sc-theme="dark"] body :is(button,.button){background:#2b5777!important;border-color:#426e8e!important}
html[data-sc-theme="dark"] body :is(button,.button):hover{background:#35698c!important}
html body :is(button,.button):disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important}
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select,textarea){font:inherit;padding:7px 9px;border-radius:5px!important;border:1px solid var(--sc-line)!important;background:var(--sc-panel)!important;color:var(--sc-text)!important;box-shadow:inset 0 1px 2px #172b4005!important;max-width:100%;box-sizing:border-box}
html body :is(input[type=checkbox],input[type=radio]){accent-color:#317ca6}
html body :focus-visible{outline:2px solid #429dc4!important;outline-offset:2px}
html body :is(table,td,th){border-color:var(--sc-line)!important;text-shadow:none!important}
html body :is(td,th){padding:7px 9px;font-size:13px}
html body th{background:var(--sc-raised)!important;color:var(--sc-text)!important;font-weight:600}
html body .client-data-table :is(td,th){padding:7px 9px}
html body :is(.client-data-table,.contact-table) tr:nth-child(odd){background:var(--sc-raised)!important}
html body :is(.client-data-table,.contact-table) tr:nth-child(even){background:var(--sc-panel)!important}
html body :is(.notice,.warning,.alert-warning){padding:9px 12px;background:#f8f0d9!important;color:#735c25!important;border:1px solid #e7dcbf!important;border-radius:5px!important;box-shadow:none!important}
html[data-sc-theme="dark"] body :is(.notice,.warning,.alert-warning){background:#373222!important;color:#e9d699!important;border-color:#514933!important}
html body header.sidebar{background:#23384a!important;background-image:none!important;box-shadow:0 3px 12px #152c4218!important}
html body header.sidebar .isp-masthead{box-shadow:none!important;text-shadow:none!important;padding-top:12px!important;padding-bottom:12px!important}
html body header.sidebar .isp-masthead::before,html body header.sidebar .isp-masthead::after{background-image:none!important;box-shadow:none!important}
html body header.sidebar nav{background:#293f52!important;background-image:none!important;box-shadow:none!important;border-color:#496071!important;gap:3px}
html body header.sidebar nav a{background:transparent!important;background-image:none!important;color:#e4ecf3!important;border:0!important;border-radius:4px!important;box-shadow:none!important;text-shadow:none!important;padding:8px 12px!important;transform:none!important;font-size:13px!important}
html body header.sidebar nav a:hover{background:#3c5367!important}
html body header.sidebar nav a:is(.active,[aria-current="page"]){background:#405e73!important;box-shadow:inset 0 -2px #76c4d1!important}
html body .client-menu a{padding:9px 12px;border-color:var(--sc-line)!important;color:var(--sc-text)!important}
html body .client-menu a.current{background:var(--sc-raised)!important;box-shadow:inset 3px 0 #4599b9}
html body .client-menu a:hover{background:var(--sc-raised)!important;color:var(--sc-link)!important}
html body .client-menu .client-name{background:var(--sc-raised)!important;padding:12px}
html body .client-menu .count{background:var(--sc-panel)!important;color:var(--sc-muted)!important}
/* Preserve invoice/payment state colours against the generic dark-table rules. */
html body .cf :is(td,summary).status{color:#172c3c!important}
html body .cf .status.paid{background:#a4d8b1!important}
html body .cf .status.late_paid{background:#a4d8e1!important}
html body .cf .status.unpaid{background:#efd18a!important}
html body .cf .status.overdue{background:#e9acb3!important}
html body .cf .status.cancelled{background:#bcc6cf!important}
html body .cf .status.empty{background:var(--sc-raised)!important;color:var(--sc-muted)!important}
html body .cf td.debt{color:#cf5268!important}
html body :is(.cf .tabs a,.service-tabs a){border-radius:4px!important;box-shadow:none!important;text-shadow:none!important}
html body .cf .tabs a.selected{background:#3d6c87!important;color:white!important}
}
@media screen and (max-width:700px){html body{font-size:14px}html body .box{padding:12px}html body :is(button,.button){min-height:36px}html body header.sidebar nav a{padding:8px!important;min-height:32px;box-sizing:border-box}html body .client-panel-body{padding:9px}}
@media(prefers-reduced-motion:reduce){html body :is(button,.button){transition:none!important}}
/* Explicit theme specificity: legacy dark rules must not restore the 3D chrome. */
@media screen {
html[data-sc-theme] body header.sidebar nav:is(.primary-menu,.secondary-menu,.tertiary-menu){padding:2px 12px!important;margin:0!important;gap:2px!important;background:#223343!important;border:0!important;box-shadow:none!important;min-height:0!important}
html[data-sc-theme] body header.sidebar nav:is(.primary-menu,.secondary-menu,.tertiary-menu) a{min-width:0!important;min-height:30px!important;padding:6px 12px!important;font-size:12px!important;line-height:18px!important;border:0!important;border-radius:3px!important;box-shadow:none!important;background:transparent!important;background-image:none!important;text-shadow:none!important;flex:0 0 auto!important;color:#dae4ed!important}
html[data-sc-theme] body header.sidebar nav:is(.primary-menu,.secondary-menu,.tertiary-menu) a.active{background:#35546b!important;box-shadow:inset 0 -2px #81bacb!important;color:#fff!important}
html[data-sc-theme] body header.sidebar nav:is(.primary-menu,.secondary-menu,.tertiary-menu) a:hover{background:#304758!important}
html[data-sc-theme] body header.sidebar nav .ui-icon{width:15px!important;height:15px!important}
html[data-sc-theme] body header.sidebar .isp-masthead.sc95-masthead{padding:9px 18px!important;gap:8px!important;min-height:0!important;}
html[data-sc-theme] body header.sidebar .isp-masthead .brand{font-size:23px!important;line-height:1.15!important;text-shadow:none!important;background:none!important}
html[data-sc-theme] body header.sidebar .isp-masthead .isp-header-info{font-size:9px!important;line-height:1.2!important}
html[data-sc-theme] body #slavconet-info-header strong{font-size:19px!important;line-height:1.15!important}
html[data-sc-theme] body #slavconet-info-header #sc94-names{font-size:13px!important;margin:3px 0!important}
html[data-sc-theme] body #sc94-forecast{min-height:0!important;gap:4px!important;margin-top:2px!important}
html[data-sc-theme] body #sc94-forecast .sc94-icon{font-size:17px!important;line-height:19px!important}
html[data-sc-theme] body #slavconet-info-header>div{padding-left:12px!important;padding-right:12px!important}
html[data-sc-theme] body main .topbar{height:auto!important;min-height:30px!important;padding:5px 10px!important;margin-bottom:9px!important;border-radius:4px!important;box-shadow:none!important}
html[data-sc-theme] body main>.notice{margin-bottom:10px!important;padding:6px 10px!important;font-size:11px!important}
html[data-sc-theme] body main .box{margin:10px 0!important;padding:12px!important;box-shadow:var(--sc-shadow)!important;border-color:var(--sc-line)!important}
html[data-sc-theme] body main :is(button,.button){padding:6px 11px!important;min-height:30px!important;box-shadow:0 1px 3px #0002!important;background:#2c668b!important;border-color:#467797!important;font-size:12px!important}
html[data-sc-theme] body main .contact-table :is(th,td){padding:6px 8px!important;font-size:12px!important;line-height:1.35!important;height:auto!important;vertical-align:top!important}
html[data-sc-theme] body main .contact-table td:nth-child(2){background:var(--sc-raised)!important;color:var(--sc-text)!important}
html[data-sc-theme] body main :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select){padding:6px 8px!important;min-height:30px!important;font-size:12px!important}
html[data-sc-theme] body main h1{font-size:21px!important;margin-bottom:10px!important}
}
@media screen and (min-width:1001px){html[data-sc-theme] body header.sidebar .isp-masthead.sc95-masthead{grid-template-columns:185px minmax(0,1fr) 130px!important;grid-template-rows:auto auto!important}html[data-sc-theme] body header.sidebar .sc95-masthead>#slavconet-info-header{grid-column:2!important;grid-row:1/3!important;padding:0!important;margin:0!important;border:0!important}html[data-sc-theme] body header.sidebar .sc95-masthead>.isp-header-tools{display:grid!important;grid-column:3!important;grid-row:1/3!important}}
@media screen and (max-width:700px){html[data-sc-theme] body header.sidebar nav:is(.primary-menu,.secondary-menu,.tertiary-menu) a{min-height:40px!important;padding:10px!important}html[data-sc-theme] body main :is(button,.button){min-height:40px!important}html[data-sc-theme] body header.sidebar .isp-masthead.sc95-masthead{padding:7px 10px!important}}

/* SC whole administration at 70 percent */
@media screen { html body { zoom: 0.7 !important; } }

/* Wider operator information moves the daily overview to the right. */
@media screen {
html[data-sc-theme] body header.sidebar .isp-masthead .brand{font-size:28px!important}
html[data-sc-theme] body header.sidebar .isp-masthead .brand small{font-size:12px!important;line-height:1.35!important}
html[data-sc-theme] body header.sidebar .isp-masthead .isp-header-info{font-size:13px!important;line-height:1.35!important;overflow-wrap:anywhere}
}
@media screen and (min-width:1001px){
html[data-sc-theme] body header.sidebar .isp-masthead.sc95-masthead{grid-template-columns:300px minmax(0,1fr) 130px!important}
}

/* Login surface follows the selected theme, including the full viewport. */
@media screen {
html[data-sc-theme="dark"]:has(body.login-layout),
html[data-sc-theme="dark"] body.login-layout,
html[data-sc-theme="dark"] body.login-layout main {
 background:#101c28!important;background-image:none!important;color:#e8eff5!important;
}
html[data-sc-theme="dark"] body.login-layout .login-brand {color:#e8eff5!important}
html[data-sc-theme="dark"] body.login-layout .login-note {color:#aebfcf!important}
}

/* Login fields, including browser autofill. */
html body.login-layout .login-card input {
 background:#edf4f8!important;color:#183342!important;border:1px solid #7895a5!important;
 --login-input-bg:#edf4f8;--login-input-text:#183342;
}
html[data-sc-theme="dark"] body.login-layout .login-card input {
 --login-input-bg:#243e50;--login-input-text:#f0f6fa;
 background:#243e50!important;background-image:none!important;color:#f0f6fa!important;caret-color:#f0f6fa!important;border-color:#5d879a!important;
}
html body.login-layout .login-card input:autofill {
 background:var(--login-input-bg)!important;color:var(--login-input-text)!important;
 box-shadow:0 0 0 1000px var(--login-input-bg) inset!important;
}
html body.login-layout .login-card input:-webkit-autofill {
 -webkit-text-fill-color:var(--login-input-text)!important;
 -webkit-box-shadow:0 0 0 1000px var(--login-input-bg) inset!important;
 box-shadow:0 0 0 1000px var(--login-input-bg) inset!important;
 caret-color:var(--login-input-text)!important;
}
html body.login-layout .login-card input:focus {outline:2px solid #32b9c7!important;outline-offset:1px}
