:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#173128;background:#f4f8f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.app-shell{max-width:960px;margin:auto;padding:24px 16px 48px}.app-header{padding:20px 0}.app-header h1{margin:3px 0 8px;font-size:clamp(1.8rem,5vw,2.6rem);color:#123c2d}.app-header p{margin:0;color:#537066}.eyebrow{font-size:.72rem;font-weight:750;letter-spacing:.1em;color:#197451;margin:0}.notice{background:#e5f3ea;border-left:4px solid #197451;padding:14px 16px;border-radius:8px;margin:6px 0 18px;line-height:1.45}.panel{background:#fff;border:1px solid #dce9e2;border-radius:14px;padding:20px;margin:16px 0;box-shadow:0 2px 12px #1731280a}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.section-heading h2{margin:3px 0 0;font-size:1.35rem}.count{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:100%;background:#e5f3ea;color:#0f6545;font-weight:700}label{display:grid;gap:6px;font-size:.9rem;font-weight:650;margin-bottom:14px}input,select,textarea{font:inherit;font-weight:400;border:1px solid #b9d0c5;border-radius:8px;padding:10px;background:#fff;color:#173128;min-width:0}textarea{min-height:42px;resize:vertical}fieldset{border:1px solid #d6e6de;border-radius:10px;padding:14px;margin:14px 0}legend{padding:0 7px;font-weight:700;color:#1a5c44}.grid{display:grid;gap:12px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.price-toggle{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}button{font:inherit;cursor:pointer;border-radius:8px;padding:10px 13px;border:1px solid transparent;font-weight:700}.primary,.selected{background:#174d3a;color:#fff}.secondary{background:#fff;color:#174d3a;border-color:#a8c7b8}.computed{grid-column:1/-1;margin:0;color:#2d5949}.message{margin:12px 0 0;color:#0d6947;font-weight:650}.empty{text-align:center;padding:22px 10px;color:#547166}.empty h3{color:#24483a}.system-list{display:grid;gap:10px}.system-card{border:1px solid #d6e6de;border-radius:10px;padding:14px;display:flex;justify-content:space-between;gap:16px}.system-card h3{margin:0;color:#174d3a}.system-card p{margin:7px 0 0;font-size:.9rem;color:#4c675d}.card-top{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.badge{font-size:.72rem;background:#edf1ef;color:#4e635a;padding:4px 8px;border-radius:99px}.badge.active{background:#dff2e7;color:#12623f}.card-actions{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}@media (max-width:640px){.app-shell{padding:16px 12px 36px}.panel{padding:16px}.two{grid-template-columns:1fr}.system-card{flex-direction:column}.card-actions{width:100%}.card-actions button{flex:1}.notice{font-size:.92rem}}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.tabs button{flex:1 1 9rem}.tabs .selected{background:#174c36;color:#fff}.profile-row,.cost-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;align-items:end;margin:.75rem 0;padding:.75rem;background:#f5f8f6;border-radius:.5rem}.profile-row button,.cost-row button{margin-bottom:.1rem}.result{margin-top:1rem;border:1px solid #cddbd3;border-radius:.7rem;padding:1rem;background:#fff}.result h2,.result h3{margin-top:0}.result-grid,.internal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem}.result-grid p,.internal-grid p{margin:.2rem 0}.warning{border-color:#b36a00;background:#fff8e8}.success{color:#174c36;font-weight:600}.notice{color:#5a4200}.check{display:flex;gap:.5rem;align-items:center;margin:.75rem 0}.check input{width:auto}small{color:#59665e}@media (max-width: 700px){.profile-row,.cost-row,.result-grid,.internal-grid{grid-template-columns:1fr}.tabs button{flex-basis:100%}}.app-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.header-actions{display:flex;gap:8px;flex-wrap:wrap}.home-panel{display:grid;gap:24px;background:#fff;color:#173128;border:1px solid #dce9e2;border-radius:16px;padding:24px;margin:16px 0;box-shadow:0 8px 24px #1731280d}.home-panel h2{margin:3px 0 8px;font-size:clamp(1.5rem,4vw,2.1rem);color:#123c2d}.home-panel p{margin:0;color:#537066}.home-panel .eyebrow{color:#197451}.home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-action{min-height:116px;text-align:left;display:grid;align-content:space-between;gap:14px;padding:18px}.home-action strong{font-size:1.1rem}.home-action span{font-size:.9rem;font-weight:500;line-height:1.35}.home-action.primary{background:#e5f3ea;color:#123c2d;border-color:#75b993;box-shadow:inset 0 0 0 1px #c8e5d4}.home-action.secondary{background:#fff;color:#174d3a;border-color:#c8ded2}.settings-link{justify-self:start;background:#fff;color:#174d3a;border-color:#a8c7b8}.settings-panel{display:grid;gap:18px}.settings-panel h2{margin:3px 0 8px}.settings-panel p:not(.eyebrow){margin:0;color:#537066}.settings-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.settings-actions button{min-height:64px}@media (max-width:640px){.app-header{flex-direction:column}.header-actions{width:100%}.header-actions button{flex:1}.home-panel{padding:20px}.home-actions,.settings-actions{grid-template-columns:1fr}}.hint{margin:0 0 12px;color:#537066;font-size:.9rem}.photo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.photo-card{margin:0;border:1px solid #d6e6de;border-radius:10px;overflow:hidden;background:#f5f8f6}.photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photo-card figcaption{display:grid;gap:8px;padding:9px;font-size:.78rem;color:#4c675d}.photo-card button{padding:7px 9px;font-size:.78rem}.configuration-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.configuration-values>div,.configuration-profiles article{padding:12px;border:1px solid #d6e6de;border-radius:8px}.configuration-values dt{color:#4c675d}.configuration-values dd{margin:6px 0 0;font-weight:700}.configuration-profiles{display:grid;gap:12px;margin-bottom:16px}.configuration-preview code{overflow-wrap:anywhere}@media (max-width:600px){.configuration-values{grid-template-columns:1fr}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0921187a}.confirm-dialog{width:min(100%,440px);background:#fff;border:1px solid #b9d0c5;border-radius:14px;padding:22px;box-shadow:0 20px 48px #00000047}.confirm-dialog h2{margin:0 0 10px;color:#123c2d}.confirm-dialog p{line-height:1.5;color:#415d52}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;flex-wrap:wrap}@media (max-width:480px){.dialog-actions button{width:100%}}.build-info{font-size:.78rem!important;color:#617c70!important;margin-top:8px!important;font-variant-numeric:tabular-nums}.offer-document-sheet{max-width:760px;margin:1rem auto;padding:2rem;background:#fff;color:#172122;border:1px solid #d9e1e0}.offer-document-header{display:flex;justify-content:space-between;gap:1rem;border-bottom:2px solid #177e71;padding-bottom:1rem}.offer-document-header strong{font-size:1.45rem;letter-spacing:.08em;color:#177e71}.offer-document-header p{margin:.2rem 0}.document-section,.document-price{margin-top:1.5rem}.document-section h3,.document-price h3{margin-bottom:.75rem}.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.document-grid div,.document-price dl div{display:flex;justify-content:space-between;gap:1rem}.document-grid dt,.document-price dt{color:#536564}.document-grid dd,.document-price dd{margin:0;font-weight:650;text-align:right}.document-price{padding:1.1rem;background:#eef7f5;border-left:4px solid #177e71}.document-price dl{display:grid;gap:.55rem;margin:0}.document-total{margin-top:.35rem;padding-top:.7rem;border-top:1px solid #b8d5ce;font-size:1.1rem}.document-photos>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.document-photos img{width:100%;max-height:250px;object-fit:cover;border-radius:.35rem}.offer-document-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid #d9e1e0;color:#536564;font-size:.85rem}@media (max-width:600px){.offer-document-sheet{padding:1rem}.offer-document-header{display:block}.document-grid{grid-template-columns:1fr}.document-photos>div{grid-template-columns:1fr}}@media print{body{background:#fff}.app-header,.no-print,.message{display:none!important}.app-shell{max-width:none;padding:0}.offer-document{border:0;box-shadow:none;padding:0}.offer-document-sheet{border:0;margin:0;max-width:none;padding:0}.document-photos img{break-inside:avoid;page-break-inside:avoid}}.comparison-indicator{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:13px 15px;border:1px solid;border-radius:10px;font-variant-numeric:tabular-nums}.comparison-indicator.positive{background:#e9f7ee;border-color:#69b982;color:#125d31}.comparison-indicator.negative{background:#fff0f0;border-color:#df8d8d;color:#9a2525}.comparison-indicator.neutral{background:#f1f5f3;border-color:#bdcbc3;color:#365347}.comparison-indicator span{font-weight:700}@media (max-width:520px){.comparison-indicator{align-items:flex-start;flex-direction:column}}.declaration-document{margin-top:20px}.declaration-document-sheet{max-width:760px;margin:1rem auto;padding:2rem;background:#fff;color:#172122;border:1px solid #d9e1e0}.declaration-document-header{display:flex;justify-content:space-between;gap:1rem;border-bottom:2px solid #177e71;padding-bottom:1rem}.declaration-document-header strong{font-size:1.45rem;letter-spacing:.08em;color:#177e71}.declaration-document-header p{margin:.2rem 0}.declaration-document-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid #d9e1e0;color:#536564;font-size:.85rem}@media (max-width:600px){.declaration-document-sheet{padding:1rem}.declaration-document-header{display:block}}@media print{.declaration-document{width:100%;margin:0}.declaration-document-sheet{border:0;margin:0;max-width:none;padding:0}.declaration-document .no-print{display:none!important}}.offer-preview-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid #d6e6de;border-radius:10px;overflow:hidden;margin:1rem 0}.offer-preview-summary p{display:flex;justify-content:space-between;gap:1rem;margin:0;padding:.85rem 1rem;border-bottom:1px solid #dfece7}.offer-preview-summary p:nth-last-child(-n+2){border-bottom:0}.offer-preview-summary p:nth-child(odd){border-right:1px solid #dfece7}.offer-preview-summary span{color:#4c675d}.offer-preview-summary strong{text-align:right}.thermal-summary{margin:1rem 0;padding:1rem 1.1rem;border-left:4px solid #177e71;background:#eef7f5}.thermal-summary h3{margin:0 0 .55rem}.thermal-summary p{margin:.35rem 0}.thermal-missing{padding:.8rem 1rem;border-left:4px solid #b98618;background:#fff8e7}@media (max-width:600px){.offer-preview-summary{grid-template-columns:1fr}.offer-preview-summary p:nth-child(odd){border-right:0}.offer-preview-summary p:nth-last-child(-n+2){border-bottom:1px solid #dfece7}.offer-preview-summary p:last-child{border-bottom:0}}.offer-document-sheet{box-sizing:border-box;max-width:210mm;min-height:297mm;padding:16mm 14mm;border-color:#d1ddda;box-shadow:0 8px 24px #1a3d3014}.offer-document-header{align-items:flex-start;border-bottom:3px solid #177e71;padding-bottom:4mm}.offer-document-header strong{display:block;font-size:1.2rem}.document-subtitle{margin:.4rem 0 0!important;color:#536564}.document-meta{min-width:44mm;text-align:right}.document-meta p{display:flex;justify-content:space-between;gap:10px;margin:.35rem 0}.document-meta span{color:#536564}.document-section{margin-top:6mm}.document-section h3,.document-price h3{font-size:1.02rem;margin:0 0 3mm;color:#123c2d}.document-scope-grid,.document-thermal-grid{gap:0;border:1px solid #d9e5e1;border-radius:4px;overflow:hidden}.document-scope-grid div,.document-thermal-grid div{padding:3mm 3.5mm;background:#fbfdfc;border-bottom:1px solid #e1ebe7}.document-scope-grid div:nth-last-child(-n+2),.document-thermal-grid div:nth-last-child(-n+2){border-bottom:0}.document-scope-grid div:nth-child(odd),.document-thermal-grid div:nth-child(odd){border-right:1px solid #e1ebe7}.document-grid dt{font-size:.84rem}.document-grid dd{font-size:.92rem;color:#123c2d}.document-thermal{padding:4mm 0 0;border-top:1px solid #d9e5e1}.document-thermal p{margin:0;color:#536564;font-size:.9rem}.document-price{margin-top:8mm;padding:5mm 5.5mm;background:#edf7f4;border-left:4px solid #177e71}.document-price-lead{margin:0 0 3mm;color:#536564;font-size:.87rem}.document-price dl{gap:1.8mm}.document-price dl div{padding:0}.document-price dt{font-size:.92rem}.document-price dd{font-variant-numeric:tabular-nums}.document-total{margin-top:2mm!important;padding-top:3mm!important;font-size:1.08rem}.offer-document-footer{margin-top:10mm;font-size:.78rem}@media (max-width:600px){.offer-document-sheet{min-height:0;padding:1rem}.document-meta{text-align:left;margin-top:1rem;min-width:0}.document-meta p{justify-content:flex-start}.document-scope-grid div:nth-child(odd),.document-thermal-grid div:nth-child(odd){border-right:0}.document-scope-grid div:nth-last-child(-n+2),.document-thermal-grid div:nth-last-child(-n+2){border-bottom:1px solid #e1ebe7}.document-scope-grid div:last-child,.document-thermal-grid div:last-child{border-bottom:0}}@media print{.offer-document-sheet{width:182mm;min-height:0;padding:12mm;border:0;box-shadow:none}.offer-document-header{padding-bottom:4mm}.document-section,.document-price{break-inside:avoid;page-break-inside:avoid}.document-photos{break-before:auto}}
