/* References, contact and access. Interaction states match the original scripts. */
.references-page .hero,.contact-page .hero{padding-block:72px 56px}.hero .eyebrow{margin-bottom:28px}.references-page .hero-grid{display:block;max-width:860px}.references-page h1{max-width:850px}.references-page .hero-meta{display:flex;flex-wrap:wrap;gap:20px;font-size:12px;color:var(--muted);margin-top:24px}.references-page .section{padding-block:48px}.references-page .section-head{display:flex;gap:40px;align-items:flex-start;margin-bottom:32px}.section-no{min-width:100px}.references-page .toolbar{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter-btn,.expand-all,.copy-btn{min-height:44px;padding:10px 15px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:11px}.filter-btn.is-active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.ref-card{border-top:1px solid var(--line);scroll-margin-top:110px}.ref-head{width:100%;display:flex;align-items:center;gap:24px;padding:28px 0;border:0;background:transparent;color:var(--ink);text-align:start}.ref-no{font-size:12px;color:var(--muted);width:40px;flex-shrink:0}.ref-main{flex:1;min-width:0}.ref-head h2{font-size:23px;margin-bottom:10px}.professor-info{font-size:13px;color:var(--muted)}.ref-toggle{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:16px}.plus{font-size:24px;color:var(--accent)}.letter-wrap{display:none}.ref-card.open .letter-wrap{display:block}.ref-card.open .plus{transform:rotate(45deg)}.letter-inner{padding:12px 0 36px;margin-inline:64px;max-width:850px}.letter-text{font-size:15px;line-height:1.95}.letter-text p{margin-bottom:22px}.roles{margin-top:10px}.school-kicker{font-size:10px;color:var(--muted);margin-bottom:6px}.reference-network{margin-top:28px;display:flex;gap:8px;flex-wrap:wrap}.reference-network button{min-height:44px;border:1px solid var(--line);padding:8px 12px;background:transparent;color:var(--ink);font-size:11px}.reference-network button:hover{border-color:var(--ink)}.reference-network .is-active{color:var(--accent)}.ref-card.is-highlight{border-top-color:var(--accent)}
.contact-page .email-hero{display:flex;align-items:center;gap:24px;margin-top:32px;flex-wrap:wrap}.email-address{font-size:clamp(21px,3vw,34px);letter-spacing:-.025em;overflow-wrap:anywhere}.contact-page .contact-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:64px;padding-bottom:64px}.composer{border-top:1px solid var(--line);padding-top:28px}.composer-head{margin-bottom:28px}.composer-head h2{font-size:27px}.composer-head>span,.micro{font-size:12px;color:var(--muted)}.send-row{margin-top:24px;display:grid;gap:20px}.note{padding-block:24px;border-top:1px solid var(--line)}.note h3{margin-top:20px;line-height:1.4}.note p{font-size:14px;line-height:1.8;color:var(--muted)}.channels a{display:flex;justify-content:space-between;padding-block:10px;font-size:13px;border-top:1px solid var(--line)}.toast{display:none;position:fixed;bottom:24px;right:24px;padding:16px 24px;color:var(--bg);background:var(--ink);font-size:12px;z-index:80}.toast.show{display:block}
.vault-page .page{display:grid;grid-template-columns:1fr 1.25fr;gap:64px;padding-block:76px}.vault-page .intro p{color:var(--muted);font-size:16px;max-width:360px}.vault-page .intro .eyebrow{margin-bottom:24px}.vault-card{position:relative;border-top:1px solid var(--line);padding-top:28px;min-width:0}.card-head{display:flex;gap:20px;justify-content:space-between;margin-bottom:28px}.card-head h2{font-size:27px;margin-block:16px}.card-head p{font-size:14px;color:var(--muted)}.access-badge{font-size:10px;color:var(--muted);align-self:flex-start}.state-label,.mini-status,.denied-badge{font-size:11px;color:var(--muted)}.login-grid{display:grid;gap:22px}.auth-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}.console-wrap,.request-shell,.result-overlay,.request-success{display:none}.console-wrap.open,.request-shell.open,.request-success.show{display:block}.console-wrap{margin-top:24px;padding:20px;background:var(--surface);font-size:12px}.console-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px;color:var(--muted)}.console-live{display:none}.request-panel{padding-top:28px;margin-top:28px;border-top:1px solid var(--line)}.request-heading h3{margin-block:16px}.request-heading p{color:var(--muted);font-size:14px}.request-panel .form-grid{gap:18px}.submit-request{margin-top:24px;width:100%;justify-content:space-between}.request-success{margin-top:20px;padding:16px;background:var(--surface);font-size:13px}.request-success p{margin-bottom:0}.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;opacity:0}.result-overlay.show{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;background:var(--bg);border:1px solid var(--line);padding:32px}.result-card{text-align:center}.result-icon{color:var(--olive);font-size:36px}.small{font-size:11px;color:var(--muted);margin-block:16px}.page-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:24px}.private-page{min-height:100vh;display:grid;place-items:center}.private-page #message{padding:24px;color:var(--muted)}.error-page{min-height:100vh;display:grid;place-content:center}.error-page main{width:min(700px,calc(100% - 40px));margin:auto}.error-code{font-size:11px;color:var(--accent);margin-bottom:24px}
@media(max-width:760px){.references-page .hero,.contact-page .hero{padding-block:44px 36px}.references-page .section-head{flex-direction:column;gap:16px}.ref-head{gap:14px;padding-block:24px;align-items:flex-start}.ref-no{width:22px}.ref-head h2{font-size:19px}.ref-toggle .toggle-label{display:none}.letter-inner{margin-inline:0;padding-bottom:28px}.letter-text{font-size:14px}.roles{gap:5px}.role-chip{font-size:9px}.contact-page .contact-grid{grid-template-columns:1fr;gap:32px}.vault-page .page{grid-template-columns:1fr;gap:36px;padding-block:44px}.vault-page .intro p{max-width:100%}.auth-actions{flex-wrap:wrap}.page-foot{font-size:10px}.contact-page .email-hero{gap:16px}}

.ref-main>p{font-size:14px;line-height:1.85;max-width:640px;margin-top:16px}.application{font-size:11px;color:var(--muted);line-height:1.8;margin-top:14px}.application .code{display:block;font-size:9px;letter-spacing:.06em;margin-bottom:6px}.school-kicker{display:block}.ref-toggle{flex-shrink:0}

.private-page main{width:min(680px,calc(100% - 40px));margin:auto;padding-block:56px}.private-page main .eyebrow{margin-bottom:24px}.private-page main p{color:var(--muted)}

.ref-main .application span{margin-inline-end:6px}.ref-main .intro{font-size:14px;line-height:1.9;max-width:700px;margin-block:18px}.code{font-family:"Space Grotesk",sans-serif}
