.app{flex-direction:column;min-height:100vh;display:flex}.header{color:#fff;z-index:1000;-webkit-backdrop-filter:saturate(120%)blur(6px);will-change:transform;background:linear-gradient(135deg,#1a237e 0%,#8790c9 100%);width:100%;padding:20px 0 15px;transition:box-shadow .3s;position:-webkit-sticky;position:sticky;top:0;box-shadow:0 8px 15px rgba(0,0,0,.3)}.header h1{text-align:center;text-shadow:2px 2px 4px rgba(0,0,0,.2);letter-spacing:2px;text-transform:uppercase;margin:0;font-size:max(28px,min(5vw,40px));font-weight:900}.disclaimer{color:rgba(255,255,255,.7);text-align:center;border-top:1px solid rgba(255,255,255,.15);margin-top:15px;padding-top:10px;font-family:Consolas,Courier New,monospace;font-size:13px;font-weight:300}.tab-container{background-color:#fff;border-bottom:1px solid #ddd;display:flex}.tab{cursor:pointer;color:#666;background:0 0;border:none;border-bottom:2px solid transparent;flex:1;padding:12px;font-size:14px;transition:all .3s}.tab:hover{background-color:#f5f5f5}.tab.active{color:#4caf50;border-bottom-color:#4caf50;font-weight:700}.content{flex:1;padding:16px;overflow-y:auto}.section{background-color:#fff;border-radius:8px;margin-bottom:16px;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.section h2{margin:0 0 16px;font-size:18px}.input-row,.budget-analysis-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.list-item.editing{color:#262626;background-color:#fff8e1;transition:all .3s cubic-bezier(.4,0,.2,1);transform:scale(1.01);box-shadow:0 0 0 2px #ff9800,inset 0 0 8px rgba(0,0,0,.1)}.instruction-text{color:#555;background-color:#e3f2fd;border:2px solid #3a6ea5;border-radius:8px;margin:20px 0;padding:15px;font-size:1.1em;line-height:1.5;box-shadow:0 4px 6px rgba(0,0,0,.1)}ol{-moz-columns:2;columns:2;margin-bottom:10px;padding-left:15px;list-style-type:decimal;display:block}ul{list-style-type:square}ol ol{-moz-columns:1;columns:1;margin:0;list-style-type:lower-alpha}ol li{margin:0;display:list-item}ol li::marker{color:#3a6ea5;font-size:1.1em;font-weight:700}ol ol li::marker{color:#da5f26;font-size:1.1em;font-weight:700}.collapsible-content{opacity:1;max-height:5000px;margin-top:10px;padding-left:10px;transition:max-height .4s ease-out,opacity .3s ease-out;overflow:hidden}.collapsible-content.collapsed{opacity:0;max-height:0;margin-top:0;padding-top:0}.collapse-arrow{float:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:18px}.footer{text-align:center;color:#666;z-index:1000;background-color:#f1f1f1;width:100%;margin-top:auto;padding:12px;font-size:14px;position:-webkit-sticky;position:sticky;bottom:0;box-shadow:0 -2px 6px rgba(0,0,0,.05)}.footer a{color:#4caf50;text-decoration:none}.input-row label{border:1px solid #222;border-radius:4px;width:150px;margin-right:12px}.input-row input{border:1px solid #222;border-radius:4px;flex:1;padding:8px;font-size:16px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.summary-card{background-color:#f9f9f9;border:1px solid #222;border-radius:4px;padding:16px}.boxy{border:3px ridge #222;border-radius:4px}.summary-label{color:#666;margin-bottom:8px;font-size:14px}.summary-value{font-size:20px;font-weight:700}.positive{color:#4caf50}.negative{color:#e53935}.retirement-result{border-radius:8px;padding:16px}.retirement-result.success{background-color:#e8f5e9;border:1px solid #4caf50}.retirement-result.warning{background-color:#fff3cd;border:1px solid #ffc107}.retirement-title{margin-bottom:8px;font-size:18px;font-weight:700}.retirement-age{color:#4caf50;margin:8px 0;font-size:32px;font-weight:700}.retirement-age-plus-five{color:#a2b9bc;margin:8px 0;font-size:32px;font-weight:700}.retirement-age-plus-ten{color:#3a6ea5;margin:8px 0;font-size:32px;font-weight:700}.retirement-age-plus-fifteen{color:#ff6700;margin:8px 0;font-size:32px;font-weight:700}.retirement-subtext{color:#666;margin-top:8px;font-size:14px}body{color:#1a237e}.form{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form input{border:1px solid #ddd;border-radius:4px;padding:10px;font-size:16px}.cancel-button{color:#fff;cursor:pointer;background-color:#e53935;border:none;border-radius:4px;padding:10px 20px;font-size:16px;font-weight:700;transition:background-color .3s}.switch-row{align-items:center;gap:8px;margin:8px 0;display:flex}.switch-row label{cursor:pointer;align-items:center;gap:8px;display:flex}.switch-row input[type=checkbox]{cursor:pointer;width:20px;height:20px}.add-button{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;padding:12px;font-size:16px;font-weight:700;transition:background-color .3s}.add-button:hover{background-color:#45a049}.list{margin-top:16px}.empty-text{text-align:center;color:#999;padding:24px;font-style:italic}.list-item{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.list-item:last-child{border-bottom:none}.list-item-info{flex:1}.list-item-name{margin-bottom:4px;font-weight:500}.list-item-value{font-size:16px;font-weight:700}.list-item-detail{color:#666;margin-top:4px;font-size:12px}.delete-button{color:#e53935;cursor:pointer;background:0 0;border:none;padding:4px 12px;font-size:24px;font-weight:700;transition:color .3s}.delete-button:hover{color:#c62828}.input-row>*{background-color:#f7f7f7;border-radius:4px;padding:10px 15px}.csv-import{opacity:0;z-index:-1;width:.1px;height:.1px;position:absolute;overflow:hidden}.custom-file-upload{color:#fff;text-align:center;cursor:pointer;background-color:#007bff;border:1px solid #007bff;border-radius:5px;padding:10px 20px;font-family:Arial,sans-serif;font-size:16px;transition:background-color .3s,border-color .3s;display:inline-block}.custom-file-upload:hover{background-color:#0056b3;border-color:#0056b3}.csv-import:focus+.custom-file-upload{outline-offset:2px;outline:2px solid #0056b3}.upload-instructions{border-bottom:1px solid #ddd;margin-bottom:20px;padding:15px}.upload-instructions h2{color:#333;border-left:5px solid #007bff;margin-bottom:10px;padding-left:10px;font-size:1.8em}.instruction-text strong{color:#c00;font-style:italic;font-weight:700}.calculate-button{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;background-color:#28a745;border:none;border-radius:8px;margin-top:20px;padding:12px 25px;font-size:1.1em;font-weight:700;transition:background-color .2s,box-shadow .2s,transform .1s;display:inline-block;box-shadow:0 4px 6px rgba(0,0,0,.1)}.calculate-button:hover{background-color:#218838;box-shadow:0 6px 8px rgba(0,0,0,.15)}.calculate-button:active{background-color:#1e7e34;transform:translateY(1px);box-shadow:0 3px 5px rgba(0,0,0,.1)}.calculate-button:focus{outline:none;box-shadow:0 0 0 4px rgba(40,167,69,.5)}@media (max-width:768px){.tab-container{overflow-x:auto}.tab{white-space:nowrap}.summary-grid{grid-template-columns:1fr}.input-row{flex-direction:column;align-items:flex-start;gap:4px}.input-row label{border:#000;width:100%;margin-bottom:4px}ol{-moz-columns:1;columns:1;-moz-column-gap:normal;column-gap:normal}}
