.welcome-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:white;display:flex;align-items:flex-start;justify-content:center;z-index:9999}.welcome-content{text-align:left;padding:1rem 2rem 2rem;max-width:600px}.welcome-message{font-size:1.2rem;line-height:1.6;color:#255360;margin:1rem 0}.welcome-button{background:linear-gradient(135deg,#255360,#57A0B3);color:#fff;border:none;margin-top:1rem;padding:1rem 3rem;border-radius:var(--radius-base);font-size:1.2rem;font-weight:600;cursor:pointer;transition:transform .2s ease}.welcome-button:hover{transform:translateY(-2px)}.welcome-ps{font-size:.8rem;color:#255360}:root{--primary-gradient: linear-gradient(135deg, #DC84B6, #68C6F0);--shadow-sm: 0 2px 12px rgba(0, 0, 0, .03);--shadow-md: 0 4px 20px rgba(0, 0, 0, .1);--spacing-base: 1rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--radius-base: .75rem;--desktop-width: 1400px}html,body{width:100%;overflow-x:auto;position:relative}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:#e9ecef;color:#255360;line-height:1.6;margin:0;padding:0;-webkit-text-size-adjust:100%;text-size-adjust:100%}.desktop-dashboard{max-width:1024px;min-width:1024px;margin:1rem auto;padding:1.5rem;background:#f8f9fa;border-radius:var(--radius-base);box-shadow:var(--shadow-md);min-height:calc(100vh - 2rem)}.dashboard-header{margin-bottom:.1rem;border-bottom:2px solid #e9ecef;padding-bottom:.75rem}.logo-container{display:flex;align-items:center;justify-content:space-between}.logout-btn{background:#57A0B3;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.logout-btn:hover{background:#255360;transform:translateY(-2px)}.main-logo{height:60px;width:auto;object-fit:contain}.layout-container{width:100%;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:1.5rem}.unified-input-card{background:transparent;padding:1.5rem;border-radius:12px;width:100%;max-width:100%;box-sizing:border-box;flex-shrink:0;display:flex;flex-direction:column;gap:1rem}.layout-section{background:transparent;padding:0;border-radius:0;width:100%;max-width:100%;box-sizing:border-box;flex-shrink:0}.layout-section:not(:last-child){margin-bottom:.5rem;padding-bottom:.75rem}.layout-section h2{margin:0 0 .5rem;color:#255360;font-size:1.5rem;font-weight:700}.section-description{color:#255360;font-size:1rem;line-height:1.5;margin-bottom:1.2rem}.mobile-dashboard .layout-section h2{margin:0 0 .25rem!important;max-width:100%!important;font-size:18px!important}.mobile-dashboard .section-description{margin:0 0 1rem!important;max-width:100%!important;font-size:14px!important;line-height:1.4!important}.spending-input-layout{display:flex;gap:1.5rem;align-items:start;width:100%;min-width:0;box-sizing:border-box;flex-wrap:nowrap}.result-container{min-height:200px;flex:1;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start;gap:.75rem}.getting-started-box{background:white;border:2px solid #e9ecef;border-radius:16px;padding:2rem;box-shadow:var(--shadow-sm);width:100%;box-sizing:border-box}.mobile-dashboard .spending-input-layout{min-width:0!important}.mobile-dashboard .getting-started-box{width:100%!important}.getting-started-box h3{margin:0 0 1.5rem;color:#255360;font-size:1.4rem;font-weight:700}.getting-started-box ul{margin:0 0 1.5rem;padding-left:1.5rem;color:#255360;line-height:1.6}.getting-started-box li{margin-bottom:.75rem}.hint-text{color:#255360;font-size:.9rem;margin:0;line-height:1.5}.details-rates-container{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%;box-sizing:border-box}.details-rates-card{background:white;border:2px solid #e9ecef;border-radius:16px;padding:2rem;box-shadow:var(--shadow-sm);width:100%;box-sizing:border-box}.card-header-with-tooltip{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.card-header-with-tooltip h2{margin:0;font-size:1.5rem;font-weight:700;color:#255360}.section-info-button{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#57A0B3;color:#fff;border:none;font-size:.9rem;font-weight:700;font-style:italic;cursor:pointer;transition:all .2s ease;flex-shrink:0}.section-info-button:hover{background:#255360;transform:scale(1.1)}.details-rates-inputs{display:flex;flex-direction:column;gap:1rem}.retirement-details-layout,.percentage-rates-layout{display:grid;grid-template-columns:repeat(3,220px);gap:1.2rem;justify-content:space-between;width:100%;box-sizing:border-box;flex-wrap:nowrap}.additional-income-card{background:white;border:2px solid #e9ecef;border-radius:16px;padding:2rem;box-shadow:var(--shadow-sm);width:100%;box-sizing:border-box}.additional-income-layout{display:grid;grid-template-columns:170px 160px 110px 130px 120px;gap:1rem;align-items:end;width:100%;box-sizing:border-box;justify-content:space-between}.mobile-dashboard .details-rates-container,.mobile-dashboard .retirement-details-layout,.mobile-dashboard .percentage-rates-layout{margin-right:0!important;max-width:100%!important}.additional-income-layout .input-group,.additional-income-layout .input-group-no-label{width:100%}.input-group-no-label{display:flex;flex-direction:column}.input-group-no-label select{padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:all .2s ease;margin-bottom:.125rem}.add-income-button{padding:.75rem;background:#57A0B3;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700;transition:all .2s ease;font-size:1rem;width:100%;height:48px;margin-bottom:.125rem}.add-income-button:hover{background:#255360;transform:translateY(-2px)}.help-text{font-size:.9rem;color:#255360;margin:.125rem 0 .5rem;line-height:1.35}.core-inputs{display:flex;flex-direction:column;gap:1rem}.advanced-inputs{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:1rem;width:100%;max-width:100%;box-sizing:border-box;flex-wrap:nowrap}.input-group{display:flex;flex-direction:column;gap:.25rem}.input-group label{font-weight:600;font-size:1rem;color:#255360;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.input-group input,.input-group select{padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:all .2s ease;margin-bottom:.125rem;width:100%;max-width:100%;box-sizing:border-box;flex-shrink:0;height:48px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input:disabled,select:disabled,button:disabled{background-color:#f5f5f5!important;color:#999!important;cursor:pointer!important}input:disabled:hover,select:disabled:hover,button:disabled:hover{background-color:#f0f0f0!important}.input-group input:focus,.input-group select:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a}.dollar-input-container{position:relative}.dollar-sign{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#255360;font-size:1rem;pointer-events:none}.dollar-input-container input{padding-left:2rem}.injection-inputs{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr auto;gap:.75rem;margin-bottom:1rem;align-items:end}.injection-inputs input,.injection-inputs select{padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:.9rem}.injection-inputs button{padding:.75rem 1.5rem;background:#57A0B3;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700;transition:all .2s ease}.injection-inputs button:hover{background:#255360}.injections-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem;width:100%}.savings-entry{position:relative;padding:.25rem 1rem;background:transparent;border:none;border-radius:0;display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:100%;box-sizing:border-box}.type-indicator{position:absolute;top:-.5rem;left:1rem;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.type-indicator.lump{background:#DC84B6;color:#fff}.type-indicator.stream{background:#68C6F0;color:#fff}.savings-entry-content{display:flex;gap:.5rem;flex:1;font-size:.9rem;align-items:center}.checkmark-icon{color:#57a0b3;font-weight:700;font-size:1rem;flex-shrink:0}.savings-entry-content input{padding:.5rem;border:1px solid #e9ecef;border-radius:4px;font-size:.9rem}.year-input{width:60px!important;text-align:center;margin-left:.25rem}.savings-entry button{padding:.3rem .6rem;background:transparent;color:#ff6b6b;border:1px solid #ff6b6b;border-radius:4px;cursor:pointer;font-size:.75rem;white-space:nowrap;flex-shrink:0}.savings-entry button:hover{color:#c00;border-color:#c00;transform:translateY(-2px)}.spending-goal-section{background:#f8f9fa;padding:1.5rem;border-radius:12px;border:2px solid #e9ecef;margin-bottom:2rem}.spending-goal-section .input-group{margin-bottom:1.5rem}.results-placeholder{background:white;border:2px dashed #dee2e6;border-radius:16px;padding:3rem 2rem;text-align:center;color:#255360;width:100%;box-sizing:border-box}.placeholder-content h3{margin:0 0 1rem;color:#255360;font-weight:600}.placeholder-content p{margin:0;font-size:1.1rem;line-height:1.5}.button-container{display:flex;gap:1rem;margin-top:1rem;flex-wrap:nowrap;min-width:320px}.calculate-button,.export-button{padding:1rem 2rem;border:none;border-radius:var(--radius-base);font-size:1.1rem;font-weight:700;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;flex:1}.calculate-button{background:linear-gradient(135deg,#255360,#57A0B3);max-width:220px}.export-button{background:linear-gradient(135deg,#68C6F0,#4CAF50)}.calculate-button:hover,.export-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.withdrawal-plan-button{background:#255360;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%;margin-top:.5rem}.withdrawal-plan-button:hover{background:#1e4249;transform:translateY(-2px);box-shadow:0 8px 16px #2553604d}.download-plan-button{background:#57A0B3;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%;margin-top:.5rem}.download-plan-button:hover{background:#4a8fa2;transform:translateY(-2px);box-shadow:0 8px 16px #57a0b34d}.view-guidelines-button{background:transparent;color:#57a0b3;border:1px solid #57A0B3;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%;margin-top:.5rem}.view-guidelines-button:hover{color:#255360;border-color:#255360;transform:translateY(-2px);box-shadow:0 8px 16px #57a0b34d}.input-controls{display:flex;flex-direction:column;gap:1rem;flex-wrap:nowrap;width:220px;flex-shrink:0}.results-panel{padding:2rem;background:white;border:2px solid #e9ecef;border-radius:16px;box-shadow:var(--shadow-md);width:100%;max-width:100%;box-sizing:border-box;min-height:280px}.success-rate{margin-bottom:1rem;padding:1rem;background:white;border-radius:16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.75rem;width:100%;box-sizing:border-box}.success-content{display:flex;align-items:flex-start;gap:2rem}.success-score-container{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.success-score{font-size:4rem;font-weight:900;color:#255360;text-shadow:0 2px 4px rgba(37,83,96,.1);line-height:1;margin-bottom:.25rem}.simulation-count{font-size:.75rem;color:#255360;text-align:center;font-weight:500}.success-explanation{font-size:1.1rem;color:#255360;line-height:1.5;margin:0}.disclaimer{font-size:.85rem;color:#255360;font-style:italic;margin:0;line-height:1.4;text-align:center}.withdrawals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.withdrawal-entry{display:flex;flex-direction:column;gap:.5rem}.withdrawal-entry label{font-weight:600;color:#255360;font-size:.9rem}.withdrawal-entry input{padding:.75rem .75rem .75rem 2rem;border:2px solid #e9ecef;border-radius:8px;font-size:.9rem;transition:all .2s ease}.withdrawal-entry input:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a}.reset-button{display:block;margin:2rem auto 1rem;background:none;border:none;color:#255360;font-size:.8rem;cursor:pointer;opacity:.6;padding:.5rem}.reset-button:hover{opacity:1}.footer-terms{font-size:.55rem;color:#aaa;font-weight:300;text-align:center;margin-top:1rem;margin-bottom:1rem}.terms-link{color:#68c6f0;text-decoration:none;cursor:pointer}.terms-link:hover{text-decoration:underline}.error-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.error-dialog,.warning-dialog{background:white;padding:1.5rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:90%;width:400px}.error-dialog h3,.warning-dialog h3{margin:0 0 1rem;color:#255360}.error-content,.warning-content{margin-bottom:1.5rem}.error-content p,.warning-content p{margin:.5rem 0;color:#255360}.error-dialog button{background:#57A0B3;color:#fff;border:none;padding:.5rem 2rem;border-radius:4px;cursor:pointer;font-size:1rem}.error-dialog button:hover{background:#255360}.warning-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.warning-buttons button{padding:.5rem 2rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.warning-buttons button.cancel{background:#e9ecef;color:#255360}.warning-buttons button.confirm{background:#57A0B3;color:#fff}.terms-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:white;padding:1.5rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:90%;width:600px;max-height:80vh;overflow-y:auto;z-index:1000}.terms-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:999}.terms-dialog button{background:#57A0B3;color:#fff;border:none;padding:.5rem 2rem;border-radius:4px;cursor:pointer;font-size:1rem;margin-top:1rem}.terms-dialog button:hover{background:#255360}.guidelines-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:white;padding:1.5rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:90%;width:600px;max-height:80vh;overflow-y:auto;z-index:1000}.guidelines-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:999}.guidelines-dialog h2{margin:0 0 1rem;color:#255360}.guidelines-content{margin-bottom:1.5rem}.guidelines-content p{margin:1rem 0;line-height:1.6;color:#555}.guidelines-dialog button{background:#57A0B3;color:#fff;border:none;padding:.5rem 2rem;border-radius:4px;cursor:pointer;font-size:1rem;margin-top:1rem}.guidelines-dialog button:hover{background:#255360}.label-with-tooltip{display:flex;align-items:baseline;gap:.5rem}.tooltip-button{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:transparent;color:#57a0b3;border:1px solid #57A0B3;font-size:.7rem;font-weight:700;cursor:pointer;transition:all .2s ease;flex-shrink:0;position:relative;top:-2px}.tooltip-button:hover{border-color:#255360;color:#255360;transform:scale(1.1)}.tooltip-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:white;padding:1.5rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:500px;max-height:70vh;overflow-y:auto;z-index:1000}.tooltip-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:999}.tooltip-dialog h3{margin:0 0 1rem;color:#255360}.tooltip-content{margin-bottom:1.5rem}.tooltip-content p{margin:1rem 0;line-height:1.6;color:#555}.tooltip-dialog button{background:#57A0B3;color:#fff;border:none;padding:.5rem 2rem;border-radius:4px;cursor:pointer;font-size:1rem;margin-top:1rem}.tooltip-dialog button:hover{background:#255360}.tooltip-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.tooltip-estimator-link{display:flex;align-items:flex-end;gap:.5rem}.tooltip-estimator-link span{font-size:.9rem;color:#666}.tooltip-dialog .estimator-button{background:linear-gradient(135deg,#255360,#57A0B3);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-weight:600;margin-top:0}.tooltip-dialog .estimator-button:hover{background:linear-gradient(135deg,#1a3a44,#4a8a9a)}.withdrawal-plan-container{background:white;border:2px solid #e9ecef;border-radius:16px;padding:2rem;width:100%;box-sizing:border-box;min-height:280px}.mobile-dashboard .withdrawal-plan-container{max-width:100%;margin-right:0}.withdrawal-plan-header{margin-bottom:2rem;text-align:center}.withdrawal-plan-header h3{margin:0 0 .5rem;color:#255360;font-size:1.5rem;font-weight:700}.withdrawal-plan-header p{margin:0;color:#255360;font-size:1rem;line-height:1.5}.withdrawal-plan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;max-height:500px;overflow-y:auto;padding:.5rem}.withdrawal-year-card{background:white;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-sm);transition:transform .2s ease}.withdrawal-year-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.withdrawal-year-card.partially-funded{border-color:#f8b4b4}.withdrawal-year-card.unfunded{border-color:#f87171}.withdrawal-year{font-size:1.1rem;font-weight:700;color:#255360;margin-bottom:.5rem}.withdrawal-amount{font-size:1.8rem;font-weight:900;color:#57a0b3;margin-bottom:.25rem}.spending-label{font-size:.85rem;font-weight:600;color:#57a0b3;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.withdrawal-details{display:flex;flex-direction:column;gap:.5rem}.detail-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:#255360}.detail-row span:first-child{font-weight:500}.detail-row span:last-child{font-weight:600}.mobile-dashboard{width:100%;margin:0;padding:1rem;background:#f8f9fa;min-height:100vh;box-sizing:border-box;font-size:14px;-webkit-text-size-adjust:100%;text-size-adjust:100%}.mobile-dashboard *{margin-right:0!important;max-width:100%!important}.mobile-dashboard .layout-section,.mobile-dashboard .section-description,.mobile-dashboard .spending-input-layout,.mobile-dashboard .retirement-details-layout,.mobile-dashboard .percentage-rates-layout,.mobile-dashboard .additional-income-layout,.mobile-dashboard .getting-started-box,.mobile-dashboard .withdrawal-plan-container,.mobile-dashboard .injections-list{margin-right:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}.mobile-dashboard .dashboard-header{margin-bottom:1rem;border-bottom:2px solid #e9ecef;padding-bottom:.75rem}.mobile-dashboard .logo-container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.mobile-dashboard .main-logo{height:40px;width:auto;object-fit:contain}.mobile-dashboard .logout-btn,.mobile-dashboard .logo-container button{padding:.5rem 1rem;font-size:.8rem;white-space:nowrap}.mobile-dashboard .layout-container{padding:0;gap:1.5rem}.mobile-dashboard .unified-input-card{padding:1.5rem;border-radius:12px;margin:0}.mobile-dashboard .layout-section h2{font-size:18px;margin:0 0 .25rem;padding-bottom:.5rem;max-width:100%}.mobile-dashboard .section-description{font-size:14px;margin-bottom:1rem;margin-right:0;max-width:100%;line-height:1.4}.spending-input-layout-mobile{display:flex;flex-direction:column;gap:1.5rem;width:100%}.input-controls-mobile{display:flex;flex-direction:column;gap:1rem;width:100%}.action-buttons-mobile{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.action-buttons-desktop{display:flex;flex-direction:column;gap:.75rem}.result-container-mobile{width:100%;margin-top:1.5rem;display:flex;flex-direction:column;justify-content:flex-start;gap:.75rem}.details-rates-container-mobile{display:flex;flex-direction:column;gap:1.5rem;width:100%}.mobile-dashboard .details-rates-card{padding:1.5rem}.mobile-dashboard .card-header-with-tooltip h2{font-size:18px}.mobile-dashboard .section-info-button{width:20px;height:20px;font-size:.8rem}.retirement-details-layout-mobile,.percentage-rates-layout-mobile,.additional-income-layout-mobile{display:flex;flex-direction:column;gap:1rem;width:100%}.additional-income-layout-mobile .input-group,.additional-income-layout-mobile .input-group-no-label{width:100%}.mobile-dashboard .input-group input,.mobile-dashboard .input-group select{font-size:16px;padding:.875rem;height:auto;min-height:48px}.mobile-dashboard .input-group label{font-size:14px;font-weight:600}.mobile-dashboard .help-text{font-size:12px}.mobile-dashboard .calculate-button,.mobile-dashboard .add-income-button{font-size:14px;padding:1rem;width:100%;min-height:48px}.mobile-dashboard .withdrawal-plan-button,.mobile-dashboard .download-plan-button,.mobile-dashboard .view-guidelines-button{font-size:14px;padding:.5rem 1rem;width:100%;min-height:auto}.mobile-dashboard .dollar-input-container input{padding-left:2.5rem}.mobile-dashboard .dollar-sign{left:.875rem;font-size:1rem}.mobile-chart-container{background:white;padding:.5rem;border-radius:12px;box-shadow:var(--shadow-sm);width:100%;max-width:100%;box-sizing:border-box;border:1px solid #e9ecef;overflow:hidden;margin:0}.mobile-chart-container *{box-sizing:border-box}.mobile-chart-container svg,.mobile-chart-container canvas{max-width:100%!important;height:auto!important}.chart-container{background:white;padding:2rem;border-radius:16px;box-shadow:var(--shadow-sm);width:100%;max-width:100%;box-sizing:border-box;border:1px solid #e9ecef;overflow:hidden}.chart-container *{box-sizing:border-box}.chart-container svg,.chart-container canvas{max-width:100%!important;height:auto!important}.chart-fine-print{font-size:.75rem;color:#666;text-align:center;margin-top:1rem;line-height:1.3}.mobile-chart-fine-print{font-size:.7rem;color:#666;text-align:center;margin-top:.5rem;margin-bottom:1rem;line-height:1.3;padding:0 .5rem}.mobile-dashboard .success-rate{padding:1rem;margin-bottom:1rem}.mobile-dashboard .success-content{flex-direction:column;gap:1rem;text-align:left;align-items:flex-start}.mobile-dashboard .success-score-container{align-items:flex-start}.mobile-dashboard .success-score{font-size:48px}.mobile-dashboard .simulation-count{text-align:left}@media (max-width: 922px) and (min-width: 568px) and (orientation: landscape){.mobile-dashboard .success-content{flex-direction:row;align-items:flex-start;gap:1.5rem}.mobile-dashboard .success-score-container{flex-shrink:0}.mobile-dashboard .success-explanation{flex:1}}.mobile-dashboard .success-explanation{font-size:14px;line-height:1.4}.mobile-dashboard .simulation-count{font-size:11px}.mobile-dashboard .getting-started-box{padding:1.5rem;margin-right:0;max-width:100%;width:100%}.mobile-dashboard .getting-started-box h3{font-size:16px}.mobile-dashboard .getting-started-box ul{padding-left:1.2rem;font-size:14px;line-height:1.4}.mobile-dashboard .getting-started-box li{margin-bottom:.5rem}.mobile-dashboard .withdrawal-plan-container{padding:1.5rem;margin-right:0;max-width:100%;width:100%}.mobile-dashboard .withdrawal-plan-header h3{font-size:18px}.mobile-dashboard .withdrawal-plan-header p{font-size:14px;line-height:1.4}.mobile-dashboard .withdrawal-plan-grid{grid-template-columns:1fr;gap:1rem;max-height:400px}.mobile-dashboard .withdrawal-year-card{padding:1.25rem}.mobile-dashboard .withdrawal-year{font-size:14px}.mobile-dashboard .withdrawal-amount{font-size:24px}.mobile-dashboard .spending-label{font-size:11px}.mobile-dashboard .detail-row{font-size:12px}.mobile-dashboard .savings-entry{padding:1rem;flex-direction:column;gap:.75rem;align-items:flex-start}.mobile-dashboard .savings-entry-content{width:100%}.mobile-dashboard .savings-entry button{align-self:flex-end;margin-top:.5rem}.mobile-dashboard .error-dialog,.mobile-dashboard .warning-dialog,.mobile-dashboard .terms-dialog,.mobile-dashboard .guidelines-dialog,.mobile-dashboard .tooltip-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:none;max-height:85vh;padding:1.5rem;border-radius:16px;box-shadow:0 8px 32px #0003;overflow-y:auto}.mobile-dashboard .error-dialog h3,.mobile-dashboard .warning-dialog h3,.mobile-dashboard .terms-dialog h3,.mobile-dashboard .guidelines-dialog h3,.mobile-dashboard .tooltip-dialog h3{font-size:1.25rem;margin-bottom:1rem}.mobile-dashboard .warning-buttons{flex-direction:column;gap:.75rem;margin-top:1.5rem}.mobile-dashboard .warning-buttons button{width:100%;padding:1rem;font-size:1rem;border-radius:8px}.mobile-dashboard .error-dialog button,.mobile-dashboard .terms-dialog button,.mobile-dashboard .guidelines-dialog button,.mobile-dashboard .tooltip-dialog button{width:100%;padding:1rem;font-size:1rem;border-radius:8px;margin-top:1rem}.mobile-dashboard .tooltip-dialog .tooltip-footer{flex-direction:column;gap:1rem;align-items:stretch}.mobile-dashboard .tooltip-dialog .tooltip-footer>button{order:2;margin-top:0}.mobile-dashboard .tooltip-dialog .tooltip-estimator-link{flex-direction:column;align-items:stretch;gap:.5rem;order:1}.mobile-dashboard .tooltip-dialog .tooltip-estimator-link span{text-align:center}.mobile-dashboard .tooltip-dialog .estimator-button{width:100%;padding:1rem;font-size:1rem}.mobile-dashboard .footer-terms{font-size:10px;margin:1.5rem 0 1rem;padding:0 1rem}.mobile-dashboard .reset-button,.reset-button{display:none!important}.mobile-dashboard .savings-entry-content{font-size:13px;line-height:1.3}.mobile-dashboard .savings-entry button{font-size:11px}.mobile-dashboard .dollar-sign{font-size:14px}.mobile-dashboard .tooltip-button{width:20px;height:20px;font-size:.8rem}.mobile-dashboard .label-with-tooltip{gap:.75rem}@media (min-width: 922px){.mobile-dashboard{max-width:600px;margin:1rem auto}}.pattern-label{font-size:.9rem;font-weight:600;color:#255360;text-align:center;margin-top:.75rem}.adjust-pattern-button{background:linear-gradient(135deg,#57A0B3,#255360);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-base);font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;width:100%;margin-top:.5rem}.adjust-pattern-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.pattern-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.pattern-modal{background:white;padding:2rem;border-radius:16px;box-shadow:0 8px 32px #0003;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.pattern-modal h3{margin:0 0 1.5rem;color:#255360;font-size:1.4rem;font-weight:700;text-align:center}.pattern-options{display:flex;flex-direction:column;gap:1rem}.pattern-option{display:flex;flex-direction:column;align-items:flex-start;padding:1rem 1.25rem;background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left}.pattern-option:hover{border-color:#57a0b3;background:#f0f8fa;transform:translateY(-2px);box-shadow:0 4px 12px #57a0b333}.pattern-option-name{font-size:1.1rem;font-weight:700;color:#255360;margin-bottom:.25rem}.pattern-option-description{font-size:.9rem;color:#666;line-height:1.4}.pattern-option.current{border-color:#57a0b3;background-color:#57a0b30d}.current-marker{font-size:.7rem;font-weight:700;color:#57a0b3;background:rgba(87,160,179,.1);padding:2px 8px;border-radius:4px;text-transform:uppercase}.pattern-modal-footer{margin:1.5rem 0 0;font-size:.85rem;color:#666;text-align:center;font-style:italic}
