/* Approved Ocean application palette. Preserve geometry, typography and semantic colors. */
/* Company setup shares the application surfaces. Progress dots retain their status colors. */
/* Keep native file selection and filenames; style only the chooser's button. */
body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) input[type=file]::file-selector-button{font:inherit;font-size:14px;font-weight:600;color:#164c65;background:linear-gradient(#fff,#eef6f9);border:1px solid #b9d1df;border-radius:9px;padding:9px 12px;margin-right:10px;min-height:38px;box-shadow:inset 0 1px #fff;cursor:pointer}
body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) input[type=file]:disabled::file-selector-button{background:var(--op-e2e9ed,#e2e9ed);border-color:var(--op-bdcbd3,#bdcbd3);color:var(--op-617681,#617681);box-shadow:none;cursor:default}
@media(max-width:760px){body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) input[type=file]::file-selector-button{min-height:44px}}
html[data-ocean] .redesign-office .su-msg.me{background:var(--ocean-primary);color:#fff;box-shadow:inset 0 1px #ffffff55,0 3px 7px var(--op-074c6529,#074c6529)}
html[data-ocean] .redesign-office .su-msg.sp{background:linear-gradient(130deg,var(--op-e6f2f7,#e6f2f7),var(--op-e4f3ee,#e4f3ee));color:var(--op-173e51,#173e51);box-shadow:inset 0 1px #fff}
html[data-ocean] .redesign-office .su-prop{background:linear-gradient(#fff,var(--op-eef6f9,#eef6f9));border-color:var(--op-b9d1df,#b9d1df);color:var(--op-173e51,#173e51);box-shadow:inset 0 1px #fff}
html[data-ocean] .redesign-office :is(.su-head,.su-item){border-color:var(--op-d4e2e7,#d4e2e7)}
html[data-ocean] .redesign-office .su-item b{color:var(--op-12384a,#12384a)}
html[data-ocean] .redesign-office :is(.su-item .what,.su-prop td:first-child){color:var(--op-476575,#476575)}
html[data-ocean] body.redesign-office{--ink:var(--op-12384a,#12384a);--muted:var(--op-476575,#476575);--brand:var(--op-076894,#076894);--brand-deep:var(--op-064d73,#064d73);--line:var(--op-d4e2e7,#d4e2e7);--paper:var(--op-f3f8fa,#f3f8fa);--bg:var(--op-f3f8fa,#f3f8fa);background:var(--op-f3f8fa,#f3f8fa);color:var(--op-12384a,#12384a)}
html[data-ocean] .redesign-office main{background:radial-gradient(ellipse at 100% 0,var(--op-e1f4ef,#e1f4ef) 0,transparent 620px),linear-gradient(140deg,var(--op-f8fbfd,#f8fbfd),var(--op-eff6f9,#eff6f9))}
html[data-ocean] .redesign-office .sidebar{background:radial-gradient(ellipse at 5% 0,var(--op-1b596b,#1b596b),transparent 65%),linear-gradient(165deg,var(--op-103e55,#103e55),var(--op-082b3e,#082b3e) 74%,var(--op-0b3945,#0b3945));color:var(--op-e3f3f6,#e3f3f6);border-color:var(--op-285563,#285563);box-shadow:inset -1px 0 var(--op-9cdfdf22,#9cdfdf22),5px 0 24px var(--op-06334412,#06334412)}
html[data-ocean] .redesign-office .sidebar :is(.side-head a,nav a,nav summary,.side-foot,.side-foot a,.ux-account-menu>summary,.ux-account-menu>summary>span,.side-toggle){color:var(--op-d4e9ed,#d4e9ed)}
html[data-ocean] .redesign-office .side-head a{color:#fff}
html[data-ocean] .redesign-office .sidebar nav a.on{background:linear-gradient(110deg,var(--op-236379,#236379),var(--op-164c60,#164c60));color:#fff;box-shadow:inset 3px 0 var(--op-70dccb,#70dccb),inset 0 1px var(--op-9aebe733,#9aebe733),0 5px 12px var(--op-001c2b22,#001c2b22)}
html[data-ocean] .redesign-office .sidebar nav :is(a,summary):hover{background:var(--op-245568,#245568);color:#fff}
html[data-ocean] .redesign-office .office-favorites{border-color:var(--op-366170,#366170)}
html[data-ocean] .redesign-office .sidebar nav .nav-badge{background:var(--op-315b6b,#315b6b)!important;color:#fff}
html[data-ocean] .redesign-office .office-install{background:linear-gradient(145deg,var(--op-285b6e,#285b6e),var(--op-194355,#194355));border-color:var(--op-487180,#487180);color:var(--op-f1fafb,#f1fafb);box-shadow:inset 0 1px var(--op-9bdddf33,#9bdddf33)}
html[data-ocean] .redesign-office :is(h1,h2){color:var(--op-103a50,#103a50)}
html[data-ocean] .redesign-office .btn:not(.ghost):not(.danger):not(.warning){background:linear-gradient(145deg,var(--op-08759f,#08759f),var(--op-075578,#075578));border-color:var(--op-075477,#075477);box-shadow:inset 0 1px var(--op-b0e7f65c,#b0e7f65c),0 5px 12px var(--op-07557824,#07557824);color:white}
html[data-ocean] .redesign-office .btn.ghost:not(.danger):not(.warning){background:linear-gradient(145deg,#fff,var(--op-edf5f8,#edf5f8));border-color:var(--op-c5d9e2,#c5d9e2);color:var(--op-234d62,#234d62);box-shadow:inset 0 1px #fff}
html[data-ocean] .redesign-office :is(input,select,textarea){border-color:var(--op-c6d9e1,#c6d9e1);background:#fff;color:var(--op-173e51,#173e51)}
html[data-ocean] .redesign-office :is(.card,.office-customer-table){background:#fff;border-color:var(--op-d0e0e6,#d0e0e6);box-shadow:inset 0 1px #fff,0 12px 24px -20px var(--op-0a526b66,#0a526b66)}
html[data-ocean] .redesign-office :is(.office-customer-table th,thead th){background:linear-gradient(115deg,var(--op-e7f2f7,#e7f2f7),var(--op-f0f8f7,#f0f8f7));color:var(--op-365a6b,#365a6b);border-color:var(--op-d0e0e6,#d0e0e6)}
html[data-ocean] .redesign-office .office-customer-table td{border-color:var(--op-e2ecef,#e2ecef)}
html[data-ocean] .redesign-office .office-customer-table tr:hover td{background:var(--op-f0f8fa,#f0f8fa)}
html[data-ocean] .redesign-office .office-customer-table td a{color:var(--op-164d69,#164d69)}
html[data-ocean] .redesign-office .ux-tabs-route [role=tab]{background:var(--op-e8f0f4,#e8f0f4);border-color:var(--op-d1e0e7,#d1e0e7);color:var(--op-244d61,#244d61)}
html[data-ocean] .redesign-office .ux-tabs-route [aria-selected=true]{background:linear-gradient(145deg,var(--op-147b9b,#147b9b),var(--op-075879,#075879));border-color:var(--op-075879,#075879);color:#fff;box-shadow:inset 0 1px var(--op-a7e2ed66,#a7e2ed66),0 3px 8px var(--op-074d6720,#074d6720)}
/* Keep each crew's existing background and colored edge. Only add light. */
html[data-ocean] .redesign-office .office-crew-heading{background-image:linear-gradient(110deg,#ffffff70,transparent 75%);box-shadow:inset 0 1px #ffffffaa}
html[data-ocean] .redesign-office :focus-visible{outline-color:var(--op-007b9c,#007b9c)}
html[data-ocean] .redesign-office .office-dispatch-tray{box-shadow:inset 0 1px #fff,0 14px 28px -20px var(--op-0c526b66,#0c526b66)}
/* No animation and no alpha reading panels. Original status/danger rules stay intact. */
html[data-ocean] .redesign-office .btn.danger,html[data-ocean] .redesign-office .btn.warning{--line:#e5e4df}
/* Shared application families. Paint only; preserve each existing layout and company mark. */
body:is(.portal-redesign,.office-access,.office-setup),body.ocean-app:not(.redesign-office){--ink:var(--op-12384a,#12384a);--muted:var(--op-476575,#476575);--brand:var(--op-076894,#076894);--brand-deep:var(--op-064d73,#064d73);--line:var(--op-d4e2e7,#d4e2e7);--paper:var(--op-f3f8fa,#f3f8fa);--bg:var(--op-f3f8fa,#f3f8fa);color:var(--op-12384a,#12384a);background:radial-gradient(ellipse at 100% 0,var(--op-e1f4ef,#e1f4ef) 0,transparent 620px),linear-gradient(140deg,var(--op-f8fbfd,#f8fbfd),var(--op-eff6f9,#eff6f9))}
body.portal-redesign .portal-top{background:linear-gradient(115deg,var(--op-f8fbfd,#f8fbfd),var(--op-e5f3f4,#e5f3f4));border-color:var(--op-c6dce5,#c6dce5);box-shadow:inset 0 1px #fff,0 4px 16px var(--op-0b526b08,#0b526b08)}
body.portal-redesign :is(.portal-brand,.portal-nav a){color:var(--op-174c62,#174c62)}
body.portal-redesign .portal-nav a.on{color:var(--op-075578,#075578);text-decoration-color:var(--op-076894,#076894)}
body.portal-redesign :is(.card,.customer-document-paper,.customer-document-table,.portal-service-paper,.splash-say),body.office-setup .signin-wrap{background:#fff;border-color:var(--op-d0e0e6,#d0e0e6);box-shadow:inset 0 1px #fff,0 12px 24px -20px var(--op-0a526b66,#0a526b66)}
body.portal-redesign :is(.portal-next,.portal-feedback-intro){background:linear-gradient(130deg,var(--op-e6f2f7,#e6f2f7),var(--op-e4f3ee,#e4f3ee));border-color:var(--op-c6dce5,#c6dce5);box-shadow:inset 0 1px #fff,0 12px 24px -20px var(--op-0a526b66,#0a526b66)}
body.portal-redesign :is(.portal-documents,.customer-document-table,.portal-service-paper) th{background:linear-gradient(115deg,var(--op-e7f2f7,#e7f2f7),var(--op-f0f8f7,#f0f8f7));color:var(--op-365a6b,#365a6b);border-color:var(--op-d0e0e6,#d0e0e6)}
body:is(.portal-redesign,.office-access,.office-setup) :is(h1,h2){color:var(--op-103a50,#103a50)}
body:is(.portal-redesign,.office-access,.office-setup) :is(input,select,textarea){border-color:var(--op-c6d9e1,#c6d9e1);background:#fff;color:var(--op-173e51,#173e51)}
body:is(.portal-redesign,.office-access,.office-setup) .btn:not(.ghost):not(.danger):not(.warning),body:is(.office-access,.office-setup) .signin-submit{background:linear-gradient(145deg,var(--op-08759f,#08759f),var(--op-075578,#075578));border-color:var(--op-075477,#075477);box-shadow:inset 0 1px var(--op-b0e7f65c,#b0e7f65c),0 5px 12px var(--op-07557824,#07557824);color:#fff}
body.portal-redesign .btn.ghost:not(.danger):not(.warning){background:linear-gradient(145deg,#fff,var(--op-edf5f8,#edf5f8));border-color:var(--op-c5d9e2,#c5d9e2);color:var(--op-234d62,#234d62);box-shadow:inset 0 1px #fff}
body.portal-redesign .customer-booking-progress>span{background:var(--op-e8f0f4,#e8f0f4);color:var(--op-244d61,#244d61)}
body.portal-redesign .customer-booking-progress>[aria-current]{background:linear-gradient(145deg,var(--op-147b9b,#147b9b),var(--op-075879,#075879));color:#fff;box-shadow:inset 0 1px var(--op-a7e2ed66,#a7e2ed66)}
body:is(.office-access,.office-setup) .signin-show{color:var(--op-076894,#076894)}
body.office-access .office-access-story{background:radial-gradient(ellipse at 5% 0,var(--op-1b596b,#1b596b),transparent 65%),linear-gradient(165deg,var(--op-103e55,#103e55),var(--op-082b3e,#082b3e) 74%,var(--op-0b3945,#0b3945));color:var(--op-d4e9ed,#d4e9ed);box-shadow:inset -1px 0 var(--op-9cdfdf22,#9cdfdf22)}
body.office-access .office-access-story :is(.office-access-brand,h1){color:#fff}
body.office-access .office-access-story p{color:var(--op-d4e9ed,#d4e9ed)}
body.office-access .office-access-water{background:linear-gradient(145deg,var(--op-b9eae9,#b9eae9),var(--op-71b8cb,#71b8cb));box-shadow:inset 0 1px #fff,0 18px 35px -16px var(--op-001c2b99,#001c2b99)}
body:is(.portal-redesign,.office-access,.office-setup) :focus-visible{outline-color:var(--op-007b9c,#007b9c)}
/* Existing non-office app shell (for restricted/crew roles); no navigation changes. */
body.ocean-app:not(.redesign-office) .sidebar{background:radial-gradient(ellipse at 5% 0,var(--op-1b596b,#1b596b),transparent 65%),linear-gradient(165deg,var(--op-103e55,#103e55),var(--op-082b3e,#082b3e) 74%,var(--op-0b3945,#0b3945));box-shadow:inset -1px 0 var(--op-9cdfdf22,#9cdfdf22)}
body.ocean-app:not(.redesign-office) .btn:not(.ghost):not(.danger):not(.warning){background:linear-gradient(145deg,var(--op-08759f,#08759f),var(--op-075578,#075578));border-color:var(--op-075477,#075477);color:#fff;box-shadow:inset 0 1px var(--op-b0e7f65c,#b0e7f65c),0 5px 12px var(--op-07557824,#07557824)}
/* Secondary app tools retain their existing controls and illustrations. */
body:is(.ocean-app,.portal-redesign,.office-access,.office-setup) :is(input[type=checkbox],input[type=radio]){accent-color:var(--op-076894,#076894)}
html[data-ocean] .redesign-office .kg-num{background:linear-gradient(145deg,var(--op-147b9b,#147b9b),var(--op-075879,#075879));color:#fff;box-shadow:inset 0 1px var(--op-a7e2ed66,#a7e2ed66)}
html[data-ocean] .redesign-office .kg-code{background:var(--op-edf5f8,#edf5f8);border-color:var(--op-c5d9e2,#c5d9e2);color:var(--op-234d62,#234d62)}
html[data-ocean] .redesign-office .stage-wrap{background:var(--op-e5f3f4,#e5f3f4);box-shadow:inset 0 1px #fff,0 12px 24px -20px var(--op-0a526b66,#0a526b66)}
html[data-ocean] .redesign-office .stage-bar{background:linear-gradient(165deg,var(--op-103e55,#103e55),var(--op-082b3e,#082b3e))}
html[data-ocean] .redesign-office .stage-bar button.on,html[data-ocean] .redesign-office #sayBtn{background:linear-gradient(145deg,var(--op-08759f,#08759f),var(--op-075578,#075578));color:#fff;box-shadow:inset 0 1px var(--op-b0e7f65c,#b0e7f65c),0 5px 12px var(--op-07557824,#07557824)}
/* Shared controls use one Ocean treatment, including secondary navigation and overlays. */
html[data-ocean] .redesign-office .office-splash-dock{background:linear-gradient(145deg,#fff,var(--op-edf5f8,#edf5f8));border-color:var(--op-c5d9e2,#c5d9e2);box-shadow:inset 0 1px #fff,0 5px 16px var(--op-07557824,#07557824)}
html[data-ocean] .redesign-office :is(#spLauncher,#office-splash-position){color:var(--op-234d62,#234d62)}
html[data-ocean] .redesign-office :is(#office-install-dialog,#office-splash-placement,.office-editor,.office-connection-dialog,.office-dispatch-setup-dialog){background:#fff;border-color:var(--op-c5d9e2,#c5d9e2);color:var(--op-173e51,#173e51);box-shadow:inset 0 1px #fff,0 16px 36px var(--op-07557824,#07557824)}
html[data-ocean] .redesign-office :is(.office-work-table,.office-import-history-table,.office-import-review-table) th{background:linear-gradient(115deg,var(--op-e7f2f7,#e7f2f7),var(--op-f0f8f7,#f0f8f7));color:var(--op-365a6b,#365a6b);border-color:var(--op-d0e0e6,#d0e0e6)}
html[data-ocean] .redesign-office :is(.office-work-table,.office-import-history-table,.office-import-review-table) td{border-color:var(--op-e2ecef,#e2ecef)}
html[data-ocean] .redesign-office .ap-ticket{background:var(--op-f3f8fa,#f3f8fa)}
html[data-ocean] .redesign-office :is(.office-review-tabs a.on,.ap-tab.on,.office-report-tabs button[aria-current=page],.office-quote-types a[aria-current],.office-measure-steps button.btn.ghost[aria-current]){background:linear-gradient(145deg,var(--op-147b9b,#147b9b),var(--op-075879,#075879));border-color:var(--op-075879,#075879);color:#fff;box-shadow:inset 0 1px var(--op-a7e2ed66,#a7e2ed66),0 3px 8px var(--op-074d6720,#074d6720)}
html[data-ocean] .redesign-office .office-review-tabs a.on span{background:var(--op-064d73,#064d73);color:#fff}
html[data-ocean] .redesign-office .bill-tabs a.on{color:var(--op-076894,#076894);border-bottom-color:var(--op-076894,#076894)}
html[data-ocean] .redesign-office .office-township-list [aria-current=true]{border-color:var(--op-076894,#076894);background:var(--op-e7f2f7,#e7f2f7)}
html[data-ocean] .redesign-office .office-import-steps [aria-current]{color:var(--op-075879,#075879)}
/* Tasks: status navigation follows Ocean; record borders do not encode task status. */
html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-tabs a{background:#e8f0f4;border-color:#d1e0e7;color:#244d61}
html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-tabs a.on{background:linear-gradient(145deg,var(--op-147b9b,#147b9b),var(--op-075879,#075879));border-color:var(--op-075879,#075879);color:#fff;box-shadow:inset 0 1px var(--op-a7e2ed66,#a7e2ed66),0 3px 8px var(--op-074d6720,#074d6720)}
html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-task-card{border-top-color:var(--op-d0e0e6,#d0e0e6)!important}

/* Review uses the same opaque Ocean surfaces and localized highlights as the app. */
html[data-ocean] .redesign-office .office-ticket-reader{border-color:var(--op-d0e0e6,#d0e0e6);box-shadow:inset 0 1px #fff,0 12px 24px -20px var(--op-0a526b66,#0a526b66)}
html[data-ocean] .redesign-office .office-record-reading{background:linear-gradient(145deg,var(--op-e7f3fb,#e7f3fb),var(--op-eef8f7,#eef8f7));box-shadow:inset 0 1px #ffffffbb,0 5px 12px -10px var(--op-0a526b55,#0a526b55)}
html[data-ocean] .redesign-office .office-record-reading:nth-child(3n+2){background:linear-gradient(145deg,var(--op-e3f3ef,#e3f3ef),var(--op-edf9f4,#edf9f4))}
html[data-ocean] .redesign-office .office-record-reading:nth-child(3n){background:linear-gradient(145deg,var(--op-e7f1f8,#e7f1f8),var(--op-eff6fb,#eff6fb))}

/* Ocean depth A, approved September 16. Shared app controls only.
   Keep page geometry and the different action/navigation semantics. */
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup){
  --ocean-primary:linear-gradient(135deg,var(--op-117da1,#117da1),var(--op-065574,#065574));
  --ocean-secondary:linear-gradient(#fff,var(--op-eef6f9,#eef6f9));
  --ocean-selected:var(--op-087a9d,#087a9d);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) :is(button,.btn,select,.signin-submit){font-family:inherit;font-weight:600}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) :is(.btn,.signin-submit){border-radius:9px}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) .btn:not(.ghost):not(.danger):not(.warning),
:is(html[data-ocean],html) body:is(.office-access,.office-setup) .signin-submit{
  background:var(--ocean-primary);border-color:var(--op-07536e,#07536e);color:#fff;
  box-shadow:inset 0 1px 0 #ffffff55,0 3px 7px var(--op-074c6529,#074c6529);
}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) .btn.ghost:not(.danger):not(.warning){
  background:var(--ocean-secondary);border-color:var(--op-b9d1df,#b9d1df);color:var(--op-164c65,#164c65);box-shadow:inset 0 1px 0 #fff;
}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) .btn:not(.ghost):not(.danger):not(.warning):disabled,
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) .btn.ghost:not(.danger):not(.warning):disabled,
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) :is(.btn,.signin-submit):disabled{
  background:var(--op-e2e9ed,#e2e9ed);border-color:var(--op-bdcbd3,#bdcbd3);color:var(--op-617681,#617681);box-shadow:none;cursor:default;
}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) :is(button,.btn,select,.signin-submit):focus-visible{outline:3px solid var(--op-007fa6,#007fa6);outline-offset:3px}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) :is(.btn,.signin-submit):active:not(:disabled){box-shadow:inset 0 2px 3px var(--op-07394c33,#07394c33)}
/* Dispatch already exposes actual view tabs. Style them without changing handlers. */
html[data-ocean] .redesign-office .ux-tabs-route .ocean-view-tabs{display:flex;flex-wrap:wrap;background:var(--op-e8f0f3,#e8f0f3);border:1px solid var(--op-d5e2e7,#d5e2e7);border-radius:10px;padding:3px;gap:3px;width:max-content;max-width:100%}
html[data-ocean] .redesign-office .ux-tabs-route [role=tab]{background:transparent;border:1px solid transparent;border-radius:9px;color:var(--op-164c65,#164c65);box-shadow:none;font-weight:600}
html[data-ocean] .redesign-office .ux-tabs-route [role=tab][aria-selected=true]{background:#fff;border-color:var(--op-d5e2e7,#d5e2e7);color:var(--op-084d6d,#084d6d);box-shadow:none}
@media(max-width:760px){
 :is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) :is(button,.btn,select,.signin-submit){min-height:44px}
 :is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) button{min-width:44px}
}
/* The assistant launcher has its own later ID rule; inherit the approved control weight. */
html[data-ocean] .redesign-office #spLauncher{font-weight:600}
@media(max-width:760px){html[data-ocean] .redesign-office #office-splash-position{min-height:44px;min-width:44px}}
/* Native WebKit popup sizing ignores min-height. Keep native select behavior,
   but draw the closed control consistently and leave list boxes untouched. */
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) select:not([multiple]):not([size]){
 appearance:none;-webkit-appearance:none;padding-right:32px;border-radius:9px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='%23164c65' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px;
}
/* The online crew shell already has the dark Ocean sidebar. Its links must
   use the matching light foreground instead of the former light-shell ink. */
body.ocean-app:not(.redesign-office) .sidebar :is(.side-head a,nav a,nav summary){color:var(--op-d4e9ed,#d4e9ed)}
body.ocean-app:not(.redesign-office) .sidebar nav a.on{background:linear-gradient(110deg,var(--op-236379,#236379),var(--op-164c60,#164c60));color:#fff;box-shadow:inset 3px 0 var(--op-70dccb,#70dccb),inset 0 1px var(--op-9aebe733,#9aebe733)}
body.ocean-app:not(.redesign-office) .sidebar nav :is(a,summary):hover{background:var(--op-245568,#245568);color:#fff}
:is(html[data-ocean],html) body:is(.ocean-app,.redesign-office,.portal-redesign,.office-access,.office-setup) :is(button,.btn,.signin-submit){font-size:14px}
html[data-ocean] .redesign-office .office-available-tabs{background:var(--op-e8f0f3,#e8f0f3);border:1px solid var(--op-d5e2e7,#d5e2e7);border-radius:10px;padding:3px;gap:3px}
html[data-ocean] .redesign-office .office-available-tabs [role=tab]{background:transparent;border:1px solid transparent;border-radius:9px;color:var(--op-164c65,#164c65);box-shadow:none}
html[data-ocean] .redesign-office .office-available-tabs [role=tab][aria-selected=true]{background:#fff;border-color:var(--op-d5e2e7,#d5e2e7);color:var(--op-084d6d,#084d6d);box-shadow:none}
/* Price Book's earlier ID selectors must not override the shared control family. */
html[data-ocean] .redesign-office :is(#office-catalog-add,#catalogViews button){font-weight:600}
@media(max-width:760px){html[data-ocean] .redesign-office #office-catalog-add{min-height:44px}}
/* Keyboard focus needs a light cue on the dark navigation surface. */
:is(html[data-ocean],html) body.ocean-app .sidebar :focus-visible{outline:3px solid var(--op-d4e9ed,#d4e9ed);outline-offset:3px}
/* Ocean depth selected views. Keep each existing link/button and page layout. */
html[data-ocean] .redesign-office :is(.office-inbox-channels,nav[aria-label="Inquiry views"],.office-measure-steps,.office-account-filters,.office-quote-types,.bill-tabs,.office-review-tabs,.office-report-tabs,.ap-tabs,#catalogViews,.ux-tabs[aria-label="Contract views"],.ux-tabs[aria-label="Time views"]),
html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-tabs{
 background:var(--op-e8f0f3,#e8f0f3);border:1px solid var(--op-d5e2e7,#d5e2e7);border-radius:10px;padding:3px;gap:3px;
}
html[data-ocean] .redesign-office :is(.office-inbox-channels,nav[aria-label="Inquiry views"],.office-measure-steps,.office-account-filters,.office-quote-types,.bill-tabs,.office-review-tabs,.office-report-tabs,.ap-tabs,#catalogViews,.ux-tabs[aria-label="Contract views"],.ux-tabs[aria-label="Time views"])>:is(a,button),
html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-tabs>a{
 background:transparent;border:1px solid transparent;border-radius:9px;color:var(--op-164c65,#164c65);box-shadow:none;font-weight:600;
}
html[data-ocean] .redesign-office :is(.office-inbox-channels,nav[aria-label="Inquiry views"],.office-measure-steps,.office-account-filters,.office-quote-types,.bill-tabs,.office-review-tabs,.office-report-tabs,.ap-tabs,#catalogViews,.ux-tabs[aria-label="Contract views"],.ux-tabs[aria-label="Time views"])>:is(a,button):is(.on,[aria-current="page"],[aria-current="step"],[aria-pressed="true"]),
html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-tabs>a.on{
 background:#fff;border-color:var(--op-d5e2e7,#d5e2e7);color:var(--op-084d6d,#084d6d);box-shadow:none;
}
html[data-ocean] .redesign-office :is(.office-inbox-channels,nav[aria-label="Inquiry views"],.office-measure-steps,.office-account-filters,.office-quote-types,.bill-tabs,.office-review-tabs,.office-report-tabs,.ap-tabs,#catalogViews,.ux-tabs[aria-label="Contract views"],.ux-tabs[aria-label="Time views"])>:is(a,button):focus-visible,
html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-tabs>a:focus-visible{outline:3px solid var(--op-007fa6,#007fa6);outline-offset:2px}
@media(max-width:760px){
 html[data-ocean] .redesign-office :is(.office-inbox-channels,nav[aria-label="Inquiry views"],.office-measure-steps,.office-account-filters,.office-quote-types,.bill-tabs,.office-review-tabs,.office-report-tabs,.ap-tabs,#catalogViews,.ux-tabs[aria-label="Contract views"],.ux-tabs[aria-label="Time views"])>:is(a,button),
 html[data-ocean] .redesign-office[data-workspace="/tasks"] .ux-tabs>a{min-height:44px}
}
/* Existing help-card ID styling must not bypass the shared secondary action. */
body.portal-redesign #contact-office>.btn.ghost{font-weight:600;background:linear-gradient(#fff,var(--op-eef6f9,#eef6f9));border-color:var(--op-b9d1df,#b9d1df);color:var(--op-164c65,#164c65);box-shadow:inset 0 1px 0 #fff}

html[data-ocean] .redesign-office .office-inbox-channels>a{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;text-decoration:none;font-size:14px;white-space:nowrap}

/* Workspace-specific legacy rules also reach controls inside expanded records. */
html[data-ocean] body.redesign-office[data-workspace] :is(button,.btn):not(.office-settings-link){font-weight:600}

/* Keep native approval select geometry while matching the shared field palette. */
html[data-ocean] body.redesign-office[data-workspace="/approvals"] :is(.office-approval-edit-grid,[data-approval-mode-form]) select{border-color:var(--op-c6d9e1,#c6d9e1);background:#fff;color:var(--op-173e51,#173e51)}

/* Invoice summary cards share the Ocean palette. Amber still identifies
   overdue attention; draft counts no longer inherit the old violet theme. */

/* Keep the existing compact filter height while giving native text a full line. */
html[data-ocean] body.redesign-office .filter-bar select:not([multiple]):not([size]){padding-top:6px;padding-bottom:6px}

html[data-ocean] .redesign-office :is(.ux-tabs[role=tablist],.fb-tabs){display:flex;flex-wrap:wrap;gap:3px;padding:3px;background:var(--op-e8f0f3,#e8f0f3);border:1px solid var(--op-d5e2e7,#d5e2e7);border-radius:10px}
html[data-ocean] .redesign-office :is(.ux-tabs[role=tablist],.fb-tabs)>:is(button,a){background:transparent;border:1px solid transparent;border-radius:9px;color:var(--op-164c65,#164c65);box-shadow:none;font-weight:600;min-height:44px}
html[data-ocean] .redesign-office :is(.ux-tabs[role=tablist],.fb-tabs)>:is([aria-selected=true],.on){background:#fff;border-color:var(--op-d5e2e7,#d5e2e7);color:var(--op-084d6d,#084d6d);box-shadow:none}
