/* Osusume Mart public editorial system — shared across commerce, books and travel. */
:root{
  --om-navy:#10233f;
  --om-blue:#2457d6;
  --om-blue-soft:#eaf0ff;
  --om-orange:#ef6c2c;
  --om-gold:#f5b942;
  --om-green:#138a68;
  --om-surface:#fff;
  --om-soft:#f5f7fb;
  --om-line:#dfe5ef;
  --om-muted:#596579;
  --om-shadow:0 14px 40px rgba(16,35,63,.1);
}

html{scroll-behavior:smooth}
body{background:#f7f9fc}
.site-header{border-bottom:1px solid rgba(16,35,63,.1)}
.header-inner{max-width:1240px}
.site-logo{letter-spacing:-.03em}
.site-logo small{display:block;font-size:.62rem;font-weight:600;letter-spacing:0;color:var(--text-sub);margin-top:2px}
.header-nav{gap:4px}
.header-nav a{border-radius:999px;padding:7px 11px}
.header-nav a:hover,.header-nav a:focus-visible{background:var(--om-blue-soft);color:var(--om-blue)}
.om-header-tools{display:flex;align-items:center;gap:8px;margin-left:auto}
.om-header-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;background:#eef8f4;color:#08785a;border:1px solid #c8eadd;border-radius:999px;font-size:.72rem;font-weight:800;white-space:nowrap}
.om-mobile-nav{display:none}

.om-trust-strip{max-width:1240px;margin:0 auto 28px;padding:0 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.om-trust-item{background:var(--om-surface);border:1px solid var(--om-line);border-radius:14px;padding:14px;display:flex;align-items:flex-start;gap:10px;box-shadow:0 4px 16px rgba(16,35,63,.04)}
.om-trust-icon{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#e8f7f2;color:var(--om-green);font-weight:900}
.om-trust-item strong{display:block;color:var(--om-navy);font-size:.82rem}
.om-trust-item span:not(.om-trust-icon){display:block;color:var(--om-muted);font-size:.7rem;line-height:1.45;margin-top:2px}

.om-editorial-section{max-width:1240px;margin:42px auto;padding:0 18px}
.main-content .om-editorial-section,.page-wrap .om-editorial-section,.bk-container .om-editorial-section,.tv-container .om-editorial-section{padding:0;margin:38px 0;max-width:none}
.om-section-heading{max-width:760px;margin-bottom:20px}
.om-section-heading h2{color:var(--om-navy);font-size:clamp(1.35rem,2.2vw,1.9rem);letter-spacing:-.035em;line-height:1.25;margin:0 0 8px}
.om-section-heading>p:not(.om-eyebrow){color:var(--om-muted);font-size:.92rem;line-height:1.75}
.om-eyebrow{color:var(--om-blue);font-size:.7rem;font-weight:900;letter-spacing:.16em;margin:0 0 6px}

.om-discovery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.om-discovery-card{position:relative;display:flex;flex-direction:column;min-height:205px;padding:24px;background:#fff;border:1px solid var(--om-line);border-radius:18px;color:var(--om-navy);box-shadow:0 6px 24px rgba(16,35,63,.06);transition:transform .18s,box-shadow .18s,border-color .18s}
.om-discovery-card:hover{transform:translateY(-4px);border-color:#abc0f4;box-shadow:var(--om-shadow);color:var(--om-navy)}
.om-discovery-icon{font-size:2rem;margin-bottom:14px}
.om-discovery-card strong{font-size:1.05rem}
.om-discovery-card p{color:var(--om-muted);font-size:.82rem;line-height:1.65;margin:6px 0 16px}
.om-text-link{color:var(--om-blue);font-size:.8rem;font-weight:800;margin-top:auto}

.om-method{background:linear-gradient(135deg,#10233f,#183e75);max-width:1204px;border-radius:24px;padding:32px;color:#fff}
.om-method .om-section-heading h2,.om-method .om-section-heading p{color:#fff}
.om-method .om-eyebrow{color:#8fb5ff}
.om-method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;padding:0;margin:0}
.om-method-grid li{display:flex;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:18px}
.om-step-no{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:50%;background:#fff;color:var(--om-blue);font-weight:900}
.om-method-grid strong{display:block;font-size:.9rem;margin-bottom:4px}
.om-method-grid p{font-size:.76rem;line-height:1.65;color:rgba(255,255,255,.78);margin:0}
.om-method--compact{padding:26px}

.om-faq-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.om-faq details{background:#fff;border:1px solid var(--om-line);border-radius:14px;padding:0 18px}
.om-faq summary{position:relative;cursor:pointer;list-style:none;color:var(--om-navy);font-size:.88rem;font-weight:800;padding:17px 28px 17px 0}
.om-faq summary::-webkit-details-marker{display:none}
.om-faq summary::after{content:"＋";position:absolute;right:0;top:15px;color:var(--om-blue);font-size:1.15rem}
.om-faq details[open] summary::after{content:"−"}
.om-faq details p{color:var(--om-muted);font-size:.8rem;line-height:1.75;border-top:1px solid var(--om-line);padding:13px 0 17px;margin:0}

.om-decision-panel{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:24px}
.om-decision-panel>div{background:#fff;border:1px solid var(--om-line);border-radius:16px;padding:22px}
.om-decision-panel h2{font-size:1.05rem;color:var(--om-navy);margin:0 0 14px}
.om-fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0}
.om-fact-grid>div{background:var(--om-soft);border-radius:10px;padding:11px 12px}
.om-fact-grid dt{font-size:.68rem;color:var(--om-muted);font-weight:700}
.om-fact-grid dd{font-size:.86rem;color:var(--om-navy);font-weight:800;margin:3px 0 0;overflow-wrap:anywhere}
.om-check-panel ul{list-style:none;padding:0;margin:0}
.om-check-panel li{position:relative;padding:6px 0 6px 24px;color:var(--om-muted);font-size:.8rem;line-height:1.55}
.om-check-panel li::before{content:"✓";position:absolute;left:0;color:var(--om-green);font-weight:900}
.om-merchant-note{background:#fff7e9;border:1px solid #f5dab0;border-radius:10px;padding:10px 12px;color:#77521a;font-size:.73rem;line-height:1.55;margin:12px 0 0}

.om-original-label{display:inline-flex;align-items:center;gap:5px;background:#f0f2f6;color:#536174;border-radius:999px;padding:4px 9px;font-size:.68rem;font-weight:800;margin-bottom:7px}
.om-cta-benefits{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:10px 0 14px}
.om-cta-benefits li{font-size:.7rem;color:#4d5b70;background:#f2f5fa;border-radius:999px;padding:5px 9px}
.om-compare-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--om-line);border-radius:14px;overflow:hidden}
.om-compare-table th,.om-compare-table td{text-align:left;padding:11px;border-bottom:1px solid var(--om-line);font-size:.76rem}
.om-compare-table th{background:var(--om-soft);color:var(--om-muted);font-weight:800}
.om-compare-table tr:last-child td{border-bottom:0}
.om-compare-table a{font-weight:800}
.om-data-note{display:flex;gap:10px;align-items:flex-start;background:#eef4ff;border:1px solid #cddcff;border-radius:12px;padding:12px 14px;color:#38527f;font-size:.76rem;line-height:1.65}
.om-data-note strong{color:#173d83}

.product-card{border-color:#e1e6ef;box-shadow:0 5px 18px rgba(16,35,63,.05)}
.product-card:hover{box-shadow:0 14px 34px rgba(16,35,63,.12)}
.product-shop{min-height:1.2em}
.btn-rakuten,.btn-rakuten-lg{box-shadow:0 7px 18px rgba(191,55,36,.18)}
.btn-rakuten:focus-visible,.btn-rakuten-lg:focus-visible{outline:3px solid #ffd6a0;outline-offset:3px}
.btn-rakuten.is-disabled{box-shadow:none}
.product-card .btn-sub{opacity:.9}
.product-card-meta{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}
.product-card-meta span{font-size:.65rem;background:#f4f6fa;color:#5b6677;padding:3px 7px;border-radius:999px}

.om-category-insight{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 22px}
.om-category-insight>div{background:#fff;border:1px solid var(--om-line);border-radius:12px;padding:14px}
.om-category-insight strong{display:block;color:var(--om-navy);font-size:.95rem}
.om-category-insight span{display:block;color:var(--om-muted);font-size:.7rem;margin-top:3px}

.bk-header,.tv-header{top:0}
.bk-container,.tv-container{max-width:1220px}
.bk-card,.tv-card{box-shadow:0 5px 18px rgba(16,35,63,.05)}
.bk-card-btn.is-disabled,.tv-card-btn.is-disabled{background:#8b94a3;color:#fff;cursor:not-allowed}
.bk-card-meta,.tv-card-meta{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
.bk-card-meta span,.tv-card-meta span{font-size:.65rem;background:#f3f5f8;color:#596579;border-radius:999px;padding:3px 7px}
.section-buying-guide{background:#fff;border:1px solid var(--om-line);border-radius:18px;padding:24px;margin:30px 0}
.section-buying-guide h2{font-size:1.25rem;color:var(--om-navy);margin:0 0 10px}
.section-buying-guide p{font-size:.86rem;color:var(--om-muted);line-height:1.75}
.section-buying-guide ul{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;list-style:none;padding:0;margin:16px 0 0}
.section-buying-guide li{background:var(--om-soft);border-radius:12px;padding:13px;font-size:.78rem;line-height:1.6;color:#3f4e64}

@media(max-width:960px){
  .om-trust-strip{grid-template-columns:repeat(2,1fr)}
  .om-method-grid,.om-discovery-grid{grid-template-columns:1fr}
  .om-discovery-card{min-height:160px}
  .om-decision-panel{grid-template-columns:1fr}
  .section-buying-guide ul{grid-template-columns:1fr}
}
@media(max-width:720px){
  .om-header-badge{display:none}
  .om-trust-strip{grid-template-columns:1fr;padding:0 12px}
  .om-trust-item{padding:11px 12px}
  .om-editorial-section{margin:32px auto;padding:0 12px}
  .om-method{border-radius:18px;padding:24px 18px}
  .om-faq-list{grid-template-columns:1fr}
  .om-fact-grid{grid-template-columns:1fr}
  .om-category-insight{grid-template-columns:1fr}
  .om-decision-panel>div{padding:18px}
  .header-nav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px;scrollbar-width:none}
  .header-nav::-webkit-scrollbar{display:none}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important}
}

.om-source-name{display:block;font-size:.6rem;font-weight:600;line-height:1.25;opacity:.68;margin-top:2px}.om-source-inline{font-size:.68rem;color:var(--om-muted)}.om-source-hero{font-size:.75rem!important;color:rgba(255,255,255,.72)!important;margin:2px 0 0!important}.category-list a{display:flex;flex-direction:column;align-items:center}.genre-hero .om-original-label{background:rgba(255,255,255,.18);color:#fff}
