@import"https://fonts.googleapis.com/css2?family=VT323&family=Rubik+Mono+One&display=swap";@import"https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=DM+Sans:wght@400;500;700&family=JetBrains+Mono:wght@400;500;600&display=swap";.login-container{min-height:100vh}.login-actions{display:flex;flex-direction:column;gap:12px}.login-actions .brutal-button{min-height:55px}.btn-bg-pink{background:var(--neon-pink)!important;box-shadow:0 0 30px var(--neon-pink),inset 0 0 20px #ffffff4d!important}.btn-bg-cyan{background:var(--neon-cyan)!important;box-shadow:0 0 30px var(--neon-cyan),inset 0 0 20px #ffffff4d!important}.btn-bg-white{background:var(--brutal-white)!important;box-shadow:0 0 20px #ffffff80,inset 0 0 20px #0000001a!important}.btn-text-dark{color:var(--brutal-black)!important}.login-divider{display:flex;align-items:center;gap:15px;padding:10px 0;margin:5px 0}.divider-line{flex:1;height:3px;background:linear-gradient(90deg,transparent 0%,var(--brutal-black) 50%,transparent 100%)}.divider-text{font-family:Rubik Mono One,sans-serif;font-size:14px;color:var(--brutal-black);letter-spacing:3px;padding:4px 12px;background:var(--brutal-white);border:2px solid var(--brutal-black)}.login-form{display:flex;flex-direction:column;gap:15px}.login-form .brutal-input{border-width:3px}.login-error{font-family:VT323,monospace;font-size:18px;color:var(--neon-pink);text-align:center;padding:12px 15px;background:linear-gradient(135deg,#ff006e26,#ff006e14);border:3px solid var(--neon-pink);text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 10px var(--neon-pink);box-shadow:0 0 15px #ff006e4d,inset 0 0 20px #ff006e1a;animation:error-flash .5s ease-out}@keyframes error-flash{0%,50%{opacity:.5;transform:scale(.98)}25%,75%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.login-switch{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:10px;padding-top:15px;border-top:2px dashed rgba(0,0,0,.1)}.switch-btn{background:linear-gradient(135deg,var(--brutal-black) 0%,#1a1a2e 100%);border:2px solid var(--brutal-black);font-family:VT323,monospace;font-size:16px;color:var(--neon-cyan);cursor:pointer;letter-spacing:1px;text-transform:uppercase;padding:10px 20px;-webkit-tap-highlight-color:transparent;transition:all .2s ease;text-shadow:0 0 8px var(--neon-cyan);box-shadow:0 2px 8px #0003,inset 0 0 15px #00d4ff1a}.switch-btn:hover{background:linear-gradient(135deg,#1a1a2e,#2d2d44);color:var(--neon-pink);text-shadow:0 0 12px var(--neon-pink);border-color:var(--neon-pink);box-shadow:0 4px 15px #ff006e4d,inset 0 0 20px #ff006e1a;transform:translateY(-1px)}.switch-btn:active{transform:translateY(0) scale(.98)}@media(max-width:480px){.login-actions .brutal-button{min-height:50px;font-size:16px}}:root{--neon-green: #00FF41;--neon-pink: #FF006E;--neon-cyan: #00D4FF;--neon-yellow: #FFFF00;--brutal-black: #000000;--brutal-white: #FFFFFF}*{margin:0;padding:0;box-sizing:border-box}.arcade-container{min-height:100vh;width:100%;background:var(--brutal-black);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:20px}.scanlines{position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,0,0,.15),rgba(0,0,0,.15) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:100;animation:scanline-drift 8s linear infinite}@keyframes scanline-drift{0%{transform:translateY(0)}to{transform:translateY(4px)}}.crt:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,transparent 0%,rgba(0,0,0,.3) 100%);pointer-events:none;z-index:99}.grid-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(var(--neon-pink) 2px,transparent 2px),linear-gradient(90deg,var(--neon-pink) 2px,transparent 2px);background-size:50px 50px;opacity:.1;animation:grid-scroll 20s linear infinite;transform:perspective(500px) rotateX(60deg) scale(2);transform-origin:center bottom}@keyframes grid-scroll{0%{background-position:0 0}to{background-position:50px 50px}}.explosion-particle{position:absolute;width:var(--size);height:var(--size);background:var(--color);border-radius:0;top:50%;left:50%;box-shadow:0 0 10px var(--color);animation:explode .8s cubic-bezier(.25,.46,.45,.94) forwards;z-index:1000}@keyframes explode{0%{transform:translate(-50%,-50%) rotate(0);opacity:1}to{transform:translate(calc(-50% + cos(var(--angle)) * var(--distance)),calc(-50% + sin(var(--angle)) * var(--distance))) rotate(720deg);opacity:0}}.brutal-progress{position:absolute;top:20px;left:50%;transform:translate(-50%);z-index:50}.progress-chunks{display:flex;gap:8px}.chunk{width:40px;height:12px;background:#ffffff1a;border:2px solid var(--brutal-white);position:relative;transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}.chunk.filled{background:var(--neon-green);box-shadow:0 0 10px var(--neon-green),inset 0 0 10px #ffffff80;animation:chunk-pulse .5s ease-out}@keyframes chunk-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.progress-label{font-family:VT323,monospace;font-size:16px;color:var(--neon-cyan);text-align:center;margin-top:8px;text-shadow:0 0 10px var(--neon-cyan);letter-spacing:2px}.content-zone{display:flex;flex-direction:column;align-items:center;gap:30px;width:100%;max-width:500px;z-index:10}.content-zone.glitch{animation:glitch .3s steps(2,end)}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-5px,5px)}40%{transform:translate(5px,-5px)}60%{transform:translate(-5px,-5px)}80%{transform:translate(5px,5px)}to{transform:translate(0)}}.robbi-zone{filter:drop-shadow(0 0 20px var(--neon-cyan))}.chunky-robbi{width:120px;height:140px;animation:robbi-float 3s ease-in-out infinite}@keyframes robbi-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}.chunky-robbi.pose-welcome .arm-left{animation:wave .5s ease-in-out 3;transform-origin:center}@keyframes wave{0%,to{transform:rotate(0)}50%{transform:rotate(-20deg)}}.chunky-robbi.pose-thinking .antenna{animation:think-blink .5s infinite}@keyframes think-blink{0%,49%,to{opacity:1}50%,99%{opacity:.3}}.chunky-robbi.pose-excited{animation:robbi-jump .5s ease-out infinite}@keyframes robbi-jump{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.1)}}.chunky-robbi .antenna-tip{animation:antenna-glow 1.5s ease-in-out infinite}@keyframes antenna-glow{0%,to{opacity:1}50%{opacity:.4}}.chunky-robbi .pupil-left,.chunky-robbi .pupil-right{animation:eye-scan 4s ease-in-out infinite}@keyframes eye-scan{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.diagonal-card{position:relative;width:100%;background:var(--brutal-white);border:4px solid var(--brutal-black);clip-path:polygon(0 8%,100% 0,100% 92%,0 100%);box-shadow:0 0 0 4px var(--neon-pink),0 0 30px var(--neon-pink);animation:card-entry .6s cubic-bezier(.68,-.55,.265,1.55)}@keyframes card-entry{0%{opacity:0;transform:rotate(90deg) scale(0)}to{opacity:1;transform:rotate(0) scale(1)}}.card-slice-top,.card-slice-bottom{position:absolute;left:0;right:0;height:8px;background:var(--neon-pink);z-index:1}.card-slice-top{top:0;background:linear-gradient(90deg,var(--neon-pink),var(--neon-yellow),var(--neon-cyan),var(--neon-pink));background-size:300% 100%;animation:rainbow-slide 3s linear infinite}.card-slice-bottom{bottom:0;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-yellow),var(--neon-pink),var(--neon-cyan));background-size:300% 100%;animation:rainbow-slide 3s linear infinite reverse}@keyframes rainbow-slide{0%{background-position:0% 0%}to{background-position:300% 0%}}.card-content{padding:40px 30px 30px}.question-zone{text-align:center;margin-bottom:30px}.brutal-title{font-family:Rubik Mono One,sans-serif;font-size:28px;color:var(--brutal-black);text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;line-height:1.2;text-shadow:3px 3px 0 var(--neon-pink),6px 6px 0 var(--neon-cyan);animation:title-glitch 5s infinite}@keyframes title-glitch{0%,96%,to{text-shadow:3px 3px 0 var(--neon-pink),6px 6px 0 var(--neon-cyan)}97%{text-shadow:5px 1px 0 var(--neon-pink),2px 6px 0 var(--neon-cyan)}98%{text-shadow:1px 5px 0 var(--neon-pink),6px 2px 0 var(--neon-cyan)}99%{text-shadow:4px 4px 0 var(--neon-pink),7px 7px 0 var(--neon-cyan)}}.brutal-subtitle{font-family:VT323,monospace;font-size:18px;color:var(--brutal-black);text-transform:uppercase;letter-spacing:1px}.answer-zone{margin-bottom:25px}.brutal-input{width:100%;min-height:50px;padding:15px;font-family:VT323,monospace;font-size:20px;background:var(--brutal-black);color:var(--neon-green);border:4px solid var(--neon-green);outline:none;text-transform:uppercase;letter-spacing:2px;transition:all .2s ease;caret-color:var(--neon-green)}.brutal-input:focus{box-shadow:0 0 20px var(--neon-green),inset 0 0 10px #00ff414d;animation:input-pulse 1.5s infinite}@keyframes input-pulse{0%,to{border-color:var(--neon-green)}50%{border-color:var(--neon-cyan)}}.brutal-input::placeholder{color:#00ff4166}.brutal-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.brutal-option{position:relative;min-height:50px;padding:12px;font-family:VT323,monospace;font-size:18px;text-transform:uppercase;letter-spacing:1px;background:var(--brutal-black);color:var(--brutal-white);border:3px solid var(--brutal-white);cursor:pointer;transition:all .15s ease;overflow:hidden;-webkit-tap-highlight-color:transparent}.brutal-option:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--neon-pink);transition:left .3s ease;z-index:0}.brutal-option:hover:before{left:0}.brutal-option .option-text,.brutal-option .check{position:relative;z-index:1}.brutal-option:active{transform:scale(.95)}.brutal-option.active{background:var(--neon-yellow);color:var(--brutal-black);border-color:var(--neon-yellow);box-shadow:0 0 20px var(--neon-yellow),inset 0 0 20px #ffff0080;transform:scale(1.05);animation:option-selected .4s ease}@keyframes option-selected{0%,to{transform:scale(1.05)}25%{transform:scale(.95) rotate(-2deg)}75%{transform:scale(1.1) rotate(2deg)}}.brutal-option.active:before{display:none}.brutal-option .check{margin-left:8px;font-size:24px;font-weight:700;animation:check-pop .3s cubic-bezier(.68,-.55,.265,1.55)}@keyframes check-pop{0%{transform:scale(0) rotate(-180deg)}to{transform:scale(1) rotate(0)}}.brutal-button{position:relative;width:100%;min-height:60px;font-family:Rubik Mono One,sans-serif;font-size:20px;text-transform:uppercase;letter-spacing:3px;background:transparent;border:none;cursor:not-allowed;overflow:hidden;-webkit-tap-highlight-color:transparent}.brutal-button .btn-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(45deg,#0000004d,#0000004d 10px,#00000080 10px,#00000080 20px);border:4px solid rgba(255,255,255,.3);transition:all .3s ease}.brutal-button .btn-text{position:relative;z-index:1;color:#ffffff4d;transition:all .3s ease}.brutal-button.ready{cursor:pointer;animation:btn-ready-pulse 1.5s ease-in-out infinite}@keyframes btn-ready-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.brutal-button.ready .btn-bg{background:var(--neon-green);border-color:var(--brutal-black);box-shadow:0 0 30px var(--neon-green),inset 0 0 20px #ffffff4d;animation:bg-scan 2s linear infinite}@keyframes bg-scan{0%{background-position:0 0}to{background-position:40px 40px}}.brutal-button.ready .btn-text{color:var(--brutal-black);text-shadow:0 0 10px rgba(255,255,255,.8)}.brutal-button.ready:active{transform:scale(.98)}.brutal-button.ready:active .btn-bg{box-shadow:0 0 50px var(--neon-green),inset 0 0 30px #0000004d}@media(max-width:480px){.brutal-title{font-size:22px;text-shadow:2px 2px 0 var(--neon-pink),4px 4px 0 var(--neon-cyan)}.brutal-subtitle{font-size:16px}.brutal-options{grid-template-columns:1fr}.card-content{padding:30px 20px 20px}.progress-chunks{gap:6px}.chunk{width:32px;height:10px}}@media(hover:none)and (pointer:coarse){.brutal-option:hover:before{left:-100%}}.robbi{animation:robbi-idle 3s ease-in-out infinite}@keyframes robbi-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.robbi-antenna-tip{animation:robbi-glow 2s ease-in-out infinite}@keyframes robbi-glow{0%,to{opacity:1;fill:gold}50%{opacity:.6;fill:orange}}.robbi-pupil-left,.robbi-pupil-right{animation:robbi-look 4s ease-in-out infinite}@keyframes robbi-look{0%,to{transform:translate(0)}25%{transform:translate(-1px)}75%{transform:translate(1px)}}.robbi-pose-welcome .robbi-arm-right{animation:robbi-wave .6s ease-in-out 3;transform-origin:85px 86px}@keyframes robbi-wave{0%,to{transform:rotate(0)}50%{transform:rotate(-25deg)}}.robbi-pose-thinking .robbi-antenna-tip{animation:robbi-think-blink .4s infinite}@keyframes robbi-think-blink{0%,49%{opacity:1}50%,to{opacity:.2}}.robbi-pose-excited{animation:robbi-bounce .5s ease-out infinite!important}@keyframes robbi-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-12px) scale(1.05)}}.robbi-pose-encouraging .robbi-arm-left{animation:robbi-thumbs-up 1s ease-in-out infinite;transform-origin:27px 86px}@keyframes robbi-thumbs-up{0%,to{transform:rotate(0)}50%{transform:rotate(15deg)}}.robbi-pose-asking{animation:robbi-tilt 2s ease-in-out infinite!important}@keyframes robbi-tilt{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(5deg)}}@media(prefers-reduced-motion:reduce){.robbi,.robbi-antenna-tip,.robbi-pupil-left,.robbi-pupil-right,.robbi-pose-welcome .robbi-arm-right,.robbi-pose-thinking .robbi-antenna-tip,.robbi-pose-excited,.robbi-pose-encouraging .robbi-arm-left,.robbi-pose-asking{animation:none!important}}.job-card-v2{background:linear-gradient(135deg,#fff,#f8f9ff);border-radius:var(--radius-lg, 16px);padding:var(--space-5, 20px);box-shadow:0 4px 16px #667eea1a;border:2px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);animation:cardSlideIn .4s cubic-bezier(.34,1.56,.64,1) backwards;position:relative;overflow:hidden}.job-card-v2:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:0;transition:opacity .2s ease}.job-card-v2:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 8px 28px #667eea33;border-color:#667eea4d}.job-card-v2:hover:before{opacity:1}.job-card-v2:active{transform:translateY(-2px) scale(.99)}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.job-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.job-card-titles{flex:1;min-width:0}.job-card-title{font-family:var(--font-display, "Fredoka", sans-serif);font-size:17px;font-weight:600;color:#1a252f;line-height:1.3;margin:0 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-card-company{font-family:var(--font-body, "DM Sans", sans-serif);font-size:14px;color:#667eea;font-weight:500;margin:0}.job-card-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.job-card-badge{font-family:var(--font-body, "DM Sans", sans-serif);font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px;white-space:nowrap}.badge-type{background:#f0f4ff;color:#667eea}.badge-type.full-time{background:linear-gradient(135deg,#667eea20,#764ba220);color:#667eea}.badge-salary{background:linear-gradient(135deg,#fff8e6,#fff3d6);color:#d97706;border:1px solid rgba(217,119,6,.2)}.badge-fresh{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#059669}.job-card-meta{display:flex;align-items:center;gap:16px;margin-bottom:10px}.job-card-location{display:flex;align-items:center;gap:6px;font-size:13px;color:#7f8c8d}.job-card-icon{width:14px;height:14px;stroke:currentColor}.job-card-snippet{font-family:var(--font-body, "DM Sans", sans-serif);font-size:14px;line-height:1.5;color:#6b7280;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #e8ecf1}.job-card-footer-left{display:flex;align-items:center;gap:8px}.job-card-source{font-size:11px;color:#9ca3af;background:#f3f4f6;padding:2px 8px;border-radius:10px}.job-card-time{font-size:12px;color:#9ca3af}.job-card-footer-right{display:flex;align-items:center;gap:12px}.job-card-save-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;background:#f3f4f6;border:1.5px solid transparent;border-radius:20px;font-family:var(--font-body, "DM Sans", sans-serif);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);white-space:nowrap}.job-card-save-btn .save-icon{font-size:14px;display:flex;align-items:center}.job-card-save-btn .save-text{color:#4b5563}.job-card-save-btn:hover{background:#e5e7eb;border-color:#667eea33;transform:translateY(-1px)}.job-card-save-btn:active{transform:scale(.97)}.job-card-save-btn.saved{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent}.job-card-save-btn.saved .save-text,.job-card-save-btn.saved .save-icon{color:#fff}.job-card-save-btn.saved:hover{background:linear-gradient(135deg,#5a6fd6,#6a4292);box-shadow:0 4px 12px #667eea4d}.job-card-cta{font-family:var(--font-display, "Fredoka", sans-serif);font-size:13px;font-weight:600;color:#667eea;display:flex;align-items:center;gap:4px;transition:transform .2s ease}.job-card-v2:hover .job-card-cta{transform:translate(4px)}.job-card-compact{background:linear-gradient(135deg,#fff,#fafbff);border-radius:var(--radius-md, 12px);padding:14px 16px;box-shadow:0 2px 8px #667eea14;border:1.5px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);animation:cardSlideIn .35s cubic-bezier(.34,1.56,.64,1) backwards;display:flex;flex-direction:column;gap:8px;position:relative}.job-card-compact:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 6px 20px #667eea26;border-color:#667eea40}.job-card-compact:active{transform:scale(.98)}.job-card-compact-main{flex:1}.job-card-compact-title{font-family:var(--font-display, "Fredoka", sans-serif);font-size:15px;font-weight:600;color:#1a252f;margin:0 0 3px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.job-card-compact-company{font-family:var(--font-body, "DM Sans", sans-serif);font-size:13px;color:#667eea;font-weight:500;margin:0}.job-card-compact-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.job-card-compact-location{font-size:12px;color:#7f8c8d}.job-card-compact-salary{font-size:12px;font-weight:600;color:#d97706;background:linear-gradient(135deg,#fff8e6,#fff3d6);padding:2px 8px;border-radius:10px}.job-card-compact-viewed{position:absolute;top:12px;right:12px;width:20px;height:20px;background:linear-gradient(135deg,#43e97b,#38f9d7);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700}@media(min-width:768px){.job-card-v2{padding:24px}.job-card-title{font-size:18px}.job-card-company{font-size:15px}.job-card-snippet{font-size:14px;-webkit-line-clamp:3}}@media(prefers-reduced-motion:reduce){.job-card-v2,.job-card-compact{animation:none;transition:opacity .2s ease}.job-card-v2:hover,.job-card-compact:hover{transform:none}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:64px;background:#fff;display:flex;align-items:center;justify-content:space-around;box-shadow:0 -2px 16px #00000014;z-index:1000;padding-bottom:env(safe-area-inset-bottom,0);-webkit-tap-highlight-color:transparent}.nav-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1;height:100%;text-decoration:none;color:var(--gray-400);transition:all .2s var(--ease-bounce);position:relative}.nav-tab:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%) scaleX(0);width:32px;height:3px;border-radius:0 0 4px 4px;background:var(--gradient-primary);transition:transform .3s var(--ease-bounce)}.nav-tab-active:before{transform:translate(-50%) scaleX(1)}.nav-tab-active{color:var(--primary-purple)}.nav-icon{font-size:22px;line-height:1;transition:transform .2s var(--ease-bounce)}.nav-tab-active .nav-icon{transform:scale(1.15)}.nav-tab:active .nav-icon{transform:scale(.9)}.nav-label{font-family:var(--font-body);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.3px}.nav-tab-active .nav-label{font-weight:var(--weight-bold)}@media(hover:none)and (pointer:coarse){.nav-tab:hover{color:var(--gray-400)}.nav-tab-active:hover{color:var(--primary-purple)}}.bottom-sheet-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;animation:fadeIn var(--duration-fast) var(--ease-smooth);display:flex;align-items:flex-end;justify-content:center}.bottom-sheet{width:100%;max-height:90vh;max-height:90dvh;background:#fff;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;box-shadow:var(--shadow-xl);animation:slideUp var(--duration-normal) var(--ease-bounce);display:flex;flex-direction:column;overflow:hidden;transition:transform var(--duration-fast) var(--ease-smooth)}.bottom-sheet-handle{width:36px;height:4px;background:var(--gray-300, #D1D5DB);border-radius:var(--radius-full);margin:var(--space-3) auto var(--space-2);flex-shrink:0}.bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4) var(--space-3);border-bottom:1px solid var(--gray-200);flex-shrink:0}.bottom-sheet-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.bottom-sheet-close{width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--gray-500);font-size:16px;transition:all var(--duration-fast) var(--ease-smooth);flex-shrink:0}.bottom-sheet-close:hover{background:var(--gray-100);color:var(--gray-700)}.bottom-sheet-close:active{transform:scale(.9)}.bottom-sheet-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-4);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px))}@media(min-width:768px){.bottom-sheet-overlay{align-items:center}.bottom-sheet{max-width:480px;max-height:80vh;border-radius:var(--radius-2xl);margin:var(--space-4)}.bottom-sheet-handle{display:none}}@media(prefers-reduced-motion:reduce){.bottom-sheet-overlay{animation:none}.bottom-sheet{animation:none;transition:none}}.qdm-content{position:relative}.qdm-header{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4)}.qdm-icon-wrap{width:64px;height:64px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:32px;flex-shrink:0}.qdm-active .qdm-icon-wrap{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.qdm-completed .qdm-icon-wrap{background:linear-gradient(135deg,#e8f5e9,#c8e6c9)}.qdm-locked .qdm-icon-wrap{background:var(--gray-100)}.qdm-title-area{flex:1;min-width:0}.qdm-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0 0 var(--space-2) 0;line-height:var(--leading-tight)}.qdm-completed .qdm-title{text-decoration:line-through;color:var(--gray-600)}.qdm-locked .qdm-title{color:var(--gray-500)}.qdm-badge{display:inline-block;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-bold);padding:4px 12px;border-radius:var(--radius-full)}.qdm-badge-active{background:linear-gradient(135deg,#ff9f43,#f5576c);color:#fff}.qdm-badge-completed{background:var(--success-green);color:#fff}.qdm-badge-locked{background:var(--gray-200);color:var(--gray-600)}.qdm-desc{font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-700);line-height:var(--leading-relaxed);margin:0 0 var(--space-4) 0}.qdm-locked .qdm-desc{color:var(--gray-500)}.qdm-locked-message{display:flex;align-items:center;gap:var(--space-3);background:linear-gradient(135deg,#fff8e1,#ffecb3);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);border:1px solid rgba(255,193,7,.3)}.qdm-locked-icon{font-size:28px}.qdm-locked-text{flex:1}.qdm-locked-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--gray-900);margin:0 0 2px}.qdm-locked-info{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);margin:0}.qdm-meta{margin-bottom:var(--space-4)}.qdm-type{display:inline-block;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);padding:4px 12px;border-radius:var(--radius-full)}.qdm-type-external{background:#667eea1a;color:var(--primary-purple)}.qdm-type-internal{background:#ff9f431a;color:var(--primary-orange)}.qdm-tip{display:flex;align-items:flex-start;gap:var(--space-2);background:var(--gray-50);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-4)}.qdm-tip-icon{font-size:18px;flex-shrink:0}.qdm-tip-text{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-700);line-height:var(--leading-normal);margin:0}.qdm-why-toggle{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--primary-purple);background:none;border:none;padding:0;cursor:pointer;margin-bottom:var(--space-3);transition:color var(--duration-fast) var(--ease-smooth)}.qdm-why-toggle:hover{color:var(--primary-orange)}.qdm-why-text{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);line-height:var(--leading-relaxed);margin:0 0 var(--space-4) 0;padding:var(--space-3);background:var(--gray-50);border-radius:var(--radius-md);border-left:3px solid var(--primary-purple);animation:fadeInUp .2s var(--ease-smooth)}.qdm-actions{margin-top:var(--space-4)}.qdm-actions-row{display:flex;gap:var(--space-3)}.qdm-btn{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);border:none;border-radius:var(--radius-lg);padding:var(--space-4) var(--space-6);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce);min-height:48px}.qdm-btn:active{transform:scale(.96)}.qdm-btn-done{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-primary);flex:1}.qdm-btn-done:hover{transform:translateY(-2px);box-shadow:0 8px 24px #667eea66}.qdm-btn-go{background:var(--gradient-warm);color:#fff;flex:1;box-shadow:var(--shadow-orange)}.qdm-btn-go:hover{transform:translateY(-2px)}.qdm-completed-banner{display:flex;align-items:center;gap:var(--space-3);background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:var(--radius-lg);padding:var(--space-4);margin-top:var(--space-4);border:1px solid rgba(76,175,80,.3)}.qdm-completed-icon{font-size:24px}.qdm-completed-banner p{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-800);margin:0}.qdm-completed-banner strong{color:var(--success-green)}.qdm-xp-popup{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--success-green);text-shadow:0 2px 8px rgba(76,175,80,.4);animation:xpBurst 1.5s var(--ease-out) forwards;pointer-events:none;z-index:10}@keyframes xpBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}40%{transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-80%) scale(.8)}}.qdm-just-completed{animation:questDone .6s var(--ease-bounce)}@keyframes questDone{0%{transform:scale(1)}30%{transform:scale(1.02)}60%{transform:scale(.98)}to{transform:scale(1)}}@media(max-width:374px){.qdm-icon-wrap{width:52px;height:52px;font-size:26px}.qdm-title{font-size:var(--text-lg)}}@media(prefers-reduced-motion:reduce){.qdm-xp-popup,.qdm-just-completed,.qdm-why-text{animation:none}.qdm-xp-popup{opacity:1}}@media(hover:none)and (pointer:coarse){.qdm-btn-done:hover,.qdm-btn-go:hover{transform:none}}.dashboard{min-height:100vh;background:var(--gray-50);padding:0 var(--space-4);padding-top:env(safe-area-inset-top,0)}.dash-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) 0 var(--space-3)}.dash-greeting h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.dash-streak{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--primary-orange);font-weight:var(--weight-semibold);margin-top:2px;display:flex;align-items:center;gap:4px}.dash-level-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-lg);background:var(--gradient-primary);box-shadow:var(--shadow-primary);flex-shrink:0}.level-number{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:#fff;line-height:1}.level-label{font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-bold);color:#fffc;letter-spacing:2px}.dash-xp-section{margin-bottom:var(--space-5)}.xp-bar-container{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.xp-bar-track{width:100%;height:12px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden;position:relative}.xp-bar-fill{height:100%;background:var(--xp-bar);border-radius:var(--radius-full);transition:width 1s var(--ease-bounce);position:relative;overflow:hidden;min-width:12px}.xp-bar-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:xp-shimmer 2s ease-in-out infinite}@keyframes xp-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.xp-bar-label{display:flex;justify-content:space-between;margin-top:var(--space-2)}.xp-current{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--gray-800)}.xp-next{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--gray-400)}.robbi-tip-section{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5);animation:fadeInUp var(--duration-slow) var(--ease-bounce)}.robbi-tip-avatar{flex-shrink:0;filter:drop-shadow(0 4px 8px rgba(102,126,234,.3))}.robbi-tip-bubble{flex:1;background:#fff;border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-sm);position:relative;border-left:3px solid var(--primary-purple);display:flex;align-items:center;gap:var(--space-3)}.robbi-tip-bubble p{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-800);line-height:var(--leading-normal);flex:1}.tip-dismiss{width:28px;height:28px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--gray-400);font-size:14px;transition:all var(--duration-fast) var(--ease-smooth);flex-shrink:0}.tip-dismiss:hover{background:var(--gray-100);color:var(--gray-600)}.dash-section{margin-bottom:var(--space-6)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.section-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--gray-900);margin:0 0 var(--space-3) 0}.section-header .section-title{margin-bottom:0}.section-link{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--primary-purple);text-decoration:none;transition:color var(--duration-fast) var(--ease-smooth)}.section-link:hover{color:var(--primary-orange)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.stat-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4) var(--space-3);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;animation:popIn var(--duration-slow) var(--ease-bounce) both}.stat-icon{font-size:24px;margin-bottom:4px}.stat-value{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);line-height:1}.stat-label{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-600);font-weight:var(--weight-medium)}.quest-list{display:flex;flex-direction:column;gap:var(--space-3)}.quest-card{display:flex;align-items:flex-start;gap:var(--space-3);background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-bounce);animation:fadeInUp var(--duration-slow) var(--ease-bounce) both;cursor:pointer}.quest-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.quest-card:focus{outline:2px solid var(--primary-purple);outline-offset:2px}.quest-card:active{transform:scale(.98)}.quest-icon-wrap{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.quest-active .quest-icon-wrap{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.quest-completed .quest-icon-wrap{background:linear-gradient(135deg,#e8f5e9,#c8e6c9)}.quest-locked .quest-icon-wrap{background:var(--gray-100);opacity:.6}.quest-info{flex:1;min-width:0}.quest-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:2px}.quest-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--gray-900);margin:0}.quest-completed .quest-title{text-decoration:line-through;color:var(--gray-600)}.quest-locked .quest-title{color:var(--gray-400)}.quest-badge{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);padding:2px 8px;border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0}.quest-badge-active{background:linear-gradient(135deg,#ff9f43,#f5576c);color:#fff}.quest-badge-completed{background:var(--success-green);color:#fff}.quest-badge-locked{background:var(--gray-200);color:var(--gray-600)}.quest-desc{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);margin:0;line-height:var(--leading-normal)}.quest-locked .quest-desc{color:var(--gray-400)}.quest-progress{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.quest-progress-track{flex:1;height:6px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden}.quest-progress-fill{height:100%;background:var(--gradient-warm);border-radius:var(--radius-full);transition:width .6s var(--ease-bounce)}.quest-completed .quest-progress-fill{background:var(--gradient-success)}.quest-progress-text{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--gray-600);font-weight:var(--weight-semibold);white-space:nowrap}.achievement-scroll{display:flex;gap:var(--space-3);overflow-x:auto;padding-bottom:var(--space-2);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.achievement-scroll::-webkit-scrollbar{display:none}.ach-badge{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);min-width:72px;scroll-snap-align:start;animation:popIn var(--duration-slow) var(--ease-bounce) both}.ach-icon-wrap{width:56px;height:56px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:24px;position:relative;transition:transform var(--duration-normal) var(--ease-bounce)}.ach-badge:active .ach-icon-wrap{transform:scale(.9)}.ach-bronze .ach-icon-wrap{background:linear-gradient(135deg,#cd7f32,#e8a862);box-shadow:0 4px 12px #cd7f324d}.ach-silver .ach-icon-wrap{background:linear-gradient(135deg,silver,#e8e8e8);box-shadow:0 4px 12px #c0c0c066}.ach-gold .ach-icon-wrap{background:linear-gradient(135deg,gold,#ffc107);box-shadow:0 4px 12px #ffd70066}.ach-unlocked .ach-icon-wrap{animation:ach-glow 3s ease-in-out infinite}.ach-locked .ach-icon-wrap{background:var(--gray-200);box-shadow:none;filter:grayscale(1);opacity:.5}.ach-title{font-family:var(--font-body);font-size:10px;font-weight:var(--weight-semibold);color:var(--gray-800);text-align:center;max-width:72px;line-height:1.2}.ach-locked .ach-title{color:var(--gray-400)}.job-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-bounce);animation:fadeInUp var(--duration-slow) var(--ease-bounce) both}.job-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--gray-900);margin:0;line-height:var(--leading-tight)}.job-company{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);margin:2px 0 0}.job-match{position:relative;flex-shrink:0}.match-ring{transform:rotate(-90deg)}.match-ring-bg{fill:none;stroke:var(--gray-200);stroke-width:3}.match-ring-fill{fill:none;stroke-width:3;stroke-linecap:round;stroke:url(#matchGradient);transition:stroke-dasharray 1s var(--ease-bounce)}.job-card:nth-child(1) .match-ring-fill{stroke:var(--success-green)}.job-card:nth-child(2) .match-ring-fill{stroke:var(--primary-orange)}.job-card:nth-child(3) .match-ring-fill{stroke:var(--primary-blue)}.match-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-bold);color:var(--gray-800)}.job-meta{display:flex;gap:var(--space-4);margin-bottom:var(--space-3)}.job-location,.job-salary{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);display:flex;align-items:center;gap:4px}.job-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.job-tag{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--primary-purple);background:#667eea14;padding:3px 10px;border-radius:var(--radius-full)}.job-footer{display:flex;align-items:center;justify-content:space-between}.job-posted{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-400)}.job-apply-btn{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#fff;background:var(--gradient-primary);border:none;border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce);box-shadow:var(--shadow-primary)}.job-apply-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #667eea66}.job-apply-btn:active{transform:scale(.96)}.jobs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6) var(--space-4);gap:var(--space-3)}.jobs-loading p{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);margin:0}.no-jobs-link{text-decoration:none}.no-jobs-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:linear-gradient(135deg,#f8f9ff,#fff);border:2px dashed var(--gray-200);border-radius:var(--radius-lg);transition:all var(--duration-normal) var(--ease-bounce)}.no-jobs-card:hover{border-color:var(--primary-purple);background:linear-gradient(135deg,#f3f4ff,#fff)}.no-jobs-card span{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--primary-purple)}.anon-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4);background:linear-gradient(135deg,#667eea,#8b5cf6,#a855f7);color:#fff;border-radius:var(--radius-xl);text-decoration:none;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.5px;box-shadow:0 8px 25px #667eea66,inset 0 1px #fff3;border:2px solid rgba(255,255,255,.15);transition:all .3s var(--ease-bounce);animation:banner-pulse 3s ease-in-out infinite;position:relative;overflow:hidden}.anon-banner:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);animation:banner-shimmer 3s ease-in-out infinite}@keyframes banner-pulse{0%,to{box-shadow:0 8px 25px #667eea66,inset 0 1px #fff3}50%{box-shadow:0 10px 30px #8b5cf680,inset 0 1px #fff3}}.anon-banner:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 12px 35px #667eea80,inset 0 1px #ffffff40}.anon-banner:active{transform:translateY(0) scale(.99)}.anon-banner span:first-child{display:flex;align-items:center;gap:var(--space-2);text-shadow:0 2px 4px rgba(0,0,0,.2);position:relative;z-index:1}.anon-banner span:last-child{font-size:var(--text-lg);font-weight:var(--weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.2);position:relative;z-index:1}.dash-start-quest-link{text-decoration:none;display:block}.dash-start-quest-card{display:flex;align-items:center;gap:var(--space-4);background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);border-left:3px solid var(--primary-purple);transition:all var(--duration-normal) var(--ease-bounce);animation:fadeInUp var(--duration-slow) var(--ease-bounce)}.dash-start-quest-card:active{transform:scale(.98)}.dash-spacer{height:calc(64px + var(--space-4) + env(safe-area-inset-bottom,0px))}@media(min-width:768px){.dashboard{max-width:var(--max-width-tablet);margin:0 auto;padding:0 var(--space-6)}.stats-grid{gap:var(--space-4)}.quest-list,.job-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}}@media(max-width:374px){.dash-greeting h1{font-size:var(--text-xl)}.stats-grid{gap:var(--space-2)}.stat-card{padding:var(--space-3) var(--space-2)}.stat-value{font-size:var(--text-xl)}}@media(prefers-reduced-motion:reduce){.quest-card,.stat-card,.ach-badge,.job-card,.robbi-tip-section,.anon-banner{animation:none!important}.xp-bar-shimmer,.anon-banner:before{animation:none}.ach-unlocked .ach-icon-wrap{animation:none}}@media(hover:none)and (pointer:coarse){.job-apply-btn:hover{transform:none;box-shadow:var(--shadow-primary)}.section-link:hover{color:var(--primary-purple)}}.search-page{min-height:100vh;background:var(--gray-50);padding:0 var(--space-4);padding-top:env(safe-area-inset-top,0);padding-bottom:calc(var(--bottom-nav-height) + var(--space-4))}.search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - var(--bottom-nav-height));gap:var(--space-4);padding:var(--space-8)}.loading-text{font-family:var(--font-display);font-size:var(--text-lg);color:var(--gray-600);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.search-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - var(--bottom-nav-height));gap:var(--space-4);padding:var(--space-8);text-align:center}.error-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.error-text{font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-600)}.retry-btn{background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-lg);padding:var(--space-3) var(--space-6);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce)}.retry-btn:active{transform:scale(.95)}.search-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) 0 var(--space-3)}.search-greeting h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.search-subtitle{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--primary-purple);font-weight:var(--weight-semibold);margin-top:2px}.search-icon-badge{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-lg);background:var(--gradient-primary);box-shadow:var(--shadow-primary);flex-shrink:0;font-size:24px}.search-form{padding:var(--space-4);background:#fff;box-shadow:var(--shadow-sm);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.search-inputs{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-3)}.search-input{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--gray-200);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-900);background:var(--gray-50);transition:all var(--duration-fast) var(--ease-smooth)}.search-input:focus{outline:none;border-color:var(--primary);background:#fff}.search-input::placeholder{color:var(--gray-400)}.search-btn{width:100%;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce)}.search-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-primary)}.search-btn:active{transform:scale(.98)}.job-list{display:flex;flex-direction:column;gap:var(--space-3)}.no-jobs{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8);text-align:center;color:var(--gray-600)}.job-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--duration-normal) var(--ease-bounce);animation:fadeInUp var(--duration-slow) var(--ease-bounce) both}.job-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.job-card:active{transform:scale(.98)}.job-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3)}.job-info{flex:1;min-width:0}.job-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--gray-900);margin:0;line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.job-company{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);margin:var(--space-1) 0 0}.job-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-3)}.job-location,.job-salary,.job-type{display:flex;align-items:center;gap:var(--space-1);font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600)}.meta-icon{font-size:var(--text-base)}.job-salary{color:var(--success-green);font-weight:var(--weight-medium)}.job-snippet{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);line-height:var(--leading-normal);margin:0 0 var(--space-3)}.job-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-3);border-top:1px solid var(--gray-200)}.job-updated{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-400)}.view-job-btn{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--primary);transition:color var(--duration-fast) var(--ease-smooth)}.job-card:hover .view-job-btn{color:var(--primary-orange)}.search-spacer{height:var(--space-4)}@media(min-width:768px){.search-page{max-width:var(--max-width-tablet);margin:0 auto;padding:0 var(--space-6)}.search-inputs{flex-direction:row}.search-btn{width:auto;padding:var(--space-3) var(--space-8)}.job-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}}@media(max-width:374px){.search-greeting h1{font-size:var(--text-xl)}}@media(prefers-reduced-motion:reduce){.job-card,.loading-text{animation:none!important}}.status-selector-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn var(--duration-fast) var(--ease-smooth)}.status-selector-modal{width:100%;max-width:360px;background:#fff;border-radius:var(--radius-xl);padding:var(--space-4);animation:scaleIn var(--duration-normal) var(--ease-bounce);max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow-y:auto;box-shadow:0 20px 60px #0000004d}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.status-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--gray-200)}.status-selector-header h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.status-selector-modal .close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border:none;border-radius:var(--radius-full);font-size:var(--text-base);color:var(--gray-600);cursor:pointer;transition:all var(--duration-fast) var(--ease-smooth)}.status-selector-modal .close-btn:hover{background:var(--gray-200);color:var(--gray-900)}.status-options,.reason-options{display:flex;flex-direction:column;gap:var(--space-2)}.status-option,.reason-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--gray-50);border:2px solid transparent;border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-900);cursor:pointer;transition:all var(--duration-fast) var(--ease-smooth);text-align:left}.status-option:hover,.reason-option:hover{background:var(--gray-100)}.status-option.selected,.reason-option.selected{background:var(--primary-light);border-color:var(--primary)}.option-icon{font-size:var(--text-xl);flex-shrink:0}.option-label{flex:1}.check-icon{color:var(--primary);font-weight:var(--weight-bold);font-size:var(--text-lg)}.back-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);margin-bottom:var(--space-2);background:transparent;border:none;font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);cursor:pointer;transition:color var(--duration-fast) var(--ease-smooth)}.back-btn:hover{color:var(--primary)}@media(prefers-reduced-motion:reduce){.status-selector-overlay,.status-selector-modal{animation:none!important}}.saved-job-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);animation:fadeInUp var(--duration-slow) var(--ease-bounce) both;position:relative}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.saved-job-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3)}.saved-job-titles{flex:1;min-width:0}.saved-job-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--gray-900);margin:0;line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.saved-job-company{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);margin:var(--space-1) 0 0}.saved-job-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0;position:relative}.status-badge{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:color-mix(in srgb,var(--status-color) 15%,white);border:1px solid color-mix(in srgb,var(--status-color) 30%,transparent);border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--status-color);cursor:pointer;transition:all var(--duration-fast) var(--ease-smooth)}.status-badge:hover{background:color-mix(in srgb,var(--status-color) 25%,white);transform:scale(1.02)}.status-icon{font-size:var(--text-sm)}.status-label{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-md);font-size:var(--text-lg);color:var(--gray-400);cursor:pointer;transition:all var(--duration-fast) var(--ease-smooth)}.menu-btn:hover{background:var(--gray-100);color:var(--gray-700)}.menu-dropdown{position:absolute;top:100%;right:0;z-index:10;min-width:140px;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--gray-200);padding:var(--space-1);animation:fadeIn var(--duration-fast) var(--ease-smooth)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menu-dropdown button{width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-700);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-smooth)}.menu-dropdown button:hover{background:var(--gray-100)}.menu-dropdown .menu-danger{color:var(--error-red)}.menu-dropdown .menu-danger:hover{background:#ef44441a}.saved-job-reason{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-500);margin-bottom:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--gray-100);border-radius:var(--radius-sm);display:inline-block}.saved-job-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-3)}.saved-job-location,.saved-job-salary{display:flex;align-items:center;gap:var(--space-1);font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600)}.saved-job-location .meta-icon{width:14px;height:14px;flex-shrink:0}.saved-job-salary{color:var(--success-green);font-weight:var(--weight-medium)}.saved-job-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-3);border-top:1px solid var(--gray-200)}.saved-job-time{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-400)}.view-btn{background:transparent;border:none;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--primary);cursor:pointer;transition:color var(--duration-fast) var(--ease-smooth);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.view-btn:hover{color:var(--primary-orange);background:var(--primary-light)}@media(prefers-reduced-motion:reduce){.saved-job-card,.menu-dropdown{animation:none!important}}.add-job-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#00000080;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn var(--duration-fast) var(--ease-smooth)}.add-job-modal{width:100%;max-width:420px;background:#fff;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-4);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,20px));animation:slideUp var(--duration-normal) var(--ease-bounce)}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.add-job-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.add-job-header h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.add-job-modal .close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border:none;border-radius:var(--radius-full);font-size:var(--text-base);color:var(--gray-600);cursor:pointer;transition:all var(--duration-fast) var(--ease-smooth)}.add-job-modal .close-btn:hover:not(:disabled){background:var(--gray-200);color:var(--gray-900)}.add-job-modal .close-btn:disabled{opacity:.5;cursor:not-allowed}.add-job-content{text-align:center}.add-job-robbi{margin-bottom:var(--space-3)}.add-job-description{font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-600);margin:0 0 var(--space-4)}.add-job-content form{display:flex;flex-direction:column;gap:var(--space-3)}.url-input{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-900);background:var(--gray-50);transition:all var(--duration-fast) var(--ease-smooth)}.url-input:focus{outline:none;border-color:var(--primary);background:#fff}.url-input:disabled{opacity:.6;cursor:not-allowed}.url-input::placeholder{color:var(--gray-400)}.error-message{font-family:var(--font-body);font-size:var(--text-sm);color:var(--error-red);margin:0;text-align:left}.submit-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce)}.submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-primary)}.submit-btn:active:not(:disabled){transform:scale(.98)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media(min-width:768px){.add-job-overlay{align-items:center}.add-job-modal{border-radius:var(--radius-xl)}}@media(prefers-reduced-motion:reduce){.add-job-overlay,.add-job-modal,.spinner{animation:none!important}}.jobs-page{min-height:100vh;background:var(--gray-50);padding:0 var(--space-4);padding-top:env(safe-area-inset-top,0);padding-bottom:calc(var(--bottom-nav-height) + var(--space-4))}.jobs-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) 0 var(--space-3)}.jobs-greeting h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.jobs-subtitle{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--primary-purple);font-weight:var(--weight-semibold);margin-top:2px}.add-job-btn{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-lg);background:var(--gradient-primary);box-shadow:var(--shadow-primary);border:none;cursor:pointer;font-size:28px;font-weight:var(--weight-bold);color:#fff;transition:all var(--duration-fast) var(--ease-bounce)}.add-job-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.add-job-btn:active{transform:scale(.95)}.jobs-filter-chips{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--space-1)}.jobs-filter-chips::-webkit-scrollbar{display:none}.filter-chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#fff;border:2px solid var(--gray-200);border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--gray-700);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce);white-space:nowrap;flex-shrink:0}.filter-chip:hover{border-color:var(--primary);transform:translateY(-1px)}.filter-chip:active{transform:scale(.95)}.filter-chip.active{background:var(--gradient-primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-primary)}.chip-icon{font-size:var(--text-base)}.chip-label{font-size:var(--text-sm)}.chip-count{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);padding:2px 6px;background:#0000001a;border-radius:var(--radius-full)}.filter-chip.active .chip-count{background:#ffffff40}.jobs-list{display:flex;flex-direction:column;gap:var(--space-3)}.no-jobs{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8);text-align:center}.no-jobs h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.no-jobs p{font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-600);margin:0;max-width:280px}.add-first-job-btn{margin-top:var(--space-2);background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-lg);padding:var(--space-3) var(--space-6);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce)}.add-first-job-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-primary)}.add-first-job-btn:active{transform:scale(.95)}.jobs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-12)}.jobs-loading .spinner{width:40px;height:40px;border:3px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.jobs-loading p{font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-600);margin:0}@keyframes spin{to{transform:rotate(360deg)}}.jobs-spacer{height:var(--space-4)}@media(min-width:768px){.jobs-page{max-width:var(--max-width-tablet);margin:0 auto;padding:0 var(--space-6)}.jobs-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}}@media(max-width:374px){.jobs-greeting h1{font-size:var(--text-xl)}.jobs-filters{flex-direction:column;gap:var(--space-2)}}@media(prefers-reduced-motion:reduce){.add-job-btn,.add-first-job-btn{transition:none!important}}.qi-card{display:flex;align-items:flex-start;gap:var(--space-3);background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-bounce);animation:fadeInUp var(--duration-slow) var(--ease-bounce) both;position:relative;overflow:hidden}.qi-card:active{transform:scale(.98)}.qi-completed{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-left:3px solid var(--success-green)}.qi-locked{opacity:.55;pointer-events:none}.qi-active{border-left:3px solid var(--primary-orange)}.qi-just-completed{animation:questComplete .6s var(--ease-bounce)!important;border-left-color:var(--success-green)!important;background:linear-gradient(135deg,#f0fdf4,#ecfdf5)!important}@keyframes questComplete{0%{transform:scale(1)}30%{transform:scale(1.03)}60%{transform:scale(.97)}to{transform:scale(1)}}.qi-icon-wrap{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.qi-active .qi-icon-wrap{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.qi-completed .qi-icon-wrap{background:linear-gradient(135deg,#e8f5e9,#c8e6c9)}.qi-locked .qi-icon-wrap{background:var(--gray-100)}.qi-content{flex:1;min-width:0}.qi-header{margin-bottom:var(--space-2)}.qi-title-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:2px}.qi-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--gray-900);margin:0}.qi-completed .qi-title{text-decoration:line-through;color:var(--gray-600)}.qi-locked .qi-title{color:var(--gray-400)}.qi-desc{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-600);margin:0;line-height:var(--leading-normal)}.qi-locked .qi-desc{color:var(--gray-400)}.qi-badge{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);padding:2px 8px;border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0}.qi-badge-active{background:linear-gradient(135deg,#ff9f43,#f5576c);color:#fff}.qi-badge-completed{background:var(--success-green);color:#fff}.qi-badge-locked{background:var(--gray-200);color:var(--gray-600)}.qi-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-2)}.qi-type{font-family:var(--font-body);font-size:11px;font-weight:var(--weight-medium);padding:2px 8px;border-radius:var(--radius-full)}.qi-type-external{background:#667eea1a;color:var(--primary-purple)}.qi-type-internal{background:#ff9f431a;color:var(--primary-orange)}.qi-tip-label{font-family:var(--font-body);font-size:11px;color:var(--gray-600);line-height:var(--leading-normal)}.qi-why-toggle{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--primary-purple);background:none;border:none;padding:0;cursor:pointer;margin-bottom:var(--space-2);transition:color var(--duration-fast) var(--ease-smooth)}.qi-why-toggle:hover{color:var(--primary-orange)}.qi-why-text{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-600);line-height:var(--leading-relaxed);margin:0 0 var(--space-2) 0;padding:var(--space-2) var(--space-3);background:var(--gray-50);border-radius:var(--radius-sm);border-left:2px solid var(--primary-purple);animation:fadeInUp .2s var(--ease-smooth)}.qi-actions{margin-top:var(--space-2)}.qi-actions-row{display:flex;gap:var(--space-2)}.qi-btn{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);border:none;border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce);min-height:40px}.qi-btn:active{transform:scale(.95)}.qi-btn-done{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-primary);width:100%}.qi-btn-done:hover{transform:translateY(-1px);box-shadow:0 6px 20px #667eea66}.qi-btn-go{background:var(--gradient-warm);color:#fff;flex:1;box-shadow:var(--shadow-orange)}.qi-btn-go:hover{transform:translateY(-1px)}.qi-btn-done-small{background:var(--gradient-primary);color:#fff;flex:1;box-shadow:var(--shadow-primary)}.qi-btn-done-small:hover{transform:translateY(-1px)}.qi-xp-popup{position:absolute;top:var(--space-3);right:var(--space-4);font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--success-green);animation:xpFloat 1.5s var(--ease-out) forwards;pointer-events:none}@keyframes xpFloat{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-20px) scale(1.2)}to{opacity:0;transform:translateY(-40px) scale(.8)}}@media(max-width:374px){.qi-icon-wrap{width:40px;height:40px;font-size:20px}.qi-title{font-size:var(--text-sm)}}@media(prefers-reduced-motion:reduce){.qi-card,.qi-just-completed{animation:none!important}.qi-xp-popup{animation:none;opacity:1}}@media(hover:none)and (pointer:coarse){.qi-btn-done:hover,.qi-btn-go:hover,.qi-btn-done-small:hover{transform:none}}.qb-container{padding-bottom:var(--space-4)}.qb-day-selector{display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-3) var(--space-4);margin:0 calc(-1 * var(--space-4));scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.qb-day-selector::-webkit-scrollbar{display:none}.qb-day-pill{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:48px;height:56px;border-radius:var(--radius-md);border:2px solid var(--gray-200);background:#fff;cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce);scroll-snap-align:center;flex-shrink:0;gap:2px;padding:var(--space-1) var(--space-2)}.qb-day-pill:active{transform:scale(.92)}.qb-day-num{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--gray-800);line-height:1}.qb-day-check{font-size:10px;color:var(--success-green);line-height:1}.qb-day-fraction{font-family:var(--font-mono);font-size:9px;color:var(--gray-500);line-height:1}.qb-day-pill-selected{border-color:var(--primary-purple);background:var(--gradient-primary);box-shadow:var(--shadow-primary)}.qb-day-pill-selected .qb-day-num{color:#fff}.qb-day-pill-selected .qb-day-check{color:#ffffffe6}.qb-day-pill-selected .qb-day-fraction{color:#fffc}.qb-day-pill-current:not(.qb-day-pill-selected){border-color:var(--primary-orange);background:#ff9f4314}.qb-day-pill-current:not(.qb-day-pill-selected) .qb-day-num{color:var(--primary-orange)}.qb-day-pill-past:not(.qb-day-pill-selected){background:var(--gray-50)}.qb-day-pill-done:not(.qb-day-pill-selected){border-color:var(--success-green);background:#4caf5014}.qb-day-pill-done:not(.qb-day-pill-selected) .qb-day-num{color:var(--success-green)}.qb-day-pill-future:not(.qb-day-pill-selected){opacity:.5}.qb-day-header{margin-bottom:var(--space-4)}.qb-robbi-msg{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);animation:fadeInUp var(--duration-slow) var(--ease-bounce)}.qb-robbi-avatar{flex-shrink:0;filter:drop-shadow(0 4px 8px rgba(102,126,234,.3))}.qb-msg-bubble{flex:1;background:#fff;border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-sm);border-left:3px solid var(--primary-purple)}.qb-msg-bubble p{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-800);line-height:var(--leading-normal);margin:0}.qb-day-info{margin-bottom:var(--space-2)}.qb-day-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0 0 var(--space-3) 0}.qb-day-progress{background:#fff;border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-sm)}.qb-progress-track{width:100%;height:8px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden;position:relative}.qb-progress-fill{height:100%;background:var(--xp-bar);border-radius:var(--radius-full);transition:width .6s var(--ease-bounce);position:relative;overflow:hidden;min-width:0}.qb-progress-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:xp-shimmer 2s ease-in-out infinite}.qb-progress-text{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--gray-600);font-weight:var(--weight-semibold);margin-top:var(--space-2);display:block}.qb-quest-list{display:flex;flex-direction:column;gap:var(--space-3)}@media(min-width:768px){.qb-day-selector{justify-content:center;gap:var(--space-3)}.qb-day-pill{min-width:56px;height:64px}.qb-day-title{font-size:var(--text-2xl)}}@media(max-width:374px){.qb-day-pill{min-width:42px;height:50px}.qb-day-num{font-size:var(--text-sm)}.qb-day-title{font-size:var(--text-lg)}}@media(prefers-reduced-motion:reduce){.qb-robbi-msg,.qb-progress-shimmer{animation:none}.qb-progress-fill{transition:none}}.ps-container{padding:var(--space-5) 0;animation:fadeInUp var(--duration-slow) var(--ease-bounce)}.ps-hero{text-align:center;margin-bottom:var(--space-8)}.ps-robbi{margin-bottom:var(--space-4);filter:drop-shadow(0 8px 24px rgba(102,126,234,.3));animation:float 3s ease-in-out infinite}.ps-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0 0 var(--space-2) 0;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ps-subtitle{font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-600);margin:0;line-height:var(--leading-normal)}.ps-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-bottom:var(--space-8)}.ps-stat{background:#fff;border-radius:var(--radius-lg);padding:var(--space-5) var(--space-3);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-1);animation:popIn var(--duration-slow) var(--ease-bounce) both}.ps-stat:nth-child(1){animation-delay:.1s}.ps-stat:nth-child(2){animation-delay:.2s}.ps-stat:nth-child(3){animation-delay:.3s}.ps-stat-value{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);line-height:1}.ps-stat-label{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-600);font-weight:var(--weight-medium)}.ps-days-section{margin-bottom:var(--space-8)}.ps-section-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--gray-900);margin:0 0 var(--space-4) 0}.ps-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-2)}.ps-day-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border-radius:var(--radius-md);gap:2px;animation:popIn var(--duration-slow) var(--ease-bounce) both}.ps-day-badge:nth-child(1){animation-delay:.05s}.ps-day-badge:nth-child(2){animation-delay:.1s}.ps-day-badge:nth-child(3){animation-delay:.15s}.ps-day-badge:nth-child(4){animation-delay:.2s}.ps-day-badge:nth-child(5){animation-delay:.25s}.ps-day-badge:nth-child(6){animation-delay:.3s}.ps-day-badge:nth-child(7){animation-delay:.35s}.ps-day-badge:nth-child(8){animation-delay:.4s}.ps-day-badge:nth-child(9){animation-delay:.45s}.ps-day-badge:nth-child(10){animation-delay:.5s}.ps-day-badge:nth-child(11){animation-delay:.55s}.ps-day-badge:nth-child(12){animation-delay:.6s}.ps-day-badge:nth-child(13){animation-delay:.65s}.ps-day-badge:nth-child(14){animation-delay:.7s}.ps-day-complete{background:linear-gradient(135deg,#43e97b,#38f9d7);box-shadow:0 4px 12px #4caf504d}.ps-day-partial{background:linear-gradient(135deg,#ff9f43,#f5576c);box-shadow:0 4px 12px #ff9f434d}.ps-day-missed{background:var(--gray-200)}.ps-day-num{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-bold);color:#fff;line-height:1}.ps-day-missed .ps-day-num{color:var(--gray-500)}.ps-day-icon{font-size:10px;font-family:var(--font-mono);color:#ffffffe6;line-height:1}.ps-day-missed .ps-day-icon{color:var(--gray-400)}.ps-xp-section{margin-bottom:var(--space-4)}.ps-xp-bar-container{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.ps-xp-bar-track{width:100%;height:12px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden;position:relative}.ps-xp-bar-fill{height:100%;background:var(--gradient-gold);border-radius:var(--radius-full);transition:width 1.5s var(--ease-bounce);position:relative;overflow:hidden}.ps-xp-bar-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%);animation:xp-shimmer 2s ease-in-out infinite}.ps-xp-bar-label{display:flex;justify-content:space-between;margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.ps-xp-bar-label span:first-child{color:var(--gray-800)}.ps-xp-bar-label span:last-child{color:var(--gray-400)}@media(max-width:374px){.ps-title{font-size:var(--text-2xl)}.ps-stats{gap:var(--space-2)}.ps-stat{padding:var(--space-4) var(--space-2)}.ps-stat-value{font-size:var(--text-xl)}.ps-days-grid{gap:var(--space-1)}}@media(prefers-reduced-motion:reduce){.ps-container,.ps-stat,.ps-day-badge{animation:none!important}.ps-robbi,.ps-xp-bar-shimmer{animation:none}.ps-xp-bar-fill{transition:none}}.quests-page{min-height:100vh;background:var(--gray-50)}.qp-content{padding:0 var(--space-4);padding-top:env(safe-area-inset-top,0)}.qp-spacer{height:calc(64px + var(--space-4) + env(safe-area-inset-bottom,0px))}.qp-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) 0 var(--space-3)}.qp-page-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.qp-day-badge{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);color:#fff;background:var(--gradient-warm);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}.qp-start-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 64px);padding:var(--space-8) var(--space-4);text-align:center;animation:fadeInUp var(--duration-slow) var(--ease-bounce)}.qp-start-robbi{margin-bottom:var(--space-5);filter:drop-shadow(0 8px 24px rgba(102,126,234,.3));animation:float 3s ease-in-out infinite}.qp-start-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);margin:0 0 var(--space-3) 0;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.qp-start-text{font-family:var(--font-body);font-size:var(--text-base);color:var(--gray-600);line-height:var(--leading-relaxed);margin:0 0 var(--space-6) 0;max-width:340px}.qp-start-features{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-8);width:100%;max-width:320px}.qp-feature{display:flex;align-items:center;gap:var(--space-3);background:#fff;border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-sm);animation:fadeInUp var(--duration-slow) var(--ease-bounce) both}.qp-feature:nth-child(1){animation-delay:.1s}.qp-feature:nth-child(2){animation-delay:.2s}.qp-feature:nth-child(3){animation-delay:.3s}.qp-feature:nth-child(4){animation-delay:.4s}.qp-feature-icon{font-size:24px;flex-shrink:0}.qp-feature-text{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-800);font-weight:var(--weight-medium);text-align:left}.qp-start-btn{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:#fff;background:var(--gradient-primary);border:none;border-radius:var(--radius-xl);padding:var(--space-4) var(--space-8);cursor:pointer;box-shadow:var(--shadow-primary);transition:all var(--duration-fast) var(--ease-bounce);min-width:240px;min-height:56px;animation:popIn var(--duration-slower) var(--ease-bounce) .5s both}.qp-start-btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px #667eea66}.qp-start-btn:active{transform:scale(.96)}@media(min-width:768px){.qp-content{max-width:var(--max-width-tablet);margin:0 auto;padding:0 var(--space-6)}.qp-start-title{font-size:var(--text-4xl)}}@media(max-width:374px){.qp-start-title{font-size:var(--text-2xl)}.qp-page-title{font-size:var(--text-xl)}}@media(prefers-reduced-motion:reduce){.qp-start-screen,.qp-feature,.qp-start-btn{animation:none!important}.qp-start-robbi{animation:none}}@media(hover:none)and (pointer:coarse){.qp-start-btn:hover{transform:none;box-shadow:var(--shadow-primary)}}.profile-page{min-height:100vh;background:var(--gray-50);padding:0 var(--space-4);padding-top:env(safe-area-inset-top,0)}.pp-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) 0 var(--space-3)}.pp-header-left{display:flex;align-items:center;gap:var(--space-3)}.pp-header-info{display:flex;flex-direction:column;gap:2px}.pp-name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--gray-900);margin:0}.pp-streak{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--primary-orange);font-weight:var(--weight-semibold);margin:0;display:flex;align-items:center;gap:4px}.streak-fire{font-size:16px}.pp-level-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-lg);background:var(--gradient-primary);box-shadow:var(--shadow-primary);flex-shrink:0}.pp-level-badge .level-number{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:#fff;line-height:1}.pp-level-badge .level-label{font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-bold);color:#fffc;letter-spacing:2px}.pp-achievements-top{margin-bottom:var(--space-5);background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.pp-achievements-top .pp-section-header{margin-bottom:var(--space-3)}.pp-achievements-top .pp-section-title{margin-bottom:0}.pp-content{padding-bottom:var(--space-4)}.pp-spacer{height:calc(64px + var(--space-4) + env(safe-area-inset-bottom,0px))}.pp-upgrade-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4);background:linear-gradient(135deg,#667eea,#8b5cf6,#a855f7);color:#fff;border-radius:var(--radius-xl);border:2px solid rgba(255,255,255,.15);font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.5px;box-shadow:0 8px 25px #667eea66,inset 0 1px #fff3;transition:all .3s var(--ease-bounce);cursor:pointer;position:relative;overflow:hidden}.pp-upgrade-banner:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);animation:banner-shimmer 3s ease-in-out infinite}@keyframes banner-shimmer{0%{left:-100%}50%,to{left:100%}}.pp-upgrade-banner:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 12px 35px #667eea80,inset 0 1px #ffffff40}.pp-upgrade-banner:active{transform:translateY(0) scale(.99)}.banner-icon,.banner-text,.banner-arrow{position:relative;z-index:1;text-shadow:0 2px 4px rgba(0,0,0,.2)}.banner-arrow{font-size:var(--text-lg);font-weight:var(--weight-bold)}.pp-section{margin-bottom:var(--space-6)}.pp-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.pp-section-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--gray-900);margin:0 0 var(--space-3) 0}.pp-section-header .pp-section-title{margin-bottom:0}.pp-section-count{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--primary-purple)}.pp-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.pp-stat-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4) var(--space-3);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;animation:popIn var(--duration-slow) var(--ease-bounce) both}.pp-stat-icon{font-size:24px;margin-bottom:4px}.pp-stat-value{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--gray-900);line-height:1}.pp-stat-label{font-family:var(--font-body);font-size:var(--text-xs);color:var(--gray-600);font-weight:var(--weight-medium)}.pp-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.pp-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);border-bottom:1px solid var(--gray-100)}.pp-row:last-child{border-bottom:none}.pp-row-label{font-family:var(--font-body);font-size:var(--text-sm);color:var(--gray-500)}.pp-row-value{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--gray-900)}.pp-row-right{display:flex;align-items:center;gap:var(--space-2)}.pp-row-edit{font-size:14px;color:var(--gray-400);transition:color var(--duration-fast) var(--ease-smooth)}.pp-row-editable{cursor:pointer;transition:background var(--duration-fast) var(--ease-smooth)}.pp-row-editable:hover{background:var(--gray-50)}.pp-row-editable:hover .pp-row-edit{color:var(--primary-purple)}.pp-row-editable:active{background:var(--gray-100)}.pp-badge{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}.pp-badge-success{background:#4caf501f;color:var(--success-green)}.pp-badge-warning{background:#ff9f431f;color:var(--primary-orange)}.pp-achievement-scroll{display:flex;gap:var(--space-3);overflow-x:auto;padding-bottom:var(--space-2);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.pp-achievement-scroll::-webkit-scrollbar{display:none}.pp-ach-badge{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);min-width:72px;scroll-snap-align:start;animation:popIn var(--duration-slow) var(--ease-bounce) both}.pp-ach-icon-wrap{width:56px;height:56px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:24px;position:relative;transition:transform var(--duration-normal) var(--ease-bounce)}.pp-ach-badge:active .pp-ach-icon-wrap{transform:scale(.9)}.pp-ach-bronze .pp-ach-icon-wrap{background:linear-gradient(135deg,#cd7f32,#e8a862);box-shadow:0 4px 12px #cd7f324d}.pp-ach-silver .pp-ach-icon-wrap{background:linear-gradient(135deg,silver,#e8e8e8);box-shadow:0 4px 12px #c0c0c066}.pp-ach-gold .pp-ach-icon-wrap{background:linear-gradient(135deg,gold,#ffc107);box-shadow:0 4px 12px #ffd70066}.pp-ach-unlocked .pp-ach-icon-wrap{animation:ach-glow 3s ease-in-out infinite}@keyframes ach-glow{0%,to{box-shadow:0 4px 12px #ff9f434d}50%{box-shadow:0 4px 20px #ff9f4380}}.pp-ach-locked .pp-ach-icon-wrap{background:var(--gray-200);box-shadow:none;filter:grayscale(1);opacity:.5}.pp-ach-title{font-family:var(--font-body);font-size:10px;font-weight:var(--weight-semibold);color:var(--gray-800);text-align:center;max-width:72px;line-height:1.2}.pp-ach-locked .pp-ach-title{color:var(--gray-400)}.pp-btn{width:100%;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-bold);cursor:pointer;border:3px solid transparent;transition:all .3s var(--ease-bounce);-webkit-tap-highlight-color:transparent;text-transform:uppercase;letter-spacing:1px}.pp-btn-primary{background:linear-gradient(135deg,var(--primary-purple) 0%,#8b5cf6 100%);color:#fff;border-color:var(--primary-purple);box-shadow:0 6px 20px #667eea59,inset 0 1px #fff3;text-shadow:0 1px 2px rgba(0,0,0,.2)}.pp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea73,inset 0 1px #fff3}.pp-btn-primary:active{transform:translateY(0) scale(.98)}.pp-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 4px 12px #667eea33}.pp-btn-secondary{background:#fff;color:var(--gray-700);border-color:var(--gray-200);box-shadow:var(--shadow-sm)}.pp-btn-secondary:hover{border-color:var(--gray-400);background:var(--gray-50)}.pp-btn-danger{background:#fff;color:var(--error);border:2px solid var(--error);box-shadow:0 4px 12px #ef444426}.pp-btn-danger:hover{background:var(--error);color:#fff;box-shadow:0 6px 20px #ef444459;transform:translateY(-2px)}.pp-link-form{display:flex;flex-direction:column;gap:var(--space-3);background:#fff;padding:var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:2px solid var(--primary-light)}.pp-input,.pp-edit-input{width:100%;padding:var(--space-4);border:2px solid var(--gray-200);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);background:var(--gray-50);color:var(--gray-900);outline:none;transition:all .2s var(--ease-smooth)}.pp-input::placeholder,.pp-edit-input::placeholder{color:var(--gray-400)}.pp-input:focus,.pp-edit-input:focus{border-color:var(--primary-purple);background:#fff;box-shadow:0 0 0 4px var(--primary-light),0 4px 12px #667eea26}.pp-error,.pp-edit-error{font-family:var(--font-body);font-size:var(--text-sm);color:var(--error);text-align:center;background:#ef444414;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(239,68,68,.2);margin:0}.pp-link-actions{display:flex;gap:var(--space-3);margin-top:var(--space-2)}.pp-link-actions .pp-btn{flex:1}.pp-edit-content{display:flex;flex-direction:column;gap:var(--space-4)}.pp-edit-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.pp-edit-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--gray-100);border:2px solid transparent;border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--gray-700);cursor:pointer;transition:all var(--duration-fast) var(--ease-bounce);flex:1 1 calc(50% - var(--space-1));min-width:120px}.pp-edit-option:hover{background:var(--gray-200)}.pp-edit-option.active{background:linear-gradient(135deg,#667eea1a,#8b5cf61a);border-color:var(--primary-purple);color:var(--primary-purple)}.pp-edit-option .check{font-size:14px;font-weight:var(--weight-bold);color:var(--primary-purple)}.pp-edit-save{margin-top:var(--space-2)}@keyframes popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media(min-width:768px){.profile-page{max-width:var(--max-width-tablet);margin:0 auto;padding:0 var(--space-6)}.pp-stats-grid{grid-template-columns:repeat(4,1fr)}.pp-edit-option{flex:0 1 auto;min-width:auto}}@media(max-width:374px){.pp-name{font-size:var(--text-lg)}.pp-stats-grid{gap:var(--space-2)}.pp-stat-card{padding:var(--space-3) var(--space-2)}.pp-stat-value{font-size:var(--text-xl)}}@media(prefers-reduced-motion:reduce){.pp-stat-card,.pp-ach-badge,.pp-upgrade-banner{animation:none!important}.pp-xp-shimmer,.pp-upgrade-banner:before{animation:none}.pp-ach-unlocked .pp-ach-icon-wrap{animation:none}}@media(hover:none)and (pointer:coarse){.pp-btn-primary:hover,.pp-btn-danger:hover{transform:none}.pp-row-editable:hover{background:transparent}.pp-row-editable:hover .pp-row-edit{color:var(--gray-400)}}:root{--primary: #667eea;--primary-blue: #4A90E2;--primary-orange: #FF9F43;--primary-purple: #667eea;--primary-light: rgba(102, 126, 234, .12);--success-green: #4CAF50;--warning-yellow: #FFC107;--error-red: #FF6B6B;--error: #ef4444;--gray-50: #F8F9FA;--gray-100: #F5F7FA;--gray-200: #E8ECF1;--gray-400: #BDC3C7;--gray-600: #7F8C8D;--gray-800: #2C3E50;--gray-900: #1A252F;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-warm: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-cool: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-success: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);--gradient-gold: linear-gradient(135deg, #F7971E 0%, #FFD200 100%);--quest-active: #FF9F43;--quest-completed: #4CAF50;--quest-locked: #BDC3C7;--achievement-bronze: #CD7F32;--achievement-silver: #C0C0C0;--achievement-gold: #FFD700;--xp-bar: linear-gradient(90deg, #FF9F43, #F5576C);--font-display: "Fredoka", sans-serif;--font-body: "DM Sans", sans-serif;--font-mono: "JetBrains Mono", monospace;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 28px;--text-4xl: 32px;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.7;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .16);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .2);--shadow-primary: 0 8px 24px rgba(74, 144, 226, .3);--shadow-orange: 0 8px 24px rgba(255, 159, 67, .3);--shadow-success: 0 8px 24px rgba(76, 175, 80, .3);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-spring: cubic-bezier(.5, 1.5, .5, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--duration-slower: .8s;--header-height: 64px;--bottom-nav-height: 64px;--container-padding: var(--space-4);--max-width-mobile: 100%;--max-width-tablet: 768px;--max-width-desktop: 1200px}@media(min-width:768px){:root{--text-sm: 15px;--text-base: 17px;--text-xl: 22px;--text-2xl: 28px;--text-3xl: 36px;--container-padding: var(--space-6)}}@media(min-width:1024px){:root{--text-3xl: 42px;--text-4xl: 48px;--container-padding: var(--space-8)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}@keyframes heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(.9)}20%,40%{transform:scale(1.1)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes bounce{0%,to{transform:translateY(0);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(-25%);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes floatSlow{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes shine{0%{transform:translate(-100%) skew(-15deg)}to{transform:translate(200%) skew(-15deg)}}@keyframes glow{0%,to{box-shadow:0 0 10px #ff9f4380}50%{box-shadow:0 0 20px #ff9f43cc}}@keyframes progressFill{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}@keyframes slideProgress{0%{background-position:0% 0%}to{background-position:200% 0%}}@keyframes particleBurst{0%{transform:translate(0) scale(0);opacity:1}50%{opacity:1}to{transform:translate(var(--particle-x, 0),var(--particle-y, -100px)) scale(0);opacity:0}}@keyframes confetti{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--confetti-x, 0),var(--confetti-y, 100vh)) rotate(360deg);opacity:0}}@keyframes starBurst{0%{transform:scale(0) rotate(0);opacity:1}50%{opacity:1}to{transform:scale(3) rotate(180deg);opacity:0}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes gradientFloat{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(5deg)}66%{transform:translate(-20px,20px) rotate(-5deg)}}.animate-fadeIn{animation:fadeIn var(--duration-normal) var(--ease-smooth)}.animate-fadeInUp{animation:fadeInUp var(--duration-slow) var(--ease-bounce)}.animate-bounceIn{animation:bounceIn var(--duration-slow) var(--ease-bounce)}.animate-popIn{animation:popIn var(--duration-normal) var(--ease-bounce)}.animate-pulse{animation:pulse 2s var(--ease-smooth) infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-shake{animation:shake .5s var(--ease-smooth)}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.transition-smooth{transition:all var(--duration-normal) var(--ease-smooth)}.transition-bounce{transition:all var(--duration-normal) var(--ease-bounce)}.transition-fast{transition:all var(--duration-fast) var(--ease-smooth)}.transition-slow{transition:all var(--duration-slow) var(--ease-smooth)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.flex-1{flex:1}.flex-auto{flex:auto}.flex-none{flex:none}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.m-0{margin:0}.m-auto{margin:auto}.m-2{margin:var(--space-2)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}.font-mono{font-family:var(--font-mono)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-4xl{font-size:var(--text-4xl)}.font-normal{font-weight:var(--weight-normal)}.font-medium{font-weight:var(--weight-medium)}.font-semibold{font-weight:var(--weight-semibold)}.font-bold{font-weight:var(--weight-bold)}.leading-tight{line-height:var(--leading-tight)}.leading-normal{line-height:var(--leading-normal)}.leading-relaxed{line-height:var(--leading-relaxed)}.text-primary{color:var(--primary-blue)}.text-orange{color:var(--primary-orange)}.text-success{color:var(--success-green)}.text-error{color:var(--error-red)}.text-gray-600{color:var(--gray-600)}.text-gray-800{color:var(--gray-800)}.text-gray-900{color:var(--gray-900)}.text-white{color:#fff}.bg-white{background-color:#fff}.bg-gray-50{background-color:var(--gray-50)}.bg-gray-100{background-color:var(--gray-100)}.bg-primary{background-color:var(--primary-blue)}.bg-orange{background-color:var(--primary-orange)}.bg-success{background-color:var(--success-green)}.bg-gradient-primary{background:var(--gradient-primary)}.bg-gradient-warm{background:var(--gradient-warm)}.bg-gradient-cool{background:var(--gradient-cool)}.bg-gradient-success{background:var(--gradient-success)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-none{box-shadow:none}.shadow-primary{box-shadow:var(--shadow-primary)}.shadow-orange{box-shadow:var(--shadow-orange)}.shadow-success{box-shadow:var(--shadow-success)}.w-full{width:100%}.h-full{height:100%}.w-auto{width:auto}.h-auto{height:auto}.max-w-full{max-width:100%}.min-h-screen{min-height:100vh}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-100{z-index:100}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.touch-none{touch-action:none}.touch-pan-x{touch-action:pan-x}.touch-pan-y{touch-action:pan-y}.select-none{-webkit-user-select:none;user-select:none}.tap-highlight-transparent{-webkit-tap-highlight-color:transparent}.pulse-glow{animation:pulse 2s ease-in-out infinite;box-shadow:0 0 20px currentColor}.shimmer-effect{position:relative;overflow:hidden}.shimmer-effect:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}.glass-effect{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.card-hover{transition:all var(--duration-normal) var(--ease-bounce)}.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card-hover:active{transform:translateY(-2px)}.safe-top{padding-top:env(safe-area-inset-top)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-left{padding-left:env(safe-area-inset-left)}.safe-right{padding-right:env(safe-area-inset-right)}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}@media(min-width:768px){.container{max-width:var(--max-width-tablet)}}@media(min-width:1024px){.container{max-width:var(--max-width-desktop)}}@media(min-width:768px){.tablet\:flex{display:flex}.tablet\:hidden{display:none}.tablet\:grid-cols-2{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.desktop\:flex{display:flex}.desktop\:hidden{display:none}.desktop\:grid-cols-3{grid-template-columns:repeat(3,1fr)}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;font-size:16px}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--gray-900);background:var(--gray-50);overflow-x:hidden}body{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}input,select,textarea{font-size:16px}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-bold);line-height:var(--leading-tight);margin:0}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin:0;line-height:var(--leading-normal)}a{color:var(--primary-blue);text-decoration:none;transition:color var(--duration-fast) var(--ease-smooth)}a:hover{color:var(--primary-orange)}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button{border:none;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.6}input,textarea,select{width:100%;outline:none;border:2px solid var(--gray-200);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:#fff;transition:all var(--duration-fast) var(--ease-smooth)}input:focus,textarea:focus,select:focus{border-color:var(--primary-blue);box-shadow:var(--shadow-primary)}input::placeholder,textarea::placeholder{color:var(--gray-400)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}img,svg,video{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--primary-blue)}::selection{background:var(--primary-orange);color:#fff}::-moz-selection{background:var(--primary-orange);color:#fff}:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}#root{min-height:100vh;display:flex;flex-direction:column}@supports (padding: env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}@media(max-width:767px){body{-webkit-text-size-adjust:none;text-size-adjust:none}}@media(hover:none)and (pointer:coarse){.card-hover:hover{transform:none}}@supports (-webkit-overflow-scrolling: touch){*{-webkit-overflow-scrolling:touch}}@media print{*,*:before,*:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}img{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}
