:root{color:#000;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand:#ff6400;--bg:#fff;--surface:#fff;--surface-muted:#ffecbf;--surface-success:#e5f3c6;--surface-danger:#facac7;--surface-warning:#ffd8bf;--surface-info:#eaf2ff;--text-primary:#000;--text-secondary:#98989d;--text-inverse:#fff;--border:#ececee;--button-primary:#96ce1c;--button-primary-pressed:#79b62a;--link:#83c221;--success:#8fc81f;--danger:#ea2b1f;--warning:#ff9e00;--info:#4d78d6;--shadow:0 12px 32px #0e131c14;background:#fff;font-family:SF Pro Display,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:16px;font-weight:400;line-height:1.4}*{box-sizing:border-box}html{background:var(--surface)}body{background:var(--surface);min-width:320px;color:var(--text-primary);margin:0}button,input,textarea,select{font:inherit}button{background:0 0;border:0}#root{background:var(--surface);min-height:100svh}a{color:inherit}h1,h2,h3,p,ul{margin:0}ul{padding-left:1.15rem}.screen{background:var(--surface);min-height:100svh;padding:calc(12px + env(safe-area-inset-top)) 12px calc(20px + env(safe-area-inset-bottom))}.screen__content{background:var(--surface);width:100%;max-width:520px;margin:0 auto}.page-stack{background:var(--surface);flex-direction:column;gap:10px;display:flex}.pull-refresh{overscroll-behavior-y:contain}.pull-refresh__indicator{justify-content:center;align-items:flex-end;transition:height .2s,opacity .2s;display:flex;overflow:hidden}.pull-refresh--dragging .pull-refresh__indicator{transition:none}.pull-refresh__indicator-inner{min-height:44px;color:var(--text-secondary);background:#fff;border:1px solid #f1f1f2;border-radius:999px;align-items:center;gap:10px;margin-bottom:8px;padding:0 14px;font-size:.875rem;font-weight:600;line-height:1.2;display:inline-flex}.pull-refresh__spinner{border-width:3px;width:18px;height:18px;margin:0}.scenario-switcher{background:var(--surface);box-shadow:none;border:1px solid #f1f1f2;border-radius:20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;display:grid}.scenario-switcher__option{min-height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:14px;padding:0 10px;font-size:.75rem;font-weight:600}.scenario-switcher__option--active{color:var(--brand);background:#ffd6b8}.summary-card,.section-card,.support-card,.state-card{background:var(--surface);box-shadow:none;border:1px solid #f1f1f2;border-radius:20px;padding:16px}.summary-card__subtitle,.info-card__kind,.sheet__hero-label,.section-count,.price-block__label,.balance-label{letter-spacing:.04em;color:var(--text-secondary);text-transform:uppercase;font-size:.75rem;line-height:1.2}.summary-card__title,.summary-card h2,.section-head h2,.support-card h2,.state-card h2,.sheet__header h2{font-size:1.25rem;line-height:1.1}.summary-card__title{margin-bottom:4px}.summary-card__subtitle{line-height:1.3}.summary-card{background:var(--surface)}.summary-card--danger .summary-metric,.summary-card--success .summary-metric{background:0 0}.summary-card__header,.section-head,.sheet__header,.sheet__hero{justify-content:space-between;align-items:center;gap:12px;display:flex}.summary-card__header>div:first-child{min-width:0}.summary-grid{background:#ffffff8f;border:1px solid #ececee;border-radius:16px;flex-direction:column;margin-top:14px;display:flex;overflow:hidden}.summary-tariff{background:#f8f8f9;border-radius:16px;flex-direction:column;gap:4px;margin-top:12px;padding:12px 14px;display:flex}.summary-tariff__label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);font-size:.75rem;line-height:1.2}.summary-tariff__value{color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1.25}.balance-value{margin-top:4px;font-size:2rem;font-weight:700;line-height:1}.balance-value--negative{color:var(--danger)}.summary-metric{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:12px;padding:12px;font-size:.75rem;display:flex}.summary-metric+.summary-metric{border-top:1px solid #ececee}.summary-metric strong{color:var(--text-primary);font-size:1rem}.summary-lead{margin-top:14px;font-weight:600}.summary-text,.support-card p,.state-card p,.info-card__description,.price-note,.context-note,.dependency-note,.sheet__summary,.sheet__summary{color:var(--text-secondary)}.summary-text{margin-top:10px}.summary-note{background:var(--bg);color:var(--text-secondary);border-radius:14px;margin-top:10px;padding:12px 14px;font-size:.875rem;line-height:1.45}.summary-note--info{background:var(--surface-info);color:#4f658f}.summary-note--success{color:#5d7440;background:#8fc81f1f}.summary-note--neutral{color:#7a7c82;background:#f3f4f6}.summary-actions{flex-direction:column;gap:10px;margin-top:14px;display:flex}.summary-actions__secondary{grid-template-columns:1fr 1fr;gap:8px;display:grid}.button{cursor:pointer;border-radius:16px;justify-content:center;align-items:center;width:100%;min-height:48px;padding:0 16px;font-weight:600;transition:transform .18s,background-color .18s,opacity .18s;display:inline-flex}.button:active{transform:scale(.99)}.button--primary{background:var(--button-primary);color:var(--text-inverse)}.button--primary:active{background:var(--button-primary-pressed)}.button--secondary{background:var(--bg);color:var(--text-primary)}.button--ghost{color:var(--brand)}.section-card{background:var(--surface);flex-direction:column;gap:10px;padding-bottom:4px;display:flex}.section-head{background:#f8f8f9;border-radius:20px 20px 16px 16px;margin:-16px -16px 0;padding:16px 16px 12px}.section-head__meta{align-items:center;gap:8px;display:flex}.section-total{background:#fff;border:1px solid #f1f1f2;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:28px;padding:0 10px;display:flex}.section-total span{color:var(--text-secondary);align-items:center;font-size:.75rem;line-height:1.2;display:inline-flex}.section-total strong{color:var(--text-primary);align-items:center;font-size:.875rem;line-height:1.2;display:inline-flex}.cards-list{background:#fff;border-radius:18px;flex-direction:column;gap:0;padding:2px 0 0;display:flex;overflow:hidden}.info-card,.empty-state,.sheet__metric,.detail-block,.sheet__warning{background:var(--surface);border:1px solid #f1f1f2;border-radius:16px;padding:14px}.info-card h3,.detail-block h3{font-size:1rem;line-height:1.2}.info-card{background:0 0;border:0;border-radius:0;flex-direction:column;gap:12px;padding:12px 14px;display:flex}.cards-list>.info-card{position:relative}.cards-list>.info-card+.info-card:before{content:"";background:#e7e7ea;height:1px;position:absolute;top:0;left:14px;right:14px}.info-card__identity{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.info-card__icon{letter-spacing:.04em;border-radius:10px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex}.info-card__icon--success,.info-card__icon--warning,.info-card__icon--neutral{background:var(--surface-success);color:var(--link)}.info-card__main{min-width:0}.info-card__description{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.info-card__toggle{text-align:left;width:100%;color:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.info-card__collapsed-side{flex:none;justify-content:flex-end;align-items:center;gap:8px;min-width:76px;display:flex}.info-card__price{color:var(--text-primary);text-align:right;font-size:.875rem;font-weight:600;line-height:1.2}.info-card__arrow-glyph,.info-card__footer-glyph{color:var(--text-secondary);font-size:1.25rem;line-height:1;transition:transform .18s}.info-card--expanded .info-card__arrow-glyph{transform:rotate(90deg)}.info-card__expanded{flex-direction:column;gap:12px;display:flex}.info-card__rows{border-top:1px solid #f1f1f2;border-bottom:1px solid #f1f1f2;flex-direction:column;display:flex}.info-card__row{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;padding:10px 0;display:flex}.info-card__row+.info-card__row{border-top:1px solid #f1f1f2}.info-card__row span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;flex:0 0 92px;font-size:.75rem;line-height:1.2}.info-card__row strong{color:var(--text-primary);overflow-wrap:anywhere;text-align:right;flex:1;font-size:.875rem;font-weight:500;line-height:1.35}.info-card__note,.dependency-note{font-size:.875rem;line-height:1.4}.info-card__note{color:var(--text-secondary)}.dependency-note{color:#8a5a00;background:#ff9e0014;border-radius:12px;padding:10px 12px}.tag-list{flex-wrap:wrap;gap:8px;display:flex}.tag,.status-badge{text-align:center;border-radius:999px;align-items:center;min-height:28px;padding:6px 10px;font-size:.75rem;font-weight:600;line-height:1.2;display:inline-flex}.tag{max-width:100%;color:var(--text-secondary);white-space:normal;word-break:break-word;overflow-wrap:anywhere;background:#fff;border:1px solid #f1f1f2}.status-badge{white-space:normal;word-break:normal;overflow-wrap:normal;text-wrap:balance;flex:none;max-width:100%}.status-badge--success{color:#567517;background:#8fc81f24}.status-badge--warning{color:#8a5a00;background:#ff9e0024}.status-badge--danger{color:#aa2b23;background:#ea2b1f1f}.status-badge--neutral{color:#6f6f75;background:#98989d29}.support-card{background:linear-gradient(#fff 0%,#f8f8f9 100%);flex-direction:column;gap:10px;display:flex}.designer-screen{flex-direction:column;gap:12px;display:flex}.designer-summary{background:var(--surface);border:1px solid #f1f1f2;border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.designer-summary__header,.designer-summary__total-row,.designer-card__header,.designer-card__row,.designer-card__footer{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.designer-summary__title-wrap h1,.designer-section-block h2{font-size:1rem;line-height:1.06}.designer-summary__title-wrap p,.designer-card__title-wrap p{color:var(--text-secondary);margin-top:2px;font-size:.75rem;line-height:1.17}.designer-summary__status{color:var(--text-secondary);font-size:.75rem;font-weight:600;line-height:1.17}.designer-summary__totals,.designer-card__rows{border:1px solid #f1f1f2;border-radius:16px;overflow:hidden}.designer-summary__total-row,.designer-card__row{background:#fff;padding:14px 16px}.designer-summary__total-row+.designer-summary__total-row,.designer-card__row+.designer-card__row{border-top:1px solid #f1f1f2}.designer-summary__total-row span,.designer-card__row span{color:var(--text-secondary);font-size:.75rem;line-height:1.17}.designer-summary__total-row strong,.designer-card__row strong{color:var(--text-primary);text-align:right;font-size:.75rem;font-weight:600;line-height:1.17}.designer-summary__description,.designer-card__note{color:var(--text-secondary);font-size:.75rem;line-height:1.17}.designer-summary__footer{background:var(--bg);border-top:1px solid #f1f1f2;justify-content:space-between;align-items:center;min-height:68px;margin:0 -16px -16px;padding:0 16px;display:flex}.designer-summary__footer span{color:var(--text-secondary);font-size:.75rem;line-height:1.17}.designer-summary__footer strong{font-size:1.25rem;font-weight:700;line-height:1}.designer-summary__actions{margin-top:4px}.designer-primary-button{background:var(--button-primary);width:100%;min-height:46px;color:var(--text-inverse);cursor:pointer;border-radius:16px;font-size:.75rem;font-weight:600;line-height:1.17}.designer-section-block h2{margin-bottom:12px}.designer-list{flex-direction:column;gap:12px;margin-top:12px;display:flex}.designer-card{background:#fff;border:1px solid #f1f1f2;border-radius:16px;min-height:159px;overflow:hidden}.designer-card__header{border-bottom:1px solid #f1f1f2;padding:16px}.designer-card__identity{flex:1;align-items:flex-start;gap:8px;min-width:0;display:flex}.designer-card__title-wrap{min-width:0}.designer-card h3{font-size:.75rem;font-weight:600;line-height:1.17}.designer-card__rows{border:0;border-radius:0}.designer-card__footer{background:var(--bg);cursor:pointer;border-top:1px solid #f1f1f2;min-height:46px;padding:0 16px;font-size:.75rem;font-weight:400;line-height:1.17}.info-card__footer{margin-inline:-14px;min-height:46px;color:var(--text-primary);cursor:pointer;background:#f1f1f2;border-radius:0 0 16px 16px;justify-content:space-between;align-items:center;margin-bottom:-14px;padding:0 16px;font-size:.75rem;font-weight:600;line-height:1.2;display:flex}.section-count{background:#fff;border:1px solid #f1f1f2;border-radius:999px;justify-content:center;align-items:center;min-width:28px;min-height:28px;padding:0 8px;display:inline-flex}.empty-state,.state-card{text-align:center}.state-card{flex-direction:column;align-items:center;gap:14px;display:flex}.spinner{border:4px solid #96ce1c33;border-top-color:var(--button-primary);border-radius:50%;width:40px;height:40px;animation:.9s linear infinite spin}.sheet{pointer-events:none}.sheet--open{pointer-events:auto}.sheet__backdrop{opacity:0;background:#080c146b;transition:opacity .2s;position:fixed;inset:0}.sheet__backdrop--open{opacity:1}.sheet__panel{background:var(--surface);max-height:calc(100svh - 8px);transform:translateY(calc(100% + var(--sheet-offset-y,0px)));border-radius:24px 24px 0 0;flex-direction:column;transition:transform .24s;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -16px 40px #0e131c29}.sheet--open .sheet__panel{transform:translateY(var(--sheet-offset-y,0px))}.sheet--dragging .sheet__panel,.sheet--dragging .sheet__backdrop{transition:none}.sheet__handle{background:#d7d7da;border-radius:999px;width:48px;height:5px;margin:0 auto 10px}.sheet__sticky-top{z-index:2;background:var(--surface);padding:12px 16px 10px;position:sticky;top:0}.sheet__drag-zone{touch-action:none;-webkit-user-select:none;user-select:none}.sheet__close{min-height:40px;color:var(--brand);cursor:pointer;background:#ff640014;border-radius:12px;padding:0 12px}.sheet__content{padding:0 16px 16px;overflow-y:auto}.sheet__hero{background:linear-gradient(#fff7f0 0%,#fff 100%);border-radius:16px;margin-top:4px;padding:14px}.sheet__hero-price{margin-top:6px;font-size:1.5rem;font-weight:700}.sheet__summary{margin-top:16px}.sheet__metrics,.sheet__sections,.sheet__actions{flex-direction:column;gap:10px;margin-top:14px;display:flex}.sheet__metric{justify-content:space-between;gap:12px;display:flex}.sheet__metric span{color:var(--text-secondary)}.detail-block ul{flex-direction:column;gap:8px;margin-top:10px;display:flex}.sheet__warning{background:var(--surface-warning);color:#7b562e;margin-top:16px;font-size:.875rem}.sheet__sticky-bottom{padding:8px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(#fff0 0%,#fff 22%);position:sticky;bottom:0}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:768px){.screen{padding-inline:16px}.sheet__panel{width:520px;transform:translate(-50%, calc(100% + var(--sheet-offset-y,0px)));border-radius:24px;max-height:min(88svh,820px);bottom:16px;left:50%;right:auto}.sheet--open .sheet__panel{transform:translate(-50%, var(--sheet-offset-y,0px))}}@media (max-width:420px){.screen{padding-inline:10px}.summary-card,.section-card,.support-card,.state-card{border-radius:20px;padding:16px}.scenario-switcher{grid-template-columns:1fr}.summary-grid{border-radius:14px}.summary-card__header,.sheet__hero{flex-direction:column;align-items:flex-start}.summary-actions__secondary{grid-template-columns:1fr}.summary-metric,.info-card__row,.info-card__toggle{flex-direction:column;align-items:flex-start}.info-card__row span,.info-card__row strong{flex:initial;text-align:left}.info-card__footer{margin-inline:-16px;margin-bottom:-16px}.info-card__collapsed-side{justify-content:space-between;width:100%}.designer-summary__header,.designer-summary__total-row,.designer-card__header,.designer-card__row,.designer-card__footer{flex-direction:column;align-items:flex-start}.designer-summary__total-row strong,.designer-card__row strong{text-align:left}}
