/* CMS v5.64.0 — shared responsive hardening layer.
   Loaded after admin.css / public.css so it can safely normalize desktop, tablet,
   mobile, long text, touch targets, tables, editors, dialogs, and navigation. */

html{max-width:100%;overflow-x:clip}
body{max-width:100%;overflow-wrap:break-word}
img,video,canvas{max-width:100%}
iframe{max-width:100%}
pre,code{max-width:100%;overflow-wrap:anywhere}
pre{overflow:auto;-webkit-overflow-scrolling:touch}
input,textarea,select,button{min-width:0;max-width:100%}
textarea{max-width:100%}

/* ---------- Administrator: shared safety ---------- */
body.panel-page .panel-shell,
body.panel-page .panel-main,
body.panel-page .panel-content,
body.panel-page .panel-card,
body.panel-page .panel-card>*,
body.panel-page .article-form,
body.panel-page .editor-main,
body.panel-page .editor-side,
body.panel-page .settings-workspace,
body.panel-page .settings-grid-wide,
body.panel-page .toolbar-row,
body.panel-page .welcome-row,
body.panel-page .card-title-row{min-width:0}

body.panel-page :is(h1,h2,h3,h4,p,small,strong,a,span,label,td,th){overflow-wrap:anywhere}
body.panel-page .table-wrap,
body.panel-page .responsive-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
body.panel-page .data-table{max-width:none}
body.panel-page .rich-editor :is(img,video,iframe,table),
body.panel-page .article-preview-stage iframe{max-width:100%}
body.panel-page .rich-editor table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
body.panel-page .action-row,
body.panel-page .filter-bar,
body.panel-page .content-list-actions,
body.panel-page .content-filter-buttons{min-width:0}
body.panel-page .btn{max-width:100%;white-space:normal;text-align:center;line-height:1.3}

/* Tablet Administrator: use the same accessible off-canvas menu as mobile.
   This prevents a 245px permanent sidebar from squeezing 768–1100px screens. */
@media (max-width:1100px){
  body.panel-page.sidebar-open{overflow:hidden}
  body.panel-page .sidebar{
    left:-340px;right:auto;transform:none!important;visibility:hidden;
    width:min(320px,86vw);padding:18px 14px max(18px,env(safe-area-inset-bottom));
    box-shadow:24px 0 60px rgba(0,0,0,.22);transition:left .22s ease,visibility .22s ease;
  }
  body.panel-page.sidebar-open .sidebar{left:0;visibility:visible}
  body.panel-page .sidebar-mobile-close{display:grid;place-items:center}
  body.panel-page .sidebar-overlay{
    display:block!important;position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.38);
    opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;
  }
  body.panel-page.sidebar-open .sidebar-overlay{opacity:1;visibility:visible;pointer-events:auto}
  body.panel-page .panel-main{margin-left:0;width:100%}
  body.panel-page .menu-toggle{display:grid;place-items:center}
  body.panel-page .topbar{padding-inline:18px}
  body.panel-page .panel-content{padding:22px 18px 34px}
  body.panel-page .article-form{grid-template-columns:1fr;gap:16px}
  body.panel-page .editor-side{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
  body.panel-page .editor-side .panel-card{margin:0}
  body.panel-page .settings-grid{grid-template-columns:1fr}
  body.panel-page .settings-workspace{max-width:100%}
  body.panel-page .welcome-row,
  body.panel-page .toolbar-row,
  body.panel-page .card-title-row{flex-wrap:wrap}
}

