/* Shared mobile layout: loaded after page-specific styles. */
main, section, header > *, footer > *, .panel, .row > *, .toolbar > *, .auth-grid > *, .wallet-layout > *, .promo-copy, .discovery-body { min-width: 0; }
img { max-width: 100%; }
.table-scroll, .tabs, .promo-gallery { max-width: 100%; }
p, h1, h2, h3, h4, .muted, .status-line, .inventory-row, .cart-row { overflow-wrap: anywhere; }
@media (max-width: 900px) {
 header { height:auto; min-height:74px; padding:12px 18px; gap:12px; flex-wrap:wrap; }
 header > nav { order:3; width:100%; margin:0; display:flex; flex-wrap:wrap; gap:10px 18px; }
 header > .account-nav { margin-left:auto; flex-wrap:wrap; justify-content:flex-end; }
 .hero { grid-template-columns:minmax(0,1fr); max-height:none!important; }
 .hero-art { width:100%; max-width:420px; margin:auto; }
 .support-inner { grid-template-columns:minmax(0,1fr); }
 .catalog-header-tools { margin:0 0 0 auto; flex-wrap:wrap; }
}
@media (max-width: 650px) {
 html { scroll-padding-top:160px; }
 .wrap { padding-left:16px; padding-right:16px; }
 header { gap:10px; padding:10px 16px; }
 header .wordmark { width:104px; }
 header > a { flex-shrink:0; }
 header .account-nav { gap:6px; }
 header .account-nav .bag { white-space:normal; text-align:center; padding:10px; min-height:40px; }
 header:not(.catalog-header) > .account-nav { flex:1 1 180px; }
 header > nav { font-size:12px; }
 .catalog-header .catalog-header-tools { flex:1 1 155px; justify-content:flex-end; gap:6px; }
 .catalog-header .account-nav { margin-left:auto; }
 .catalog-header-tools .subtle { white-space:normal; }
 .hero h1 { font-size:clamp(32px,9vw,43px); }
 .hero .actions, .support-actions { align-items:stretch; flex-direction:column; gap:14px; }
 .hero .actions > *, .support-actions > * { width:100%; text-align:center; }
 .hero-art { height:290px; }
 .orbit { width:min(260px,80%); height:auto; aspect-ratio:1; }
 .floating { max-width:55%; padding:12px; font-size:14px; }
 .hero-tags { gap:6px; }
 .platform-wall-heading { flex-direction:column; align-items:flex-start; }
 .platform-count { white-space:normal; }
 .daily-promo { padding:20px 16px; }
 .daily-posters { grid-template-columns:minmax(0,1fr); gap:16px; }
 .daily-service { display:grid; grid-template-columns:88px minmax(0,1fr); column-gap:12px; align-items:center; }
 .daily-service img { grid-row:1 / 3; }
 .daily-service strong { margin:0; align-self:end; }
 .daily-service span { align-self:start; margin-top:6px; }
 .promo-copy { padding:24px 16px; }
 .promo-copy h3 { font-size:clamp(26px,8vw,34px); }
 .promo-copy .primary { max-width:100%; white-space:normal; }
 .promo-dots { flex-wrap:wrap; justify-content:center; }
 .discovery-card { grid-template-columns:90px minmax(0,1fr); }
 .discovery-body { padding:14px; }
 .discovery-art > span { position:static; display:block; white-space:normal; margin:6px; }
 .discovery-art img { height:150px; }
 .support-inner { padding:20px 16px; }
 .cta { margin-left:16px; margin-right:16px; }
 .catalog .toolbar > *, .workspace .toolbar > * { max-width:100%; }
 .search { min-width:0; }
 .search input { min-width:0; }
 .metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .metrics > div { min-width:0; padding:14px; }
 .metrics strong { font-size:clamp(19px,6vw,24px); }
 .panel, .purchase { padding:18px; }
 .auth-grid { grid-template-columns:minmax(0,1fr); }
 .wallet-layout { grid-template-columns:minmax(0,1fr); }
 .order-dates, .inventory-row, .cart-row { flex-wrap:wrap; gap:12px; }
 dialog { width:calc(100% - 24px); max-width:600px; max-height:calc(100dvh - 32px); padding:18px; overflow-y:auto; }
 .dialog-head { align-items:flex-start; gap:12px; }
 .dialog-head button { flex-shrink:0; min-width:40px; min-height:40px; }
 .dialog-head h2 { font-size:20px; }
 form input, form select, form textarea, .search-input, .search input { font-size:16px; min-width:0; }
 footer { grid-template-columns:minmax(0,1fr); gap:20px; padding-bottom:90px; }
 footer > div { grid-column:1!important; }
 .float-nav { bottom:calc(12px + env(safe-area-inset-bottom)); }
 #toast, #notice { width:max-content; max-width:calc(100vw - 32px); overflow-wrap:anywhere; }
}
@media (max-width: 420px) {
 #catalogo .grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 #catalogo .card-content { padding:10px; }
 #catalogo .card h3 { font-size:15px; }
 #catalogo .card select { font-size:12px; min-height:44px; }
 #catalogo .plan-meta strong { font-size:10px; }
 #catalogo .card .add { min-height:44px; }
 #catalogStats { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .appearance-label { width:100%; text-align:center; }
 .appearance-control button { padding:9px 8px; }
}

