/* Consolidated v190: source order preserved, original file sections labeled. */

/* === hub-aligned-theme.css === */
/* Sanctum Eros — unified Hub-aligned Portal design, October 2026.
   Loaded LAST to resolve conflicting legacy UI theme overrides. */
:root{color-scheme:dark;--se-black:#050405;--se-canvas:#080608;--se-panel:#100b0e;--se-raised:#181016;--se-edge:#35222b;--se-accent:#74304a;--se-accent-hover:#93415e;--se-ink:#f3ecef;--se-muted:#c0afb6;--se-focus:#e4a4bb}
html{background:var(--se-black);scrollbar-color:#52313f var(--se-black)}
body,body[data-page],body[data-page="member"],body[data-page="admin"]{background:var(--se-canvas)!important;color:var(--se-ink)!important;--se-ui-bg:var(--se-canvas)!important;--se-ui-panel:var(--se-panel)!important;--se-ui-panel-hover:var(--se-raised)!important;--se-ui-border:var(--se-edge)!important;--se-ui-accent:#a76d83!important;--se-ui-text:var(--se-ink)!important;--se-ui-muted:var(--se-muted)!important;--se-surface:var(--se-panel)!important;--se-surface-raised:var(--se-raised)!important;--se-subtle:var(--se-muted)!important;--se-rose:#b77c93!important;--se-edge:var(--se-edge)!important}
body :is(.portalHeader,.portalPrimaryNav,.mobilePortalNav,.portalWelcome,.portalProcess,.portalExplainItem,.card,.eventCard,.courseCard,.courseProgressCard,.assignedCourse,.memberQuickNav,.memberMembershipSummary,.memberNextEvent,.seActionCenter,.memberDashboardSection,.memberAccountTools,.memberEventDetail,.memberEventReadiness,.seReadinessOverview,.memberSettingCard,.adminHomeCard,.adminQuickActions,.adminrow,.memberrow,.tabpane,.reviewfield,.portalPanel,.lookupBox){background-color:var(--se-panel)!important;border-color:var(--se-edge)!important;box-shadow:none!important;color:var(--se-ink)}
body :is(.portalMasthead,.portalWelcome,.seWelcomePanel,.routeIntro,.pageHero){background:radial-gradient(ellipse at 82% 22%,#29101b 0%,#11080d 47%,#070506 88%)!important;border-color:#482635!important}
body .portalMasthead .mastheadOverlay{background:linear-gradient(90deg,rgba(4,3,5,.93),rgba(7,3,5,.56))!important}
body :is(.portalHeader,.mobilePortalNav){background:#060406!important;border-bottom:1px solid #38202b!important}
body :is(h1,h2,.portalMasthead h2,.portalWelcome h2,.routeIntro h2){color:#f6eff2}
body :is(.portalMasthead h2,.portalWelcome h2,.routeIntro h2){font-family:Georgia,'Times New Roman',serif;letter-spacing:-.025em}
body :is(p,.desc,.muted,.formintro,.sectionnote){line-height:1.62}
body :is(.eyebrow,.heroJumpLabel){color:#c592a6!important;letter-spacing:.12em}
body :is(button.primary,a.primary,.primary,[type="submit"].primary){background:#63213b!important;border:1px solid #944963!important;color:#fff!important;box-shadow:none!important}
body :is(button.primary,a.primary,.primary,[type="submit"].primary):hover{background:#81314d!important;border-color:#bc708c!important}
body :is(button.ghost,a.ghost,.ghost,.memberTab,.adminGroup,#adminTabs button,.heroJumpGrid a){background:#150e13!important;border:1px solid #48303b!important;color:#f0e5e9!important;box-shadow:none!important}
body :is(.memberTab.active,.adminGroup.active,#adminTabs button.active,.portalPrimaryNav a[aria-current="page"]){background:#3a1828!important;border-color:#99506a!important;color:#fff!important;box-shadow:none!important}
body :is(input,select,textarea){background:#0b080a!important;border-color:#5a3b48!important;color:#f7f0f3!important;accent-color:#9c4768}
body :is(input,textarea)::placeholder{color:#aa939e}
body :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--se-focus)!important;outline-offset:3px!important}
body :is(dialog,.memberDialog,#adminDialog){background:#100a0e!important;border-color:#5a3344!important;color:#f3eaf0!important}
body :is(.badge,.certBadge,.eventState){background:#2a1721!important;border-color:#674052!important;color:#ead8df!important}
body :is(.portalHeader a,.portalPrimaryNav a,.mobilePortalNav a){text-underline-offset:5px}
body :is(.courseCard,.assignedCourse,.courseProgressCard){border-radius:10px!important}
/* Larger selectable answers in course assessments; maintain native keyboard and screen-reader semantics. */
body[data-page="member"] :is(.courseQuestion,.questionCard,.quizQuestion,.assessmentQuestion) :is(label,.option,.answerOption),
body[data-page="member"] :is(.courseAnswer,.quizOption,.answerChoice){display:flex;align-items:center;gap:12px;min-height:52px;padding:13px 15px;border:1px solid #513341;border-radius:10px;background:#160f14;color:#f1e8ec;cursor:pointer;line-height:1.5}
body[data-page="member"] :is(.courseQuestion,.questionCard,.quizQuestion,.assessmentQuestion) label:has(input:checked),
body[data-page="member"] :is(.courseAnswer,.quizOption,.answerChoice):has(input:checked){background:#432034!important;border-color:#c07a96!important;box-shadow:inset 0 0 0 1px #c07a96!important}
body input[type="radio"],body input[type="checkbox"]{width:20px;height:20px;flex:none;accent-color:#b96082}
@media(max-width:760px){body .portalHeader{padding:12px 16px!important}body .brandLockup h1{font-size:clamp(1.05rem,5vw,1.4rem)}body :is(button,a[role="button"]){min-height:42px}body .portalWelcome{padding:clamp(18px,5vw,30px)!important}body .memberQuickGrid{gap:9px}body .heroJumpGrid{grid-template-columns:repeat(2,minmax(0,1fr))}body .portalPrimaryNav{max-width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* === portal-usability.css === */
/* Portal UX refinement — loaded after the Hub theme. No application DOM or state changes. */
:root{color-scheme:dark}
body[data-page="events"] :is(.portalMasthead,.portalWelcome,.portalProcess),
body[data-page="membership"] :is(.portalMasthead,.portalWelcome,.portalProcess),
body[data-page="education"] :is(.portalMasthead,.portalWelcome,.portalProcess),
body[data-page="community"] :is(.portalMasthead,.portalWelcome,.portalProcess),
body[data-page="rules"] :is(.portalMasthead,.portalWelcome,.portalProcess),
body[data-page="safety"] :is(.portalMasthead,.portalWelcome,.portalProcess){display:none!important}
body[data-page="home"] .portalMasthead{margin-bottom:clamp(16px,3vw,28px)}
body[data-page="home"] .portalWelcome{margin-top:0}
body .routeIntro{padding-block:clamp(28px,5vw,60px)!important;margin-bottom:clamp(18px,4vw,34px)!important}
body .routeIntro h2{font-size:clamp(2.25rem,7vw,4.6rem)!important;line-height:1.08!important}
body :is(.card,.eventCard,.courseCard,.adminHomeCard,.memberSettingCard){min-width:0}
body :is(.card,.eventCard,.courseCard,.adminHomeCard,.memberSettingCard) :is(h2,h3,p){overflow-wrap:break-word}
body :is(.portalPrimaryNav,.mobilePortalNav,.memberQuickNav,.memberSecondaryTabs,.adminWorkspaceTools){scrollbar-width:thin}
body :is(.memberQuickNav,.memberSecondaryTabs) button{min-height:46px}
body :is(.adminWorkspaceTools,.memberDashboardHead,.memberHeaderActions,.rowactions){min-width:0;flex-wrap:wrap}
body :is(input,select,textarea){max-width:100%;min-width:0;font-size:16px}
body :is(button,a[role="button"],.buttonLink){touch-action:manipulation}
body :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #e4a4bb!important;outline-offset:3px!important}
body :is(.memberDialog,#adminDialog,dialog){max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
body :is(.memberDialog,#adminDialog,dialog) .memberShell{min-width:0}
body .hidden,[hidden]{display:none!important}
@media(max-width:760px){
 html,body{max-width:100%;overflow-x:clip}
 body main{width:100%;max-width:100%;padding-inline:clamp(12px,4vw,20px)}
 body :is(.portalHeader,.headerActions,.heroActions,.rowactions){min-width:0;max-width:100%}
 body .routeIntro{padding-inline:clamp(16px,4vw,24px)!important}
 body :is(.memberDashboardHead,.memberHeaderActions){align-items:stretch}
 body .memberHeaderActions button{flex:1 1 auto}
 body .memberQuickNav{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body :is(.memberQuickNav,.memberSecondaryTabs) button{white-space:normal;overflow-wrap:anywhere}
 body .memberAccountSettingsGrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important}
 body :is(.grid,.applicationGrid,.reviewgrid,.two){min-width:0}
 body :is(.card,.eventCard,.courseCard){padding:clamp(14px,4vw,22px)}
 body :is(.memberDialog,#adminDialog,dialog){width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;margin-inline:auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}


/* === portal-human-ux.css === */
/* Final human-use pass: navigation, feedback, touch targets, readability. */
:root{color-scheme:dark}
.memberReturnBar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px;padding:10px 0 14px;border-bottom:1px solid rgba(190,145,151,.23)}
.memberReturnBar button{min-height:44px;padding:10px 16px;border:1px solid #72505a;border-radius:9px;background:#22181c;color:#f7e9e9;font-weight:700;cursor:pointer}
.memberReturnBar button:hover{background:#38242d}
.memberReturnBar span{font-size:.84rem;color:#cbb6bb;letter-spacing:.03em}
.memberQuickNav{position:relative;z-index:2}
.memberQuickNav button[aria-current="page"],#adminTabs button[aria-current="page"]{box-shadow:inset 0 -3px 0 #d3a3ab}
#adminToolSearch{min-height:48px;width:min(100%,430px);background:#171215;color:#f8eded;border:1px solid #78535e;border-radius:10px;padding:12px 15px}
#adminToolSearchStatus{min-height:1.4em;color:#d8c4c9}
#adminTabs.searching button[data-tab]:not(.toolSearchHidden){display:inline-flex!important;visibility:visible!important}
#adminTabs.searching button.toolSearchHidden{display:none!important}
#adminTabs.searching{display:flex!important;flex-wrap:wrap;gap:8px}
#adminTabs.searching button[data-tab]{min-height:44px}
.memberSecondaryTabs{gap:8px}
.memberSecondaryTabs button{min-height:48px;text-align:left}
:is(.memberSettingCard,.memberTab,.adminGroup,.tab){transition:background-color .12s ease,border-color .12s ease}
:is(.memberSettingCard,.memberTab,.adminGroup,.tab):focus-visible{outline:3px solid #e4b4bd!important;outline-offset:2px}
:is(.memberPane,.adminPane) :is(h2,h3){scroll-margin-top:90px}
:is(.memberPane,.adminPane) p{max-width:85ch}
@media(max-width:680px){.memberReturnBar{position:sticky;top:0;background:#140f12;z-index:5;padding:12px 0}.memberReturnBar button{width:100%}#adminToolSearch{width:100%}.adminWorkspaceTools{display:flex;flex-wrap:wrap}.adminWorkspaceTools label{width:100%}}
@media(prefers-reduced-motion:reduce){:is(.memberSettingCard,.memberTab,.adminGroup,.tab){transition:none!important}}


/* === portal-deep-ux.css === */
/* Progressive enhancement: wordmark, responsive hierarchy, keyboard support. */
.visuallyHidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.sePortalWordmark{display:block;width:min(100%,560px);height:auto;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.28))}
.seWordmarkHeader{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px clamp(14px,3vw,32px);background:#100b0e;border-bottom:1px solid #5a303c}
.seWordmarkHeader a{display:inline-flex;align-items:center;max-width:min(65%,350px);text-decoration:none}
.seWordmarkHeader .sePortalWordmark{width:100%;max-height:94px}
.seWordmarkHeader>span{font-size:.77rem;letter-spacing:.12em;text-transform:uppercase;color:#dbc0c6}
.sePortalWordmarkHome{width:min(100%,780px);margin:0 auto 10px}
.mastheadOverlay:has(.sePortalWordmarkHome){text-align:center}
.mastheadOverlay:has(.sePortalWordmarkHome) p{max-width:66ch;margin-inline:auto}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #e7a8b6!important;outline-offset:3px}
:where(button,[role=button],input,select,textarea){font:inherit}
:where(.memberPane,.tabpane) :where(p,.sectionnote){overflow-wrap:anywhere}
#adminToolSearchStatus[role=status]{display:block}
.sePortalPageTop{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 0}
.sePortalPageTop a{color:#f0d8dd;text-decoration:underline;text-underline-offset:3px}
@media(max-width:650px){.seWordmarkHeader{flex-direction:column;gap:2px;padding:8px 12px}.seWordmarkHeader a{max-width:min(92%,320px)}.seWordmarkHeader .sePortalWordmark{max-height:76px}.sePortalWordmarkHome{width:100%}.mastheadOverlay:has(.sePortalWordmarkHome){padding:22px 12px}.memberQuickNav{overflow-x:auto;scrollbar-width:thin}.memberQuickNav button{flex:0 0 auto;min-height:44px}}
@media(prefers-reduced-motion:reduce){.sePortalWordmark{transition:none}}


/* === dialog-viewport-fix.css === */
/* Fix native dialog clipping on iOS Safari: center in viewport without competing left:50% translations. */
html body dialog[open]:not([data-inline-root]) {
 position:fixed!important; inset:0!important; top:0!important; left:0!important; right:0!important; bottom:0!important;
 transform:none!important; translate:none!important; margin:auto!important;
 box-sizing:border-box!important; width:min(760px,calc(100vw - 24px))!important;
 max-width:calc(100vw - 24px)!important; max-height:calc(100dvh - 24px)!important;
 overflow-x:hidden!important; overflow-y:auto!important; overscroll-behavior:contain;
 padding:clamp(14px,3vw,24px)!important;
}
html body dialog[open]:not([data-inline-root]) > :is(form,.admin,.memberShell),
html body dialog[open]:not([data-inline-root]) :is(.two,.choiceGrid,.vettingIntro,.applicationForm,.rulesPurposeGrid,.rulesAccordion,.ruleBody){
 min-width:0!important; max-width:100%!important; box-sizing:border-box!important;
}
html body dialog[open]:not([data-inline-root]) :is(input,select,textarea,button){max-width:100%;box-sizing:border-box}
html body dialog[open]:not([data-inline-root]) :is(p,span,label,li,strong){overflow-wrap:anywhere}
html body dialog[open]:not([data-inline-root]) .x{position:sticky!important;top:0!important;float:right!important;z-index:10!important;min-width:44px;min-height:44px}
@media(max-width:600px){html body dialog[open]:not([data-inline-root]){width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;padding:12px!important;border-radius:14px!important}}


/* === role-applications.css === */
/* Distinct full-screen application workspace, preserving original form controls and submission handlers. */
#staffApplicationDialog,#dmApplicationDialog{position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#101217!important;color:#f2eae1!important;overflow-y:auto!important;overscroll-behavior:contain;box-sizing:border-box}
#staffApplicationDialog::backdrop,#dmApplicationDialog::backdrop{background:rgba(0,0,0,.83)}
#staffApplicationDialog .seRoleApplication,#dmApplicationDialog .seRoleApplication{position:relative;display:block!important;width:min(100% - 36px,920px)!important;max-width:920px!important;margin:0 auto!important;padding:clamp(70px,9vw,110px) 0 110px!important;background:transparent!important;box-shadow:none!important;border:0!important;box-sizing:border-box}
.seApplicationKicker{color:#cba88a;font-size:12px;font-weight:800;letter-spacing:.19em;margin:0 0 14px}
.seApplicationRoleTitle{font-size:clamp(22px,3vw,38px);line-height:1.15;font-weight:800;letter-spacing:.01em;max-width:780px;margin-bottom:14px}
.seApplicationRoleDescription{color:#d5c7bb;line-height:1.7;max-width:720px;margin:0 0 34px;font-size:15px}
#staffApplicationDialog .seRoleApplication>h2,#dmApplicationDialog .seRoleApplication>h2{font-size:clamp(27px,4vw,43px);line-height:1.1;letter-spacing:-.02em;margin:0 0 22px}
#staffApplicationDialog .seRoleApplication label,#dmApplicationDialog .seRoleApplication label{color:#f3e9df;line-height:1.55}
#staffApplicationDialog .seRoleApplication input:not([type=checkbox]),#staffApplicationDialog .seRoleApplication select,#staffApplicationDialog .seRoleApplication textarea,#dmApplicationDialog .seRoleApplication input:not([type=checkbox]),#dmApplicationDialog .seRoleApplication select,#dmApplicationDialog .seRoleApplication textarea{background:#1b2028!important;border:1px solid #5b5151!important;border-radius:10px!important;color:#fff!important;padding:13px!important;max-width:100%;box-sizing:border-box}
#staffApplicationDialog .seRoleApplication input:focus-visible,#staffApplicationDialog .seRoleApplication textarea:focus-visible,#staffApplicationDialog .seRoleApplication select:focus-visible,#dmApplicationDialog .seRoleApplication input:focus-visible,#dmApplicationDialog .seRoleApplication textarea:focus-visible,#dmApplicationDialog .seRoleApplication select:focus-visible{outline:2px solid #d8a27c!important;outline-offset:2px}
#staffApplicationDialog .seRoleApplication>.x,#dmApplicationDialog .seRoleApplication>.x{position:fixed!important;right:clamp(15px,4vw,44px)!important;top:18px!important;z-index:100!important;background:#30282b!important;color:white!important;border:1px solid #76656a!important;width:45px;height:45px;border-radius:50%!important}
.seRoleApplication .seApplicationDivider{display:flex;align-items:center;gap:16px;font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#d9b499;margin:32px 0 22px;padding:15px 0;border-top:1px solid #50454b}
.seRoleApplication .seApplicationDivider span{font-weight:500;color:#9b8e8b;letter-spacing:0;text-transform:none}
@media(max-width:640px){#staffApplicationDialog .seRoleApplication,#dmApplicationDialog .seRoleApplication{width:calc(100% - 32px)!important;padding-top:82px!important}#staffApplicationDialog .two,#dmApplicationDialog .two{display:grid!important;grid-template-columns:1fr!important}}
/* Accessible, progressive full-page applications */
.seRoleApplication .seStepHidden{display:none!important}
.seStepNav{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0 12px!important}
.seStepNav span{padding:9px 11px;border:1px solid #51454a;border-radius:9px;color:#b9aca9;font-size:12px;background:#191a20}
.seStepNav span.active{border-color:#d3a582;color:#fff;background:#3c2928}.seStepNav span.complete{border-color:#688174;color:#e3f0e6}
.seStepNav small{font-size:12px}.seStepProgress{height:5px;background:#3c3337;border-radius:9px;overflow:hidden;margin-bottom:30px}.seStepProgress span{display:block;height:100%;background:#caa07f;transition:width .2s}
.seStepActions{display:flex;justify-content:space-between;gap:12px;position:sticky;bottom:0;background:#101217;padding:18px 0;border-top:1px solid #52464b;z-index:5}
.seRoleApplication [hidden]{display:none!important}.seRoleApplication label{display:block;margin-bottom:19px}.seRoleApplication textarea{min-height:108px}.seRoleApplication .two{gap:16px}
@media(max-width:640px){.seStepNav small{display:none}.seStepNav span{flex:1;text-align:center}.seStepActions button{flex:1}}


/* === membership-refresh.css === */
/* Membership application: spacious, readable full-page workspace */
#membershipDialog{width:min(960px,100vw)!important;max-width:100vw!important;max-height:100dvh!important;height:min(100dvh,980px);margin:auto!important;padding:0!important;border:1px solid #61545d;border-radius:18px;background:#151319;color:#f6f0f2;box-shadow:0 30px 100px #000b;overflow:auto}
#membershipDialog::backdrop{background:rgba(5,3,7,.86);backdrop-filter:blur(5px)}
#membershipForm{padding:clamp(22px,4vw,54px)!important;max-width:920px;margin:auto;display:block}
#membershipForm>h2{font-size:clamp(28px,4vw,44px);line-height:1.12;letter-spacing:-.035em;margin:12px 0 18px}
#membershipForm .vettingIntro{padding:16px 20px;background:#211b24;border:1px solid #463841;border-radius:14px;margin-bottom:22px}
#membershipForm .vettingIntro p:not(:first-child){display:none}
#membershipForm label{display:block;color:#f1e7eb;font-size:14px;font-weight:650;line-height:1.5;margin:14px 0}
#membershipForm input:not([type=checkbox]):not([type=radio]),#membershipForm select,#membershipForm textarea{display:block;width:100%;box-sizing:border-box;background:#28222c;color:#fff;border:1px solid #665661;border-radius:10px;min-height:47px;padding:12px 14px;margin-top:7px;font:inherit;font-weight:400}
#membershipForm textarea{min-height:90px;resize:vertical}
#membershipForm :is(input,select,textarea):focus-visible{outline:2px solid #d4a9bd;outline-offset:2px}
#membershipForm .vettingDisclosure{padding:16px 20px;margin:14px 0;border:1px solid #69515f;border-radius:14px;background:#211b24}
#membershipForm .vettingDisclosure label{margin:0}
#membershipForm .conditionalDisclosure:not(.hidden){margin-top:15px;border-top:1px solid #594550;padding-top:12px}
#membershipForm .membershipPrepNotice{border-radius:14px}
#membershipForm .two{gap:16px}
#membershipForm .hidden{display:none!important}
@media(max-width:650px){#membershipDialog{border-radius:0;height:100dvh;max-height:100dvh}#membershipForm{padding:24px 18px 80px!important}#membershipForm .two{display:block}#membershipForm input,#membershipForm select,#membershipForm textarea{font-size:16px!important}}


/* === unified-dark-forms.css === */
/* Unified dark form surfaces: public, member and administration. */
:root{color-scheme:dark}
body[data-page] dialog:not([id="memberDialog"]),body[data-page] dialog.wide{background:#100f14!important;color:#f2edf0!important;border:1px solid #59424e!important;box-shadow:0 24px 90px #000d!important;max-width:min(94vw,980px);max-height:94dvh;overflow-y:auto;overflow-x:hidden}
body[data-page] dialog::backdrop{background:rgba(2,1,5,.87)!important}
body[data-page] dialog :is(.admin,.memberShell,.applicationForm,form,.sePurposeShell,.seCertExperience){min-width:0;max-width:100%;box-sizing:border-box}
body[data-page] dialog :is(.sePurposeHead,.seGuidedHead,.seCertExperienceHead){background:#1d1921!important;border-color:#5d4855!important}
body[data-page] dialog :is(.sePurposeBody,.seGuidedBody,.sePurposeStep,.seGuidedStep,.sePurposeReview,.seCertExperienceBody){background:transparent!important;color:#f2edf0!important}
body[data-page] dialog :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:#1d1b23!important;border:1px solid #6c5967!important;color:#fff!important;max-width:100%;box-sizing:border-box}
body[data-page] dialog :is(input,textarea,select):focus-visible{outline:2px solid #d6ac92!important;outline-offset:2px}
body[data-page] dialog :is(label,legend,h2,h3,h4){color:#f5eef1}
body[data-page] dialog :is(.sectionnote,.meta,.formintro,small){color:#cfc1c9}
body[data-page] dialog :is(.sePurposeNav,.seGuidedNav){background:#100f14!important;border-color:#5d4855!important}
body[data-page] dialog :is(.sePurposeStep,.seGuidedStep,.seCertQuestion){min-height:0!important;height:auto!important}
body[data-page] dialog [hidden],body[data-page] dialog .hidden{display:none!important}
body[data-page] dialog :is(.two,.grid,.formGrid){min-width:0}
body[data-page] dialog :is(.two,.grid,.formGrid)>*{min-width:0}
/* Admin shell: reduce top-of-page bulk without hiding operational tools. */
body[data-page="admin"] #adminDialog{width:min(98vw,1400px)!important;max-width:min(98vw,1400px)!important;background:#111015!important;padding:clamp(12px,2vw,22px)!important}
body[data-page="admin"] #adminDialog>.admin>h2{font-size:clamp(1.35rem,3vw,1.8rem)!important;line-height:1.15;margin:.2rem 0 .6rem}
body[data-page="admin"] #adminDialog>.admin>.eyebrow{font-size:.68rem;letter-spacing:.1em}
body[data-page="admin"] #adminGroups{display:flex;gap:7px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin;padding:6px 0}
body[data-page="admin"] #adminGroups>button{flex:0 0 auto;min-height:40px;padding:8px 12px;white-space:nowrap}
body[data-page="admin"] #adminTabs{gap:6px;overflow-x:auto;scrollbar-width:thin}
body[data-page="admin"] #adminTabs button{min-height:38px}
body[data-page="admin"] :is(.adminHomeCard,.adminActionQueue,.adminQuickActions,.tabpane,.adminHealthWrap){background-color:#19171e;border-color:#4b3b48;color:#f2edf0}
body[data-page="admin"] :is(.adminHomeGrid,.adminQuickGrid)>*{min-width:0}
@media(max-width:620px){body[data-page] dialog{width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;max-height:calc(100dvh - 18px)!important;padding:12px!important}body[data-page="admin"] #adminDialog{width:calc(100vw - 10px)!important;max-width:calc(100vw - 10px)!important}body[data-page="admin"] .memberBrandHeader{padding:12px!important}body[data-page="admin"] .sePortalWordmark{max-width:min(72vw,280px)!important;height:auto!important}body[data-page] dialog :is(.two,.formGrid){grid-template-columns:minmax(0,1fr)!important}body[data-page] dialog :is(button,input,select,textarea){font-size:16px}}

