:root{--deep: #001219;--deep-mid: #14344A;--teal: #1B4965;--teal-light: #94D2BD;--sand: #E9D8A6;--amber: #EE9B00;--amber-dark: #CA6702;--burnt: #BB3E03;--red: #AE2012;--bg-gradient-from: #e5e7e6;--bg-gradient-to: #dcdede;--card-bg: #ffffff;--card-border: rgba(0,18,25,.08);--text-primary: #001219;--text-secondary: #14344A;--text-muted: #4A7C9B;--color-navy: #0C2232;--color-navy-mid: #496677;--color-blue-light: #7D9DAB;--color-slate: #74899E;--color-gold: #BC8B3D;--color-orange: #C4501A;--color-cream: #F5F0E8;--color-white: #FFFFFF;--color-red: #8B1A1A;--gray-100: #f4f1eb;--gray-200: #e6e0d4;--gray-300: #c9c0b0;--gray-400: #8a8578;--gray-500: #5f5a50;--green: #1B4965;--green-light: rgba(27, 73, 101, .12);--blue: #14344A;--blue-light: rgba(20, 52, 74, .1);--orange: #EE9B00;--orange-light: rgba(238, 155, 0, .12);--red-light: rgba(174, 32, 18, .1);--purple: #14344A;--purple-light: rgba(20, 52, 74, .1);--font-display: "Outfit", -apple-system, sans-serif;--font-heading: "DM Serif Display", Georgia, serif;--font-body: "Outfit", -apple-system, sans-serif;--font-mono: "Outfit", -apple-system, sans-serif;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--shadow-sm: 0 1px 3px rgba(0,18,25,.08);--shadow-md: 0 4px 16px rgba(0,18,25,.1);--shadow-lg: 0 8px 32px rgba(0,18,25,.14);--shadow-card: 0 2px 12px rgba(0,18,25,.08), 0 0 0 1px rgba(0,18,25,.04);--shadow-glow: 0 0 40px rgba(238, 155, 0, .12)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-variant-numeric:tabular-nums;background:#fdfaf5;color:var(--text-primary);min-height:100vh;overflow-x:hidden}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-body);font-weight:700}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none}button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}input[type=range]{-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;width:100%}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:#c4bdb0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:20px;width:20px;border-radius:50%;background:var(--teal);margin-top:-7px;box-shadow:0 2px 6px #1b496566;transition:transform .15s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:#c4bdb0}input[type=range]::-moz-range-thumb{height:20px;width:20px;border-radius:50%;background:var(--teal);border:none;box-shadow:0 2px 6px #1b496566}.fade-in{animation:fadeIn .4s ease-out}.slide-up{animation:slideUp .5s ease-out}@keyframes conceptPulse{0%,to{transform:scale(1);box-shadow:0 0 #2d6a4f66}50%{transform:scale(1.15);box-shadow:0 0 12px 4px #2d6a4f4d}}.concept-flip-in{animation:conceptFlipIn .4s ease-out}@keyframes conceptFlipIn{0%{transform:scale(.97) rotateX(8deg);opacity:.7}50%{transform:scale(1.02) rotateX(-2deg);opacity:.9}to{transform:scale(1) rotateX(0);opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.count-up{animation:countUp .3s ease-out}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes pageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-turn-in{animation:pageEnter .35s ease-out}@keyframes blink{50%{opacity:0}}@keyframes trophyPop{0%{transform:scale(.3) rotate(-15deg);opacity:0}50%{transform:scale(1.25) rotate(5deg);opacity:1}75%{transform:scale(.95) rotate(-2deg)}to{transform:scale(1) rotate(0)}}@keyframes pulseGold{0%,to{box-shadow:0 0 8px #ee9b0026,0 0 0 1px #ee9b001a}50%{box-shadow:0 0 20px #ee9b0059,0 0 0 2px #ee9b0040}}.blink{animation:blink .8s step-end infinite}@keyframes tutorialPulse{0%,to{box-shadow:0 0 0 4px #ee9b0033}50%{box-shadow:0 0 0 8px #ee9b0066}}@keyframes mobileTutorialPulse{0%{filter:drop-shadow(0 0 0px #C84B00)}50%{filter:drop-shadow(0 0 6px #C84B00)}to{filter:drop-shadow(0 0 0px #C84B00)}}.tutorial-active-tab .tab-icon{animation:mobileTutorialPulse 1.5s ease-in-out infinite}.tutorial-backdrop{position:fixed;inset:0;background:#0012194d;z-index:99}.real-salary-tip{border-bottom:1px dotted #EE9B00}.real-salary-tip:after{content:"Inflation-adjusted purchasing power —what your salary actually buys in today’s dollars";position:absolute;top:calc(100% + 6px);left:0;background:#14344a;color:#fff;font-size:.62rem;font-weight:500;padding:6px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:20;box-shadow:0 2px 8px #00000026;max-width:280px;white-space:normal;line-height:1.3}.real-salary-tip:hover:after{opacity:1}@keyframes fireworkBurst{0%{transform:scale(0);opacity:1}50%{opacity:1}to{transform:scale(4);opacity:0}}.fireworks-overlay{animation:fadeIn .3s ease-out,fireworksFadeOut .5s ease-in 3.8s forwards}@keyframes fireworksFadeOut{0%{opacity:1}to{opacity:0}}@keyframes allocPulse{0%,to{box-shadow:0 0 8px #ee9b0033,0 0 0 1px #ee9b0026}50%{box-shadow:0 0 20px #ee9b0080,0 0 0 3px #ee9b004d}}.alloc-pulse{animation:allocPulse 2s ease-in-out infinite;border-radius:14px}@keyframes cardFlipIn{0%{opacity:0;transform:perspective(800px) rotateY(90deg) scale(.95)}40%{opacity:1}70%{transform:perspective(800px) rotateY(-8deg) scale(1.02)}85%{transform:perspective(800px) rotateY(3deg) scale(1.005)}to{opacity:1;transform:perspective(800px) rotateY(0) scale(1)}}.card-flip-in{animation:cardFlipIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes attentionPulse{0%,to{box-shadow:0 1px 4px #0000000d,0 0 #ee9b0000;transform:scale(1)}50%{box-shadow:0 2px 12px #ee9b0033,0 0 0 3px #ee9b001a;transform:scale(1.01)}}.attention-pulse{animation:attentionPulse 2.5s ease-in-out infinite;animation-delay:0s!important}@keyframes resolvedPop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.resolved-pop{animation:resolvedPop .35s ease-out}@keyframes slideSheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideSheetDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.bottom-sheet-backdrop{position:fixed;inset:0;background:#00121973;z-index:900;animation:fadeIn .2s ease-out}.bottom-sheet{position:fixed;bottom:0;left:0;right:0;max-height:75vh;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -4px 24px #0012192e;z-index:901;overflow-y:auto;animation:slideSheetUp .3s cubic-bezier(.32,.72,0,1);padding-bottom:72px}.bottom-sheet-handle{width:36px;height:4px;background:#c9c0b0;border-radius:2px;margin:10px auto 6px}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:64px;background:#fff;border-top:1px solid #E9D8A6;display:flex;align-items:center;justify-content:space-around;z-index:800;padding-bottom:env(safe-area-inset-bottom,0);box-shadow:0 -2px 12px #0012190f}.mobile-tab-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;background:none;border:none;cursor:pointer;font-family:var(--font-mono);font-size:.58rem;font-weight:600;color:#8a8578;transition:color .15s ease;letter-spacing:.03em}.mobile-tab-btn.active{color:#ee9b00}.mobile-tab-btn .tab-icon{font-size:1.2rem;line-height:1}@media(max-width:767px){.mobile-tab-content{-webkit-overflow-scrolling:touch;scrollbar-width:none}.mobile-tab-content::-webkit-scrollbar{display:none}}.setup-card-grain{position:relative;overflow:hidden}.setup-card-grain:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;mix-blend-mode:overlay;opacity:.06;border-radius:inherit}
