[hidden]{display:none!important}.login-panel{width:min(420px,calc(100% - 32px));margin:10vh auto;padding:28px;background:white;border:1px solid #dce3dd;border-radius:16px}.login-panel .brand{color:#0c3038;margin-bottom:24px}.login-panel h1{font-size:1.6rem}.login-panel form{display:grid;gap:16px}.login-panel label{display:grid;gap:6px}.login-panel input{width:100%;box-sizing:border-box;min-height:44px}.login-panel #login-status{font-size:.85rem;min-height:1.5em}#application aside nav{margin-top:38px}#climate-content{padding:24px}.sidefoot button{border:1px solid #91b4b6}.cloud-stations h3{margin:0}#application .workspace{min-height:100vh}@media(max-width:760px){#application aside{position:static;width:auto;padding:14px;display:flex;align-items:center;justify-content:space-between}#application aside nav{margin:0}#application .sidefoot{position:static}#application .workspace{margin-left:0}#application .navlabel{display:none}#application .brand small{display:none}#climate-content{padding:14px}.login-panel{margin:5vh auto}}
.header-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.header-status [data-app-version]{font-size:12px;color:var(--muted);white-space:nowrap}#application header{gap:12px}@media(max-width:520px){.header-status{gap:6px}.header-status [data-app-version]{font-size:10px}}

.energy-latest{gap:12px;margin:14px 0}.energy-latest .card{padding:14px}.energy-latest h3{margin:0}.energy-inline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}.energy-inline strong{display:block;font-size:20px}.energy-inline small{font-size:12px;font-weight:400}.energy-pv-key{display:inline-block;width:10px;height:10px;background:#f0b13c}@media(max-width:650px){.energy-inline{grid-template-columns:repeat(2,minmax(0,1fr))}}

.climate-chart .chart rect.energy-pv-bar{fill:#f0b13c}.climate-chart .chart rect.energy-grid-bar{fill:#126b87}

/* Programmatic main focus must not draw a frame around the whole page. */
#climate-content:focus{outline:none}

/* Factures: keep the established archive compact on desktop and mobile. */
#climate-content .headline-value{font-size:34px;margin-top:10px;letter-spacing:-1px}#climate-content .invoice-form input{padding:8px}#climate-content .forecast-evolution table{font-size:13px}#climate-content .consumption-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:650px){#climate-content .consumption-grid{grid-template-columns:1fr}#climate-content .headline-value{font-size:30px}}

.billing-page .section{margin-top:12px}.billing-page .card{padding:14px}.billing-page .sectionhead{margin-bottom:10px;gap:12px}.billing-page h1{font-size:28px;margin:0}.billing-page h2{font-size:18px;margin:0 0 8px}.billing-page h3{font-size:16px}.billing-page .caption{font-size:12px;line-height:1.45;margin:8px 0}.billing-page .grid{gap:12px}.billing-page .eyebrow{margin:0 0 8px}.billing-page th,.billing-page td{padding:9px 10px}.billing-page .headline-value{margin:8px 0}.billing-page .card details>summary{font-size:13px}.billing-page .subtext{font-size:12px}.billing-page .tablewrap{overflow-x:auto}.billing-page .sectionhead h2{margin:0}

.summary-page{display:grid;gap:12px}.summary-page>.eyebrow{margin:0}.summary-page>h1{font-size:28px;margin:0 0 2px}.summary-page .card{padding:14px}.summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.summary-metric{display:grid;gap:8px;align-content:start}.summary-metric>strong{font-size:30px;font-variant-numeric:tabular-nums}.summary-metric small{font-size:14px;font-weight:400}.summary-page .caption{font-size:12px;line-height:1.4;margin:0}.summary-page h2,.summary-page h3{margin:0;font-size:17px}.summary-page .sectionhead{margin:0 0 8px;gap:12px}.summary-page .climate-chart-summary{margin:0}.summary-page .chart{max-height:195px}.summary-page details{font-size:12px}.summary-page details p{line-height:1.5;margin:8px 0}.summary-weather{display:grid;grid-template-columns:1.25fr 1fr 1fr auto;gap:14px;align-items:center}.summary-weather>div{display:grid;gap:5px}.summary-weather strong{font-size:21px}.summary-updates>h2{margin-bottom:8px}.summary-updates>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.summary-update{display:grid;gap:7px;align-content:start}.summary-update>div{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.summary-update .pill{font-size:10px;padding:4px 6px}.state-ok{background:#e2efdf;color:#205636}.state-attention{background:#fff0d4;color:#84510b}.state-pending{background:#edf0eb;color:#52646b}.summary-page .climate-chart details{margin-top:5px}@media(max-width:700px){.summary-metrics,.summary-updates>div{grid-template-columns:1fr}.summary-metric{grid-template-columns:1fr auto}.summary-metric>strong{grid-column:2;grid-row:1 / span 2}.summary-metric>a{grid-column:1}.summary-weather{grid-template-columns:1fr 1fr}.summary-weather>a{align-self:end}.summary-page>h1{font-size:25px}}

/* Fold invoice history and archive by default, preserving filters and comparison actions. */
.billing-page .invoice-archive>summary,.billing-page .consumption-history>summary{font-size:14px;font-weight:600;cursor:pointer}.billing-page .invoice-archive[open]>summary,.billing-page .consumption-history[open]>summary{margin-bottom:10px}.billing-page .invoice-archive .sectionhead{margin-top:10px}.billing-page .invoice-archive>summary .caption{font-weight:400}

.grid-upload-panel{margin:0 0 14px}.grid-upload-panel h3{margin:0 0 8px}.grid-upload-panel form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.grid-upload-panel label{display:grid;gap:6px;font-size:13px}.grid-upload-panel .caption{font-size:12px;line-height:1.45}.grid-upload-review{display:grid;gap:8px;padding-top:10px;font-size:13px}.grid-upload-review button{justify-self:start}

.energy-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.energy-period-label{margin:0 0 8px;font-size:12px;color:var(--muted)}#energy-filter{gap:12px;flex-wrap:wrap}.energy-latest:not(.two) .card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;align-items:center}.energy-latest:not(.two) .cloud-temp{grid-column:2;grid-row:1 / span 3}.energy-latest:not(.two) .sectionhead{margin:0}.energy-latest:not(.two) p{margin:0}

.energy-page .section{margin-top:12px}.energy-page .filters{margin:14px 0 8px}.energy-page #energy-error:empty{display:none}.energy-page .energy-latest{margin:10px 0;gap:12px}.energy-page .energy-latest .caption{margin:6px 0;font-size:12px;line-height:1.4}.energy-page .energy-latest .sectionhead{margin-bottom:8px}.energy-page .cloud-temp{font-size:26px}.energy-page .climate-chart{margin-top:12px}.energy-page .energy-latest h3{font-size:16px}

.energy-latest.energy-three{grid-template-columns:repeat(3,minmax(0,1fr))}.energy-latest.energy-three .card{display:block}.energy-latest.energy-three .cloud-temp{display:block}.energy-consumption-method{font-size:12px;margin:4px 0 10px}.energy-consumption-method p{line-height:1.5}@media(max-width:700px){.energy-latest.energy-three{grid-template-columns:1fr}}

.energy-consumption-line{fill:none;stroke:#873c77;stroke-width:2.5}.energy-consumption-point{fill:#873c77;stroke:#fff;stroke-width:0.8}.energy-consumption-key{display:inline-block;width:14px;height:0;border-top:3px solid #873c77;vertical-align:middle;margin-right:4px}

.energy-hourly-legend{gap:12px 24px;align-items:center;flex-wrap:wrap}.energy-hourly-legend .energy-column-legend,.energy-hourly-legend .energy-line-legend{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.energy-hourly-legend .energy-column-legend>span{display:inline-flex;align-items:center;gap:4px}.energy-hourly-legend strong{font-size:inherit}.energy-hourly-legend b{font-weight:400;color:#63747a}.energy-consumption-halo{fill:none;stroke:#fff;stroke-width:5;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.energy-consumption-line{stroke-width:2.7;stroke-linejoin:round;stroke-linecap:round}.energy-consumption-point{r:2.7;stroke-width:1.1}

.energy-hourly-chart{position:relative}.energy-hour-hit{fill:transparent;stroke:none;cursor:crosshair}.energy-hour-hit.is-active{fill:rgba(14,60,72,.07);stroke:#526a73;stroke-width:.65;stroke-dasharray:3 3}.energy-hour-hit:focus{outline:none}.energy-hour-tooltip{position:absolute;z-index:2;top:91px;right:18px;max-width:calc(100% - 36px);padding:9px 12px;border:1px solid #cbd6ce;border-radius:7px;background:#fff;box-shadow:0 3px 12px #102e3826;color:#15343e;font-size:12px;line-height:1.6;font-variant-numeric:tabular-nums;pointer-events:none}.energy-hour-tooltip[hidden]{display:none}@media(max-width:600px){.energy-hour-tooltip{top:112px;font-size:11px;padding:6px 9px}}
.climate-chart .chart rect.energy-hour-hit{fill:transparent;stroke:none}.climate-chart .chart rect.energy-hour-hit.is-active{fill:rgba(14,60,72,.07);stroke:#526a73;stroke-width:.65;stroke-dasharray:3 3}

.energy-quality-notice{margin:8px 0 10px;padding:9px 12px;border:1px solid #e5cb93;border-radius:8px;background:#fff6e4;font-size:12px}.energy-quality-notice>summary{cursor:pointer;line-height:1.5}.energy-quality-label{font-weight:650;color:#805513;margin-right:6px}.energy-quality-notice .caption{line-height:1.5}.energy-quality-notice th,.energy-quality-notice td{padding:6px 9px;font-size:12px}.summary-page>.energy-quality-notice{margin:0}

/* Mobile navigation, inputs and private PWA install guidance. */
#connection-state{margin:0;padding:9px 14px;background:#fff0d4;color:#704b12;font-size:13px;text-align:center}
.install-button{font-size:12px;padding:8px 10px}.login-panel>.install-button{margin-top:10px;background:#edf1e8;color:#163a2b}#application .sidefoot{display:flex;gap:8px;flex-wrap:wrap;padding-left:0;padding-right:0}#application .sidefoot button{font-size:12px;padding:9px}
#install-guide{max-width:min(440px,calc(100% - 24px));border:1px solid #ccd6ce;border-radius:14px;padding:22px;color:var(--ink);background:var(--paper)}#install-guide::backdrop{background:#102b3670}#install-guide p{font-size:14px;line-height:1.6}#install-guide .caption{font-size:12px}
@media(max-width:760px){
 body{padding-bottom:calc(66px + env(safe-area-inset-bottom,0px))}#application aside{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));align-items:center}#application .brand{font-size:18px;gap:7px}#application .brand img{width:30px;height:30px}#application .sidefoot{margin:0;padding:0;gap:6px;justify-content:end}#application .sidefoot button{font-size:11px;min-height:38px;padding:8px}
 #application aside nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:7px 7px calc(7px + env(safe-area-inset-bottom,0px));background:var(--ink);border-top:1px solid #49626a}#application aside nav a{justify-content:center;text-align:center;font-size:12px;min-height:44px;padding:8px 4px;white-space:normal}
 #application .workspace{min-width:0;min-height:calc(100dvh - 120px)}#application header{height:auto;min-height:42px;padding:9px 12px;font-size:11px;flex-wrap:wrap;gap:5px}#application header .pill{font-size:9px;padding:4px 6px}.header-status{gap:6px}#climate-content{padding:12px;min-height:0;min-width:0}#application footer{padding:14px 12px;font-size:10px}
 input,select,textarea{font-size:16px;min-width:0;max-width:100%}button{min-height:42px}label{min-width:0}.filters{gap:8px;align-items:end}.filters>label{flex:1 1 130px;min-width:0}.filters input,.filters select{width:100%;min-height:42px}.filters button{flex:0 0 auto;padding:9px 14px}.sectionhead{gap:8px;flex-wrap:wrap}.card{min-width:0}.tablewrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .energy-page .cloud-temp{font-size:23px}.energy-page .energy-latest.energy-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.energy-page .energy-latest .card{padding:10px 8px}.energy-page .energy-latest .sectionhead{display:block}.energy-page .energy-latest h3{font-size:12px;line-height:1.4;min-height:34px}.energy-page .energy-latest .caption{font-size:10px}.energy-page .energy-latest .cloud-temp{font-size:19px;white-space:normal}.energy-page .energy-latest .sectionhead>.caption{display:block;margin-top:4px}.energy-inline{gap:8px}.energy-inline strong{font-size:17px}.energy-actions{gap:7px}.energy-actions button{font-size:12px;padding:8px 10px}.energy-hourly-legend{gap:7px;font-size:11px}.energy-hourly-chart .chart{width:100%;height:auto;min-height:150px}.energy-hour-tooltip{top:105px;font-size:11px;left:10px;right:10px;max-width:none}
 .climate-chart-filter{flex-wrap:wrap}.climate-chart-filter label{flex:1 1 120px;min-width:0}.climate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.climate-grid .card{padding:10px}.climate-grid h3{font-size:13px}.climate-grid .value{font-size:24px}.climate-grid .weather-line{gap:5px;flex-wrap:wrap}.climate-grid .caption{font-size:10px}.climate-chart{padding:12px}.climate-chart h2,.climate-chart h3{font-size:15px}
 .summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.summary-metric{display:flex;gap:5px}.summary-metric:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto}.summary-metric:last-child>strong{grid-column:2;grid-row:1/3}.summary-metric>strong{font-size:26px}.summary-page .card{padding:11px}.summary-updates>div{grid-template-columns:1fr;gap:7px}.summary-weather{gap:8px}.summary-page>h1{font-size:24px}
 .billing-page h1{font-size:25px}.billing-page .grid.two{grid-template-columns:1fr}.billing-page .contract-settings .three,.billing-page .contract-settings .four{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-page input{font-size:16px}.billing-page th,.billing-page td{padding:7px 8px}.billing-page .invoice-archive>summary,.billing-page .consumption-history>summary{font-size:13px}.billing-page .headline-value{font-size:30px}
}
@media(max-width:360px){.energy-page .energy-latest .cloud-temp{font-size:17px}#application aside nav a{font-size:11px}.climate-grid{grid-template-columns:1fr}.header-status .pill{display:none}}
@media(max-width:760px){.climate-chart-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.climate-chart-filter label{width:auto;min-width:0}.climate-chart-filter input,.climate-chart-filter select{width:100%;min-height:42px;font-size:16px}.climate-chart-filter button{grid-column:2;justify-self:end;min-height:42px}.climate-chart .chart text{font-size:18px}.climate-chart .chart{width:100%;max-width:100%}}
@media(max-width:760px){.summary-metric{flex-direction:column;align-items:flex-start}.summary-metric>strong{overflow-wrap:anywhere}.summary-metric:last-child{align-items:center}.summary-metric:last-child>strong{overflow-wrap:normal}}

.login-panel .brand small{color:var(--muted)}

.meter-result-line{display:flex;gap:1rem;flex-wrap:wrap;margin:12px 0}.meter-settings{margin-top:12px}.meter-settings input{max-width:130px}

/* Tariff periods: one compact row, details collapsed. */
.energy-periods{padding:12px 14px;margin:12px 0}.energy-periods .sectionhead{margin:0 0 9px;gap:8px;flex-wrap:wrap}.energy-periods h3{margin:0}.energy-periods-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line,#dce3dd);border-bottom:1px solid var(--line,#dce3dd);margin-bottom:8px}.energy-periods-grid>div{display:flex;flex-direction:column;gap:3px;padding:9px 12px}.energy-periods-grid>div+div{border-left:1px solid var(--line,#dce3dd)}.energy-periods-grid strong{font-size:1.18rem;line-height:1.25}.energy-periods-grid small{font-size:.72rem;font-weight:400}.energy-periods details p{max-width:75ch}.energy-periods details ul{padding-left:18px}@media(max-width:560px){.energy-periods-grid>div{padding:8px 6px}.energy-periods-grid strong{font-size:1rem}.energy-periods .sectionhead>.caption{font-size:.7rem}}

.tariff-key{display:inline-block;width:10px;height:10px}.tariff-P1{background:#b84437}.tariff-P2{background:#c48b17}.tariff-P3{background:#167486}

.climate-chart .chart rect.tariff-bar-P1{fill:#b84437}.climate-chart .chart rect.tariff-bar-P2{fill:#c48b17}.climate-chart .chart rect.tariff-bar-P3{fill:#167486}

.tariff-donut-layout{display:flex;align-items:center;justify-content:center;gap:32px;padding:10px}.tariff-donut-layout svg{width:220px;max-width:100%;flex-shrink:0}.donut-P1{stroke:#b84437}.donut-P2{stroke:#c48b17}.donut-P3{stroke:#167486}.donut-total{font-size:24px;font-weight:700;fill:var(--ink)}.donut-unit{font-size:12px;fill:var(--muted)}.tariff-donut-values{min-width:230px}.tariff-donut-values>div{display:grid;grid-template-columns:45px 1fr 50px;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.tariff-donut-values small{font-weight:400}.tariff-donut-values p{line-height:1.6}@media(max-width:560px){.tariff-donut-layout{flex-direction:column;gap:4px;padding:4px}.tariff-donut-values{min-width:0;width:100%}.tariff-donut-layout svg{width:190px}}

.app-update-notice{position:fixed;z-index:30;top:12px;left:50%;transform:translateX(-50%);max-width:calc(100% - 24px);background:#fff8df;border:1px solid #d5b867;border-radius:10px;padding:8px 12px;box-shadow:0 3px 12px #142d3622;display:flex;align-items:center;gap:12px;font-size:13px;flex-wrap:wrap}.app-update-notice[hidden]{display:none}.app-update-notice button{padding:6px 10px;font-size:13px}.app-update-notice small{flex-basis:100%;max-width:45ch}

.forecast-days{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.forecast-day{padding:14px}.forecast-day h3{margin:0}.forecast-day .weather-line{font-size:13px}@media(max-width:850px){.forecast-days{grid-template-columns:1fr}.forecast-day .cloud-temp{font-size:24px}}

.forecast-day{padding:12px}.forecast-day p{margin:5px 0;line-height:1.4}.forecast-day .sectionhead{margin-bottom:8px}.forecast-day .weather-line{padding:6px 0}.forecast-day .cloud-temp{font-size:24px}

/* v0.23: primary values and graph first; secondary information folded. */
.energy-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;align-items:start}
.energy-detail-grid>.section{margin:0}.energy-detail-grid>details[open]{grid-column:1 / -1}.energy-detail-grid>.energy-consumption-method{margin:0;font-size:14px}
#climate-content details.card:not([open]){padding:12px 14px}#climate-content details>summary{cursor:pointer;line-height:1.5}#climate-content details[open]>summary{margin-bottom:10px}
.energy-page>.climate-chart{margin-top:10px}.energy-page .energy-periods{padding:10px 14px}.energy-page .energy-periods-grid>div{padding-top:6px;padding-bottom:6px}.energy-detail-grid details{min-width:0}
.station-details,.forecast-day-details{font-size:12px;margin-top:8px}.station-details .weather-facts{margin-top:10px}.climate-station .weather-status{margin-top:10px}.forecast-page>.section,.forecast-page>details{margin-top:10px}
.billing-page details.card:not([open]),.summary-page details.card:not([open]){margin-top:8px}
@media(min-width:1100px){#climate-content{max-width:1500px;width:100%;box-sizing:border-box}.energy-page .climate-chart .chart{max-height:245px}}
@media(max-width:760px){.energy-detail-grid{grid-template-columns:1fr;gap:8px}.energy-detail-grid>details[open]{grid-column:auto}#climate-content details.card:not([open]){padding:10px 12px}.station-details,.forecast-day-details{font-size:11px}}

/* v0.24: compact upload outcome, primary graph before tariff detail. */
.energy-source-dates{margin:4px 0 0;font-size:12px}.energy-page>.sectionhead{align-items:center}.grid-upload-success{border:1px solid #c6d8c6;background:#eef5eb;border-radius:8px;padding:9px 12px;margin:8px 0;font-size:12px}.grid-upload-success p{margin:8px 0 0}.grid-upload-steps{font-size:13px;margin:8px 0}.grid-upload-panel .sectionhead h3{margin:0}.grid-upload-panel #grid-upload-close{background:transparent;color:var(--ink);border:1px solid #ccd6ce;font-size:12px;padding:6px 12px}.grid-upload-panel form{margin-top:10px}.energy-periods-fold .energy-periods{border:0;padding:8px 0 0;box-shadow:none}.energy-periods-fold .energy-periods>.sectionhead{display:none}

#tariff-simulator-form{margin:12px 0;gap:10px;flex-wrap:wrap}#tariff-simulator-form input{max-width:145px}.simulator-value{display:block;font-size:22px;margin:6px 0}#tariff-simulator [data-tariff-result]{font-size:13px}

.calendar-years{margin-top:12px;gap:14px}.calendar-years article{min-width:0;padding:10px;border:1px solid #dce3dd;border-radius:8px}.calendar-years button{margin-top:10px;font-size:12px}#billing-calendars .caption{line-height:1.6}

.forgot-panel{margin:16px 0;font-size:14px}.forgot-panel summary{cursor:pointer}.forgot-panel form{margin-top:12px}#reset-form[hidden]{display:none}#return-login{display:inline-block;margin-top:16px}

/* v0.29.1: access screen, intrinsic height; scoped to avoid altering dashboards. */
main.login-panel{width:calc(100% - 32px);max-width:420px;min-height:0;height:auto;margin:clamp(24px,9vh,96px) auto;padding:30px;border:1px solid #dce4df;border-radius:18px;background:#fff;box-shadow:0 12px 36px #142d3609}
.login-panel .brand{margin:0 0 24px;font-size:23px;gap:12px}.login-panel .brand img{width:44px;height:44px}.login-panel .brand small{font-size:12px}
.login-panel h1{font-size:26px;letter-spacing:-.6px;line-height:1.2;margin:0 0 8px}.login-panel .login-intro{font-size:14px;color:var(--muted);margin:0 0 24px;line-height:1.5}
.login-panel form{display:grid;gap:10px}.login-panel form label{display:grid;gap:7px;font-size:13px;font-weight:500}.login-panel input{width:100%;min-width:0;min-height:46px;border:1px solid #b8c7c5;border-radius:8px;padding:11px 12px;background:#fff;color:var(--ink);font-size:16px}
.login-panel input:focus-visible{outline:2px solid #27654a;outline-offset:2px}.login-panel button{min-height:44px;border-radius:8px;font-size:14px}.login-panel #login-button{margin-top:8px;font-weight:600;width:100%}.login-panel #login-button:disabled{opacity:.65}
.login-panel .password-field{display:flex;align-items:center;position:relative}.login-panel .password-field input{padding-right:78px}.login-panel button.password-toggle{position:absolute;right:5px;min-height:36px;padding:6px 9px;background:transparent;color:#245e65;border:0;font-size:12px;font-weight:600}
.login-panel .forgot-panel{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line)}.login-panel .forgot-panel summary{font-size:13px;color:#245e65;font-weight:500}.login-panel .forgot-panel form{margin-top:14px}.login-panel p.caption{font-size:11px;margin:16px 0 0}.login-panel #login-status:empty,.login-panel #forgot-status:empty{display:none}.login-panel #login-status,.login-panel #forgot-status,.login-panel #recovery-status{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.login-panel .install-button{margin-top:12px;min-height:36px;background:#edf1e8;color:var(--ink);padding:7px 12px;font-size:12px}
@media(max-width:480px){main.login-panel{width:calc(100% - 24px);margin:24px auto;padding:24px 20px;border-radius:14px}.login-panel h1{font-size:24px}.login-panel .brand{margin-bottom:22px}}

/* v0.29.2: full access-page landscape; dashboard background unaffected. */
body:has(>main.login-panel:not([hidden])){display:flow-root;min-height:100svh;isolation:isolate;background:#e9eeea}
body:has(>main.login-panel:not([hidden]))::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 78% 23%,#f6d883 0 5.5%,#f6d88300 5.6%),radial-gradient(ellipse at 74% 18%,#f5e7be95 0,#f5e7be00 48%),linear-gradient(155deg,#ecf2ee 0%,#f3f0e4 51%,#d7e5de 100%)}
body:has(>main.login-panel:not([hidden]))::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(168deg,transparent 0 66%,#b9d0c4 66% 78%,#97b8ab 78% 88%,#739b8c 88%);opacity:.42}
body:has(>main.login-panel:not([hidden])) main.login-panel{border-color:#ffffffc9;box-shadow:0 18px 60px #173e3520;background:#fffffff5}
@media(max-width:600px){body:has(>main.login-panel:not([hidden]))::before{background:radial-gradient(circle at 88% 11%,#f6d883 0 8%,transparent 8.2%),linear-gradient(155deg,#ecf2ee,#f2efdf 55%,#d3e3d9)}body:has(>main.login-panel:not([hidden]))::after{background:linear-gradient(168deg,transparent 0 75%,#b9d0c4 75% 84%,#97b8ab 84% 92%,#739b8c 92%)}}

