/* HOMEBASE IVORY · accessible light surface · 2026-10-14
   Loaded after the historical stylesheet so previous features remain intact.
   Primary canvas is the requested exact #F9F6EE. */

:root{
 color-scheme:light;
 --bg:#F9F6EE;
 --panel:#FFFDF9;
 --panel2:#F5F1E8;
 --panel3:#F1EBE0;
 --text:#20241F;
 --muted:#5C625B;
 --line:#E3DDCF;
 --accent:#B0C27F;
 --accent-soft:#E9EED9;
 --warn:#946123;
 --danger:#A84037;
 --info:#4A7382;
 --ok:#4C703C;
 --cyan:#3F7176;
 --earth-copper:#966D4A;
 --earth-sand:#756541;
}

html{background:#F9F6EE;color:var(--text);color-scheme:light}
body{background:#F9F6EE!important;color:var(--text)!important}
::selection{background:#DDE7BB;color:#20241F}
.shell{max-width:980px}
.topbar h1{color:#172018;font-weight:850}
.topbar .eyebrow,.eyebrow{color:#686D66!important}
.status,.identity{color:#555E55}
.status{background:transparent;border-color:var(--line)}
.status .dot,.dot{background:#6D8A4A!important;box-shadow:0 0 0 3px #E7EDDA!important}
.summary,.section-note,.source-note,.mini-label,
.zsd-muted,.zsd-money-note{color:var(--muted)!important}
.source-note{font-size:11px}
footer{color:#687069!important;border-top:1px solid var(--line)!important}
footer span{color:#687069}

/* Main reading surfaces, including all existing functional sections. */
.hero,.attention,.panel,.overview-card,.subpanel,.more-group,
.capture-dialog,.library-dialog,dialog{
 background:var(--panel)!important;
 border-color:var(--line)!important;
 box-shadow:0 5px 22px rgba(81,64,38,.035)!important;
 color:var(--text)!important;
}
.card,.row,.shopping-item,.metric,.forecast-day,.climate-card,
.weather-now,.integration-row,.finance-stage,.vehicle-tco-card,
.entity-tile,.finance-review,.finance-summary,.home-summary-line{
 background:var(--panel2)!important;
 border-color:var(--line)!important;
 color:var(--text)!important;
}
.card{box-shadow:none!important}
.more-group>summary{color:var(--text)}
.more-finance-entry{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}
.more-finance-icon,.finance-stage-icon{background:var(--accent-soft)!important;color:#4E6734!important}
.forecast-day,.climate-card{background:#F7F3EB!important}
.weather-now,.climate-overview,.energy-summary,.energy-period-summary>div,
.energy-price-box,.integration-row,.stage-chips span{
 background:#F5F1E8!important;
 border-color:var(--line)!important;
 color:var(--text)!important;
}
.stage-chips span{color:#52624F!important}
.weather-glance,.v2-welcome .weather-glance{
 background:var(--panel2)!important;
 border-color:var(--line)!important;
 color:var(--text)!important;
}
.weather-glance-main b,.weather-now-temp,.weather-now-stats b{color:var(--text)!important}
.weather-glance-meta,.weather-now-desc{color:var(--muted)!important}
.weather-svg,.ui-icon{color:inherit}
.weather-now-icon .weather-svg,.climate-card .ui-icon{color:#617947}
.weather-forecast .forecast-temp,.climate-value b{color:var(--text)}
.empty{background:#F8F5EF!important;border-color:var(--line)!important;color:var(--muted)!important}
.empty.success{background:#ECF2E0!important;color:#47623F!important}
.context-block,.capture-result,.info-box,.capture-preview-card,.understanding,
.finance-stage,.capture-preview-row{
 background:var(--panel2)!important;
 border-color:var(--line)!important;
 color:var(--text)!important;
}
.context-details,.structured-memory,.context-item,.context-title{color:var(--muted)!important}
.structured-memory{border-color:#A9B696}
.tag,.participant-chip{background:#F1EDE3!important;border-color:#DDD7CB!important;color:#49514A!important}
.tag.entity,.tag.exact-time{color:#416C75!important;border-color:#B9CCD0!important}
.tag.warn{color:#8D5B16!important;border-color:#E6D3AA!important}
.tag.danger{color:#A84037!important;border-color:#E3B5AD!important}

/* Inputs, focus states, action semantics and modal layers. */
input,select,textarea{
 background:#FFFEFA!important;
 border-color:#CFC7B9!important;
 color:var(--text)!important;
 caret-color:#415E30;
}
input::placeholder,textarea::placeholder{color:#727870!important;opacity:1}
input:focus-visible,select:focus-visible,textarea:focus-visible,
button:focus-visible,summary:focus-visible{
 outline:3px solid #7E9B55!important;
 outline-offset:2px;
}
input[type="checkbox"],input[type="radio"]{accent-color:#607F3F}
button{
 color:#20271C!important;
 background:var(--accent)!important;
 border-color:#A7BA73!important;
 box-shadow:none!important;
}
button:not(:disabled):hover{filter:brightness(.97)}
button:disabled{opacity:.55}
.ghost,.danger-ghost,.capture-dialog .ghost{
 background:#F7F3EA!important;
 border-color:#DCD5C8!important;
 color:#29342B!important;
}
.ghost:hover,.capture-dialog .ghost:hover{background:#EFEBE0!important;color:var(--text)!important}
.danger-ghost{color:#A54035!important;border-color:#DDB7AF!important}
.delete-item,.delete-item:hover{
 background:#A93F38!important;
 border:1px solid #933831!important;
 color:#FFFFFF!important;
}
#captureSubmitBtn:disabled{
 background:#E0E3D6!important;
 border-color:#CFD2C8!important;
 color:#62685D!important;
 opacity:1!important;
}
.capture-preview-warning{
 background:#FFF3DD!important;
 border-color:#DFC391!important;
 color:#805414!important;
}
.capture-preview-warning span{color:#805414!important}
.dialog-capture textarea{background:#FFFEFA!important}
dialog::backdrop{background:rgba(28,35,26,.42)}
.update-banner,.offline-banner,.toast{
 background:#FFFDF9!important;
 color:#20241F!important;
 border-color:var(--line)!important;
 box-shadow:0 12px 38px rgba(38,44,32,.15)!important;
}

/* Neutral cards versus true warnings and overdue items. */
.card.is-overdue{
 background:#FDEDEB!important;
 border-color:#DFADA7!important;
 box-shadow:inset 3px 0 0 #AD4A40!important;
}
.card.is-overdue .eyebrow,.card.is-overdue .tag.danger,.overdue-group .today-group-title{color:#A63830!important}
.card.is-attention{
 background:#FFF7E8!important;
 border-color:#E7D3AF!important;
}
.card.is-attention .tag:not(.entity):not(.exact-time){color:#875711!important;border-color:#D9B977!important}
.paddock-card{background:#EFF4F5!important;border-left:3px solid #4A7382!important}
.paddock-card .eyebrow,.paddock-card .tag.exact-time{color:#365E6A!important}

/* Keep the floating dock readable in the ivory theme. */
.app-tabs{
 background:rgba(255,253,248,.97)!important;
 border:1px solid #E2DBCD!important;
 box-shadow:0 9px 26px rgba(49,45,31,.10)!important;
 backdrop-filter:blur(16px);
}
.app-tabs .app-tab:not(.capture-tab){
 background:transparent!important;
 color:#646C64!important;
 border:0!important;
}
.app-tabs .app-tab:not(.capture-tab) .ui-icon{color:#646C64!important}
.app-tabs .app-tab:not(.capture-tab).active{
 background:#EAF0DA!important;
 color:#243325!important;
}
.app-tabs .app-tab:not(.capture-tab).active .ui-icon{color:#344C30!important}
.app-tabs .app-tab:not(.capture-tab).active::after{display:none!important}
.app-tabs .capture-tab{
 background:var(--accent)!important;
 color:#223020!important;
 border-color:var(--accent)!important;
}
.app-tabs .capture-tab .ui-icon{color:#223020!important}
.today-status-item,.today-status-item:hover{background:transparent!important;color:var(--muted)!important}
.today-status-item span,.today-status-item b{color:#566054!important}
.today-status-separator{color:#9C9A91}
.today-status-strip{border-color:var(--line)!important}

/* ZSD Energy: clear hierarchy, subtle summary cards, graph, easy daily data. */
#zsdEnergyPanel{background:var(--panel)!important}
.zsd-source-tag{background:#F5F1E8;color:#4D5C4A!important;border-color:var(--line)}
.zsd-highlight,.zsd-summary-metric{
 background:#F4F1E8!important;
 border:1px solid #EEE7D9!important;
 border-radius:15px;
 gap:6px;
 padding:16px;
}
.zsd-highlight{background:linear-gradient(130deg,#F0F3E5,#F7F2E7)!important}
.zsd-overline{color:#555D55!important;font-size:10px;line-height:1.4}
.zsd-big-value,.zsd-compare-value{color:#1B251E!important;letter-spacing:-.02em}
.zsd-big-value{font-size:clamp(23px,3.5vw,29px)!important}
.zsd-decrease{color:#4C702F!important}
.zsd-increase{color:#A44328!important}
.zsd-delta{font-size:12px}
.zsd-chart-head{margin:0 0 10px}
.zsd-chart-head h3{font-size:15px;font-weight:800}
.zsd-year-select{background:#F8F5EF!important;border-color:var(--line)!important}
.zsd-comparison-chart{
 background:#FFFEFA;
 border:1px solid var(--line);
 border-radius:15px;
 padding:16px 14px 10px;
}
.zsd-chart-legend{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:4px 0 10px;color:var(--muted);font-size:11px}
.zsd-chart-legend span{display:inline-flex;align-items:center;gap:5px}
.zsd-chart-legend i{width:10px;height:10px;display:inline-block;border-radius:50%}
.zsd-chart-legend .prior{background:#D8CDB6}
.zsd-chart-legend .current{background:#789457}
.zsd-bars-plot{display:grid;grid-template-columns:repeat(var(--month-count),minmax(0,1fr));gap:6px;align-items:end;position:relative;min-height:195px;padding-top:16px;border-bottom:1px solid #D9D4C9;
 background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#ECE7DD calc(25% - 1px),#ECE7DD 25%);
}
.zsd-month-col{
 display:flex!important;
 flex-direction:column;
 align-items:center;
 justify-content:flex-end;
 background:transparent!important;
 color:var(--text)!important;
 border:0!important;
 padding:0 1px 6px!important;
 min-width:0!important;
 min-height:0!important;
 position:relative;
 box-shadow:none!important;
 cursor:pointer;
}
.zsd-month-col:hover .zsd-vertical-bar,
.zsd-month-col:focus-visible .zsd-vertical-bar{filter:brightness(.9)}
.zsd-vertical-bars{height:164px;display:flex;align-items:flex-end;justify-content:center;gap:3px;width:100%}
.zsd-vertical-bar{display:block;width:min(48%,22px);border-radius:5px 5px 0 0;min-height:0;transition:height .12s ease}
.zsd-vertical-bar.prior{background:#D8CDB6}
.zsd-vertical-bar.current{background:#789457}
.zsd-chart-month{position:absolute;bottom:-24px;font-size:10px;color:#475147}
.zsd-chart-footnote{margin:30px 1px 2px;font-size:11px;color:var(--muted)}
.zsd-chart-explanation{color:var(--muted);font-size:11px}
.zsd-chart-summary{color:#4F594F;font-size:12px;margin-top:4px}
.zsd-chart-row{color:var(--text)!important}
.zsd-compact-days{grid-template-columns:repeat(3,minmax(0,1fr))}
.zsd-compact-day{background:#F7F4EC;border-color:#EEE7DD;color:#303830}
.zsd-compact-day b{color:#1F2820}
.zsd-import-details{border-color:var(--line)!important}
.zsd-import-details>summary{color:#424A3F;font-size:12px}
.zsd-day-head h3{color:var(--text)}
.zsd-month-details{border:1px solid var(--line);padding:14px;border-radius:14px;background:#FFFDF9}
.zsd-chart-panel{display:grid;gap:3px}
.zsd-tech-note{margin-top:8px;color:var(--muted);font-size:11px}
.zsd-energy-help{margin:10px 0 0}
.zsd-energy-help summary{font-size:11px;color:#566253;cursor:pointer}

/* Supporting information remains legible, never inverted or developer-focused. */
.integration-badge{background:#F1EDE3!important;color:#52654F!important;border-color:var(--line)!important}
.integration-badge.ok{background:#E6F0DA!important;color:#416230!important;border-color:#AEC59D!important}
.integration-badge.ready{background:#E9EFF0!important;color:#3C6973!important}
.capture-preview-row b,.finance-summary b,.metric b{color:var(--text)}
.shopping-item.checked .shopping-text{color:#717970}
.snooze-menu>summary{color:var(--muted)!important;border-color:var(--line)}
.snooze-options,.capture-options{border-color:var(--line)}
.zsd-year-card{background:#F5F1E8!important;border-color:var(--line)}
.energy-history-bar,.zsd-month-bar{background:#E7E4D9!important;border-color:var(--line)}
.energy-history-bar i,.zsd-month-bar i{background:#789457!important}
.understanding{color:var(--text)!important}
@media(max-width:700px){
 .shell{padding-left:12px;padding-right:12px}
 .topbar h1{color:var(--text)!important}
 .zsd-summary-strip{gap:8px}
 .zsd-highlight,.zsd-summary-metric{padding:12px}
 #view-today .today-attention,#view-today .next-panel{
  background:var(--panel)!important;
  border:1px solid var(--line)!important;
  padding:14px!important;
  border-radius:15px!important;
 }
 .zsd-comparison-chart{padding:12px 8px 10px}
 .zsd-bars-plot{gap:3px;min-height:177px}
 .zsd-vertical-bars{height:148px;gap:2px}
 .zsd-vertical-bar{width:min(46%,18px)}
 .zsd-compact-days{grid-template-columns:repeat(2,minmax(0,1fr))}
 .app-tabs{background:rgba(255,253,249,.97)!important}
}
@media(max-width:390px){
 .zsd-bars-plot{gap:1px}
 .zsd-compact-days{grid-template-columns:1fr}
 .zsd-summary-strip{grid-template-columns:1fr 1fr}
}

/* Remove inherited dark surfaces from the original theme. */
#weatherOutfit,.weather-outfit,#energySummary,.energy-overview,#climateOverview,.home-summary-line{
 background:#F5F1E8!important;color:#20241F!important;border:1px solid #DED7C9!important;
}
#weatherOutfit *,#energySummary *,#climateOverview *{color:inherit!important}
#weatherOutfit b,#energySummary b,#energySummary strong,#climateOverview b,#climateOverview strong{color:#20241F!important}
.home-panel .section-head.compact,.climate-panel .section-head.compact{
 display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
}
.home-panel .section-head.compact>button,.climate-panel .section-head.compact>button{margin:0!important;flex-shrink:0}
.zsd-switcher{display:flex;gap:6px;flex-wrap:wrap}
.zsd-mode-button{padding:8px 11px!important;font-size:12px!important}
.zsd-mode-button.chosen{background:#E4EBD2!important;border-color:#A8BE83!important;color:#254027!important}
.zsd-period-title{font-size:14px!important;font-weight:800;margin:12px 0 7px!important}
.zsd-forecast{border:1px solid #DADFCC;background:#F0F3E8;padding:14px;border-radius:13px;display:grid;gap:5px}
.zsd-forecast strong{color:#223124}
.zsd-forecast p{margin:0}
.zsd-month-balance{font-size:12px;color:#465849}
.zsd-show-days{margin:8px 0!important}
.zsd-month-col.selected .zsd-vertical-bar.current{background:#426D37!important}
.zsd-month-col.selected .zsd-chart-month{color:#294D31;font-weight:900}
.zsd-month-col:disabled{opacity:.45!important;cursor:default}
@media(max-width:700px){
 .home-panel,.climate-panel{padding:14px!important}
 .home-panel .section-head.compact h2,.climate-panel .section-head.compact h2{font-size:19px}
 #view-home{padding-bottom:122px!important}
 .zsd-chart-head{gap:8px}
 .zsd-switcher{gap:4px}
 .zsd-mode-button{font-size:11px!important;padding:7px 8px!important}
}

/* Daily climate-heating dashboard: historical cost, not instant consumption. */
#energySummary .home-summary-primary{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:5px 10px}
#energySummary .home-summary-primary b{font-size:20px;letter-spacing:-.03em}
#energySummary .home-summary-meta{font-size:12px;color:#4C594A!important}
.energy-period-summary>div{background:#F5F1E8!important;border-color:#DED7C9!important;min-width:0}
.energy-period-summary>div b{color:#20241F;overflow-wrap:anywhere}
.energy-period-summary small{color:#56604F;font-size:10px}
.energy-price-box{background:#F7F3EB!important;border-color:#DED7C9!important}
.energy-price-box strong{font-size:12px;color:#31442D}
.energy-price-box .source-note{line-height:1.55;font-size:11px;margin-top:5px}
.energy-history-row{grid-template-columns:68px minmax(20px,1fr) minmax(132px,auto);gap:9px}
.energy-history-row b{font-size:10px;white-space:nowrap;color:#223425}
.energy-card .energy-main{font-size:19px}
.energy-card .energy-kwh-row{margin-top:4px}
@media(max-width:450px){
 .energy-period-summary{grid-template-columns:1fr 1fr!important}
 .energy-period-summary>div:last-child{grid-column:1/-1}
 .energy-history-row{grid-template-columns:65px minmax(16px,1fr) minmax(121px,auto);gap:5px}
 .energy-history-row b{font-size:9px}
}
