:root{--sf-modal-gutter:clamp(12px,2vw,24px);--sf-modal-radius:20px;--sf-control-min:42px;--sf-focus:0 0 0 3px rgba(128,180,255,.34)}
dialog.sf-dialog,dialog#publicProfileDialog,dialog#eventEditDialog,dialog#directoryListingDialog{box-sizing:border-box;max-width:min(920px,calc(100vw - 2*var(--sf-modal-gutter)));max-height:calc(100dvh - 2*var(--sf-modal-gutter));overflow:hidden;border-radius:var(--sf-modal-radius)}
dialog#publicProfileDialog>#publicProfileContent,dialog.sf-dialog>.sf-dialog-body{box-sizing:border-box;max-width:100%;max-height:calc(100dvh - 2*var(--sf-modal-gutter));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-bottom:var(--sf-modal-gutter)}
dialog#publicProfileDialog *,dialog#eventEditDialog *,dialog#directoryListingDialog *{box-sizing:border-box;min-width:0}
dialog#publicProfileDialog img,dialog#eventEditDialog img,dialog#directoryListingDialog img{max-width:100%;height:auto}
dialog#publicProfileDialog p,dialog#publicProfileDialog a,dialog#publicProfileDialog strong,dialog#publicProfileDialog span{overflow-wrap:anywhere}
.public-profile-footer{padding:18px 4px 6px;gap:12px;align-items:center;flex-wrap:wrap}.public-profile-footer button,.public-profile-footer .small-button{min-height:var(--sf-control-min);margin:0;flex:0 0 auto}.public-profile-footer button:focus-visible{box-shadow:var(--sf-focus)}
.event-profile-featured-media{display:grid;place-items:center;overflow:hidden;max-width:100%}.event-profile-featured-image{display:block;max-width:100%;max-height:min(48vh,520px);width:auto;height:auto;object-fit:contain;margin-inline:auto}
.sf-empty-state{border:1px dashed var(--line);border-radius:16px;padding:24px;text-align:center}.sf-loading{opacity:.72;pointer-events:none}.sf-error-reference{font-size:.82em;color:var(--muted)}
@media(max-width:640px){dialog.sf-dialog,dialog#publicProfileDialog,dialog#eventEditDialog,dialog#directoryListingDialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.public-profile-footer{padding-bottom:12px}.event-profile-featured-image{max-height:38vh}}

/* StageFeet 2.78.0 — authoritative dialog contract. */
:root{--sf-modal-gutter:clamp(10px,2vw,24px);--sf-modal-radius:20px;--sf-control-min:44px;--sf-focus:0 0 0 3px rgba(107,164,237,.28)}
dialog.sf-dialog,dialog#publicProfileDialog,dialog#eventEditDialog,dialog#directoryListingDialog,dialog#savedSearchDialog,dialog#bookingInquiryDialog{box-sizing:border-box;max-width:min(920px,calc(100vw - 2*var(--sf-modal-gutter)));max-height:calc(100dvh - 2*var(--sf-modal-gutter));overflow-x:hidden!important;overflow-y:auto!important;border-radius:var(--sf-modal-radius)}
dialog :where(input,select,textarea,button){max-width:100%}dialog :where(p,a,strong,span,small,label,h1,h2,h3,code){overflow-wrap:anywhere}.public-profile-footer{position:sticky;bottom:0;z-index:3;margin-inline:-4px;padding:14px 4px 8px;background:linear-gradient(180deg,rgba(16,24,36,0),#101824 24%)}
@media(max-width:640px){dialog.sf-dialog,dialog#publicProfileDialog,dialog#eventEditDialog,dialog#directoryListingDialog,dialog#savedSearchDialog,dialog#bookingInquiryDialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}}

/* StageFeet 2.81.0 administrator troubleshooting diagnostics. */
.admin-troubleshoot-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:12px;border:1px solid rgba(125,167,223,.25);border-radius:14px;background:rgba(74,117,170,.08)}
.admin-troubleshoot-actions small{flex:1 1 260px;color:var(--muted,#9aa9bd)}
.admin-diagnostics{margin-top:12px;padding:14px;border:1px solid var(--line,#29384d);border-radius:16px;background:rgba(8,15,27,.32)}
.admin-diagnostics-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-diagnostics-head h3{margin:.15rem 0 0}
.admin-diagnostics-section{margin-top:15px;padding-top:13px;border-top:1px solid var(--line,#29384d)}.admin-diagnostics-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.admin-diagnostics-list{display:grid;gap:7px;margin-top:8px}.admin-diagnostics-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:center;padding:9px 10px;border:1px solid var(--line,#29384d);border-radius:10px;background:var(--surface-2,#0c1420)}.admin-diagnostics-list small{grid-column:1/-1;color:var(--muted,#9aa9bd)}
@media(max-width:560px){.admin-diagnostics-list>div{grid-template-columns:1fr}.admin-diagnostics-list small{grid-column:auto}}

/* StageFeet 2.82 maturity UX */
.sf-feedback-button{position:fixed;right:18px;bottom:18px;z-index:70;border:1px solid var(--border-standard,#31405a);background:var(--surface-raised,#111d30);color:var(--text,#f2f5f9);border-radius:999px;padding:9px 13px;font:600 12px/1 system-ui;box-shadow:0 8px 28px #0007}.sf-feedback-dialog{width:min(620px,calc(100vw - 28px))}.sf-onboarding{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:15px 18px;margin:16px auto;max-width:1180px;border:1px solid #2b4868;background:#0f2034;border-radius:16px}.sf-onboarding>div:first-child{display:grid;gap:4px}.sf-onboarding-steps{display:flex;gap:10px;flex-wrap:wrap;flex:1}.sf-onboarding-steps span{font-size:12px;color:#a9b8cc;padding:6px 9px;border:1px solid #2a3b53;border-radius:999px}.sf-onboarding-steps span.done{color:#aee6bf;border-color:#315e43}.global-search-wrap::after{content:'⌘K';position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:10px;color:#8190a6;pointer-events:none}.global-search:focus+.global-search-results~*{display:none}@media(max-width:700px){.sf-feedback-button{bottom:82px}.sf-onboarding{margin:12px;align-items:flex-start;flex-direction:column}.global-search-wrap::after{display:none}}
.sf-account-preferences{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-subtle,var(--line));}.sf-preferences-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sf-save-state{min-width:72px;color:var(--muted);font-size:13px}.sf-preferences-grid label{min-width:0}.sf-preferences-grid select,.sf-preferences-grid input{width:100%}@media(max-width:700px){.sf-preferences-grid{grid-template-columns:1fr}}
html[data-density="compact"] .event-card{padding-top:10px;padding-bottom:10px}html[data-density="compact"] .directory-card{padding:12px}
