.premium-hero { padding:24px 0 12px; }
.premium-hero h1 { max-width:24em; line-height:1.45; }
.premium-hero .eyebrow { color:var(--c-primary-strong); font-weight:800; letter-spacing:.08em; }
.premium-hero .premium-lead { max-width:44em; font-size:1.1rem; line-height:1.85; }
.premium-paths { list-style:none; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:24px 0; }
.premium-paths a { display:block; height:100%; box-sizing:border-box; padding:20px; border:1px solid var(--c-border); border-radius:14px; background:var(--c-surface); text-decoration:none; }
.premium-paths strong,.premium-paths span { display:block; }
.premium-paths strong { color:var(--c-primary-strong); margin-bottom:8px; }
.premium-paths span { font-size:.9rem; color:var(--c-ink-soft); line-height:1.65; }
.premium-tool { border:1px solid var(--c-border); border-radius:16px; padding:24px; background:var(--c-surface); margin:32px 0; scroll-margin-top:100px; }
.premium-tool > h2 { margin-top:0; }
.premium-anchor { display:block; height:0; scroll-margin-top:124px; }
.premium-tool [hidden] { display:none !important; }
.premium-tool:has(#premium-result:not([hidden])) { border:0; padding:0; background:none; }
.premium-progress-text { font-size:.85rem; color:var(--c-ink-soft); margin:24px 0 8px; }
.premium-progress { height:6px; background:var(--c-border); border-radius:8px; overflow:hidden; }
.premium-progress span { display:block; height:100%; background:var(--c-primary-strong); }
#premium-question-title { font-size:1.3rem; line-height:1.6; margin:24px 0 16px; }
.premium-options { display:grid; gap:12px; margin:20px 0; }
.premium-option { width:100%; min-height:56px; border:1px solid var(--c-border); border-radius:12px; background:var(--c-bg); color:var(--c-ink); text-align:left; font:inherit; padding:16px 20px; cursor:pointer; }
.premium-option span { display:block; font-weight:750; line-height:1.65; }
.premium-option small { display:block; color:var(--c-ink-soft); font-size:.875rem; line-height:1.65; margin-top:5px; }
.premium-option:hover,.premium-option[aria-pressed=true] { border-color:var(--c-primary-strong); box-shadow:inset 0 0 0 1px var(--c-primary-strong); }
.premium-option:focus-visible,.premium-tool button:focus-visible { outline:3px solid var(--c-primary-strong); outline-offset:3px; }
.premium-question-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px 20px; margin:24px 0 0; }
.premium-reset,.premium-custom-toggle,.premium-edit { appearance:none; border:0; background:none; color:var(--c-primary-strong); font:inherit; text-decoration:underline; text-underline-offset:4px; min-height:44px; cursor:pointer; padding:8px 0; }
.premium-edit { flex-shrink:0; padding:8px; }
.premium-answer-list { list-style:none; padding:0; margin:0; }
.premium-answer-list li { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--c-border); font-size:.875rem; }
.premium-answer-list strong { display:block; color:var(--c-ink); margin-top:4px; }
.premium-featured-list { display:grid; gap:16px; }
.premium-result-card.premium-featured { border:2px solid var(--c-primary-strong); padding:24px; }
.premium-featured h4 { font-size:1.4rem; }
.premium-recommendation-title { font-size:1.05rem; color:var(--c-primary-strong); }
.premium-field label { display:block; font-weight:700; margin-bottom:8px; }
.premium-field input[type=number] { display:block; width:100%; box-sizing:border-box; min-height:48px; font:inherit; color:var(--c-ink); background:var(--c-bg); border:1px solid var(--c-border); border-radius:8px; padding:10px 12px; }
.premium-field .cond { margin:8px 0 0; }
.premium-verdict { font-weight:750; font-size:1.1rem; line-height:1.8; }
.premium-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:20px; }
.premium-result-card { border:1px solid var(--c-border); border-radius:12px; padding:20px; min-width:0; }
.premium-result-card h4 { margin:0 0 12px; font-size:1.1rem; line-height:1.65; }
.premium-fee { margin:8px 0 12px; }
.premium-fee strong { color:var(--c-primary-strong); font-size:1.35rem; }
.premium-fee span { display:block; font-size:.85rem; color:var(--c-ink-soft); }
.premium-application-label { display:inline-block; margin:0 0 12px; padding:5px 10px; border:1px solid var(--c-primary-strong); border-radius:6px; color:var(--c-primary-strong); font-size:.85rem; font-weight:700; }
.premium-application { margin:20px 0 0; }
.premium-application ul { padding-left:1.3em; }
.premium-application li { margin:8px 0; }
.premium-prerequisite { margin:20px 0 0; padding-top:16px; border-top:1px solid var(--c-border); }
.premium-prerequisite > p { margin:0 0 10px; }
.premium-actions { display:flex; flex-direction:column; align-items:flex-start; gap:12px; margin-top:18px; }
.premium-actions .btn { white-space:nowrap; max-width:100%; box-sizing:border-box; text-align:center; font-size:.9rem; padding:11px 14px; }
.premium-numbers { margin:16px 0; }
.premium-numbers div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:6px 16px; padding:8px 0; border-bottom:1px solid var(--c-border); }
.premium-numbers dt { color:var(--c-ink-soft); }
.premium-numbers dd { margin:0; font-weight:700; }
.premium-catalog-entry { scroll-margin-top:100px; margin:24px 0; padding-top:8px; }
.premium-catalog-entry h3 { margin-bottom:12px; }
.premium-catalog-entry ul { padding-left:1.3em; }
.premium-reading { padding-left:1.3em; line-height:1.9; }
.premium-source-list { padding-left:1.3em; }
.premium-source-list li { margin:8px 0; }
@media(max-width:767px) { .premium-paths { grid-template-columns:repeat(2,minmax(0,1fr)); } .premium-results { grid-template-columns:1fr; } }
@media(max-width:599px) {
  .premium-tool { padding:20px 16px; }
  .premium-paths { grid-template-columns:1fr; }
  .premium-paths a { padding:16px; }
  .premium-result-card { padding:18px 16px; }
  .premium-result-card.premium-featured { padding:20px 16px; }
  .premium-option { padding:16px; }
  .premium-featured h4 { font-size:1.2rem; }
}
