/* Presentation only. No controls, access rules, canvases or data are replaced. */
:root {
  --ui-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --ui-ink: #1d1d1f;
  --ui-muted: #646469;
  --ui-accent: #a7355d;
  --ui-accent-hover: #8f294d;
  --ui-soft: #fff1f6;
  --ui-line: #e5e5e9;
  --ui-surface: #fff;
  --ui-background: #f5f5f7;
  --ui-shadow: 0 8px 28px rgb(29 29 31 / 7%);
  font-family: var(--ui-font);
  color: var(--ui-ink);
  background: var(--ui-background);
}
body { font-family: var(--ui-font); color: var(--ui-ink); background: var(--ui-background); }
h1, h2, h3, button, input, select, textarea { font-family: var(--ui-font); }
h1, h2, h3 { color: var(--ui-ink); text-wrap: balance; }
p { text-wrap: pretty; }
button, a, summary, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button { touch-action: manipulation; }
button:focus-visible, a:focus-visible, summary:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #a7355d; outline-offset: 3px;
}
button:disabled { cursor: not-allowed; }
.eyebrow { color: var(--ui-accent); letter-spacing: .13em; line-height: 1.5; }
.small { color: var(--ui-muted); line-height: 1.65; }
body > header {
  height: auto; min-height: 76px; padding: 8px clamp(20px, 4vw, 60px);
  gap: 12px 20px; background: #fff; border-bottom: 1px solid var(--ui-line);
  box-shadow: none; backdrop-filter: none;
}
body:not(.landing-page):not(.retail-page) > header { background: #fff; backdrop-filter: none; }
body > header .brand-logo { width: 142px; height: 58px; max-width: 142px; }
body > header .top-nav { gap: 8px; }
body > header .top-nav a {
  color: #434347; min-height: 44px; display: inline-flex; align-items: center;
  justify-content: center; font-size: 13px; font-weight: 500; padding: 10px 16px;
}
body > header .top-nav a:hover, body > header .top-nav a[aria-current="page"] {
  background: var(--ui-soft); color: var(--ui-accent);
}
body > header .pill { background: #f5f5f7; color: #646469; border: 0; letter-spacing: .06em; }
.account-avatar { width: 44px; height: 44px; background: #f5f5f7; color: #424245; }
.account-avatar.signed-in { background: #ffe8f0; color: var(--ui-accent); }
.account-menu {
  width: 320px; max-width: calc(100vw - 32px); padding: 18px;
  border: 1px solid var(--ui-line); border-radius: 22px; box-shadow: var(--ui-shadow);
}
.account-menu .account-identity { font-size: 14px; overflow-wrap: anywhere; }
.account-stats { gap: 8px; }
.account-stats article { background: #f5f5f7; padding: 12px 6px; border-radius: 14px; }
.account-menu a, .account-menu button { padding: 12px; min-height: 44px; border-radius: 12px; }
body:not(.assist-page):not(.conversion-editor-page) > main {
  max-width: 1280px; padding: 36px clamp(20px, 4vw, 48px) 24px;
}
body:not(.assist-page):not(.conversion-editor-page) button { min-height: 44px; }
.landing-hero { padding: 42px 0 38px; text-align: center; }
.landing-hero h1 {
  font-size: clamp(36px, 5vw, 64px); line-height: 1.06; letter-spacing: -.045em;
  max-width: 850px; margin: 0 auto 22px; font-weight: 650;
}
.landing-hero p:not(.eyebrow) { max-width: 710px; margin: 0 auto; font-size: 18px; line-height: 1.65; color: var(--ui-muted); }
.landing-choices { gap: 24px; align-items: stretch; }
.landing-choice {
  background: #fff; border: 1px solid var(--ui-line); padding: 26px;
  border-radius: 26px; box-shadow: none; position: relative;
}
.landing-choice.featured { background: #fff; }
.landing-choice .choice-visual { height: 230px; max-height: 230px; border-radius: 18px; margin-bottom: 24px; }
.landing-choice h2 { font-size: clamp(24px, 2.5vw, 32px); letter-spacing: -.035em; line-height: 1.15; font-weight: 650; }
.landing-choice p:not(.eyebrow), .landing-choice li { color: var(--ui-muted); font-size: 15px; line-height: 1.65; }
.landing-choice .choice-number { background: #f5f5f7; color: #646469; border: 0; }
.landing-choice strong { color: var(--ui-accent); padding-top: 20px; font-size: 15px; font-weight: 600; }
.landing-choice:hover { border-color: #cfafbc; box-shadow: var(--ui-shadow); }
.create-template-page .landing-choices { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.create-template-page .landing-choice .choice-visual { height: 190px; max-height: 190px; }
.community-teaser {
  padding: 30px 32px; border: 1px solid var(--ui-line); border-radius: 26px;
  gap: 26px; background: #fff; box-shadow: none; margin-top: 24px;
}
.community-teaser h2 { font-size: 30px; letter-spacing: -.035em; line-height: 1.15; font-weight: 650; }
.community-teaser p:not(.eyebrow) { color: var(--ui-muted); line-height: 1.65; margin-bottom: 0; }
.community-teaser > a, .assist-primary {
  background: var(--ui-accent); color: #fff; border: 0; border-radius: 999px;
  min-height: 44px; padding: 13px 22px; font-weight: 600; text-align: center;
}
.community-teaser > a:hover, .assist-primary:hover { background: var(--ui-accent-hover); }
.guided-entry { margin-top: 0; margin-bottom: 24px; background: #fff; }
/* Generator: input decisions on the left, preview on the right, order below. */
body:not(.assist-page) .intro { align-items: flex-start; gap: 32px; margin-bottom: 24px; }
body:not(.assist-page) .intro h1 { font-size: clamp(38px, 5vw, 60px) !important; font-weight: 650; letter-spacing: -.045em !important; }
body:not(.assist-page) .intro p:not(.eyebrow) { max-width: 780px; color: var(--ui-muted); font-size: 16px !important; line-height: 1.7 !important; }
.custom-explain.product-photo-strip { gap: 16px; margin-bottom: 28px; }
.custom-explain article { border-color: var(--ui-line); border-radius: 20px; background: #fff; padding: 20px; }
.custom-explain h2 { font-size: 20px; line-height: 1.3; font-weight: 600; }
.workspace { grid-template-columns: minmax(290px, 330px) minmax(0, 1fr); gap: 24px; }
body:not(.assist-page) .controls, body:not(.assist-page) .design-panel, body:not(.assist-page) .production {
  padding: 24px; border-radius: 24px; border: 1px solid var(--ui-line); box-shadow: none;
}
.controls .step { margin-bottom: 18px; }
.controls .step h2 { font-size: 20px; line-height: 1.3; font-weight: 600; }
.controls .step > span { background: #f5f5f7; border: 0; color: var(--ui-muted); }
.upload-photo-card { border: 1px dashed #c5c5cb; border-radius: 20px; background: #f5f5f7; }
.controls legend { color: var(--ui-ink); font-weight: 600; font-size: 14px; }
.controls fieldset { margin-bottom: 22px; }
.segments span { border: 1px solid var(--ui-line); background: #f5f5f7; border-radius: 12px; padding: 13px 5px; line-height: 1.35; }
.segments input:checked + span { background: #fff1f6; color: var(--ui-accent); border-color: var(--ui-accent); box-shadow: inset 0 0 0 1px var(--ui-accent); }
.controls #conversion-options { border-color: var(--ui-line); border-radius: 16px; background: #fff; }
.controls .ai-image-card { background: #f5f5f7; border: 1px solid var(--ui-line); border-radius: 16px; padding: 16px; }
.controls .ai-generator-options > summary h2 { font-size: 16px; }
.controls .conversion-style-options input + span { background: #f5f5f7; border-color: var(--ui-line); }
.controls .conversion-style-options input:checked + span { background: var(--ui-soft); border-color: var(--ui-accent); }
#generate, #ai-generate, #checkout, #admin-template-upload {
  background: var(--ui-accent); color: #fff; border: 0; border-radius: 999px; padding: 13px 20px; font-weight: 600;
}
#generate:hover:not(:disabled), #ai-generate:hover:not(:disabled), #checkout:hover:not(:disabled) { background: var(--ui-accent-hover); }
#free-template-use { background: #fff1f6; border: 1px solid #dca9bc; color: var(--ui-accent); font-weight: 600; }
.preview-caption-actions { min-height: 44px; gap: 12px; }
.preview-caption-actions > span, .previews figcaption { letter-spacing: .06em; font-size: 11px; font-weight: 600; color: var(--ui-muted); }
.preview-caption-actions button { background: #fff; border: 1px solid var(--ui-line); color: var(--ui-accent); border-radius: 999px; min-width: 64px; }
.design-panel .previews.two-previews { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.design-panel .previews.two-previews figure { min-width: 0; }
.design-panel .previews figcaption { display: flex; align-items: center; min-height: 44px; }
.design-panel .preview-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 4px; gap: 4px; background: #f5f5f7; border-radius: 14px; }
.design-panel .preview-tabs button { border: 0; background: transparent; color: var(--ui-muted); border-radius: 10px; }
.design-panel .preview-tabs button.active { background: #fff; color: var(--ui-accent); box-shadow: 0 2px 6px rgb(29 29 31 / 6%); }
.tool-kit-inline span { grid-template-columns: 76px minmax(0, 1fr) auto; gap: 8px 14px; }
.tool-kit-inline img { grid-column: 1; grid-row: 1 / 3; width: 76px; height: 76px; }
.tool-kit-inline strong { grid-column: 2; grid-row: 1; }
.tool-kit-inline small { grid-column: 2; grid-row: 2; margin: 0; }
.tool-kit-inline b { grid-column: 3; grid-row: 1 / 3; color: var(--ui-accent); align-self: center; }
.tool-kit-inline input:checked + span { background: var(--ui-soft); box-shadow: inset 0 0 0 2px var(--ui-accent); }
.tool-kit-inline label:focus-within span { outline: 3px solid var(--ui-accent); outline-offset: 3px; }
.design-panel .metrics { gap: 16px; border-top-color: var(--ui-line); padding-top: 22px; margin-top: 24px; }
.design-panel .metrics strong { color: var(--ui-ink); font-weight: 650; font-variant-numeric: tabular-nums; }
.design-panel .notice, .retail-note { background: #f5f5f7; color: var(--ui-muted); border-radius: 14px; }
.production .result-heading { align-items: flex-start; gap: 20px; }
.production .actions { gap: 10px; align-items: center; }
.production #download-csv { background: #f5f5f7; color: #424245; border: 1px solid var(--ui-line); border-radius: 999px; }
.price-options { gap: 14px; }
.price-card { border-radius: 18px; padding: 20px; }
.production .table-scroll { border: 1px solid var(--ui-line); border-radius: 16px; margin-top: 20px; }
.production table { margin: 0; font-variant-numeric: tabular-nums; }
.production th { background: #f5f5f7; color: #646469; }
.production th, .production td { border-bottom-color: var(--ui-line); padding: 14px; }
/* Browse first, filters and actions second; pagination stays below the results. */
.community-page .community-hero h1 { font-weight: 650; letter-spacing: -.04em; }
.community-page .community-hero p:not(.eyebrow) { color: var(--ui-muted); }
.community-hero-card, .community-stats article, .community-feed, .community-flow,
.template-manager-section, .creator-dashboard { border-color: var(--ui-line); box-shadow: none; border-radius: 24px; }
.community-stats strong { font-weight: 650; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.community-stats span { color: var(--ui-muted); }
.community-layout { grid-template-columns: 180px minmax(0, 1fr); gap: 24px; }
.community-sidebar .filter-card, .community-sidebar .safety-card { border-radius: 18px; background: #fff; }
.feed-heading { gap: 20px; align-items: flex-start; flex-wrap: wrap; }
.feed-heading > div:first-child { flex: 1 1 360px; min-width: 0; }
.feed-heading h2 { font-size: 27px; letter-spacing: -.025em; font-weight: 650; }
#community-search-form { display: flex; align-items: flex-end; gap: 10px; margin: 18px 0 0; }
#community-search-form .template-search-label { flex: 1; min-width: 0; margin: 0; color: var(--ui-muted); font-size: 12px; }
#community-search-form input[type="search"] { width: 100%; border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; padding: 12px; min-height: 44px; font-size: 16px; }
#community-search-form button { margin: 0; border: 0; background: var(--ui-accent); color: #fff; padding: 12px 18px; font-weight: 600; }
.feed-tabs { background: #f5f5f7; padding: 4px; gap: 3px; }
.feed-tabs a { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; color: #646469; font-weight: 500; }
.feed-tabs a.active { background: #fff; color: var(--ui-ink); box-shadow: 0 2px 6px rgb(29 29 31 / 6%); }
.project-grid { gap: 16px; }
.project-card { border-color: var(--ui-line); border-radius: 20px; box-shadow: none; }
.project-body h3 { font-weight: 600; letter-spacing: -.015em; }
.project-body .tag { background: #f5f5f7; color: #646469; }
.project-actions button, .community-page .project-actions .template-menu-toggle { min-width: 44px; min-height: 44px; height: auto; }
.template-card-menu { border: 1px solid var(--ui-line); border-radius: 16px; padding: 8px; box-shadow: var(--ui-shadow); }
.template-card-menu button { min-height: 44px; border-radius: 10px; }
.template-card-menu .primary-menu-action { background: var(--ui-accent); color: #fff; }
.template-card-menu .points-menu-action { background: var(--ui-soft); color: var(--ui-accent); }
.template-pagination { background: #fff; border-color: var(--ui-line); border-radius: 18px; padding: 16px; gap: 14px; }
.template-pagination button, #community-pager .pagination-controls a {
  min-width: 44px; min-height: 44px; border-radius: 12px; border-color: var(--ui-line); color: #424245;
}
.template-pagination button[aria-current="page"], #community-pager .pagination-controls a[aria-current="page"] { background: var(--ui-accent); color: #fff; border-color: var(--ui-accent); }
.pagination-jump input { min-height: 44px; border-color: #d2d2d7; }
/* Retail: image/identity, options, quantity and primary/secondary purchase actions. */
.retail-page .shop-intro { max-width: 820px; padding-bottom: 22px; }
.retail-page .shop-intro h1 { font-size: clamp(36px, 4.5vw, 56px); letter-spacing: -.04em; font-weight: 650; }
.retail-page .shop-intro p { font-size: 17px; color: var(--ui-muted); }
.shop-jump-links { gap: 10px; margin: 10px 0 28px; }
.shop-jump-links a { background: #fff; border: 1px solid var(--ui-line); color: #424245; min-height: 44px; padding: 11px 22px; }
.shop-section-heading { justify-content: space-between; gap: 12px; flex-wrap: wrap; margin: 0 0 18px; }
.shop-section-heading h2 { font-size: 28px; letter-spacing: -.025em; font-weight: 650; }
.retail-page .shop-product-grid { gap: 20px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); }
.retail-page .shop-product { border-color: var(--ui-line); border-radius: 24px; padding: 22px; }
.retail-page .shop-product-top { gap: 16px; align-items: center; }
.retail-page .shop-product h3 { font-weight: 600; font-size: 19px; color: var(--ui-ink); }
.retail-page .shop-product p { color: var(--ui-muted); }
.shop-product details { border-top-color: var(--ui-line); padding-top: 16px; margin-top: 16px; }
.shop-product summary { color: var(--ui-ink); min-height: 44px; line-height: 1.5; }
.shop-product select, .shop-product input, .cart-row input { min-height: 44px; border-color: #d2d2d7; border-radius: 12px; padding: 11px; }
.retail-page .shop-product-actions { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; padding-top: 16px; border-top: 1px solid var(--ui-line); margin-top: 18px; }
.retail-page .shop-product-actions button { background: var(--ui-accent); font-weight: 600; }
.retail-page .shop-product-actions button:hover:not(:disabled) { background: var(--ui-accent-hover); }
.retail-page .shop-product-actions .shop-add-cart { background: #fff; color: var(--ui-accent); border: 1px solid #c994a8; }
.shop-cart-trigger { background: #fff !important; border: 1px solid #d2d2d7 !important; color: var(--ui-ink) !important; }
.cart-badge { background: var(--ui-accent); }
.shop-cart-float { right: 20px; bottom: max(20px, env(safe-area-inset-bottom)); box-shadow: var(--ui-shadow); }
.shop-cart-dialog, .shop-photo-dialog { border: 1px solid var(--ui-line) !important; border-radius: 24px !important; box-shadow: var(--ui-shadow); }
.shop-cart-dialog .cart-checkout { background: var(--ui-accent); font-weight: 600; min-height: 48px; }
.cart-shipping { background: #f5f5f7; color: var(--ui-muted); }
/* Preserve canvas dimensions, touch handling and the fullscreen state machine. */
.assist-page .assist-gate { border-color: var(--ui-line); box-shadow: none; padding: 32px; }
.assist-page .assist-gate h1 { font-weight: 650; letter-spacing: -.03em; }
.assist-page .assist-heading h1 { font-weight: 650; letter-spacing: -.035em; }
.assist-page .assist-board, .assist-page .assist-inspector > section,
.assist-page .assist-inspector > details { border-color: var(--ui-line); box-shadow: none; }
.assist-page .assist-board-head { background: #fff; border-bottom-color: var(--ui-line); gap: 12px; }
.assist-page .assist-board-actions { gap: 8px; flex-wrap: wrap; }
.assist-page .assist-local-label { background: #f5f5f7; color: var(--ui-muted); border-color: var(--ui-line); }
.assist-page .assist-mode-group { background: #f5f5f7; padding: 4px; border-radius: 14px; }
.assist-page .assist-toolbar button { font-family: var(--ui-font); }
.assist-page .assist-mode-group button[aria-pressed="true"] { background: #fff; color: var(--ui-accent); box-shadow: 0 2px 6px rgb(29 29 31 / 7%); }
.assist-page .assist-secondary { background: #fff; border-color: #d2d2d7; color: var(--ui-accent); }
.assist-page .assist-tools-card, .assist-page .assist-selection-card,
.assist-page .assist-palette, .assist-page .assist-help { background: #fff; border-radius: 18px; }
.assist-page .assist-help p { font-size: 12px; line-height: 1.65; }
.assist-page .assist-brush-palette, .assist-page #pattern-palette { border-color: var(--ui-line); }
.conversion-editor-page { font-family: var(--ui-font); }
.conversion-toolbar, .conversion-tools { border-color: var(--ui-line); }
.conversion-tools { background: #f5f5f7; }
.conversion-toolbar button, .conversion-tools button { font-family: var(--ui-font); }
.conversion-toolbar #editor-save { background: var(--ui-accent); }
body:not(.assist-page) .conversion-modal { max-width: none; max-height: none; border-radius: 0; }
/* Account, information and administrative pages use the same quiet surfaces. */
.manager-card { background: #f5f5f7; border-radius: 18px; }
.manager-actions button, .admin-login-card button { border-radius: 999px; font-weight: 600; }
.admin-login-card { border: 1px solid var(--ui-line); box-shadow: none; }
.admin-login-card input, .admin-login-card select { min-height: 44px; border-radius: 12px; border-color: #d2d2d7; }
.info-page .creator-rewards { background: #fff; border-color: var(--ui-line); padding: 32px; }
.info-page .creator-rewards p { color: #525258; font-size: 15px; line-height: 1.8; }
.info-page .creator-rewards h2 { font-weight: 600; letter-spacing: -.02em; }
.seo-pattern-detail { gap: 32px; }
.seo-pattern-detail h1 { font-weight: 650; letter-spacing: -.035em; }
.seo-pattern-detail > img { border: 1px solid var(--ui-line); }
.seo-pattern-cta { background: var(--ui-accent); color: #fff; min-height: 44px; }
.beadia-footer {
  background: #f5f5f7; border-top-color: #dcdce0; max-width: 1280px; margin-top: 56px;
  padding: 36px clamp(20px, 4vw, 48px) 24px; gap: 30px; color: var(--ui-muted);
}
.beadia-footer h2, .beadia-footer .footer-support summary { color: #424245; font-weight: 600; }
.beadia-footer a { color: #525258; }
.footer-x { background: #fff; border-color: var(--ui-line); }
.footer-bottom { border-top-color: #dcdce0; }
.cookie-consent { border-color: var(--ui-line); box-shadow: var(--ui-shadow); border-radius: 20px; }
.cookie-consent button { background: var(--ui-accent); font-weight: 600; }
.cookie-consent a { color: var(--ui-accent); }
dialog::backdrop { backdrop-filter: none; }
.login-card { box-shadow: var(--ui-shadow); border-radius: 24px; }
/* No scroll-driven effects, new JS, web fonts, heavy blur or layout animations. */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  body > header .top-nav a, .landing-choice, .community-teaser > a {
    transition: color .16s ease, background-color .16s ease, border-color .16s ease;
  }
}
@media (max-width: 1000px) {
  .community-layout { grid-template-columns: 1fr; }
  .workspace { grid-template-columns: 290px minmax(0, 1fr); gap: 18px; }
  .create-template-page .landing-choices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  body > header { min-height: 64px; padding: 6px 16px 4px; gap: 0 12px; }
  body > header .brand-logo { width: 126px; max-width: 126px; height: 52px; }
  body > header .top-nav { gap: 4px; margin: 0; padding: 0; }
  body > header .top-nav a { font-size: 12px; min-height: 44px; padding: 8px 7px; }
  .account-menu { top: 66px; right: 16px; width: min(340px, calc(100vw - 32px)); max-height: calc(100vh - 94px); max-height: calc(100dvh - 94px); }
  body:not(.assist-page):not(.conversion-editor-page) > main { padding: 24px 16px 20px; }
  .landing-hero { padding: 24px 0 30px; }
  .landing-hero h1 { font-size: 38px; line-height: 1.08; margin-bottom: 18px; letter-spacing: -.04em; }
  .landing-hero p:not(.eyebrow) { font-size: 16px; line-height: 1.6; }
  .landing-choices, .create-template-page .landing-choices { grid-template-columns: 1fr; gap: 18px; }
  .landing-choice { padding: 22px; border-radius: 24px; }
  .landing-choice .choice-visual, .create-template-page .landing-choice .choice-visual { height: 200px; max-height: 200px; }
  .community-teaser { display: flex; flex-direction: column; align-items: flex-start; padding: 24px; gap: 20px; border-radius: 24px; }
  .community-teaser h2 { font-size: 26px; }
  .community-teaser > a { width: 100%; }
  body:not(.assist-page) .intro h1 { font-size: 38px !important; }
  .workspace { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  body:not(.assist-page) .controls, body:not(.assist-page) .design-panel,
  body:not(.assist-page) .production { padding: 20px !important; border-radius: 22px; }
  .design-panel .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 16px; }
  .design-panel .previews.two-previews { grid-template-columns: minmax(0, 1fr); }
  .tool-kit-inline span { grid-template-columns: 60px minmax(0, 1fr); }
  .tool-kit-inline img { width: 60px; height: 60px; grid-row: 1 / 4; }
  .tool-kit-inline strong { font-size: 15px; }
  .tool-kit-inline small { font-size: 12px; }
  .tool-kit-inline b { grid-column: 2; grid-row: 3; font-size: 18px; }
  .design-panel .metrics strong { font-size: 23px; }
  .production .actions { width: 100%; }
  .production .actions button { width: 100%; justify-content: center; }
  .production .actions #checkout { margin-top: 4px; }
  .production .table-scroll { margin-left: -4px; margin-right: -4px; }
  .feed-heading > div:first-child { flex-basis: 100%; }
  .feed-tabs { width: 100%; gap: 2px; }
  .feed-tabs a { font-size: 12px; padding: 10px 9px; }
  .community-page:not(.admin-page) .project-card { border-radius: 18px; grid-template-columns: 112px minmax(0, 1fr); gap: 12px; padding: 12px; }
  .community-page:not(.admin-page) .project-card img { height: 112px; border: 0; border-radius: 12px; }
  .community-page .project-body { padding-bottom: 48px; }
  .community-page .project-body h3 { white-space: normal; font-size: 16px; line-height: 1.35; }
  .community-page .project-body p { font-size: 12px; }
  .template-card-menu { max-width: calc(100vw - 48px); }
  .template-pagination { padding: 14px; }
  .template-pagination button, #community-pager .pagination-controls a { min-width: 40px; min-height: 44px; padding: 6px 8px; }
  .retail-page .shop-product { padding: 20px; border-radius: 22px; }
  .retail-page .shop-intro h1 { font-size: 38px; }
  .retail-page .shop-intro p { font-size: 16px; }
  .shop-product-top { min-height: 86px; }
  .shop-section-heading h2 { font-size: 25px; }
  .shop-cart-float { right: 16px; }
  .assist-page .assist-board-head { padding: 12px; }
  .assist-page .assist-cell-coordinates { font-variant-numeric: tabular-nums; }
  .info-page .creator-rewards { padding: 24px; }
  .info-page .landing-hero h1 { font-size: 36px; }
  .beadia-footer { padding: 30px 20px max(84px, env(safe-area-inset-bottom)); gap: 24px; margin-top: 36px; }
  .cookie-consent { gap: 12px; padding: 16px; }
  .cookie-consent p { font-size: 13px; }
}
@media (max-width: 360px) {
  .landing-hero h1, .retail-page .shop-intro h1 { font-size: 34px; }
  body > header .top-nav a { font-size: 11px; padding: 8px 4px; }
  .community-page:not(.admin-page) .project-card { grid-template-columns: 92px minmax(0, 1fr); gap: 10px; }
  .community-page:not(.admin-page) .project-card img { height: 100px; }
  .feed-tabs a { padding: 10px 7px; font-size: 11px; }
}
@media (max-height: 500px) and (orientation: landscape) {
  .assist-page .assist-board.is-focus .assist-toolbar button { min-height: 32px; }
  .assist-page .assist-board.is-focus .assist-mode-group { padding: 2px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; scroll-behavior: auto !important; }
}
