/* Verdict labels (editorial) and user star ratings (readers) are styled differently on purpose. */
.verdict-badge{display:inline-flex;align-items:center;min-height:26px;padding:3px 11px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.04em;white-space:nowrap;border:1px solid currentColor}
.verdict-recommended{color:#18704f;background:#e3f6ee}
.verdict-standard{color:#0756a8;background:#eaf3ff}
.verdict-reviewing{color:#46596c;background:#eef2f6}
.verdict-caution{color:#b3261e;background:#fdecea}

.stars{position:relative;display:inline-block;color:#d3dbe3;letter-spacing:1px;line-height:1;font-size:15px}
.stars::before{content:'★★★★★'}
.stars>i{position:absolute;inset:0 auto 0 0;width:calc(var(--rate,0)*20%);overflow:hidden;white-space:nowrap;color:#f0a516;font-style:normal}
.stars>i::before{content:'★★★★★'}
.user-rating{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}
.user-rating .rating-score{font-size:16px;color:var(--ink)}
.user-rating .rating-count{font-size:12px;color:#5d6d7e}
.rating-large .stars{font-size:24px}
.rating-large .rating-score{font-size:30px;letter-spacing:-.02em}

.site-verdict{margin:24px 0 28px;padding:22px 24px;background:#fff;border:1px solid #cfe0ea;border-top:4px solid var(--blue);border-radius:10px}
.verdict-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.verdict-head h2{font-size:18px;margin:0;letter-spacing:0}
.verdict-criteria{margin-left:auto;font-size:12px;color:var(--blue);text-decoration:underline}
.verdict-reason{margin:12px 0 16px;font-size:15px;line-height:1.85;color:#2c4054}
.verdict-answer{margin:12px 0 4px;font-size:15.5px;line-height:1.85;font-weight:600;color:#173247}
.verdict-answer+.verdict-reason{margin-top:6px;font-size:14px;color:#4a5d70}
.verdict-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 16px}
.verdict-facts>div{background:#f4f8fb;border-radius:8px;padding:10px 12px}
.verdict-facts dt{font-size:11px;font-weight:700;color:#5a6d80;margin-bottom:3px}
.verdict-facts dd{margin:0;font-size:14px;font-weight:700;line-height:1.6}
.verdict-facts dd a{color:var(--ink);text-decoration:underline;text-decoration-color:#9fb6c9;text-underline-offset:3px}
.verdict-user{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #e7edf1;border-bottom:1px solid #e7edf1;margin-bottom:16px}
.verdict-user>span:first-child{font-size:12px;font-weight:700;color:#5a6d80}
.verdict-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.verdict-primary{min-height:50px;padding:12px 22px;font-size:14px;background:var(--orange);border-color:var(--orange);color:#fff;box-shadow:0 3px 0 #bd4824}
.verdict-secondary,.verdict-official-text{font-size:13px;font-weight:700;color:var(--blue);min-height:44px;display:inline-flex;align-items:center}
.verdict-note{margin:14px 0 0;font-size:12px;line-height:1.8;color:#5d6d7e}

.site-rating .rating-summary{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:24px;align-items:center;padding:20px;background:#f4f8fb;border-radius:10px}
.rating-total{text-align:center}
.rating-total .user-rating{flex-direction:column;gap:6px}
.rating-bars{display:grid;gap:6px}
.rating-bar{display:grid;grid-template-columns:34px minmax(0,1fr) 30px;align-items:center;gap:8px;font-size:12px;color:#40566a}
.rating-bar .bar{height:8px;background:#dfe7ee;border-radius:99px;overflow:hidden}
.rating-bar .bar>i{display:block;height:100%;width:var(--share,0%);background:#f0a516;border-radius:99px}
.rating-bar .bar-count{text-align:right}
.rating-policy{font-size:13px!important;line-height:1.8!important;color:#52667a!important;margin:14px 0 6px!important}
.rating-policy a{color:var(--blue);text-decoration:underline;margin-left:4px}
.rating-paused{font-size:13px!important;font-weight:700;color:#46596c!important;margin:0!important}
.next-actions{margin-top:26px;padding:20px 22px;border:1px solid #d6e5ee;border-radius:10px;background:linear-gradient(180deg,#f2fbf8,#fff);display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px}
.next-actions h3{flex-basis:100%;margin:0;font-size:16px}
.next-primary{min-height:50px;padding:12px 22px;font-size:14px;background:var(--orange);border-color:var(--orange);color:#fff;box-shadow:0 3px 0 #bd4824}
.next-link{font-size:13px;font-weight:700;color:var(--blue);min-height:44px;display:inline-flex;align-items:center}

.card-verdict{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:6px 0 10px}
.card-official{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:13px;font-weight:700;color:var(--blue)}

.directory-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px}
.directory-links{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.directory-links .directory-official{font-size:12px;font-weight:700;color:var(--blue);min-height:36px;display:inline-flex;align-items:center}
.directory-sort{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;font-size:13px;color:#40566a}
.directory-sort select{min-height:44px;border:1px solid #c4d3e1;border-radius:8px;padding:6px 10px;font-size:14px;background:#fff;color:var(--ink)}

/* Common-page articles have no bottom bar of their own; keep their footer reachable. */
@media(max-width:600px){
 .site-sticky{display:flex}
 body:has(.site-sticky){padding-bottom:76px}
 .site-sticky .btn.primary{flex:1;max-width:240px;min-height:46px;font-size:13px}
 .site-sticky .compare-back{background:none;padding:0 4px;font-size:12px;font-weight:700;color:var(--blue);min-height:44px;display:inline-flex;align-items:center}
 body:has(.menu-button[aria-expanded="true"]) .site-sticky,body:has(dialog[open]) .site-sticky{display:none}
}
@media(max-width:600px){
 .site-verdict{padding:18px 16px;margin:18px 0 22px}
 .verdict-head h2{font-size:16px}
 .verdict-criteria{margin-left:0;flex-basis:100%;min-height:32px;display:inline-flex;align-items:center}
 .verdict-reason{font-size:14px}
 .verdict-facts{grid-template-columns:1fr}
 .verdict-actions{flex-direction:column;align-items:stretch;gap:6px}
 .verdict-primary,.next-primary{width:100%;justify-content:center}
 .verdict-secondary,.verdict-official-text{justify-content:center}
 .site-rating .rating-summary{grid-template-columns:1fr;gap:16px;padding:16px}
 .next-actions{flex-direction:column;align-items:stretch;padding:16px}
 .next-link{justify-content:center}
 .card-official{width:100%}
 .directory-links{align-items:flex-start;flex-direction:row;gap:14px}
}
#list .directory-item>.directory-links{justify-self:end;white-space:nowrap;font-size:13px}
.directory-sort .verdict-criteria{margin-left:auto}
@media(max-width:600px){#list .directory-item>.directory-links{grid-column:2;justify-self:start;align-items:center}.directory-sort .verdict-criteria{margin-left:0}}
.verdict-criteria-list{margin:16px 0 18px;display:grid;gap:12px}
.verdict-criteria-list>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:start;padding:14px;border:1px solid #e3eaf0;border-radius:10px;background:#fbfdfe}
.verdict-criteria-list dd{margin:0;font-size:14px;line-height:1.9;color:#40566a}
.common-content section#verdict-criteria{scroll-margin-top:88px}
@media(max-width:600px){.verdict-criteria-list>div{grid-template-columns:1fr;gap:8px}}

/* Top FAQ: link to the evidence behind an answer. */
.faq .faq-link{margin-top:-4px}
.faq .faq-link a{color:var(--blue);font-weight:700;font-size:13px;text-decoration:underline;text-underline-offset:3px}
/* Site cards: "ここが違う" (green) and "使う前に確認したい" (amber). */
.offer-label.caution{color:#9a4a12}
.feature-cards>div.is-caution{background:#fff8ef;border-color:#f1dcc0}
.feature-cards>div.is-caution b{color:#9a4a12}
.verdict-verified{color:#0b6b6b;background:#e2f5f3}
.verify-steps{margin:8px 0 14px;padding-left:1.4em;display:grid;gap:6px}
.verify-steps li{font-size:14px;line-height:1.9;color:#40566a}
#verdict-criteria h3{font-size:16px;margin:22px 0 4px}
.policy-list{margin:10px 0 0;padding-left:1.3em;display:grid;gap:4px}
.policy-list li{font-size:14px;line-height:1.85;color:#40566a}
.common-content section[id]{scroll-margin-top:88px}
/* Top cards: verification record strip (戦績・収支) */
.card-record{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 23px 12px}
.card-record>div{padding:10px 12px;border:1px solid #d7e6ee;border-radius:8px;background:#fff}
.card-record dt{font-size:11px;font-weight:700;color:#4a6274}
.card-record dd{margin:2px 0 0;display:flex;flex-direction:column;gap:2px}
.card-record b{font-size:17px;color:#0e4d6f;letter-spacing:.02em}
.card-record span{font-size:12px;color:#33475b}
@media(max-width:600px){.card-record{margin:0 0 12px}}
.no-ads-note{margin:8px 0 0;font-size:12px;line-height:1.7;color:#4a6274}.no-ads-note::before{content:"✓ ";color:#20765a;font-weight:700}
.verdict-dates{margin:6px 0 0;font-size:12px;color:#4a6274}
