body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.course-selector{position:relative;width:240px}.selector-button{align-items:center;background:linear-gradient(180deg,#0c1220,#0a0f1a);border:1px solid #1f2630;border-radius:999px;box-shadow:inset 0 1px 0 #ffffff08,0 1px 2px #0006;color:#e6edf3;cursor:pointer;display:flex;font-size:.85rem;gap:.5rem;height:34px;justify-content:space-between;padding:0 .75rem 0 .9rem;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;width:100%}.selector-button.open{background:linear-gradient(180deg,#101735,#0c1328);border-color:#2a3441;box-shadow:inset 0 1px 0 #ffffff0a,0 4px 10px #0009}.selector-text{flex:1 1;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selector-icon{color:#9aa4b2;flex-shrink:0;transition:transform .22s cubic-bezier(.4,0,.2,1),color .16s ease}.selector-icon.rotated{color:#e6edf3;transform:rotate(180deg)}.options-list{animation:dropdownFade .16s ease-out;background:linear-gradient(180deg,#0f1623,#0b1220);border:1px solid #1f2630;border-radius:12px;box-shadow:0 12px 30px #0000008c;left:0;padding:.25rem 0;position:absolute;top:calc(100% + 8px);width:100%;z-index:5000}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.option-item{color:#e6edf3;cursor:pointer;font-size:.85rem;overflow:hidden;padding:.55rem .9rem;text-overflow:ellipsis;white-space:nowrap}.option-item:hover{background:#182033}*,:after,:before{box-sizing:border-box}:root{--bg:#0b0f14;--surface:#11161d;--card:#151b23;--border:#1f2630;--text:#e6edf3;--muted:#9aa4b2}body{background:radial-gradient(circle at top,#0f1623,#0b0f14);background:radial-gradient(circle at top,#0f1623,var(--bg));color:#e6edf3;color:var(--text);font-family:Inter,system-ui,sans-serif;margin:0}.landing{display:flex;flex-direction:column;min-height:100vh}.landing-nav{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b0f14cc;border-bottom:1px solid #1f2630;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1rem 2.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.landing-logo{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#60a5fa,#818cf8);-webkit-background-clip:text;background-clip:text;font-size:1.1rem;font-weight:700;letter-spacing:.08em}.landing-nav-links{align-items:center;display:flex;gap:1.5rem}.landing-nav-links a{color:#9aa4b2;color:var(--muted);font-size:.85rem;text-decoration:none;transition:color .15s}.btn-login,.landing-nav-links a:hover{color:#e6edf3;color:var(--text)}.btn-login{background:#1e293b;border:1px solid #334155;border-radius:8px;cursor:pointer;font-size:.85rem;padding:.45rem 1.1rem;transition:background .15s,border-color .15s}.btn-login:hover{background:#273244;border-color:#3b82f6}.landing-hero{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:5rem 1.5rem 3rem;text-align:center}.landing-badge{background:#3b82f614;border:1px solid #1e3a5f;border-radius:999px;color:#60a5fa;display:inline-block;font-size:.78rem;letter-spacing:.04em;margin-bottom:1.75rem;padding:.3rem .9rem}.landing-title{color:#e6edf3;color:var(--text);font-size:clamp(2.2rem,5vw,3.4rem);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 1.25rem}.landing-title-accent{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#60a5fa,#818cf8);-webkit-background-clip:text;background-clip:text}.landing-subtitle{color:#9aa4b2;color:var(--muted);font-size:1rem;line-height:1.65;margin:0 0 2.25rem;max-width:540px}.btn-hero{align-items:center;background:linear-gradient(135deg,#3b82f6,#6366f1);border:none;border-radius:10px;box-shadow:0 0 32px #6366f159;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;padding:.75rem 2rem;transition:opacity .15s,box-shadow .15s}.btn-hero:hover{box-shadow:0 0 44px #6366f180;opacity:.92}.landing-fine{color:#4b5563;font-size:.75rem;margin-top:1.1rem}.landing-fine a{color:#3b82f6;text-decoration:none}.landing-fine a:hover{text-decoration:underline}.landing-features{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0 auto;max-width:960px;padding:0 1.5rem 5rem;width:100%}.feature-card{background:linear-gradient(160deg,#0f1a2a,#151b23);background:linear-gradient(160deg,#0f1a2a 0,var(--card) 100%);border:1px solid #1f2630;border:1px solid var(--border);border-radius:14px;padding:1.5rem;transition:border-color .2s,transform .2s}.feature-card:hover{border-color:#2d4a6e;transform:translateY(-2px)}.feature-icon{font-size:1.6rem;margin-bottom:.75rem}.feature-card h3{color:#e6edf3;color:var(--text);font-size:.95rem;font-weight:600;margin:0 0 .5rem}.feature-card p{color:#9aa4b2;color:var(--muted);font-size:.83rem;line-height:1.55;margin:0}.landing-footer{border-top:1px solid #1f2630;border-top:1px solid var(--border);color:#374151;font-size:.75rem;padding:1.5rem;text-align:center}.app-shell{min-height:100vh}.app-header{align-items:center;background:#11161d;background:var(--surface);border-bottom:1px solid #1f2630;border-bottom:1px solid var(--border);display:flex;height:56px;justify-content:space-between;padding:0 1.5rem}.app-title{font-size:.95rem;font-weight:600;letter-spacing:.3px}.header-actions{align-items:center;display:flex;gap:.75rem}.icon-btn{background:#0000;border:none;border-radius:6px;color:#9aa4b2;color:var(--muted);cursor:pointer;padding:6px}.icon-btn:hover{background:#1a2230;color:#e6edf3;color:var(--text)}.app-main{margin:0 auto;max-width:880px;padding:3rem 1.5rem}.card{background:linear-gradient(180deg,#0f1520,#151b23);background:linear-gradient(180deg,#0f1520 0,var(--card) 100%);border:1px solid #1f2630;border:1px solid var(--border);border-radius:14px;box-shadow:0 30px 60px #00000073;padding:1.75rem}.card h2{font-size:1.1rem;font-weight:600;margin:0 0 1.25rem}input,textarea{background:#0b1020;border:1px solid #1f2630;border:1px solid var(--border);border-radius:8px;color:#e6edf3;color:var(--text);font-size:.9rem;margin-top:.75rem;padding:.7rem .75rem;width:100%}input::placeholder,textarea::placeholder{color:#6b7280}.button.full-width{text-align:center;width:100%}.actions-row{display:flex;gap:.75rem;margin-top:1.25rem}.action-section{display:flex;flex-direction:column;gap:.75rem}.section-title{color:#9aa4b2;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.divider{background:#1f2630;height:1px;margin:1.5rem 0}.button{background:#1f2937;border:1px solid #1f2630;border:1px solid var(--border);border-radius:8px;color:#e6edf3;color:var(--text);cursor:pointer;font-size:.85rem;padding:.55rem 1.1rem}.action-section .button{display:block;text-align:center;width:100%}.button:hover{background:#273244}.button.secondary{background:#0000}.empty-state{color:#9aa4b2;color:var(--muted);font-size:.9rem;margin-top:5rem;text-align:center}.overlay{align-items:center;background:#050a14bf;display:flex;inset:0;justify-content:center;position:fixed}.modal{background:#11161d;background:var(--surface);border:1px solid #1f2630;border:1px solid var(--border);border-radius:12px;padding:1.75rem;width:640px}.switch{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem;position:relative}.switch input{height:0;opacity:0;width:0}.slider{background-color:#2c3440;border-radius:22px;cursor:pointer;height:22px;position:relative;transition:.3s;width:42px}.slider:before{background-color:#e6edf3;background-color:var(--text);border-radius:50%;content:"";height:16px;left:3px;position:absolute;top:3px;transition:.3s;width:16px}.switch input:checked+.slider{background-color:#3b82f6}.switch input:checked+.slider:before{transform:translateX(20px)}.label-text{color:#e6edf3;color:var(--text);font-size:.9rem}
/*# sourceMappingURL=main.9fcb59f6.css.map*/