/* Shared type scale. Keep display type for editorial headings, readable sans for shopping tasks. */
:root{--font-ui:'Atelier Sans','Microsoft YaHei',sans-serif;--font-display:'Atelier Display',Georgia,serif;--text-body:16px;--text-ui:15px;--text-caption:14px;--text-badge:12px}
body,body.storefront{font-family:var(--font-ui);font-size:var(--text-body);line-height:1.6;--ink:#26232a;--muted:#625c66}
button,input,select,textarea{font-family:var(--font-ui)}
input,select,textarea{font-size:16px;line-height:1.5;min-height:44px}
button,.button,.secondary,.text-button{font-size:15px;line-height:1.5;min-height:44px;letter-spacing:0}
label{font-size:15px;line-height:1.5}
small,.muted{font-size:14px;line-height:1.6}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--theme-dark,#403441);outline-offset:3px}
.storefront p{font-size:16px;line-height:1.7}
.storefront h1,.storefront h2{font-family:var(--font-display);font-weight:400;line-height:1.12;letter-spacing:-.025em}
.storefront .eyebrow{font:600 13px/1.5 var(--font-ui);letter-spacing:.1em;color:var(--theme-text)}
.storefront .testbar,.storefront .announcement{font-size:13px;line-height:1.5;letter-spacing:.035em}
.storefront .testbar{padding:9px 5%;color:var(--ink)}
.storefront .wordmark{font-size:32px;letter-spacing:.11em}
.storefront .wordmark small{font:400 12px/1.5 var(--font-ui);letter-spacing:.13em}
.storefront .store-header{flex-wrap:wrap;gap:18px 24px}
.storefront .store-header nav{flex-wrap:wrap;gap:8px 20px}
.storefront .store-header nav>a,.storefront .mega>summary,.storefront .header-actions{font:400 15px/1.5 var(--font-ui);letter-spacing:0}
.storefront .store-header nav>a,.storefront .mega>summary{min-height:44px;display:inline-flex;align-items:center}
.storefront .header-actions>a{min-height:44px;display:inline-flex;align-items:center;gap:5px}
.storefront .count{font-size:13px;min-width:24px;height:24px}
.storefront .mega-panel h2{font-size:36px}
.storefront .mega-links>a{font-size:16px;line-height:1.5;min-height:48px}
.storefront .mega-links small{font-size:14px;letter-spacing:0}
.storefront .button,.storefront .secondary,.storefront .text-button,.storefront .product .text-button{font-size:15px;line-height:1.5;letter-spacing:.01em;min-height:46px}
.storefront .button{background:var(--accent);color:var(--on-accent);border-color:var(--theme-dark)}
.storefront .poster-copy .button{background:white;color:#26232a;border-color:white}
.storefront .poster-copy .eyebrow,.storefront .poster-copy p{color:#fff}
.storefront .poster-copy p{font-size:17px;line-height:1.65;max-width:520px}
.storefront .poster-copy h1{font-size:clamp(48px,6vw,82px);line-height:1.02}
.storefront .texture-edit h2,.storefront .density-edit h2,.storefront .sales-ranking h2{font-size:clamp(36px,4vw,52px)}
.storefront .texture-cards a{font-size:16px;line-height:1.5}
.storefront .texture-cards small{font-size:14px;letter-spacing:0}
.storefront .density-edit p,.storefront .guide p{font-size:16px;line-height:1.7}
.storefront .guide a,.storefront .mega-panel>div:first-child>a{font-size:15px;line-height:1.6}
.storefront .hero p{font-size:16px;line-height:1.7}.storefront .hero .eyebrow{font-size:13px}
.storefront .hero-caption,.storefront .image-note{font-size:12px;letter-spacing:.04em}
.storefront .density-links a{font-size:15px;min-height:48px;display:flex;align-items:center}
.storefront .density-edit .eyebrow,.storefront .guide .eyebrow{color:var(--theme-muted)}
.storefront .collection-intro p{font-size:16px;line-height:1.7;max-width:700px;color:var(--muted)}
.storefront .breadcrumbs{font-size:14px;letter-spacing:0;line-height:1.6}
.storefront .collection .section-heading{gap:24px}
.storefront .search{font-size:16px;width:280px;max-width:100%;flex-shrink:0}
.storefront .search input{font-size:16px;padding:14px 30px 14px 0;min-height:48px}
.storefront .filters{flex-wrap:wrap;gap:8px}
.storefront .chip{font-size:15px;min-height:44px;padding:10px 17px}
.storefront .chip.selected{background:var(--theme-dark);color:#fff;border-color:var(--theme-dark)}
.storefront .product-count{font-size:14px;line-height:1.5}
.storefront .collection-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:16px;align-items:end;margin-bottom:26px;padding:20px 0}
.storefront .collection-tools label{display:block;font-size:14px;white-space:normal}
.storefront .collection-tools select{font-size:16px;width:100%;min-width:0;min-height:48px;margin-top:6px;padding:10px 8px;border:1px solid var(--line);background:white;color:var(--ink)}
.storefront .collection-tools>.text-button{font-size:14px;margin:0;min-height:48px;white-space:nowrap}
.storefront #filter-summary{font-size:15px;color:var(--muted);padding-bottom:20px}
.storefront #filter-summary[hidden]{display:none}
.storefront .product-grid,.storefront .ranking-grid{column-gap:24px;row-gap:40px}
.storefront .ranking-grid h3,.storefront .product-info h3{font-family:var(--font-ui);font-size:19px;font-weight:600;line-height:1.45;letter-spacing:-.012em;margin:17px 0 12px;overflow-wrap:anywhere}
.storefront .product-info h3 span{font-synthesis:weight style}
.storefront .product p.muted,.storefront .demo-sales{font-size:14px;line-height:1.6;color:var(--muted);letter-spacing:0}
.storefront .selling-price{font-family:var(--font-ui);font-size:18px;line-height:1.5;letter-spacing:-.02em}
.storefront .list-price{font-size:14px;color:var(--muted);line-height:1.5}
.storefront .card-prices{gap:6px 10px;align-items:baseline}
.storefront .merch-badges>span{font-size:12px;line-height:1.25;letter-spacing:.015em;padding:7px 10px;min-height:30px}
.storefront .price-saving{font-size:13px;padding:5px 9px;color:var(--theme-dark);background:var(--theme-mid);letter-spacing:0}
.storefront .sample-label{font-size:12px;line-height:1.4;letter-spacing:.02em;background:#ffffffed;color:#514852;padding:4px 6px;border-radius:3px;bottom:12px;left:12px}
.storefront .ranking-count{font-size:12px;letter-spacing:.06em;border-color:var(--theme-dark)}
.storefront .sales-ranking .section-heading>a{font-size:15px;min-height:44px;display:inline-flex;align-items:center}
.storefront .rank-number small{font-size:12px}
.storefront .rank-number strong{font-size:26px}
.storefront .ranking-photo .rank-number{font-size:16px;padding:6px 8px;gap:3px}
.storefront .ranking-photo .merch-badges{max-width:calc(100% - 80px)}
.storefront .product-detail h1{font-family:var(--font-ui);font-size:clamp(28px,3vw,40px);font-weight:600;line-height:1.3;letter-spacing:-.025em}
.storefront .product-detail>div>p,.storefront .product-story>p,.storefront .product-story dl{font-size:16px;line-height:1.7}
.storefront .product-story h2,.storefront .product-reviews h2{font-size:36px}
.storefront .detail-price .selling-price{font-size:28px}
.storefront .detail-price .list-price{font-size:18px}
.storefront .detail-price .price-saving{font-size:14px}
.storefront .sku-status,.storefront .notice{font-size:14px;line-height:1.7}
.storefront .review-list small,.storefront .review-disclosure,.storefront .rating-row{font-size:14px;line-height:1.6}
.storefront .review-card-heading b{font-size:16px}
.storefront .review-stars{font-size:18px;letter-spacing:.05em}
.storefront .review-list p{font-size:16px}
.storefront .review-card-heading{flex-wrap:wrap}
.storefront .review-stars{margin-left:auto}
.storefront .reviews-score strong small{display:inline;font-size:18px}
.storefront .page p,.storefront .summary>p,.storefront .order-card>p,.storefront .bag-item p{font-size:15px}
.storefront .bag-item,.storefront .row{font-size:16px;line-height:1.6}
.storefront footer{font-size:15px;line-height:1.7}
.storefront footer p,.storefront footer .muted,.storefront footer a,.storefront footer b{font-size:15px;line-height:1.7}
.storefront footer a{display:block;padding:6px 0}
.storefront .support-fab{font-size:16px}
.storefront #support-panel p,.storefront #support-panel label{font-size:15px;line-height:1.65}
.storefront #support-panel small{font-size:14px;line-height:1.6}
.storefront #support-panel .support-heading b{font-size:18px}
.storefront .video-toggle{font-size:13px;min-height:40px}
.storefront .slider-controls button{font-size:15px;min-width:40px;min-height:40px}
/* Administration uses the same sans family and readable controls. */
.admin-shell,.admin-login,body:not(.storefront) dialog{font-family:var(--font-ui);font-size:16px}
.admin-main h1{font-size:32px;line-height:1.3}.admin-main h2,body:not(.storefront) dialog h2{font-size:24px}
.admin-main h3,body:not(.storefront) dialog h3{font-size:18px;line-height:1.5}
.sidebar nav button,.sidebar select,.sidebar-bottom,.admin-main label{font-size:15px;line-height:1.5}
.sidebar .eyebrow,.admin-top,.status,.admin-main .muted,.admin-panel p,.product-admin-row p,.steps small,.stats span{font-size:14px;line-height:1.6;letter-spacing:0}
.sidebar{overflow-y:auto}.admin-top>span:first-child{font-size:14px}
.admin-prices,.admin-prices .list-price,.admin-prices .price-saving{font-size:14px}
.admin-prices .selling-price{font-size:16px}
.structured-sku{grid-template-columns:repeat(3,minmax(0,1fr))}
.structured-sku input[type=file],.sku-discount,.upload-status{font-size:14px}
.sort-buttons button{font-size:18px;min-height:44px;min-width:36px}
.product-table .product-admin-row{grid-template-columns:44px 64px minmax(150px,1fr) 135px 80px 72px}
.product-table .product-admin-row h3{font-size:17px}.product-table .product-admin-row p{font-size:14px}
.rich-toolbar{flex-wrap:wrap}.rich-toolbar button{font-size:16px}
.theme-picker{border:0;padding:0;margin:24px 0 32px;min-width:0}
.theme-picker legend{font-weight:600;font-size:18px;margin-bottom:16px}
.theme-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.theme-preset{display:flex;align-items:center;gap:9px;min-height:54px;padding:10px;background:#fff;border:1px solid #cfc8d1;border-radius:8px;text-align:left;font-size:14px}
.theme-preset[aria-pressed=true]{outline:2px solid #403441;outline-offset:2px;border-color:#403441}
.theme-swatch{width:26px;height:26px;flex:0 0 26px;border-radius:50%;border:1px solid #0002}
.theme-picker p{font-size:14px;line-height:1.6;margin:18px 0}
.theme-preview{border:1px solid #bdb5c0;border-radius:12px;overflow:hidden;background:var(--theme-soft);color:#26232a}
.theme-demo-banner{padding:14px 20px;background:var(--accent);color:var(--on-accent);font-size:15px;text-align:center}
.theme-demo-body{padding:28px}
.theme-demo-label{font-size:13px;letter-spacing:.06em;color:var(--theme-text)}
.theme-demo-body h3{font-family:var(--font-display);font-size:32px;font-weight:400;margin:12px 0}
.theme-demo-body p{font-size:16px;color:#625c66}
.theme-demo-cta,.theme-demo-badge{display:inline-block;padding:12px 18px;border-radius:6px;background:var(--accent);color:var(--on-accent);font-size:15px;margin:0 10px 8px 0}
.theme-demo-badge{background:var(--theme-dark);color:white;font-size:12px;border-radius:99px;padding:8px 12px}
.theme-demo-footer{background:var(--theme-dark);color:var(--theme-muted);padding:18px 28px;font-size:15px}
@media(max-width:1150px){.storefront .store-header nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--line);padding-top:10px}.storefront .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.storefront .collection-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.storefront .collection-tools>.text-button{grid-column:1/-1;justify-self:end}.product-table .product-admin-row{grid-template-columns:44px 55px minmax(100px,1fr) 90px}.product-table .admin-prices{grid-column:3}.product-table .sort-buttons,.product-table .product-admin-row>.secondary{grid-column:4}.theme-presets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
  .storefront .store-header,.storefront.is-scrolled .store-header{padding:14px 5% 8px;gap:8px 16px}
  .storefront .wordmark{font-size:24px;letter-spacing:.08em}.storefront .wordmark small{font-size:12px;letter-spacing:.06em}
  .storefront .store-header nav{justify-content:flex-start;gap:0 15px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;max-width:100%;padding:8px 0 2px}
  .storefront .store-header nav>a,.storefront .mega>summary{font-size:14px;white-space:nowrap;min-height:44px;flex-shrink:0}
  .storefront .mega{flex-shrink:0}.storefront .header-actions{font-size:14px;gap:12px}.storefront .count{font-size:12px}
  .storefront .announcement,.storefront .testbar{font-size:12px;letter-spacing:.01em}.storefront .testbar a{display:inline-block;line-height:1.7}
  .storefront .mega-links>a{font-size:16px}.storefront .mega-links small{font-size:14px}
  .storefront .product-grid,.storefront .ranking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 14px}
  .storefront .product-info h3,.storefront .ranking-grid h3{font-size:18px;line-height:1.4;margin:14px 0 10px}
  .storefront .texture-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.storefront .texture-cards a{font-size:16px}.storefront .texture-cards small{font-size:14px}
  .storefront .section-heading h2{font-size:36px}.storefront .collection-intro h1{font-size:44px}.storefront .collection-intro+.collection .section-heading h2{font-size:32px}
  .storefront .poster-copy h1{font-size:48px}.storefront .poster-copy p{font-size:16px;max-width:330px}.storefront .poster-copy .eyebrow{font-size:13px}
  .storefront .collection-tools{gap:16px 12px}.storefront .collection-tools select{font-size:16px;padding:10px 6px}.storefront .collection-tools label{font-size:14px}
  .storefront .selling-price{font-size:17px}.storefront .list-price{font-size:14px}.storefront .merch-badges>span{font-size:12px;padding:6px 8px;min-height:29px;letter-spacing:0}
  .storefront .rank-number small{font-size:12px}.storefront .rank-number strong{font-size:22px}.storefront .ranking-photo .rank-number{padding:5px 6px;gap:2px}.storefront .ranking-photo .merch-badges{max-width:calc(100% - 70px)}
  .storefront .sample-label{font-size:12px;bottom:8px;left:8px}.storefront .demo-sales{font-size:14px}
  .storefront .reviews-summary{grid-template-columns:1fr;gap:24px}.storefront .product-story dl{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:0 12px}
  .storefront .product-detail h1{font-size:28px}.storefront .detail-price .selling-price{font-size:26px}
  .storefront .support-fab{font-size:16px}.storefront footer{grid-template-columns:1fr;gap:24px}.storefront footer>div:first-child{grid-column:auto}
  .storefront .sales-ranking .section-heading>a{font-size:15px}
  .sidebar nav button{font-size:15px}.sidebar .eyebrow,.admin-top>span:first-child,.status{font-size:14px}.admin-top{flex-wrap:wrap;gap:12px}
  .admin-panel{padding:16px}.structured-sku{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-demo-body{padding:22px}.theme-preset{font-size:14px}.product-table .product-admin-row{grid-template-columns:44px minmax(0,1fr) 90px;gap:12px}.product-table .product-admin-row>img{display:none}.product-table .product-admin-row>div:first-of-type{grid-column:2 / -1}.product-table .admin-prices{grid-column:2}.product-table .sort-buttons,.product-table .product-admin-row>.secondary{grid-column:3}.product-table .product-admin-row h3{font-size:17px}
}
