.two-path{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:start;margin:1.5rem 0}.two-path-card{background:var(--color-bg-alt);border-radius:var(--section-radius);padding:1.5rem}.two-path-card h3{margin-top:0}.two-path-or{display:flex;align-items:center;justify-content:center;color:var(--color-muted);font-size:1.4rem;padding-top:4rem}@media(max-width:640px){.two-path{grid-template-columns:1fr}.two-path-or{padding:0}}#dash{display:grid;gap:1.5rem;margin:2rem 0;grid-template-columns:1fr;grid-template-areas:"timeline" "cost" "funding" "calendar"}@media(min-width:768px){#dash{grid-template-columns:1fr 1fr;grid-template-areas:"timeline timeline" "cost funding" "calendar calendar"}}@media(min-width:1200px){#dash{grid-template-columns:1fr 1fr 1fr;grid-template-areas:"timeline timeline timeline" "cost funding calendar"}}#dash>.tile{background:var(--color-bg-alt);border-radius:var(--section-radius);padding:1.5rem}#dash>.tile-timeline{grid-area:timeline}#dash>.tile-cost{grid-area:cost}#dash>.tile-funding{grid-area:funding}#dash>.tile-calendar{grid-area:calendar}.bar{position:relative;height:.8rem;background:var(--color-surface);border-radius:.4rem;height:1.2rem}.bar>span:first-child{position:absolute;height:100%;background:var(--color-primary);border-radius:.4rem}.bar .marker{position:absolute;top:-.4rem;width:.3rem;height:1.6rem;background:var(--color-text);border-radius:.2rem;z-index:1}.bar .marker.today{background:var(--color-primary)}.bar .dot{position:absolute;top:50%;transform:translateY(-50%);width:.8rem;height:.8rem;border-radius:50%;z-index:2}.timeline{width:100%}.timeline h2{margin:0}.tl-header{margin-bottom:1rem}.tl-header-row{display:grid;grid-template-columns:6rem 1fr;gap:.5rem;align-items:center}.tl-year-row{display:grid;grid-template-columns:repeat(var(--tl-months,12),1fr);font-size:.85rem;font-weight:600;border-bottom:.1rem solid var(--color-border)}.tl-year-cell{text-align:center;padding:.25rem 0}.tl-month-row{display:grid;grid-template-columns:repeat(var(--tl-months,12),1fr);font-size:.75rem;color:var(--color-muted)}.tl-month-cell{text-align:center;padding:.25rem 0}.tl-swimlanes{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.tl-swimlane{display:grid;grid-template-columns:6rem 1fr;gap:.5rem;align-items:center;min-height:2.5rem}.tl-swimlane-label{font-size:.8rem;font-weight:600;color:var(--color-muted);text-transform:uppercase;text-align:right;padding-right:.5rem}.tl-swimlane-grid{display:grid;grid-template-columns:repeat(var(--tl-months,12),1fr);position:relative;height:100%;align-items:center}.tl-phase-bar{position:absolute;top:25%;height:50%;grid-column:var(--phase-start,1)/var(--phase-end,-1);background:var(--color-surface);border-radius:.25rem;opacity:.5}.tl-cell{display:flex;justify-content:center;align-items:center;position:relative;height:100%}.tl-cell.today{background:var(--color-surface);border-radius:.25rem}.tl-marker{display:flex;flex-direction:column;align-items:center;z-index:1}.tl-marker.done{opacity:.4}.tl-marker-dot{width:.875rem;height:.875rem;border-radius:50%;background:var(--evt-color,var(--color-muted));border:.2rem solid var(--color-bg-alt)}.tl-marker-txt{font-size:.75rem;white-space:nowrap;margin-top:.15rem;color:var(--color-body);font-weight:500}.tl-today-bar{display:grid;grid-template-columns:6rem 1fr;gap:.5rem;align-items:center;margin-top:.25rem;height:1rem}.tl-today-line{position:relative;height:100%}.tl-today-line::before{content:'';position:absolute;left:calc((var(--today-col,1) - 1) * 100%/var(--tl-months,12));width:.25rem;height:calc(100% + 6rem);top:-5.5rem;background:var(--color-primary);border-radius:.125rem;z-index:2;opacity:.6}.tl-footer{display:flex;justify-content:space-between;align-items:flex-start;margin-top:1rem;padding-top:.75rem;border-top:.1rem solid var(--color-border)}.tl-warranty{display:flex;flex-direction:column;gap:.25rem}.tl-warranty-title{font-size:.8rem;font-weight:600;color:var(--color-muted)}.tl-warranty-grid{display:flex;gap:1.5rem;flex-wrap:wrap}.tl-warranty-item{display:flex;gap:.5rem;font-size:.85rem}.tl-warranty-item .small{color:var(--color-muted)}.stack{display:flex;height:1.5rem;border-radius:.4rem;overflow:hidden;flex:1}.stack>span{height:100%}.stack-legend{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem;font-size:.875rem}.stack-legend div{display:flex;align-items:center}.stack-legend .label{flex:1}.stack-legend .value{color:var(--color-muted)}.stack-total{margin-top:.75rem;padding-top:.75rem;border-top:.1rem solid var(--color-surface);text-align:center}.dual-stack{display:flex;flex-direction:column;gap:.25rem}.dual-row{display:flex;align-items:center;gap:.75rem}.dual-label{width:4rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--color-muted)}.dual-legend{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;font-size:.875rem}.legend-col{display:flex;flex-direction:column;gap:.25rem}.legend-col div{display:flex;justify-content:space-between}.legend-col span{color:var(--color-muted)}.dual-total{margin-top:.75rem;padding-top:.75rem;border-top:.1rem solid var(--color-surface);text-align:center}.stats{display:flex;flex-direction:column;gap:.5rem}.stats>div{display:flex;justify-content:space-between}.stats .total{font-weight:700;border-top:.1rem solid var(--color-surface);padding-top:.5rem;margin-top:.25rem}.src-r{border-color:var(--color-error)}.tile-link{margin-top:1rem;display:block}.tile-surface{margin-top:1rem;padding:.75rem;background:var(--color-surface);border-radius:var(--input-radius);display:flex;align-items:center;gap:.5rem}.tile-divider{margin-top:1rem;padding-top:.75rem;border-top:.1rem solid var(--color-surface)}.tile-divider-label{margin:0 0 .5rem;font-size:.875rem;color:var(--color-muted)}.rebate-row{display:flex;justify-content:space-between}.color-success{color:var(--color-success)}.modal-center{padding:2rem;display:flex;flex-direction:column;align-items:center}.modal-body{padding:1rem}.modal-actions{display:flex;justify-content:center;margin-top:1.5rem;gap:1rem}.modal-preview{max-height:40vh;overflow:auto;background:var(--color-bg-alt);padding:1rem;border-radius:var(--input-radius);font-size:1.4rem}.spin{animation:spin 1s linear infinite}.icon-xl{width:4rem;height:4rem}.cal-schedule{margin-bottom:2rem}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin-top:1rem}.schedule-item{background:var(--color-surface);border-radius:var(--section-radius);padding:1rem}.schedule-item.confirmed{border-left:.3rem solid var(--color-primary)}.schedule-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.schedule-body{font-size:.9rem;margin-bottom:.75rem}.schedule-date{font-weight:600;color:var(--color-primary)}.schedule-notes{margin-top:.25rem;font-size:.8rem;color:var(--color-muted)}