@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700;800&family=Figtree:wght@300;400;500;600;700;800&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}:root{--bg:#07070f;--bg-2:#0d0d1a;--purple:#a855f7;--purple-dim:#a855f71f;--purple-glow:#a855f759;--fuchsia:#d946ef;--gradient:linear-gradient(135deg, #a855f7 0%, #d946ef 100%);--gradient-text:linear-gradient(135deg, #c084fc 0%, #f0abfc 100%);--glass:#ffffff0a;--glass-hover:#ffffff12;--border:#ffffff12;--border-glow:#a855f780;--text:#f8f8ff;--text-muted:#6b6b8a;--text-dim:#9898b8;--card-bg:#0d0d1acc}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Figtree,-apple-system,sans-serif}body:before{content:"";pointer-events:none;z-index:0;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");position:fixed;inset:0}.orb{filter:blur(100px);pointer-events:none;z-index:0;border-radius:50%;position:fixed}.orb-1{background:#a855f71f;width:500px;height:500px;top:-100px;right:-100px}.orb-2{background:#d946ef14;width:400px;height:400px;bottom:200px;left:-150px}.serif{font-family:Playfair Display,Georgia,serif}.gradient-text{background:var(--gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#a855f74d;border-radius:2px}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px) blur(4px)}to{opacity:1;transform:translateY(0) blur(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px var(--purple-glow)}50%{box-shadow:0 0 40px var(--purple-glow), 0 0 60px #d946ef33}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.anim-fadeUp{animation:.5s cubic-bezier(.16,1,.3,1) forwards fadeUp}.anim-scaleIn{animation:.4s cubic-bezier(.16,1,.3,1) forwards scaleIn}.anim-delay-1{opacity:0;animation-delay:.1s}.anim-delay-2{opacity:0;animation-delay:.2s}.anim-delay-3{opacity:0;animation-delay:.3s}.glass-card{background:var(--glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:16px;transition:border-color .2s,background .2s,transform .2s}.glass-card:hover{background:var(--glass-hover);border-color:#a855f740}.answer-card{border:1px solid var(--border);background:var(--glass);cursor:pointer;text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;align-items:center;gap:14px;width:100%;padding:16px 20px;transition:all .18s;display:flex}.answer-card:hover{background:var(--glass-hover);border-color:#a855f759;transform:translate(2px)}.answer-card.selected{border-color:var(--purple);background:var(--purple-dim);box-shadow:0 0 20px #a855f726}.answer-num{width:32px;height:32px;color:var(--text-muted);background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-family:Figtree,sans-serif;font-size:12px;font-weight:700;transition:all .18s;display:flex}.answer-card.selected .answer-num{background:var(--gradient);color:#fff}.area-tile{border:1px solid var(--border);background:var(--glass);cursor:pointer;text-align:center;color:var(--text-dim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;padding:14px 16px;font-family:Figtree,sans-serif;font-size:14px;font-weight:500;transition:all .18s}.area-tile:hover{color:var(--text);background:var(--glass-hover);border-color:#a855f759}.area-tile.selected{border-color:var(--purple);background:var(--purple-dim);color:#c084fc;box-shadow:0 0 16px #a855f733}.progress-seg{background:#ffffff0f;border-radius:1px;flex:1;height:2px;overflow:hidden}.progress-seg-fill{background:var(--gradient);border-radius:1px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.q-badge{background:var(--purple-dim);color:#c084fc;white-space:nowrap;letter-spacing:.02em;border:1px solid #a855f74d;border-radius:999px;flex-shrink:0;align-items:center;padding:2px 10px;font-family:Figtree,sans-serif;font-size:11px;font-weight:700;line-height:1.7;display:inline-flex}.btn-primary{background:var(--gradient);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;align-items:center;gap:8px;padding:14px 32px;font-family:Figtree,sans-serif;font-size:15px;font-weight:700;transition:all .2s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 24px #a855f74d}.btn-primary:before{content:"";opacity:0;background:linear-gradient(135deg,#ffffff26 0%,#0000 60%);transition:opacity .2s;position:absolute;inset:0}.btn-primary:hover:before{opacity:1}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 32px #a855f773}.btn-primary:disabled{opacity:.35;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{color:var(--text-muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:8px;padding:14px 24px;font-family:Figtree,sans-serif;font-size:15px;font-weight:500;transition:all .18s;display:inline-flex}.btn-secondary:hover{color:var(--text);border-color:#a855f74d}.form-input{background:var(--glass);border:1px solid var(--border);width:100%;color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;outline:none;padding:12px 16px;font-family:Figtree,sans-serif;font-size:15px;transition:border-color .18s,box-shadow .18s}.form-input:focus{border-color:#a855f780;box-shadow:0 0 0 3px #a855f71a}.form-input::placeholder{color:var(--text-muted)}.form-select{background:var(--glass);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;-webkit-appearance:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;outline:none;padding:12px 16px;font-family:Figtree,sans-serif;font-size:15px;transition:border-color .18s,box-shadow .18s}.form-select:focus{border-color:#a855f780;box-shadow:0 0 0 3px #a855f71a}.form-select option{background:#0d0d1a}.cat-bar-track{background:#ffffff0d;border-radius:3px;height:5px;overflow:hidden}.cat-bar-fill{background:var(--gradient);border-radius:3px;height:100%;transition:width 1.4s cubic-bezier(.4,0,.2,1)}.spinner{border:2px solid #a855f733;border-top-color:var(--purple);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:inline-block}.shimmer{background:linear-gradient(90deg,#ffffff08 25%,#a855f714 50%,#ffffff08 75%) 0 0/200%;border-radius:8px;animation:1.5s linear infinite shimmer}.score-ring-circle{transition:stroke-dashoffset 1.8s cubic-bezier(.4,0,.2,1)}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (max-width:540px){.form-grid{grid-template-columns:1fr}}.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:480px){.stats-grid{grid-template-columns:1fr;max-width:280px;margin-left:auto;margin-right:auto}}.z-content{z-index:1;position:relative}.home-tabs{background:var(--glass);border:1px solid var(--border);border-radius:14px;gap:4px;max-width:480px;margin-bottom:40px;margin-left:auto;margin-right:auto;padding:4px;display:flex}.home-tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;flex:1;padding:10px 16px;font-family:Figtree,sans-serif;font-size:14px;font-weight:600;transition:all .18s}.home-tab:hover{color:var(--text);background:#ffffff0d}.home-tab.active{background:var(--gradient);color:#fff;box-shadow:0 2px 12px #a855f759}.dept-tag{color:#c084fc;background:#a855f71f;border:1px solid #a855f74d;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-family:Figtree,sans-serif;font-size:13px;font-weight:600;display:inline-flex}.dept-tag-remove{color:#c084fc;cursor:pointer;background:#a855f733;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:14px;line-height:1;transition:background .15s;display:flex}.dept-tag-remove:hover{background:#a855f780}.check-card{border:1px solid var(--border);background:var(--glass);cursor:pointer;text-align:left;width:100%;color:var(--text);border-radius:12px;align-items:center;gap:14px;padding:14px 18px;font-family:Figtree,sans-serif;transition:all .18s;display:flex}.check-card:hover{background:#ffffff0d;border-color:#a855f766}.check-card.selected{border-color:var(--purple);background:#a855f71a}.check-box{background:0 0;border:2px solid #fff3;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:all .15s;display:flex}.check-card.selected .check-box{background:var(--gradient);border-color:#0000}.panel-tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:28px;display:flex}.panel-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 24px;font-family:Figtree,sans-serif;font-size:14px;font-weight:600;transition:all .18s}.panel-tab:hover{color:var(--text)}.panel-tab.active{color:var(--purple);border-bottom-color:var(--purple)}