@media (max-width:900px){
  body.panel-page .topbar{height:70px;padding-inline:14px;gap:6px}
  body.panel-page .topbar h1{font-size:18px;max-width:min(58vw,620px)}
  body.panel-page .panel-content{padding:18px 14px 30px}
  body.panel-page .editor-side{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.panel-page .stats-grid,
  body.panel-page .stats-grid.three,
  body.panel-page .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.panel-page .toolbar-row,
  body.panel-page .welcome-row{align-items:stretch}
  body.panel-page .toolbar-row>.action-row,
  body.panel-page .welcome-row>.action-row{width:100%}
  body.panel-page .filter-bar{width:100%;flex-wrap:wrap}
  body.panel-page .filter-bar input{flex:1 1 260px;min-width:0}
  body.panel-page .filter-bar select{flex:1 1 180px;width:auto}
  body.panel-page .article-preview-shell{width:100%;height:min(94dvh,980px);border-radius:14px}
  body.panel-page .article-preview-stage{padding:10px}
  body.panel-page .media-modal-card,
  body.panel-page .calendar-day-dialog,
  body.panel-page .contact-preview-dialog{width:min(100%,760px);max-width:100%}
}

@media (max-width:760px){
  body.panel-page .topbar{padding-inline:max(10px,env(safe-area-inset-left)) max(10px,env(safe-area-inset-right))}
  body.panel-page .panel-content{padding:14px 10px max(28px,env(safe-area-inset-bottom))}
  body.panel-page .panel-card{padding:16px;border-radius:12px}
  body.panel-page .panel-card.no-pad{padding:0}
  body.panel-page .card-title-row{align-items:flex-start}
  body.panel-page .card-title-row>.action-row,
  body.panel-page .panel-card>.card-title-row:first-child>.action-row{width:100%}
  body.panel-page .card-title-row>.action-row .btn{flex:1 1 auto}
  body.panel-page .editor-side{grid-template-columns:1fr}
  body.panel-page .editor-toolbar{max-width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}
  body.panel-page .editor-toolbar>*{flex:0 0 auto}
  body.panel-page .rich-editor{min-height:52vh;padding:14px}
  body.panel-page .title-input{font-size:clamp(21px,6vw,25px)}
  body.panel-page .filter-bar{display:grid;grid-template-columns:1fr 1fr}
  body.panel-page .filter-bar input{grid-column:1/-1}
  body.panel-page .filter-bar select{width:100%}
  body.panel-page .action-row{align-items:stretch}
  body.panel-page .action-row form{max-width:100%}
  body.panel-page .media-modal,
  body.panel-page .featured-crop-modal,
  body.panel-page .page-og-crop-modal,
  body.panel-page .article-preview-modal,
  body.panel-page .calendar-day-modal,
  body.panel-page .contact-preview-modal{padding:10px}
  body.panel-page .media-modal-card,
  body.panel-page .featured-crop-card,
  body.panel-page .page-og-crop-card,
  body.panel-page .calendar-day-dialog,
  body.panel-page .contact-preview-dialog{max-height:92dvh;border-radius:14px}
  body.panel-page .article-preview-toolbar{height:auto;min-height:58px;flex-wrap:wrap;padding:10px}
  body.panel-page .preview-device-buttons{max-width:100%;overflow-x:auto;padding-bottom:2px}
  body.panel-page .preview-device-buttons button{flex:0 0 auto}
  body.panel-page .data-table{min-width:680px}
}

@media (max-width:520px){
  body.panel-page .topbar h1{max-width:48vw;font-size:17px}
  body.panel-page .user-chip div{display:none}
  body.panel-page .stats-grid,
  body.panel-page .stats-grid.three,
  body.panel-page .metric-grid{grid-template-columns:1fr}
  body.panel-page .filter-bar{grid-template-columns:1fr}
  body.panel-page .filter-bar input{grid-column:auto}
  body.panel-page .welcome-row>.btn,
  body.panel-page .toolbar-row>.btn,
  body.panel-page .content-list-actions>.btn{width:100%}
  body.panel-page .action-row.mobile-stack,
  body.panel-page .panel-card>.card-title-row:first-child>.action-row{display:grid;grid-template-columns:1fr;width:100%}
  body.panel-page .panel-card>.card-title-row:first-child>.action-row .btn,
  body.panel-page .panel-card>.card-title-row:first-child>.action-row form,
  body.panel-page .panel-card>.card-title-row:first-child>.action-row form .btn{width:100%}
  body.panel-page .article-preview-stage iframe{min-height:520px}
}

@media (max-width:360px){
  body.panel-page .panel-content{padding-inline:8px}
  body.panel-page .panel-card{padding:14px}
  body.panel-page .topbar h1{max-width:42vw}
}

/* ---------- Public website ---------- */
body.site-public .container{max-width:100%}
body.site-public :is(.nav-wrap,.hero-inner,.homepage-hero-inner,.site-content-grid,.article-grid,.homepage-popular-grid,.footer-main-grid,.featured-card,.post-slide-link){min-width:0}
body.site-public :is(h1,h2,h3,h4,p,small,strong,a,span){overflow-wrap:anywhere}
body.site-public :is(.prose,.article-prose,.page-content) :is(img,video,iframe){max-width:100%;height:auto}
body.site-public :is(.prose,.article-prose,.page-content) table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
body.site-public :is(.prose,.article-prose,.page-content) pre{max-width:100%;overflow-x:auto}
body.site-public .btn,
body.site-public .nav-cta{white-space:normal;text-align:center}

/* Tablet public header: switch to compact CSS-driven menu before nav links become cramped. */
@media (max-width:1024px){
  body.site-public .nav-wrap{gap:10px}
  body.site-public .site-brand{max-width:calc(100% - 190px)!important;min-width:0}
  body.site-public .site-brand-text{max-width:36vw!important}
  body.site-public .site-header-tools{margin-left:auto;flex:0 0 auto;min-width:0}
  body.site-public .site-menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;min-width:42px;height:42px;padding:0 10px!important;gap:7px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);flex:0 0 auto;white-space:nowrap;overflow:hidden}
  body.site-public .site-menu-toggle-icon{display:block;flex:0 0 22px;width:22px;height:22px}
  body.site-public .site-menu-close-icon{display:none!important}
  body.site-public .site-nav-css-toggle:checked~.site-header-tools .site-menu-open-icon{display:none!important}
  body.site-public .site-nav-css-toggle:checked~.site-header-tools .site-menu-close-icon{display:block!important}
  body.site-public .site-menu-toggle-label{display:inline!important;white-space:nowrap;line-height:1}
  body.site-public .site-nav-css-toggle{display:block;position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
  body.site-public .site-nav-mega{
    position:absolute!important;top:100%!important;left:20px!important;right:20px!important;bottom:auto!important;
    width:auto!important;height:auto!important;max-height:min(76vh,calc(100dvh - 86px))!important;z-index:80;
    display:block!important;padding:10px!important;border:1px solid var(--line)!important;border-top:0!important;
    border-radius:0 0 16px 16px!important;background:var(--surface)!important;box-shadow:0 18px 42px rgba(10,12,18,.16)!important;
    overflow-y:auto;overscroll-behavior:contain;opacity:0!important;visibility:hidden;pointer-events:none;transform:translateY(-8px)!important;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important
  }
  body.site-public .site-nav-css-toggle:checked~.site-nav-mega{opacity:1!important;visibility:visible;pointer-events:auto;transform:translateY(0)!important}
  body.site-public .site-menu-links{display:grid!important;gap:4px!important;padding:0!important}
  body.site-public .site-menu-links>a,
  body.site-public .site-menu-parent-row>a{min-height:44px;display:flex;align-items:center;padding:10px 12px!important;border:1px solid transparent;border-radius:10px;white-space:normal;font-weight:760}
  body.site-public .site-menu-parent{width:100%;position:static}
  body.site-public .site-menu-parent-row{display:flex;width:100%;gap:4px}
  body.site-public .site-menu-parent-row>a{flex:1;min-width:0}
  body.site-public .site-submenu-trigger{width:42px;height:42px;flex:0 0 42px;border:1px solid transparent}
  body.site-public .site-mega-menu,
  body.site-public .site-menu-parent:hover>.site-mega-menu,
  body.site-public .site-menu-parent:focus-within>.site-mega-menu{position:static!important;display:none!important;padding:2px 0 6px!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;transition:none!important}
  body.site-public .site-submenu-checkbox:checked~.site-mega-menu{display:block!important}
  body.site-public .site-mega-layout{display:block;padding:0 0 0 12px;border:0;border-left:2px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:0;background:transparent;box-shadow:none}
  body.site-public .site-mega-intro{display:none}
  body.site-public .site-mega-grid{display:grid;grid-template-columns:1fr;gap:3px}
  body.site-public .site-mega-link{min-height:0;padding:9px 10px;border-radius:9px}
  body.site-public .site-account-link{margin-top:8px!important;padding-top:10px!important;border-top:1px solid var(--line)}
  body.site-public .site-account-link .nav-cta{width:100%;display:flex;justify-content:center}
  body.site-public .site-mobile-css-close{display:flex;align-items:center;justify-content:center;min-height:40px;margin-top:8px;border-top:1px solid var(--line);padding-top:10px;color:var(--muted);font-size:11px;font-weight:850;cursor:pointer}
  body.site-public .hero-inner,
  body.site-public .homepage-hero-inner{grid-template-columns:1fr}
  body.site-public .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.site-public .featured-card{grid-template-columns:1fr}
  body.site-public .featured-media{min-height:280px}
  body.site-public .post-slide-link{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}
}

