
    
    * { box-sizing:border-box; }
     html { scroll-behavior:smooth; }
     body { margin:0;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased; }
     img { display:block;max-width:100%;height:auto; }
     a { color:inherit;text-decoration:none; }
     button,input,select,textarea { font:inherit; }
    
    .wrap { width:min(var(--max),calc(100% - 64px));margin:0 auto; }
    .kicker { text-transform:uppercase;color:var(--muted);margin-bottom:10px; }
    .section { padding:92px 0; }
    .section--soft { background:var(--soft); }
    .section-head { text-align:center;max-width:760px;margin:0 auto 42px; }
    .section-head h2 { margin:0 0 10px; }
    .section-head p { color:var(--muted);margin:0; }
    .text-link { display:inline-block;border-bottom:1px solid currentColor;padding-bottom:2px; }
    .btn { display:inline-block;border:1px solid var(--ink);padding:12px 22px;background:transparent; }
    
    .home-hero { position:relative;min-height:clamp(560px,72vh,880px);overflow:hidden;background:#eee; }
    .home-hero>img.hero-bg { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }
    .hero-logo { position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(48vw,790px);z-index:2; }
    .hero-logo img { width:100%;height:auto; }
    .brand-intro { text-align:center;padding:54px 24px 60px;border-bottom:1px solid var(--line); }
    .brand-intro h1 { margin:0 0 15px; }
    .brand-intro p { max-width:760px;margin:0 auto;color:var(--rw-color-text); }
    
    .gateway-grid { display:grid;grid-template-columns:1fr 1fr;gap:22px; }
    .gateway-card { position:relative;aspect-ratio:16/9;overflow:hidden;background:#ddd; }
    .gateway-card img { width:100%;height:100%;object-fit:cover;transition:transform .6s ease; }
    .gateway-card:hover img { transform:scale(1.018); }
    .gateway-card:after { content:"";position:absolute;inset:0;background:rgba(0,0,0,.18); }
    .gateway-title { position:absolute;z-index:2;inset:0;display:grid;place-items:center;padding:24px;color:var(--rw-color-inverse);text-align:center;text-shadow:0 1px 10px rgba(0,0,0,.18); }
    
    .products-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:28px 20px; }
    .product-card__image { aspect-ratio:1/1;overflow:hidden;background:#efefed; }
    .product-card__image img { width:100%;height:100%;object-fit:cover;transition:transform .45s ease; }
    .product-card:hover .product-card__image img { transform:scale(1.018); }
    .product-card__title { margin:12px 0 3px; }
    .product-card__price { color:var(--rw-color-text);white-space:nowrap; }
    .product-card__proper { text-decoration:line-through;color:var(--rw-color-text);margin-right:6px; }
    .product-card__discount { margin-left:6px; }
    .soldout { margin-top:4px;color:var(--rw-color-text); }
    
    .gem-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:18px; }
    .gem-card__image { aspect-ratio:1/1;overflow:hidden;background:#eee; }
    .gem-card__image img { width:100%;height:100%;object-fit:cover; }
    .gem-card h3 { margin:12px 0 0; }
    .center-action { text-align:center;margin-top:38px; }
    
    .explore-grid { display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:900px;margin:auto; }
    .explore-card { text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 24px; }
    .explore-icon { margin-bottom:14px; }
    .explore-card h3 { margin:0 0 6px; }
    .explore-card p { color:var(--rw-color-text);margin:0 0 16px; }
    
    .split { display:grid;grid-template-columns:1fr 1fr;min-height:560px; }
    .split-media { background:#ddd;min-height:560px;overflow:hidden; }
    .split-media img { width:100%;height:100%;object-fit:cover; }
    .split-copy { display:flex;flex-direction:column;justify-content:center;padding:72px clamp(38px,6vw,88px);background:var(--soft); }
    .split-copy h2 { margin:0 0 18px; }
    .split-copy p { color:var(--rw-color-text);margin:0 0 24px; }
    
    .journal-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px; }
    .journal-image { aspect-ratio:3/2;overflow:hidden;background:#eee; }
    .journal-image img { width:100%;height:100%;object-fit:cover; }
    .journal-card h3 { margin:12px 0 0; }
    
    .about-hero { text-align:center;padding:100px 24px 84px;border-bottom:1px solid var(--line); }
    .about-hero h1 { margin:0 0 12px; }
    .about-hero .en { color:var(--rw-color-text);margin:0 0 22px; }
    .about-hero .lead { max-width:820px;margin:auto;color:var(--rw-color-text); }
    .about-locations { padding:92px 0;background:var(--soft); }
    .location-grid { display:grid;grid-template-columns:1fr 1fr;gap:24px; }
    .location-card { background:#fff; }
    .location-card__image { aspect-ratio:16/9;overflow:hidden;background:#ddd; }
    .location-card__image img { width:100%;height:100%;object-fit:cover; }
    .location-card__copy { padding:28px 30px 34px; }
    .location-card h3 { margin:0 0 10px; }
    .location-card p { color:var(--rw-color-text);margin:0; }
    .profile-grid { display:grid;grid-template-columns:340px 1fr;gap:70px;align-items:center;max-width:1000px;margin:auto; }
    .profile-image { aspect-ratio:4/5;background:#ddd;overflow:hidden; }
    .profile-image img { width:100%;height:100%;object-fit:cover; }
    .profile-copy h2 { margin:0 0 6px; }
    .profile-role { color:var(--rw-color-text);margin:0 0 18px; }
    .profile-copy p { color:var(--rw-color-text);margin:0; }
    .book-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:20px; }
    .book-image { aspect-ratio:3/4;background:#eee;overflow:hidden; }
    .book-image img { width:100%;height:100%;object-fit:cover; }
    .contact-cta { text-align:center;background:#171717;color:var(--rw-color-inverse);padding:72px 24px; }
    .contact-cta p { margin:0 0 22px; }
    .contact-cta .btn { border-color:var(--rw-color-inverse); }
    
    .listing-page { padding:72px 0 100px; }
    .listing-head { text-align:center;margin-bottom:46px; }
    .listing-head h1 { margin:0; }
    .child-categories { display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:18px; }
    .child-categories a { border:1px solid var(--line);padding:8px 13px; }
    .breadcrumb { list-style:none;padding:0;margin:0 0 26px;display:flex;gap:8px;flex-wrap:wrap;color:var(--rw-color-text); }
    
    .item-page { padding:70px 0 100px; }
    .item-grid { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:68px;align-items:start; }
    .item-gallery { display:grid;grid-template-columns:minmax(0,1fr);gap:10px; }
    .item-gallery figure { margin:0;background:#eee; }
    .item-gallery img { width:100%;height:auto; }
    .item-info { position:static;min-width:0; }
    .item-info h1 { margin:0 0 12px; }
    .item-price { margin-bottom:14px; }
    .item-description { color:var(--rw-color-text);margin:24px 0; }
    .purchaseButton__btn { width:100%;min-height:48px;border:1px solid #171717;background:#171717;color:var(--rw-color-inverse);padding:12px 18px;cursor:pointer; }
    .purchaseButton__btn[disabled] { opacity:.45;cursor:not-allowed; }
    .itemSelect__select,.itemOption__select,.itemOption__input { width:100%;padding:10px;border:1px solid var(--rw-color-control-border);background:#fff; }
    .itemOptionElement { margin-bottom:14px; }
    .itemOption__name { display:block;font-size:11px;margin-bottom:5px; }
    .attention,.preOrder { font-size:11px; }
    .related { margin-top:90px; }
    .related-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px; }
    
    .system-page { width:min(860px,calc(100% - 40px));margin:0 auto;padding:80px 0 110px; }
    
    @media(max-width:900px) { .wrap { width:min(100% - 40px,var(--max)); }
    .home-hero { min-height:58vh; }
    .hero-logo { width:min(76vw,620px); }
    .section { padding:68px 0; }
    .gateway-grid { grid-template-columns:1fr;gap:12px; }
    .gateway-card { aspect-ratio:16/9; }
    .products-grid { grid-template-columns:repeat(2,1fr);gap:24px 12px; }
    .gem-grid { grid-template-columns:repeat(2,1fr);gap:28px 12px; }
    .explore-grid { grid-template-columns:1fr; }
    .split { grid-template-columns:1fr;min-height:auto; }
    .split-media { min-height:360px; }
    .split-copy { padding:48px 24px; }
    .journal-grid { grid-template-columns:1fr; }
    .location-grid { grid-template-columns:1fr; }
    .profile-grid { grid-template-columns:1fr;gap:34px; }
    .profile-image { max-width:340px;margin:auto;width:100%; }
    .book-grid { grid-template-columns:repeat(2,1fr); }
    .item-grid { grid-template-columns:1fr;gap:38px; }
    .item-info { position:static; }
    .item-gallery { grid-template-columns:1fr; }
    }
    
    @media(max-width:560px) { .brand-intro { padding:38px 20px 44px; }
    .brand-intro h1 {  }
    .gateway-title {  }
    .section-head h2 {  }
    .about-hero { padding:70px 22px 60px; }
    .about-hero h1 {  }
    }
    

    
    
    
    .load-items { cursor:pointer;min-height:44px; }
    .load-items[hidden] { display:none; }
    .load-status {  }
    
    .listing-head h1,.product-card__title { overflow-wrap:anywhere; }
    
    


    /* v0.7: independently authored global UI; editorial page layouts remain unchanged. */
    :root {
      --rw-font-ui:var(--rw-font-body);
      --rw-ui-size:var(--rw-size-nav);--rw-ui-tracking:var(--rw-tracking);--rw-border:var(--rw-color-border);
      --rw-space-1:8px;--rw-space-2:16px;--rw-space-3:24px;--rw-space-4:32px;
      --rw-header-height:78px;--rw-gutter:32px;--rw-section-space:92px;
      --rw-duration:220ms;--rw-ease:cubic-bezier(.2,.7,.2,1);--rw-drawer:#222;
      --sans:var(--rw-font-body);--line:var(--rw-color-border);
    }
    body {  }
    .section { padding-block:var(--rw-section-space); }
    .btn,.text-link,.kicker,.footer-grid h4 { font-family:var(--rw-font-ui); }
    .btn { min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:12px var(--rw-space-3);border-radius:0;transition:background-color var(--rw-duration),color var(--rw-duration); }
    .btn:hover { background:var(--ink);color:var(--rw-color-inverse); }
    .contact-cta .btn:hover { background:#fff;color:var(--ink); }
    .text-link { transition:opacity var(--rw-duration); }
    .text-link:hover { opacity:.65; }
    /* v0.8.64: text fields have an in-place focus treatment; other controls keep their ring. */
    :where(a,button,summary,input:not(:where(.rw-search-form input[type="search"],#rw-contact-page :is(#ShopInquiryInquiryForm,#ShopInquiryInquiryPreviewForm) :is(input:not([type]),input[type="text"],input[type="email"],input[type="tel"],input[type="search"],input[type="url"],textarea),.rw-footer input.mailMagazineSubscribe_input,.item-page .product-info input.itemOption__input:is(:not([type]),[type="text"],[type="email"],[type="tel"])))):focus-visible { outline:2px solid currentColor;outline-offset:4px; }
    :is(.rw-search-form input[type="search"],#rw-contact-page :is(#ShopInquiryInquiryForm,#ShopInquiryInquiryPreviewForm) :is(input:not([type]),input[type="text"],input[type="email"],input[type="tel"],input[type="search"],input[type="url"],textarea),.rw-footer input.mailMagazineSubscribe_input,.item-page .product-info input.itemOption__input:is(:not([type]),[type="text"],[type="email"],[type="tel"])):focus { outline:none; }
    :is(.rw-search-form input[type="search"],#rw-contact-page :is(#ShopInquiryInquiryForm,#ShopInquiryInquiryPreviewForm) :is(input:not([type]),input[type="text"],input[type="email"],input[type="tel"],input[type="search"],input[type="url"],textarea),.rw-footer input.mailMagazineSubscribe_input,.item-page .product-info input.itemOption__input:is(:not([type]),[type="text"],[type="email"],[type="tel"])):focus:not([aria-invalid="true"]):not(.error):not(.is-invalid):not(:user-invalid) { box-shadow:none;border-color:var(--rw-field-focus,var(--rw-color-text)); }
    .rw-footer input.mailMagazineSubscribe_input { --rw-field-focus:var(--rw-color-inverse); }
    .rw-footer input.mailMagazineSubscribe_input:focus:not([aria-invalid="true"]):not(.error):not(.is-invalid):not(:user-invalid) {
      background-color:#ffffff14;
    }
    :is(#rw-search,#rw-drawer) .rw-search-form input[type="search"]:focus-visible {
      background-color:rgba(127,127,127,.08);
    }
    .rw-header { position:sticky;top:0;z-index:50;height:var(--rw-header-height);background:#fff;color:var(--rw-color-text);border-bottom:1px solid var(--rw-border);transition:background-color var(--rw-duration),color var(--rw-duration),border-color var(--rw-duration); }
    .rw-header-inner { height:100%;padding:0 var(--rw-gutter);display:flex;align-items:center;justify-content:space-between;gap:32px; }
    .rw-brand { display:flex;align-items:center;gap:6px;flex:none; }
    .rw-header-end { display:flex;align-items:center;gap:20px;flex:none; }
    .rw-nav { display:flex;align-items:center;gap:32px; }
    .rw-nav>a,.rw-category>summary { display:flex;align-items:center;min-height:44px;white-space:nowrap; }
    .rw-logo { min-width:0;line-height:1;text-align:left; }
    .rw-logo>a { display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;letter-spacing:.16em; }
    .rw-logo img { width:auto;max-width:150px;max-height:32px;object-fit:contain;margin:0; }
    .rw-actions { display:flex;align-items:center;gap:0; }
    .rw-icon-button { display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;color:inherit;cursor:pointer; }
    .rw-icon-button svg { width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round; }
    .rw-menu-toggle { display:inline-flex; }
    .rw-category { position:relative; }
    .rw-category>summary { cursor:pointer;list-style:none;gap:7px; }
    .rw-category>summary::-webkit-details-marker { display:none; }
    .rw-category>summary:after { content:"";width:5px;height:5px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin-top:-3px; }
    .rw-category-panel { position:absolute;top:100%;left:-24px;width:300px;max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;padding:16px 24px 24px;background:#fff;color:var(--rw-color-text);border:1px solid var(--rw-border);box-shadow:0 10px 24px #0000000a;letter-spacing:.04em; }
    .rw-categories,.rw-categories ul { list-style:none;margin:0;padding:0; }
    .rw-categories>li>a { font-weight:500; }
    .rw-categories a { display:block;padding:10px 0;overflow-wrap:anywhere; }
    .rw-categories ul { margin:0 0 12px 3px;padding-left:16px;border-left:1px solid var(--rw-border); }
    .rw-categories ul a { padding:7px 0; }
    .rw-categories a:hover,.rw-nav>a:hover { opacity:.6; }
    .rw-header #baseMenu { position:static;flex:none;margin:0;padding:0; }
    .rw-header #baseMenu>ul { display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0; }
    .rw-header #baseMenu>ul>li { float:none;flex:none;list-style:none;margin:0;padding:0; }
    .rw-header #baseMenu>ul>li>a { position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;line-height:1; }
    .rw-header #baseMenu>ul>li>a>img { display:block;width:22px;height:22px;max-width:none;object-fit:contain; }
    .rw-header #baseMenu .cart { position:relative; }
    .rw-dialog { position:fixed;max-width:none;max-height:none;border:0;padding:0;color:var(--rw-color-text);font-family:var(--rw-font-ui); }
    .rw-dialog:not([open]) { display:none; }
    .rw-dialog::backdrop { background:rgba(0,0,0,.58); }
    .rw-modal-open,.rw-modal-open body { overflow:hidden; }
    .rw-drawer { inset:0 auto 0 0;margin:0;width:340px;height:100vh;height:100dvh;background:var(--rw-drawer);color:var(--rw-color-inverse);overflow-y:auto;overscroll-behavior:contain;--rw-border:var(--rw-color-border-inverse); }
    .rw-drawer[open] { animation:rw-drawer-in var(--rw-duration) var(--rw-ease); }
    .rw-drawer-top { display:flex;align-items:center;justify-content:space-between;min-height:60px;padding:8px 16px 8px 24px;border-bottom:1px solid var(--rw-border); }
    .rw-drawer-title { margin:0; }
    /* Working copy: retain heading box and accessible dialog name on desktop. */
    @media(min-width:601px) { .rw-drawer .rw-drawer-title { clip-path:inset(50%); } }
    .rw-drawer-body { padding:24px; }
    .rw-drawer .rw-search-form { background:#151515;color:var(--rw-color-inverse);margin-bottom:24px; }
    .rw-drawer .rw-categories { padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--rw-border); }
    .rw-drawer-links { display:grid; }
    .rw-drawer-links>a { padding:14px 0; }
    .rw-search-dialog { inset:0 0 auto;margin:0;width:100%;background:#fff;padding:17px 24px; }
    .rw-search-dialog[open] { animation:rw-search-in var(--rw-duration) var(--rw-ease); }
    .rw-search-inner { max-width:720px;margin:auto;display:flex;gap:12px;align-items:center; }
    .rw-search-form { display:flex;flex:1;min-width:0;background:#f5f5f5; }
    .rw-search-form input { width:100%;min-width:0; }
    .rw-search-form input[type="search"] { margin:0;padding:0 16px;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;font-family:inherit;font-size:12px;line-height:44px; }
    .rw-search-form input::placeholder { color:inherit;opacity:.6;letter-spacing:.1em; }
    .rw-visually-hidden { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0; }
    @keyframes rw-drawer-in { from { transform:translateX(-100%); } to { transform:translateX(0); } }
    @keyframes rw-search-in { from { opacity:0;transform:translateY(-8px); } to { opacity:1;transform:translateY(0); } }
    @media(min-width:1201px) {
      body:has(.home-hero:not(.rw-mobile-only-media)) .rw-header { margin-bottom:calc(-1 * var(--rw-header-height)); }
      body:has(.home-hero:not(.rw-mobile-only-media)) .rw-header.rw-at-top { background:transparent;border-color:transparent;color:var(--rw-color-inverse); }
      .rw-header.rw-at-top .rw-logo img,.rw-header.rw-at-top #baseMenu .cart>a>img { filter:brightness(0) invert(1); }
    }
    @media(max-width:1200px) {
      :root { --rw-header-height:60px;--rw-gutter:16px; }
      .rw-header-inner { display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:4px; }
      .rw-brand,.rw-header-end { display:contents; }
      .rw-nav { display:none; }
      .rw-menu-toggle { grid-column:1;grid-row:1;justify-self:start; }
      .rw-logo { grid-column:2;grid-row:1;text-align:center;max-width:calc(100vw - 216px); }
      .rw-logo img { max-width:118px;max-height:26px;width:100%; }
      .rw-logo>a { font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
      .rw-actions { grid-column:3;grid-row:1;justify-self:end;gap:0; }
      .rw-header #baseMenu>ul { gap:0; }
      .rw-header #baseMenu>ul>li>a>img { width:20px;height:20px; }
      .rw-header:has(#baseMenu li.base) .rw-logo { max-width:calc(100vw - 304px); }
      .rw-drawer { width:min(340px,84vw); }
      .rw-search-dialog { padding:8px 12px; }
      .rw-search-inner { gap:4px; }
    }
    @media(max-width:900px) { :root { --rw-section-space:68px; } }
    @media(max-width:360px) {
      :root { --rw-gutter:8px; }
      .rw-logo img { max-width:96px; }
      .rw-header:has(#baseMenu li.base) .rw-logo { max-width:calc(100vw - 288px); }
    }
    @media(prefers-reduced-motion:reduce) {
      .rw-header,.rw-dialog,.btn,.text-link { animation:none!important;transition:none!important; }
    }

    /* v0.8: native cart link and badge remain; only its visual glyph is enhanced. */
    .rw-header #baseMenu>ul { gap:0; }
    .rw-header #baseMenu li.cart { order:-1; }
    .rw-header #baseMenu .rw-cart-glyph { position:absolute;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;pointer-events:none; }
    .rw-header #baseMenu .rw-cart-enhanced>img { opacity:0; }
    .rw-logo .logoText { color:inherit!important; }
    .rw-category-panel { width:280px;max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain; }
    .rw-category-panel .rw-categories ul { display:block;height:auto;max-height:none;overflow:visible; }
    .rw-drawer.rw-closing { animation:rw-drawer-out var(--rw-duration) var(--rw-ease) forwards; }
    @keyframes rw-drawer-out { to { transform:translateX(-100%); } }

    /* v0.8.1: expanded shop drawer; no category accordion or filtering here. */
    #rw-drawer .rw-categories ul { display:block;height:auto;max-height:none;overflow:visible; }
    #rw-drawer { overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain; }
    /* Blog INDEX only: URL guard + BASE list container. Never target article bodies. */
    #rw-blog-page.rw-blog-index { width:min(var(--max),calc(100% - 64px)); }
    #rw-blog-page.rw-blog-index .blogListMain {
      display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 32px;
      width:100%;max-width:none;margin:0;padding:0;height:auto;max-height:none;overflow:visible;
    }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner {
      display:flex;flex-direction:column;align-self:start;float:none;position:static;
      width:auto;min-width:0;margin:0;padding:0;border:0;height:auto!important;max-height:none!important;
      overflow:visible!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;
    }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > :not(.blog_head_image):not(.blog_title):not(.blog_publish) { display:none!important; }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_head_image {
      display:block;order:0;float:none;position:static;width:100%;height:auto;max-height:none;
      aspect-ratio:3/2;margin:0 0 18px;padding:0;background:var(--soft);overflow:hidden;
    }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_head_image > a { display:block;width:100%;height:100%; }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_head_image img {
      display:block;position:static;width:100%!important;height:100%!important;max-width:100%;max-height:none;
      object-fit:cover;margin:0;
    }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_title {
      display:block;order:1;width:auto;margin:0;padding:0;height:auto!important;max-height:none!important;
      overflow:visible!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;
    }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_title h2,
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_title a {
      display:block;font-family:var(--rw-font-ui);font-size:14px;font-weight:400;line-height:1.8;letter-spacing:.04em;
      margin:0;padding:0;height:auto!important;max-height:none!important;overflow:visible!important;
      white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:unset!important;line-clamp:unset!important;
    }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_publish { display:block;order:2;margin:10px 0 0;padding:0; }
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_publish > :not(.publish_date) { display:none!important; }
    #rw-blog-page.rw-blog-index .blogListMain .publish_date { font-size:10px;line-height:1.6;letter-spacing:.06em;color:var(--muted);margin:0;padding:0; }
    #rw-blog-page.rw-blog-index .blogListMain .publish_date::before,
    #rw-blog-page.rw-blog-index .blogListMain .publish_date::after { content:none; }
    #rw-blog-page.rw-blog-index .blogListMain > .paginate-wrp { grid-column:1/-1;width:100%;margin:8px 0 0; }
    #rw-blog-page.rw-blog-index .blogListMain::before,
    #rw-blog-page.rw-blog-index .blogListMain::after { content:none; }
    @media(max-width:1200px) {
      #rw-blog-page.rw-blog-index .blogListMain { grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 24px; }
    }
    @media(max-width:600px) {
      #rw-blog-page.rw-blog-index { width:calc(100% - 40px);padding:48px 0 72px; }
      #rw-blog-page.rw-blog-index .blogListMain { grid-template-columns:minmax(0,1fr);gap:40px; }
      #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_publish { display:none!important; }
    }

    /* v0.8.3: measured live UI proportions, independently implemented. */
    :root { --rw-global-ui-font:var(--rw-font-body); }
    .rw-header,.rw-dialog,.rw-footer { font-family:var(--rw-global-ui-font); }
    .rw-header #baseMenu .cart-badge { display:block!important;position:absolute;inset:0;pointer-events:none; }
    .rw-header #baseMenu .cart-qty { position:absolute;z-index:2;top:3px;right:-1px;min-width:18px;height:18px;padding:0 3px;border-radius:10px;background:#222;color:var(--rw-color-inverse);font-family:var(--rw-global-ui-font);font-size:10px;font-weight:400;line-height:18px;letter-spacing:0;text-align:center;white-space:nowrap; }
    .rw-header #baseMenu .cart-qty:empty { display:none!important; }
    @media(min-width:1201px) {
      .rw-header { --rw-header-height:80px; }
      .rw-header-inner { padding:0 24px 0 30px;gap:24px; }
      .rw-brand { gap:9px; }
      .rw-logo>a { max-width:144px; }
      .rw-logo img { width:144px;height:40px;max-width:144px;max-height:40px; }
      .rw-nav { gap:30px; }
      .rw-header-end { gap:24px; }
      .rw-header .rw-menu-toggle svg { width:24px;height:24px;stroke-width:1;transform:translateX(-3px); }
      .rw-header .rw-actions svg,.rw-header #baseMenu .rw-cart-glyph { width:21px;height:21px;stroke-width:1; }
      .rw-header #baseMenu>ul>li>a>img { width:21px;height:21px; }
      .rw-category>summary:after { display:none; }
    }
    .rw-footer { background:#222;color:var(--rw-color-inverse);padding:64px 64px 72px; }
    .rw-footer-top { display:grid;grid-template-columns:minmax(0,1.44fr) minmax(0,1.03fr) minmax(0,1fr);padding-bottom:64px;border-bottom:1px solid var(--rw-color-border-inverse);margin-bottom:38px; }
    .rw-footer-top:not(:has(.rw-footer-mail)) { grid-template-columns:minmax(0,1.44fr) minmax(0,1.03fr); }
    .rw-footer h3 { margin:0 0 25px; }
    .rw-footer p { margin:0 0 20px; }
    .rw-footer p:last-child { margin-bottom:0; }
    .rw-footer-menu { padding:0 50px; }
    .rw-footer-menu ul,.rw-footer-policy { list-style:none;margin:0;padding:0; }
    .rw-footer-menu li { margin:0 0 10px;line-height:1.3; }
    .rw-footer-menu a {  }
    .rw-footer-bottom { display:flex;justify-content:space-between;align-items:center;gap:24px; }
    .rw-footer-policy { display:flex;flex-wrap:wrap;gap:10px; }
    .rw-footer-policy a,.rw-footer-copyright {  }
    .rw-footer-copyright { margin-top:5px;color:var(--rw-color-text); }
    .rw-footer-social { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
    .rw-footer-social a { display:flex;align-items:center;justify-content:center;width:32px;height:32px; }
    .rw-footer-social svg { width:28px;height:28px; }
    .rw-footer .mailMagazineSubscribe_form { margin-top:25px; }
    .rw-footer .mailMagazineSubscribe_field { display:flex;align-items:stretch; }
    .rw-footer .mailMagazineSubscribe_input { margin:0;min-width:0;width:100%;height:42px;border:1px solid #ccc;background:transparent;color:var(--rw-color-inverse);border-radius:0;padding:10px 12px;font:inherit; }
    .rw-footer .mailMagazineSubscribe_submit { height:42px;flex:none;min-width:70px;border:1px solid #ccc;border-radius:0;background:#fff;color:var(--rw-color-text);padding:10px 14px;font:inherit;cursor:pointer; }
    .rw-footer .mailMagazineSubscribe_submit:disabled { opacity:.5;cursor:wait; }
    .rw-footer .mailMagazineSubscribe_confirm { font:inherit;white-space:pre-line;overflow-wrap:anywhere; }
    @media(max-width:900px) {
      .rw-footer { padding:48px 24px; }
      .rw-footer-top,.rw-footer-top:not(:has(.rw-footer-mail)) { grid-template-columns:1fr;gap:36px;padding-bottom:36px;margin-bottom:28px; }
      .rw-footer-menu { padding:0; }
      .rw-footer-bottom { align-items:flex-start;flex-direction:column; }
      .rw-footer-social a { width:44px;height:44px; }
    }

    /* v0.8.4: mobile header only; preserve desktop layout and native cart badge. */
    @media(max-width:1200px) {
      .rw-header-inner { position:relative;display:flex;justify-content:space-between;gap:0;padding:0 6px 0 8px; }
      .rw-header .rw-logo { position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:115px;max-width:calc(100% - 200px); }
      .rw-header .rw-logo>a { max-width:100%; }
      .rw-header .rw-logo img { width:115px;height:32px;max-width:100%;max-height:32px;object-fit:contain;margin:auto; }
      .rw-header .rw-actions { margin-left:auto;gap:0; }
      .rw-header .rw-menu-toggle svg { width:24px;height:24px;stroke-width:1; }
      .rw-header .rw-actions svg,.rw-header #baseMenu .rw-cart-glyph { width:21px;height:21px;stroke-width:1; }
      .rw-header #baseMenu>ul>li>a>img { width:21px;height:21px; }
      .rw-header:has(#baseMenu li.base) .rw-logo { max-width:calc(100% - 288px); }
    }
    /* ContactPage scope: BASE owns all form markup, actions and validation. */
    #rw-contact-page { width:min(800px,calc(100% - 40px));padding:70px 0 110px;font-family:var(--rw-global-ui-font); }
    #rw-contact-page .inquirySection { width:100%;max-width:100%;margin:0;padding:0; }
    #rw-contact-page .inquirySection>h1 { display:block;margin:0 0 10px;padding:0;text-align:center;text-transform:uppercase; }
    #rw-contact-page .inquirySection>p { margin:0 0 70px;text-align:center;overflow-wrap:anywhere; }
    #rw-contact-page form { width:100%;max-width:100%;margin:0; }
    #rw-contact-page dl { margin:0;padding:0; }
    #rw-contact-page dt { float:none;width:auto;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:50px 0 20px;padding:0;text-align:left; }
    #rw-contact-page dt:first-child { margin-top:0; }
    #rw-contact-page dt span { flex:none;font-size:12px;line-height:1.5; }
    #rw-contact-page dd { float:none;width:100%;min-width:0;margin:0;padding:0;overflow-wrap:anywhere; }
    #rw-contact-page dd.error { margin-top:5px;font-size:12px; }
    #rw-contact-page input:not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
    #rw-contact-page textarea,#rw-contact-page select { box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:12px;border:1px solid var(--rw-color-control-border);border-radius:0;background:#fff;color:var(--rw-color-text);font-size:14px;line-height:1.3; }
    #rw-contact-page textarea { min-height:300px;resize:vertical; }
    #rw-contact-page .control-panel { text-align:center; }
    #rw-contact-page input[type="submit"],#rw-contact-page input[type="button"],#rw-contact-page button { display:inline-block;width:150px;max-width:100%;min-height:44px;margin:60px 8px 0;padding:12px;border:1px solid #222;border-radius:0;background:#222;color:var(--rw-color-inverse);font-size:12px;line-height:1.3;cursor:pointer; }
    @media(max-width:600px) {
      #rw-contact-page { padding:58px 0 90px; }
      #rw-contact-page .inquirySection>h1 {  }
      #rw-contact-page .inquirySection>p { margin-bottom:58px; }
      #rw-contact-page dt { margin:42px 0 17px; }
      #rw-contact-page input:not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
      #rw-contact-page textarea,#rw-contact-page select { font-size:16px; }
    }

    /* Style the native BASE required text without replacing its language. */
    #rw-contact-page :is(#ShopInquiryInquiryForm,#ShopInquiryInquiryPreviewForm) dt>span { display:inline-flex;align-items:center;flex:0 0 auto;margin:0;padding:3px 5px;border-radius:0;background:#df5b41;color:var(--rw-color-inverse);font-size:10px;font-weight:400;line-height:13px;letter-spacing:0;white-space:nowrap; }

    /* v0.8.8: product-main remains in flow through the complete gallery. */
    .item-page>.wrap { display:block;position:static;float:none;height:auto;max-height:none;overflow:visible; }
    .item-page>.wrap>.product-main { display:grid;position:static;float:none;height:auto;max-height:none;overflow:visible;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);grid-template-rows:auto;grid-auto-rows:auto;align-items:start; }
    .item-page .product-main>.product-gallery,
    .item-page .product-main>.product-info { position:static;float:none;height:auto;max-height:none;min-width:0;overflow:visible;align-self:start;grid-row:1; }
    .item-page .product-main>.product-gallery { display:grid;grid-column:1;grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-rows:auto;grid-auto-flow:row; }
    .item-page .product-main>.product-gallery>figure { display:block;position:static;float:none;height:auto;max-height:none;overflow:visible;grid-area:auto; }
    .item-page .product-main>.product-gallery>figure>img { display:block;position:static;float:none;width:100%;height:auto;max-height:none; }
    .item-page .product-main>.product-info { display:block;grid-column:2; }
    .item-page>.wrap>.shop-review,
    .item-page>.wrap>.related-items,
    .item-page>.wrap>.recently-viewed { position:static;float:none;clear:both;height:auto;max-height:none; }
    @media(max-width:900px) {
      .item-page>.wrap>.product-main { grid-template-columns:minmax(0,1fr); }
      .item-page .product-main>.product-gallery,
      .item-page .product-main>.product-info { grid-column:1;grid-row:auto; }
    }

    /* v0.8.9: desktop info tracking; gallery and lower sections remain in flow. */
    @media(min-width:1201px) {
      .item-page .product-main>.product-info { position:sticky;top:var(--rw-info-top,108px);align-self:start; }
    }

    /* v0.8.10: desktop product UI measured against the live shop. */
    @media(min-width:1201px) {
      .item-page { padding-top:4vh; }
      .item-page>.wrap { width:calc(100% - 128px);max-width:none; }
      .item-page>.wrap>.product-main { grid-template-columns:minmax(0,calc(65% - 32px)) minmax(0,calc(35% - 32px));gap:64px; }
      .item-page .product-main>.product-info { font-family:var(--rw-global-ui-font);color:var(--rw-color-text);letter-spacing:1.12px; }
      .item-page .product-info h1 { margin:0 0 1.5vh;padding:0;overflow-wrap:anywhere; }
      .item-page .product-info .item-price { margin:0 0 2vh;padding-bottom:1.8vh;border-bottom:1px solid var(--rw-color-border); }
      .item-page .product-info .item-price strong { font-weight:400; }
      .item-page .product-info #itemAttention { margin:2vh 0;font-size:11px;line-height:1.3; }
      .item-page .product-info #itemAttention .attention { margin:0; }
      .item-page .product-info .membershipPoint__amountWrapper { margin:0; }
      .item-page .product-info .membershipPoint__amount { margin-right:4px; }
      .item-page .product-info .membershipPoint__attentionLink,
      .item-page .product-info #postageOpen { font-weight:700; }
      .item-page .product-info .x_purchaseForm { margin:2vh 0 2.5vh; }
      .item-page .product-info #amountSelectWrap { display:block;width:100%;margin:0; }
      .item-page .product-info #amountSelectWrap>label { display:block;margin:0 0 10px; }
      .item-page .product-info #amountSelect { box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0;height:40px;padding:10px 24px 10px 10px;border:1px solid var(--rw-color-control-border);border-radius:0;background-color:var(--rw-color-inverse);color:var(--rw-color-text);font-size:14px;line-height:1.3;text-align:left; }
      .item-page .product-info .purchaseButton__btn { width:100%;min-height:56px;margin-top:2vh;padding:20px;border:1px solid #222;background:#222;color:var(--rw-color-inverse); }
      .item-page .product-info .purchaseButton__btn:not(:disabled):not([aria-disabled="true"]):hover { background:#444;border-color:#444; }
      .item-page .product-info .item-share { display:flex;align-items:center;flex-wrap:wrap;gap:10px;width:100%;margin:0 0 2vh;font-size:11px;line-height:1.3; }
      .item-page .product-info .item-share #openIllegalReport { margin-left:auto;white-space:nowrap; }
      .item-page .product-info .item-description { margin:0;color:var(--rw-color-text);overflow-wrap:anywhere; }
      .item-page .product-info .item-description p { margin:0 0 1.8em; }
      .item-page .product-info .item-description a { color:inherit;text-decoration:none; }
      .item-page .product-info .item-description a:hover { text-decoration:underline; }
    }

    /* v0.8.11: product share row only. */
    .item-page .product-info .item-share { display:flex;align-items:center;gap:12px;flex-wrap:wrap; }
    .item-page .product-info .rw-share-links:not([hidden]) { display:flex;align-items:center;gap:12px; }
    .item-page .product-info .rw-share-links a { display:inline-flex;align-items:center;gap:7px;white-space:nowrap; }
    /* v0.8.12: decorative share icons only; share destinations and handlers unchanged. */
    .item-page .product-info .rw-share-links .rw-share-icon { display:block;width:15px;height:15px;min-width:15px;flex:0 0 15px;fill:currentColor;overflow:visible; }
    .item-page .product-info .rw-share-links .rw-share-icon--x { color:#000; }
    .item-page .product-info .rw-share-links .rw-share-icon--facebook { color:#1877f2; }
    .item-page .product-info .rw-share-links .rw-share-icon--line { color:#06c755; }
    .item-page .product-info .rw-share-links a:hover { opacity:.65; }
    .item-page .product-info .item-share #openIllegalReport { margin-left:auto;white-space:nowrap; }
    @media(min-width:1201px) { .item-page .product-info .item-share { flex-wrap:nowrap; } }
  
    /* v0.8.13: ROSWAY visual tokens. Values measured on the public shop at 1280/390px.
       A role is reused across pages; BASE-owned controls retain their state semantics. */
    :root {
      --rw-font-body:"Albert Sans","Noto Sans JP",sans-serif;
      --rw-font-heading:var(--rw-font-body);--rw-font-nav:var(--rw-font-body);
      --rw-font-purchase:"Helvetica Neue",Helvetica,Arial,sans-serif;
      --rw-color-text:#222;--rw-color-secondary:var(--rw-color-text);--rw-color-muted:var(--rw-color-text);
      --rw-color-inverse:#fff;--rw-color-footer:var(--rw-color-inverse);
      --rw-color-border:rgba(34,34,34,.1);--rw-color-border-inverse:rgba(255,255,255,.1);
      --rw-color-control-border:#ddd;
      --rw-tracking:1.12px;--rw-weight-regular:400;--rw-weight-bold:700;
      --rw-line-ui:1.3;--rw-line-card:1.5;--rw-line-body:1.8;--rw-line-note:2;
      --rw-size-body:14px;--rw-size-nav:12px;--rw-size-drawer-nav:13px;--rw-size-drawer-child:11px;
      --rw-size-page-title:40px;--rw-size-section-title:35px;--rw-size-subheading:24px;
      --rw-size-product-title:35px;--rw-size-price:20px;--rw-size-description:13px;
      --rw-size-card-title:14px;--rw-size-card-price:14px;--rw-size-caption:13px;
      --rw-size-metadata:12px;--rw-size-note:11px;--rw-size-form-label:16px;
      --rw-size-quantity-label:14px;--rw-size-button:12px;--rw-size-purchase-button:12px;
      --rw-size-footer-heading:12px;--rw-size-footer-body:12px;--rw-size-footer-link:12px;--rw-size-micro:10px;
      --rw-size-point:18px;--rw-size-point-label:14px;--rw-size-system-title:34px;--rw-size-system-subheading:18px;
      --rw-related-gap:20px;--rw-related-caption-top:3px;--rw-related-heading-gap:3vh;
      --rw-related-image-gap:20px;--rw-related-price-gap:8px;
    }
    @media(max-width:600px) {
      :root { --rw-size-page-title:30px;--rw-size-section-title:28px;--rw-size-product-title:28px;--rw-size-subheading:20px;--rw-size-system-title:25px; }
    }
    body { font-family:var(--rw-font-body);font-size:var(--rw-size-body);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .kicker,
    .soldout,
    .breadcrumb,
    .load-status,
    .rw-drawer-title,
    #rw-blog-page.rw-blog-index .blogListMain .publish_date,
    #rw-blog-page:not(.rw-blog-index) .publish_date { font-family:var(--rw-font-body);font-size:var(--rw-size-metadata);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .section-head h2,
    .split-copy h2,
    .profile-copy h2,
    #rw-blog-page:not(.rw-blog-index) .blog_title h2,
    #rw-blog-page:not(.rw-blog-index) .blog_title a { font-family:var(--rw-font-heading);font-size:var(--rw-size-section-title);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .section-head p,
    .explore-card p,
    .about-hero .en,
    .profile-role { font-family:var(--rw-font-body);font-size:var(--rw-size-caption);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .text-link,
    .btn,
    .item-page .product-info .rw-share-links a { font-family:var(--rw-font-body);font-size:var(--rw-size-button);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .brand-intro h1,
    .about-hero h1,
    .listing-head h1,
    #rw-contact-page .inquirySection>h1,
    .system-page #membership .content>.heading,
    .system-page #membership .login>.heading { font-family:var(--rw-font-heading);font-size:var(--rw-size-page-title);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .brand-intro p,
    .split-copy p,
    .about-hero .lead,
    .location-card p,
    .profile-copy p,
    .contact-cta p,
    #rw-contact-page .inquirySection>p,
    .system-page,
    #rw-blog-page:not(.rw-blog-index) .blog_body,
    .system-page #privacy p,
    .system-page #privacy dd,
    .system-page #law p { font-family:var(--rw-font-body);font-size:var(--rw-size-body);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-body);letter-spacing:var(--rw-tracking); }
    .gateway-title,
    .gem-card h3,
    .explore-icon,
    .explore-card h3,
    .location-card h3 { font-family:var(--rw-font-heading);font-size:var(--rw-size-subheading);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .product-card__title,
    .journal-card h3,
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_title h2,
    #rw-blog-page.rw-blog-index .blogListMain > .blog_inner > .blog_title a { font-family:var(--rw-font-body);font-size:var(--rw-size-card-title);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-card);letter-spacing:var(--rw-tracking); }
    .product-card__price { font-family:var(--rw-font-body);font-size:var(--rw-size-card-price);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .product-card__discount,
    .rw-footer-policy a,.rw-footer-copyright { font-family:var(--rw-font-body);font-size:var(--rw-size-micro);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .child-categories a,
    .rw-nav { font-family:var(--rw-font-nav);font-size:var(--rw-size-nav);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .item-info h1,
    .item-page .product-info h1 { font-family:var(--rw-font-heading);font-size:var(--rw-size-product-title);font-weight:var(--rw-weight-regular);line-height:1.2;letter-spacing:var(--rw-tracking); }
    .item-price,
    .item-page .product-info .item-price { font-family:var(--rw-font-body);font-size:var(--rw-size-price);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .item-description,
    .item-page .product-info .item-description { font-family:var(--rw-font-body);font-size:var(--rw-size-description);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-body);letter-spacing:var(--rw-tracking); }
    .rw-drawer-links>a,
    .rw-categories a { font-family:var(--rw-font-nav);font-size:var(--rw-size-drawer-nav);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .rw-categories ul a,
    .item-page .product-info .item-share #openIllegalReport { font-family:var(--rw-font-nav);font-size:var(--rw-size-drawer-child);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .rw-footer { font-family:var(--rw-font-body);font-size:var(--rw-size-footer-body);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-body);letter-spacing:var(--rw-tracking); }
    .rw-footer h3 { font-family:var(--rw-font-body);font-size:var(--rw-size-footer-heading);font-weight:var(--rw-weight-bold);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .rw-footer-menu a { font-family:var(--rw-font-body);font-size:var(--rw-size-footer-link);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    #rw-contact-page dt { font-family:var(--rw-font-body);font-size:var(--rw-size-form-label);font-weight:var(--rw-weight-bold);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .item-page .product-info #amountSelectWrap>label { font-family:var(--rw-font-body);font-size:var(--rw-size-quantity-label);font-weight:var(--rw-weight-bold);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .item-page .product-info #itemAttention .attention { font-family:var(--rw-font-body);font-size:var(--rw-size-note);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-note);letter-spacing:var(--rw-tracking); }
    .item-page .product-info .membershipPoint__amountWrapper { font-family:var(--rw-font-body);font-size:var(--rw-size-point-label);font-weight:var(--rw-weight-bold);line-height:var(--rw-line-note);letter-spacing:var(--rw-tracking); }
    .item-page .product-info .membershipPoint__amount { font-family:var(--rw-font-body);font-size:var(--rw-size-point);font-weight:var(--rw-weight-bold);line-height:var(--rw-line-note);letter-spacing:var(--rw-tracking); }
    .item-page .product-info .purchaseButton__btn { font-family:var(--rw-font-purchase);font-size:var(--rw-size-purchase-button);font-weight:var(--rw-weight-bold);line-height:var(--rw-line-ui);letter-spacing:normal; }
    .system-page #privacy>h2,
    .system-page #law>h2 { font-family:var(--rw-font-heading);font-size:var(--rw-size-system-title);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }
    .system-page #privacy dt,
    .system-page #law>h3 { font-family:var(--rw-font-heading);font-size:var(--rw-size-system-subheading);font-weight:var(--rw-weight-bold);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking); }

    /* Body's computed baseline is compact; all reading blocks explicitly use prose leading. */
    body { color:var(--rw-color-text); }
    .brand-intro p,.split-copy p,.about-hero .lead,.location-card p,.profile-copy p { color:var(--rw-color-secondary); }
    .kicker,.section-head p,.profile-role,.about-hero .en,.breadcrumb,.soldout { color:var(--rw-color-muted); }
    .rw-nav { color:inherit; }
    .rw-category-panel { letter-spacing:var(--rw-tracking); }
    .rw-categories>li>a { font-weight:var(--rw-weight-regular); }
    .rw-footer,.rw-footer-copyright { color:var(--rw-color-footer); }
    .rw-footer-menu li { line-height:var(--rw-line-ui); }
    .rw-footer-policy a,.rw-footer-menu a { color:inherit; }
    .item-page .product-info .item-price strong { font-weight:var(--rw-weight-regular); }
    .item-page .product-info .item-description { color:var(--rw-color-text); }
    .item-page .product-info #amountSelect { font-family:var(--rw-font-body);font-size:var(--rw-size-body);letter-spacing:var(--rw-tracking); }
    #rw-contact-page dt { color:var(--rw-color-text); }
    #rw-contact-page input[type="submit"],#rw-contact-page input[type="button"],#rw-contact-page button {
      font-family:var(--rw-font-body);font-size:var(--rw-size-button);font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);
    }
    /* No blanket font/color selector inside App modals, validation, or Membership controls. */
    .system-page #membership { font-family:var(--rw-font-body);color:var(--rw-color-text);letter-spacing:var(--rw-tracking); }
    .system-page #membership .description>p { line-height:var(--rw-line-body); }
    .item-page .related-items .section-head,.item-page .recently-viewed .section-head { margin-bottom:var(--rw-related-heading-gap); }
    .item-page .related-items .section-head h2,.item-page .recently-viewed .section-head h2 { margin:0; }
    .item-page .related-items .section-head p,.item-page .recently-viewed .section-head p { margin:var(--rw-related-caption-top) 0 0; }
    .item-page :is(.related-items,.recently-viewed) .related-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--rw-related-gap); }
    .item-page :is(.related-items,.recently-viewed) .product-card { min-width:0;text-align:center; }
    .item-page :is(.related-items,.recently-viewed) .product-card__title { margin:var(--rw-related-image-gap) 0 0; }
    .item-page :is(.related-items,.recently-viewed) .product-card__price { margin-top:var(--rw-related-price-gap);white-space:normal; }
    .recently-viewed[hidden] { display:none; }
    @media(max-width:600px) {
      .item-page :is(.related-items,.recently-viewed) .related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    }

    /* v0.8.14: native-scroll history, isolated from Related Items and product-main. */
    #rw-recent-items .rw-recent-track {
      display:grid;grid-template-columns:none;grid-auto-flow:column;
      grid-auto-columns:calc((100% - var(--rw-related-gap) * 2) / 3);
      gap:var(--rw-related-gap);overflow-x:auto;overscroll-behavior-x:contain;
      scroll-snap-type:x mandatory;scroll-padding-inline:0;padding-bottom:12px;
    }
    #rw-recent-items .product-card { scroll-snap-align:start; }
    #rw-recent-items .product-card:focus-visible { outline-offset:-2px; }
    #rw-recent-items .rw-recent-controls { display:flex;justify-content:flex-end;gap:var(--rw-space-1);margin-top:var(--rw-space-2); }
    #rw-recent-items .rw-recent-controls[hidden] { display:none; }
    #rw-recent-items .rw-recent-controls button { width:44px;height:44px;padding:0;border:1px solid var(--rw-color-border);background:var(--paper);color:var(--rw-color-text);cursor:pointer; }
    #rw-recent-items .rw-recent-controls button:disabled { opacity:.35;cursor:default; }
    #rw-recent-items .rw-recent-controls svg { display:block;margin:auto;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.25; }
    @media(max-width:1200px) {
      #rw-recent-items .rw-recent-track { grid-auto-columns:calc((100% - var(--rw-related-gap)) / 2); }
      #rw-recent-items .rw-recent-controls { display:none; }
    }
    @media(max-width:600px) {
      #rw-recent-items .rw-recent-track { grid-auto-columns:100%;padding-inline:10%;scroll-padding-inline:10%; }
      #rw-recent-items .product-card { scroll-snap-align:center; }
    }
      /* v0.8.16: phone layouts only; desktop rules and role tokens remain intact. */
    @media(max-width:600px) {
      .rw-header-inner { padding-inline:8px; }
      .rw-header .rw-menu-toggle svg { width:22px;height:22px; }
      .rw-header .rw-logo { width:115px;max-width:calc(100% - 200px); }
      .rw-header .rw-actions { gap:0; }
      .rw-header .rw-icon-button,.rw-header #baseMenu>ul>li>a { width:44px;height:44px; }
      .rw-drawer { width:84vw;max-width:340px; }
      .rw-drawer-body { padding:24px 20px calc(24px + env(safe-area-inset-bottom,0px)); }
      .rw-search-form input { font-family:var(--rw-font-body);font-size:16px;letter-spacing:var(--rw-tracking); }
      .wrap,.system-page { min-width:0; }
      .products-grid,.gem-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .product-card,.gem-card,.split-copy,.location-card,.profile-copy { min-width:0;overflow-wrap:anywhere; }
      .section-head,.listing-head,.about-hero,.rw-footer { overflow-wrap:anywhere; }
      .split-media { min-height:0;aspect-ratio:1; }
      .split-copy { padding:40px 20px; }
      .book-grid { gap:24px 12px; }
      .child-categories a { max-width:100%;overflow-wrap:anywhere; }
      .system-page { padding-block:48px 72px;overflow-wrap:anywhere; }
      .system-page img,.system-page iframe { max-width:100%; }
      .system-page #membership { min-width:0;max-width:100%; }
      .system-page #membership input:not([type="hidden"]),.system-page #membership select { max-width:100%;min-width:0; }

      .item-page { padding:24px 0 64px; }
      .item-page>.wrap { width:calc(100% - 40px); }
      .item-page>.wrap>.product-main { grid-template-columns:minmax(0,1fr);gap:32px; }
      .item-page .product-main>.product-info { position:static;top:auto;grid-column:1;grid-row:auto; }
      .item-page .product-main>.product-gallery { grid-column:1;grid-row:auto;gap:10px; }
      .item-page .product-gallery>figure>img { width:100%;height:auto;object-fit:contain; }
      .item-page .product-info h1 { margin:0 0 12px;overflow-wrap:anywhere; }
      .item-page .product-info .item-price { margin:0 0 16px;padding-bottom:15px;border-bottom:1px solid var(--rw-color-border); }
      .item-page .product-info #itemAttention { margin:16px 0;overflow-wrap:anywhere; }
      .item-page .product-info #itemAttention .attention { margin:0; }
      .item-page .product-info .membershipPoint__amountWrapper { margin:0; }
      .item-page .product-info .membershipPoint__amount { margin-right:4px; }
      .item-page .product-info .x_purchaseForm { width:100%;min-width:0;margin:16px 0 20px; }
      .item-page .product-info #amountSelectWrap { display:block;width:100%;margin:0; }
      .item-page .product-info #amountSelectWrap>label { display:block;margin:0 0 10px; }
      .item-page .product-info #amountSelect { display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;height:44px;padding:10px 24px 10px 10px;border:1px solid var(--rw-color-control-border);border-radius:0;background-color:var(--rw-color-inverse);color:var(--rw-color-text);text-align:left; }
      .item-page .product-info :is(.itemSelect__select,.itemOption__select,.itemOption__input) { min-width:0;max-width:100%; }
      .item-page .product-info .purchaseButton__btn { width:100%;min-height:56px;margin-top:16px;padding:20px;border-color:var(--rw-color-text);background:var(--rw-color-text);color:var(--rw-color-inverse); }
      .item-page .product-info .rw-share-links:not([hidden]) { flex-wrap:wrap;gap:8px 12px;max-width:100%; }
      .item-page .product-info .item-share { margin:0 0 24px;gap:8px 12px; }
      .item-page .product-info .item-share #openIllegalReport { margin-left:auto; }
      .item-page .product-info .item-description { margin:0;overflow-wrap:anywhere; }
      .item-page .product-info .item-description p { margin:0 0 1.8em; }
      .item-page .product-info .item-description img,.item-page .product-info .item-description iframe { max-width:100%; }
      .item-page>.wrap>.shop-review { max-width:100%;margin-top:56px;overflow-wrap:anywhere; }
      .shop-review #x_reviewAccordion { width:100%;max-width:100%; }
      .item-page :is(.related-items,.recently-viewed) { margin-top:56px; }
      .item-page .related-items .related-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px; }
      /* Content box is 80% of the rail; one 100%-wide grid column is therefore 80% of the rail. */
      #rw-recent-items .rw-recent-track { grid-auto-columns:100%;padding-inline:10%;scroll-padding-inline:10%;gap:12px; }
      #rw-recent-items .product-card { scroll-snap-align:center; }

      #rw-blog-page:not(.rw-blog-index) .blog_body { max-height:none;overflow:visible;-webkit-line-clamp:unset;line-clamp:unset;overflow-wrap:anywhere; }
      #rw-blog-page:not(.rw-blog-index) .blog_body img { max-width:100%;height:auto; }
      #rw-contact-page .inquirySection :is(input,textarea,select) { scroll-margin-block:76px; }
      #rw-contact-page .control-panel { display:flex;justify-content:center;flex-wrap:wrap;gap:12px; }
      #rw-contact-page .control-panel :is(button,input[type="submit"],input[type="button"]) { margin-inline:0;max-width:100%; }

      .rw-footer { padding:7vh clamp(24px,12vw,60px) 12vh; }
      .rw-footer-top,.rw-footer-top:not(:has(.rw-footer-mail)) { grid-template-columns:minmax(0,1fr);gap:36px;margin-bottom:7vh;padding-bottom:7vh; }
      .rw-footer-bottom { min-width:0;gap:24px; }
      .rw-footer-policy { flex-direction:column;align-items:flex-start;gap:12px; }
      .rw-footer-social { gap:8px; }
      /* BASE owns the fixed Message App UI. Reserve scroll clearance only when it exists. */
      html:has(#x_startMessenger) { scroll-padding-bottom:calc(52px + env(safe-area-inset-bottom,0px)); }
      body:has(#x_startMessenger) .rw-footer { padding-bottom:calc(12vh + 40px + env(safe-area-inset-bottom,0px)); }
    }


    @media(max-width:1200px) {
      .item-page .product-info .item-description { overflow-wrap:anywhere; }
    }
    /* v0.8.17: measured mobile geometry; no desktop override. */
    @media(max-width:600px) {
      html { -webkit-text-size-adjust:100%;text-size-adjust:100%; }
      .rw-header-inner { padding-left:calc(3vw - 3px);padding-right:calc(3vw - 6px); }
      .rw-header #baseMenu li.base[style*="visibility: hidden"],
      .rw-header #baseMenu li.base[style*="visibility:hidden"] { display:none; }
      .rw-header .rw-logo,.rw-header:has(#baseMenu li.base) .rw-logo { width:115.2px;max-width:calc(100% - 188px); }
      .rw-header .rw-logo img { width:auto;height:32px;max-width:100%;max-height:32px; }
      .rw-header .rw-actions>button svg { transform:translateX(4px); }
      .rw-header #baseMenu .rw-cart-glyph { width:20.1px;height:21px; }
      .rw-header #baseMenu .cart-qty { top:3px;right:-1px;min-width:18px;height:18px;padding:0 2px;font-size:var(--rw-size-micro);line-height:18px;letter-spacing:var(--rw-tracking);border-radius:10px; }
      .wrap,.item-page>.wrap,.system-page,#rw-contact-page,#rw-blog-page.rw-blog-index { width:calc(100% - 10vw); }
      .section-head { margin-bottom:3vh; }
      .item-page :is(.related-items,.recently-viewed) { margin-top:7vh; }
      .item-page :is(.related-items,.recently-viewed) .section-head h2 {
        font-family:var(--rw-font-heading);font-size:var(--rw-size-section-title);font-weight:var(--rw-weight-regular);
        line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
      }
      .item-page :is(.related-items,.recently-viewed) .section-head p {
        font-family:var(--rw-font-body);font-size:var(--rw-size-caption);font-weight:var(--rw-weight-regular);
        line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);margin-top:3px;
      }
      .item-page .related-items .related-grid,#rw-recent-items .rw-recent-track {
        display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:100%;
        gap:20px;padding:0 60px 12px;overflow-x:auto;overscroll-behavior-x:contain;
        scroll-snap-type:x mandatory;scroll-padding-inline:60px;scrollbar-width:none;
      }
      .item-page .related-items .related-grid::-webkit-scrollbar,#rw-recent-items .rw-recent-track::-webkit-scrollbar { display:none; }
      .item-page :is(.related-items,.recently-viewed) .product-card { scroll-snap-align:center;min-width:0;text-align:center; }
      .item-page :is(.related-items,.recently-viewed) .product-card__title {
        font-family:var(--rw-font-body);font-size:var(--rw-size-card-title);font-weight:var(--rw-weight-regular);
        line-height:var(--rw-line-card);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);margin-top:20px;
      }
      .item-page :is(.related-items,.recently-viewed) .product-card__price {
        font-family:var(--rw-font-body);font-size:var(--rw-size-card-price);font-weight:var(--rw-weight-regular);
        line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);margin-top:8px;
      }
      .rw-mobile-dots { display:flex;justify-content:center;flex-wrap:wrap;gap:0;margin-top:8px; }
      .rw-mobile-dots[hidden] { display:none; }
      .rw-mobile-dots button { display:grid;place-items:center;width:24px;height:24px;flex:none;padding:0;border:0;background:transparent;color:var(--rw-color-text);cursor:pointer; }
      .rw-mobile-dots button::before { content:"";width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.1; }
      .rw-mobile-dots button[aria-current="true"]::before { opacity:.5; }
      .rw-footer { padding-inline:min(7vh,16vw);line-height:var(--rw-line-ui); }
      .rw-footer-about p { font-size:var(--rw-size-footer-body);line-height:var(--rw-line-body); }
      .rw-footer h3 { font-size:var(--rw-size-footer-heading);line-height:var(--rw-line-ui); }
      .rw-footer-menu a { font-size:var(--rw-size-footer-link); }
      .rw-footer-copyright { margin-top:15px; }
      .rw-footer-policy a,.rw-footer-copyright { font-size:var(--rw-size-micro);line-height:var(--rw-line-ui); }
      body:has(#x_startMessenger) .rw-footer { padding-bottom:calc(12vh + 40px + env(safe-area-inset-bottom,0px)); }
    }


    /* v0.8.18: mobile related grid and latest-five history presentation. */
    @media(max-width:600px) {
      .item-page .related-items .related-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;
        gap:10px;padding:0;overflow:visible;scroll-snap-type:none;scroll-padding-inline:0;
      }
      .item-page .related-items .product-card { scroll-snap-align:none; }
      #rw-recent-items .rw-recent-track>.product-card:nth-child(n+6) { display:none; }
      .product-card__price { white-space:normal; }
      .rw-mobile-dots button { width:12px; }
    }

    /* Main-price tax presentation is explicitly shared by PC and mobile. */
    .product-main .product-info .item-price { overflow-wrap:anywhere; }
    .product-main .product-info .rw-main-price-amount { display:inline-block;white-space:nowrap;max-width:100%; }
    .product-main .product-info .item-price .rw-tax-label {
      font-family:var(--rw-font-body);font-size:var(--rw-size-metadata);font-weight:var(--rw-weight-regular);
      line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
      margin-left:3px;vertical-align:baseline;white-space:nowrap;
    }
    /* v0.8.20: listing status, category hierarchy, Membership guide only. */
    .products-grid>.product-card>.soldout {
      position:static;inset:auto;transform:none;display:block;width:auto;height:auto;
      margin:4px 0 0;padding:0;background:none;border:0;box-shadow:none;opacity:1;
      font-family:var(--rw-font-body);font-size:var(--rw-size-note);font-weight:var(--rw-weight-regular);
      line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
    }
    .products-grid>.product-card>.soldout::before,.products-grid>.product-card>.soldout::after { content:none; }
    .rw-category-page .products-grid { grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px; }
    .rw-category-page .product-card { min-width:0; }
    .rw-category-page .product-card__title { white-space:normal;overflow-wrap:anywhere; }
    .rw-category-page .rw-breadcrumb { margin:0 0 24px;text-align:left; }
    .rw-category-page .breadcrumb { display:flex;flex-wrap:wrap;gap:6px 0;list-style:none;padding:0;margin:0;font-size:var(--rw-size-micro);color:var(--rw-color-muted); }
    .rw-category-page .breadcrumb__child { display:flex;align-items:baseline;min-width:0;max-width:100%;margin:0;padding:0;float:none;overflow-wrap:anywhere; }
    .rw-category-page .breadcrumb__child::after { content:none; }
    .rw-category-page .breadcrumb__child+.breadcrumb__child::before { content:">";flex:none;margin:0 10px;color:var(--rw-color-muted); }
    .rw-category-page .breadcrumb :is(a,span) { min-width:0;white-space:normal; }
    .rw-category-page .breadcrumb a:hover { text-decoration:underline; }
    .rw-category-page .listing-head { margin-bottom:32px; }
    .rw-category-page .child-categories { margin-top:20px; }
    .system-page:has(#membership>.guide) { width:min(1160px,calc(100% - 64px));padding-top:32px; }
    .system-page #membership>.guide { width:100%;max-width:none;margin:0;padding:0; }
    .system-page #membership>.guide>.img-wrapper { width:100%;height:auto;min-height:0;max-height:none;margin:0;padding:0;overflow:visible; }
    .system-page #membership>.guide>.img-wrapper>.img { display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain;position:static;margin:0; }
    .system-page #membership>.guide>:is(.content,.about-point,.reward-list,.register) { width:100%;max-width:900px;margin-inline:auto;box-sizing:border-box; }
    .system-page #membership>.guide>.content { margin-top:60px;padding:0; }
    .system-page #membership>.guide>.about-point { margin-top:40px; }
    .system-page #membership>.guide>.reward-list { margin-top:32px; }
    .system-page #membership>.guide .heading { margin-top:0; }
    .system-page #membership>.guide .heading-point { font:var(--rw-weight-regular) var(--rw-size-section-title)/var(--rw-line-ui) var(--rw-font-heading);letter-spacing:var(--rw-tracking);color:var(--rw-color-text); }
    .system-page #membership>.guide :is(.description,.description-details) { font:var(--rw-weight-regular) var(--rw-size-body)/var(--rw-line-body) var(--rw-font-body);letter-spacing:var(--rw-tracking);color:var(--rw-color-text); }
    .system-page #membership>.guide .reward-list>.title { font-size:var(--rw-size-system-subheading);font-weight:var(--rw-weight-regular); }
    .system-page #membership>.guide .reward-card-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px; }
    .system-page #membership>.guide .reward-card { width:auto;min-width:0;max-width:100%;margin:0; }
    .system-page #membership>.guide .reward-image { width:100%;height:auto; }
    .system-page #membership>.guide .reward-card .title { font-size:var(--rw-size-card-title);line-height:var(--rw-line-card);overflow-wrap:anywhere; }
    .system-page #membership>.guide>.register { margin-top:36px; }
    .system-page #membership>.guide .register :is(.description-wrapper,.mail-magazine,.mail-magazine-wrapper,.link-wrapper,.link) { max-width:100%;min-width:0;box-sizing:border-box; }
    .system-page #membership>.guide .register .label { min-width:0;overflow-wrap:anywhere; }
    @media(min-width:601px) and (max-width:1100px) {
      .rw-category-page .products-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    }
    @media(max-width:600px) {
      .rw-category-page .products-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px; }
      .rw-category-page .rw-breadcrumb { margin-bottom:20px; }
      .system-page:has(#membership>.guide) { width:calc(100% - 36px);padding-top:24px; }
      .system-page #membership>.guide>.content { margin-top:32px; }
      .system-page #membership>.guide>:is(.about-point,.reward-list) { margin-top:28px; }
      .system-page #membership>.guide .reward-card-list { grid-template-columns:minmax(0,1fr);gap:24px;margin-top:20px; }
      .system-page #membership>.guide>.register { margin-top:28px;padding:28px 18px; }
      .system-page #membership>.guide .register .mail-magazine-wrapper { display:flex;align-items:flex-start;gap:8px; }
      .system-page #membership>.guide .register .checkbox { flex:none; }
      .system-page #membership>.guide .register .link { width:100%;white-space:normal; }
    }
    /* v0.8.21: category-only rhythm, using the public shop's measured roles. */
    .rw-category-page { padding-top:15px; }
    .rw-category-page .listing-head>.kicker { display:none; }
    .rw-category-page .rw-breadcrumb { margin:0;padding:0 0 5px; }
    .rw-category-page .breadcrumb,.rw-category-page .breadcrumb__child {
      font-family:var(--rw-font-body);font-size:var(--rw-size-micro);font-weight:var(--rw-weight-regular);
      line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-muted);
    }
    .rw-category-page .breadcrumb__child+.breadcrumb__child::before { content:"/";margin-inline:10px; }
    .rw-category-page .listing-head { margin:0; }
    .rw-category-page .listing-head h1 {
      padding:7vh 0;margin:0;text-align:center;font-family:var(--rw-font-heading);
      font-size:var(--rw-size-page-title);font-weight:var(--rw-weight-regular);
      line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
    }
    .rw-category-page .child-categories { margin:0 0 28px;gap:10px 16px;align-items:center; }
    .rw-category-page .child-categories a { min-width:0;max-width:100%;white-space:normal; }
    .rw-category-page .products-grid { row-gap:4vh; }
    .rw-category-page .product-card { text-align:center; }
    .rw-category-page .product-card__title {
      margin:20px 0 0;font-family:var(--rw-font-body);font-size:var(--rw-size-card-title);
      font-weight:var(--rw-weight-regular);line-height:var(--rw-line-card);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
    }
    .rw-category-page .product-card__price {
      margin:8px 0 0;font-family:var(--rw-font-body);font-size:var(--rw-size-card-price);
      font-weight:var(--rw-weight-regular);line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);white-space:normal;
    }
    @media(max-width:600px) {
      .rw-category-page>.wrap { width:calc(100% - 10vw); }
      .rw-category-page .products-grid { column-gap:3vw;row-gap:4vh; }
      .rw-category-page .product-card__title { margin-top:10px; }
      .rw-category-page .child-categories { gap:8px 10px;margin-bottom:24px; }
      .rw-category-page .child-categories a { padding:8px 10px; }
    }

    /* v0.8.22: current ROSWAY sold-out image presentation; listing cards only. */
    .products-grid .product-card>.product-card__image { position:relative; }
    .products-grid .product-card>.product-card__image>.soldout {
      position:absolute;inset:auto 12px 12px;z-index:1;display:block;
      width:auto;height:auto;margin:0;padding:8px;border:0;border-radius:0;box-shadow:none;
      background:#fff;opacity:.7;text-align:center;pointer-events:none;
      font-family:var(--rw-font-body);font-size:var(--rw-size-note);font-weight:var(--rw-weight-regular);
      line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
    }
    /* v0.8.23: mobile category navigation, public-shop text-link scale. */
    @media(max-width:600px) {
      .rw-category-page .listing-head:has(.child-categories) h1 { padding-bottom:8px; }
      .rw-category-page .child-categories { display:flex;flex-wrap:wrap;justify-content:center;gap:0 20px;margin:0 0 24px; }
      .rw-category-page .child-categories a {
        display:block;flex:0 1 auto;max-width:100%;min-height:31.6px;padding:8px 0;
        border:0;border-radius:0;background:none;box-shadow:none;
        font-family:var(--rw-font-body);font-size:var(--rw-size-nav);font-weight:var(--rw-weight-regular);
        line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
        white-space:normal;word-break:keep-all;overflow-wrap:anywhere;text-align:center;
      }
    }
    /* v0.8.24: mobile child-nav spacing only; measured type and hit areas retained. */
    @media(max-width:600px) {
      .rw-category-page .listing-head:has(.child-categories) h1 { padding-bottom:.5vh; }
      .rw-category-page .child-categories { margin-bottom:20px; }
    }
    /* v0.8.25: mobile Membership reading layout only. */
    @media(max-width:600px) {
      .system-page:has(#membership>.guide) { width:calc(100% - 32px); }
      .system-page #membership>.guide>.content { margin-top:28px;text-align:left; }
      .system-page #membership>.guide>.content :is(.heading,.description,p,ul,ol,li),
      .system-page #membership>.guide>.about-point,
      .system-page #membership>.guide>.about-point :is(.heading-point,.description,.description-details),
      .system-page #membership>.guide>.reward-list>:is(.title,.description) { text-align:left; }
      .system-page #membership>.guide .heading-point {
        font-size:var(--rw-size-system-subheading);line-height:var(--rw-line-card);
      }
    }
    /* v0.8.26: shared Membership section-heading role, distinct from page heading. */
    .system-page #membership>.guide {
      --rw-membership-heading-font:var(--rw-font-heading);
      --rw-membership-heading-size:var(--rw-size-system-subheading);
      --rw-membership-heading-weight:600;
      --rw-membership-heading-line:var(--rw-line-card);
      --rw-membership-heading-tracking:var(--rw-tracking);
      --rw-membership-heading-color:var(--rw-color-text);
      --rw-membership-heading-margin-bottom:0px;
    }
    .system-page #membership>.guide .heading-point,
    .system-page #membership>.guide .reward-list>.title {
      font-family:var(--rw-membership-heading-font);font-size:var(--rw-membership-heading-size);
      font-weight:var(--rw-membership-heading-weight);line-height:var(--rw-membership-heading-line);
      letter-spacing:var(--rw-membership-heading-tracking);color:var(--rw-membership-heading-color);
      margin-bottom:var(--rw-membership-heading-margin-bottom);
    }
    .system-page #membership>.guide>.about-point :is(.description,.description-details),
    .system-page #membership>.guide>.reward-list>.description { line-height:var(--rw-line-card); }
    /* v0.8.27: Membership CTA supporting copy; not general body text. */
    .system-page #membership>.guide>.register .description-wrapper>.description {
      font-family:var(--rw-font-body);font-size:var(--rw-size-metadata);font-weight:300;
      line-height:var(--rw-line-card);letter-spacing:var(--rw-tracking);color:var(--rw-color-secondary);
      margin:8px 0 0;
    }
    .system-page #membership>.guide>.register .description-wrapper .description-link {
      font:inherit;letter-spacing:inherit;color:inherit;text-decoration:underline;
    }
    /* v0.8.28: MYPAGE only; measured App DOM, no changes to App data or actions. */
    .system-page:has(#membership>.mypage) { width:min(1160px,calc(100% - 10vw));padding-top:0; }
    .system-page #membership:has(>.mypage),
    .system-page #membership>.mypage { width:100%;max-width:none;margin:0;padding:0;min-width:0; }
    .system-page #membership>.mypage { --rw-size-mypage-title:22px;font-family:var(--rw-font-body);font-size:var(--rw-size-body);line-height:var(--rw-line-ui);color:var(--rw-color-text);letter-spacing:var(--rw-tracking); }
    .system-page #membership>.mypage .heading-wrapper { margin:0 0 16px; }
    .system-page #membership>.mypage .heading { margin:0;font-size:var(--rw-size-mypage-title);font-weight:600;line-height:var(--rw-line-card); }
    .system-page #membership>.mypage :is(.logout,.leave) { padding:0;border:0;font-family:var(--rw-font-body);font-size:var(--rw-size-body);font-weight:300;line-height:var(--rw-line-ui);color:var(--rw-color-text); }
    .system-page #membership>.mypage>.img-wrapper { width:100%;height:auto;min-height:0;max-height:none;margin:0 0 40px;overflow:visible; }
    .system-page #membership>.mypage>.img-wrapper>.img { display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:auto; }
    .system-page #membership>.mypage>.info { display:grid;grid-template-columns:minmax(0,378px) minmax(0,1fr);gap:24px;align-items:center; }
    .system-page #membership>.mypage .card { width:100%;max-width:378px;min-width:0;height:240px;min-height:240px;border-color:rgba(34,34,34,.2);margin:0;box-sizing:border-box; }
    .system-page #membership>.mypage .logo-text { max-width:calc(100% - 32px);margin:0 16px 4px;font-size:var(--rw-size-system-subheading);font-weight:var(--rw-weight-bold);line-height:1.25;white-space:nowrap; }
    .system-page #membership>.mypage .logo-image { max-width:80%;object-fit:contain; }
    .system-page #membership>.mypage .content { width:100%;min-width:0;max-width:100%;margin:0;padding:0; }
    .system-page #membership>.mypage .customer-info-wrapper { margin-top:0; }
    .system-page #membership>.mypage :is(.customer-info,.reward-list>.title) { margin:0;font-size:var(--rw-size-system-subheading);font-weight:600;line-height:var(--rw-line-card); }
    .system-page #membership>.mypage .definition-list { margin:16px 0 0; }
    .system-page #membership>.mypage .definition-description { width:100%;min-width:0;max-width:100%;box-sizing:border-box;margin:8px 0 0;padding:0;gap:20px; }
    .system-page #membership>.mypage :is(.point-amount,.point-expiry-date,.caption>.text,.howto>.description>.text) { margin:0; }
    .system-page #membership>.mypage .reward-card-list { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .system-page #membership>.mypage .reward-card { min-width:0;max-width:100%; }
    .system-page #membership>.mypage .reward-card .title { margin:8px 0 0;font-size:var(--rw-size-card-title);line-height:var(--rw-line-card); }
    .system-page #membership>.mypage .reward-card .description { margin:4px 0 0; }
    @media(max-width:767px) {
      .system-page:has(#membership>.mypage) { width:calc(100% - 32px); }
      .system-page #membership>.mypage>.img-wrapper { margin-bottom:28px; }
      .system-page #membership>.mypage>.info { grid-template-columns:minmax(0,1fr);gap:28px; }
      .system-page #membership>.mypage .card { max-width:378px;height:200px;min-height:200px;margin-inline:auto; }
      .system-page #membership>.mypage .reward-card-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
    }

    .system-page #membership>.mypage :is(.edit,.point-expiry-date,.point-history .link,.about) { color:var(--rw-color-text); }

      /* v0.8.29: membership card visual; measured public ROSWAY logo asset. */
    .system-page #membership>.mypage .card {
      background-color:rgba(34,34,34,.1);border:1px solid rgba(34,34,34,.2);border-radius:8px;
      padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
    }
    .system-page #membership>.mypage .card>.logo-image,
    .system-page #membership>.mypage .card>.logo-text {
      display:block;flex:none;width:80%;max-width:80%;height:80px;margin:0 0 4px;
      padding:0;object-fit:contain;
    }
    .system-page #membership>.mypage .card>.logo-text {
      /* Keep App text in the accessibility tree; replace only its visual presentation. */
      font-size:0;line-height:0;color:transparent;
      background:url("https://baseec-img-mng.akamaized.net/images/user/logo/18f19e1596cb83274fb5a5792e8b68a2.png?imformat=generic&q=90&im=Resize,width=2048,type=downsize") center / contain no-repeat;
    }
    .system-page #membership>.mypage .card>.membership-name {
      margin:0 24px 4px;font-family:var(--rw-font-body);font-size:var(--rw-size-body);
      font-weight:var(--rw-weight-bold);line-height:1.25;letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
    }
    .system-page #membership>.mypage .card>.join-date {
      margin:0;font-family:var(--rw-font-body);font-size:var(--rw-size-body);
      font-weight:var(--rw-weight-bold);line-height:var(--rw-line-card);letter-spacing:var(--rw-tracking);color:var(--rw-color-text);
    }

      /* v0.8.30: mobile drawer search text; keep the existing 44px control. */
    @media(max-width:600px) {
      .rw-drawer .rw-search-form input {
        height:44px;min-height:44px;font-family:var(--rw-font-body);
        font-size:var(--rw-size-nav);font-weight:var(--rw-weight-regular);
        line-height:1;letter-spacing:var(--rw-tracking);color:var(--rw-color-inverse);
      }
      .rw-drawer .rw-search-form input::placeholder {
        font-family:var(--rw-font-body);font-size:var(--rw-size-nav);
        font-weight:var(--rw-weight-regular);line-height:normal;
        letter-spacing:var(--rw-tracking);color:var(--rw-color-inverse);opacity:.4;
      }
    }

      /* v0.8.31: one shared drawer footer, after the complete navigation. */
    .rw-drawer-copyright {
      margin:0;padding:25px 0;border-top:1px solid var(--rw-color-border-inverse);
      font-family:var(--rw-font-body);font-size:var(--rw-size-micro);font-weight:var(--rw-weight-regular);
      line-height:var(--rw-line-ui);letter-spacing:var(--rw-tracking);color:var(--rw-color-inverse);text-align:center;
    }
    .rw-drawer .rw-drawer-body { padding-bottom:env(safe-area-inset-bottom,0px); }
    @media(max-width:600px) {
      .rw-drawer .rw-drawer-title { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
      .rw-drawer .rw-drawer-top { justify-content:flex-end; }
    }

      /* v0.8.32: BASE-owned language/currency selectors, one global instance. */
    .rw-footer-tools { display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;min-width:0; }
    .rw-footer-i18n { min-width:0;max-width:100%; }
    .rw-footer-i18n #i18 { display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:0;padding:0; }
    .rw-footer-i18n #i18 :is(.lang,.currency,form,.input) { float:none;margin:0;padding:0;min-width:0; }
    .rw-footer-i18n .x_i18nSelectBox {
      box-sizing:border-box;max-width:100%;width:88px;height:32px;margin:0;padding:0 24px 0 10px;
      border:0;border-radius:0;appearance:none;-webkit-appearance:none;
      font-family:var(--rw-font-body);font-size:var(--rw-size-nav);font-weight:var(--rw-weight-regular);
      line-height:32px;letter-spacing:var(--rw-tracking);color:var(--rw-color-inverse);
      background-color:rgba(255,255,255,.1);
      background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(-45deg,transparent 50%,#fff 50%);
      background-position:calc(100% - 14px) 50%,calc(100% - 10px) 50%;background-size:4px 4px;background-repeat:no-repeat;
    }
    .rw-footer-i18n .currency .x_i18nSelectBox { width:65px; }
    .rw-footer-i18n .x_i18nSelectBox option { background:#222;color:#fff; }
    .products-grid .product-card__price,.related-items .product-card__price { min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere; }
    @media(max-width:600px) {
      .rw-footer-tools { width:100%;flex-direction:column;align-items:center;gap:16px; }
      .rw-footer-i18n #i18 { justify-content:center; }
      .rw-footer { padding-bottom:calc(12vh + env(safe-area-inset-bottom,0px)); }
      body:has(#x_startMessenger) .rw-footer { padding-bottom:calc(12vh + 40px + env(safe-area-inset-bottom,0px)); }
    }

      /* v0.8.33: BASE Label App presentation, distinct from sale-price logic. */
    .product-gallery>.rw-labelled-image { position:relative; }
    .rw-item-label { position:absolute;top:8px;left:8px;width:25%;max-width:80px;aspect-ratio:1;z-index:2;pointer-events:none; }
    .rw-item-label:empty { display:none; }
    .rw-item-label * { pointer-events:none!important;max-width:100%;max-height:100%; }
    .rw-item-label img { position:static!important;display:block;width:100%!important;height:100%!important;object-fit:contain;margin:0; }

    /* v0.8.34: mobile footer reading order and compact spacing only. */
    @media(max-width:600px) {
      .rw-footer { padding:40px 24px calc(80px + env(safe-area-inset-bottom,0px)); }
      .rw-footer-top,.rw-footer-top:not(:has(.rw-footer-mail)) {
        grid-template-columns:minmax(0,1fr);gap:32px;padding-bottom:32px;margin-bottom:24px;
      }
      .rw-footer-top>*,.rw-footer-bottom>* { min-width:0;max-width:100%; }
      .rw-footer h3 { margin-bottom:18px; }
      .rw-footer-about p { margin-bottom:16px; }
      .rw-footer-about p:last-child { margin-bottom:0; }
      .rw-footer-menu { padding:0; }
      .rw-footer-bottom { flex-direction:column;align-items:stretch;gap:24px; }
      .rw-footer-policy { flex-direction:column;align-items:flex-start;gap:12px; }
      .rw-footer-copyright { margin-top:15px; }
      .rw-footer-tools { width:100%;flex-direction:column;align-items:center;gap:12px; }
      .rw-footer-social { justify-content:center;max-width:100%; }
      .rw-footer-i18n #i18 { justify-content:center; }
      body:has(#x_startMessenger) .rw-footer { padding-bottom:calc(96px + env(safe-area-inset-bottom,0px)); }
    }
    /* v0.8.36: mobile footer navigation-first sequence. */
    @media(max-width:600px) {
      .rw-footer-about { display:none; }
      .rw-footer-mail h3 { display:flex;align-items:center;gap:10px;margin-bottom:25px; }
      .rw-footer-mail h3::before { content:"";width:10px;height:1px;flex:none;background:currentColor; }
      .rw-footer-mail>p { margin-bottom:0;line-height:var(--rw-line-ui); }
      .rw-footer .mailMagazineSubscribe_form { margin-top:25px; }
      .rw-footer .mailMagazineSubscribe,.rw-footer .mailMagazineSubscribe_form,.rw-footer .mailMagazineSubscribe_field { min-width:0;max-width:100%; }
      .rw-footer-top { border-bottom-color:var(--rw-color-border-inverse); }
      .rw-footer-bottom>.rw-footer-tools { order:0; }
      .rw-footer-bottom>div:not(.rw-footer-tools) { order:1;width:100%;text-align:center; }
      .rw-footer-tools { gap:17px; }
      .rw-footer-social { gap:5px; }
      .rw-footer-social a { width:32px;height:32px; }
      .rw-footer-policy { flex-direction:row;justify-content:center;align-items:center;gap:10px 12px; }
      .rw-footer-policy li { min-width:0;max-width:100%; }
      .rw-footer-policy a { overflow-wrap:anywhere; }
      .rw-footer-copyright { text-align:center;opacity:.5; }
    }
    /* Mobile editorial image sources retain the existing img layout. */
    .rw-editorial-picture { display:contents; }
    .home-hero>.rw-editorial-picture>img.hero-bg { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }

    /* v0.8.37: approved HOME presentation only. */
    @media(min-width:1201px) {
      .home-hero { min-height:0;height:clamp(560px,78vh,720px); }
    }
    @media(min-width:1201px) and (max-height:700px) {
      .home-hero { height:78vh; }
    }

/* v1.2 progressive section reveal; no geometry changes. */
.rw-reveal-enabled [data-rw-reveal-pending] { opacity:0; transform:translateY(10px); }
.rw-reveal-enabled .rw-reveal-target { transition:opacity 600ms ease-out,transform 600ms ease-out; }
.rw-reveal-enabled .rw-reveal-target:focus-within { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) {
  .rw-reveal-enabled .rw-reveal-target { opacity:1; transform:none; transition:none; }
}

/* Plain-text footer copy: preserve author-entered line breaks. */
.rw-footer-about .rw-footer-about-text { white-space:pre-line; }

/* Blog article share: retain BASE icon sizing/float/gap; remove UA list indentation and markers. */
#rw-blog-page:not(.rw-blog-index) .social > ul { list-style:none;margin:0;padding:0; }
#rw-blog-page:not(.rw-blog-index) .social > ul > li { list-style:none; }
#rw-blog-page:not(.rw-blog-index) .social > ul > li > a > img { width:26px;height:26px; }

/* v1.2.2: BASE native variation only. MANASLU block/full-width layout. */
.item-page .product-info #purchase_form #variationSelectWrap {
  display:block;width:100%;max-width:100%;min-width:0;margin:0 0 2vh;
}
.item-page .product-info #purchase_form #variationSelectWrap > label {
  display:block;margin:0 0 8px;font-weight:700;
}
.item-page .product-info #purchase_form #itemSelect #variationSelectWrap > select#valiationSelect {
  display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;
  height:auto;min-height:2.1em;margin:0;padding:10px 24px 10px 10px;
  font-family:var(--rw-font-body);font-size:14px;font-weight:400;line-height:1.3;
  letter-spacing:inherit;white-space:normal;color:var(--rw-color-text);
  border:0;border-radius:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.5);
  background-color:var(--rw-color-inverse);
}
