:root{--canvas:#d6e8ee;--ink:#000;--spruce-green:#018abe;--sage-green:#97cadb;--sage-light:#d6e8ee;--sage-super-light:#fff;--mustard:#018abe;--scholar-blue:#018abe;--white:#fff;--border:3px solid var(--ink);--radius:12px;--shadow-card:5px 5px 0 var(--ink);--shadow-btn:5px 5px 0 var(--ink);--shadow-hero:6px 6px 0 var(--ink);--container:1200px;--font-display:"Space Grotesk","Lexend Deca",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif}*,:after,:before{box-sizing:border-box}html{scroll-behavior:auto!important}html.lenis,html.lenis-pure{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}body{margin:0;min-height:100vh;font-family:var(--font-body);font-size:15px;line-height:1.5;color:var(--ink);background-color:#f2f6ff}.site-shell{position:relative;z-index:1;min-height:100vh;background-image:radial-gradient(circle at 1px 1px,rgba(0,0,0,.025) 1px,transparent 0);background-size:24px 24px;animation:site-grid-shift 40s linear infinite}@keyframes site-grid-shift{0%{background-position:0 0}to{background-position:24px 24px}}@media (prefers-reduced-motion:reduce){.site-shell{animation:none}}a{color:inherit}button,input,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.1;margin:0 0 .5em}p{margin:0 0 1em}.container{width:min(100% - 32px,var(--container));margin:0 auto}.reveal-on-scroll{opacity:0;transform:translateY(24px) scale(.98);transition:opacity .6s cubic-bezier(.175,.885,.32,1.1),transform .6s cubic-bezier(.175,.885,.32,1.1)}.reveal-on-scroll.revealed{opacity:1;transform:translateY(0) scale(1)}.stagger-0{transition-delay:0s}.stagger-1{transition-delay:.1s}.stagger-2{transition-delay:.2s}.stagger-3{transition-delay:.3s}.stagger-4{transition-delay:.4s}.click-ripple{position:absolute;border-radius:50%;transform:translate(-50%,-50%) scale(0);pointer-events:none;animation:ripple-effect .5s ease-out}@keyframes ripple-effect{to{transform:translate(-50%,-50%) scale(4);opacity:0}}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;justify-content:space-between;gap:16px;padding:12px 20px;background:var(--spruce-green);border-bottom:var(--border)}.brand,.site-header{display:flex;align-items:center}.brand{gap:10px;font-family:var(--font-display);font-weight:800;font-size:1.25rem;text-decoration:none;color:var(--white);letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:36px;height:36px;background:var(--white);color:var(--spruce-green);border:var(--border);font-size:1rem}.site-nav{display:flex;flex-wrap:wrap;gap:8px}.site-nav a{padding:8px 14px;font-family:var(--font-display);font-weight:700;font-size:.85rem;text-decoration:none;text-transform:uppercase;letter-spacing:.04em;background:var(--white);color:var(--ink);border:var(--border);box-shadow:3px 3px 0 var(--ink);transition:transform .1s,box-shadow .1s}.site-nav a.is-active,.site-nav a:hover{background:var(--sage-green);color:var(--ink);transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.nav-toggle{display:none;flex-direction:column;gap:5px;padding:8px;background:var(--white);border:var(--border);box-shadow:3px 3px 0 var(--ink)}.nav-toggle span{display:block;width:22px;height:3px;background:var(--ink)}.hero{padding:36px 0 30px}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:28px;gap:28px;align-items:stretch}.hero-card{background:var(--spruce-green);color:var(--white);padding:32px;border:var(--border);border-radius:var(--radius);box-shadow:8px 8px 0 var(--ink)}.hero-card .hero-headline{font-family:var(--font-display);font-size:clamp(2rem,5.5vw,3.75rem);font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:.95;color:var(--white);margin-bottom:20px}.hero-card .hero-headline span{display:block;color:var(--sage-super-light)}.hero-card .eyebrow{display:inline-block;margin-bottom:12px;padding:6px 12px;font-family:var(--font-display);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;background:var(--sage-green);color:var(--ink);border:var(--border);box-shadow:3px 3px 0 var(--ink)}.hero-card .hero-lead{font-size:1.05rem;max-width:52ch;margin-bottom:24px;color:#d6e8ee}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.insight-panel{display:flex;flex-direction:column;justify-content:center;padding:20px;background:var(--spruce-green);color:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}.panel-title{font-family:var(--font-display);font-weight:800;font-size:.9rem;text-transform:uppercase;margin-bottom:16px;color:var(--white)}.strategy-stack{display:flex;flex-direction:column;gap:10px}.strategy-card{display:grid;grid-template-columns:auto 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:12px;background:var(--white);color:var(--ink);border:var(--border);border-radius:8px}.strategy-card strong{font-family:var(--font-display);font-size:.85rem;text-transform:uppercase}.strategy-card span{display:block;font-size:.8rem;font-family:var(--font-body)}.strategy-card b{font-family:var(--font-display);font-size:1.5rem}.strategy-dot{width:14px;height:14px;border:2px solid var(--ink);border-radius:2px}.strategy-dot.safe{background:var(--sage-green)}.strategy-dot.fit{background:var(--mustard)}.strategy-dot.reach{background:var(--scholar-blue)}.section{padding:36px 0}.section-header h2{font-size:clamp(1.5rem,3vw,2rem);text-transform:uppercase}.site-footer{margin-top:0;padding:24px 0 16px;background:var(--ink);color:var(--white);border-top:var(--border)}.footer-container{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:20px;gap:20px;margin-bottom:20px}.footer-brand-section{display:flex;flex-direction:column;gap:10px}.footer-brand-section .brand{color:var(--sage-green);display:inline-flex;width:-moz-fit-content;width:fit-content}.footer-brand-section .brand-mark{background:var(--sage-green);color:var(--ink)}.footer-tagline{font-size:.8rem;line-height:1.4;color:#ccc;max-width:320px}.footer-socials{display:flex;gap:12px}.social-btn{display:inline-block;padding:4px 8px;background:var(--white);color:var(--ink);border:2px solid var(--ink);font-weight:700;font-size:.75rem;text-decoration:none!important;box-shadow:2px 2px 0 var(--sage-green);transition:transform .1s,box-shadow .1s}.social-btn:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--sage-green);background:var(--sage-green)}.footer-nav-column{display:flex;flex-direction:column;gap:6px}.footer-nav-column h4{font-family:var(--font-display);font-size:.85rem;text-transform:uppercase;color:var(--sage-green);margin-bottom:2px;position:relative;width:-moz-fit-content;width:fit-content}.footer-nav-column h4:after{content:"";display:block;width:100%;height:2px;background:var(--white);margin-top:4px}.footer-nav-column a{color:#ccc;font-size:.78rem;text-decoration:none;font-weight:500;transition:color .2s,padding-left .2s;width:-moz-fit-content;width:fit-content}.footer-nav-column a:hover{color:var(--white);padding-left:4px;text-decoration:underline;text-underline-offset:3px}.footer-bottom{border-top:1px solid #333;padding-top:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.copyright{font-size:.72rem;color:#888}@media (max-width:768px){.footer-container{grid-template-columns:1fr;gap:28px}}.page-header{padding:40px 0 12px}.page-header+.section{padding-top:16px}.majors-page.section{padding-top:20px}.page-header--compact{padding:16px 0 12px}.page-header--compact h1{margin-bottom:6px}.page-header--compact p{margin:0 0 12px}.page-map main{display:flex;flex-direction:column;min-height:calc(100dvh - var(--map-chrome-top, 56px));height:auto;overflow:visible}.page-map .page-header{flex-shrink:0}.map-page.section{flex:1 1 auto;min-height:0;padding:12px 0;overflow:visible}.map-page .container{height:100%;display:flex;flex-direction:column}.map-page .map-layout{flex:1 1 auto;width:100%}.page-header h1{font-size:clamp(1.75rem,4vw,2.5rem);text-transform:uppercase;color:var(--spruce-green);text-shadow:4px 4px 0 var(--sage-green)}@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.nav-toggle{display:flex}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;padding:12px;background:var(--mustard);border-bottom:var(--border)}.site-nav.is-open{display:flex}}.results-layout{display:grid;grid-template-columns:7fr 3fr;grid-gap:24px;gap:24px;align-items:start;margin-top:16px}.results-main{min-width:0}.results-sidebar{display:flex;flex-direction:column;gap:16px}@media (max-width:900px){.results-layout{grid-template-columns:1fr;gap:16px}}.strategy-3d-section{background:var(--canvas);padding:40px 0}.strategy-3d-grid{display:grid;grid-template-columns:4.2fr 5.8fr;grid-gap:28px;gap:28px;align-items:stretch}.strategy-3d-info{background:var(--white);padding:32px;justify-content:center}.legend-list,.strategy-3d-info{display:flex;flex-direction:column}.legend-list{gap:12px;margin-top:16px}.legend-item{display:flex;align-items:center;gap:10px;font-size:.9rem}.legend-color{width:16px;height:16px;border:2px solid var(--ink);border-radius:4px}.legend-color.safe{background:var(--sage-green)}.legend-color.fit{background:var(--mustard)}.legend-color.reach{background:var(--scholar-blue)}.strategy-3d-canvas-container{background:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:8px 8px 0 var(--ink);position:relative;min-height:380px;display:grid;place-items:center;overflow:hidden;cursor:-webkit-grab;cursor:grab}.strategy-3d-canvas-container:active{cursor:-webkit-grabbing;cursor:grabbing}.strategy-3d-canvas-container canvas{width:100%!important;height:100%!important;display:block}@media (max-width:900px){.strategy-3d-grid{grid-template-columns:1fr;gap:20px}.strategy-3d-canvas-container{min-height:300px}}.btn-ghost,.btn-primary,.btn-secondary,.btn-win{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;font-family:var(--font-display);font-weight:800;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;border:var(--border);border-radius:8px;box-shadow:var(--shadow-btn);will-change:transform,box-shadow;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1)}.btn-primary{background:var(--sage-green);color:var(--ink)}.btn-secondary{background:var(--spruce-green);color:var(--white)}.btn-ghost{background:var(--white);color:var(--ink)}.btn-ghost:hover,.btn-primary:hover,.btn-secondary:hover{transform:translate3d(3px,3px,0);box-shadow:2px 2px 0 var(--ink)}.btn-ghost:active,.btn-primary:active,.btn-secondary:active{transform:translate3d(5px,5px,0);box-shadow:0 0 0 var(--ink)}.mini-btn{display:inline-block;padding:6px 12px;font-family:var(--font-display);font-weight:700;font-size:.75rem;text-transform:uppercase;text-decoration:none;background:var(--white);color:var(--ink);border:2px solid var(--ink);border-radius:6px;box-shadow:3px 3px 0 var(--ink);will-change:transform,box-shadow;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),background-color .2s cubic-bezier(.16,1,.3,1)}.mini-btn:hover{background:var(--scholar-blue);color:var(--ink);transform:translate3d(2px,2px,0);box-shadow:1px 1px 0 var(--ink)}.brutal-card,.smart-card{padding:24px;background:var(--mustard);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);will-change:transform,box-shadow;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1)}.section-badge{display:inline-block;margin-bottom:8px;padding:4px 10px;font-family:var(--font-display);font-weight:800;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;background:var(--ink);color:var(--scholar-blue);border:2px solid var(--ink)}.steps,.wizard-stepper{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-bottom:24px}.step-tab{padding:12px 8px;text-align:center;font-family:var(--font-display);font-weight:700;font-size:.75rem;text-transform:uppercase;background:var(--white);color:var(--ink);border:var(--border);border-radius:8px;box-shadow:3px 3px 0 var(--ink);cursor:default}.step-tab.is-active{background:var(--scholar-blue);color:var(--white);transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.step-tab.is-done{background:var(--spruce-green);color:var(--white)}.step-number{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-right:4px;font-size:.7rem;background:var(--ink);color:var(--white);border-radius:4px}.step-tab.is-active .step-number,.step-tab.is-done .step-number{background:var(--white);color:var(--ink)}.form-step{display:none}.form-step.is-active{display:block}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.form-grid .field.full{grid-column:1/-1}.field label,.field-label{display:block;margin-bottom:6px;font-family:var(--font-display);font-weight:700;font-size:.8rem;text-transform:uppercase}.field input,.field select,.search-input{width:100%;padding:12px 14px;font-family:var(--font-body);background:var(--white);color:var(--ink);border:var(--border);border-radius:8px}.field input:focus,.field select:focus,.search-input:focus{outline:3px solid var(--scholar-blue);outline-offset:2px}.score-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-top:8px}.score-total{margin-top:12px;padding:12px 16px;font-family:var(--font-display);font-weight:800;background:var(--white);border:var(--border);border-radius:8px;box-shadow:3px 3px 0 var(--ink)}.chip-grid{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-family:var(--font-body);font-weight:600;font-size:.85rem;background:var(--white);color:var(--ink);border:var(--border);border-radius:8px;cursor:pointer;box-shadow:2px 2px 0 var(--ink);will-change:transform,box-shadow;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),background-color .2s cubic-bezier(.16,1,.3,1)}.chip:hover{transform:translate3d(1px,1px,0);box-shadow:1px 1px 0 var(--ink)}.chip:has(input:checked){background:var(--scholar-blue);color:var(--white)}.form-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:var(--border)}.aspiration-matrix-wrap{margin-top:8px}.aspiration-matrix{display:grid;grid-template-columns:3fr 5fr 2fr;grid-gap:14px;gap:14px;align-items:stretch}.results-list{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;max-height:390px;overflow-y:auto;padding-right:8px;margin-top:16px}.results-list::-webkit-scrollbar{width:10px}.results-list::-webkit-scrollbar-track{background:var(--canvas);border-left:2px solid var(--ink)}.results-list::-webkit-scrollbar-thumb{background:var(--ink);border:2px solid var(--canvas)}.matrix-block{display:flex;flex-direction:column;min-height:280px;border:var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-card)}.matrix-block__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;font-family:var(--font-display);font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:var(--border)}.matrix-block__pct{font-size:1.25rem}.matrix-block__body{flex:1 1;padding:12px;overflow-y:auto;max-height:420px;font-family:var(--font-body)}.matrix-block--safe{background:#e8f1f2}.matrix-block--safe .matrix-block__head{background:var(--sage-green);color:var(--ink)}.matrix-block--fit{background:var(--mustard)}.matrix-block--fit .matrix-block__head{background:var(--ink);color:var(--white)}.matrix-block--reach{background:#e0ecff}.matrix-block--reach .matrix-block__head{background:var(--scholar-blue);color:var(--white)}.uni-card{margin-bottom:12px;padding:14px;background:var(--white);color:var(--ink);border:var(--border);border-radius:8px;box-shadow:3px 3px 0 var(--ink);will-change:transform,box-shadow;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1)}.uni-card:hover{transform:translate3d(-3px,-3px,0);box-shadow:6px 6px 0 var(--ink)}.uni-card:last-child{margin-bottom:0}.uni-card__rank{font-size:.7rem;color:var(--scholar-blue);margin-bottom:4px}.uni-card__rank,.uni-card__title{font-family:var(--font-display);font-weight:800}.uni-card__title{font-size:.95rem;margin:0 0 4px;line-height:1.2}.uni-card__school{font-size:.8rem;margin:0 0 10px;opacity:.85}.uni-card__metrics{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-bottom:10px}.metric{padding:8px;background:var(--canvas);color:var(--ink);border:2px solid var(--ink);border-radius:6px}.metric .tag--blue,.metric .tag--green{color:var(--spruce-green)}.metric strong{display:block;font-family:var(--font-display);font-size:1rem;margin-top:2px}.tag{display:inline-block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.tag--blue{color:var(--scholar-blue)}.tag--green{color:var(--sage-green)}.uni-card__why{font-size:.8rem;line-height:1.45;margin:0 0 10px}.uni-card__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.match-pct{font-family:var(--font-display);font-weight:800;font-size:1.1rem;color:var(--sage-green)}.result-card{margin-bottom:12px;padding:14px;border:var(--border);border-radius:8px;box-shadow:3px 3px 0 var(--ink)}.result-card,.side-summary{background:var(--white);color:var(--ink)}.side-summary{margin-top:20px;padding:20px;border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}.summary-list{display:grid;grid-gap:0;gap:0}.summary-item{display:flex;justify-content:space-between;padding:10px 0;font-family:var(--font-body);border-bottom:2px solid var(--ink)}.summary-item:last-child{border-bottom:none}.pill,.summary-item strong{font-family:var(--font-display)}.pill{display:inline-block;padding:4px 10px;font-weight:700;font-size:.65rem;text-transform:uppercase;border:2px solid var(--ink);border-radius:4px}.pill.safe{background:var(--sage-green);color:var(--ink)}.pill.fit{background:var(--mustard);color:var(--white)}.pill.reach{background:var(--scholar-blue);color:var(--white)}.pill.public{background:#d4e8ff;color:var(--spruce-green)}.pill.private{background:bisque;color:var(--spruce-green)}.meta-row{gap:6px;margin:8px 0}.card-actions,.meta-row{display:flex;flex-wrap:wrap}.card-actions{gap:8px}.grid-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:16px;gap:16px}.major-card,.tool-card,.university-card{padding:18px;background:var(--mustard);color:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);will-change:transform,box-shadow;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),background-color .3s cubic-bezier(.16,1,.3,1)}.major-card:hover,.tool-card:hover,.university-card:hover{transform:translate3d(-3px,-3px,0);box-shadow:8px 8px 0 var(--ink)}.major-card .summary-item span,.university-card .summary-item span{color:var(--sage-light);opacity:.95}.university-card .logo-box{min-width:48px;width:-moz-fit-content;width:fit-content;padding:0 8px;height:36px;display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:.65rem;background:var(--scholar-blue);color:var(--ink);border:var(--border);white-space:nowrap}.university-card .logo-box.private{background:var(--ink);color:var(--white)}.card-top{display:flex;justify-content:space-between;margin-bottom:10px}.list-frame{padding:16px;background:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}.toolbar{display:grid;grid-template-columns:1.2fr repeat(4,minmax(120px,1fr));grid-gap:10px;gap:10px;margin:16px 0}.recent-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-family:var(--font-body);font-weight:600;font-size:.75rem;background:var(--white);border:2px solid var(--ink);border-radius:6px;cursor:pointer;box-shadow:2px 2px 0 var(--ink);will-change:transform,box-shadow;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),background-color .2s cubic-bezier(.16,1,.3,1)}.recent-tag:hover{background:var(--mustard);color:var(--white);transform:translate3d(1px,1px,0);box-shadow:1px 1px 0 var(--ink)}.toolbar .chip{border:var(--border);background:var(--white);font-family:var(--font-display);font-weight:700;cursor:pointer}.toolbar .chip.is-active{background:var(--scholar-blue);color:var(--ink)}.modal{display:none;position:fixed;inset:0;z-index:200;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.5)}.modal.is-open{display:flex}.modal-card{width:min(640px,100%);background:var(--mustard);border:var(--border);border-radius:var(--radius);box-shadow:8px 8px 0 var(--ink);overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--ink);color:var(--white);font-family:var(--font-display);font-weight:800;text-transform:uppercase}.modal-body{padding:20px;max-height:65vh;overflow:auto;background:var(--white)}.compare-table{width:100%;border-collapse:collapse;font-family:var(--font-body)}.compare-table td,.compare-table th{border:2px solid var(--ink);padding:8px 10px;text-align:left}.compare-table th{background:var(--scholar-blue);color:var(--white);font-family:var(--font-display);text-transform:uppercase;font-size:.75rem}.compare-dock{display:none;position:fixed;right:16px;bottom:16px;width:260px;padding:16px;background:var(--mustard);color:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);z-index:90}.compare-dock .pill{background:var(--white);color:var(--ink);border:2px solid var(--ink)}.compare-dock.is-visible{display:block}.row-actions{display:flex;gap:8px;margin-top:10px}.dock-items{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.map-layout{display:grid;grid-template-columns:280px 1fr;grid-gap:16px;gap:16px;align-items:stretch;flex:1 1 auto;min-height:var(--map-block-height,360px);height:var(--map-block-height,auto)}.map-sidebar{display:flex;flex-direction:column;gap:12px;min-height:0;height:100%;padding:14px;background:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:3px 3px 0 var(--ink);overflow:hidden}.map-sidebar__head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}.map-sidebar__head h2{margin:0;font-size:1rem;text-transform:uppercase}.map-list{flex:1 1;min-height:0;overflow-y:auto;padding-right:4px}.map-info-panel{flex-shrink:0;padding:14px;background:var(--mustard);color:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:3px 3px 0 var(--ink);position:relative;overflow-y:auto;max-height:100%}.map-info-panel h3{margin:0 28px 8px 0;padding-right:4px;color:var(--white)}.map-info-panel p{margin:0 0 12px;color:var(--white);opacity:.95}.map-info-panel .summary-list{margin:12px 0}.map-info-panel .summary-item{border-bottom-color:hsla(0,0%,100%,.35)}.map-info-panel .summary-item strong{color:var(--white)}.map-info-panel .summary-item span{color:var(--sage-light);opacity:.95}.close-info-btn{position:absolute;top:12px;right:12px;background:var(--white);color:var(--ink);border:2px solid var(--ink);border-radius:4px;width:24px;height:24px;display:grid;place-items:center;font-size:.85rem;font-weight:800;cursor:pointer;box-shadow:2px 2px 0 var(--ink);transition:transform .08s,box-shadow .08s;z-index:10}.close-info-btn:hover{background:var(--sage-green);transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}.close-info-btn:active{transform:translate(2px,2px);box-shadow:none}.map-canvas-wrap{display:flex;flex-direction:column;align-self:stretch}#map,.map-canvas-wrap{min-height:450px;height:100%}#map{flex:1 1 auto;width:100%;border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}#map .vietmapgl-map,#map.vietmapgl-map,.map-canvas-wrap .vietmapgl-map{width:100%!important;height:100%!important;min-height:450px}#map .vietmapgl-canvas-container,#map .vietmapgl-canvas-container canvas,.map-canvas-wrap .vietmapgl-canvas-container,.map-canvas-wrap .vietmapgl-canvas-container canvas{width:100%!important;height:100%!important}#map .vietmapgl-ctrl-attrib,#map .vietmapgl-ctrl-logo{font-size:11px}.map-panel{padding:14px;background:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:3px 3px 0 var(--ink)}.map-list-item{padding:10px;margin-bottom:6px;font-weight:600;background:var(--canvas);border:2px solid var(--ink);border-radius:6px;cursor:pointer}.map-list-item.is-active,.map-list-item:hover{background:var(--scholar-blue);color:var(--ink)}.map-sovereignty-note{padding:8px 12px;font-family:var(--font-body);font-size:12px;font-weight:600;background:var(--mustard);color:var(--white);border:3px solid var(--ink);border-radius:8px;box-shadow:3px 3px 0 var(--ink);line-height:1.35;max-width:260px}.major-layout{display:grid;grid-template-columns:240px 1fr;grid-gap:20px;gap:20px}.major-top-panel{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;background:none;border:none;border-radius:0;box-shadow:none;overflow:visible}.major-top-panel__quiz{display:flex;min-height:100%}.major-top-panel__quiz .quiz-box{flex:1 1;margin-bottom:0}.majors-catalog{width:100%;margin-top:24px}.majors-grid-wrap--collapsed{position:relative;overflow:hidden}.majors-grid-wrap--collapsed:after{content:"";position:absolute;left:0;right:0;bottom:0;height:48px;background:linear-gradient(to bottom,transparent,var(--canvas));pointer-events:none}.majors-show-more-wrap{display:flex;justify-content:center;margin-top:20px}.majors-show-more-wrap.is-hidden{display:none}.majors-show-more{min-width:160px}.filter-panel{padding:18px;background:var(--white);height:-moz-fit-content;height:fit-content}.filter-panel,.quiz-box{border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}.quiz-box{margin-bottom:20px;padding:20px;background:var(--scholar-blue);color:var(--ink)}.quiz-box h3,.quiz-box p{color:inherit}.quiz-option{display:block;width:100%;margin:8px 0;padding:12px;text-align:left;font-family:var(--font-body);font-weight:600;background:var(--white);color:var(--ink);border:var(--border);border-radius:8px;box-shadow:3px 3px 0 var(--ink)}.quiz-option:hover{background:var(--mustard);color:var(--white);transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.trend-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.trend-card{background:var(--white)}.load-more-btn{padding:12px 24px;font-family:var(--font-display);font-weight:800;text-transform:uppercase;background:var(--mustard);color:var(--white);border:var(--border);border-radius:8px;box-shadow:var(--shadow-btn)}.empty-state{padding:24px;text-align:center;font-family:var(--font-body);background:var(--white);border:2px dashed var(--ink);border-radius:8px}.toast{position:fixed;right:16px;bottom:16px;max-width:320px;padding:14px 18px;font-family:var(--font-display);font-weight:700;background:var(--mustard);color:var(--white);border:var(--border);border-radius:8px;box-shadow:var(--shadow-card);z-index:300;opacity:0;transform:translateY(12px);transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:translateY(0)}.recommend-box,.tool-card{padding:14px;margin-bottom:12px;background:var(--mustard);color:var(--white);border:var(--border);border-radius:8px}body.is-exiting{opacity:0;transition:opacity .15s}#themeToggle{margin-left:8px}#match .smart-card{background:var(--spruce-green);color:var(--white)}#match .smart-card .field label:not(.chip),#match .smart-card .field-label{color:var(--white)}#match .smart-card .score-total{background:var(--sage-light);color:var(--spruce-green);border:var(--border)}.skeleton-card{padding:10px;margin-bottom:6px;background:var(--white);border:2px solid var(--ink);border-radius:6px;box-shadow:2px 2px 0 var(--ink);pointer-events:none}.skeleton-line{height:14px;background:#e2e8f0;margin-bottom:8px;border-radius:3px;animation:skeleton-pulse 1.2s ease-in-out infinite}.skeleton-line--title{width:75%}.skeleton-pills{display:flex;gap:6px}.skeleton-pill{width:60px;height:18px;background:#e2e8f0;border-radius:4px;animation:skeleton-pulse 1.2s ease-in-out infinite}.skeleton-pill:nth-child(2){width:45px}.skeleton-pill:nth-child(3){width:70px}@keyframes skeleton-pulse{0%{opacity:.6}50%{opacity:1;background-color:#cbd5e1}to{opacity:.6}}.fade-in{opacity:0;animation:fadeInEffect .4s ease-out forwards}@keyframes fadeInEffect{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.skeleton-result-card{margin-bottom:12px;padding:14px;background:var(--white);border:2px solid var(--ink);border-radius:8px;box-shadow:3px 3px 0 var(--ink);pointer-events:none}.logout-overlay{position:fixed;inset:0;background:rgba(255,210,63,.98);z-index:9999;display:flex;align-items:center;justify-content:center;animation:overlayFadeIn .25s cubic-bezier(.16,1,.3,1) forwards}.logout-content{background:var(--white);color:var(--ink);border:4px solid var(--ink);padding:40px;border-radius:16px;box-shadow:12px 12px 0 var(--ink);text-align:center;max-width:450px;width:90%;transform:scale(.9);animation:contentScaleUp .3s cubic-bezier(.34,1.56,.64,1) forwards}.logout-glitch{font-size:2.2rem;font-weight:900;color:#ef4444;text-shadow:3px 3px 0 #00f0ff,-3px -3px 0 #f0f;margin-bottom:12px;animation:textGlitch .15s infinite}.logout-glitch,.logout-text{font-family:var(--font-display);text-transform:uppercase}.logout-text{font-size:1.3rem;font-weight:800;margin-bottom:16px;color:var(--ink)}.logout-emoji{font-size:3rem;margin-bottom:16px;display:inline-block;animation:emojiBounce .5s infinite alternate}.logout-sub{font-family:var(--font-body);font-size:.9rem;font-weight:700;color:#4b5563;text-transform:uppercase;letter-spacing:.05em}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes contentScaleUp{0%{transform:scale(.9)}to{transform:scale(1)}}@keyframes emojiBounce{0%{transform:translateY(0) rotate(-10deg)}to{transform:translateY(-15px) rotate(10deg)}}@keyframes textGlitch{0%{text-shadow:3px 3px 0 #00f0ff,-3px -3px 0 #f0f}50%{text-shadow:-2px 3px 0 #00f0ff,3px -2px 0 #f0f}to{text-shadow:3px -3px 0 #00f0ff,-3px 3px 0 #f0f}}.chat-page-layout{display:grid;grid-template-columns:1fr 280px;grid-gap:20px;gap:20px;margin-top:24px}@media (max-width:992px){.chat-page-layout{grid-template-columns:1fr}}.chat-main-card{display:flex;flex-direction:column;height:600px;background:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow:hidden}.chat-header-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--spruce-green);color:var(--white);border-bottom:var(--border)}.chat-header-title{font-family:var(--font-display);font-weight:800;font-size:1.1rem;text-transform:uppercase}.chat-messages-container{flex:1 1;overflow-y:auto;padding:20px;background:#fbfbfb;display:flex;flex-direction:column;gap:16px}.chat-message-item{display:flex;gap:12px;max-width:80%;position:relative;animation:messageSlideIn .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-message-item.me{align-self:flex-end;flex-direction:row-reverse}.chat-message-item.other{align-self:flex-start}.chat-avatar-wrapper{flex-shrink:0;display:flex;align-items:flex-end}.chat-avatar{width:38px;height:38px;border-radius:50%;border:2px solid var(--ink);background:#eee;object-fit:cover}.chat-bubble-wrapper{display:flex;flex-direction:column;position:relative}.chat-message-item.me .chat-bubble-wrapper{align-items:flex-end}.chat-message-item.other .chat-bubble-wrapper{align-items:flex-start}.chat-message-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:.75rem}.chat-message-meta .username{font-family:var(--font-display);font-weight:800;color:var(--ink)}.chat-message-meta .time{color:#666;font-weight:500}.chat-bubble{background:var(--white);color:var(--ink);border:3px solid var(--ink);padding:10px 14px;border-radius:14px;font-size:.9rem;line-height:1.45;box-shadow:3px 3px 0 var(--ink);position:relative;word-break:break-word;white-space:pre-wrap;transition:transform .2s}.chat-message-item.me .chat-bubble{background:var(--sage-green);border-bottom-right-radius:4px}.chat-message-item.other .chat-bubble{background:var(--white);border-bottom-left-radius:4px}.chat-attachment-img{max-width:100%;max-height:200px;border-radius:8px;border:2px solid var(--ink);margin-top:8px;display:block}.chat-reply-quote{background:rgba(0,0,0,.05);border-left:4px solid var(--ink);padding:6px 10px;margin-bottom:8px;border-radius:4px;font-size:.8rem;opacity:.85;cursor:pointer}.chat-message-item.me .chat-reply-quote{background:rgba(0,0,0,.08)}.chat-reply-quote-user{font-family:var(--font-display);font-weight:800;font-size:.75rem;margin-bottom:2px}.chat-edited-label{font-size:.65rem;font-style:italic;color:#666;margin-left:6px}.chat-bubble.recalled{background:#f1f1f1!important;color:#888!important;border:2.5px dashed #888!important;box-shadow:none!important;font-style:italic}.chat-reactions-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.chat-reaction-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;font-size:.75rem;background:var(--white);border:1.5px solid var(--ink);border-radius:10px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:700;transition:transform .1s,background-color .1s}.chat-reaction-badge:hover{transform:scale(1.08);background:#f0f0f0}.chat-reaction-badge.active{background:var(--mustard)}.chat-bubble-action-trigger{position:absolute;top:-24px;display:none;z-index:10;background:var(--white);border:2px solid var(--ink);border-radius:8px;box-shadow:2px 2px 0 var(--ink);padding:4px 8px;gap:6px;align-items:center;white-space:nowrap}.chat-message-item.me .chat-bubble-action-trigger{right:10px}.chat-message-item.other .chat-bubble-action-trigger{left:10px}.chat-message-item:hover .chat-bubble-action-trigger{display:flex}.chat-bubble-action-btn{background:transparent;border:none;padding:2px 6px;font-size:.75rem;font-family:var(--font-display);font-weight:700;cursor:pointer;border-radius:4px;transition:background-color .1s;white-space:nowrap}.chat-bubble-action-btn:hover{background:#eee}.chat-bubble-action-btn.delete-btn{color:#ef4444}.chat-reaction-picker{display:flex;gap:4px;border-right:1px solid #ddd;padding-right:4px;margin-right:4px}.chat-reaction-picker-btn{background:transparent;border:none;font-size:.9rem;padding:0 4px;cursor:pointer;transition:transform .1s}.chat-reaction-picker-btn:hover{transform:scale(1.3)}.chat-input-bar{padding:16px 20px;background:var(--white);border-top:var(--border);display:flex;flex-direction:column;gap:8px}.chat-input-row{display:flex;align-items:flex-end;gap:8px}.chat-input-actions{display:flex;align-items:center;gap:8px}.chat-action-btn{background:var(--white);border:2px solid var(--ink);border-radius:8px;box-shadow:2px 2px 0 var(--ink);width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:transform .1s,box-shadow .1s}.chat-action-btn:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink);background:#f5f5f5}.chat-input-textarea{flex:1 1;border:3px solid var(--ink);border-radius:10px;padding:10px 12px;font-family:var(--font-body);font-size:.9rem;resize:none;min-height:42px;max-height:120px;line-height:1.4;outline:none}.chat-input-textarea:focus{border-color:var(--scholar-blue)}.chat-reply-preview-bar{display:flex;align-items:center;justify-content:space-between;background:#e8f1f2;border:2px solid var(--ink);border-radius:8px;padding:6px 12px;font-size:.8rem}.chat-reply-preview-text{font-family:var(--font-body);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80%}.chat-reply-preview-text strong{font-family:var(--font-display)}.chat-reply-preview-close{background:transparent;border:none;font-weight:700;cursor:pointer;font-size:.9rem}.chat-edit-preview-bar{display:flex;align-items:center;justify-content:space-between;background:#fff8e1;border:2px solid var(--ink);border-radius:8px;padding:6px 12px;font-size:.8rem}.emoji-picker-dropdown{position:absolute;bottom:80px;left:20px;z-index:100;background:var(--white);border:3px solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink);padding:10px;width:240px}.emoji-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:8px;gap:8px}.emoji-grid-btn{background:transparent;border:none;font-size:1.3rem;cursor:pointer;padding:4px;border-radius:4px}.emoji-grid-btn:hover{background:#f0f0f0}.chat-online-panel{background:var(--white);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:20px;display:flex;flex-direction:column;height:600px}.chat-online-panel h3{font-size:1rem;text-transform:uppercase;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--ink);display:flex;align-items:center;gap:6px}.chat-online-list{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.chat-online-user{display:flex;align-items:center;gap:10px}.chat-online-avatar{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--ink)}.chat-online-name-col{display:flex;flex-direction:column}.chat-online-username{font-size:.85rem;font-weight:700;font-family:var(--font-body)}.chat-online-status-text{font-size:.7rem;color:#666;display:flex;align-items:center;gap:4px}.chat-online-dot{width:8px;height:8px;border-radius:50%;display:inline-block;border:1px solid var(--ink)}.chat-online-dot.online{background:#38b000}.chat-online-dot.away{background:#ffd23f}.chat-online-dot.offline{background:#9ca3af}.chat-typing-indicator-bar{font-size:.75rem;color:#666;font-style:italic;min-height:18px;padding-left:20px;display:flex;align-items:center;gap:6px}.typing-dot{width:4px;height:4px;background-color:#666;border-radius:50%;display:inline-block;animation:typingBounce 1.4s infinite both}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.image-upload-popover{position:absolute;bottom:80px;left:60px;z-index:100;background:var(--white);border:3px solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink);padding:12px;width:280px;display:flex;flex-direction:column;gap:8px}.image-upload-popover input{padding:6px 8px;border:2px solid var(--ink);border-radius:6px;font-size:.8rem;width:100%}.vanta-birds-bg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;background:#f2f6ff;overflow:hidden}.vanta-birds-bg canvas{display:block;width:100%!important;height:100%!important;pointer-events:none!important}@media (prefers-reduced-motion:reduce){.vanta-birds-bg{background:linear-gradient(165deg,#dceef6,#f2f6ff 50%,#e8f4fa)}}.bg-animations{--parallax-x:0px;--parallax-y:0px;position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.bg-animations__mesh{position:absolute;inset:-20%;background:radial-gradient(ellipse 55% 45% at 15% 20%,rgba(151,202,219,.45) 0,transparent 70%),radial-gradient(ellipse 50% 40% at 85% 15%,rgba(1,138,190,.2) 0,transparent 65%),radial-gradient(ellipse 60% 50% at 70% 80%,rgba(151,202,219,.35) 0,transparent 70%),radial-gradient(ellipse 45% 40% at 25% 75%,rgba(214,232,238,.55) 0,transparent 65%);animation:bg-mesh-drift 18s ease-in-out infinite alternate;opacity:.85}.bg-animations__orbs{position:absolute;inset:0;transform:translate3d(var(--parallax-x),var(--parallax-y),0);transition:transform .35s ease-out}.bg-animations__orb{position:absolute;border-radius:50%;filter:blur(42px);opacity:.55;will-change:transform}.bg-animations__orb--1{width:280px;height:280px;top:8%;left:-4%;background:rgba(151,202,219,.65);animation:bg-orb-float-1 22s ease-in-out infinite}.bg-animations__orb--2{width:220px;height:220px;top:55%;right:-2%;background:rgba(1,138,190,.28);animation:bg-orb-float-2 26s ease-in-out infinite}.bg-animations__orb--3{width:180px;height:180px;bottom:12%;left:18%;background:rgba(214,232,238,.75);animation:bg-orb-float-3 20s ease-in-out infinite}.bg-animations__orb--4{width:140px;height:140px;top:32%;right:22%;background:rgba(1,138,190,.22);animation:bg-orb-float-4 24s ease-in-out infinite}.bg-animations__shapes{position:absolute;inset:0;transform:translate3d(calc(var(--parallax-x) * -.4),calc(var(--parallax-y) * -.4),0);transition:transform .45s ease-out}.bg-animations__shape{position:absolute;border:2px solid rgba(1,138,190,.22);opacity:.7}.bg-animations__shape--ring{width:72px;height:72px;top:18%;right:12%;border-radius:50%;animation:bg-shape-spin 28s linear infinite}.bg-animations__shape--plus{width:36px;height:36px;top:68%;left:10%;border:none;background:linear-gradient(rgba(1,138,190,.3),rgba(1,138,190,.3)) 50%/2px 100% no-repeat,linear-gradient(rgba(1,138,190,.3),rgba(1,138,190,.3)) 50%/100% 2px no-repeat;animation:bg-shape-float 16s ease-in-out infinite}.bg-animations__shape--tri{width:0;height:0;top:42%;left:6%;border:22px solid transparent;border-top:none;border-bottom:38px solid rgba(151,202,219,.35);animation:bg-shape-float 19s ease-in-out infinite reverse}.bg-animations__shape--dot{width:14px;height:14px;bottom:22%;right:18%;border-radius:50%;background:rgba(1,138,190,.35);border:none;animation:bg-shape-pulse 3.5s ease-in-out infinite}.bg-animations__sparkles{position:absolute;inset:0}.bg-animations__sparkle{position:absolute;width:4px;height:4px;border-radius:50%;background:rgba(1,138,190,.45);top:calc(8% + (var(--i) * 7.2%));left:calc(6% + (var(--i) * 7.5%));animation:bg-sparkle-twinkle calc(2.5s + (var(--i) * .35s)) ease-in-out infinite;animation-delay:calc(var(--i) * -.45s)}@keyframes bg-mesh-drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(2%,-1.5%,0) scale(1.04)}}@keyframes bg-orb-float-1{0%,to{transform:translateZ(0)}50%{transform:translate3d(40px,30px,0)}}@keyframes bg-orb-float-2{0%,to{transform:translateZ(0)}50%{transform:translate3d(-35px,-25px,0)}}@keyframes bg-orb-float-3{0%,to{transform:translateZ(0)}50%{transform:translate3d(25px,-35px,0)}}@keyframes bg-orb-float-4{0%,to{transform:translateZ(0)}50%{transform:translate3d(-20px,28px,0)}}@keyframes bg-shape-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes bg-shape-float{0%,to{transform:translateZ(0) rotate(0deg)}50%{transform:translate3d(0,-18px,0) rotate(8deg)}}@keyframes bg-shape-pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.35);opacity:.9}}@keyframes bg-sparkle-twinkle{0%,to{opacity:.15;transform:scale(.8)}50%{opacity:.85;transform:scale(1.2)}}@media (prefers-reduced-motion:reduce){.bg-animations__mesh,.bg-animations__orb,.bg-animations__shape,.bg-animations__sparkle{animation:none!important}.bg-animations__orbs,.bg-animations__shapes{transform:none!important}}body.has-cursor-follower,body.has-cursor-follower *{cursor:none!important}body.has-cursor-follower--text input,body.has-cursor-follower--text select,body.has-cursor-follower--text textarea{cursor:text!important}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;opacity:0;will-change:transform,opacity;transition:opacity .2s ease}.cursor-dot{width:5px;height:5px;margin-left:-2.5px;margin-top:-2.5px;background:#7eb8d4;border-radius:50%;box-shadow:0 0 6px rgba(151,202,219,.85)}.cursor-ring{width:26px;height:26px;margin-left:-13px;margin-top:-13px;border:2px solid rgba(151,202,219,.95);border-radius:50%;background:rgba(214,232,238,.35);box-shadow:0 0 0 1px rgba(1,138,190,.08);transition:width .22s ease,height .22s ease,margin .22s ease,background .22s ease,border-color .22s ease,opacity .2s ease}.cursor-ring--hover{width:34px;height:34px;margin-left:-17px;margin-top:-17px;border-color:rgba(1,138,190,.55);background:rgba(151,202,219,.38)}@media (prefers-reduced-motion:reduce){.cursor-dot,.cursor-ring{display:none!important}body.has-cursor-follower,body.has-cursor-follower *{cursor:auto!important}}@media (hover:none),(pointer:coarse){.cursor-dot,.cursor-ring{display:none!important}body.has-cursor-follower,body.has-cursor-follower *{cursor:auto!important}}.admission-timeline-section{padding-top:8px;padding-bottom:48px}.timeline-compact-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.timeline-compact-header h2{margin:0;font-size:clamp(1.35rem,2.5vw,1.75rem)}.timeline-compact-progress{display:flex;align-items:center;gap:10px;flex-shrink:0}.timeline-compact-progress__bar{width:88px;height:8px;background:var(--white);border:2px solid var(--ink);border-radius:999px;overflow:hidden}.timeline-compact-progress__fill{display:block;height:100%;background:linear-gradient(90deg,var(--sage-green),var(--spruce-green));border-radius:999px;transition:width .35s ease}.timeline-compact-progress__text{font-family:var(--font-display);font-size:.78rem;font-weight:800;color:var(--spruce-green);min-width:2.5rem}.timeline-compact-wrap{background:linear-gradient(165deg,#dceef6 0,#f4fafc 45%,var(--white) 100%);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:22px 20px 16px}.timeline-rail{position:relative;margin-bottom:10px;padding:0 4px}.timeline-rail__line{position:absolute;left:calc(100% / 14);right:calc(100% / 14);top:calc(48px + 10px + 14px);height:0;border-top:2px dotted rgba(1,138,190,.5);pointer-events:none;z-index:0}.timeline-rail__steps{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;position:relative;z-index:1}.timeline-step{display:flex;flex-direction:column;align-items:center;gap:10px;padding:4px 2px 8px;background:none;border:none;cursor:pointer;min-width:0}.timeline-step__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;color:var(--spruce-green);background:var(--white);border:2px solid rgba(1,138,190,.28);border-radius:14px;box-shadow:0 2px 0 rgba(1,138,190,.08);transition:transform .22s cubic-bezier(.16,1,.3,1),background .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease}.timeline-svg-icon{display:block;flex-shrink:0}.timeline-step__num{display:flex;align-items:center;justify-content:center;width:28px;height:28px;font-family:var(--font-display);font-size:.78rem;font-weight:800;color:var(--white);background:var(--spruce-green);border:2.5px solid var(--ink);border-radius:50%;transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease}.timeline-step:hover .timeline-step__icon{border-color:var(--spruce-green);transform:translateY(-2px);box-shadow:0 4px 0 rgba(1,138,190,.15)}.timeline-step--done .timeline-step__icon{opacity:.5;color:#64748b}.timeline-step--done .timeline-step__num{background:#94a3b8}.timeline-step--current:not(.is-active) .timeline-step__num{box-shadow:0 0 0 3px rgba(151,202,219,.9)}.timeline-step.is-active .timeline-step__icon{background:var(--sage-green);border-color:var(--ink);color:var(--white);transform:translateY(-3px) scale(1.04);box-shadow:3px 3px 0 var(--ink)}.timeline-step.is-active .timeline-step__num{background:#ffdd53;color:var(--ink);transform:scale(1.1)}.timeline-controls{display:none;align-items:center;justify-content:center;gap:14px;margin-bottom:12px}.timeline-controls__indicator{font-family:var(--font-display);font-size:.8rem;font-weight:800;color:var(--spruce-green);min-width:3rem;text-align:center}.timeline-strip-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:1rem;background:var(--white);border:2px solid var(--ink);border-radius:8px;box-shadow:2px 2px 0 var(--ink);cursor:pointer;transition:transform .15s ease}.timeline-strip-btn:hover:not(:disabled){transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}.timeline-strip-btn:disabled{opacity:.35;cursor:not-allowed}.timeline-detail{display:grid;grid-template-columns:60px 1fr;grid-gap:16px;gap:16px;align-items:start;padding:16px 18px;background:var(--white);border:2.5px solid rgba(1,138,190,.2);border-radius:14px;animation:timeline-detail-in .28s ease}@keyframes timeline-detail-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.timeline-detail--current{border-color:var(--spruce-green);box-shadow:4px 4px 0 rgba(1,138,190,.18)}.timeline-detail--upcoming{border-color:rgba(1,138,190,.35)}.timeline-detail__icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;color:var(--white);background:linear-gradient(145deg,var(--spruce-green),#006d9c);border:2.5px solid var(--ink);border-radius:16px;box-shadow:3px 3px 0 var(--ink)}.timeline-detail__meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:6px}.timeline-detail__step{font-size:.68rem;letter-spacing:.06em;color:var(--spruce-green)}.timeline-detail__badge,.timeline-detail__step{font-family:var(--font-display);font-weight:800;text-transform:uppercase}.timeline-detail__badge{padding:3px 9px;font-size:.62rem;border:1.5px solid var(--ink);border-radius:999px}.timeline-detail__badge--current{background:#ffdd53}.timeline-detail__badge--done{background:var(--canvas)}.timeline-detail__badge--upcoming{background:var(--sage-green);color:var(--ink)}.timeline-detail__date{margin:0 0 8px;font-family:var(--font-display);font-size:1.05rem;line-height:1.35;color:var(--spruce-green)}.timeline-detail__desc{margin:0;font-size:.9rem;line-height:1.55;color:var(--ink)}.timeline-detail__desc strong{font-weight:800;color:var(--spruce-green)}.timeline-disclaimer{margin:12px 0 0;font-size:.72rem;color:var(--ink);opacity:.6;text-align:center}@media (max-width:900px){.timeline-rail__steps{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;gap:0;padding-bottom:4px}.timeline-rail__steps::-webkit-scrollbar{display:none}.timeline-rail__line{display:none}.timeline-step{flex-grow:0;flex-shrink:0;flex-basis:calc(100% / 4.2);min-width:76px;scroll-snap-align:center}.timeline-controls{display:flex}}@media (max-width:640px){.timeline-compact-header{flex-direction:column;align-items:flex-start}.timeline-compact-wrap{padding:16px 12px 14px}.timeline-step{flex:0 0 72px;min-width:72px}.timeline-step__icon{width:44px;height:44px;border-radius:12px}.timeline-detail{grid-template-columns:1fr;gap:12px}.timeline-detail__icon{width:48px;height:48px}}#match .section-header{margin-bottom:24px}.results-layout .aspiration-matrix-wrap,.results-sidebar .side-summary{margin-top:0}.results-sidebar .results-footer{display:flex;flex-direction:column;gap:12px;margin-top:16px}.results-sidebar .results-footer .btn-ghost,.results-sidebar .results-footer .btn-secondary{width:100%}.matrix-intro{margin-bottom:16px;padding:14px 18px;font-family:var(--font-body);background:var(--canvas);color:var(--ink);border:var(--border);border-radius:8px}.news-page{padding-bottom:60px}.news-layout-container{display:grid;grid-template-columns:2fr 1fr;grid-gap:24px;gap:24px;align-items:start}.news-post-card:hover{transform:translate3d(-4px,-4px,0);box-shadow:10px 10px 0 #000!important}@media (max-width:992px){.news-layout-container,.news-post-card{grid-template-columns:1fr!important}.news-image-wrap{height:180px!important}}.brutal-sticker{display:flex;align-items:center;justify-content:center;width:64px;height:64px;font-size:2.2rem;background:var(--bg-color);border:3px solid #000;border-radius:12px;box-shadow:4px 4px 0 #000;cursor:pointer;transform:rotate(var(--rotate-deg));-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:floatSticker 3s ease-in-out infinite;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s,background-color .2s;position:absolute}.brutal-sticker:hover{transform:scale(1.2) rotate(calc(var(--rotate-deg) * 1.5))!important;box-shadow:6px 6px 0 #000;background:var(--mustard)!important}.sticker-tooltip{position:absolute;bottom:-36px;left:50%;transform:translateX(-50%) scale(0);background:#000;color:#fff;font-family:var(--font-display);font-weight:800;font-size:.75rem;padding:4px 8px;border-radius:6px;white-space:nowrap;pointer-events:none;transition:transform .15s cubic-bezier(.175,.885,.32,1.275);box-shadow:2px 2px 0 var(--mustard);z-index:50}.brutal-sticker:hover .sticker-tooltip{transform:translateX(-50%) scale(1)}@keyframes floatSticker{0%,to{transform:translateY(0) rotate(var(--rotate-deg))}50%{transform:translateY(-12px) rotate(calc(var(--rotate-deg) + 3deg))}}@media (max-width:1250px){.brutal-sticker{display:none!important}}.facebook-timeline-wrapper::-webkit-scrollbar{width:12px}.facebook-timeline-wrapper::-webkit-scrollbar-track{background:#fff;border-left:3px solid #000}.facebook-timeline-wrapper::-webkit-scrollbar-thumb{background:#ffd23f;border:2.5px solid #000;border-radius:0;box-shadow:none}.facebook-timeline-wrapper::-webkit-scrollbar-thumb:hover{background:#ff5964}@media (max-width:1024px){.aspiration-matrix{grid-template-columns:1fr}.matrix-block{min-height:auto}.matrix-block--fit{order:-1}.steps,.wizard-stepper{grid-template-columns:repeat(2,1fr)}.form-grid,.major-layout,.major-top-panel,.toolbar,.trend-grid{grid-template-columns:1fr}}@media (max-width:768px){.map-layout{grid-template-columns:1fr;height:auto}.page-map main{height:auto;max-height:none}.map-page.section,.page-map main{overflow:visible}.map-page .container{height:auto}.map-sidebar{max-height:min(28dvh,280px)}.map-canvas-wrap{min-height:min(28dvh,280px);height:min(28dvh,280px)}.page-header{padding:24px 0 8px}.page-header+.section{padding-top:12px}.section{padding:24px 0}}@media (max-width:520px){.hero-headline{font-size:1.65rem}.steps,.uni-card__metrics,.wizard-stepper{grid-template-columns:1fr}}