@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap";
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_bace89c4-module__09p2wq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_bace89c4-module__09p2wq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_b6263578-module__gDjZ3a__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_b6263578-module__gDjZ3a__variable{--font-plus-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
:root{--bg-dark:#050505;--bg-surface:#0f0f14a6;--bg-surface-light:#1e1e2866;--glass-border:#ffffff14;--glass-border-highlight:#ffffff26;--primary-gradient:linear-gradient(135deg, #00f2fe 0%, #4facfe 50%, #667eea 100%);--primary-gradient-hover:linear-gradient(135deg, #4facfe 0%, #00f2fe 50%, #764ba2 100%);--text-primary:#fff;--text-secondary:#a1a1aa;--text-tertiary:#71717a;--accent-glow:#4facfe80;--accent-green:#10b981;--accent-purple:#8b5cf6;--font-heading:"Plus Jakarta Sans", sans-serif;--font-body:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;justify-content:center;align-items:center;min-height:100vh;display:flex;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em}.background-orbs{z-index:-1;background:radial-gradient(circle,#0a0a0f 0%,#050505 100%);width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.orb{filter:blur(120px);opacity:.4;border-radius:50%;animation:25s ease-in-out infinite alternate float;position:absolute}.orb-1{background:#4facfe;width:600px;height:600px;top:-15%;left:-10%}.orb-2{background:#8b5cf6;width:700px;height:700px;animation-delay:-7s;bottom:-20%;right:-10%}.orb-3{opacity:.2;background:#00f2fe;width:500px;height:500px;animation-delay:-14s;top:30%;left:30%}@keyframes float{0%{transform:translate(0)scale(1)rotate(0)}33%{transform:translate(150px,80px)scale(1.2)rotate(45deg)}66%{transform:translate(-80px,150px)scale(.9)rotate(90deg)}to{transform:translate(-150px,-80px)scale(1.1)rotate(180deg)}}.app-container{background:var(--bg-surface);-webkit-backdrop-filter:blur(30px);border:1px solid var(--glass-border);border-radius:28px;width:96vw;max-width:1800px;height:92vh;display:flex;position:relative;overflow:hidden;box-shadow:0 40px 100px -20px #000c,inset 0 1px #ffffff1a}.sidebar{border-right:1px solid var(--glass-border);z-index:10;background:#0a0a0c80;flex-direction:column;width:280px;padding:36px 28px;display:flex;position:relative}.brand{align-items:center;gap:16px;margin-bottom:56px;display:flex;position:relative}.brand-icon{background:var(--primary-gradient);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 12px var(--accent-glow));-webkit-background-clip:text;font-size:32px}.brand h1{letter-spacing:-1px;background:linear-gradient(90deg,#fff,#a1a1aa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:24px;font-weight:800}.sidebar-content{flex:1}.subtitle{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:24px;padding-left:8px;font-size:13px;font-weight:700}.features{flex-direction:column;gap:12px;display:flex}.feature-item{color:var(--text-secondary);cursor:default;background:0 0;border:1px solid #0000;border-radius:16px;align-items:center;gap:14px;padding:14px 18px;font-size:15px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.feature-item:hover{border-color:var(--glass-border);color:var(--text-primary);background:#ffffff0a;transform:translate(8px);box-shadow:0 10px 20px -10px #00000080}.feature-item i{background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:18px;transition:transform .3s}.feature-item:hover i{transform:scale(1.2)}.status-indicator{color:var(--text-secondary);border-top:1px solid var(--glass-border);align-items:center;gap:12px;padding:24px 8px 0;font-size:14px;font-weight:500;display:flex}.pulse-dot{background-color:var(--accent-green);width:10px;height:10px;box-shadow:0 0 15px var(--accent-green);border-radius:50%;animation:2.5s cubic-bezier(.4,0,.2,1) infinite pulse}@keyframes pulse{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 8px #10b98100}to{box-shadow:0 0 #10b98100}}.main-content{background:#0003;flex:1;display:flex}.chat-container{border-right:1px solid var(--glass-border);flex-direction:column;flex:5.5;display:flex;position:relative}.chat-header{border-bottom:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#0003;justify-content:space-between;align-items:center;padding:28px 48px;display:flex}.chat-header h2{color:var(--text-primary);font-size:20px;font-weight:600}.model-badge{color:#4facfe;letter-spacing:.5px;background:#4facfe1a;border:1px solid #4facfe33;border-radius:24px;padding:8px 16px;font-size:13px;font-weight:600;box-shadow:0 0 20px #4facfe0d}.chat-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:32px;padding:48px;display:flex;overflow-y:auto}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a padding-box padding-box;border:2px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:#fff3}.message{opacity:0;gap:20px;max-width:85%;animation:.5s cubic-bezier(.16,1,.3,1) forwards messageSlideIn;display:flex;transform:translateY(20px)}@keyframes messageSlideIn{to{opacity:1;transform:translateY(0)}}.message.user{flex-direction:row-reverse;align-self:flex-end}.avatar{border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex;box-shadow:0 8px 16px #0003}.message.assistant .avatar{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08}.message.user .avatar{background:var(--primary-gradient);box-shadow:0 8px 24px #4facfe66}.message-content{border-radius:20px;padding:18px 24px;font-size:16px;line-height:1.6;box-shadow:0 10px 30px #0000001a}.message.assistant .message-content{border:1px solid var(--glass-border);color:var(--text-primary);background:#ffffff05;border-top-left-radius:6px}.message.user .message-content{background:var(--primary-gradient);color:#fff;border-top-right-radius:6px;font-weight:500}.action-buttons{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.action-btn{border:1px solid var(--glass-border);color:var(--text-secondary);font-size:14px;font-weight:500;font-family:var(--font-body);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border-radius:24px;padding:10px 20px;transition:all .3s cubic-bezier(.16,1,.3,1)}.action-btn:hover{color:#4facfe;background:#4facfe1a;border-color:#4facfe4d;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.typing-indicator{gap:8px;padding:12px 8px;display:flex}.typing-indicator span{background:var(--text-secondary);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both bounce}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;background:#4facfe;transform:translateY(-8px)}}.input-area{border-top:1px solid var(--glass-border);z-index:10;background:linear-gradient(#0a0a0c66,#0a0a0ccc);padding:32px 48px;position:relative}#chat-form{border:1px solid var(--glass-border-highlight);background:#0006;border-radius:20px;gap:16px;padding:10px 10px 10px 24px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 10px 30px #0003}#chat-form:focus-within{background:#0009;border-color:#4facfe66;box-shadow:0 10px 40px #0000004d,0 0 0 4px #4facfe1a}#user-input{color:var(--text-primary);font-size:16px;font-family:var(--font-body);background:0 0;border:none;outline:none;flex:1;padding:14px 0}#user-input::placeholder{color:var(--text-tertiary)}#send-button{background:var(--primary-gradient);color:#fff;cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;font-size:18px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 15px #4facfe4d}#send-button:hover:not(:disabled){background:var(--primary-gradient-hover);transform:scale(1.05)translateY(-2px);box-shadow:0 8px 25px #4facfe80}#send-button:disabled{color:var(--text-tertiary);cursor:not-allowed;box-shadow:none;background:#ffffff0d}.course-details-panel{background:#0000001a;flex-direction:column;flex:4.5;display:flex;position:relative}.details-header{border-bottom:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#0003;padding:28px 40px}.details-header h2{font-size:20px;font-weight:600}.cards-container{flex-direction:column;flex:1;gap:24px;padding:40px;display:flex;overflow-y:auto}.empty-state{text-align:center;color:var(--text-secondary);border:1px dashed var(--glass-border-highlight);background:#ffffff03;border-radius:24px;flex-direction:column;align-items:center;gap:20px;margin-top:40px;padding:60px 40px;display:flex}.empty-state i{background:linear-gradient(135deg, var(--text-tertiary), #ffffff1a);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:48px}.empty-state h3{color:var(--text-primary);font-size:22px}.empty-state p{max-width:300px;font-size:15px;line-height:1.6}.course-card{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#14141999;border-radius:24px;flex-shrink:0;padding:28px;transition:all .4s cubic-bezier(.16,1,.3,1);animation:.5s cubic-bezier(.16,1,.3,1) forwards cardFadeIn;position:relative;overflow:hidden}.course-card:before{content:"";pointer-events:none;background:linear-gradient(#ffffff08 0%,#fff0 100%);width:100%;height:100%;position:absolute;top:0;left:0}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.course-card:hover{border-color:#ffffff26;transform:translateY(-4px)scale(1.01);box-shadow:0 20px 40px #0006,0 0 20px #ffffff08}.course-card.miracosta{border-left:4px solid #00f2fe}.course-card.miracosta:hover{box-shadow:0 20px 40px #0006,0 0 30px #00f2fe1a}.course-card.chico{border-left:4px solid #ef4444}.course-card.chico:hover{box-shadow:0 20px 40px #0006,0 0 30px #ef44441a}.card-header{z-index:1;justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex;position:relative}.card-title-area h3{color:#fff;letter-spacing:-.5px;margin-bottom:6px;font-size:22px;font-weight:700}.card-title-area p{color:var(--text-secondary);font-size:15px;font-weight:500}.college-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:6px 14px;font-size:12px;font-weight:700}.miracosta .college-badge{color:#00f2fe;background:#00f2fe1a;border:1px solid #00f2fe33}.chico .college-badge{color:#fca5a5;background:#ef44441a;border:1px solid #ef444433}.card-badges{z-index:1;flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex;position:relative}.badge{color:#e2e8f0;background:#ffffff0a;border:1px solid #ffffff08;border-radius:12px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;display:flex}.badge i{color:#00f2fe;font-size:14px}.badge.warning{color:#fcd34d;background:#f59e0b1a;border-color:#f59e0b33}.badge.warning i{color:#f59e0b}.card-description{color:var(--text-secondary);z-index:1;background:#0000004d;border:1px solid #ffffff05;border-radius:12px;max-height:160px;margin-bottom:28px;padding:16px;font-size:15px;line-height:1.6;position:relative;overflow-y:auto}.card-description::-webkit-scrollbar{width:6px}.card-description::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.card-description::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.card-description::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.card-action{z-index:1;display:flex;position:relative}.maps-btn{color:var(--text-primary);border:1px solid var(--glass-border);background:#ffffff0d;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 24px;font-size:14px;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.maps-btn:hover{background:var(--primary-gradient);color:#fff;border-color:#0000;transform:translateY(-2px);box-shadow:0 10px 20px #4facfe4d}.maps-btn i{font-size:16px}.tab-nav{flex-direction:column;gap:6px;display:flex}.nav-item{color:var(--text-secondary);font-size:15px;font-weight:500;font-family:var(--font-body);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:16px;align-items:center;gap:14px;width:100%;padding:14px 18px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.nav-item:hover{border-color:var(--glass-border);color:var(--text-primary);background:#ffffff0a;transform:translate(6px)}.nav-item.active{color:#4facfe;background:#4facfe14;border-color:#4facfe40;font-weight:600;box-shadow:0 8px 24px #4facfe14}.nav-item i{text-align:center;background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;width:20px;font-size:16px;transition:transform .3s}.nav-item.active i{filter:drop-shadow(0 0 6px #4facfe66);transform:scale(1.15)}.sidebar-stats{gap:12px;margin-bottom:20px;display:flex}.mini-stat{border:1px solid var(--glass-border);text-align:center;background:#ffffff05;border-radius:14px;flex-direction:column;flex:1;gap:4px;padding:14px 10px;display:flex}.mini-stat-number{font-family:var(--font-heading);background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:22px;font-weight:800}.mini-stat-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.tab-view{flex-direction:column;flex:1;display:flex;overflow:hidden}.tab-view-header{border-bottom:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0003;padding:32px 48px 24px}.tab-view-header h2{background:linear-gradient(90deg,#fff,#a1a1aa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:24px;font-weight:700}.tab-view-header p{color:var(--text-tertiary);font-size:14px}.search-controls{border-bottom:1px solid var(--glass-border);background:#00000026;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:24px 48px;display:flex}.glass-input{border:1px solid var(--glass-border-highlight);min-width:200px;color:var(--text-primary);font-size:15px;font-family:var(--font-body);background:#0006;border-radius:14px;outline:none;flex:2;padding:14px 20px;transition:all .3s}.glass-input:focus{border-color:#4facfe66;box-shadow:0 0 0 3px #4facfe1a}.glass-input::placeholder{color:var(--text-tertiary)}.glass-textarea{resize:vertical;min-height:90px;line-height:1.5}.glass-select{border:1px solid var(--glass-border-highlight);color:var(--text-primary);font-size:14px;font-family:var(--font-body);cursor:pointer;appearance:none;background:#0006 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23a1a1aa' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E") right 14px center no-repeat;border-radius:14px;outline:none;min-width:180px;padding:14px 36px 14px 20px;transition:all .3s}.glass-select:focus{border-color:#4facfe66}.glass-select option{color:#fff;background:#1a1a2e}.glass-select-lg{flex:2;min-width:200px}.glass-btn{background:var(--primary-gradient);color:#fff;font-size:15px;font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:14px;padding:14px 28px;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px #4facfe4d}.glass-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #4facfe80}.glass-btn:disabled{opacity:.5;cursor:not-allowed}.results-grid{flex-direction:column;flex:1;gap:20px;padding:32px 48px;display:flex;overflow-y:auto}.results-count{color:var(--text-secondary);border-bottom:1px solid var(--glass-border);padding-bottom:8px;font-size:15px;font-weight:500}.stats-row{gap:16px;margin-bottom:12px;display:flex}.stat-card{border:1px solid var(--glass-border);text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff05;border-top:3px solid;border-radius:20px;flex:1;padding:24px 20px;transition:all .3s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0000004d}.stat-number{font-family:var(--font-heading);margin-bottom:4px;font-size:36px;font-weight:800}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:13px;font-weight:600}.rec-group{margin-bottom:16px}.rec-group-title{color:#4facfe;background:#4facfe14;border:1px solid #4facfe33;border-radius:16px;margin-bottom:16px;padding:16px 24px;font-size:18px;font-weight:700}.prereq-box{color:#fcd34d;z-index:1;background:#f59e0b14;border:1px solid #f59e0b33;border-left:4px solid #f59e0b;border-radius:12px;margin-bottom:16px;padding:14px 18px;font-size:14px;line-height:1.5;position:relative}.prereq-title{color:#fcd34d;border-bottom:none;font-size:17px;font-weight:600}.prereq-notice{text-align:center;border-radius:20px;padding:28px 32px}.prereq-notice.warning{background:#f59e0b0f;border:1px solid #f59e0b33}.prereq-notice.success{background:#10b9810f;border:1px solid #10b98133}.prereq-notice h4{margin-bottom:12px;font-size:20px}.prereq-notice.warning h4{color:#fbbf24}.prereq-notice.success h4{color:#34d399}.prereq-notice p{color:var(--text-secondary);margin-bottom:8px;font-size:15px;line-height:1.6}.prereq-notice small{color:var(--text-tertiary);font-size:13px;font-style:italic}.match-reason{color:var(--text-tertiary);z-index:1;background:#ffffff05;border:1px solid #ffffff08;border-radius:10px;margin-bottom:16px;padding:8px 14px;font-size:13px;position:relative}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}.map-modal{background:var(--bg-surface);border:1px solid var(--glass-border);border-radius:24px;flex-direction:column;width:90vw;max-width:900px;height:80vh;animation:.4s cubic-bezier(.16,1,.3,1) slideUpFade;display:flex;overflow:hidden;box-shadow:0 20px 60px #000c}.modal-header{border-bottom:1px solid var(--glass-border);background:#0006;justify-content:space-between;align-items:center;padding:24px 32px;display:flex}.modal-header h3{font-size:20px;font-weight:700}.close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:28px;transition:color .2s}.close-btn:hover{color:#fff}.modal-body{background:#0003;flex:1;padding:16px}.modal-footer{border-top:1px solid var(--glass-border);background:#0006;justify-content:flex-end;padding:20px 32px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(40px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.toggle-switch{cursor:pointer;align-items:center;gap:12px;display:flex;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.slider{border:1px solid var(--glass-border);background:#ffffff1a;border-radius:34px;width:50px;height:26px;transition:all .4s;position:relative}.slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .4s;position:absolute;bottom:3px;left:4px}input:checked+.slider{background:var(--primary-gradient);border-color:#0000}input:checked+.slider:before{transform:translate(24px)}.toggle-label{color:var(--text-secondary);font-size:14px;font-weight:600;transition:color .3s}input:checked~.toggle-label{color:#00f2fe;text-shadow:0 0 10px #00f2fe80}
