:root{--primary:#3b82f6;--primary-hover:#2563eb;--secondary:#1e293b;--background:#f8fafc;--surface:#fff;--text:#0f172a;--text-muted:#64748b;--border:#e2e8f0;--success:#10b981;--danger:#ef4444;--radius-sm:.375rem;--radius:.75rem;--radius-lg:1rem;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a}body.dark-mode{--primary:#60a5fa;--primary-hover:#3b82f6;--secondary:#f8fafc;--background:#0f172a;--surface:#1e293b;--text:#f8fafc;--text-muted:#94a3b8;--border:#334155}@media (prefers-color-scheme:dark){body.theme-system{--primary:#60a5fa;--primary-hover:#3b82f6;--secondary:#f8fafc;--background:#0f172a;--surface:#1e293b;--text:#f8fafc;--text-muted:#94a3b8;--border:#334155}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;transition:background-color .3s,color .3s}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.mt-4{margin-top:1rem}.mb-8{margin-bottom:2rem}.w-full{width:100%}.text-xs{font-size:.75rem}.app-header{background-color:var(--surface);border-bottom:1px solid var(--border);z-index:100;position:sticky;top:0}.app-header .container{justify-content:space-between;align-items:center;height:4rem;display:flex}.logo{color:var(--primary);align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;display:flex}.main-nav{align-items:center;display:flex}.main-nav a{color:var(--text-muted);margin-left:1.5rem;font-weight:500;text-decoration:none;transition:color .2s;display:none}@media (width>=768px){.main-nav a{display:block}}.main-nav a:hover{color:var(--primary)}.btn{border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-family:inherit;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 4px 14px #3b82f663}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.btn-secondary{background-color:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background-color:var(--border)}.btn-text{color:var(--text-muted);background:0 0;padding:0}.btn-text:hover{color:var(--text);text-decoration:underline}.btn-icon{color:var(--text-muted);background:0 0;border-radius:50%;margin-left:1rem;padding:.5rem}.btn-icon:hover{background-color:var(--border);color:var(--text)}.hero{text-align:center;padding:4rem 0}.hero h1{background:linear-gradient(to right, var(--primary), #8b5cf6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:1rem;font-size:2.5rem;font-weight:800}.hero p{color:var(--text-muted);max-width:600px;margin:0 auto 2rem;font-size:1.125rem}.hero-actions{justify-content:center;gap:1rem;display:flex}.calculator-section{padding:2rem 0}.calculator-grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=992px){.calculator-grid{grid-template-columns:350px 1fr}}.card{background-color:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border);padding:1.5rem}.form-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.calculator-form h2{font-size:1.25rem}.form-group{margin-bottom:1.25rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}label{color:var(--text);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.tooltip{background-color:var(--border);color:var(--text-muted);text-align:center;cursor:help;border-radius:50%;width:16px;height:16px;margin-left:4px;font-size:10px;line-height:16px;display:inline-block}input[type=number],select{border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--background);width:100%;color:var(--text);padding:.625rem;font-family:inherit;font-size:1rem;transition:border-color .2s}input[type=number]:focus,select:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #3b82f633}.input-wrapper{align-items:center;display:flex;position:relative}.input-wrapper input{padding-left:2rem}.input-wrapper .prefix{color:var(--text-muted);position:absolute;left:.75rem}.input-wrapper .suffix{color:var(--text-muted);position:absolute;right:.75rem}.input-wrapper:has(.suffix) input{padding-left:.625rem;padding-right:2rem}.results-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.result-card{background-color:var(--surface);border-radius:var(--radius);border:1px solid var(--border);text-align:center;padding:1.5rem}.result-card.primary{background:linear-gradient(135deg, var(--primary) 0%, #8b5cf6 100%);color:#fff;border:none}.result-card h3{color:var(--text-muted);margin-bottom:.5rem;font-size:.875rem;font-weight:500}.result-card.primary h3{color:#fffc}.result-card .value{font-size:1.75rem;font-weight:700;transition:all .3s}.result-card .sub-value{color:#ffffffe6;margin-top:.25rem;font-size:.8rem}.value.success{color:var(--success)}.export-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.chart-container{height:400px;position:relative}.disclaimer{color:var(--text-muted);background-color:var(--background);border-radius:var(--radius);padding:1rem;font-size:.75rem}.section-title{text-align:center;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.scenarios-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;display:grid}.scenario-card{text-align:center;transition:transform .2s,border-color .2s}.scenario-card.active{border-color:var(--primary);box-shadow:0 0 0 2px #3b82f61a}.scenario-card h3{color:var(--text-muted);font-size:1rem}.scenario-rate{color:var(--primary);margin:.5rem 0;font-size:1.5rem;font-weight:700}.scenario-value{color:var(--text);font-size:1.25rem;font-weight:600}.table-section{padding-bottom:2rem}.table-responsive{margin-top:1rem;overflow-x:auto}table{border-collapse:collapse;text-align:right;width:100%;font-size:.875rem}th,td{border-bottom:1px solid var(--border);padding:.75rem 1rem}th{color:var(--text-muted);background-color:var(--background);white-space:nowrap;font-weight:600}th:first-child,td:first-child{text-align:left}tbody tr:hover{background-color:var(--background)}.content-section{padding:2rem 0}.content-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.info-card h3{color:var(--primary);margin-bottom:.75rem;font-size:1.125rem}.info-card p{color:var(--text-muted);font-size:.95rem}.accordion-item{border-bottom:1px solid var(--border)}.accordion-header{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:1.25rem 0;font-size:1rem;font-weight:600;display:flex}.accordion-content{color:var(--text-muted);padding-bottom:1.25rem;display:none}.accordion-item.active .accordion-content{display:block}.accordion-item.active .accordion-header{color:var(--primary)}.toast{background-color:var(--text);color:var(--background);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:1000;padding:1rem 1.5rem;transition:opacity .3s,transform .3s;position:fixed;bottom:2rem;right:2rem}.toast.hidden{opacity:0;pointer-events:none;transform:translateY(20px)}.app-footer{border-top:1px solid var(--border);background-color:var(--surface);padding:3rem 0 2rem}.footer-content{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem;display:grid}.footer-col h3{color:var(--primary);margin-bottom:1rem;font-size:1.25rem}.footer-col h4{margin-bottom:1rem;font-size:1rem}.footer-col a{color:var(--text-muted);margin-bottom:.5rem;text-decoration:none;display:block}.footer-col a:hover{color:var(--primary)}.footer-bottom{text-align:center;border-top:1px solid var(--border);color:var(--text-muted);padding-top:2rem}@media print{.no-print{display:none!important}body{color:#000;background-color:#fff}.card,.result-card{box-shadow:none;break-inside:avoid;border:1px solid #ccc}.container{max-width:100%;padding:0}.calculator-grid{grid-template-columns:1fr}.chart-container{height:300px}.table-responsive{overflow:visible}}@media (prefers-reduced-motion){*{transition:none!important;animation:none!important}}