/* v5.71.19: keep the public menu control compact and single-icon on tablet widths. */
@media (max-width:900px) and (min-width:521px){
  body.site-public .site-header-tools{gap:7px}
  body.site-public .site-menu-toggle{width:44px!important;min-width:44px;height:44px;padding:0!important;gap:0}
  body.site-public .site-menu-toggle-label{display:none!important}
  body.site-public .site-theme-toggle{width:44px;min-width:44px;height:44px;padding:0}
}

@media (max-width:900px){
  body.site-public .site-content-grid{grid-template-columns:1fr}
  body.site-public .site-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  body.site-public .site-sidebar-contact{grid-column:1/-1}
  body.site-public .post-slide-link{grid-template-columns:1fr}
  body.site-public .post-slide-media,
  body.site-public .post-slide-media img{min-height:280px;height:280px}
  body.site-public .post-slider-arrow{top:140px}
  body.site-public .footer-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.site-public .footer-brand-column{grid-column:1/-1}
}

@media (max-width:760px){
  body.site-public .container{width:min(100% - 28px,1120px)}
  body.site-public .site-nav-mega{left:14px!important;right:14px!important}
  body.site-public .site-brand{max-width:calc(100% - 104px)!important}
  body.site-public .site-brand-text{max-width:none!important}
  body.site-public .site-theme-label{display:none}
  body.site-public .article-grid,
  body.site-public .article-grid-with-sidebar{grid-template-columns:1fr}
  body.site-public .site-sidebar{grid-template-columns:1fr}
  body.site-public .site-sidebar-contact{grid-column:auto}
  body.site-public .section-heading,
  body.site-public .homepage-discovery-heading{align-items:flex-start;flex-direction:column}
  body.site-public .section-heading>.btn,
  body.site-public .section-heading>.nav-cta{width:100%;justify-content:center}
  body.site-public .search-box{max-width:100%}
  body.site-public .featured-copy{padding:28px 22px}
  body.site-public .featured-copy h2{font-size:clamp(26px,7vw,30px)}
  body.site-public .footer-main-grid{grid-template-columns:1fr 1fr}
  body.site-public .footer-brand-column{grid-column:1/-1}
  body.site-public .article-share-actions,
  body.site-public .article-pdf-actions{max-width:100%}
}

