.app-header{background:#ff6a00eb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:6px 18px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10;color:#fff;box-shadow:0 1px #0000000a}.app-header-brand{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.app-header-logo{width:66px;height:66px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:2px}.app-header-logo-img{width:100%;height:100%;object-fit:contain;display:block}.app-header-name{font-size:16px;font-weight:600;letter-spacing:-.2px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.app-header-demo-pill{background:#fff3;border:none;padding:5px 10px;border-radius:var(--radius-sm);font-size:10px;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.app-header-avatar{width:36px;height:36px;border-radius:50%;background:#fff;color:var(--color-brand);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;background:var(--color-surface);border-top:.5px solid var(--color-border);padding:8px 12px calc(14px + env(safe-area-inset-bottom));display:flex;gap:4px;z-index:20}.bottom-nav-item{flex:1;background:transparent;border:none;padding:8px;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--color-text-muted);position:relative}.bottom-nav-item.is-active{color:var(--color-brand)}.bottom-nav-label{font-size:10px;font-weight:500}.bottom-nav-badge{position:absolute;top:6px;right:calc(50% - 18px);width:7px;height:7px;background:var(--color-brand);border-radius:50%}.alert-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-bg);padding:20px 16px;overflow-y:auto;z-index:30}.alert-card{background:var(--color-surface);border:2px solid var(--color-danger);border-radius:16px;padding:18px}.alert-header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.alert-icon{width:32px;height:32px;background:var(--color-danger-soft);color:var(--color-danger);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.alert-header-text{flex:1;min-width:0}.alert-title{font-size:14px;font-weight:500;margin:0}.alert-meta{font-size:11px;color:var(--color-text-muted);margin:1px 0 0}.alert-reassurance{background:var(--color-success-bg);border-radius:var(--radius-md);padding:12px;margin-bottom:14px;display:flex;gap:10px}.alert-reassurance-dot{width:7px;height:7px;background:var(--color-success);border-radius:50%;margin-top:5px;flex-shrink:0}.alert-reassurance-title{font-size:12px;font-weight:500;margin:0 0 2px;color:var(--color-success-text)}.alert-reassurance-body{font-size:12px;color:var(--color-success-text-alt);margin:0;line-height:1.5}.alert-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.alert-btn{padding:12px;border-radius:var(--radius-md);text-align:center;font-size:12px;font-weight:500;text-decoration:none}.alert-btn-primary{background:var(--color-brand);color:#fff}.alert-btn-secondary{background:var(--color-surface);color:var(--color-text);border:.5px solid var(--color-border-strong)}.alert-back{background:transparent;border:none;color:var(--color-text-muted);font-size:11px;padding:8px;width:100%;margin-top:8px}.loading-screen{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--color-bg)}.loading-sun{position:relative;width:56px;height:56px}.loading-sun-disc{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--color-brand);animation:sun-pulse 1.4s ease-in-out infinite}@keyframes sun-pulse{0%,to{transform:scale(.85);opacity:.6}50%{transform:scale(1);opacity:1}}.loading-text{font-size:14px;color:var(--color-text-muted);margin:0}.error-screen{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--color-bg)}.error-card{width:100%;max-width:400px;background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-xl);padding:24px;text-align:center}.error-title{font-size:18px;font-weight:500;margin:0 0 8px;color:var(--color-text)}.error-body{font-size:13px;color:var(--color-text-muted);line-height:1.6;margin:0 0 16px}.error-retry{background:var(--color-surface);border:.5px solid var(--color-border-strong);color:var(--color-text);padding:10px 18px;border-radius:var(--radius-md);font-size:13px;font-weight:500;margin-bottom:18px}.error-contact{display:flex;flex-direction:column;gap:8px;margin-top:8px}.error-contact-btn{background:var(--color-surface);color:var(--color-text);border:.5px solid var(--color-border-strong);padding:12px;border-radius:var(--radius-md);font-size:13px;font-weight:500;text-decoration:none;text-align:center}.error-contact-btn.primary{background:var(--color-brand);color:#fff;border:none}.savings-hero{margin-bottom:22px}.savings-hero-label{font-size:11px;color:var(--color-text-muted);margin:0 0 4px;text-transform:uppercase;letter-spacing:.8px;font-weight:500}.savings-hero-value{font-size:44px;font-weight:500;color:var(--color-brand);letter-spacing:-1.5px;line-height:1;margin:0}.savings-hero-sub{font-size:12px;color:var(--color-text-muted);margin:6px 0 0}.producing-now{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px;margin-bottom:12px;display:flex;align-items:center;gap:12px}.producing-now-icon{width:38px;height:38px;border-radius:var(--radius-md);background:var(--color-surface-alt);display:flex;align-items:center;justify-content:center;flex-shrink:0}.producing-now-icon.is-active{background:#e8f5e9}.producing-now-dot{width:7px;height:7px;background:var(--color-text-subtle);border-radius:50%}.producing-now-icon.is-active .producing-now-dot{background:var(--color-success)}.producing-now-text{flex:1;min-width:0}.producing-now-title{font-size:13px;font-weight:500;margin:0}.producing-now-meta{font-size:11px;color:var(--color-text-muted);margin:1px 0 0}.producing-now-value{text-align:right}.producing-now-number{font-size:20px;font-weight:500;color:var(--color-text);line-height:1}.producing-now-unit{font-size:12px;color:var(--color-text-muted);font-weight:400}.production-chart{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px;margin-bottom:12px}.production-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.production-chart-title{font-size:13px;font-weight:500;margin:0}.production-chart-tabs{display:flex;gap:2px;background:var(--color-surface-alt);padding:2px;border-radius:7px}.production-chart-tab{background:transparent;border:none;padding:4px 10px;border-radius:var(--radius-sm);font-size:11px;font-weight:400;color:var(--color-text-muted)}.production-chart-tab.is-active{background:var(--color-surface);font-weight:500;color:var(--color-text)}.production-chart-canvas{position:relative;width:100%;height:140px}.production-chart-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#0000000a 25%,#00000012,#0000000a 75%);background-size:200% 100%;border-radius:var(--radius-md);animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.production-chart-error,.production-chart-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--color-text-muted)}.production-chart-footer{display:flex;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:.5px solid rgba(0,0,0,.06)}.stat-label{font-size:10px;color:var(--color-text-muted);margin:0;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:14px;font-weight:500;margin:1px 0 0}.carbon-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.carbon-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px}.carbon-card-header{display:flex;align-items:center;gap:6px;margin-bottom:8px}.carbon-card-icon{color:var(--color-success)}.carbon-card-icon.trees{color:#16a34a}.carbon-card-label{font-size:10px;color:var(--color-text-muted);margin:0;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.carbon-card-value{font-size:22px;font-weight:500;margin:0;line-height:1}.carbon-card-sub{font-size:10px;color:var(--color-text-muted);margin:4px 0 0}.fun-fact-card{background:var(--color-brand-soft);border:.5px solid var(--color-brand-soft-border);border-radius:var(--radius-lg);padding:14px;margin-bottom:12px}.fun-fact-eyebrow{font-size:10px;color:#b8501a;margin:0 0 4px;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.fun-fact-body{font-size:13px;color:var(--color-text);margin:0;line-height:1.45;font-weight:500}.milestone-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px;margin-bottom:12px}.milestone-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.milestone-card-title{font-size:13px;font-weight:500;margin:0}.milestone-card-percent{font-size:11px;color:var(--color-text-muted);margin:0}.milestone-card-track{background:var(--color-surface-alt);border-radius:var(--radius-md);height:8px;overflow:hidden;margin-bottom:8px}.milestone-card-fill{background:var(--color-brand);height:100%;border-radius:var(--radius-md);transition:width .4s ease}.milestone-card-numbers{display:flex;justify-content:space-between;font-size:11px;margin:0}.milestone-card-numbers p{margin:0;color:var(--color-text-muted)}.milestone-card-numbers p.milestone-card-target{color:var(--color-text);font-weight:500}.tomorrow-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px;margin-bottom:12px;display:flex;align-items:center;gap:12px}.tomorrow-card-icon{width:44px;height:44px;border-radius:12px;background:var(--color-warning-soft);color:var(--color-warning);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tomorrow-card-text{flex:1;min-width:0}.tomorrow-card-eyebrow{font-size:11px;color:var(--color-text-muted);margin:0;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.tomorrow-card-weather{font-size:14px;margin:1px 0 0;font-weight:500}.tomorrow-card-expected{font-size:11px;color:var(--color-success);margin:1px 0 0}.weekly-highlights{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.weekly-highlight-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px}.weekly-highlight-label{font-size:10px;color:var(--color-text-muted);margin:0 0 6px;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.weekly-highlight-value{font-size:18px;font-weight:500;margin:0;line-height:1}.weekly-highlight-value.yoy-positive{color:var(--color-success)}.weekly-highlight-value.yoy-negative{color:var(--color-text-muted)}.weekly-highlight-sub{font-size:11px;color:var(--color-text-muted);margin:4px 0 0}.achievements{margin-bottom:12px}.achievements-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding:0 4px}.achievements-title{font-size:13px;font-weight:500;margin:0}.achievements-count{font-size:11px;color:var(--color-text-muted);margin:0}.achievements-strip{display:flex;gap:10px;overflow-x:auto;padding:4px}.achievement-badge{flex-shrink:0;width:80px;background:var(--color-surface);border:.5px solid var(--color-border);border-radius:12px;padding:10px 8px;text-align:center}.achievement-badge.is-locked{background:var(--color-surface-alt);opacity:.6}.achievement-badge-icon{font-size:24px;line-height:1}.achievement-badge.is-locked .achievement-badge-icon{filter:grayscale(1)}.achievement-badge-label{font-size:10px;margin:6px 0 0;font-weight:500}.achievement-badge.is-locked .achievement-badge-label{color:var(--color-text-muted)}.achievement-badge-detail{font-size:9px;color:var(--color-text-muted);margin:1px 0 0}.achievement-badge.is-locked .achievement-badge-detail{color:var(--color-text-subtle)}.last-updated{font-size:11px;color:var(--color-text-subtle);text-align:center;margin:4px 0 12px}.home-greeting{font-size:13px;color:var(--color-text-muted);margin:0 0 8px}.dev-alert-trigger{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:12px;font-size:11px;color:var(--color-text-muted)}.dev-alert-trigger-cta{color:var(--color-brand);font-weight:500}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:50;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}@media (min-width: 481px){.modal-overlay{align-items:center}}.modal-card{background:var(--color-surface);border-radius:20px 20px var(--radius-xl) var(--radius-xl);padding:0;width:100%;max-width:448px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;animation:slide-up .25s ease-out}@media (min-width: 481px){.modal-card{border-radius:var(--radius-xl)}}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px 12px;border-bottom:.5px solid var(--color-border)}.modal-title{font-size:17px;font-weight:500;margin:0;letter-spacing:-.2px}.modal-close{background:var(--color-surface-alt);border:none;width:28px;height:28px;border-radius:50%;color:var(--color-text-muted);font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0}.modal-body{padding:18px 20px 22px;overflow-y:auto}.modal-paragraph{font-size:13px;color:var(--color-text);line-height:1.55;margin:0 0 14px}.modal-section{background:var(--color-bg);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:12px}.modal-section-title{font-size:12px;font-weight:500;margin:0 0 6px;color:var(--color-text);text-transform:uppercase;letter-spacing:.5px}.modal-section-body{font-size:13px;color:var(--color-text);line-height:1.55;margin:0}.modal-list{margin:0;padding-left:18px;font-size:13px;color:var(--color-text);line-height:1.6}.modal-list li{margin-bottom:4px}.modal-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.modal-btn{padding:12px;border-radius:var(--radius-md);text-align:center;font-size:13px;font-weight:500;text-decoration:none}.modal-btn-primary{background:var(--color-brand);color:#fff}.modal-btn-secondary{background:var(--color-surface);color:var(--color-text);border:.5px solid var(--color-border-strong)}.modal-fineprint{font-size:11px;color:var(--color-text-muted);text-align:center;margin:14px 0 0}.plan-section-head{margin-bottom:18px}.plan-page-title{font-size:22px;font-weight:500;margin:0 0 4px;letter-spacing:-.3px}.plan-page-sub{font-size:13px;color:var(--color-text-muted);margin:0}.active-plan-card{background:linear-gradient(135deg,#ff6a00,#ff8a3d);border-radius:var(--radius-xl);padding:20px;margin-bottom:16px;color:#fff;position:relative;overflow:hidden}.active-plan-eyebrow{font-size:11px;margin:0;opacity:.85;text-transform:uppercase;letter-spacing:.8px;font-weight:500}.active-plan-name{font-size:26px;font-weight:500;margin:4px 0 0;letter-spacing:-.5px}.active-plan-fullname{font-size:12px;margin:4px 0 14px;opacity:.9}.active-plan-price{display:flex;align-items:baseline;gap:4px}.active-plan-price-amount{font-size:32px;font-weight:500;letter-spacing:-1px}.active-plan-price-unit{font-size:13px;opacity:.85}.active-plan-billing{font-size:11px;margin:10px 0 0;opacity:.85}.discount-callout{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;margin-bottom:16px;display:flex;align-items:center;gap:10px}.discount-callout-icon{width:28px;height:28px;border-radius:8px;background:var(--color-brand-soft);display:flex;align-items:center;justify-content:center;font-size:14px}.discount-callout-text{flex:1}.discount-callout-title{font-size:13px;margin:0;font-weight:500}.discount-callout-sub{font-size:11px;color:var(--color-text-muted);margin:1px 0 0}.discount-callout-percent{font-size:22px;font-weight:500;color:var(--color-brand)}.plan-section-label{font-size:11px;color:var(--color-text-muted);margin:0 0 8px;text-transform:uppercase;letter-spacing:.6px;font-weight:500;padding-left:4px}.list-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:16px}.list-card.mt-12{margin-top:0;margin-bottom:12px}.list-row{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;text-align:left;width:100%;background:transparent;border:none}.list-row.has-divider{border-bottom:.5px solid rgba(0,0,0,.06)}.list-row-button{cursor:pointer}.list-row-text{flex:1;min-width:0}.list-row-title{font-size:13px;margin:0;font-weight:500}.list-row-sub{font-size:11px;color:var(--color-text-muted);margin:1px 0 0}.list-row-sub.upgrade{color:var(--color-brand)}.list-row-chev{color:var(--color-text-muted);font-size:16px}.list-row-chev.brand{color:var(--color-brand)}.rates-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px 16px;margin-bottom:16px}.rates-card-helper{font-size:11px;color:var(--color-text-muted);margin:0 0 12px;line-height:1.5}.rates-grid{display:grid;gap:8px}.rate-row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0}.rate-label{font-size:12px;color:var(--color-text)}.rate-value{font-size:13px;font-weight:500;color:var(--color-text)}.rate-free{color:var(--color-success);font-weight:500}.term-toggle-wrap{display:flex;justify-content:center;margin-bottom:16px}.term-toggle{display:inline-flex;gap:2px;background:var(--color-surface-alt);padding:3px;border-radius:8px}.term-toggle-btn{background:transparent;border:none;padding:6px 14px;border-radius:var(--radius-sm);font-size:11px;font-weight:400;color:var(--color-text-muted)}.term-toggle-btn.is-active{background:var(--color-surface);font-weight:500;color:var(--color-text)}.upsell-plan-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;margin-bottom:10px;position:relative}.upsell-plan-card.is-featured{border:2px solid var(--color-brand)}.upsell-plan-badge{position:absolute;top:-10px;left:16px;background:var(--color-brand);color:#fff;font-size:10px;padding:3px 10px;border-radius:5px;font-weight:500;letter-spacing:.4px}.upsell-plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.upsell-plan-card.is-featured .upsell-plan-header{margin-top:4px}.upsell-plan-eyebrow{font-size:10px;color:var(--color-text-muted);margin:0 0 2px;text-transform:uppercase;letter-spacing:.6px;font-weight:500}.upsell-plan-name{font-size:14px;margin:0;font-weight:500}.upsell-plan-price{text-align:right}.upsell-plan-price-line{margin:0;line-height:1}.upsell-plan-amount{font-size:20px;font-weight:500;color:var(--color-brand)}.upsell-plan-unit{font-size:11px;color:var(--color-text-muted);font-weight:400}.upsell-plan-discount{font-size:10px;color:var(--color-brand);margin:2px 0 0}.upsell-plan-summary{font-size:11px;color:var(--color-text-muted);line-height:1.6;margin:0 0 10px}.upsell-plan-cta{width:100%;background:var(--color-surface);border:.5px solid var(--color-border-strong);color:var(--color-text);padding:10px;border-radius:var(--radius-md);font-size:12px;font-weight:500}.upsell-plan-cta.is-primary{background:var(--color-brand);border:none;color:#fff}.plan-disclaimer{font-size:10px;color:var(--color-text-muted);text-align:center;line-height:1.5;margin:14px 0 0}.support-head{margin-bottom:20px}.support-title{font-size:22px;font-weight:500;margin:0 0 4px;letter-spacing:-.3px}.support-sub{font-size:13px;color:var(--color-text-muted);margin:0}.contact-hero{background:var(--color-surface);border:1.5px solid var(--color-brand);border-radius:16px;padding:18px;margin-bottom:16px}.contact-hero-header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.contact-hero-icon{width:36px;height:36px;background:var(--color-brand);border-radius:10px;display:flex;align-items:center;justify-content:center}.contact-hero-name{font-size:15px;font-weight:500;margin:0}.contact-hero-status{font-size:11px;margin:1px 0 0}.contact-hero-status.is-open{color:var(--color-success)}.contact-hero-status.is-closed{color:var(--color-text-muted)}.contact-cta-call{display:block;background:var(--color-brand);color:#fff;padding:14px;border-radius:12px;text-align:center;font-size:15px;font-weight:500;text-decoration:none;margin-bottom:8px}.contact-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.contact-cta-secondary{background:var(--color-surface);color:var(--color-text);padding:12px;border-radius:var(--radius-md);text-align:center;font-size:13px;font-weight:500;text-decoration:none;border:.5px solid var(--color-border-strong)}.contact-hours{font-size:11px;color:var(--color-text-muted);margin:12px 0 0;text-align:center}.contact-address{font-size:10px;color:var(--color-text-muted);margin:4px 0 0;text-align:center;opacity:.7}.support-section-label{font-size:11px;color:var(--color-text-muted);margin:0 0 8px;text-transform:uppercase;letter-spacing:.6px;font-weight:500;padding-left:4px}.support-list{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:20px}.support-list-row{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;width:100%;background:transparent;border:none;text-align:left}.support-list-row.has-divider{border-bottom:.5px solid rgba(0,0,0,.06)}.support-list-title{font-size:13px;margin:0;font-weight:500}.support-list-sub{font-size:11px;color:var(--color-text-muted);margin:1px 0 0}.support-list-sub.is-highlight{color:var(--color-brand)}.support-list-chev{color:var(--color-text-muted);font-size:16px}.support-system-card{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px;display:grid;gap:14px}.support-system-row{display:flex;justify-content:space-between}.support-system-label{font-size:12px;color:var(--color-text-muted)}.support-system-value{font-size:13px;font-weight:500}.support-system-value.warranty-active{color:var(--color-success)}.documents-row{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:14px 16px;display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left}.documents-title{font-size:13px;margin:0;font-weight:500}.documents-sub{font-size:11px;color:var(--color-text-muted);margin:1px 0 0}.documents-chev{color:var(--color-text-muted);font-size:16px}.app-shell{width:100%;max-width:480px;margin:0 auto;min-height:100vh;min-height:100dvh;background:var(--color-bg);position:relative;display:flex;flex-direction:column}.app-content{flex:1;padding:20px 16px 96px;position:relative}@media (min-width: 481px){.app-shell{box-shadow:0 0 40px #0000000d}}:root{--color-bg: #fafaf7;--color-surface: #ffffff;--color-surface-alt: #f3f4f6;--color-border: rgba(0, 0, 0, .08);--color-border-strong: rgba(0, 0, 0, .15);--color-text: #1a1d23;--color-text-muted: #5a5f6b;--color-text-subtle: #9ca3af;--color-brand: #ff6a00;--color-brand-hover: #ff7a1f;--color-brand-soft: #fff5ed;--color-brand-soft-border: rgba(255, 106, 0, .2);--color-success: #22c55e;--color-success-soft: #dcfce7;--color-success-text: #15803d;--color-success-bg: #f0fdf4;--color-success-text-alt: #166534;--color-danger: #ef4444;--color-danger-soft: #fef2f2;--color-warning: #ca8a04;--color-warning-soft: #fef9c3;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--radius-pill: 999px;--font-sans: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;min-height:100dvh;overscroll-behavior-y:none}button{font-family:inherit;cursor:pointer}button:active{transform:scale(.97)}a:active{transform:scale(.98)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.pulse-dot{animation:pulse-dot 2s ease-in-out infinite}.scroll-strip::-webkit-scrollbar{display:none}.scroll-strip{scrollbar-width:none;-ms-overflow-style:none}
