@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-dark:#0f172a;--glass-bg:#1e293bb3;--glass-border:#ffffff1a;--accent-primary:#3b82f6;--accent-hover:#2563eb;--text-main:#f8fafc;--text-muted:#94a3b8;--success:#10b981;--danger:#ef4444;--card-bg:#0f172a99}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);background-image:radial-gradient(at 0 0,#3b82f626 0,#0000 50%),radial-gradient(at 100% 100%,#8b5cf626 0,#0000 50%);background-attachment:fixed;justify-content:center;align-items:center;min-height:100vh;padding:2rem;font-family:Inter,sans-serif;display:flex}.app-container{width:100%;max-width:850px;animation:.8s ease-out fadeIn}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:24px;padding:3rem;box-shadow:0 25px 50px -12px #00000080}h1{text-align:center;background:linear-gradient(90deg,#60a5fa,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.75rem;font-weight:700}.subtitle{text-align:center;color:var(--text-muted);margin-bottom:3rem;font-size:1.1rem}.input-group{gap:2rem;margin-bottom:2rem;display:flex}.input-field{flex-direction:column;flex:1;justify-content:flex-end;gap:.75rem;display:flex}label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.95rem;font-weight:500}input[type=datetime-local],input[type=number],select{border:1px solid var(--glass-border);width:100%;color:var(--text-main);appearance:none;background:#0f172acc;border-radius:12px;outline:none;padding:1rem;font-family:Inter,sans-serif;font-size:1.05rem;transition:all .3s}input[type=datetime-local]:focus,input[type=number]:focus,select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f633}input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert();cursor:pointer}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23f8fafc'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.25em;padding-right:3rem}.calc-button{background:linear-gradient(135deg, var(--accent-primary), var(--accent-hover));color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;width:100%;margin-bottom:2rem;padding:1.25rem;font-size:1.15rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex}.calc-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px -5px #3b82f666}.calc-button:active:not(:disabled){transform:translateY(0)}.calc-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.error-message{color:#fca5a5;text-align:center;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;margin-bottom:2rem;padding:1rem;animation:.3s ease-out fadeIn}.results-container{animation:.5s ease-out fadeIn}.summary-cards{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.card{background:var(--card-bg);border:1px solid var(--glass-border);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;transition:transform .3s;display:flex}.card:hover{transform:translateY(-5px)}.card .label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;text-align:center;font-size:.85rem}.card .value{color:var(--text-main);text-align:center;font-size:1.5rem;font-weight:700}.assumptions{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.assumption-block{background:var(--card-bg);border:1px solid var(--glass-border);border-radius:16px;flex-direction:column;gap:1rem;padding:2rem;display:flex;position:relative;overflow:hidden}.assumption-block:before{content:"";width:100%;height:4px;position:absolute;top:0;left:0}.assumption-block.linear:before{background:linear-gradient(90deg,#3b82f6,#8b5cf6)}.assumption-block.inverse:before{background:linear-gradient(90deg,#10b981,#3b82f6)}.assumption-block h3{font-size:1.25rem;font-weight:600}.assumption-block p{color:var(--text-muted);flex-grow:1;font-size:.95rem;line-height:1.5}.earnings{margin-top:1rem;font-size:2rem;font-weight:700}.earnings.positive{color:var(--success)}.earnings.negative{color:var(--danger)}.position-toggle{border:1px solid var(--glass-border);background:#0f172a99;border-radius:12px;margin-bottom:2rem;padding:.5rem;display:flex}.toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:.75rem 1rem;font-size:1rem;font-weight:600;transition:all .3s}.toggle-btn:hover{color:var(--text-main);background:#ffffff0d}.toggle-btn.active.long{background:var(--success);color:#fff;box-shadow:0 4px 15px #10b9814d}.toggle-btn.active.short{background:var(--danger);color:#fff;box-shadow:0 4px 15px #ef44444d}@media (width<=768px){.input-group,.summary-cards,.assumptions{flex-direction:column;grid-template-columns:1fr}.glass-panel{padding:2rem}}
