.beam-pilot { --beam-bg:#171f16; --beam-field:#0f170e; --beam-ink:#f0f4ec; --beam-muted:#b5c4b0; --beam-border:#3b4b32; --beam-accent:#9be7ac; }
body.light-theme .beam-pilot { --beam-bg:#f1f6ed; --beam-field:#fff; --beam-ink:#192517; --beam-muted:#495a42; --beam-border:#c2d1b8; --beam-accent:#216b2a; }
.beam-pilot p { font-size:17px; line-height:1.7; }
.beam-pilot .beam-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.beam-pilot .beam-editorial { margin:44px 0; border-radius:24px; overflow:hidden; border:1px solid var(--beam-border); background:var(--beam-bg); }
.beam-pilot .beam-editorial img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }
.beam-pilot .beam-editorial figcaption { padding:32px 36px; }
.beam-pilot .beam-editorial h2 { font-size:30px; line-height:1.3; margin:12px 0 16px; }
.beam-pilot .beam-editorial p { color:var(--beam-muted); max-width:890px; margin-bottom:24px; }
.beam-pilot [data-beam-checker] { background:none; border:0; padding:0; margin:30px 0 44px; }
.beam-pilot [data-beam-checker] .purchase-checker__body { display:grid; grid-template-columns:1fr; padding:0; gap:24px; background:none; }
.beam-pilot [data-beam-checker] .purchase-checker__form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; padding:0; background:none; border:0; border-radius:0; }
.beam-pilot .beam-check-progress { display:grid; grid-template-columns:1fr auto; gap:16px; align-items:center; margin-bottom:24px; font-size:17px; color:var(--beam-muted); }
.beam-pilot .beam-check-progress strong { color:var(--beam-ink); }
.beam-pilot .beam-check-progress__track { grid-column:1/-1; display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
.beam-pilot .beam-check-progress__track i { height:3px; background:var(--beam-border); border-radius:3px; }
.beam-pilot .beam-check-progress__track i.is-filled { background:var(--beam-accent); }
.beam-pilot [data-beam-checker] .beam-choice-group { min-inline-size:0; margin:0; padding:26px; border:1px solid var(--beam-border); border-radius:20px; background:var(--beam-bg); }
.beam-pilot .beam-choice-group__head { display:grid; grid-template-columns:40px 1fr auto; gap:14px; align-items:center; margin-bottom:18px; }
.beam-pilot .beam-choice-group__number { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:var(--beam-field); border:1px solid var(--beam-border); color:var(--beam-accent); font-size:16px; }
.beam-pilot .beam-choice-group__head h3 { margin:0!important; font-size:22px!important; font-family:var(--font-body); line-height:1.3; color:var(--beam-ink); }
.beam-pilot [data-choice-state] { font-size:13px; color:var(--beam-muted); }
.beam-pilot .has-answer [data-choice-state] { color:var(--beam-accent); }
.beam-pilot .beam-choice-group .purchase-option-list { gap:6px; }
.beam-pilot .beam-choice-group .purchase-option { grid-template-columns:20px minmax(0,1fr); align-items:start; gap:14px; min-height:58px; padding:15px 12px; border:1px solid transparent; border-radius:12px; background:none; box-shadow:none; }
.beam-pilot .beam-choice-group .purchase-option + .purchase-option { border-top-color:var(--beam-border); }
.beam-pilot .beam-choice-group .purchase-option__text { font-size:17px; font-weight:450; line-height:1.6; hyphens:none; color:var(--beam-ink); }
.beam-pilot .beam-choice-group .purchase-option__mark { box-sizing:border-box; width:20px; height:20px; border:1px solid #879b7c; border-radius:50%; margin-top:3px; background:var(--beam-field); box-shadow:none; }
.beam-pilot .beam-choice-group .purchase-option:hover { background:var(--beam-field); border-color:var(--beam-border); }
.beam-pilot .beam-choice-group .purchase-option:has(input:checked) { background:#263c23; border-color:#729960; }
.beam-pilot .beam-choice-group input:checked + .purchase-option__mark { background:var(--beam-accent); border-color:var(--beam-accent); box-shadow:inset 0 0 0 4px #263c23; }
body.light-theme .beam-pilot .beam-choice-group .purchase-option:has(input:checked) { background:#e0edd9; }
body.light-theme .beam-pilot .beam-choice-group input:checked + .purchase-option__mark { box-shadow:inset 0 0 0 4px #e0edd9; }
.beam-pilot .beam-choice-group .purchase-option:has(input:focus-visible),.beam-pilot button:focus-visible,.beam-pilot input:focus-visible,.beam-pilot textarea:focus-visible,.beam-pilot summary:focus-visible { outline:3px solid #78baff; outline-offset:3px; }
.beam-pilot .beam-check-actions { grid-column:1/-1; }
.beam-pilot #beam-result { position:static; padding:30px 32px; border:1px solid var(--beam-border); border-left:4px solid #839779; border-radius:20px; background:var(--beam-bg); outline:none; cursor:default; }
.beam-pilot #beam-result[data-tone="warn"] { border-left-color:#deb559; }
.beam-pilot #beam-result[data-tone="stop"] { border-left-color:#ef8181; }
.beam-pilot #beam-result[data-tone="review"] { border-left-color:var(--beam-accent); }
.beam-pilot #beam-result h3 { margin:14px 0; font-size:27px; line-height:1.35; }
.beam-pilot .beam-result-points { display:grid; gap:12px; margin:22px 0; padding:0; list-style:none; }
.beam-pilot .beam-result-points:empty { display:none; }
.beam-pilot .beam-result-points li { display:flex; gap:14px; padding:0; margin:0; font-size:17px; line-height:1.6; }
.beam-pilot .beam-result-points li:before { content:'✓'; display:grid; place-items:center; flex:0 0 24px; width:24px; height:24px; border:1px solid var(--beam-accent); border-radius:50%; color:var(--beam-accent); margin-top:2px; font-size:15px; }
.beam-pilot #beam-result .purchase-result-note { color:var(--beam-muted); border-top:1px solid var(--beam-border); margin-top:24px; padding-top:20px; }
.beam-pilot .beam-budget { min-inline-size:0; margin:44px 0; padding:32px; border:1px solid var(--beam-border); border-radius:24px; background:var(--beam-bg); }
.beam-pilot .beam-budget__head { margin-bottom:26px; }
.beam-pilot .beam-budget__head h3 { margin:12px 0 16px; font-size:27px; line-height:1.35; }
.beam-pilot .beam-budget__head p { color:var(--beam-muted); max-width:960px; }
.beam-pilot .beam-budget__fields { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.beam-pilot .beam-cost-field label { display:block; min-height:54px; margin-bottom:12px; font-size:17px; font-weight:600; color:var(--beam-ink); }
.beam-pilot .beam-stepper { display:grid; grid-template-columns:40px minmax(0,1fr) auto 40px; align-items:center; gap:5px; min-height:56px; padding:4px; border:1px solid var(--beam-border); border-radius:12px; background:var(--beam-field); }
.beam-pilot .beam-stepper button { display:grid; place-items:center; width:40px; height:44px; padding:0; border:0; border-radius:8px; background:#2b4b37; color:#b5edc2; font-size:26px; cursor:pointer; }
body.light-theme .beam-pilot .beam-stepper button { background:#e0edd9; color:#216b2a; }
.beam-pilot .beam-stepper button:disabled { opacity:.4; cursor:default; }
.beam-pilot .beam-stepper input { width:100%; min-width:0; height:44px; padding:4px; border:0; border-radius:0; background:none; color:var(--beam-ink); font-family:var(--font-body); font-size:18px; appearance:textfield; -moz-appearance:textfield; }
.beam-pilot .beam-stepper input::-webkit-inner-spin-button,.beam-pilot .beam-stepper input::-webkit-outer-spin-button { appearance:none; margin:0; }
.beam-pilot .beam-currency { color:var(--beam-ink); font-size:18px; }
.beam-pilot .beam-cost-field p { color:var(--beam-muted); font-size:15px; line-height:1.55; margin:12px 0 0; }
.beam-pilot .beam-budget__hint { font-size:15px; color:var(--beam-muted); margin:22px 0; }
.beam-pilot .beam-calculate { display:block; width:100%; min-height:50px; padding:14px 22px; border:0; border-radius:10px; background:#97edb2; color:#0c2915; font:600 17px var(--font-body); cursor:pointer; }
body.light-theme .beam-pilot .beam-calculate { background:#226b30; color:#fff; }
.beam-pilot .beam-budget__total { display:grid; grid-template-columns:1fr auto; gap:12px 22px; padding:24px; margin:20px 0; border:1px solid var(--beam-border); border-radius:14px; background:var(--beam-field); }
.beam-pilot .beam-budget__total span { font-size:18px; color:var(--beam-ink); }
.beam-pilot .beam-budget__total strong { color:var(--beam-accent); font-size:22px; line-height:1.4; font-variant-numeric:tabular-nums; }
.beam-pilot .beam-budget__total p { grid-column:1/-1; color:var(--beam-muted); margin:0; }
.beam-pilot .beam-budget__formula { border-top:1px solid var(--beam-border); padding-top:22px; color:var(--beam-muted); }
.beam-pilot .beam-budget__formula strong { color:var(--accent-green); }
.beam-pilot .beam-fitment { position:relative; display:grid; grid-template-columns:22px minmax(0,1fr); gap:14px; align-items:start; padding:18px 0; font-size:17px; line-height:1.6; cursor:pointer; }
.beam-pilot .beam-fitment input { position:absolute; left:0; top:22px; width:22px; height:22px; opacity:0; }
.beam-pilot .beam-fitment__mark { display:grid; place-items:center; width:22px; height:22px; box-sizing:border-box; margin-top:3px; border:1px solid var(--beam-border); border-radius:6px; background:var(--beam-field); color:var(--beam-field); }
.beam-pilot .beam-fitment input:checked + .beam-fitment__mark { background:var(--beam-accent); border-color:var(--beam-accent); }
.beam-pilot .beam-fitment input:checked + .beam-fitment__mark:before { content:'✓'; font-size:17px; font-weight:700; }
.beam-pilot .beam-fitment:has(input:focus-visible) .beam-fitment__mark { outline:3px solid #78baff; outline-offset:3px; }
.beam-pilot .beam-fitment span:last-child { grid-column:2; }
.beam-pilot .beam-affiliate-status { font-size:17px; color:var(--beam-muted); }
.beam-pilot .af-text { margin:44px 0; }
.beam-pilot .af-text .purchase-option__text { font-size:17px; }
.beam-pilot .beam-memo { margin:48px 0; padding:34px; border:1px solid var(--beam-border); border-radius:24px; }
.beam-pilot .beam-memo__head h2 { font-size:30px; margin:14px 0; line-height:1.35; }
.beam-pilot .beam-memo__head p { max-width:960px; color:var(--beam-muted); }
.beam-pilot .beam-memo__grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:32px; margin-top:28px; align-items:start; }
.beam-pilot .beam-memo form { padding:24px; background:var(--beam-bg); border:1px solid var(--beam-border); border-radius:16px; }
.beam-pilot .beam-memo form label { display:block; margin:0 0 10px; font-size:17px; font-weight:600; color:var(--beam-ink); }
.beam-pilot .beam-memo input,.beam-pilot .beam-memo textarea { box-sizing:border-box; width:100%; padding:14px; margin-bottom:24px; border:1px solid var(--beam-border); border-radius:10px; background:var(--beam-field); color:var(--beam-ink); font:17px/1.6 var(--font-body); resize:vertical; }
.beam-pilot .beam-memo form p { font-size:15px; color:var(--beam-muted); margin-bottom:0; }
.beam-pilot .beam-order-sheet { border:1px solid var(--beam-border); border-radius:18px; background:var(--beam-field); overflow:hidden; }
.beam-pilot .beam-order-sheet header,.beam-pilot .beam-order-sheet section { padding:24px 28px; }
.beam-pilot .beam-order-sheet header { background:var(--beam-bg); }
.beam-pilot .beam-order-sheet header span { color:var(--beam-muted); font-size:14px; }
.beam-pilot .beam-order-sheet h3 { margin:8px 0 0; font:650 28px/1.3 var(--font-body); }
.beam-pilot .beam-order-sheet section { border-top:1px solid var(--beam-border); }
.beam-pilot .beam-order-sheet h4 { margin:0 0 20px; font:650 19px/1.4 var(--font-body); }
.beam-pilot .beam-order-sheet dl { display:grid; gap:20px; margin:0; }
.beam-pilot .beam-order-sheet dt { color:var(--beam-muted); font-size:14px; margin-bottom:6px; }
.beam-pilot .beam-order-sheet dd { margin:0; color:var(--beam-ink); font-size:17px; line-height:1.6; overflow-wrap:anywhere; }
.beam-pilot .beam-report { white-space:pre-wrap; overflow-wrap:anywhere; }
.beam-pilot .beam-sheet-estimate dl>div { display:grid; grid-template-columns:1fr auto; gap:20px; }
.beam-pilot .beam-sheet-estimate dt { font-size:17px; }
.beam-pilot .beam-sheet-total { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; padding-top:20px; margin-top:24px; border-top:1px solid var(--beam-border); color:var(--beam-ink); font-size:19px; }
.beam-pilot .beam-sheet-total strong { color:var(--beam-accent); }
.beam-pilot .beam-memo__plaintext { margin:16px 0; }
.beam-pilot .beam-memo__plaintext summary { display:flex; align-items:center; gap:12px; min-height:48px; padding:8px 0; list-style:none; color:var(--beam-ink); cursor:pointer; font-size:17px; }
.beam-pilot .beam-memo__plaintext summary::-webkit-details-marker { display:none; }
.beam-pilot .beam-memo__plaintext summary::marker { content:''; }
.beam-pilot .beam-memo__plaintext summary::before { content:'+'; display:grid; place-items:center; flex:0 0 30px; width:30px; height:30px; border:1px solid var(--beam-border); border-radius:50%; color:var(--beam-accent); font-size:22px; }
.beam-pilot .beam-memo__plaintext[open] summary::before { content:'−'; }
.beam-pilot .beam-memo__downloads { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:18px; }
.beam-pilot .beam-memo__downloads button { display:grid; gap:6px; padding:16px 10px; border:1px solid var(--beam-border); border-radius:12px; background:var(--beam-bg); color:var(--beam-ink); cursor:pointer; font-family:var(--font-body); }
.beam-pilot .beam-memo__downloads strong { font-size:18px; }
.beam-pilot .beam-memo__downloads small { font-size:14px; color:var(--beam-muted); }
.beam-pilot .beam-feedback { color:var(--beam-muted); font-size:16px; }
.beam-pilot .beam-basis { margin:44px 0; padding:28px 0; border-top:1px solid var(--beam-border); border-bottom:1px solid var(--beam-border); }
.beam-pilot .beam-basis h2 { font-size:24px; margin:0 0 16px; }
.beam-pilot .beam-basis p { color:var(--beam-muted); margin:0; }
@media(max-width:1100px) { .beam-pilot .beam-budget__fields { grid-template-columns:repeat(2,minmax(0,1fr)); } .beam-pilot .beam-memo__grid { grid-template-columns:1fr; } .beam-pilot .beam-choice-group__head { grid-template-columns:36px 1fr; gap:12px; } .beam-pilot .beam-choice-group__number { width:36px; height:36px; } .beam-pilot [data-choice-state] { grid-column:2; margin-top:-6px; } }
@media(max-width:780px) { .beam-pilot [data-beam-checker] .purchase-checker__form { grid-template-columns:1fr; } .beam-pilot .beam-check-progress { grid-template-columns:1fr; } .beam-pilot .beam-editorial figcaption { padding:28px; } }
@media(max-width:640px) { .beam-pilot .beam-budget__fields { grid-template-columns:1fr; gap:24px; } .beam-pilot .beam-cost-field label { min-height:0; } .beam-pilot .beam-budget,.beam-pilot .beam-memo { padding:24px 18px; border-radius:18px; } .beam-pilot .beam-budget__total { grid-template-columns:1fr; padding:20px 16px; } .beam-pilot .beam-budget__total strong { font-size:21px; } .beam-pilot .beam-choice-group { padding:22px 16px!important; } .beam-pilot #beam-result { padding:26px 20px; } .beam-pilot #beam-result h3 { font-size:24px; } .beam-pilot .beam-editorial figcaption { padding:24px 20px; } .beam-pilot .beam-editorial h2,.beam-pilot .beam-memo__head h2 { font-size:26px; } .beam-pilot .beam-memo form { padding:20px 16px; } .beam-pilot .beam-order-sheet header,.beam-pilot .beam-order-sheet section { padding:22px 18px; } .beam-pilot .beam-sheet-estimate dl>div { grid-template-columns:1fr; gap:4px; } }
