html{scroll-padding:1rem}body.offbeat-candidate{font-family:'DM Sans',system-ui,sans-serif;background:var(--ob-paper);color:var(--ob-ink);margin:0;font-size:1rem;line-height:1.55}body.offbeat-candidate *{box-sizing:border-box}body.offbeat-candidate main{width:100%;max-width:1200px;margin:auto;padding:clamp(16px,3vw,40px);min-width:0}body.offbeat-candidate h1,body.offbeat-candidate h2{font-family:inherit;line-height:1.15;overflow-wrap:anywhere}body.offbeat-candidate h1{font-size:clamp(2rem,5vw,3.5rem)}body.offbeat-candidate button,body.offbeat-candidate select,body.offbeat-candidate input:not([type=checkbox]),body.offbeat-candidate textarea,body.offbeat-candidate summary{font:inherit;min-height:44px;max-width:100%}body.offbeat-candidate button{white-space:normal;overflow-wrap:anywhere;padding:10px 16px;border-radius:10px;border:1px solid #747970;background:white;color:var(--ob-ink);cursor:pointer}body.offbeat-candidate button.primary{background:var(--ob-blue);color:white}body.offbeat-candidate button:disabled{cursor:default;opacity:.65}body.offbeat-candidate textarea{width:100%;min-height:100px}body.offbeat-candidate section{min-width:0}body.offbeat-candidate p,body.offbeat-candidate li,body.offbeat-candidate label{overflow-wrap:anywhere}body.offbeat-candidate main>section{margin:20px 0;padding:clamp(12px,2vw,24px);border:1px solid #c4c5bd;border-radius:16px;background:white}body.offbeat-candidate main button{margin:4px}body.offbeat-candidate :focus-visible{outline:3px solid #3057c8;outline-offset:3px}body.offbeat-candidate header :focus-visible{outline-color:#f7e7a4}.workspace-menu{width:min(440px,calc(100vw - 24px));margin:auto;max-width:calc(100vw - 24px)}.workspace-menu button{width:100%}.workspace-brand{flex-shrink:0}.workspace-owner{overflow-wrap:anywhere;max-width:100%}body.offbeat-candidate [data-workspace-mode=student] .workspace-mode-badge{background:var(--ob-butter);color:var(--ob-ink)}@media(max-width:600px){body.offbeat-candidate .runtime-shell-host.workspace-shell{padding:12px 16px;gap:8px;grid-template-columns:minmax(0,1fr) auto}body.offbeat-candidate .workspace-menu{padding:16px}body.offbeat-candidate .workspace-menu button{min-height:48px}body.offbeat-candidate .workspace-owner{width:100%}body.offbeat-candidate main>section{padding:12px}}@media(prefers-reduced-motion:reduce){body.offbeat-candidate *{animation:none!important;scroll-behavior:auto!important}}
/* A checkbox's associated label is its touch target; keep its visible tick
   conventional while making the actual activated label at least44px tall. */
body.offbeat-candidate label:has(input:is([type=checkbox],[type=radio])){min-height:44px;padding-block:10px;cursor:pointer}
body.offbeat-candidate input[type=radio]{min-height:0;width:22px;height:22px}
body.offbeat-candidate :is(input,select,textarea){min-width:0}