/* Compact catalog header with a prominent logo and aligned controls. */
@media (max-width:650px) {
 body header .wordmark { width:180px; }
 body .catalog-header { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-areas:"logo logo" "tools tools" "nav account"; gap:8px; padding:12px 16px; }
 body .catalog-header > a { grid-area:logo; justify-self:center; }
 body .catalog-header .wordmark { width:200px; display:block; }
 body .catalog-header > nav { grid-area:nav; width:auto; order:initial; margin:0; gap:6px; }
 body .catalog-header .catalog-header-tools { grid-area:tools; width:100%; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); margin:0; gap:8px; }
 body .catalog-header #catalogCredits { min-width:0; }
 body .catalog-header .account-nav { grid-area:account; margin:0; display:flex; width:100%; }
 body .catalog-header .account-nav > a { width:100%; }
 body .catalog-header .header-credit { width:100%; }
 body .catalog-header :is(.bag,.subtle,nav a).dixa-btn[data-action] { padding:8px; min-height:40px; font-size:11px; gap:5px; white-space:normal; line-height:1.3; }
 body .catalog-header nav a { flex:1; text-align:center; }
 body .catalog-header .header-credit strong { font-size:13px; }
 body .catalog-header .dixa-btn[data-action]:before { width:14px; height:14px; }
 body .catalog-header #catalogNotices { justify-content:center; }
 #catalogo .card select { max-width:100%; }
 #catalogo .delivery-pill { overflow-wrap:anywhere; }
}

/* Match theme geometry and give signed-in navigation enough space. */
@media(max-width:650px){
 body .catalog-header { grid-template-areas:"logo logo" "tools tools" "nav nav" "account account"; }
 body .catalog-header > nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:8px; }
 body .catalog-header nav a.dixa-btn[data-action] { width:100%; white-space:normal; overflow-wrap:anywhere; padding:8px 10px; }
 body .catalog-header .account-nav { justify-content:stretch; }
}

/* Navigation follows visible links, including visitors without an admin link. */
@media(max-width:650px){
 body .catalog-header > nav:not(:has(#adminLink:not([hidden]))) { grid-template-columns:minmax(0,1fr); }
 body .catalog-header > nav > a { grid-column:auto; }
 body .home-header { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; padding:12px 16px; }
 body .home-header > a { justify-self:center; }
 body .home-header .wordmark { width:200px; }
 body .home-header .account-nav { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); width:100%; margin:0; gap:8px; }
 body .home-header > nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; margin:0; gap:8px; order:initial; }
 body .home-header > nav:has(#adminLink:not([hidden])) > a:last-child { grid-column:1 / -1; }
 body .home-header :is(.account-nav a,nav a).dixa-btn[data-action] { width:100%; min-height:40px; padding:8px 10px; font-size:11px; line-height:1.3; gap:5px; white-space:normal; text-align:center; }
 body .home-header .dixa-btn[data-action]:before { width:14px; height:14px; }
 body:has(.home-header) .hero { padding-top:28px; }
}

.movie-home-promo{padding-top:24px;padding-bottom:28px;margin-top:12px;margin-bottom:24px;border-top:1px solid var(--theme-border);border-bottom:1px solid var(--theme-border)}.movie-home-promo h2{font-size:28px;margin:0 0 12px}.movie-home-promo p{color:var(--theme-soft);font-size:14px;line-height:1.7}.movie-home-promo .eyebrow{margin-bottom:12px}