@media (max-width:520px){
  body.site-public .site-menu-toggle{width:42px!important;padding:0!important}
  body.site-public .site-menu-toggle-label{display:none!important}
  body.site-public .site-brand{max-width:calc(100% - 96px)!important}
  body.site-public .homepage-popular-grid,
  body.site-public .site-content-grid.no-sidebar .article-grid,
  body.site-public .footer-main-grid{grid-template-columns:1fr}
  body.site-public .footer-brand-column,
  body.site-public .footer-connect-column{grid-column:auto}
  body.site-public .search-box,
  body.site-public .homepage-search,
  body.site-public .homepage-hero-search{display:grid;grid-template-columns:1fr}
  body.site-public .search-box button,
  body.site-public .homepage-search button,
  body.site-public .homepage-hero-search button{width:100%;min-height:44px}
  body.site-public .article-share-actions,
  body.site-public .article-pdf-actions{grid-template-columns:1fr}
  body.site-public .pagination{gap:8px;flex-wrap:wrap}
  body.site-public .post-slide-media,
  body.site-public .post-slide-media img{height:220px;min-height:220px}
  body.site-public .post-slider-arrow{top:110px}
}

/* ---------- Authentication / installer / upgrade ---------- */
body.auth-page{min-width:0}
body.auth-page .auth-card,
body.auth-page .install-card,
body.auth-page .install-card-wide{max-width:100%;min-width:0}
body.auth-page :is(h1,h2,h3,p,label,small,strong,a){overflow-wrap:anywhere}
body.auth-page .btn{max-width:100%;white-space:normal;text-align:center}

@media (max-width:760px){
  body.auth-page{display:block;min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) 14px max(24px,env(safe-area-inset-bottom))}
  body.auth-page .auth-card{width:min(100%,520px);margin:0 auto;padding:24px 20px;border-radius:18px}
  body.auth-page .auth-card h1{font-size:clamp(26px,8vw,30px);line-height:1.16}
  body.auth-page .install-section{padding:15px}
  body.auth-page .install-grid,
  body.auth-page .install-grid-db{grid-template-columns:1fr}
  body.auth-page .install-grid-wide-field{grid-column:auto}
}

@media (max-width:420px){
  body.auth-page{padding-inline:10px}
  body.auth-page .auth-card{padding:21px 16px;border-radius:16px}
  body.auth-page .auth-brand img{max-width:150px;height:auto;max-height:46px}
}

/* Touch ergonomics without inflating mouse/keyboard desktop controls. */
@media (pointer:coarse){
  body.panel-page :is(button,.btn,input,select),
  body.site-public :is(button,.btn,.nav-cta,input,select),
  body.auth-page :is(button,.btn,input,select){min-height:44px}
}

