:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1)}
button,.role-card,.staff-card,.dept,.date-btn,.slot{touch-action:manipulation;transition-property:transform,background-color,border-color,color,opacity;transition-duration:160ms;transition-timing-function:var(--ease-out)}
button:active,.role-card:active,.staff-card:active,.dept:active,.date-btn:active,.slot:active{transform:scale(.97)}
.primary:disabled{cursor:not-allowed;opacity:.42;transform:none}.result-acknowledgement{border:1px solid #d3cbc4;background:#fff;padding:16px;margin:20px 0;align-items:flex-start}.result-acknowledgement input{flex:0 0 auto;width:18px;height:18px;margin:1px 2px 0 0;accent-color:#ef1717}.result-acknowledgement span{color:#4f4945;font-size:12px;line-height:1.55}.result-acknowledgement b{color:#111;font:700 12px DM Sans}
@media(max-width:760px){
  body{min-width:320px}
  .topbar{height:64px;padding:0 18px}.jva{font-size:23px}.brand-name{font-size:7px}.secure{max-width:120px;text-align:right;font-size:8px;line-height:1.35;letter-spacing:.1em}.secure span{margin-right:5px}
  .intro{min-height:calc(100svh - 64px);padding:48px 20px 36px;justify-content:center}.intro h1{font-size:clamp(48px,16vw,68px);line-height:.88;margin:24px 0 20px}.intro>p{font-size:14px;line-height:1.55;margin-bottom:26px}.primary{min-height:48px;padding:15px 18px}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;margin-top:38px}.trust-row>span{font-size:8px;line-height:1.35}.trust-row b{display:block;font-size:15px;margin-bottom:2px}
  .role-choice{min-height:calc(100svh - 64px);padding:72px 18px 28px}.back-on-dark{top:18px;left:18px;min-height:44px}.role-copy h2{font-size:44px;margin:14px 0}.role-copy>p{font-size:13px}.role-cards{gap:10px}.role-card{min-height:220px;padding:22px}.role-icon{margin:24px 0 16px}.role-card strong{font-size:26px}.role-card:hover{transform:none}
  .staff-portal{min-height:calc(100svh - 64px);padding:68px 14px 28px}.staff-gate{margin:18px auto 0;padding:28px 20px}.staff-gate h2{font-size:38px}.staff-gate input{min-height:48px;font-size:16px}.staff-shell h2{font-size:43px}.staff-shell>p{font-size:13px}.staff-list{margin:24px 0 16px}.staff-card{min-height:70px;padding:13px}.staff-signin{width:100%}
  .scheduler{min-height:calc(100svh - 64px)}.scheduler aside{height:auto;min-height:150px;padding:20px}.scheduler aside:after{width:340px;height:150px;bottom:-50px}.scheduler aside .aside-label{margin-top:20px}.scheduler aside h2{font-size:29px;margin:10px 0 0}.panel{padding:16px 18px 36px}.form-view,.success-view{margin:22px auto 0}.form-head h3,.success-view h3{font-size:38px}.form-head p{line-height:1.55;margin-bottom:26px}.grid.two{gap:0}.dept{min-height:54px}.selection{align-items:flex-start;gap:12px}.selection p{text-align:right}.match-card{align-items:flex-start;padding:13px}.match-card .live{white-space:nowrap}.date-strip{scroll-snap-type:x mandatory;padding-bottom:6px;margin-right:-18px}.date-btn{min-width:68px;min-height:64px;scroll-snap-align:start}.slots{grid-template-columns:1fr 1fr}.slot{min-height:48px}.summary-card{align-items:flex-start;padding:16px}.calendar-tile{flex:0 0 58px;width:58px;height:58px;margin-right:13px}.review dt{width:39%}.review dd{overflow-wrap:anywhere}.success-actions{flex-direction:column}.success-actions .primary,.success-actions .secondary{width:100%;min-height:48px}
  .dashboard-head{gap:14px;align-items:flex-start}.dashboard-head h2{font-size:38px}.dash-back{min-height:44px;white-space:nowrap}.dash-stats{grid-template-columns:repeat(3,1fr)}.dash-stats div{padding:13px 10px}.dash-stats b{font-size:25px}.dash-stats span{font-size:8px;line-height:1.3}.dash-tabs{margin-right:-14px;padding-right:14px;scroll-snap-type:x mandatory}.dash-tabs button{min-height:44px;white-space:nowrap;scroll-snap-align:start}.dash-content{padding:13px;min-height:260px}.section-title{align-items:flex-start;gap:12px}.applicant-row{grid-template-columns:38px minmax(0,1fr) 20px;padding:14px 2px}.applicant-row time{grid-column:2;font-size:10px}.row-meta{flex-wrap:wrap}.president-alert{align-items:flex-start;flex-direction:column}.president-alert button{width:100%;min-height:44px}
  dialog{width:100%;max-width:none;margin:auto 0 0;padding:28px 20px calc(20px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;transform-origin:center bottom}dialog h3{font-size:32px}.decision-actions{grid-template-columns:1fr}.decision-actions button{min-height:46px}
}
@media(max-width:380px){.secure{display:none}.intro h1{font-size:50px}.trust-row{grid-template-columns:1fr 1fr}.trust-row>span:last-child{grid-column:1/-1}.dashboard-head{display:block}.dash-back{margin-top:14px}.match-card{flex-wrap:wrap}.match-card .live{margin:10px 0 0;width:100%}}
@media(prefers-reduced-motion:reduce){button,.role-card,.staff-card,.dept,.date-btn,.slot{transition:none!important}}
