.demo-entry { position:absolute; z-index:5; bottom:24px; left:5vw; color:#b8d5f7; text-decoration:none; font-size:14px; }.demo-entry span { margin-left:16px; }.prototype-note { display:none; }
.demos { padding:100px max(50px,7vw) 70px; background:radial-gradient(ellipse at 22% 50%,#11264477,transparent 45%),#060a13; border-top:1px solid #7196d522; scroll-margin-top:20px; }
.demo-heading { max-width:760px; }.eyebrow { color:#92b8db; font-size:11px; letter-spacing:.19em; }.demo-heading h2 { font-size:clamp(42px,4.5vw,68px); line-height:1.09; font-weight:450; letter-spacing:-.04em; margin:22px 0; }.demo-heading h2 span { color:#9fb0c9; }.demo-heading>p:not(.eyebrow) { color:#b4c2d6; font-size:18px; }.demo-heading .demo-disclosure { font-size:12px!important; color:#94a6c1; margin-top:24px; }
.demo-tabs { display:flex; gap:12px; margin:45px 0 35px; }.demo-tabs button,.demo-navigation button,.demo-progress button { color:#b4c4dc; border:1px solid #819bc433; border-radius:30px; background:transparent; padding:12px 20px; cursor:pointer; min-height:44px; }.demo-tabs button[aria-pressed=true] { background:#193a5266; border-color:#75d5ec88; color:#e3faff; }
.demo-stage { display:grid; grid-template-columns:minmax(300px,1fr) 100px minmax(330px,1.1fr); align-items:center; min-height:520px; gap:28px; }.document-space { position:relative; padding:22px; }.document-halo { position:absolute; inset:10%; background:#479bee22; filter:blur(55px); border-radius:50%; }.paper { position:relative; color:#273147; background:linear-gradient(140deg,#fffdf7,#e6e8ec); padding:32px; max-width:390px; min-height:390px; margin:auto; transform:rotate(-3deg); box-shadow:0 24px 80px #0008; border-radius:3px; font-size:14px; }.paper-brand { font-size:12px; font-weight:700; letter-spacing:.12em; }.paper-meta { color:#626b78; font-size:10px; }.paper h4 { font-size:23px; line-height:1.2; margin:25px 0; font-weight:550; }.paper dl div { display:flex; justify-content:space-between; gap:10px; padding:9px 0; border-bottom:1px dashed #aab1bd; }.paper dd { margin:0; white-space:nowrap; }.paper-total { display:flex; justify-content:space-between; padding-top:14px; }.barcode { height:28px; margin-top:24px; background:repeating-linear-gradient(90deg,#273147 0 2px,transparent 2px 5px,#273147 5px 6px,transparent 6px 9px); opacity:.65; }.document-caption { text-align:center; color:#8797b2; font-size:11px; margin-top:30px; }
.demo-stream { text-align:center; color:#91d9ff; font-size:72px; text-shadow:0 0 25px #4b8afc; }.demo-stream i { display:block; height:1px; background:linear-gradient(90deg,transparent,#6ddbf3,transparent); }
.demo-story h3 { font-size:36px; line-height:1.13; font-weight:450; letter-spacing:-.025em; margin:20px 0; }.demo-story>p:not(.eyebrow) { color:#aebdd2; font-size:17px; line-height:1.65; }.demo-result { border-left:2px solid #86cedd; padding:14px 20px; margin:28px 0; background:linear-gradient(90deg,#25486633,transparent); min-height:100px; }.demo-result span { color:#90bace; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }.demo-result p { margin:8px 0 0; color:#e6eef9; }.demo-navigation { display:flex; gap:10px; }.demo-navigation button:disabled { opacity:.3; cursor:default; }.demo-navigation #demo-next { border-color:#88add166; }
.demo-progress { display:flex; justify-content:center; gap:10px; margin:38px 0 65px; }.demo-progress button { border-color:transparent; border-radius:0; border-bottom:1px solid #6a85ad44; }.demo-progress button[aria-pressed=true] { color:#f3d9b5; border-bottom-color:#f4c285; }.demo-promise { text-align:center; max-width:780px; margin:0 auto; color:#f0e3d0; font-size:30px; line-height:1.4; font-weight:350; }.demo-footnote { text-align:center; color:#91a1b8; font-size:12px; margin:26px 0 0; }
/* Lot 2 is a desktop prototype. Mobile development is explicitly deferred. */
/* Mobile presentation is enabled below. */

/* Rich desktop examples: original document opposite an actionable synthesis. */
.paper { max-height:650px; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#798496 #e9ebee; overscroll-behavior:contain; }
.paper[data-example=ticket] { font-size:12px; padding:26px; }
.paper[data-example=letter] { font-size:12px; line-height:1.65; }
.paper[data-example=letter] h4 { font-size:22px; }
.receipt-lines dt small { display:block; font-size:10px; color:#647084; }
.paper .receipt-lines div { padding:7px 0; }
.paper .receipt-lines .receipt-discount { color:#40634c; font-size:10px; padding:2px 0 7px; }
.demo-stage { grid-template-columns:minmax(300px,1fr) 60px minmax(400px,1.35fr); gap:22px; }
.demo-result { padding:18px; }
.receipt-summary { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:20px 0; }
.receipt-summary small { display:block; font-size:11px; color:#abc3dc; }
.receipt-summary strong { display:block; font-size:42px; font-weight:450; letter-spacing:-.04em; color:#f4eddf; }
.receipt-summary>p { font-size:12px; line-height:1.8; color:#b4c8df; }
.result-hint { font-size:12px; line-height:1.6; color:#9aafc9!important; margin-top:18px!important; }
.allocation { display:flex; align-items:center; gap:20px; }
.allocation-donut { flex-shrink:0; width:106px; height:106px; border-radius:50%; display:grid; place-items:center; box-shadow:0 0 30px #4988bb20; }
.allocation-donut>i { width:80px; height:80px; display:grid; place-content:center; text-align:center; background:#0c1827; border-radius:50%; font-style:normal; color:#e2ebf6; }
.allocation-donut small { font-size:9px; color:#9aaec4; }
.allocation-list { padding:0; list-style:none; flex:1; margin:0; }
.allocation-list li { display:grid; grid-template-columns:1fr auto auto; gap:9px; align-items:center; padding:8px 0; border-bottom:1px solid #7b98ba20; font-size:11px; }
.demo-result .category-name { font-size:11px; text-transform:none; letter-spacing:0; color:#b9c9df; display:flex; gap:7px; align-items:center; }
.category-name i { width:6px; height:6px; border-radius:50%; flex-shrink:0; }
.allocation-list strong { font-weight:500; white-space:nowrap; }
.allocation-list small { color:#8ca2bd; width:38px; text-align:right; }
.extraction table { width:100%; border-collapse:collapse; font-size:11px; }
.extraction caption { text-align:left; color:#8eafcc; padding-bottom:10px; }
.extraction th,.extraction td { text-align:right; padding:10px 5px; border-bottom:1px solid #7b98ba30; white-space:nowrap; }
.extraction th:first-child { text-align:left; white-space:normal; font-weight:400; }
.extraction th small { display:block; color:#8ea2bd; font-weight:400; font-size:10px; }
.budget-equation { display:flex; gap:20px; }
.budget-equation span { flex:1; text-transform:none; font-size:12px; }
.budget-equation b { display:block; color:#d3e2f4; margin-top:5px; font-size:19px; font-weight:400; }
.plain-language { margin:18px 0 0; }
.plain-language>div { display:grid; grid-template-columns:125px 1fr; gap:14px; border-top:1px solid #718eaf30; padding:12px 0; font-size:13px; }
.plain-language dt { color:#8db9d6; }.plain-language dd { margin:0; color:#dce5f2; line-height:1.5; }.plain-language .deadline dd { color:#f5cea0; font-weight:600; }
.document-checklist { list-style:none; padding:0; margin:20px 0 0; }.document-checklist li { display:flex; gap:12px; padding:12px 0; font-size:13px; border-top:1px solid #7b98ba20; }.document-checklist small { display:block; color:#e4b996; font-size:10px; margin-bottom:4px; }
.possible-actions details { padding:14px 0; border-bottom:1px solid #809db52b; }.possible-actions summary { cursor:pointer; color:#c4ddf3; font-size:13px; }.possible-actions p { font-size:12px; line-height:1.7; }.possible-actions small { color:#a9bdd3; font-size:11px; }
.case-timeline { padding-left:18px; }.case-timeline li { padding:10px 0; }.case-timeline b { display:block; font-size:13px; color:#e0c7a5; }.case-timeline span { display:block; font-size:12px; text-transform:none; letter-spacing:0; margin-top:5px; }

.life-vision { background:linear-gradient(145deg,#0f2035,#080f1e); border:1px solid #568bc069; border-radius:16px; padding:22px; margin-top:18px; box-shadow:0 12px 35px #0003; }
.life-vision header { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.life-vision header>span { color:#a5cdf0; font-size:13px; letter-spacing:.16em; }
.life-vision header>strong,.energy-bill>strong { color:#f6eddf; font-size:34px; font-weight:500; letter-spacing:-.04em; }
.life-vision h4 { margin:22px 0 9px; font-weight:500; font-size:14px; color:#dbe9f9; }
.life-vision h4 small { font-size:10px; color:#8cabc9; font-weight:400; margin-left:6px; }
.life-vision .vision-caption { color:#9db1c9; font-size:11px; line-height:1.5; margin-top:7px; }
.vision-rows { list-style:none; padding:0; margin:0; }
.vision-rows li { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:9px 0; border-bottom:1px solid #6e95c124; }
.life-vision .vision-rows span { display:flex; gap:10px; align-items:center; color:#c9d8ea; text-transform:none; font-size:13px; letter-spacing:0; }
.vision-rows i { font-style:normal; font-size:18px; }
.vision-rows b { font-size:16px; color:#edf1f9; font-weight:500; }
.history-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.history-heading>small { color:#90a8c3; font-size:10px; }
.monthly-bars { display:flex; align-items:flex-end; justify-content:space-between; gap:7px; height:114px; padding:10px 0 0; margin-bottom:14px; }
.monthly-bars>div { display:flex; flex:1; flex-direction:column; align-items:center; gap:8px; min-width:0; }
.monthly-bars i { display:block; width:100%; max-width:24px; background:linear-gradient(#719fcc,#315472); border-radius:4px 4px 0 0; }
.monthly-bars i.current { background:linear-gradient(#93e1f3,#618dd5); box-shadow:0 0 14px #71c8fd25; }
.monthly-bars small { color:#a6b8ce; font-size:9px; }
.life-vision footer { border-top:1px solid #7197bc24; margin-top:16px; padding-top:12px; color:#8098b5; font-size:10px; }
.energy-bill { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-top:15px; }
.life-vision .energy-bill span { text-transform:none; letter-spacing:0; font-size:14px; color:#d1dff0; }
.life-vision .energy-due { color:#bacce2; font-size:13px; }
.mini-calendar { margin-top:16px; padding:12px 14px; border:1px solid #7197bc35; border-radius:9px; background:#182c4033; }
.mini-calendar h4 { margin:0 0 10px; color:#94badb; font-size:10px; letter-spacing:.14em; }
.mini-calendar>div { display:flex; align-items:center; gap:12px; }
.mini-calendar>div>b { display:grid; place-items:center; min-width:34px; height:36px; background:#36678c44; border-radius:6px; color:#c4e7ff; }
.mini-calendar span { flex:1; font-size:12px; text-transform:none; letter-spacing:0; color:#c0cfe0; }
.mini-calendar strong { font-size:14px; font-weight:500; }
.consumption { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.consumption span { text-transform:none; letter-spacing:0; font-size:11px; color:#93adc7; }
.consumption b { display:block; font-size:15px; color:#dce7f4; font-weight:500; margin-top:3px; }
.consumption>strong { color:#94d9c8; font-size:19px; font-weight:500; }

/* Energy: retrospective chart versus a forward-looking schedule. */
.energy-legend { display:flex; justify-content:space-between; gap:12px; margin:18px 0 8px; font-size:10px; }
.energy-legend b { color:#70c8ee; font-weight:500; }.energy-legend b:last-child { color:#f1c28c; }
.energy-chart { display:block; width:100%; overflow:visible; }.energy-chart text { fill:#a9bed6; font-size:9px; }
.energy-values summary { color:#abcce9; font-size:11px; cursor:pointer; padding:10px 0; }
.energy-values table { width:100%; border-collapse:collapse; font-size:11px; }.energy-values caption { color:#9db1c9; padding:8px; }
.energy-values th,.energy-values td { padding:5px; border-bottom:1px solid #7197bc24; text-align:right; }.energy-values th:first-child { text-align:left; }
.life-reading { border-left:2px solid #76c8ee; padding:1px 0 1px 14px; margin-top:14px; }.life-reading h4 { margin-top:8px; }.life-reading>p { font-size:15px; line-height:1.55; }
.life-vision .simulation-badge { color:#f1c28c; font-size:10px; letter-spacing:.08em; margin:14px 0; }
.forecast-next { padding:14px; border:1px solid #e3b78344; border-radius:10px; background:#dab07809; }.forecast-next>small { color:#b8c9df; font-size:11px; }.forecast-next h4 { margin:5px 0 0; color:#f2d1a8; font-size:21px; }
.forecast-months { display:flex; list-style:none; padding:0; gap:10px; margin:12px 0; }.forecast-months li { flex:1; padding:10px 0; border-top:1px dashed #d4ac8077; }.life-vision .forecast-months span { font-size:11px; text-transform:none; letter-spacing:0; color:#b9cbe0; }.forecast-months b { display:block; color:#eed8b9; font-size:16px; font-weight:500; margin-top:6px; }

/* Mac trial: one demo per viewport, without scaling down the whole page. */
@media(min-width:901px) {
 .demos { height:100svh; min-height:640px; padding:20px max(28px,4vw) 16px; box-sizing:border-box; scroll-margin-top:0; display:grid; grid-template-columns:1fr auto; grid-template-rows:auto minmax(0,1fr) auto auto; gap:12px 24px; }
 .demo-heading { max-width:none; }.demo-heading>.eyebrow,.demo-heading>p:not(.demo-disclosure) { display:none; }
 .demo-heading h2 { font-size:25px; margin:0 0 5px; line-height:1.15; }.demo-heading h2 br { display:none; }.demo-heading h2 span:before { content:' '; }
 .demo-heading .demo-disclosure { margin:0; font-size:11px!important; }
 .demo-tabs { margin:0; align-items:center; gap:8px; }.demo-tabs button { padding:10px 15px; font-size:12px; }
 .demo-stage { grid-column:1/-1; min-height:0; height:100%; grid-template-columns:minmax(230px,.8fr) 46px minmax(450px,1.5fr); gap:20px; }
 .document-space { min-height:0; height:100%; max-height:540px; padding:16px; display:flex; flex-direction:column; justify-content:center; }
 .paper { min-height:0; max-height:calc(100% - 45px); width:100%; box-sizing:border-box; flex:0 1 auto; margin:0 auto; padding:24px; }
 .document-caption { margin:16px 0 0; font-size:10px; }
 .demo-stream { font-size:54px; }
 .demo-story { height:100%; min-height:0; display:grid; grid-template-rows:auto auto auto minmax(0,1fr) auto; align-content:start; }
 .demo-story>.eyebrow { margin:0 0 5px; font-size:10px; }.demo-story h3 { font-size:26px; margin:0 0 7px; }
 .demo-story>#demo-step-text { font-size:13px; line-height:1.4; margin:0; max-width:660px; }
 .demo-result { min-height:0; margin:10px 0; padding:10px 14px; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#537698 transparent; }
 .demo-result>span { font-size:10px; }.demo-result>p { font-size:12px; margin:4px 0 0; }
 .demo-navigation { justify-content:flex-end; gap:8px; }.demo-navigation button { padding:8px 16px; font-size:12px; }
 .demo-progress { grid-column:1/-1; margin:0; gap:16px; }.demo-progress button { padding:7px 14px; font-size:12px; }
 .demo-promise { grid-column:1; text-align:left; margin:0; max-width:none; font-size:17px; line-height:1.3; align-self:center; }
 .demo-footnote { grid-column:2; margin:0; text-align:right; font-size:9px; max-width:340px; align-self:center; }
 .life-vision { padding:14px 18px; margin-top:8px; border-radius:12px; }.life-vision header>span { font-size:11px; }
 .life-vision h4 { margin:12px 0 6px; font-size:13px; }.life-vision footer { margin-top:10px; padding-top:8px; }
 .life-vision .vision-caption { margin-top:5px; line-height:1.4; }.vision-rows li { padding:6px 0; }.vision-rows b { font-size:14px; }
 .energy-bill { margin-top:9px; }.energy-bill>strong,.life-vision header>strong { font-size:29px; }
 .energy-chart { max-height:160px; }.energy-legend { margin:10px 0 3px; }
 .life-reading { margin-top:8px; }.life-reading h4 { margin-top:5px; }.life-reading>p { font-size:13px; line-height:1.4; }
 .energy-values summary { padding:6px 0; }.forecast-next { padding:10px 14px; }.forecast-next h4 { font-size:19px; margin:4px 0; }
 .life-vision .simulation-badge { margin:9px 0; }.forecast-months { margin:8px 0; }.forecast-months li { padding:7px 0; }
 .mini-calendar { margin-top:10px; padding:9px 12px; }.mini-calendar h4 { margin:0 0 6px; }
 .receipt-summary { margin:10px 0; }.receipt-summary strong { font-size:34px; }.result-hint { margin-top:10px!important; }
 .plain-language { margin-top:10px; }.plain-language>div { padding:8px 0; font-size:12px; }
 .monthly-bars { height:106px; margin-bottom:8px; }
}
@media(min-width:901px) {
 .life-vision p { margin-bottom:0; }
 .life-vision .energy-due { margin-top:8px; }
 .forecast-next .energy-bill { margin-top:4px; }
 .forecast-next .energy-bill>strong { font-size:27px; }
 .demo-heading h2 span:before { content:'\00a0'; }
 .life-vision .vision-rows { margin:0; }
 .forecast-next { display:grid; grid-template-columns:1fr 1fr; column-gap:16px; align-items:center; }
 .forecast-next>small { grid-column:1; }.forecast-next>h4 { grid-column:1; }.forecast-next>.energy-bill { grid-column:2; grid-row:1/3; flex-direction:column; align-items:flex-end; gap:4px; }
}
@media(min-width:901px) {
 /* The card itself carries the simulation label and summary. */
 .demo-result:has(.life-vision)>span,.demo-result:has(.life-vision)>p { display:none; }
 .demo-result .life-vision { margin-top:0; }
}
@media(min-width:901px) and (max-height:800px) {
 .demos { padding-top:12px; padding-bottom:10px; gap:8px 20px; }
 .demo-heading h2 { font-size:21px; }.demo-story h3 { font-size:23px; }
 .demo-story>#demo-step-text { font-size:12px; }.demo-result { margin:6px 0; padding:6px 12px; }
 .life-vision { padding:10px 14px; }.life-vision h4 { margin-top:8px; }.life-vision footer { margin-top:7px; padding-top:6px; }
 .energy-chart { max-height:120px; }.vision-rows li { padding:4px 0; }
 .forecast-months li { padding:4px 0; }.life-vision .simulation-badge { margin:5px 0; }
 .demo-promise { font-size:15px; }.demo-progress button { padding:5px 12px; }
}
@media(min-width:901px) and (max-height:800px) {
 .monthly-bars { height:102px; }
}

.document-toggle { display:none; }
@media(max-width:900px) {
 .demo-entry { display:block; bottom:78px; left:0; width:100%; text-align:center; font-size:13px; }
 .demos { display:flex; flex-direction:column; padding:30px 18px 28px; scroll-margin-top:0; gap:16px; }
 .demo-heading h2 { font-size:29px; margin:10px 0; }.demo-heading>.eyebrow { font-size:9px; }.demo-heading>p:not(.eyebrow) { font-size:14px; }
 .demo-heading>p:not(.eyebrow):not(.demo-disclosure) { display:none; }.demo-heading .demo-disclosure { margin:0; font-size:11px!important; }
 .demo-tabs { order:1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin:0; }.demo-tabs button { padding:8px 3px; font-size:11px; min-height:44px; }
 .demo-progress { order:2; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; gap:0; }.demo-progress button { padding:8px 2px; font-size:10px; min-height:44px; }
 .document-toggle { order:3; display:flex; align-items:center; justify-content:space-between; min-height:44px; width:100%; padding:10px 12px; background:#102035; border:1px solid #568bc069; border-radius:9px; color:#c3def3; font:inherit; font-size:12px; cursor:pointer; }
 .demo-stage { order:4; display:block; min-height:0; }.demo-stream { display:none; }
 .document-space { display:none; padding:12px 7px 20px; }.demos[data-document-open=true] .document-space { display:block; }
 .paper { transform:none; min-height:0; max-height:420px; width:100%; padding:22px; }.paper[data-example=ticket] { padding:18px; }.document-caption { margin-top:12px; }
 .demo-story h3 { font-size:27px; margin:9px 0; }.demo-story>.eyebrow { font-size:10px; margin:0; }.demo-story>#demo-step-text { font-size:14px; line-height:1.55; }
 .demo-result { margin:16px 0; padding:12px 10px; min-width:0; }.demo-result>p { font-size:13px; }.demo-result>span { font-size:10px; }
 .demo-result:has(.life-vision)>span,.demo-result:has(.life-vision)>p { display:none; }
 .life-vision { padding:16px 12px; margin:0; border-radius:12px; }.life-vision header>span { font-size:11px; }.life-vision header>strong,.energy-bill>strong { font-size:29px; }
 .life-vision h4 { font-size:13px; }.vision-rows li { gap:8px; }.life-vision .vision-rows span { font-size:12px; }.vision-rows b { font-size:14px; white-space:nowrap; }
 .history-heading { display:block; }.history-heading h4 { margin-bottom:1px; }.monthly-bars { gap:3px; }.monthly-bars small { font-size:8px; }
 .energy-legend { font-size:9px; gap:8px; }.energy-bill { gap:8px; }.life-vision .energy-bill span { font-size:12px; }
 .forecast-next { padding:12px; }.forecast-next h4 { font-size:19px; }.forecast-months { gap:6px; }.forecast-months b { font-size:14px; }
 .mini-calendar { padding:10px; }.mini-calendar>div { gap:7px; }.mini-calendar span { font-size:11px; }.mini-calendar strong { font-size:12px; white-space:nowrap; }
 .receipt-summary { gap:10px; }.receipt-summary strong { font-size:34px; }.receipt-summary>p { font-size:11px; }
 .extraction { overflow-x:auto; }.extraction table { font-size:10px; }.extraction th,.extraction td { padding:8px 3px; }
 .allocation { flex-direction:column; align-items:stretch; gap:12px; }.allocation-donut { align-self:center; width:90px; height:90px; }.allocation-donut>i { width:66px; height:66px; }
 .allocation-list li { font-size:10px; gap:5px; }.demo-result .category-name { font-size:10px; }
 .plain-language>div { grid-template-columns:1fr; gap:4px; font-size:13px; }.plain-language dt { font-weight:600; }
 .demo-navigation { justify-content:space-between; gap:8px; }.demo-navigation button { padding:10px 12px; font-size:12px; min-height:46px; }
 .demo-promise { order:5; font-size:21px; margin:12px 0 0; }.demo-footnote { order:6; margin:0; font-size:10px; }
}

/* Targeted readability: factual labels, disclosures and chart values. */
.demo-footnote,.document-caption,.life-vision footer,.life-vision .vision-caption,.history-heading>small,.life-vision h4 small { font-size:12px; }
.paper-meta,.receipt-lines dt small,.paper .receipt-lines .receipt-discount { font-size:12px; }
.energy-chart text { font-size:11px; }.energy-legend { font-size:12px; }.monthly-bars small { font-size:11px; }
@media(max-width:900px){
 .demo-heading .demo-disclosure { font-size:12px!important; }.demo-tabs button,.demo-progress button { font-size:12px; }.demo-progress { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .demo-result>span,.demo-result>p,.demo-footnote,.document-caption,.life-vision footer,.history-heading>small { font-size:12px; }
 .demo-result .category-name,.allocation-list li,.allocation-list small,.extraction table,.extraction th small { font-size:12px; }.extraction th,.extraction td { white-space:normal; }
 .receipt-summary>p,.mini-calendar span,.life-vision .energy-bill span { font-size:12px; }
 .monthly-bars { overflow-x:auto; justify-content:flex-start; height:125px; }.monthly-bars>div { min-width:27px; }.monthly-bars small { font-size:11px; }
 .energy-legend { flex-wrap:wrap; font-size:12px; }.energy-chart { min-width:350px; }.energy-history { overflow-x:auto; }
 .life-vision .simulation-badge,.life-vision .forecast-months span,.forecast-next>small,.energy-values summary { font-size:12px; }
 .demo-result .result-hint { font-size:13px; }
}
@media(max-width:900px){
 .monthly-bars small,.life-vision header>span,.energy-values table,.mini-calendar h4 { font-size:12px; }
 .energy-chart text { font-size:14px; }
}
