*{box-sizing:border-box}body{margin:0;background:#f5f7f1;color:#213b34;font:14px system-ui,sans-serif}.app-header{padding:22px max(24px,calc((100vw - 1120px)/2));display:flex;justify-content:space-between;align-items:center;background:#1c302b;color:#e2ee9a}.brand{color:inherit;text-decoration:none;font-size:28px;font-weight:700;letter-spacing:-1px}.brand small{font-size:11px;font-weight:400;letter-spacing:2px}.account{display:flex;align-items:center;gap:20px;font-size:12px}.account form{margin:0}.quiet{background:transparent;border:1px solid #718068;color:#e2ee9a;padding:8px 14px;border-radius:5px}main{max-width:1120px;margin:auto;padding:42px 24px}h1{font-size:36px;font-weight:550;letter-spacing:-1.2px;line-height:1.2;margin:8px 0 14px}h2{font-size:20px;font-weight:550;letter-spacing:-.4px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#81906f}.muted{color:#819071;font-size:13px;line-height:1.7}.login{max-width:400px;margin:40px auto}.login form{margin-top:30px}label{display:block;font-size:12px;color:#6e815b;margin:16px 0 7px}input{width:100%;font:inherit;padding:12px;border:1px solid #d8e2ce;border-radius:5px;background:white;color:#213b34}.primary{background:#ddeb95;color:#2c4425;border:1px solid #c3d575;border-radius:5px;padding:13px 20px;font:600 13px system-ui;cursor:pointer;display:inline-block;text-decoration:none}.login .primary{margin-top:24px;width:100%}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #829e45;outline-offset:3px}.upload{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:white;border:1px solid #dae3ce;border-radius:8px;padding:28px 32px;margin:30px 0 44px}.upload .primary{margin-top:20px}.study-list{display:flex;flex-direction:column;background:white;border:1px solid #dae3ce;border-radius:7px;overflow:hidden}.study-row{text-decoration:none;color:inherit;display:flex;justify-content:space-between;gap:24px;padding:22px 25px;border-bottom:1px solid #e3e8da}.study-row:last-child{border:0}.study-row:hover{background:#f0f6e5}.study-row>div{display:flex;flex-direction:column;gap:8px}.study-row>div:last-child{align-items:flex-end}.study-row span{font-size:11px;color:#869775}.study-row .status{color:#5e7e35;background:#ecf4db;padding:4px 7px;border-radius:3px}.error{color:#9b573a;font-size:12px}.empty{border:1px dashed #cbd8bb;padding:40px;color:#93a17f;text-align:center}.pending{max-width:660px;margin:50px auto}.back{color:#768b5a;text-decoration:none;font-size:12px}.pending .primary{margin-top:20px}@media(max-width:650px){main{padding:28px 18px}.app-header{padding:18px}.account{gap:10px}.account>span{max-width:120px;overflow-wrap:anywhere}h1{font-size:30px}.upload{grid-template-columns:1fr;gap:10px;padding:23px 20px}.study-row{padding:18px;gap:12px}.login{margin-top:20px}}
.consent{display:flex;align-items:flex-start;gap:12px;font-weight:400;line-height:1.6;max-width:650px}.consent input{width:auto;flex-shrink:0;margin-top:7px}.pending form{margin-top:24px}.pending h2{margin-top:28px}
select{width:100%;font:inherit;padding:12px;border:1px solid #d8e2ce;border-radius:5px;background:white;color:#213b34;min-width:0}select:focus-visible,summary:focus-visible{outline:3px solid #829e45;outline-offset:3px}.catalog-overview{margin-top:42px}.catalog-row{display:flex;justify-content:space-between;gap:24px;padding:20px 24px;border-bottom:1px solid #e3e8da}.catalog-row:last-child{border-bottom:0}.catalog-row>div{display:flex;flex-direction:column;gap:9px}.status{font-size:11px;color:#65813e;background:#eff4e7;padding:5px 8px;border-radius:4px;align-self:flex-start}.catalog-row code{font-size:12px;color:#718055}.uuid{font:11px ui-monospace,monospace;overflow-wrap:anywhere}.matrix-link-row{padding:22px 24px;border-bottom:1px solid #e3e8da;display:grid;grid-template-columns:1fr 1fr;gap:24px}.matrix-link-row h3{font-size:15px;margin:8px 0}.matrix-link-row p{margin:7px 0}.matrix-link-row select{max-width:100%}.matrix-link-row:last-child{border-bottom:0}.matrix-error{padding:18px;background:#fff3ed;border:1px solid #efd8c9;border-radius:6px;margin:20px 0;color:#915431}.matrix-error p{font-size:12px}.matrix-confirm{margin:36px 0;padding:26px;background:#eef4df;border-radius:8px;max-width:760px}.matrix-confirm form{max-width:620px}.matrix-confirm .primary{margin-top:12px}.compact.pending{margin:24px 0;padding:24px;background:#edf4df}.matrix-import-row{border:1px solid #dae3ce;background:white;margin:12px 0;border-radius:6px}section form>.primary{margin-top:18px}details{font-size:12px}summary{cursor:pointer;color:#708652}header .account>a{color:#e2ee9a;text-decoration:none}@media(max-width:650px){.matrix-link-row{grid-template-columns:1fr;gap:6px;padding:18px}.catalog-row{padding:18px;gap:12px}.catalog-row .status{max-width:105px}.matrix-import-row{flex-wrap:wrap}.account{flex-wrap:wrap;justify-content:flex-end}.catalog-row>div{min-width:0}.matrix-confirm{padding:20px}}

.matrix-amounts{margin:12px 0}.matrix-amounts table{width:100%;border-collapse:collapse;font-size:11px;margin:12px 0;table-layout:fixed}.matrix-amounts th{text-align:left;color:#6c7e5b}.matrix-amounts td,.matrix-amounts th{padding:9px 6px;border-bottom:1px solid #e1e8d7;overflow-wrap:anywhere}.matrix-amounts td:nth-child(2){text-align:right}

.reading-diagnostic details{margin-top:24px}.reading-diagnostic summary{font-weight:700;cursor:pointer}.diagnostic-list{margin:12px 0}.diagnostic-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #dde3d9}.diagnostic-row span{min-width:0;overflow-wrap:anywhere}.diagnostic-row strong{flex-shrink:0;text-align:right;max-width:45%;overflow-wrap:anywhere}.diagnostic-row small{display:block;color:#697366;margin-top:4px}
.ledger-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:24px;align-items:start;margin-top:28px}.ledger-card{background:white;border:1px solid #dae3ce;border-radius:8px;padding:24px;margin-bottom:20px;overflow-wrap:anywhere}.ledger-card h2{margin-top:0}.ledger-card .muted{margin-bottom:0}.ledger-field{padding-bottom:15px}.ledger-correction{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:10px 0}.ledger-correction label{min-width:0;margin:5px 0}.ledger-correction .primary{justify-self:start}.ledger-detail{padding:16px 0;border-bottom:1px solid #e3e8da}.ledger-detail p{margin:6px 0}.ledger-review button:disabled{cursor:not-allowed;opacity:.55}.ledger-layout .matrix-confirm{margin:0 0 20px;padding:24px}.ledger-layout summary{line-height:1.6}@media(max-width:800px){.ledger-layout{grid-template-columns:1fr}.ledger-layout aside{grid-row:1}.ledger-correction{grid-template-columns:1fr}.ledger-card{padding:20px}}
.ledger-extra{padding:16px 0 24px;border-bottom:1px solid #e3e8da}.ledger-extra:last-child{border-bottom:0}.ledger-extra h3{font-size:15px}.offer-overview{display:flex;justify-content:space-between;gap:24px}.offer-overview h2{margin:8px 0}.offer-row{margin-top:24px}.offer-row.best-offer{border:2px solid #9db653;background:#fbfdf4}.offer-figures{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.offer-figures>strong{font-size:34px;letter-spacing:-1px}.offer-figures>span{font-size:12px}.commission-internal{font-size:12px;border-left:3px solid #adbd85;padding:8px 14px;background:#f2f5ec}.offer-breakdown{overflow-x:auto}.offer-breakdown table{width:100%;border-collapse:collapse;margin:18px 0}.offer-breakdown td,.offer-breakdown th{padding:10px 8px;border-bottom:1px solid #e3e8da;text-align:right}.offer-breakdown td:first-child,.offer-breakdown th:first-child{text-align:left}.offer-row li{margin:8px 0;line-height:1.6}@media(max-width:600px){.offer-overview{flex-direction:column;gap:12px}.offer-figures{align-items:flex-start}.offer-figures>strong{font-size:30px}}

/* Recorrido principal: una acción clara por paso y detalle a petición. */
body{line-height:1.5}.muted,.study-row span{color:#647456}.eyebrow{color:#576e45}label{color:#586d46}summary{color:#526c37}
a{color:#45622f}.primary,.quiet,.secondary{min-height:44px}.primary:disabled{opacity:.55;cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #607e2f;outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:absolute;left:20px;top:-80px;background:#fff;padding:12px 18px;z-index:10;border-radius:5px}.skip-link:focus{top:12px}
.account{flex-wrap:wrap;justify-content:flex-end}.app-header{gap:24px}.brand{flex-shrink:0}.account>span{overflow-wrap:anywhere}
.study-progress{margin:0 0 28px}.study-progress ol{display:flex;gap:12px 24px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.study-progress li{font-size:13px}
.study-progress a,.step-pending{display:flex;gap:8px;align-items:center;min-height:44px;padding:4px 0;text-decoration:none}.study-progress a:hover{text-decoration:underline}
.study-progress a>span,.step-pending>span{width:27px;height:27px;display:grid;place-items:center;border:1px solid #c4d3b4;border-radius:50%;font-size:12px;flex-shrink:0}
.study-progress [aria-current=step] a{font-weight:700;color:#213b34}.study-progress [aria-current=step] a>span{background:#213b34;color:#f1f7d4;border-color:#213b34}.step-pending{color:#647456}
.start-flow{display:flex;flex-wrap:wrap;gap:12px 30px;list-style-position:inside;padding:0;margin:24px 0;color:#586d46;font-size:13px}
.review-actions{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin:20px 0}.review-actions>a{font-size:13px}.secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid #becfa9;background:#fff;border-radius:5px;text-decoration:none;font-weight:600}
.invoice-heading{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;align-items:baseline}.invoice-heading h2{margin-bottom:6px}.invoice-total{font-size:25px;letter-spacing:-.6px}
.ledger-layout>div,.ledger-layout aside,.offer-overview>div{min-width:0}.ledger-field details{margin:8px 0}.ledger-field summary{min-height:30px}.ledger-card summary{font-size:13px}.ledger-card>details+details{margin-top:16px}.ledger-card p{line-height:1.6}
.comparison-summary{display:flex;flex-wrap:wrap;gap:20px 48px;background:#fff;border:1px solid #dae3ce;border-radius:8px;padding:20px 24px;margin:24px 0 16px}.comparison-summary>div{display:flex;flex-direction:column;gap:5px}.comparison-summary span{color:#647456;font-size:12px}.comparison-summary strong{font-size:17px}.comparison-summary>div:first-child strong{font-size:25px;letter-spacing:-.6px}
.offer-row details{margin-top:16px}.offer-row form{margin-top:20px}.offer-price-tables{display:grid;grid-template-columns:1fr 1fr;gap:24px}.offer-price-tables>div{min-width:0}.offer-breakdown caption{text-align:left;font-size:13px;font-weight:600;margin:12px 0 4px;color:#213b34}.offer-breakdown th[scope=row]{font-weight:400}.offer-price-tables td,.offer-price-tables th{font-size:12px}.offer-price-tables td:last-child{white-space:nowrap}
@media(max-width:800px){.ledger-layout aside{grid-row:auto}.offer-price-tables{grid-template-columns:1fr;gap:0}}
@media(max-width:650px){.app-header{align-items:flex-start;gap:16px}.account{gap:8px 12px;font-size:12px}.account>a{min-height:28px;display:inline-flex;align-items:center}.account>span{max-width:110px}.study-progress ol{gap:2px 16px}.study-progress li{font-size:12px}.comparison-summary{padding:18px;gap:14px 28px}.start-flow{gap:8px 22px}.review-actions{gap:12px}.invoice-heading{gap:4px 16px}}
@media(max-width:380px){.app-header{flex-wrap:wrap}.account{justify-content:flex-start;width:100%}.account>span{max-width:none}.study-row{flex-wrap:wrap}.study-row>div:last-child{align-items:flex-start}.study-progress ol{gap:0 12px}.study-progress a>span,.step-pending>span{width:24px;height:24px}.review-actions .secondary{width:100%;justify-content:center}}

.submit-status:empty{display:none}.submit-status{margin-top:12px}.flash-message{padding:14px 18px;background:#eef4df;border:1px solid #cfddba;border-radius:6px;font-size:13px}.pending-return{margin-top:26px}a[hidden]{display:none!important}

.grouped-extra{margin:12px 0 18px}.grouped-extra details{margin-top:8px}.grouped-extra input{max-width:100%}.ledger-card h3{font-size:15px;margin-top:24px}

/* Lectura documental: cada período conserva cantidad, precio e importe. */
.reading-section .invoice-heading{margin-bottom:16px}.reading-section-total{display:flex;flex-direction:column;gap:3px;text-align:right}.reading-section-total>span{font-size:11px;color:#647456}.reading-section-total>strong{font-size:22px;font-weight:650}.reading-period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.invoice-period-card{min-width:0;border:1px solid #dce5d3;border-radius:7px;padding:18px;background:#fbfcf8;overflow-wrap:anywhere}.reading-period-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px 16px;flex-wrap:wrap}.reading-period-heading h3{margin:0;font-size:17px}.reading-row-description{font-size:12px;color:#647456;margin:8px 0 16px}.reading-role{font-size:10px;color:#647456}.reading-reference{background:#f5f7f2;border-style:dashed}.reading-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.reading-metric-amount{grid-column:1/-1;border-top:1px solid #dce5d3;padding-top:14px}.invoice-reading-cell{min-width:0}.reading-cell-label{display:block;font-size:11px;color:#586d46;margin-bottom:7px}.reading-cell-value{display:block;font-size:17px;line-height:1.45;font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.reading-cell-unit{font-size:11px;font-weight:400;color:#586d46}.reading-metric-amount .reading-cell-value{font-size:22px}.reading-cell-empty{display:block;min-height:24px;border-bottom:1px dashed #c4d0ba;max-width:90px}.reading-cell-state{display:block;font-size:10px;color:#647456;margin-top:6px}.needs-review>.reading-cell-state{color:#915431}.reading-editor-link{display:inline-block;font-size:11px;min-height:30px;margin-top:8px}.invoice-reading-cell .documentary-editor{margin-top:10px;font-size:11px}.invoice-reading-cell .documentary-editor summary{font-size:11px;line-height:1.5;min-height:30px}.invoice-reading-cell .ledger-correction{grid-template-columns:minmax(0,1fr);gap:12px}.documentary-editor:target{outline:2px solid #829e45;outline-offset:5px}.documentary-editor input,.documentary-editor select{min-width:0;max-width:100%}.documentary-editor .primary{max-width:100%;white-space:normal}.reading-related{border-top:1px solid #dce5d3;padding-top:12px;margin-top:18px}.reading-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:16px}.reading-related-grid .reading-cell-value{font-size:14px}.reading-information>summary{font-weight:600}.invoice-reading .reading-section>p.muted{font-size:12px}.ledger-correction>div{min-width:0}.reading-section:empty{display:none}
@media(max-width:1050px){.reading-period-grid{grid-template-columns:minmax(0,1fr)}.reading-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.reading-metric-amount{grid-column:auto;border-top:0;border-left:1px solid #dce5d3;padding:0 0 0 14px}}
@media(max-width:650px){.invoice-period-card{padding:16px}.reading-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-metric-amount{grid-column:1/-1;border-left:0;border-top:1px solid #dce5d3;padding:12px 0 0}.reading-section-total{text-align:left}.reading-related-grid{grid-template-columns:minmax(0,1fr)}.reading-cell-value{font-size:16px}}
.reading-metrics>.reading-metric-amount:first-child{grid-column:1/-1;border-left:0;padding-left:0}
/* Una tarjeta por período; las líneas documentales se conservan en su detalle. */
.reading-grouped-grid{align-items:start}.reading-period-group>.reading-period-heading{margin-bottom:18px}.reading-period-detail{margin-top:18px;border-top:1px solid #dce5d3;padding-top:10px}.reading-period-detail>summary{padding:6px 0;min-height:36px;line-height:1.5;font-weight:600}.reading-detail-count{font-weight:400;white-space:nowrap}.reading-component-list{display:grid;gap:12px;margin-top:12px;min-width:0}.reading-component-row{padding:14px;background:#fff;border-style:solid}.reading-component-row .reading-period-heading{margin-bottom:14px}.reading-component-row h4{font-size:13px;line-height:1.5;margin:0}.reading-component-row .reading-metrics{grid-template-columns:minmax(0,1fr)}.reading-component-row .reading-metric-amount{grid-column:auto;border-left:0;border-top:1px solid #dce5d3;padding:10px 0 0}.reading-component-row .reading-cell-value{font-size:15px}.reading-component-row .reading-metric-amount .reading-cell-value{font-size:18px}.reading-global-rows{display:grid;gap:12px;margin-top:18px}.reading-global-rows .reading-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-period-summary{margin-top:8px}.reading-subtotal-basis{font-size:10px}.reading-grouped-section .reading-period-grid{margin-top:18px}
.reading-review .ledger-layout{display:block}.reading-review .ledger-layout>aside{margin-top:24px}.reading-review .reading-grouped-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.reading-review .reading-period-group{padding:12px}.reading-review .reading-period-summary{grid-template-columns:minmax(0,1fr);gap:14px}.reading-review .reading-period-summary>.reading-metric-amount{grid-column:auto;border-left:0;border-top:1px solid #dce5d3;padding:12px 0 0}.reading-documented-total{padding:10px 0}.reading-documented-total>summary{min-height:36px;line-height:1.5}.reading-documented-total>.invoice-period-card{margin-top:12px}.reading-review .reading-detail-count{white-space:normal}.reading-review .reading-period-detail>summary{font-size:11px}.reading-review .reading-component-row{padding:10px}
@media(max-width:1099px){.reading-review .reading-grouped-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.reading-review .reading-grouped-grid{grid-template-columns:minmax(0,1fr)}.reading-review .reading-period-group{padding:16px}.reading-review .reading-period-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-review .reading-period-summary>.reading-metric-amount{grid-column:1/-1}.reading-review .reading-period-detail>summary{font-size:13px}.reading-review .reading-component-row{padding:14px}}

/* Invoice overview: compact cards, corporate accents and detail on demand. */
.reading-review{color:#15201b}
.reading-review .reading-grouped-section{padding:0;border:1px solid var(--shell-line,#e4e8e3);border-radius:16px;background:#fff;margin-bottom:16px;overflow:visible}
.reading-review .reading-grouped-section>.invoice-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:12px 18px;background:var(--shell-paper,#f3f5f3);border-bottom:1px solid var(--shell-line,#e4e8e3);border-radius:16px 16px 0 0}
.reading-review .reading-grouped-section>.invoice-heading h2{display:flex;align-items:center;gap:9px;margin:0;font-size:16px;font-weight:650;letter-spacing:-.2px}
.reading-review .reading-block-number{display:inline-grid;place-items:center;width:25px;height:25px;border:1px solid var(--shell-line,#e4e8e3);border-radius:50%;font-size:11px;color:#657065;background:#fff;flex-shrink:0}
.reading-review .reading-block-period{font-size:11px;color:#657065}
.reading-review .reading-grouped-section .reading-grouped-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;width:100%;padding:14px 16px 0;margin:0 auto;align-items:stretch}
.reading-review .reading-grouped-grid[data-period-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:430px}
.reading-review .reading-grouped-grid[data-period-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr));max-width:640px}
.reading-review .reading-grouped-grid[data-period-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr));max-width:850px}
.reading-review .reading-grouped-grid[data-period-count="5"]{grid-template-columns:repeat(5,minmax(0,1fr));max-width:1070px}
.reading-review .reading-period-group{display:flex;flex-direction:column;padding:10px;border:1px solid var(--shell-line,#e4e8e3);border-radius:12px;background:#fff;min-width:0}
.reading-review .reading-period-group>.reading-period-heading{justify-content:center;padding:0 0 7px;margin:0 0 9px;border-bottom:1px solid var(--shell-line,#e4e8e3)}
.reading-review .reading-period-group>.reading-period-heading h3{font-size:13px;font-weight:750;color:var(--shell-green,#13a13a)}
.reading-review .reading-period-summary{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0}
.reading-review .reading-period-summary .reading-cell-label{font-size:10px;color:#657065;margin:0 0 4px;line-height:1.3}
.reading-review .reading-period-summary .reading-cell-value,.reading-review .reading-period-summary .reading-cell-empty{display:block;box-sizing:border-box;width:100%;max-width:none;min-height:32px;padding:6px 8px;border:1px solid var(--shell-line,#e4e8e3);border-radius:7px;background:#fff;font-size:14px;line-height:1.3;font-weight:600;color:#15201b;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.reading-review .reading-cell-empty::after{content:"—";color:#657065}
.reading-review .reading-period-summary>div:nth-child(2) .reading-cell-value,.reading-review .reading-period-summary>div:nth-child(2) .reading-cell-empty{min-height:50px}
.reading-review .reading-period-summary .reading-cell-unit{font-size:10px;color:#657065;font-weight:400}
.reading-review .reading-period-summary>.reading-metric-amount{border:0;padding:0;grid-column:auto}
.reading-review .reading-period-summary>.reading-metric-amount>.reading-cell-value{background:var(--shell-paper,#f3f5f3);font-size:15px;font-weight:750}
.reading-review .reading-period-summary .reading-cell-state{font-size:10px;line-height:1.4;color:#657065;margin-top:4px}
.reading-review .reading-period-summary .needs-review{border-left:2px solid #985825;padding-left:6px}
.reading-review .reading-period-detail{margin-top:auto;padding-top:8px;border-color:var(--shell-line,#e4e8e3)}
.reading-review .reading-period-detail>summary{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:32px;padding:6px 8px;border:1px solid var(--shell-line,#e4e8e3);border-radius:7px;font-size:11px;line-height:1.3;color:#15201b;background:var(--shell-paper,#f3f5f3)}
.reading-review .reading-period-detail>summary>span:first-child::before{content:"+";margin-right:6px;color:var(--shell-green,#13a13a);font-weight:750}
.reading-review .reading-period-detail[open]>summary>span:first-child::before{content:"−"}
.reading-review .reading-detail-count{font-size:10px;color:#657065;white-space:nowrap}
.reading-review .reading-detail-note{font-size:12px;line-height:1.5;padding:10px 12px;background:var(--shell-paper,#f3f5f3);border-radius:8px}
.reading-review .reading-grouped-grid:has(.reading-period-detail[open]){max-width:none}
.reading-review .reading-period-group:has(>.reading-period-detail[open]){grid-column:1/-1}
.reading-review .reading-period-group:has(>.reading-period-detail[open])>.reading-period-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
.reading-review .reading-component-list{grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:10px}
.reading-review .reading-component-row{padding:12px;border-radius:10px;background:#fff;border-color:var(--shell-line,#e4e8e3)}
.reading-review .reading-component-row h4{margin:0;font-size:12px}
.reading-review .reading-component-row .reading-cell-value,.reading-review .reading-component-row .reading-cell-empty{min-height:32px;max-width:none;padding:6px 8px;border:1px solid var(--shell-line,#e4e8e3);border-radius:7px;font-size:14px;color:#15201b}
.reading-review .reading-component-row .reading-cell-label,.reading-review .reading-component-row .reading-cell-unit,.reading-review .reading-component-row .reading-cell-state{color:#657065}
.reading-review .reading-component-row .reading-metrics{gap:10px}
@media(min-width:651px){.reading-review .reading-component-row .reading-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.reading-review .reading-component-row .reading-metric-amount{border-top:0;padding-top:0}.reading-review .reading-component-row .reading-metrics:has(.documentary-editor[open]){grid-template-columns:minmax(0,1fr)}}
.reading-review .reading-block-total{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;margin:12px 16px 16px;padding:10px 14px;border:1px solid var(--shell-line,#e4e8e3);border-left:3px solid var(--shell-green,#13a13a);border-radius:9px;background:var(--shell-paper,#f3f5f3);text-align:left}
.reading-review .reading-block-total>span{color:#15201b;font-weight:600;font-size:12px}
.reading-review .reading-block-total>strong{font-size:20px;color:#15201b;letter-spacing:-.3px;white-space:nowrap}
.reading-review .reading-global-rows{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px;padding:14px 16px 0;margin:0}
.reading-review .reading-global-rows>.invoice-period-card{border-radius:10px;padding:12px;background:#fff;border-color:var(--shell-line,#e4e8e3)}
.reading-review .reading-global-rows .reading-period-heading h3{font-size:13px;color:#15201b;margin:0}
.reading-review .reading-global-rows .reading-metrics{grid-template-columns:repeat(auto-fit,minmax(min(120px,100%),1fr));gap:10px}
.reading-review .reading-global-rows .reading-metric-amount{grid-column:auto;border-top:0;padding-top:0}
.reading-review .reading-global-rows .reading-cell-value{font-size:15px;color:#15201b}
.reading-review .reading-global-rows .reading-cell-label,.reading-review .reading-global-rows .reading-cell-unit{color:#657065}
.reading-review .reading-grouped-section:not(:has(.reading-block-total)){padding-bottom:16px}
.reading-review .primary,.library-shell:has(.reading-review) .primary{background:var(--shell-green,#13a13a);border-color:var(--shell-green,#13a13a);color:#fff;border-radius:8px}
@media(max-width:1099px){.reading-review .reading-grouped-section .reading-grouped-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}.reading-review .reading-grouped-grid[data-period-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:430px}}
@media(max-width:650px){.reading-review .reading-grouped-section .reading-grouped-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 12px 0}.reading-review .reading-grouped-section>.invoice-heading{padding:12px;gap:8px}.reading-review .reading-grouped-section>.invoice-heading h2{font-size:15px}.reading-review .reading-block-period{font-size:10px;max-width:90px;text-align:right}.reading-review .reading-block-total{margin:12px;padding:10px 12px}.reading-review .reading-block-total>strong{font-size:19px}.reading-review .reading-global-rows{padding:12px 12px 0}.reading-review .reading-period-detail>summary{min-height:44px}.reading-review .reading-period-group:has(>.reading-period-detail[open])>.reading-period-summary{grid-template-columns:minmax(0,1fr)}}
@media(max-width:359px){.reading-review .reading-grouped-section .reading-grouped-grid{grid-template-columns:minmax(0,1fr)}}

/* A residential reading fits power and energy into one aligned overview. */
.reading-review .reading-period-context{padding:14px 16px;margin-bottom:16px}
.reading-review .reading-period-context h2{font-size:14px;margin:0 0 10px}
.reading-review .reading-period-context .reading-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.reading-review .reading-period-context .reading-cell-value{font-size:14px;color:#15201b}
@media(min-width:1100px){
.reading-review .invoice-reading:has([data-reading-section="power"]>[data-period-count="2"]):has([data-reading-section="energy"]>[data-period-count="3"]){display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:16px}
.reading-review .invoice-reading:has([data-reading-section="power"]>[data-period-count="2"]):has([data-reading-section="energy"]>[data-period-count="3"])>section,.reading-review .invoice-reading:has([data-reading-section="power"]>[data-period-count="2"]):has([data-reading-section="energy"]>[data-period-count="3"])>details{grid-column:1/-1;margin-bottom:0}
.reading-review .invoice-reading:has([data-reading-section="power"]>[data-period-count="2"]):has([data-reading-section="energy"]>[data-period-count="3"])>[data-reading-section="power"],.reading-review .invoice-reading:has([data-reading-section="power"]>[data-period-count="2"]):has([data-reading-section="energy"]>[data-period-count="3"])>[data-reading-section="energy"]{grid-column:auto}
.reading-review .invoice-reading:has([data-reading-section="power"]>[data-period-count="2"]):has([data-reading-section="energy"]>[data-period-count="3"]):has(.reading-period-detail[open]){grid-template-columns:minmax(0,1fr)}
.reading-review .reading-grouped-section{display:flex;flex-direction:column}
.reading-review .reading-block-total{margin-top:auto}
}
@media(max-width:650px){.reading-review .reading-period-context .reading-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Additional billed concepts stay short; their evidence and editors open on demand. */
.reading-review .reading-global-rows.reading-adjustments-grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:10px;align-items:stretch}
.reading-review .reading-adjustment-card{min-width:0;border:1px solid var(--shell-line,#e4e8e3);border-radius:10px;background:#fff}
.reading-review .reading-adjustment-card>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:8px;min-height:60px;padding:12px;font-size:12px;line-height:1.4;color:#15201b;list-style:none}
.reading-review .reading-adjustment-card>summary::-webkit-details-marker{display:none}
.reading-review .reading-adjustment-name{font-weight:600;overflow-wrap:anywhere}
.reading-review .reading-adjustment-name>small{display:block;margin-top:3px;font-size:10px;font-weight:400;color:#657065}
.reading-review .reading-adjustment-amount{font-variant-numeric:tabular-nums;white-space:nowrap}
.reading-review .reading-adjustment-amount strong{font-size:16px;color:#15201b}
.reading-review .reading-adjustment-amount strong>span{font-size:11px;font-weight:400}
.reading-review .reading-adjustment-amount>span{font-size:11px;color:#657065}
.reading-review .reading-adjustment-toggle{display:grid;place-items:center;width:16px;height:20px;color:var(--shell-green,#13a13a);font-weight:750;font-size:18px}
.reading-review .reading-adjustment-toggle::before{content:"+"}
.reading-review .reading-adjustment-card[open]{grid-column:1/-1}
.reading-review .reading-adjustment-card[open]>summary{min-height:48px;background:var(--shell-paper,#f3f5f3);border-bottom:1px solid var(--shell-line,#e4e8e3);border-radius:10px 10px 0 0}
.reading-review .reading-adjustment-card[open]>summary>.reading-adjustment-toggle::before{content:"−"}
.reading-review .reading-adjustment-detail{padding:12px;min-width:0}
.reading-review .reading-adjustment-detail>.invoice-period-card{padding:0;border:0;background:#fff}
.reading-review .reading-adjustment-detail>.invoice-period-card>.reading-period-heading{display:none}
.reading-review .reading-adjustment-detail .reading-metrics{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px}
.reading-review .reading-adjustment-detail .reading-cell-value,.reading-review .reading-adjustment-detail .reading-cell-empty{min-height:34px;max-width:none;padding:7px 9px;border:1px solid var(--shell-line,#e4e8e3);border-radius:7px;font-size:14px;color:#15201b}
.reading-review .reading-adjustment-detail .reading-cell-label{font-size:11px;color:#657065}
.reading-review .reading-adjustment-detail .reading-cell-state{font-size:11px;line-height:1.5}
@media(max-width:650px){.reading-review .reading-global-rows.reading-adjustments-grid{grid-template-columns:minmax(0,1fr)}.reading-review .reading-adjustment-card>summary{min-height:56px}.reading-review .reading-adjustment-card[open]>summary{min-height:48px}}

/* Native output keeps the original block spacing of status paragraphs. */
output { display: block; margin: 1em 0; }

.reading-review .reading-period-summary .reading-source-page,.reading-review .reading-period-summary .reading-subtotal-basis{display:none}
