:root{color-scheme:dark;font-family:Arial,sans-serif;background:#06142d;color:#f4f8ff}*{box-sizing:border-box}body{margin:0}a{color:#ffb05c}header,footer{padding:24px max(20px,calc((100% - 1200px)/2));background:#000d24}header{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}main{max-width:1200px;margin:auto;padding:40px 24px 70px}.eyebrow{color:#ffb05c;font-size:.8rem;font-weight:700;letter-spacing:.15em}h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1.1}p{line-height:1.6;color:#c5d7e9}.build-intro{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center;margin-bottom:36px}.build-intro img{width:100%;max-height:360px;object-fit:contain;border-radius:20px}.build-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;align-items:start}.build-options,.build-total{padding:28px;border:1px solid #35516f;border-radius:20px;background:#10233e}.build-choice{display:block;margin:22px 0}.build-choice span{display:block;margin-bottom:9px;font-weight:700}select,button{font:inherit;width:100%;padding:15px;border-radius:10px;min-height:48px}.build-choice select{color-scheme:light;background:#f4f8ff;color:#10233e;border:2px solid #6487a8;opacity:1}.build-choice select option,.build-choice select optgroup{background:#f4f8ff;color:#10233e}.build-choice select:hover{border-color:#ffb05c}button{background:#ff982e;color:#07142b;border:0;font-weight:700;cursor:pointer}.build-total{position:sticky;top:20px}.build-total strong{float:right;color:#fff}.total{font-size:1.3rem;border-top:1px solid #4b6178;padding-top:20px}.build-total p:last-of-type{font-size:.9rem}.error{border:1px solid #ffb05c;padding:20px;border-radius:12px}summary{cursor:pointer;font-weight:700;padding:16px 0}.honeypot{position:absolute;left:-10000px}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #ffb05c;outline-offset:4px}@media(max-width:700px){.build-intro,.build-grid{grid-template-columns:1fr}.build-intro{gap:15px}.build-intro img{max-height:260px}.build-total{position:static}.build-options,.build-total{padding:20px}main{padding:24px 16px 40px}}

/* Opaque, wrapping choices instead of OS-rendered translucent select popups. */
.component-picker{background:#f4f8ff;color:#10233e;border:2px solid #6487a8;border-radius:10px;overflow:hidden}
.component-picker summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;min-height:52px;list-style:none;line-height:1.5}
.component-picker summary::-webkit-details-marker{display:none}
.component-picker summary:focus-visible{outline:3px solid #ff982e;outline-offset:-3px}
.build-choice .picker-value{margin:0;font-weight:400;overflow-wrap:anywhere}
.build-choice .picker-arrow{margin:0;font-size:24px;font-weight:700}
.component-picker[open] .picker-arrow{transform:rotate(180deg)}
.picker-options{border-top:2px solid #6487a8;background:#f4f8ff;max-height:440px;overflow-y:auto;overscroll-behavior:contain}
.picker-option{display:flex;align-items:center;gap:12px;padding:14px 16px;min-height:56px;border-bottom:1px solid #c6d3e0;cursor:pointer;background:#f4f8ff;color:#10233e;line-height:1.5}
.picker-option:last-child{border-bottom:0}.picker-option:hover{background:#dfebf7}.picker-option:has(input:checked){background:#dcebf8;box-shadow:inset 4px 0 #ce6100}
.picker-option:focus-within{outline:3px solid #ce6100;outline-offset:-3px}
.picker-option input{flex:0 0 22px;width:22px;height:22px;margin:0;accent-color:#9c4600;color-scheme:light}
.build-choice .picker-option span{margin:0;font-weight:400;overflow-wrap:anywhere;min-width:0}
