:root{--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--bg: #ffffff;--bg-soft: #f9f9f9;--bg-inset: #fafafa;--text-primary: #1d1d1f;--text-secondary: #6e6e73;--text-tertiary: #888;--border-color: #e5e5e5;--border-strong: #d2d2d7;--link-color: #4F46E5;--accent-color: #16a34a;--accent-color-light: #f0fdf4;--card-shadow: 0 4px 12px rgba(0, 0, 0, .06);--card-shadow-hover: 0 6px 16px rgba(0, 0, 0, .1);--cta-bg: #000;--cta-text: #fff}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}body{margin:0;font-family:var(--font-family);background-color:var(--bg);color:var(--text-primary)}.app-container{height:100vh;display:flex;flex-direction:column}.page-content-wrapper{flex:1;overflow-y:auto;padding:40px 20px}.app-header{width:100%;background-color:var(--bg-soft);border-bottom:1px solid var(--border-color)}.header-content{display:flex;align-items:center;justify-content:center;max-width:1200px;margin:0 auto;padding:15px 20px}.header-cta-button{background-color:var(--cta-bg);color:var(--cta-text);padding:8px 14px;border-radius:8px;text-decoration:none;font-weight:500;font-size:14px;transition:all .2s ease}.header-cta-button:hover{opacity:.8;transform:translateY(-1px)}.main-interface{display:flex;width:100%;max-width:1200px;margin:0 auto;gap:40px}.calculator-container{flex:1;min-width:300px;max-width:450px;animation:fadeInUp .5s ease-out forwards}.right-column{flex:1.2;display:flex;flex-direction:column;gap:24px;animation:fadeInUp .7s ease-out forwards}.calculator-container .header{text-align:center;margin-bottom:32px}.calculator-container .header h1{font-size:28px;margin-bottom:8px;font-weight:700}.calculator-container .header p{font-size:16px;color:var(--text-secondary);line-height:1.5;margin:0}.calculator-container .form-row{display:flex;margin-bottom:12px;border:1px solid var(--border-strong);border-radius:8px;overflow:hidden;transition:border-color .2s ease}.calculator-container .form-row:has(input:focus),.calculator-container .form-row:has(select:focus){border-color:var(--accent-color)}.calculator-container .form-row label{padding:12px 16px;font-size:16px;background-color:var(--bg-soft);color:var(--text-primary);width:200px;text-align:left;border-right:1px solid var(--border-strong)}.calculator-container .form-row input,.calculator-container .form-row select{flex-grow:1;padding:12px 16px;border:none;background:transparent;font-size:16px;text-align:right;outline:none;transition:box-shadow .2s ease;color:var(--text-primary)}.calculator-container .form-row select{background-image:url('data:image/svg+xml;utf8,<svg fill="currentColor" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');background-repeat:no-repeat;background-position:right 10px center;background-size:20px}.calculator-container .form-row input:focus,.calculator-container .form-row select:focus{box-shadow:inset 0 0 0 2px var(--accent-color)}.calculate-btn{width:100%;padding:14px;background-image:linear-gradient(to right,#333,#000);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;margin-top:24px;transition:all .2s ease}.calculate-btn:hover{transform:translateY(-3px);box-shadow:0 6px 12px #0003}.calculate-btn:active{transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.privacy-note{font-size:12px;color:var(--text-secondary);text-align:center;margin-top:16px;line-height:1.5}.privacy-note a{color:var(--text-secondary);text-decoration:underline;transition:color .2s ease}.privacy-note a:hover{color:var(--accent-color)}.results-container{text-align:center;margin-top:32px;line-height:1.7}.summary-text{font-size:16px;margin-bottom:16px;color:var(--text-secondary)}.details-text{font-size:15px;color:var(--text-primary);margin:4px 0}.summary-text strong,.details-text strong{font-weight:600;color:var(--text-primary)}.graph-container,.impact-analysis,.scenario-planner-container{padding:24px;border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--card-shadow);transition:all .3s ease}.graph-container:hover,.impact-analysis:hover,.scenario-planner-container:hover{transform:translateY(-4px);box-shadow:var(--card-shadow-hover)}.graph-container{min-width:300px;min-height:400px;background-color:var(--bg)}.graph-container.placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--text-tertiary);background-color:var(--bg-inset)}.impact-analysis{background-color:var(--bg-inset)}.impact-analysis h4{font-size:12px;font-weight:600;letter-spacing:.5px;color:var(--text-tertiary);margin:0 0 12px;text-transform:uppercase}.impact-analysis p{display:flex;justify-content:space-between;font-size:14px;margin:8px 0;color:var(--text-secondary)}.reset-btn{background:none;border:1px solid var(--border-strong);border-radius:6px;color:var(--text-secondary);cursor:pointer;margin-top:24px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s ease}.reset-btn:hover{border-color:var(--text-secondary);background-color:var(--bg-soft)}.share-btn{margin-top:20px;background-color:var(--bg-soft);border:1px solid var(--border-strong);color:var(--text-primary);padding:8px 16px;font-size:14px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease}.share-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background-color:var(--accent-color-light)}.scenario-planner-container{background-color:var(--bg-inset);text-align:center}.scenario-planner-container h4{font-size:12px;font-weight:600;letter-spacing:.5px;color:var(--text-tertiary);margin:0 0 16px;text-transform:uppercase}.scenario-input-group{display:flex;align-items:center;justify-content:center;gap:12px;font-size:15px;color:var(--text-secondary)}.toggle-buttons{display:flex;border:1px solid var(--border-strong);border-radius:6px;overflow:hidden}.toggle-buttons button{background:var(--bg);color:var(--text-primary);border:none;padding:8px 12px;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500}.toggle-buttons button.active{background-color:var(--accent-color);color:#fff}.scenario-input{width:50px;text-align:center;font-size:16px;font-weight:500;padding:6px;border:1px solid var(--border-strong);border-radius:6px;outline:none;background-color:var(--bg);color:var(--text-primary)}.scenario-result{margin-top:16px;border-top:1px solid var(--border-color);padding-top:16px}.result-display{font-weight:600;font-size:24px;color:var(--accent-color)}.app-footer{position:sticky;bottom:0;z-index:100;width:100%;background-color:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border-color)}.footer-content{display:flex;justify-content:center;align-items:center;gap:8px;max-width:1200px;margin:0 auto;font-size:.95rem;font-weight:400;color:var(--text-secondary);padding:1rem 1.25rem}.footer-content .footer-link{color:var(--text-secondary);text-decoration:none;font-weight:600;transition:color .2s ease}.footer-content .footer-link:hover{color:var(--accent-color)}.footer-separator{color:#ccc}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{position:relative;background:var(--bg);padding:40px;border-radius:16px;max-width:500px;width:90%;box-shadow:0 10px 30px #0003;text-align:center}.modal-close-button{position:absolute;top:15px;right:15px;background:none;border:none;font-size:28px;color:var(--text-tertiary);cursor:pointer;line-height:1}.popup-content h2{margin-top:0;font-size:24px}.popup-content p{margin:15px 0 30px;line-height:1.6;color:var(--text-secondary)}.button-primary{width:100%;padding:14px;background-color:var(--cta-bg);color:var(--cta-text);border:none;border-radius:8px;font-size:16px;cursor:pointer;margin-top:10px;transition:opacity .2s}@media(max-width:900px){.page-content-wrapper{padding:20px 15px}.header-content{flex-direction:column;gap:1rem;padding:1rem}.main-interface{flex-direction:column;gap:30px}.calculator-container .header h1{font-size:24px}.calculator-container .header p{font-size:15px}.calculator-container .form-row label{padding:10px 14px;font-size:15px;width:40%}.graph-container{min-height:300px;padding:15px}.scenario-input-group{flex-direction:column;gap:16px}.footer-content{flex-direction:column;gap:10px;text-align:center}}
