/* CASA UI R40 — shared interaction and reading rules. 25 October 2026. */
:root{--casa-ink:#0a0b0d;--casa-charcoal:#1e2024;--casa-graphite:#41444a;--casa-silver:#bec1c7;--casa-paper:#fff;--casa-surface:#f5f5f5;--casa-border:#d6d7da;--casa-control:#74777d;--casa-space:clamp(20px,4vw,64px)}
html{scroll-padding-block-start:7rem;text-size-adjust:100%;-webkit-text-size-adjust:100%;scrollbar-color:#8b8e94 #f1f1f1}
body{font-size:16px;-webkit-font-smoothing:antialiased}
*,*::before,*::after{box-sizing:border-box}
::selection{background:#bec1c7;color:#0a0b0d}
:where(input,textarea){caret-color:#0a0b0d}
:where(input,textarea)::placeholder{color:#5b5e64;opacity:1}
:where(a){text-underline-offset:.22em;text-decoration-thickness:1px}
:where(button,select,summary,[role=button],input:not([type=checkbox]):not([type=radio]):not([type=hidden])){min-height:44px}
button:not([role=checkbox]):not([role=switch]){min-height:44px!important}
:where(button,select,input,textarea){max-width:100%}
:where(button,[role=button],summary,a){touch-action:manipulation}
:where(button,[role=button]){line-height:1.4;white-space:normal}
:where(input,select,textarea){font-size:1rem}
:where(textarea){resize:vertical;line-height:1.55}
:where(button,input,select,textarea):disabled{cursor:not-allowed}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #0a0b0d!important;outline-offset:3px!important;box-shadow:0 0 0 3px #fff!important}
:where(h1,h2){text-wrap:balance;letter-spacing:-.035em}
:where(h3,h4){text-wrap:pretty}
:where(main,section,article,form,fieldset){min-width:0}
:where(fieldset){min-inline-size:0}
:where(img,svg,video){max-width:100%}
:where(table){font-variant-numeric:tabular-nums;line-height:1.5}
:where(th){text-align:start}
:where(th,td){overflow-wrap:anywhere}
:where(label){line-height:1.5}
:where([aria-busy=true]){cursor:progress}
:where([aria-invalid=true]){border-color:#9c2828!important}
.casa-ui-skip{position:fixed;z-index:10000;inset-block-start:12px;inset-inline-start:16px;padding:14px 20px;background:#fff;color:#0a0b0d;transform:translateY(-180%);border:1px solid #41444a;text-decoration:underline}
.casa-ui-skip:focus{transform:none}
.casa-ui-scroll{max-width:100%;overflow:auto;overscroll-behavior-inline:contain;scrollbar-gutter:stable;scrollbar-width:thin}
.casa-ui-scroll>table{margin-block:0!important}
.casa-ui-scroll:focus-visible{outline-offset:2px!important}
.casa-ui-scroll[data-overflow=true]{border-inline-end:1px solid #74777d}
.casa-ui-scroll-hint{font-size:.8125rem;line-height:1.5;color:#53565c;margin:8px 0}
.casa-ui-scroll-hint[hidden]{display:none!important}
@media(hover:hover){:where(a):hover{text-decoration-thickness:2px}}
@media(max-width:760px){:where(input,select,textarea){font-size:16px!important}:where(h1){hyphens:auto}:where(dialog,[role=dialog]){max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight!important}.casa-ui-scroll{border:1px solid CanvasText}}
@media print{.casa-ui-skip,.casa-ui-scroll-hint{display:none!important}.casa-ui-scroll{overflow:visible;border:0}table thead{display:table-header-group}tr{break-inside:avoid}}

/* Project entry, data forms, reports and analysis share one reading scale. */
.header .languages a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.header .nav a{min-height:44px;display:inline-flex;align-items:center}
.ce-test-banner{background:#f2f2f2;color:#41444a;font-size:.8125rem;line-height:1.5;padding:10px 20px;border-bottom:1px solid #bec1c7}
.ce-workbench main{max-width:1520px;padding-inline:clamp(20px,3vw,48px)}
.ce-workbench header{margin-block:24px;gap:20px}.ce-workbench header .title p{font-size:.9375rem}
.ce-workbench .portal-work-nav a{min-height:44px;display:inline-flex;align-items:center}
.ce-workbench #hub-nav{gap:4px;flex-wrap:wrap;border-color:#bec1c7}
.ce-workbench #hub-nav button{flex:1 1 120px;font-size:.9375rem;min-height:48px;padding:12px 16px}
.ce-workbench #hub-nav button[aria-current=page]{background:#0a0b0d;color:#fff;border-color:#0a0b0d}
.ce-workbench #experience-steps{gap:16px}.ce-workbench #experience-steps button{line-height:1.5}
.ce-workbench :is(.inputgrid,.plan-grid){gap:24px}.ce-workbench .field label{font-size:.9375rem;line-height:1.5}
.ce-workbench .field :is(input,select){min-height:48px;border-color:#74777d}.ce-workbench .field :is(small,.help){font-size:.8125rem;line-height:1.5}
.ce-workbench :is(th,td){padding:14px 12px;font-size:.9375rem;line-height:1.5}
.ce-workbench .tablewrap{border:1px solid #d6d7da}.ce-workbench th{background:#f2f2f2;color:#0a0b0d}
.ce-workbench .kpi b{font-variant-numeric:tabular-nums}.ce-workbench .kpi span{font-size:.8125rem}.ce-workbench .kpi small{font-size:.75rem}
.ce-workbench #ce-analysis-state{font-family:Inter,Arial,sans-serif;background:#f5f5f5;border-color:#bec1c7;padding:16px 20px}
.ce-workbench .toolbar label{gap:8px;line-height:1.5}.ce-workbench .toolbar :is(button,select){min-height:44px}
.ce-workbench details>summary{padding-block:14px}.ce-workbench summary:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.ce-workbench main{padding-inline:20px}.ce-workbench #hub-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.ce-workbench #hub-nav button{text-align:start;font-size:.875rem;padding:12px}.ce-workbench header .workbench-logo{max-width:230px}.ce-workbench :is(.inputgrid,.plan-grid){grid-template-columns:minmax(0,1fr)!important}.ce-workbench .toolbar{align-items:stretch}.ce-workbench .toolbar label{min-width:0;max-width:100%;flex-wrap:wrap}.ce-workbench .toolbar button{font-size:.875rem;flex:1 1 140px}.ce-workbench :is(th,td){font-size:.875rem;padding:12px}.ce-workbench .portal-work-nav{flex-wrap:wrap;gap:8px}.ce-workbench .portal-work-nav nav{gap:12px;flex-wrap:wrap}.hero{padding-top:42px}.hero h1{font-size:clamp(40px,11vw,62px)}}

@media(max-width:760px){.ce-workbench #hub-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-inline:contain;padding-bottom:8px}.ce-workbench #hub-nav button{flex:0 0 auto;white-space:nowrap;max-width:none;padding:12px 16px}.ce-workbench #hub-nav button:is([aria-selected=true],[aria-current=page],.active){background:#0a0b0d;color:#fff}.ce-workbench main>header{margin-block:20px}.ce-workbench main>header img{max-width:210px}}

.ce-workbench #r7-nav button{min-height:48px;font-size:.9375rem}.ce-workbench #r7-nav button[aria-current=page]{background:#0a0b0d;color:#fff;border-color:#0a0b0d}
@media(max-width:760px){.ce-workbench #r7-nav{display:flex!important;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-inline:contain;gap:6px;padding-bottom:8px}.ce-workbench #r7-nav button{flex:0 0 auto;width:auto!important;max-width:none;white-space:nowrap;padding:12px 16px}.ce-workbench #hub-title{font-size:1.125rem;margin-block:18px}.ce-workbench header h1{font-size:28px;line-height:1.2}.ce-workbench header .title p{font-size:.875rem}}

/* CASA ENERGY layout correction 2026-10-25: bounded original wordmarks and paired table colours. */
.ce-workbench [data-casa-report-brand]{margin:0 0 18px;break-inside:avoid}
.ce-workbench :is(.ce33,.ce-profit,[data-casa-report-brand]) img[alt="CASA ENERGY"]{display:block;width:240px;max-width:100%;height:auto;object-fit:contain;margin-block:0 16px}
.ce-workbench :is(.ce33,.ce-profit,.cecost-scroll) th{background:#262626;color:#fff}
.ce-workbench :is(.ce33,.ce-profit,.cecost-scroll) th :is(a,span,strong,small){color:inherit}
@media(max-width:760px){.ce-workbench :is(.ce33,.ce-profit,[data-casa-report-brand]) img[alt="CASA ENERGY"]{width:220px;max-width:100%}}
