/* Phase 20 — shared-route responsive repair, retaining the six existing Haaka palettes. */
:root{scroll-padding-top:76px}html,body{max-width:100%}img,svg,video,iframe{max-width:100%}
:where(.container,.shell,.row,.col,.admin14-content,.admin14-content-inner,.admin-panel,.form-layout,.form-card){min-width:0}
:where(.site-footer,.partner17-layout,.region17-layout,.phase15-page,.phase18-submission-page){overflow-wrap:break-word}
:where(.site-footer,.partner17-layout,.region17-layout,.phase15-page) :is(input:not([type=checkbox]),select,textarea){max-width:100%;min-width:0}
/* Universal visible focus, tap targets, labels, and form controls regardless of old CSS order. */
:where(.admin14-shell,.phase15-page,.partner17-layout,.region17-layout,.phase18-submission-page) :is(button,[type=submit],.btn-h){min-height:42px}
:where(.admin14-shell,.phase15-page,.partner17-layout,.region17-layout,.phase18-submission-page) :is(input,select,textarea){font-size:16px;line-height:1.45}
:where(.admin14-shell,.phase15-page,.partner17-layout,.region17-layout,.phase18-submission-page) :is(input,textarea)::placeholder{opacity:.8}
:where(.admin14-shell,.phase15-page,.partner17-layout,.region17-layout,.phase18-submission-page) :is(input,select,textarea):focus-visible{outline:2px solid var(--accent,#b55e32);outline-offset:2px}
/* Public route guards — issue reports originated in about/pitch, regions, partner, submit-story and footer. */
.phase15-page .phase15-form,.partner17-layout .partner13-form,.phase18-submission-page .phase18-submission-form{min-width:0;max-width:100%;box-sizing:border-box}
.phase15-page .phase15-form>*{min-width:0}
.phase15-page .phase15-form :is(input:not([type=checkbox]),textarea),.partner17-layout .partner13-form :is(input:not([type=checkbox]),select,textarea){width:100%;min-width:0;max-width:100%;display:block}
.phase15-page .phase15-form :is(.phase15-consent,.phase15-consent span){min-width:0;overflow-wrap:anywhere}
.phase15-page .phase15-offering-grid>*{min-width:0}
.region17-layout :is(.region12-place-grid,.region12-search-row),.partner17-layout :is(.partner13-columns,.partner13-form-grid,.partner13-screener){min-width:0;max-width:100%}
.region17-layout .region12-search-row>*{min-width:0}
.site-footer .footer-app-badges{align-items:flex-start}.site-footer .footer-app-badges img{display:block;object-fit:contain;height:auto;max-height:60px}
.site-footer .newsletter-strip form{min-width:0}.site-footer .newsletter-strip :is(input,button){min-width:0}
/* Control-room shell and all admin pages, including Phase 13–19 editors. */
.admin14-shell .admin14-body,.admin14-shell .admin14-content,.admin14-shell .admin14-content-inner{min-width:0!important;max-width:100%!important}
.admin14-shell .admin14-content-inner{width:100%!important}
.admin14-shell .admin-panel,.admin14-shell .admin14-report-card{max-width:100%;min-width:0;overflow-wrap:anywhere}
.admin14-shell :is(.admin06-panel-head,.admin-title-bar,.admin14-actions,.phase18-admin-intro,.phase19-panel-heading){flex-wrap:wrap;min-width:0;gap:12px}
.admin14-shell :is(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%;min-width:0;box-sizing:border-box}
.admin14-shell :is(.form-layout,.admin14-form,.phase18-admin-form,.phase19-smtp-form)>label{min-width:0;max-width:100%}
.admin14-shell .admin14-form :is(input,select,textarea),.admin14-shell .form-layout :is(input,select,textarea){width:100%;min-width:0}
.admin14-shell .phase20-table-scroll,.admin14-shell .table-responsive,.admin14-shell .phase18-table-wrap{display:block;max-width:100%;width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.admin14-shell .phase20-table-scroll>table{min-width:540px;border-collapse:collapse}
.admin14-shell .phase20-table-scroll>table :is(td,th){vertical-align:top;overflow-wrap:anywhere}
.admin14-shell .phase20-table-scroll>table :is(button,.btn){white-space:normal}
.admin14-shell .admin14-entry strong,.admin14-shell .admin14-entry small{max-width:100%}
.admin14-shell .admin14-sidebar-foot{max-width:100%;overflow-wrap:anywhere}
.admin14-shell .admin14-bar-label strong{white-space:normal;overflow-wrap:anywhere}
[data-theme=light] .admin14-shell :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:#fffaf3;color:#241d17;border-color:#d1bfae}
[data-theme=dark] .admin14-shell :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:#342b26;color:#fff4eb;border-color:#655447}
[data-theme=dark] .admin14-shell :is(.form-label,label,.admin-title-bar h1,.admin14-content h2,.admin14-content h3){color:var(--admin14-ink)!important}
.admin14-shell :is(.table,.phase18-table){color:var(--admin14-ink);border-color:var(--admin14-border)}
.admin14-shell .table :is(td,th){background:transparent;color:inherit;border-color:var(--admin14-border)}
@media(max-width:1000px){.admin14-shell .admin14-branding-grid,.admin14-shell .admin14-editor-grid{grid-template-columns:1fr!important}}
@media(max-width:767.98px){
 .admin14-shell .admin14-header{height:58px;min-height:58px;padding-inline:12px}
 .admin14-shell .admin14-toolbar{margin-left:auto;min-width:0}
 .admin14-shell .admin14-user-name,.admin14-shell .admin14-label{display:none!important}
 .admin14-shell .admin14-content{padding:18px 14px 68px!important}
 .admin14-shell .admin14-content-inner{padding-inline:0!important}
 .admin14-shell :is(.admin14-editor-grid,.admin14-branding-grid,.phase18-admin-columns,.phase18-form-cols,.phase19-smtp-form){grid-template-columns:minmax(0,1fr)!important}
 .admin14-shell .admin14-title-bar,.admin14-shell .admin14-actions{align-items:flex-start}
 .site-footer .newsletter-strip{flex-direction:column;align-items:stretch;gap:16px}
 .site-footer .newsletter-strip form{width:100%}
 .partner17-layout .partner13-form-grid,.phase15-page .phase15-submit-layout,.phase18-submission-page .phase15-submit-layout{grid-template-columns:1fr!important}
 .region17-layout .region12-search-row{align-items:stretch}
}
@media(max-width:400px){
 .admin14-shell .admin14-metric-row{grid-template-columns:1fr!important}
 .admin14-shell .admin14-user-name,.admin14-shell .admin14-view span{display:none!important}
 .admin14-shell .admin14-toolbar{gap:6px!important}
 .admin14-shell .admin14-content{padding-inline:10px!important}
 .phase15-page .phase15-form{padding:16px!important}
 .site-footer .footer-app-badges{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.admin14-shell *, .site-footer *, .phase15-page *{scroll-behavior:auto;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Super Admin mobile settings — compact accessible control panel. */
.admin14-shell .phase20-mobile-admin{max-width:100%}
.admin14-shell .phase20-mobile-settings{display:grid;gap:15px;margin:20px 0;max-width:850px}
.admin14-shell .phase20-mobile-toggle{display:flex;align-items:start;gap:15px;padding:14px 16px;border:1px solid var(--admin14-border);background:var(--admin14-paper);border-radius:11px;cursor:pointer}
.admin14-shell .phase20-mobile-toggle input{flex:none;width:21px;height:21px;accent-color:var(--admin14-copper);margin-top:3px}
.admin14-shell .phase20-mobile-toggle span{display:grid;gap:6px;min-width:0}
.admin14-shell .phase20-mobile-toggle strong{color:var(--admin14-ink)}
.admin14-shell .phase20-mobile-toggle small{color:var(--admin14-muted)}
.admin14-shell .phase20-api-status{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--admin14-muted)}
.admin14-shell .phase20-api-status>*{border:1px solid var(--admin14-border);border-radius:8px;padding:9px 12px}
