/* Screen refinements from the visual review of the shop and private workspace.
   Printing keeps its existing A4 layout. */
@media screen {
  :root { --muted:#5e685d; }
  html { scroll-padding-bottom:24px; }
  :is(a,button,input,select,textarea,summary) { scroll-margin-block:14px; }
  .demo-strip { min-height:34px; padding:7px 20px; font-size:11px; letter-spacing:.7px; flex-wrap:wrap; gap:4px 8px; }
  .demo-extra { font-size:11px; letter-spacing:.2px; }
  .header-inner nav a,.storefront-page .header-inner nav a { font-size:13px; min-height:44px; display:inline-flex; align-items:center; }
  .bag-link,.storefront-page .bag-link { min-width:48px; min-height:48px; }
  .bag-link b { font-size:11px; min-width:21px; min-height:21px; }
  .eyebrow,.section-heading .eyebrow,.storefront-page .section-heading .eyebrow { font-size:11px; line-height:1.7; letter-spacing:1px; }
  .button,.button.small,.storefront-page .button,.storefront-page .button.small { min-height:48px; font-size:13px; padding:12px 18px; line-height:1.5; text-align:center; }
  .text-link,.storefront-page .text-link { display:inline-flex; align-items:center; min-height:44px; font-size:13px; line-height:1.6; padding-bottom:0; }
  .link-button { display:inline-flex; align-items:center; min-height:44px; font-size:13px; line-height:1.6; }
  .small-text,.form-card .small-text,.summary-card .small-text { font-size:13px; line-height:1.75; }
  .microcopy { font-size:12px; line-height:1.75; }
  .field>label { font-size:14px; line-height:1.6; }
  .field>small,.field .helptext,.field ul,.field-error { font-size:12px; line-height:1.7; }
  .field>input:not([type=checkbox]),.field>select,.field>textarea { font-size:16px; min-height:48px; }
  .field>input[type=checkbox] { min-height:0; }
  .notice,.message { font-size:14px; line-height:1.7; }
  .status { font-size:12px; padding:6px 10px; line-height:1.5; white-space:normal; }
  .form-card,.summary-card { border-radius:9px; }
  :is(.storefront-page,.panel-page) .form-card h2,:is(.storefront-page,.panel-page) .summary-card h2 { font-size:30px; line-height:1.2; }
  .detail-list { grid-template-columns:115px minmax(0,1fr); gap:12px 18px; }
  .detail-list dt { font-size:12px; line-height:1.7; }
  .detail-list dd { font-size:14px; line-height:1.7; overflow-wrap:anywhere; min-width:0; }
  .mini-item>div,.panel-content .mini-item>div { min-width:0; flex:1; }
  .mini-item strong,.mini-item h3 { font-size:14px; line-height:1.5; }
  .mini-item p { font-size:12px; line-height:1.7; }
  .mini-item>b,.mini-item>span { flex-shrink:0; font-size:14px; }
  .sum-line { gap:18px; font-size:14px; line-height:1.6; }
  .sum-line>:last-child { flex-shrink:0; }
  .sum-line.total { font-size:16px; }
  .checkout-steps,.checkout-steps a { font-size:13px; }
  .checkout-steps { gap:12px 20px; align-items:center; }
  .checkout-steps a { display:inline-flex; align-items:center; min-height:44px; }
  .checkout-confirm-card .checkbox-field label { font-size:14px; }
  .checkout-review-item .eyebrow { font-size:11px; }
  .checkout-review-item p,.checkout-review-item summary { font-size:13px; line-height:1.7; }
  .checkout-review-item summary,.detail-accordion summary,.item-snapshot summary { min-height:44px; font-size:14px; }
  .detail-accordion details p { font-size:14px; line-height:1.8; }
  .detail-copy>.eyebrow,.detail-pills span { font-size:12px; }
  .breadcrumbs { flex-wrap:wrap; font-size:12px; }
  .cart-item p { font-size:13px; line-height:1.7; }
  .cart-item .eyebrow { font-size:11px; }
  .cart-item>strong { font-size:14px; }
  .footer-main>div,.storefront-page .footer-main>div { font-size:13px; flex-wrap:wrap; }
  .footer-main>div a { display:inline-flex; align-items:center; min-height:44px; }
  .footer-main p span,.storefront-page .footer-main p span { font-size:12px; line-height:1.8; }
  .footer-bottom,.storefront-page .footer-bottom { font-size:11px; line-height:1.8; letter-spacing:.3px; flex-wrap:wrap; }

  /* A readable note replaces the small rotated seal. */
  .storefront-page .collage-stamp { width:auto; height:auto; max-width:210px; transform:none; z-index:3; padding:13px 15px; border:1px solid #ced4c2; border-radius:10px; color:var(--ink); background:#f8f5eef5; flex-direction:row; gap:11px; text-align:left; box-shadow:0 4px 14px #27382c09; }
  .collage-stamp svg { color:var(--accent); flex-shrink:0; }
  .collage-stamp p { margin:0; color:inherit; }
  .storefront-page .collage-stamp strong { display:block; font:600 14px/1.6 var(--sans); letter-spacing:0; }
  .storefront-page .collage-stamp span { display:block; font:13px/1.6 var(--sans); letter-spacing:0; }
  .storefront-page .collage-main figcaption { padding:9px 12px; }
  .storefront-page .collage-main figcaption em { margin:0; }
  .storefront-page .collage-note { font-size:13px; line-height:1.7; letter-spacing:0; right:0; bottom:-24px; }
  .jj-signature strong { font-size:13px; }
  .jj-signature>div:not(.signature-initials)>span { font-size:12px; }
  .storefront-page .editorial-hero .hero-copy .eyebrow { display:block; font-size:11px; letter-spacing:.6px; line-height:1.8; }
  .hero-copy .tiny-star { display:inline-block; vertical-align:middle; margin-right:8px; }
  .storefront-page .benefits span { font-size:13px; line-height:1.6; }
  .storefront-page .collection-count { font-size:13px; line-height:1.7; }
  .storefront-page .chip { font-size:12px; min-height:44px; }
  .storefront-page .product-image { max-height:530px; }
  .storefront-page .product-image>img,.storefront-page .detail-image>img { object-fit:contain; }
  .storefront-page .image-label { font-size:11px; letter-spacing:.6px; padding:6px 10px; }
  .storefront-page .product-meta { font-size:12px; line-height:1.6; }
  .storefront-page .product-meta span:first-child { max-width:none; overflow:visible; white-space:normal; }
  .storefront-page .product-condition { font-size:13px; line-height:1.7; }
  .storefront-page .product-condition span { color:#5e685d; }
  .storefront-page .price { font-size:16px; }
  .storefront-page .story-locations { font-size:13px; }
  .storefront-page .jj-story .small-text,.jj-how li p { font-size:14px; }
  .storefront-page .jj-story .eyebrow,.storefront-page .jj-how .eyebrow { font-size:11px; }

  /* Private workspace: same calm palette, practical text and controls. */
  .panel-page { --paper:#f8f5ee; --ink:#27382c; --muted:#5e685d; --accent:#b3482c; --line:#deded1; }
  .panel-shell { grid-template-columns:245px minmax(0,1fr); }
  .panel-nav { background:#edf0e5; padding:32px 24px; }
  .panel-nav>.eyebrow { font-size:11px; }
  .panel-nav h2 { font-size:30px; overflow-wrap:anywhere; }
  .panel-nav nav { gap:6px; }
  .panel-nav nav a { font-size:13px; min-height:46px; line-height:1.5; display:flex; align-items:center; border-radius:6px; padding:11px 12px; }
  .panel-nav nav a.current { background:#dce3cc; color:#27382c; font-weight:600; }
  .panel-content { padding:36px 32px 56px; }
  .panel-content .section-heading { flex-wrap:wrap; align-items:center; gap:16px; }
  .panel-content .section-heading h1 { overflow-wrap:anywhere; }
  .panel-content .section-heading .button { font-size:13px; min-height:48px; padding:12px 18px; }
  .panel-content .eyebrow,.panel-content .code-tag { font-size:11px; }
  .panel-content>.page-intro,.panel-content>p { line-height:1.8; }
  .panel-content .form-card { border-radius:9px; }
  .stats-grid>div,.sales-summary>div { border-radius:9px; }
  .stats-grid span,.stats-grid small,.sales-summary span,.sales-summary small { font-size:13px; line-height:1.7; }
  .panel-tools { gap:16px; }
  .panel-tools form { flex-wrap:wrap; }
  .panel-tools input,.panel-tools select { font-size:16px; min-height:48px; }
  .table-wrap { border-radius:9px; }
  .table-cards th { font-size:11px; line-height:1.6; padding:15px 13px; }
  .table-cards td { font-size:13px; line-height:1.7; padding:16px 13px; }
  .table-cards td small { font-size:12px; line-height:1.7; white-space:normal; max-width:260px; }
  .table-product a { font-size:14px; }
  .table-product { align-items:start; }
  .table-actions { white-space:nowrap; }
  .table-actions .text-link { font-size:13px; }
  .table-label { display:none; }
  .photo-grid { grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); }
  .photo-tile { border-radius:7px; padding:12px; }
  .photo-actions { gap:8px; }
  .photo-actions button { font-size:12px; min-height:44px; padding:9px 11px; }
  .cover-marker { font-size:11px; }
  .photo-tile-heading,.photo-tile-heading .link-button { font-size:12px; }
  .pending-photo-name { font-size:12px!important; }
  .packing-description p { font-size:13px!important; line-height:1.7!important; }
  .packing-description .text-link,.packing-action .button { font-size:13px; min-height:44px; }
  .packing-group h3 { font-size:14px; }
  .preparation-order span { font-size:13px; line-height:1.7; }
  .preparation-order { border-radius:6px; }
  .pilot-stats span { font-size:12px; line-height:1.7; }
  .pilot-product strong { font-size:14px; }
  .pilot-product p,.missing-list li,.launch-check p,.launch-check small,.pilot-steps { font-size:13px; line-height:1.8; }
  .launch-check strong { font-size:14px; }
  .sales-freight summary,.sales-freight dt { font-size:14px; }
  .sales-row p,.sales-order span,.sales-row .eyebrow { font-size:12px; line-height:1.7; }
  .coordination-checks { font-size:14px; line-height:1.8; }
  .verification { font-size:14px; }
  .editor-save { align-items:start; }
  .editor-save small { font-size:12px; line-height:1.7; }
  .packing-sheet-page { font-size:14px; }
  .sheet-heading .eyebrow,.sheet-heading p,.sheet-details dt,.sheet-footer { font-size:12px; line-height:1.7; }
  .sheet-item p,.sheet-final p,.sheet-agreement p { font-size:14px; line-height:1.7; }
  .sheet-warning,.sheet-progress { font-size:14px; line-height:1.7; }

  @media(max-width:1100px) {
    .panel-shell { grid-template-columns:215px minmax(0,1fr); }
    .panel-content { padding:30px 24px 45px; }
    .table-cards { background:transparent; border:0; border-radius:0; overflow:visible; }
    .table-cards table,.table-cards tbody { display:block; width:100%; white-space:normal; }
    .table-cards thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
    .table-cards tbody { display:grid; grid-template-columns:1fr; gap:16px; }
    .table-cards tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 20px; border:1px solid var(--line); border-radius:9px; padding:20px; background:var(--white); }
    .table-cards td { display:block; padding:0; border:0; min-width:0; white-space:normal; overflow-wrap:anywhere; }
    .table-cards td:first-child { grid-column:1/-1; padding-bottom:13px; border-bottom:1px solid var(--line); }
    .table-cards td:first-child .text-link { font-size:16px; font-weight:600; }
    .table-cards td small { max-width:none; }
    .table-cards .table-label { display:block; font-size:12px; line-height:1.6; color:var(--muted); margin-bottom:5px; }
    .table-cards td.table-actions { grid-column:1/-1; display:flex; flex-wrap:wrap; align-items:center; gap:10px 22px; border-top:1px solid var(--line); padding-top:8px; }
    .table-cards td[colspan] { grid-column:1/-1; }
  }
  @media(max-width:800px) {
    .panel-shell { grid-template-columns:minmax(0,1fr); }
    .panel-nav { display:flex; padding:22px 24px; gap:14px; }
    .panel-nav nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:6px; margin:0; }
    .panel-nav nav a { font-size:13px; padding:10px 12px; min-height:46px; }
    .panel-nav nav a:last-child { margin:0; }
    .panel-nav>form { padding:0; border:0; }
    .panel-content .form-grid { grid-template-columns:1fr; }
    .inventory-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .inventory-filters .field:first-child { grid-column:1/-1; }
    .pilot-stats { grid-template-columns:1fr; gap:10px; }
    .pilot-stats>div { display:flex; align-items:center; gap:18px; padding:18px; }
    .pilot-stats strong { min-width:36px; }
    .pilot-stats span { font-size:13px; margin:0; }
    .pickup-board { grid-template-columns:minmax(0,1fr); }
    .photo-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  }
  @media(max-width:600px) {
    .demo-strip { font-size:10px; padding:6px 16px; }
    .demo-extra { flex-basis:100%; text-align:center; font-size:11px; }
    .header-inner,.storefront-page .header-inner { height:auto; min-height:80px; gap:10px; padding:12px 20px; }
    .header-inner nav,.storefront-page .header-inner nav { gap:12px; margin:0; }
    .header-inner nav a,.storefront-page .header-inner nav a { font-size:12px; }
    .storefront-page .editorial-hero { gap:24px; padding-top:28px; padding-bottom:42px; }
    .storefront-page .editorial-hero .hero-copy .eyebrow { font-size:11px; }
    .hero-actions { gap:12px 18px; }
    .hero-actions .text-link { font-size:13px; }
    .editorial-collage { height:350px; }
    .collage-main { top:13%; height:80%; }
    .storefront-page .collage-stamp { padding:11px 12px; gap:9px; top:0; }
    .collage-stamp svg { width:26px; height:26px; }
    .storefront-page .collage-stamp strong { font-size:13px; }
    .storefront-page .collage-stamp span { font-size:12px; }
    .storefront-page .collage-note { font-size:12px; bottom:-25px; }
    .storefront-page .benefits { gap:16px; grid-template-columns:1fr; padding:22px 24px; }
    .storefront-page .benefits span { font-size:13px; }
    .storefront-page .benefits b { min-width:20px; font-size:20px; }
    .storefront-page .collection-count { padding-top:5px; font-size:12px; max-width:none; text-align:left; }
    .storefront-page .collection>.section-heading { display:block; }
    .storefront-page .collection>.section-heading h2 { margin-bottom:10px; }
    .storefront-page .image-label { font-size:11px; top:12px; left:12px; }
    .storefront-page .product-meta { font-size:12px; flex-wrap:wrap; gap:4px 10px; }
    .storefront-page .product-line h3 { font-size:21px; min-height:0; }
    .storefront-page .product-condition { font-size:12px; }
    .storefront-page .product-image { max-height:440px; }
    .storefront-page .story-locations { font-size:12px; }
    .footer-main>div,.storefront-page .footer-main>div { gap:16px; }
    .footer-bottom,.storefront-page .footer-bottom { font-size:11px; gap:10px; }
    .page-title { font-size:clamp(36px,10vw,46px); }
    .page-intro { font-size:15px; line-height:1.8; }
    .form-card p { font-size:14px; line-height:1.8; }
    :is(.storefront-page,.panel-page) .form-card h2,:is(.storefront-page,.panel-page) .summary-card h2 { font-size:28px; }
    .form-card>.section-heading { flex-wrap:wrap; align-items:flex-start; }
    .form-card .microcopy { font-size:12px; }
    .form-card,.summary-card { padding:22px; }
    .detail-copy .detail-description { font-size:15px; }
    .detail-copy>.eyebrow { font-size:12px; }
    .detail-pills span { font-size:13px; }
    .panel-nav { padding:20px; }
    .panel-nav h2 { font-size:27px; }
    .panel-nav nav a { font-size:12px; padding:10px; }
    .panel-content { padding:28px 20px 42px; }
    .panel-content .form-card { padding:20px; }
    .panel-content .section-heading { gap:14px; }
    .panel-content .section-heading .button { font-size:13px; padding:12px 16px; min-height:48px; }
    .panel-content .detail-list { grid-template-columns:105px minmax(0,1fr); gap:12px; }
    .stats-grid { grid-template-columns:minmax(0,1fr); }
    .stats-grid>div { padding:20px; }
    .stats-grid>div:first-child { grid-column:auto; }
    .stats-grid span,.stats-grid small { font-size:13px; }
    .stats-grid strong { font-size:36px; }
    .panel-tools form { width:100%; }
    .panel-tools select { flex:1; min-width:0; }
    .photo-actions button { font-size:12px; }
    .photo-tile-heading .link-button { font-size:12px; }
    .sales-summary { grid-template-columns:minmax(0,1fr); }
    .sales-summary .sales-total { grid-column:auto; }
    .sales-row { padding:20px; }
    .sales-row .eyebrow,.sales-row p,.sales-order span { font-size:12px; }
    .packing-action .button { font-size:13px; }
    .packing-item { grid-template-columns:52px minmax(0,1fr); }
    .photo-grid { grid-template-columns:minmax(0,1fr); }
    .editor-save { flex-direction:column; align-items:stretch; gap:12px; }
    .editor-save .button { width:100%; }
  }
  @media(max-width:400px) {
    .detail-list,.panel-content .detail-list { grid-template-columns:minmax(0,1fr); gap:4px; }
    .detail-list dd,.panel-content .detail-list dd { margin:0 0 13px; }
    .inventory-filters { grid-template-columns:minmax(0,1fr); }
    .inventory-filters .field:first-child { grid-column:auto; }
    .editorial-collage { height:315px; }
    .header-inner,.storefront-page .header-inner { padding-left:16px; padding-right:16px; gap:8px; }
    .header-inner nav,.storefront-page .header-inner nav { gap:10px; }
    .header-inner nav a,.storefront-page .header-inner nav a { font-size:12px; }
    .table-cards tbody tr { padding:18px; gap:14px 12px; }
    .panel-nav nav a:last-child { grid-column:1/-1; }
  }
}

/* SEO review: visible context and sufficient contrast in the story panel. */
@media screen {
  .storefront-page .jj-story p,
  .storefront-page .jj-story .eyebrow { color:#505d4e; }
  .storefront-page .section-heading .catalog-title {
    font-family:var(--serif); font-weight:400; font-size:clamp(38px,5vw,56px);
    line-height:1.04; letter-spacing:-1.6px; margin:0;
  }
}