@media (prefers-reduced-motion:reduce){
  body.panel-page .sidebar,
  body.panel-page .sidebar-overlay,
  body.site-public .site-nav-mega{transition:none!important}
}


/* v5.78.5 — small-screen/public reading + settings security polish */
body.site-public :is(.prose,.article-prose,.page-content){min-width:0;max-width:100%}
body.site-public :is(.prose,.article-prose,.page-content) :is(a,code,kbd,samp){overflow-wrap:anywhere;word-break:break-word}
body.site-public :is(.prose,.article-prose,.page-content) :is(figure,blockquote,pre){max-width:100%;box-sizing:border-box}
body.site-public :is(.prose,.article-prose,.page-content) iframe[src*="youtube"],
body.site-public :is(.prose,.article-prose,.page-content) iframe[src*="youtu.be"],
body.site-public :is(.prose,.article-prose,.page-content) iframe[src*="vimeo"]{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0}
body.panel-page .security-posture-card{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
body.panel-page .security-posture-card>div{display:grid;gap:4px;min-width:0;padding:10px 11px;border-radius:10px;background:var(--surface)}
body.panel-page .security-posture-card span{font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
body.panel-page .security-posture-card strong{font-size:12px;overflow-wrap:anywhere}
body.panel-page .settings-security-actions{display:flex;gap:9px;flex-wrap:wrap}
body.panel-page .security-critical-toggle{border-color:color-mix(in srgb,#d97706 32%,var(--line));background:color-mix(in srgb,#d97706 5%,var(--surface))}
@media (max-width:900px){body.panel-page .security-posture-card{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){
  body.site-public .article-header h1{font-size:clamp(29px,9vw,36px);line-height:1.1}
  body.site-public .article-meta{gap:8px 12px;font-size:12px}
  body.site-public :is(.prose,.article-prose,.page-content){font-size:clamp(15.5px,4.2vw,17px);line-height:1.75}
  body.site-public :is(.prose,.article-prose,.page-content) :is(h2,h3,h4){overflow-wrap:anywhere;text-wrap:balance}
  body.site-public :is(.prose,.article-prose,.page-content) blockquote{margin-inline:0;padding:16px 17px}
  body.site-public :is(.prose,.article-prose,.page-content) pre{margin-inline:0;padding:14px;font-size:12.5px}
  body.panel-page .security-posture-card{grid-template-columns:1fr}
  body.panel-page .settings-security-actions{display:grid;grid-template-columns:1fr}
  body.panel-page .settings-security-actions .btn{width:100%}
}
@media (max-width:360px){
  body.site-public .container{width:min(100% - 20px,1120px)}
  body.site-public .reader-floating-trigger{width:52px;height:52px}
}

/* v5.79.2 — small-screen layout rhythm */
@media (max-width:520px){
  body.panel-page .panel-content{padding-inline:14px}
  body.panel-page :is(.welcome-row,.toolbar-row,.card-title-row){gap:12px}
  body.panel-page :is(.panel-card,.stat-card){border-radius:16px}
  body.panel-page .action-row{gap:8px}
}

/* v5.79.8 — public tablet layout, typography & action polish */
@media (min-width:761px) and (max-width:1100px){
  body.site-public .container{width:min(100% - 36px,1120px)}
  body.site-public .nav-wrap{height:68px;gap:12px}
  body.site-public .site-brand{min-width:0;max-width:calc(100% - 116px)!important}
  body.site-public .site-brand-text{max-width:32vw!important;font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.site-public .site-header-tools{gap:8px;margin-left:auto}
  body.site-public .site-theme-toggle,
  body.site-public .site-menu-toggle{width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;border-radius:12px;flex:0 0 44px}
  body.site-public .site-theme-label,
  body.site-public .site-menu-toggle-label{display:none!important}

  body.site-public :is(.btn,.nav-cta,.search-box button){min-height:44px;padding:10px 15px;font-size:13px;line-height:1.25;border-radius:11px}
  body.site-public .btn.small{min-height:38px;padding:8px 12px;font-size:12px}

  body.site-public .homepage-hero{padding:58px 0 54px}
  body.site-public .homepage-hero-inner{grid-template-columns:1fr;gap:26px;align-items:start}
  body.site-public .homepage-hero-copy{max-width:820px}
  body.site-public .homepage-hero-copy h1{max-width:16ch;font-size:clamp(40px,5.8vw,54px);line-height:1.045;margin-bottom:14px}
  body.site-public .homepage-hero-copy p{max-width:66ch;font-size:16.5px;line-height:1.65}
  body.site-public .homepage-hero-search{width:min(760px,100%);align-self:auto;box-shadow:0 14px 42px rgba(0,0,0,.2)}
  body.site-public .homepage-hero-search input{min-height:46px;padding:11px 14px;font-size:15px}
  body.site-public .homepage-hero-search button{min-width:132px;white-space:nowrap}

  body.site-public .homepage-quick-categories{padding-top:26px}
  body.site-public .homepage-discovery-heading{margin-bottom:14px}
  body.site-public .homepage-discovery-heading h2,
  body.site-public .section-heading h2,
  body.site-public .section-heading h1.listing-title,
  body.site-public .section-heading h2.listing-title{font-size:clamp(25px,3.2vw,29px);line-height:1.18}
  body.site-public .quick-category-strip{gap:9px;padding-bottom:9px}
  body.site-public .quick-category-chip{min-height:44px;padding:9px 11px 9px 14px;font-size:12.5px}

  body.site-public .post-slider-section{padding-top:30px}
  body.site-public .post-slide-link{grid-template-columns:1fr;min-height:0}
  body.site-public .post-slider-stage,
  body.site-public .post-slide{min-height:0}
  body.site-public .post-slide-media,
  body.site-public .post-slide-media img{height:340px;min-height:340px}
  body.site-public .post-slide-copy{padding:29px 30px 54px}
  body.site-public .post-slide-copy h2{font-size:clamp(26px,3.6vw,32px);line-height:1.17;margin:10px 0}
  body.site-public .post-slide-copy p{font-size:14px;line-height:1.62;margin-bottom:12px}
  body.site-public .post-slide-copy small{font-size:11.5px}
  body.site-public .post-slide-read{margin-top:14px}
  body.site-public .post-slider-arrow{top:170px;width:44px;height:44px}

  body.site-public .homepage-popular-section{padding-top:36px}
  body.site-public .homepage-popular-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  body.site-public .homepage-popular-card{min-height:132px;padding:17px;gap:14px}
  body.site-public .popular-rank{font-size:26px}
  body.site-public .popular-copy h3{font-size:16.5px;line-height:1.36;margin-bottom:10px}
  body.site-public .popular-meta{font-size:11.5px;gap:7px 12px}

  body.site-public .content-section{padding-top:46px;padding-bottom:50px}
  body.site-public .section-heading{gap:14px;margin-bottom:20px}
  body.site-public .section-heading>.muted{flex:0 0 auto;font-size:12px}
  body.site-public .article-grid,
  body.site-public .site-content-grid.no-sidebar .article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  body.site-public .article-card{border-radius:17px}
  body.site-public .card-media{height:215px}
  body.site-public .card-body{padding:18px}
  body.site-public .card-body h3{font-size:18px;line-height:1.34;margin:9px 0 7px}
  body.site-public .card-body p{font-size:13.5px;line-height:1.62;margin-bottom:15px}
  body.site-public .card-meta{align-items:flex-start;gap:6px 12px;font-size:11.5px}

  body.site-public .pagination{gap:10px;margin-top:28px;flex-wrap:wrap}
  body.site-public .pagination a{width:40px;height:40px}

  body.site-public .footer-main-grid{gap:30px 24px}
  body.site-public .footer-column :is(p,a,button){line-height:1.55}
}

@media (min-width:761px) and (max-width:980px){
  body.site-public .site-content-grid{grid-template-columns:1fr;gap:24px}
  body.site-public .site-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  body.site-public .site-sidebar-contact{grid-column:1/-1}
  body.site-public .article-grid-with-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (min-width:761px) and (max-width:820px){
  body.site-public .container{width:min(100% - 30px,1120px)}
  body.site-public .homepage-hero{padding:50px 0 48px}
  body.site-public .homepage-hero-copy h1{font-size:clamp(38px,6.3vw,48px)}
  body.site-public .post-slide-media,
  body.site-public .post-slide-media img{height:300px;min-height:300px}
  body.site-public .post-slider-arrow{top:150px}
  body.site-public .card-media{height:200px}
  body.site-public .section-heading{align-items:flex-start}
}

/* v5.80.4 — Cross-site responsive rhythm refinement */
@media (min-width:761px) and (max-width:1100px){
  body.panel-page .panel-content{width:100%;max-width:1450px}
  body.panel-page .stats-grid,
  body.panel-page .stats-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.panel-page .toolbar-row{align-items:flex-start}
  body.panel-page .filter-bar{max-width:100%}
  body.site-public .section-heading{align-items:flex-start}
  body.site-public .article-meta{gap:8px 14px}
}
@media(max-width:760px){
  body.panel-page .filter-bar{gap:8px}
  body.panel-page .filter-bar :is(input,select,.btn,button){min-width:0}
  body.panel-page .settings-summary{align-items:flex-start;flex-wrap:wrap}
  body.panel-page .settings-summary>:last-child{margin-left:0}
  body.site-public .article-meta{gap:7px 11px}
  body.site-public .tag-list{gap:7px;margin-top:30px}
  body.site-public :is(.pagination,.public-pagination){max-width:100%;overflow-wrap:anywhere}
}
@media(max-width:430px){
  body.panel-page .stats-grid,
  body.panel-page .stats-grid.three,
  body.panel-page .dashboard-stats{grid-template-columns:1fr}
  body.panel-page .toolbar-row>.action-row,
  body.panel-page .welcome-row>.action-row{display:grid;grid-template-columns:1fr;width:100%}
  body.panel-page .toolbar-row>.action-row :is(.btn,button),
  body.panel-page .welcome-row>.action-row :is(.btn,button){width:100%}
  body.site-public .article-share-actions,
  body.site-public .article-pdf-actions{grid-template-columns:1fr}
}


/* v5.80.24 — Public cross-device finishing layer */
body.site-public{font-size:16px;line-height:1.6}
body.site-public :is(h1,h2,h3,h4,p,a,span,strong,small){overflow-wrap:break-word}
body.site-public :is(img,video,iframe,svg){max-width:100%}
body.site-public .container{min-width:0}
body.site-public :is(.btn,.nav-cta,.search-box button){display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;line-height:1.2;text-align:center;white-space:normal}
body.site-public .article-card,
body.site-public .post-slide,
body.site-public .homepage-popular-card{min-width:0}
body.site-public .card-body,
body.site-public .post-slide-copy,
body.site-public .popular-copy{min-width:0}
body.site-public .prose{overflow-wrap:anywhere}
body.site-public .prose :is(img,video,iframe){height:auto;max-width:100%}
body.site-public .prose table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
body.site-public .prose pre{max-width:100%;overflow-x:auto}
body.site-public .prose code{overflow-wrap:anywhere}
body.site-public .article-meta{align-items:center}
body.site-public :is(.share-actions,.article-actions,.page-actions){flex-wrap:wrap;gap:8px}

/* Avoid overlap when Reader Mode and article music are both available. */
@supports selector(body:has(*)){
  body.site-public:has(.content-music-runtime) .reader-floating{bottom:max(84px,calc(70px + env(safe-area-inset-bottom)))}
}

@media (min-width:1101px){
  body.site-public .article-page{width:min(100% - 48px,860px)}
  body.site-public .prose{font-size:17px;line-height:1.82}
}

@media (min-width:761px) and (max-width:1100px){
  body.site-public .article-page{width:min(100% - 42px,860px);padding-top:44px;padding-bottom:64px}
  body.site-public .article-header h1{font-size:clamp(34px,5vw,48px);line-height:1.08}
  body.site-public .article-lead{font-size:19px;line-height:1.6}
  body.site-public .prose{font-size:16.5px;line-height:1.8}
  body.site-public .prose h2{font-size:27px}
  body.site-public .prose h3{font-size:22px}
  body.site-public .footer-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:760px){
  body.site-public .container{width:min(100% - 24px,1120px)}
  body.site-public :is(.btn,.nav-cta,.search-box button){min-height:44px}
  body.site-public .article-page{width:min(100% - 24px,860px);padding-top:30px;padding-bottom:48px}
  body.site-public .article-header{margin-bottom:24px;text-align:left}
  body.site-public .article-header .badge{margin:0}
  body.site-public .article-header h1{font-size:clamp(30px,9vw,40px);line-height:1.1;letter-spacing:-.035em;margin:12px 0 14px}
  body.site-public .article-meta{justify-content:flex-start;gap:7px 12px;font-size:12px}
  body.site-public .article-cover{margin-bottom:24px;border-radius:15px}
  body.site-public .article-lead{font-size:18px;line-height:1.6;margin:24px 0;padding-left:14px}
  body.site-public .prose{font-size:16px;line-height:1.78}
  body.site-public .prose h2{font-size:25px;margin:30px 0 10px}
  body.site-public .prose h3{font-size:21px;margin:26px 0 9px}
  body.site-public .prose blockquote{margin:24px 0;padding:16px 17px;border-radius:12px}
  body.site-public :is(.share-actions,.article-actions,.page-actions){display:grid;grid-template-columns:1fr 1fr;width:100%}
  body.site-public :is(.share-actions,.article-actions,.page-actions) .btn{width:100%}
  body.site-public .content-music-runtime{left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom))}
  body.site-public .reader-floating{left:max(12px,env(safe-area-inset-left))}
  body.site-public .reading-top{right:max(12px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:42px;height:42px}
  body.site-public .footer-main-grid{grid-template-columns:1fr;gap:24px}
}

@media (max-width:480px){
  body.site-public .container{width:min(100% - 20px,1120px)}
  body.site-public :is(.share-actions,.article-actions,.page-actions){grid-template-columns:1fr}
  body.site-public .article-header h1{font-size:clamp(28px,9.5vw,36px)}
  body.site-public .prose{font-size:15.8px}
  body.site-public .pagination{gap:7px}
  body.site-public .pagination a{width:38px;height:38px}
}


/* v5.80.26 — Public responsive QA finishing */
body.site-public .site-header,
body.site-public .site-header .container,
body.site-public .site-nav,
body.site-public main,
body.site-public .article-page,
body.site-public .static-page{min-width:0}
body.site-public .site-header .container{gap:14px}
body.site-public .site-brand{min-width:0}
body.site-public .site-brand :is(strong,span){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.site-public .site-nav{max-width:100%}
body.site-public :is(.article-header,.section-heading,.footer-wrap,.card-body,.post-slide-copy){min-width:0}
body.site-public :is(.article-header,.section-heading,.footer-wrap) :is(h1,h2,h3,p,strong,small){overflow-wrap:anywhere}
body.site-public :is(.article-prose,.prose,.page-content) :is(table,pre,iframe,video,img){max-width:100%}
body.site-public :is(.article-prose,.prose,.page-content) table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
body.site-public :is(.article-prose,.prose,.page-content) pre{overflow-x:auto}
body.site-public :is(.article-prose,.prose,.page-content) :is(input,select,textarea,button){max-width:100%}

body.site-public .reading-top{
  right:max(14px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
}
body.site-public .content-music-runtime,
body.site-public .reader-floating{
  max-width:calc(100vw - 24px);
}
@supports selector(body:has(*)){
  body.site-public:has(.content-music-runtime) .reader-floating{
    bottom:max(88px,calc(76px + env(safe-area-inset-bottom)));
  }
}

@media (min-width:761px) and (max-width:1100px){
  body.site-public .site-header .container{width:min(100% - 32px,1120px)}
  body.site-public .site-nav{gap:14px}
  body.site-public .footer-wrap{align-items:flex-start}
}
@media (max-width:760px){
  body.site-public .site-header .container{width:min(100% - 20px,1120px)}
  body.site-public .site-brand{max-width:min(62vw,280px)}
  body.site-public .article-meta{align-items:flex-start}
  body.site-public :is(.article-share-actions,.article-pdf-actions,.share-actions,.article-actions,.page-actions) .btn{
    min-width:0;
    overflow-wrap:anywhere;
  }
  body.site-public .pagination,
  body.site-public .public-pagination{justify-content:center}
}
@media (max-width:420px){
  body.site-public .site-brand{max-width:56vw}
  body.site-public .reading-top{width:40px;height:40px}
  body.site-public .content-music-runtime,
  body.site-public .reader-floating{max-width:calc(100vw - 16px)}
}


/* v5.80.27 — final cross-device layout guard */
@media (min-width:761px) and (max-width:1100px){
  body.site-public :is(.container,.site-container){padding-inline:clamp(18px,3vw,30px)}
  body.site-public :is(.article-grid,.homepage-grid,.site-content-grid)>*{min-width:0}
}
@media (max-width:760px){
  body.site-public :is(.container,.site-container){padding-inline:14px}
  body.site-public :is(.site-header,.site-footer,.article-header,.page-header){min-width:0}
  body.site-public :is(.site-nav,.header-actions,.article-actions,.article-share-actions,.article-pdf-actions){max-width:100%;flex-wrap:wrap}
  body.site-public :is(.article-card,.site-sidebar-card,.article-share,.article-pdf-card){min-width:0}
  body.auth-login-page .auth-login-shell{width:100%}
}
@media (max-width:420px){
  body.site-public :is(.container,.site-container){padding-inline:10px}
  body.site-public :is(.article-share-actions,.article-pdf-actions,.article-actions) :is(.btn,a,button){width:100%}
}
