:root{--navy:#022961;--orange:#fd7714;--ink:#10233f;--muted:#637083;--line:#e4e8ee;--soft:#f7f9fc;--white:#fff;--success:#177b4d;--danger:#a52121;--shadow:0 14px 40px rgba(2,41,97,.06)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container-shell{width:min(100% - 40px,1160px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:30}.site-nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{display:block;width:238px;max-height:58px;object-fit:contain;object-position:left center}.nav-links{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.nav-link{padding:10px 0}.nav-link:hover,.nav-link-active{color:var(--navy)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 24px;border:1px solid transparent;font-size:14px;font-weight:700;cursor:pointer;transition:.18s ease}.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{filter:brightness(.96);transform:translateY(-1px)}.btn-secondary{border-color:var(--navy);color:var(--navy);background:#fff}.btn-secondary:hover,.btn-ghost:hover{background:var(--soft)}.btn-block{width:100%}.menu-button{display:none;width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:4px}.menu-button span{display:block;width:17px;height:2px;background:var(--navy)}.mobile-menu{border-top:1px solid var(--line);background:#fff}.mobile-menu-inner{display:flex;flex-direction:column;gap:14px;padding-block:18px 22px;font-size:14px;font-weight:600}.flash-wrap{padding-top:22px}.flash-success,.flash-error{padding:13px 15px;border-radius:5px;font-size:14px}.flash-success{border:1px solid #bde7cf;background:#effaf3;color:#176b44}.flash-error{border:1px solid #f0c1c1;background:#fff4f4;color:var(--danger)}
.hero-section{padding:100px 0 86px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:80px;align-items:center}.section-kicker{margin:0 0 14px;color:var(--orange);font-size:13px;line-height:1.4;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.hero-copy h1{margin:0;color:var(--navy);font-size:clamp(48px,6.4vw,78px);line-height:.98;letter-spacing:-.045em;max-width:760px}.hero-copy>p:not(.section-kicker){margin:26px 0 0;max-width:680px;color:var(--muted);font-size:20px;line-height:1.6}.hero-actions{display:flex;gap:14px;align-items:center;margin-top:34px}.swap-example{border:1px solid var(--line);border-radius:5px;padding:34px;background:#fff;box-shadow:var(--shadow)}.swap-label{margin:0 0 18px;color:var(--muted);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.swap-route{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--navy);font-weight:800;font-size:18px}.swap-route b{color:var(--orange)}.swap-example>p:last-child{margin:18px 0 0;color:var(--muted);font-size:14px;line-height:1.7}.how-section{padding:72px 0 96px;border-top:1px solid var(--line)}.how-section h2{margin:0 0 38px;color:var(--navy);font-size:32px;letter-spacing:-.025em}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.step-item{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:30px 30px 30px 0}.step-item+.step-item{border-left:1px solid var(--line);padding-left:30px}.step-item>span{width:36px;height:36px;border:1px solid var(--navy);color:var(--navy);border-radius:999px;display:grid;place-items:center;font-size:14px;font-weight:800}.step-item h3{margin:3px 0 8px;color:var(--navy);font-size:17px}.step-item p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.page-heading{margin-bottom:26px}.page-title{margin:0;color:var(--navy);font-size:clamp(34px,5vw,48px);line-height:1.05;letter-spacing:-.035em}.page-copy{max-width:700px;margin:14px 0 0;color:var(--muted);font-size:16px;line-height:1.75}.panel{border:1px solid var(--line);border-radius:5px;background:#fff;box-shadow:var(--shadow)}.form-page,.content-page{padding:64px 0 92px}.narrow-shell{max-width:900px}.form-panel{padding:28px}.form-grid{display:grid;gap:20px}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.form-group{display:flex;flex-direction:column}.form-label{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--ink)}.form-input{width:100%;min-height:46px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);padding:11px 13px;font-size:14px;outline:none;transition:.16s ease}.form-input:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(2,41,97,.08)}.textarea{resize:vertical;line-height:1.55}.form-error{margin:7px 0 0;color:var(--danger);font-size:12px;font-weight:650}.privacy-note{display:flex;flex-direction:column;gap:4px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:24px 0;color:var(--muted);font-size:13px;line-height:1.5}.privacy-note strong{color:var(--ink)}
.auth-page{min-height:calc(100vh - 190px);display:grid;place-items:center;padding:70px 20px}.auth-card{width:min(100%,480px);padding:34px}.auth-card h1{margin:0;color:var(--navy);font-size:30px;letter-spacing:-.03em}.auth-card>p{margin:9px 0 26px;color:var(--muted);line-height:1.6}.auth-card form{display:grid;gap:18px}.auth-footnote{margin:18px 0 0!important;text-align:center;font-size:12px!important}.contact-shell{display:grid;grid-template-columns:minmax(0,.8fr) minmax(420px,1fr);gap:80px;align-items:start}.prose-shell{max-width:860px}.legal-copy{margin-top:28px;padding:32px}.legal-copy h2{margin:30px 0 8px;color:var(--navy);font-size:19px}.legal-copy h2:first-child{margin-top:0}.legal-copy p{margin:0;color:var(--muted);line-height:1.8}.legal-note{margin-top:28px!important;padding-top:22px;border-top:1px solid var(--line);font-size:13px}.error-page{min-height:calc(100vh - 190px);display:grid;place-items:center;padding:70px 0;text-align:center}.error-inner{max-width:650px}.error-code{margin:0 0 10px;color:var(--orange);font-size:14px;font-weight:900;letter-spacing:.18em}.error-inner h1{margin:0;color:var(--navy);font-size:42px;letter-spacing:-.04em}.error-inner p:not(.error-code){margin:14px auto 28px;max-width:520px;color:var(--muted);line-height:1.7}
.site-footer{border-top:1px solid var(--line);padding:28px 0;background:#fff}.footer-inner{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:32px}.footer-brand img{display:block;width:170px;max-height:44px;object-fit:contain;object-position:left}.footer-links{display:flex;gap:22px;color:var(--muted);font-size:13px}.footer-links a:hover{color:var(--navy)}.footer-inner>p{margin:0;text-align:right;color:var(--muted);font-size:12px;line-height:1.5}
@media (max-width:900px){.nav-links{display:none}.menu-button{display:flex}.hero-section{padding:72px 0 64px}.hero-grid{grid-template-columns:1fr;gap:48px}.hero-copy h1{font-size:56px}.swap-example{max-width:620px}.steps-grid{grid-template-columns:1fr;border-bottom:0}.step-item{padding:24px 0;border-bottom:1px solid var(--line)}.step-item+.step-item{border-left:0;padding-left:0}.contact-shell{grid-template-columns:1fr;gap:38px}.footer-inner{grid-template-columns:1fr;gap:18px}.footer-inner>p{text-align:left}.two-col{grid-template-columns:1fr}}
@media (max-width:620px){.container-shell{width:min(100% - 28px,1160px)}.site-nav{min-height:72px}.brand img{width:190px}.hero-section{padding:56px 0 54px}.hero-copy h1{font-size:44px}.hero-copy>p:not(.section-kicker){font-size:17px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .btn{width:100%}.swap-example{padding:24px}.swap-route{font-size:16px}.how-section{padding:54px 0 72px}.form-page,.content-page{padding:46px 0 72px}.form-panel,.auth-card,.legal-copy{padding:22px}.auth-page{padding:52px 14px}.footer-links{flex-wrap:wrap}}
.inline-form{margin:0}.full-span{grid-column:1/-1}.form-actions-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px}.form-actions-row>span{color:var(--muted);font-size:13px}.form-actions-row a,.auth-links a{color:var(--navy);font-weight:700}.form-actions-row a:hover,.auth-links a:hover{text-decoration:underline}.auth-links{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.auth-links.single-link{justify-content:center}.account-page{min-height:calc(100vh - 190px)}.account-shell{max-width:820px}.account-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.status-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #bde7cf;border-radius:999px;padding:8px 13px;color:var(--success);background:#f4fbf7;font-size:12px;font-weight:800;white-space:nowrap}.status-pill>span{width:7px;height:7px;border-radius:999px;background:var(--success)}.account-panel{padding:8px 28px}.account-details{margin:0}.account-details>div{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}.account-details>div:last-child{border-bottom:0}.account-details dt{color:var(--muted);font-size:13px;font-weight:700}.account-details dd{margin:0;color:var(--ink);font-size:14px;font-weight:650;word-break:break-word}.account-note{margin:16px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
@media (max-width:620px){.form-actions-row{align-items:stretch;flex-direction:column}.form-actions-row .btn{width:100%}.form-actions-row>span{text-align:center}.auth-links{align-items:flex-start;flex-direction:column}.auth-links.single-link{align-items:center}.account-heading{align-items:flex-start;flex-direction:column}.account-panel{padding:4px 20px}.account-details>div{grid-template-columns:1fr;gap:6px;padding:17px 0}}
.content-page,.form-page{padding:3rem 0 4rem}.profile-shell,.profile-form-shell{max-width:920px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:1.75rem}.compact-heading{display:block}.profile-summary{display:grid;gap:1rem}.profile-section{padding:1.5rem}.profile-section h2{margin:.35rem 0 0;color:#022961;font-size:1.3rem;line-height:1.35}.profile-label{display:block;color:#637083;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.profile-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #E4E8EE}.profile-detail-grid dt{color:#637083;font-size:.78rem}.profile-detail-grid dd{margin:.3rem 0 0;color:#10233F;font-size:.95rem;font-weight:600}.subject-pills{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.subject-pill{display:inline-flex;align-items:center;border:1px solid #D9E2EF;border-radius:999px;background:#F7F9FC;padding:.45rem .8rem;color:#022961;font-size:.82rem;font-weight:600}.empty-profile{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.6rem}.empty-profile h2{margin:0 0 .4rem;color:#022961;font-size:1.15rem}.empty-profile p{margin:0;max-width:600px;color:#637083;line-height:1.65}.profile-next-step{margin-top:1rem;border-left:3px solid #FD7714;background:#FFF8F2;padding:.9rem 1rem;color:#637083;font-size:.88rem}.profile-next-step p{margin:0}.profile-next-step strong{color:#10233F}.profile-form{padding:1.5rem}.form-section+.form-section{margin-top:2rem;padding-top:1.75rem;border-top:1px solid #E4E8EE}.form-section h2{margin:0 0 1rem;color:#022961;font-size:1.05rem}.form-section-heading{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem}.form-section-heading h2{margin-bottom:.3rem}.form-section-heading p{margin:0;color:#637083;font-size:.86rem}.form-grid{display:grid;gap:1rem}.form-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #E4E8EE;border-radius:5px;overflow:hidden}.subject-option{display:flex;align-items:center;gap:.7rem;min-height:46px;padding:.65rem .8rem;border-bottom:1px solid #EEF1F5;color:#10233F;font-size:.88rem;cursor:pointer}.subject-option:nth-child(odd){border-right:1px solid #EEF1F5}.subject-option input{width:1rem;height:1rem;accent-color:#FD7714}.subject-error{margin-top:.75rem}.profile-form-actions{border-top:1px solid #E4E8EE;padding-top:1.25rem}.text-link{color:#022961;font-size:.88rem;font-weight:600;text-decoration:none}.text-link:hover{text-decoration:underline}.form-input:disabled{background:#F7F9FC;color:#9AA4B2;cursor:not-allowed}.account-note{margin-top:1rem;color:#637083;font-size:.85rem}.account-shell{max-width:820px}.account-panel{padding:0 1.5rem}.account-details dt{color:#637083;font-size:.82rem}.account-details dd{margin:0;color:#10233F;font-weight:600}.flash-wrap{padding-top:1rem}@media (max-width:767px){.content-page,.form-page{padding:2rem 0 3rem}.page-heading{display:block}.page-heading>.btn{margin-top:1rem}.empty-profile{display:block}.empty-profile .btn{margin-top:1.2rem}.profile-detail-grid,.form-grid.two-col,.subject-grid{grid-template-columns:1fr}.subject-option:nth-child(odd){border-right:0}.profile-section,.profile-form{padding:1.1rem}.profile-form-actions{display:flex}.profile-detail-grid{gap:1rem}.account-details>div{grid-template-columns:1fr;gap:.25rem}}

/* Phase 4: transfer preferences and matching-status controls. */
.preferences-shell{max-width:920px}.preferences-heading{align-items:center}.matching-status-panel{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 1.35rem;margin-bottom:1rem}.matching-status-title-row{display:flex;align-items:center;gap:.65rem}.matching-status-title-row h2{margin:0;color:#022961;font-size:1.03rem}.matching-status-copy p{margin:.35rem 0 0;max-width:620px;color:#637083;font-size:.86rem;line-height:1.55}.status-dot{display:inline-block;width:.65rem;height:.65rem;border-radius:999px;background:#A8B0BC}.status-dot-active{background:#16A34A}.preferences-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem}.preference-add-panel,.preference-list-panel{padding:1.35rem}.preference-section-head h2{margin:0;color:#022961;font-size:1.05rem}.preference-section-head p{margin:.35rem 0 0;color:#637083;font-size:.83rem;line-height:1.5}.preference-add-form{display:grid;gap:1rem;margin-top:1.25rem}.optional-label{margin-left:.25rem;color:#8A94A3;font-size:.72rem;font-weight:500}.preference-add-button{justify-self:start}.preference-list-head{padding-bottom:1rem;border-bottom:1px solid #E4E8EE}.preference-list{display:grid}.preference-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #EEF1F5}.preference-row:last-child{border-bottom:0}.preference-row strong{display:block;color:#10233F;font-size:.9rem}.preference-row span{display:block;margin-top:.22rem;color:#637083;font-size:.8rem}.preference-remove{border:0;background:transparent;padding:.35rem;color:#9A3412;font-size:.8rem;font-weight:700;cursor:pointer}.preference-remove:hover{text-decoration:underline}.preferences-empty{padding:1.25rem 0}.preferences-empty p{margin:0;color:#10233F;font-weight:700}.preferences-empty span{display:block;margin-top:.3rem;color:#637083;font-size:.83rem}.preference-help{display:flex;gap:.45rem;margin-top:1rem;border-left:3px solid #D8E5F5;background:#F8FAFD;padding:.9rem 1rem;color:#637083;font-size:.82rem;line-height:1.5}.preference-help strong{color:#10233F;white-space:nowrap}.profile-next-step-action{display:flex;align-items:center;justify-content:space-between;gap:1rem}.profile-next-step-action .text-link{white-space:nowrap}@media (max-width:767px){.preferences-heading{display:block}.preferences-heading>.text-link{display:inline-block;margin-top:1rem}.matching-status-panel{display:block}.matching-status-panel form{margin-top:1rem}.matching-status-panel .btn{width:100%}.preferences-grid{grid-template-columns:1fr}.preference-add-button{width:100%}.preference-help{display:block}.preference-help strong{display:block;margin-bottom:.25rem}.profile-next-step-action{display:block}.profile-next-step-action .text-link{display:inline-block;margin-top:.55rem}}

/* Phase 5: direct-match validation UI. */
.matches-shell{max-width:920px}.matches-state-panel,.matches-empty{padding:1.35rem}.matches-state-panel{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.matches-state-panel strong,.matches-empty h2{color:#022961}.matches-state-panel p,.matches-empty p{margin:.35rem 0 0;color:#637083;font-size:.86rem;line-height:1.6}.matches-empty h2{margin:0;font-size:1.1rem}.matches-empty .btn{margin-top:1rem}.matches-list{display:grid;gap:.8rem}.direct-match-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.5rem;padding:1.25rem 1.35rem}.match-type-pill{display:inline-flex;width:max-content;border-radius:999px;background:#EDF4FF;padding:.34rem .65rem;color:#0B5EC9;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.direct-match-main h2{margin:.65rem 0 .15rem;color:#022961;font-size:1.05rem}.match-meta,.match-school{margin:.18rem 0;color:#637083;font-size:.82rem}.direct-match-route{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;border-left:1px solid #E4E8EE;padding-left:1.5rem}.direct-match-route span,.direct-match-route small{display:block;color:#637083;font-size:.74rem}.direct-match-route strong{display:block;margin:.18rem 0;color:#10233F;font-size:.92rem}.match-swap-symbol{color:#FD7714;font-size:1.45rem;font-weight:800}.phase-note{margin:1rem 0 0;color:#8A94A3;font-size:.78rem;line-height:1.5}@media (max-width:767px){.matches-state-panel{display:block}.matches-state-panel .btn{margin-top:1rem;width:100%}.direct-match-row{grid-template-columns:1fr;padding:1rem}.direct-match-route{border-left:0;border-top:1px solid #E4E8EE;padding:1rem 0 0}.match-swap-symbol{font-size:1.2rem}}

/* Phase 6: three-way matching and combined match presentation. */
.match-summary{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:1.25rem}.summary-pill{display:inline-flex;align-items:center;gap:.35rem;border:1px solid #D9E2EF;border-radius:999px;background:#fff;padding:.45rem .75rem;color:#637083;font-size:.78rem}.summary-pill strong{color:#022961}.match-section+.match-section{margin-top:2rem}.match-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.match-section-heading h2{margin:.25rem 0 0;color:#022961;font-size:1.15rem}.match-section-heading>span{color:#8A94A3;font-size:.78rem}.direct-match-main h3,.three-way-match-head h3{margin:.65rem 0 .15rem;color:#022961;font-size:1.05rem}.match-type-pill-three{background:#FFF3E9;color:#C65A08}.three-way-match-row{padding:1.25rem 1.35rem}.three-way-match-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.three-way-route{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto;align-items:center;gap:.8rem;margin-top:1.15rem;padding-top:1.15rem;border-top:1px solid #E4E8EE}.three-way-person{min-width:0}.three-way-person span,.three-way-person small,.three-way-person em{display:block}.three-way-person span{color:#637083;font-size:.74rem;font-style:normal}.three-way-person strong{display:block;margin:.18rem 0;color:#10233F;font-size:.92rem}.three-way-person small{color:#637083;font-size:.74rem}.three-way-person em{margin-top:.35rem;overflow:hidden;color:#8A94A3;font-size:.72rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.three-way-person.is-you strong{color:#022961}.route-arrow{color:#FD7714;font-size:1.1rem;font-weight:800}.route-loop{font-size:1.25rem}.three-way-explainer{margin:1rem 0 0;border-left:3px solid #FD7714;background:#FFF8F2;padding:.75rem .9rem;color:#637083;font-size:.8rem;line-height:1.55}
@media (max-width:767px){.match-section-heading{align-items:flex-start}.three-way-match-row{padding:1rem}.three-way-route{grid-template-columns:1fr auto;gap:.55rem .8rem}.three-way-person{padding:.2rem 0}.route-arrow{transform:rotate(90deg);justify-self:center}.route-loop{display:none}.three-way-explainer{margin-top:.8rem}.match-section-heading>span{padding-top:.2rem}}

/* Phase 7: minimalist dashboard, notifications and contact flow. */
.nav-links{gap:1.2rem}.notification-nav{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:999px;color:#022961}.notification-nav:hover{background:#F7F9FC}.notification-nav svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notification-nav span{position:absolute;top:-.2rem;right:-.25rem;min-width:1.15rem;height:1.15rem;padding:0 .28rem;border:2px solid #fff;border-radius:999px;background:#FD7714;color:#fff;font-size:.62rem;font-weight:800;line-height:.9rem;text-align:center}.dashboard-shell,.notifications-shell,.match-detail-shell{max-width:920px}.dashboard-heading{margin-bottom:1.35rem}.dashboard-overview{border-top:1px solid #E4E8EE;border-bottom:1px solid #E4E8EE}.dashboard-overview-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.15rem 0;border-bottom:1px solid #EEF1F5}.dashboard-overview-row:last-child{border-bottom:0}.dashboard-overview-row strong,.dashboard-overview-row small{display:block}.dashboard-overview-row strong{margin-top:.28rem;color:#10233F;font-size:.95rem}.dashboard-overview-row small{margin-top:.25rem;color:#637083;font-size:.78rem}.dashboard-preference-pills{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.4rem}.dashboard-preference-pills span{display:inline-flex;border:1px solid #D9E2EF;border-radius:999px;padding:.35rem .65rem;color:#022961;font-size:.76rem;font-weight:600}.dashboard-matches{margin-top:2rem}.dashboard-empty-line{border-top:1px solid #E4E8EE;border-bottom:1px solid #E4E8EE;padding:1.25rem 0;color:#637083;font-size:.88rem}.dashboard-empty-line a{color:#022961;font-weight:700}.dashboard-match-list{border-top:1px solid #E4E8EE}.dashboard-match-row{display:grid;grid-template-columns:auto minmax(130px,.8fr) minmax(220px,1.4fr) auto;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid #E4E8EE;text-decoration:none}.dashboard-match-row strong{color:#10233F;font-size:.88rem}.dashboard-match-row>span:not(.match-type-pill){color:#637083;font-size:.82rem}.dashboard-match-row em{color:#022961;font-size:.8rem;font-style:normal;font-weight:700}.match-row-link{display:inline-flex;margin-top:.75rem;color:#022961;font-size:.8rem;font-weight:700;text-decoration:none}.match-row-link:hover{text-decoration:underline}.three-way-match-head .match-row-link{margin-top:.15rem;white-space:nowrap}.notifications-heading{align-items:center}.notifications-empty{padding:1.35rem}.notifications-empty h2{margin:0;color:#022961;font-size:1.05rem}.notifications-empty p{margin:.4rem 0 0;color:#637083;font-size:.86rem}.notification-list{border-top:1px solid #E4E8EE}.notification-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:.9rem;align-items:flex-start;padding:1.05rem 0;border-bottom:1px solid #E4E8EE;text-decoration:none}.notification-row strong{display:block;color:#10233F;font-size:.9rem}.notification-row p{margin:.3rem 0 0;color:#637083;font-size:.82rem;line-height:1.55}.notification-row small{display:block;margin-top:.42rem;color:#8A94A3;font-size:.72rem}.notification-dot{width:.48rem;height:.48rem;margin-top:.35rem;border-radius:999px;background:#D5DBE4}.notification-unread .notification-dot{background:#FD7714}.notification-unread strong{color:#022961}.notification-open{align-self:center;color:#022961;font-size:.78rem;font-weight:700;white-space:nowrap}.match-detail-back{margin-bottom:1.25rem}.match-detail-panel{padding:1.4rem}.match-detail-route{display:grid;align-items:center;gap:1rem}.direct-detail-route{grid-template-columns:1fr auto 1fr}.match-detail-route span,.match-detail-route small,.match-detail-route em{display:block}.match-detail-route span{color:#637083;font-size:.75rem}.match-detail-route strong{display:block;margin:.2rem 0;color:#10233F;font-size:1rem}.match-detail-route small{color:#637083;font-size:.78rem}.match-detail-route em{margin-top:.35rem;color:#8A94A3;font-size:.76rem;font-style:normal}.match-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.3rem 0 0;padding:1.15rem 0;border-top:1px solid #E4E8EE;border-bottom:1px solid #E4E8EE}.match-detail-meta div{min-width:0}.match-detail-meta dt{color:#637083;font-size:.75rem}.match-detail-meta dd{margin:.3rem 0 0;color:#10233F;font-size:.88rem;font-weight:700}.contact-panel{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding-top:1.25rem}.contact-panel+.contact-panel{margin-top:1.1rem;border-top:1px solid #E4E8EE}.contact-panel strong,.contact-panel small{display:block}.contact-panel strong{margin-top:.28rem;color:#10233F}.contact-panel small{margin-top:.3rem;color:#637083;font-size:.75rem}.contact-actions{display:flex;gap:.6rem;flex-shrink:0}.btn-whatsapp{background:#FD7714;color:#fff}.btn-whatsapp:hover{filter:brightness(.95)}.match-detail-three-route{margin-top:0;padding-top:0;border-top:0}.three-way-contact-list{margin-top:.15rem}.mobile-menu a{position:relative}
@media (max-width:980px) and (min-width:768px){.nav-links{gap:.8rem}.nav-link{font-size:.78rem}.btn{padding-left:1rem;padding-right:1rem}}
@media (max-width:767px){.dashboard-overview-row{display:block}.dashboard-overview-row>.text-link{display:inline-block;margin-top:.65rem}.dashboard-match-row{grid-template-columns:auto 1fr;gap:.5rem .75rem}.dashboard-match-row>span:not(.match-type-pill){grid-column:1/-1}.dashboard-match-row em{grid-column:1/-1}.notifications-heading{display:block}.notifications-heading form{margin-top:1rem}.notifications-heading .btn{width:100%}.notification-row{grid-template-columns:10px minmax(0,1fr)}.notification-open{display:none}.match-detail-panel{padding:1rem}.direct-detail-route{grid-template-columns:1fr auto}.direct-detail-route>div:last-child{grid-column:1/2;grid-row:2}.direct-detail-route .match-swap-symbol{grid-row:1/3}.match-detail-meta{grid-template-columns:1fr}.contact-panel{display:block}.contact-actions{margin-top:1rem}.contact-actions .btn{flex:1}.match-detail-three-route{grid-template-columns:1fr auto}.three-way-contact-list .contact-panel{padding-top:1rem}}

/* Phase 8: administration, security and production QA. */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.admin-body{background:#fff}.admin-header .brand img{width:210px}.admin-nav-links{gap:1rem}.admin-logout{padding:.7rem 1rem}.admin-footer{margin-top:2rem}.admin-shell{max-width:1180px}.admin-settings-shell{max-width:820px}.admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #E4E8EE;border-bottom:1px solid #E4E8EE}.admin-stat{display:block;padding:1.4rem 1.25rem;border-right:1px solid #E4E8EE}.admin-stat:last-child{border-right:0}.admin-stat span,.admin-stat small{display:block;color:#637083;font-size:.76rem}.admin-stat strong{display:block;margin:.35rem 0;color:#022961;font-size:1.75rem;line-height:1}.admin-section{margin-top:2rem}.admin-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.admin-section-head h2{margin:.2rem 0 0;color:#022961;font-size:1.18rem}.admin-section-head>span{color:#8A94A3;font-size:.78rem}.admin-table-wrap{overflow-x:auto;box-shadow:none}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:.9rem 1rem;border-bottom:1px solid #EEF1F5;text-align:left;vertical-align:top;font-size:.8rem}.admin-table th{color:#637083;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;background:#FAFBFD}.admin-table tr:last-child td{border-bottom:0}.admin-table strong,.admin-table small{display:block}.admin-table strong{color:#10233F}.admin-table small{margin-top:.25rem;color:#7B8797;line-height:1.45}.admin-warning{color:#B26712!important}.admin-error-text{max-width:420px;color:#A52121!important;overflow-wrap:anywhere}.admin-status{display:inline-flex;align-items:center;border:1px solid #D9E2EF;border-radius:999px;padding:.28rem .55rem;color:#637083;background:#fff;font-size:.7rem;font-weight:700;white-space:nowrap}.admin-status.is-good{border-color:#BDE7CF;background:#EFFAF3;color:#176B44}.admin-status.is-bad{border-color:#F0C1C1;background:#FFF4F4;color:#A52121}.admin-status.is-warn{border-color:#F4D9A8;background:#FFF9EE;color:#9A6210}.admin-filter{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(150px,.8fr)) auto;gap:.7rem;padding:1rem;margin-bottom:1rem;box-shadow:none}.admin-filter .form-input{margin:0}.admin-pagination{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:1rem}.admin-pagination a{display:grid;place-items:center;min-width:2rem;height:2rem;border:1px solid #E4E8EE;border-radius:999px;font-size:.75rem;font-weight:700}.admin-pagination a.is-current{background:#022961;border-color:#022961;color:#fff}.admin-detail-grid,.admin-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-detail-panel{padding:1.25rem;box-shadow:none}.admin-detail-panel h2{margin:0 0 .9rem;color:#022961;font-size:1.05rem}.admin-wide-panel{margin-top:1rem}.admin-action-grid{margin-top:1rem}.admin-private-note,.admin-muted{color:#637083;font-size:.78rem;line-height:1.55}.admin-private-note{border-left:3px solid #FD7714;padding-left:.75rem}.admin-definition-list{margin:0}.admin-definition-list div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:1rem;padding:.7rem 0;border-bottom:1px solid #EEF1F5}.admin-definition-list div:last-child{border-bottom:0}.admin-definition-list dt{color:#637083;font-size:.76rem}.admin-definition-list dd{margin:0;color:#10233F;font-size:.84rem;font-weight:700;overflow-wrap:anywhere}.admin-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #EEF1F5}.admin-toggle-row span,.admin-toggle-row strong,.admin-toggle-row small{display:block}.admin-toggle-row strong{color:#10233F;font-size:.9rem}.admin-toggle-row small{margin-top:.3rem;color:#637083;font-size:.76rem}.admin-toggle-row input{width:1.15rem;height:1.15rem;accent-color:#FD7714}.admin-login-page .auth-shell{max-width:480px}.form-hint{margin-top:.45rem;color:#7B8797;font-size:.72rem;line-height:1.5}
@media(max-width:1000px){.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-stat:nth-child(2){border-right:0}.admin-stat:nth-child(-n+2){border-bottom:1px solid #E4E8EE}.admin-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filter .btn{width:100%}}
@media(max-width:767px){.admin-nav-links{display:none}.admin-page-head{display:block}.admin-page-head>.admin-status{margin-top:.8rem}.admin-stat-grid{grid-template-columns:1fr}.admin-stat{border-right:0;border-bottom:1px solid #E4E8EE}.admin-stat:last-child{border-bottom:0}.admin-filter{grid-template-columns:1fr}.admin-detail-grid,.admin-action-grid{grid-template-columns:1fr}.admin-definition-list div{grid-template-columns:1fr;gap:.25rem}.admin-toggle-row{align-items:flex-start}.admin-table th,.admin-table td{padding:.75rem}.admin-section-head{align-items:flex-start}}
/* Phase 9 installer */.setup-body{background:#fff;color:#10233F}.setup-header{border-bottom:1px solid #E4E8EE;background:#fff}.setup-header-inner{display:flex;min-height:80px;align-items:center;justify-content:space-between;gap:1rem}.setup-header .brand img{width:220px}.setup-badge{display:inline-flex;border:1px solid #D9E2EF;border-radius:999px;padding:.38rem .7rem;color:#637083;font-size:.72rem;font-weight:700}.setup-main{padding:3rem 0 4rem}.setup-shell{max-width:900px}.setup-page-heading{margin-bottom:1.5rem}.setup-check-panel,.setup-form-section{padding:1.35rem;box-shadow:none}.setup-form{display:grid;gap:1rem;margin-top:1rem}.setup-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.15rem}.setup-section-head>div{display:flex;align-items:flex-start;gap:.8rem}.setup-section-head>div>span{display:grid;place-items:center;flex:0 0 auto;width:2rem;height:2rem;border:1px solid #D9E2EF;border-radius:999px;color:#022961;font-size:.72rem;font-weight:800}.setup-section-head h2{margin:0;color:#022961;font-size:1.05rem}.setup-section-head p{margin:.3rem 0 0;color:#637083;font-size:.8rem;line-height:1.5}.setup-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #EEF1F5}.setup-check-row{display:flex;align-items:flex-start;gap:.75rem;padding:.9rem 0;border-bottom:1px solid #EEF1F5}.setup-check-row:nth-child(odd){padding-right:1rem}.setup-check-row:nth-child(even){padding-left:1rem;border-left:1px solid #EEF1F5}.setup-check-row strong,.setup-check-row small{display:block}.setup-check-row strong{color:#10233F;font-size:.82rem}.setup-check-row small{margin-top:.2rem;color:#7B8797;font-size:.72rem;overflow-wrap:anywhere}.setup-check-icon{display:grid;place-items:center;flex:0 0 auto;width:1.45rem;height:1.45rem;border-radius:999px;font-size:.68rem;font-weight:900}.setup-check-icon.is-good{background:#EFFAF3;color:#176B44}.setup-check-icon.is-bad{background:#FFF4F4;color:#A52121}.setup-check-icon.is-warn{background:#FFF9EE;color:#9A6210}.setup-field-grid{display:grid;gap:1rem}.setup-field-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-field-grid.database-grid{grid-template-columns:minmax(0,1.5fr) minmax(110px,.5fr)}.setup-field-grid.one-col{grid-template-columns:1fr}.setup-inline-note{margin:1rem 0 0;border-left:3px solid #D8E5F5;background:#F8FAFD;padding:.8rem .9rem;color:#637083;font-size:.78rem;line-height:1.55}.setup-final-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.1rem 0}.setup-final-row strong,.setup-final-row span{display:block}.setup-final-row strong{color:#022961;font-size:.95rem}.setup-final-row span{margin-top:.3rem;max-width:620px;color:#637083;font-size:.78rem;line-height:1.55}.setup-final-row .btn:disabled{cursor:not-allowed;opacity:.45}.setup-footer{border-top:1px solid #E4E8EE}.setup-footer-inner{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:1rem;color:#7B8797;font-size:.75rem}.setup-complete-card{max-width:720px;margin:2rem auto;padding:2rem;text-align:center;box-shadow:none}.setup-complete-mark{display:grid;place-items:center;width:3rem;height:3rem;margin:0 auto 1rem;border-radius:999px;background:#EFFAF3;color:#176B44;font-size:1.25rem;font-weight:900}.setup-complete-card h1{margin:.35rem 0;color:#022961;font-size:2rem}.setup-complete-card>p:not(.section-kicker):not(.setup-security-note){margin:.6rem auto 0;max-width:570px;color:#637083;line-height:1.65}.setup-complete-meta{display:grid;grid-template-columns:repeat(3,1fr);margin:1.6rem 0;border-top:1px solid #E4E8EE;border-bottom:1px solid #E4E8EE}.setup-complete-meta div{padding:1rem;border-right:1px solid #E4E8EE}.setup-complete-meta div:last-child{border-right:0}.setup-complete-meta span,.setup-complete-meta strong{display:block}.setup-complete-meta span{color:#7B8797;font-size:.7rem}.setup-complete-meta strong{margin-top:.3rem;color:#10233F;font-size:.8rem;overflow-wrap:anywhere}.setup-complete-actions{display:flex;justify-content:center;gap:.7rem}.setup-security-note{margin:1.5rem 0 0!important;border-top:1px solid #EEF1F5;padding-top:1rem;color:#7B8797!important;font-size:.75rem;line-height:1.55}.setup-security-note code,.setup-final-row code{border-radius:4px;background:#F4F6F9;padding:.12rem .3rem;color:#10233F;font-size:.72rem}@media(max-width:767px){.setup-main{padding:2rem 0 3rem}.setup-header .brand img{width:190px}.setup-badge{display:none}.setup-check-list{grid-template-columns:1fr}.setup-check-row:nth-child(odd),.setup-check-row:nth-child(even){padding-left:0;padding-right:0;border-left:0}.setup-field-grid.two-col,.setup-field-grid.database-grid{grid-template-columns:1fr}.setup-field-grid.database-grid label{grid-column:auto!important}.setup-final-row{display:block}.setup-final-row .btn{width:100%;margin-top:1rem}.setup-footer-inner{display:block;padding-top:1.2rem;padding-bottom:1.2rem}.setup-footer-inner span{display:block}.setup-footer-inner span+span{margin-top:.25rem}.setup-complete-card{padding:1.35rem}.setup-complete-meta{grid-template-columns:1fr}.setup-complete-meta div{border-right:0;border-bottom:1px solid #E4E8EE}.setup-complete-meta div:last-child{border-bottom:0}.setup-complete-actions{display:grid}.setup-complete-actions .btn{width:100%}}

/* Swapped v1.0.2 sitewide radius system */
.form-card,.form-panel,.auth-card,.setup-form-section{border-radius:32px!important}.form-input{border-width:2px!important;border-radius:0!important}.subject-grid{border-width:2px!important;border-radius:0!important}table,.admin-table,.admin-table-wrap,.table,.table-wrap,.table-wrapper{border-radius:0!important}


/* Swapped v1.0.2 homepage refinement
   Minimal hero, supporting illustration, tighter spacing and quieter secondary actions. */
.home-container{max-width:1100px}
.hero-section{padding:78px 0 72px}
.hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);gap:56px;align-items:start}
.hero-copy h1{font-size:clamp(48px,5.35vw,68px);line-height:1.02;letter-spacing:-.043em;max-width:630px}
.hero-copy h1 span{display:block}
.hero-copy>p:not(.section-kicker){margin-top:22px;max-width:610px;font-size:19px;line-height:1.55}
.hero-actions{margin-top:30px}
.hero-login{border-color:#a9b9cf}
.hero-visual{display:flex;align-items:flex-start;justify-content:center;margin-top:28px;min-width:0}
.swap-illustration{display:block;width:100%;max-width:560px;height:auto;object-fit:contain}
.how-section{padding:60px 0 84px}
.how-section h2{margin-bottom:32px}
.step-item{gap:16px;padding-top:27px;padding-bottom:27px}
.step-item>span{width:32px;height:32px;font-size:13px}
.step-item h3{margin-top:2px;font-size:18px}
.footer-links,.footer-inner>p{color:#536174}

@media (min-width:901px){
  .hero-copy h1 span:first-child{white-space:nowrap}
}
@media (max-width:900px){
  .hero-section{padding:60px 0 58px}
  .hero-grid{grid-template-columns:1fr;gap:30px}
  .hero-copy h1{font-size:54px;max-width:680px}
  .hero-visual{margin-top:0;justify-content:flex-start}
  .swap-illustration{max-width:640px}
  .how-section{padding:56px 0 76px}
}
@media (max-width:620px){
  .home-container{max-width:none}
  .hero-section{padding:48px 0 50px}
  .hero-copy h1{font-size:42px;line-height:1.04}
  .hero-copy h1 span:first-child{white-space:normal}
  .hero-copy>p:not(.section-kicker){margin-top:18px;font-size:17px}
  .hero-actions{margin-top:26px}
  .hero-visual{margin-top:4px}
  .swap-illustration{max-width:100%}
  .how-section{padding:50px 0 66px}
  .how-section h2{margin-bottom:26px}
  .step-item>span{width:30px;height:30px;font-size:12px}
}

/* v1.0.2 clarification: 32px is reserved for main form panels only.
   Utility filters, preference blocks and nested action panels retain the normal subtle panel radius. */

/* Swapped v1.0.4 homepage proportion refinement
   Slightly quieter header brand and a more prominent hero illustration. */
@media (min-width:901px){
  .site-header .brand img{width:212px;max-height:52px}
  .hero-visual{justify-content:center;overflow:visible}
  .swap-illustration{width:125%;max-width:690px;transform:translateX(5%)}
}
@media (max-width:620px){
  .site-header .brand img{width:174px;max-height:46px}
  .swap-illustration{width:100%;max-width:100%;transform:none}
}

/* v1.0.5 registration/contact polish and SMTP settings */
.auth-register-shell{max-width:920px}
.auth-intro{max-width:760px;margin:0 0 24px}
.auth-intro .section-kicker{margin:0 0 12px}
.auth-intro .page-title{font-size:clamp(36px,4.4vw,46px);line-height:1.04}
.auth-intro .page-copy{margin-top:12px;max-width:700px;line-height:1.65}

.contact-shell{max-width:1120px;grid-template-columns:minmax(0,.72fr) minmax(460px,1.05fr);gap:72px}
.contact-intro{padding-top:4px}
.contact-form{display:grid;gap:20px;padding:32px}
.contact-form .form-group{margin:0}
.contact-form .textarea{min-height:180px}
.contact-form-actions{display:flex;align-items:center;padding-top:18px;border-top:1px solid var(--line)}
.contact-form-actions .btn{min-width:150px}

.admin-settings-form{padding:30px}
.admin-settings-section+.admin-settings-section{margin-top:30px;padding-top:28px;border-top:1px solid #E4E8EE}
.admin-settings-section h2{margin:0;color:#022961;font-size:1.08rem}
.admin-settings-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:1.25rem}
.admin-settings-section-head p{margin:.35rem 0 0;max-width:570px;color:#637083;font-size:.78rem;line-height:1.55}
.admin-setting-field{margin-top:1.25rem}
.smtp-switch{display:flex;align-items:center;gap:.65rem;white-space:nowrap;color:#10233F;font-size:.78rem;font-weight:700}
.smtp-switch input{width:1.15rem;height:1.15rem;accent-color:#FD7714}
.admin-smtp-grid{margin-top:.25rem}
.admin-settings-actions{display:flex;margin-top:28px;padding-top:22px;border-top:1px solid #E4E8EE}
.admin-smtp-test{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin-top:14px;padding:18px 4px}
.admin-smtp-test strong,.admin-smtp-test span{display:block}
.admin-smtp-test strong{color:#10233F;font-size:.86rem}
.admin-smtp-test span{margin-top:.25rem;color:#637083;font-size:.74rem}

@media(max-width:900px){
  .contact-shell{grid-template-columns:1fr;gap:30px}
  .contact-intro{padding-top:0}
}
@media(max-width:767px){
  .auth-intro{margin-bottom:20px}
  .auth-intro .page-title{font-size:36px}
  .contact-form{padding:24px}
  .contact-form-actions .btn{width:100%}
  .admin-settings-form{padding:22px}
  .admin-settings-section-head{display:block}
  .smtp-switch{margin-top:1rem}
  .admin-smtp-test{display:block}
  .admin-smtp-test .btn{width:100%;margin-top:1rem}
}

/* v1.0.6 swap-eligibility and teaching-level preference refinement */
.eligibility-note{display:flex;gap:.45rem;margin-top:1rem;border-left:3px solid #FD7714;background:#FFF8F2;padding:.85rem .95rem;color:#637083;font-size:.8rem;line-height:1.55}.eligibility-note strong{color:#10233F;white-space:nowrap}.eligibility-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preference-level-panel{padding:1.35rem;margin-bottom:1rem}.preferred-level-form{display:grid;gap:1rem;margin-top:1.1rem}.level-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:2px solid #E4E8EE;border-radius:0;overflow:hidden}.level-option{display:flex;align-items:center;gap:.7rem;min-height:48px;padding:.7rem .8rem;border-bottom:1px solid #EEF1F5;color:#10233F;font-size:.88rem;cursor:pointer}.level-option:nth-child(odd){border-right:1px solid #EEF1F5}.level-option input{width:1rem;height:1rem;accent-color:#FD7714}.level-preference-error{margin-top:-.25rem}.match-eligibility-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:767px){.eligibility-note{display:block}.eligibility-note strong{display:block;margin-bottom:.25rem}.eligibility-detail-grid,.level-option-grid,.match-eligibility-meta{grid-template-columns:1fr}.level-option:nth-child(odd){border-right:0}}

/* v1.0.7 mobile form focus: prevent iOS Safari auto-zoom on fields */
@media(max-width:767px){
  input:not([type="checkbox"]):not([type="radio"]),select,textarea,.form-input{
    font-size:16px!important;
  }
}
.cron-command{overflow-x:auto;margin:1rem 0;padding:14px 16px;border:2px solid #E4E8EE;border-radius:0;background:#FAFBFD;color:#10233F;font-size:.82rem;line-height:1.6}
@media(max-width:767px){.admin-page-head{display:block}.admin-page-head>.btn{margin-top:1rem}.form-actions-row{align-items:stretch;flex-direction:column}.form-actions-row>div{display:flex;flex-wrap:wrap;gap:.5rem}.form-actions-row .form-input{width:100%}}

/* v1.0.9 reusable action spacing */
.button-group{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.campaign-form-actions{gap:20px}
.campaign-form-actions>.button-group{justify-content:flex-end}
.campaign-action-buttons{margin-top:16px}
.campaign-message{white-space:pre-wrap}
.campaign-test-form{gap:12px}
.campaign-test-form .form-input{flex:1 1 260px;max-width:420px}
@media(max-width:620px){.button-group{align-items:stretch;gap:12px}.form-actions-row>.button-group,.campaign-form-actions>.button-group,.campaign-action-buttons{gap:12px}.campaign-form-actions>.button-group,.campaign-action-buttons{width:100%;display:grid;grid-template-columns:1fr}.campaign-form-actions .btn,.campaign-action-buttons .btn,.campaign-test-form .btn{width:100%}.campaign-test-form .form-input{max-width:none}}

/* v1.0.12 admin-only teacher portal preview */
.preview-mode-bar{border-bottom:1px solid #F4D9A8;background:#FFF9EE;position:relative;z-index:20}
.preview-mode-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.7rem}
.preview-mode-inner>div{display:flex;flex-direction:column;gap:.2rem}
.preview-mode-inner strong{color:#7A4B08;font-size:.88rem}
.preview-mode-inner span{color:#80633A;font-size:.78rem;line-height:1.4}
.preview-return-btn{background:#fff;white-space:nowrap}
.preview-admin-panel{display:grid;gap:1.5rem}
.preview-admin-panel h2{margin:.7rem 0 .35rem}
.preview-safety-list{margin:0;padding-left:1.2rem;color:#526174;font-size:.86rem;line-height:1.75}
.preview-admin-panel form{padding-top:1.25rem;border-top:1px solid #E4E8EE}
@media(max-width:767px){.preview-mode-inner{align-items:flex-start;flex-direction:column}.preview-mode-inner form,.preview-return-btn{width:100%}.preview-admin-panel .btn{width:100%}}

/* v1.0.14: authenticated swap-profile directory. */
.swap-directory-shell{max-width:1120px}.swap-directory-heading{max-width:760px}.swap-directory-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:-.4rem 0 1.25rem;padding:.9rem 0;border-top:1px solid #E4E8EE;border-bottom:1px solid #E4E8EE}.swap-directory-summary strong{color:#10233F;font-size:.9rem}.swap-directory-summary span{color:#637083;font-size:.78rem;text-align:right}.swap-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.swap-profile-card{padding:1.35rem;box-shadow:none}.swap-profile-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1.05rem;border-bottom:1px solid #EEF1F5}.swap-profile-card-head h2{margin:.3rem 0 0;color:#022961;font-size:1.05rem;line-height:1.35}.swap-profile-card-head p{margin:.35rem 0 0;color:#637083;font-size:.8rem;line-height:1.45}.swap-profile-self{flex:0 0 auto;border:1px solid #D9E2EF;border-radius:999px;padding:.3rem .55rem;background:#F7F9FC;color:#022961;font-size:.68rem;font-weight:700}.swap-profile-details{display:grid;gap:0;margin:0}.swap-profile-details>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid #EEF1F5}.swap-profile-details>div:last-child{border-bottom:0;padding-bottom:0}.swap-profile-details dt{color:#637083;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.swap-profile-details dd{margin:0;color:#10233F;font-size:.84rem;line-height:1.5}.swap-profile-details dd strong,.swap-profile-details dd small{display:block}.swap-profile-details dd small{margin-top:.25rem;color:#637083;font-size:.74rem;font-weight:400}.swap-profile-pills,.swap-profile-targets{display:flex;flex-wrap:wrap;gap:.42rem}.swap-profile-pills span,.swap-profile-targets>span{display:inline-flex;align-items:center;border:1px solid #D9E2EF;border-radius:999px;background:#F7F9FC;padding:.34rem .58rem;color:#10233F;font-size:.72rem;font-weight:600}.swap-profile-targets small{flex-basis:100%;margin-top:.25rem!important}.swap-directory-empty{padding:1.5rem;box-shadow:none}.swap-directory-empty h2{margin:0;color:#022961;font-size:1.05rem}.swap-directory-empty p{margin:.45rem 0 0;color:#637083;font-size:.85rem;line-height:1.6}.swap-directory-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid #E4E8EE}.swap-directory-pagination>a:first-child{justify-self:start}.swap-directory-pagination>a:last-child{justify-self:end}.swap-directory-pagination>span{color:#637083;font-size:.78rem;text-align:center}
@media(max-width:767px){.swap-directory-summary{display:block}.swap-directory-summary span{display:block;margin-top:.3rem;text-align:left}.swap-profile-grid{grid-template-columns:1fr}.swap-profile-card{padding:1rem}.swap-profile-details>div{grid-template-columns:1fr;gap:.5rem}.swap-directory-pagination{grid-template-columns:1fr 1fr}.swap-directory-pagination>span{grid-column:1/-1;grid-row:1}.swap-directory-pagination>a{width:100%}.swap-directory-pagination>a:first-child{justify-self:stretch}.swap-directory-pagination>a:last-child{justify-self:stretch}}

/* v1.0.15 renewable swap-profile lifecycle + password visibility */
.password-field{position:relative;display:flex;align-items:center}.password-field .form-input{padding-right:72px}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;padding:7px 8px;color:#022961;font:inherit;font-size:.76rem;font-weight:700;cursor:pointer}.password-toggle:hover,.password-toggle:focus-visible{text-decoration:underline;outline:none}.swap-lifecycle-panel{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.3rem;padding:1.35rem 1.45rem;box-shadow:none}.swap-lifecycle-copy{max-width:680px}.swap-lifecycle-copy .section-kicker{margin-bottom:.45rem}.swap-lifecycle-copy h2{margin:0;color:#022961;font-size:1.08rem}.swap-lifecycle-copy p{margin:.45rem 0 0;color:#637083;font-size:.82rem;line-height:1.6}.swap-lifecycle-actions{justify-content:flex-end;flex:0 0 auto}.swap-lifecycle-actions form{margin:0}.admin-lifecycle-grid{margin-top:1.25rem}@media(max-width:767px){.swap-lifecycle-panel{align-items:stretch;flex-direction:column;padding:1.05rem}.swap-lifecycle-actions{width:100%;display:grid;grid-template-columns:1fr}.swap-lifecycle-actions form,.swap-lifecycle-actions .btn{width:100%}}
.match-success-prompt{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin-bottom:1.25rem;padding:1.1rem 1.25rem;box-shadow:none}.match-success-prompt strong{display:block;color:#022961;font-size:.92rem}.match-success-prompt p{margin:.35rem 0 0;color:#637083;font-size:.8rem;line-height:1.5}.match-success-prompt form{flex:0 0 auto}@media(max-width:767px){.match-success-prompt{align-items:stretch;flex-direction:column}.match-success-prompt form,.match-success-prompt .btn{width:100%}}

/* Swapped v1.0.16 public contact/community settings and legal-policy refinement */
.contact-info-block,.contact-community-block{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.contact-info-block h2,.contact-community-block h2{margin:0;color:var(--navy);font-size:1.05rem}
.contact-detail-list{margin:14px 0 0}
.contact-detail-list>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;padding:11px 0;border-bottom:1px solid #eef1f5}
.contact-detail-list>div:last-child{border-bottom:0}
.contact-detail-list dt{color:var(--muted);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.055em}
.contact-detail-list dd{margin:0;color:var(--ink);font-size:.9rem;font-weight:650;overflow-wrap:anywhere}
.contact-detail-list a{color:var(--navy)}
.contact-detail-list a:hover{text-decoration:underline}
.contact-link-group{margin-top:18px}
.contact-link-group h3{margin:0 0 9px;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.065em}
.contact-link-list{display:flex;flex-wrap:wrap;gap:9px}
.contact-link-list a{display:inline-flex;align-items:center;gap:7px;border:1px solid #d9e2ef;border-radius:999px;padding:8px 12px;color:var(--navy);background:#fff;font-size:.79rem;font-weight:700;line-height:1.2}
.contact-link-list a:hover{background:var(--soft);border-color:#bcc9da}
.contact-link-list a span{font-size:.78rem}
.admin-public-contact-grid{margin-top:.35rem}
.admin-community-fields{display:grid;gap:20px;margin-top:24px;padding-top:22px;border-top:1px solid #eef1f5}
.admin-links-textarea{min-height:112px;font-family:inherit;line-height:1.55}
.admin-community-fields .form-hint strong{color:var(--ink)}
.legal-shell{max-width:920px}
.legal-effective{margin:12px 0 0;color:#7b8797;font-size:.78rem}
.legal-copy{padding:38px}
.legal-copy h2{margin-top:34px;font-size:1.08rem;line-height:1.4}
.legal-copy p+.legal-copy p{margin-top:12px}
.legal-copy ul{margin:12px 0 0;padding-left:22px;color:var(--muted)}
.legal-copy li{margin:8px 0;line-height:1.75}
.legal-copy li strong{color:var(--ink)}
.legal-summary{margin:0 0 30px;border-left:3px solid var(--orange);background:#fff8f2;padding:16px 18px}
.legal-summary strong{display:block;color:var(--ink);font-size:.9rem}
.legal-summary p{margin-top:6px!important}
.legal-contact{display:grid;gap:7px;margin:16px 0 0;padding:16px 0;border-top:1px solid #eef1f5;border-bottom:1px solid #eef1f5;color:var(--muted);font-size:.87rem;font-style:normal;line-height:1.55}
.legal-contact strong{color:var(--ink)}
.legal-contact a{color:var(--navy);font-weight:650}
.legal-contact a:hover{text-decoration:underline}
@media(max-width:767px){
  .contact-detail-list>div{grid-template-columns:1fr;gap:4px}
  .contact-link-list{display:grid;grid-template-columns:1fr}
  .contact-link-list a{justify-content:space-between;border-radius:5px;padding:11px 12px}
  .legal-copy{padding:24px}
  .legal-copy h2{margin-top:28px}
}
