#to-configurator{position:relative;isolation:isolate;width:100%;min-height:100vh}
#to-configurator{--bg: #070709;
    --bg-2: #0d0d12;
    --bg-3: #15151d;
    --bg-4: #1c1c26;
    --ink: #ffffff;
    --ink-2: #e6e6ea;
    --ink-dim: #a2a2ac;
    --ink-faint: #767676;
    --line: rgba(255,255,255,0.08);
    --line-2: rgba(255,255,255,0.16);
    --accent: #4d8ad9;        
    --accent-hover: #6a9fe0;
    --accent-ink: #06131f;
    --accent-soft: rgba(77,138,217,0.12);
    --sans: 'Chakra Petch', -apple-system, BlinkMacSystemFont, sans-serif;
    --mono: 'JetBrains Mono', 'SF Mono', Menlo, monospace;
    --notch: 14px;}
#to-configurator, #to-configurator *{box-sizing: border-box; margin: 0; padding: 0;}
#to-configurator, #to-configurator{background: var(--bg); color: var(--ink-2);
    font-family: var(--sans); font-size: 15px; line-height: 1.5;
    -webkit-font-smoothing: antialiased; overflow-x: hidden;}
#to-configurator a{color: var(--accent); text-decoration: none;}
#to-configurator a:hover{color: var(--accent-hover);}
#to-configurator .wrap{max-width: 1440px; margin: 0 auto; padding: 0 40px;}
#to-configurator .topbar{position: sticky; top: 0; z-index: 60; height: 56px;
    display: flex; align-items: center; justify-content: space-between;
    padding: 0 40px; background: rgba(7,7,9,0.92); backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--line);}
#to-configurator .topbar-logo{height: 20px; opacity: 0.95;}
#to-configurator .topbar-status{display: flex; align-items: center; gap: 9px; font-family: var(--mono);
    font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-dim);}
#to-configurator .status-dot{width: 7px; height: 7px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 12px rgba(77,138,217,0.7);}
#to-configurator .notch-btn{position: relative; display: inline-flex; padding: 2px; border: 0; cursor: pointer;
    background: var(--accent); font-family: var(--sans);
    clip-path: polygon(var(--notch) 0, 100% 0, 100% calc(100% - var(--notch)), calc(100% - var(--notch)) 100%, 0 100%, 0 var(--notch));
    -webkit-tap-highlight-color: transparent; touch-action: manipulation;}
#to-configurator .notch-btn .inner{display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%;
    background: var(--bg); color: var(--accent); padding: 16px 26px;
    font-weight: 700; font-size: 14px; letter-spacing: 0.14em; text-transform: uppercase;
    clip-path: polygon(var(--notch) 0, 100% 0, 100% calc(100% - var(--notch)), calc(100% - var(--notch)) 100%, 0 100%, 0 var(--notch));
    transition: background 0.18s, color 0.18s;}
#to-configurator .notch-btn:hover .inner{background: var(--accent-soft);}
#to-configurator .notch-btn:active{transform: scale(0.994);}
#to-configurator .notch-btn .cart-ico{width: 18px; height: 18px; flex: none;}
#to-configurator .notch-btn .price{color: var(--ink); font-family: var(--mono); font-weight: 600;}
#to-configurator .notch-btn.sm .inner{padding: 12px 18px; font-size: 12px; letter-spacing: 0.1em;}
#to-configurator .presets{padding: 4px 0 8px;}
#to-configurator .presets-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; margin-bottom:24px;}
#to-configurator .presets-eyebrow{font-family:var(--mono); font-size:11px; letter-spacing:0.22em; text-transform:uppercase; color:var(--accent); margin-bottom:10px;}
#to-configurator .presets-title{font-family:var(--sans); font-weight:700; font-size:clamp(22px,2.6vw,30px); text-transform:uppercase; letter-spacing:0.01em; color:var(--ink); line-height:1.05;}
#to-configurator .presets-title span{color:var(--accent);}
#to-configurator .presets-note{font-family:var(--mono); font-size:11px; line-height:1.6; letter-spacing:0.02em; color:var(--ink-dim); text-align:right;}
#to-configurator .presets-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
#to-configurator .preset-card{position:relative; display:flex; flex-direction:column; text-align:left; background:var(--bg-2); border:1px solid var(--line-2); padding:0; cursor:pointer; color:inherit; font-family:inherit; -webkit-tap-highlight-color:transparent; transition:border-color 0.18s, transform 0.18s; overflow:hidden;}
#to-configurator .preset-card:hover{border-color:var(--accent); transform:translateY(-2px);}
#to-configurator .preset-ribbon{position:absolute; top:14px; left:14px; z-index:2; font-family:var(--mono); font-size:9px; letter-spacing:0.16em; text-transform:uppercase; color:var(--accent-ink); background:var(--accent); padding:5px 10px;}
#to-configurator .preset-ribbon.muted{background:var(--bg-4); color:var(--ink-2);}
#to-configurator .preset-img{display:grid; place-items:center; height:180px; padding:18px; background:radial-gradient(ellipse 70% 70% at 50% 45%, rgba(77,138,217,0.10), transparent 65%), var(--bg-3);}
#to-configurator .preset-img img{max-width:100%; max-height:150px; object-fit:contain;}
#to-configurator .preset-body{display:flex; flex-direction:column; flex:1; padding:20px 22px 22px;}
#to-configurator .preset-name{display:block; font-family:var(--sans); font-weight:700; font-size:19px; text-transform:uppercase; letter-spacing:0.02em; color:var(--ink);}
#to-configurator .preset-name em{font-style:normal; color:var(--accent);}
#to-configurator .preset-tagline{display:block; font-family:var(--sans); font-weight:700; font-size:18px; line-height:1.15; letter-spacing:0.01em; text-transform:uppercase; color:var(--ink); margin:0 0 16px;}
#to-configurator .preset-monthly{display:block; font-family:var(--mono); font-weight:600; font-size:16px; color:var(--ink);}
#to-configurator .preset-monthly .sym{color:var(--ink-dim);}
#to-configurator .preset-monthly .unit{font-size:10px; color:var(--ink-faint); font-weight:400; margin-left:6px; letter-spacing:0.04em;}
#to-configurator .preset-specs{display:block; font-family:var(--mono); font-size:11px; line-height:1.7; color:var(--ink-dim); margin:16px 0 18px;}
#to-configurator .preset-cta{display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:16px; border-top:1px solid var(--line); font-family:var(--sans); font-weight:700; font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:var(--accent);}
#to-configurator .preset-scratch{margin-top:20px; font-family:var(--mono); font-size:11px; letter-spacing:0.14em; text-transform:uppercase;}
@media (max-width:900px){
#to-configurator .presets-grid{grid-template-columns:1fr;}
#to-configurator .presets-note{text-align:left;} }
#to-configurator .prodhead{display: flex; justify-content: space-between; align-items: flex-start; gap: 32px;
    padding: 40px 0 28px; flex-wrap: wrap;}
#to-configurator .ph-left h1{font-family: var(--sans); font-weight: 700; font-size: clamp(34px, 4.4vw, 52px); line-height: 0.98; letter-spacing: 0.01em; text-transform: uppercase; color: var(--ink);}
#to-configurator .ph-sub{font-family: var(--mono); font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ink-dim); margin-top: 12px;}
#to-configurator .ph-right{display: flex; align-items: center; gap: 18px; flex-wrap: wrap;}
#to-configurator .ph-price{font-family: var(--mono); font-weight: 600; font-size: 26px; color: var(--ink);}
#to-configurator .fin-badge{display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap;
    background: var(--bg-3); border: 1px solid var(--line-2); padding: 8px 12px;
    font-family: var(--mono); font-size: 11px; letter-spacing: 0.02em; color: var(--ink-dim); line-height: 1.4;}
#to-configurator .fin-badge b{color: var(--accent); font-weight: 600;}
#to-configurator .fin-badge .sync{color: var(--ink);}
#to-configurator .fin-badge .appr{color: var(--ink-faint);}
#to-configurator .disc-mark{font-size: 10px; color: var(--ink-dim); vertical-align: super; margin-left: 2px; font-family: var(--mono);}
#to-configurator .disc-mark:hover{color: var(--accent);}
#to-configurator .prodwrap{display: grid; grid-template-columns: minmax(0, 560px) 1fr; gap: 56px; padding-bottom: 64px; align-items: start;}
#to-configurator .stage{border: 1px solid var(--line); background: radial-gradient(ellipse 70% 70% at 50% 40%, rgba(77,138,217,0.10), transparent 65%), var(--bg-2); overflow: hidden;}
#to-configurator .stage-frame{height: 460px; display: grid; place-items: center; padding: 28px;}
#to-configurator .stage-frame img{max-width: 100%; max-height: 404px; object-fit: contain;}
#to-configurator .stage-frame .placeholder{font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--ink-faint); text-align: center;}
#to-configurator .stage-cap{display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 18px; border-top: 1px solid var(--line);}
#to-configurator .stage-cap .nm{font-weight: 600; font-size: 13px; color: var(--ink);}
#to-configurator .stage-cap .tg{font-family: var(--mono); font-size: 9px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ink-faint);}
#to-configurator .buy{margin-top: 26px;}
#to-configurator .buy-price-row{display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 20px;}
#to-configurator .buy-price{font-family: var(--mono); font-weight: 600; font-size: 40px; line-height: 1; color: var(--ink); letter-spacing: -0.01em;}
#to-configurator .buy-monthly{font-family: var(--mono); font-size: 12px; letter-spacing: 0.02em; color: var(--ink-dim); line-height: 1.5;}
#to-configurator .buy-monthly b{color: var(--accent); font-weight: 600;}
#to-configurator .buy-monthly .sync{color: var(--ink);}
#to-configurator .buy-monthly .appr{color: var(--ink-faint); display: block; margin-top: 2px;}
#to-configurator .buy-monthly.no-promo b, #to-configurator .buy-monthly.no-promo .sync, #to-configurator .buy-monthly.no-promo .appr{display: none;}
#to-configurator .buy-monthly .nopromo-msg{display: none;}
#to-configurator .buy-monthly.no-promo .nopromo-msg{display: block; color: var(--ink-dim);}
#to-configurator .buy-tax{font-family: var(--mono); font-size: 11px; color: var(--ink-faint); margin: -10px 0 18px; letter-spacing: 0.02em;}
#to-configurator .buy-actions{display: flex; align-items: center; gap: 20px;}
#to-configurator .buy-actions .notch-btn{flex: 1;}
#to-configurator .btn-save{display: inline-flex; align-items: center; gap: 8px; background: transparent; border: 0; cursor: pointer;
    color: var(--ink); font-family: var(--sans); font-weight: 600; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase;
    -webkit-tap-highlight-color: transparent; touch-action: manipulation; min-height: 44px;}
#to-configurator .btn-save svg{width: 18px; height: 18px;}
#to-configurator .btn-save:hover{color: var(--accent);}
#to-configurator .btn-prequal{display: block; width: 100%; margin-top: 14px; text-align: center; padding: 14px 20px; min-height: 48px;
    background: transparent; border: 1px solid var(--line-2); color: var(--ink);
    font-family: var(--sans); font-weight: 600; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase;
    transition: border-color 0.18s;}
#to-configurator .btn-prequal:hover{border-color: var(--ink-faint); color: var(--ink);}
#to-configurator .fin-instr{margin-top: 14px; padding: 14px 16px; border: 1px solid var(--line-2); background: var(--bg-3); font-family: var(--mono); font-size: 11px; line-height: 1.65; letter-spacing: 0.02em; color: var(--ink-dim);}
#to-configurator .fin-instr b{color: var(--accent); font-weight: 600;}
#to-configurator .fin-instr .step{color: var(--ink);}
#to-configurator .see-specs{display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%;
    margin-top: 16px; padding: 8px; background: transparent; border: 0; cursor: pointer;
    font-family: var(--mono); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-dim);
    -webkit-tap-highlight-color: transparent; touch-action: manipulation;}
#to-configurator .see-specs:hover{color: var(--ink);}
#to-configurator .ship-callout{display: flex; align-items: center; gap: 8px; margin-top: 14px; font-family: var(--mono); font-size: 11px; letter-spacing: 0.04em; color: var(--ink-2);}
#to-configurator .ship-callout svg{width: 15px; height: 15px; color: var(--accent); flex: none;}
#to-configurator .ship-callout b{color: var(--accent); font-weight: 600;}
#to-configurator .disclosure{font-family: var(--mono); font-size: 11px; line-height: 1.65; color: var(--ink-dim); margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line);}
#to-configurator .disclosure .dnum{color: var(--ink);}
#to-configurator .acc{border-top: 1px solid var(--line);}
#to-configurator .acc:last-of-type{border-bottom: 1px solid var(--line);}
#to-configurator .acc-head{width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 14px;
    padding: 20px 2px; min-height: 60px; background: transparent; border: 0; cursor: pointer; text-align: left;
    font-family: var(--sans); font-weight: 700; font-size: 15px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink);
    -webkit-tap-highlight-color: transparent; touch-action: manipulation;}
#to-configurator .acc-head .chev{width: 16px; height: 16px; color: var(--ink-dim); transition: transform 0.2s; flex: none;}
#to-configurator .acc-head[aria-expanded="true"] .chev{transform: rotate(180deg); color: var(--accent);}
#to-configurator .acc-body{padding: 0 2px 22px;}
#to-configurator .acc-body[hidden]{display: none;}
#to-configurator .acc-body p{font-size: 13.5px; line-height: 1.6; color: var(--ink-dim); margin-bottom: 10px;}
#to-configurator .acc-body p b{color: var(--ink); font-weight: 600;}
#to-configurator .acc-body ul{list-style: none; display: grid; gap: 8px; margin-top: 6px;}
#to-configurator .acc-body li{font-family: var(--mono); font-size: 11px; line-height: 1.5; color: var(--ink-2); padding-left: 16px; position: relative;}
#to-configurator .acc-body li::before{content: '+'; position: absolute; left: 0; color: var(--accent);}
#to-configurator .fps-res{display: inline-flex; border: 1px solid var(--line-2); margin-bottom: 18px;}
#to-configurator .fps-res-btn{font-family: var(--mono); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-dim); background: transparent; border: 0; border-right: 1px solid var(--line-2); padding: 0 16px; min-height: 44px; min-width: 60px; cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation; transition: background 0.15s, color 0.15s;}
#to-configurator .fps-res-btn:last-child{border-right: 0;}
#to-configurator .fps-res-btn:hover{color: var(--ink);}
#to-configurator .fps-res-btn.is-on{background: var(--accent); color: var(--accent-ink);}
#to-configurator .fps-sub{font-family: var(--mono); font-size: 11px; color: var(--ink-faint); line-height: 1.6; margin-bottom: 14px;}
#to-configurator .fps-sub b{color: var(--ink-dim); font-weight: 500;}
#to-configurator .fps-grid{display: grid; gap: 14px;}
#to-configurator .fps-item{display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; align-items: baseline;}
#to-configurator .fps-game{font-size: 13px; font-weight: 500; color: var(--ink-2);}
#to-configurator .fps-val{font-family: var(--mono); font-weight: 600; font-size: 15px; color: var(--ink); white-space: nowrap;}
#to-configurator .fps-val .u{font-size: 10px; color: var(--ink-faint); font-weight: 400; margin-left: 3px;}
#to-configurator .fps-track{grid-column: 1 / -1; display: block; height: 8px; border-radius: 4px; background: var(--bg-4); overflow: hidden;}
#to-configurator .fps-fill{display: block; height: 100%; border-radius: 4px; background: var(--accent); width: 0; transition: width 0.4s ease;}
#to-configurator .fps-fill.perf-low, #to-configurator .fps-fill.perf-mid, #to-configurator .fps-fill.perf-high, #to-configurator .fps-fill.perf-max{background: var(--accent); box-shadow: none;}
#to-configurator .fps-note{font-family: var(--mono); font-size: 10px; color: var(--ink-faint); line-height: 1.6; margin-top: 16px;}
#to-configurator .cfg-tabs-row{display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 28px; flex-wrap: wrap;}
#to-configurator .cfg-tabs{display: inline-flex; background: var(--bg-2); border: 1px solid var(--line); padding: 5px; gap: 4px; flex-wrap: wrap;}
#to-configurator .cfg-tab{font-family: var(--sans); font-weight: 600; font-size: 13px; letter-spacing: 0.04em;
    color: var(--ink-dim); background: transparent; border: 0; padding: 10px 18px; min-height: 44px; cursor: pointer;
    -webkit-tap-highlight-color: transparent; touch-action: manipulation; transition: background 0.15s, color 0.15s;}
#to-configurator .cfg-tab:hover{color: var(--ink);}
#to-configurator .cfg-tab.is-on{background: var(--accent); color: var(--accent-ink);}
#to-configurator .btn-closeall{font-family: var(--sans); font-weight: 600; font-size: 12px; letter-spacing: 0.06em;
    color: var(--ink-2); background: transparent; border: 1px solid var(--line-2); padding: 10px 16px; min-height: 44px; cursor: pointer;
    -webkit-tap-highlight-color: transparent; touch-action: manipulation; transition: border-color 0.15s; white-space: nowrap;}
#to-configurator .btn-closeall:hover{border-color: var(--ink-faint);}
#to-configurator .cfg-select-label{display: flex; align-items: center; justify-content: space-between; font-family: var(--mono); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ink-dim); padding: 10px 0 16px; border-bottom: 1px solid var(--line);}
#to-configurator .cfg-select-label b{color: var(--ink); font-weight: 500; letter-spacing: 0.1em;}
#to-configurator .platform-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 18px 0 10px;}
#to-configurator .platform{display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 20px 22px; min-height: 64px; border: 1px solid var(--line-2); background: var(--bg-2);
    font-weight: 600; font-size: 15px; letter-spacing: 0.06em; color: var(--ink); border-radius: 40px;
    cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation; transition: border-color 0.15s;}
#to-configurator .platform .dot{width: 20px; height: 20px; border-radius: 50%; border: 1px solid var(--line-2); flex: none;}
#to-configurator .platform.is-on{border-color: var(--accent);}
#to-configurator .platform.is-on .dot{border-color: var(--accent); background: var(--accent); box-shadow: inset 0 0 0 4px var(--bg-2);}
#to-configurator .platform.is-off{opacity: 0.5; cursor: not-allowed;}
#to-configurator .platform.is-off .soon{font-family: var(--mono); font-size: 9px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-faint);}
#to-configurator .crows{margin-top: 6px;}
#to-configurator .crow{border-bottom: 1px solid var(--line);}
#to-configurator .crow.is-hidden{display: none;}
#to-configurator .crow-head{width: 100%; display: grid; grid-template-columns: 1fr auto auto; gap: 16px; align-items: center;
    padding: 20px 2px; min-height: 64px; background: transparent; border: 0; cursor: pointer; text-align: left;
    color: inherit; font-family: inherit; -webkit-tap-highlight-color: transparent; touch-action: manipulation;}
#to-configurator .crow-cat{font-family: var(--sans); font-weight: 700; font-size: 14px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--ink);}
#to-configurator .crow-right{display: flex; align-items: center; gap: 14px; justify-self: end;}
#to-configurator .crow-sel{font-family: var(--sans); font-weight: 500; font-size: 14px; color: var(--ink-2); text-align: right;}
#to-configurator .crow-delta{font-family: var(--mono); font-size: 11px; color: var(--ink-faint); white-space: nowrap;}
#to-configurator .crow-delta.up{color: var(--accent);}
#to-configurator .crow-chev{width: 16px; height: 16px; color: var(--ink-dim); transition: transform 0.2s; flex: none;}
#to-configurator .crow-head[aria-expanded="true"] .crow-chev{transform: rotate(180deg); color: var(--accent);}
#to-configurator .crow-body{padding: 0 0 20px;}
#to-configurator .crow-body[hidden]{display: none;}
#to-configurator .opts{display: grid; grid-template-columns: 1fr; gap: 0; border: 1px solid var(--line);}
#to-configurator .cfg-option{position: relative; display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center;
    padding: 16px 18px; min-height: 60px; border-bottom: 1px solid var(--line); cursor: pointer;
    background: var(--bg-2); transition: background 0.15s;
    -webkit-tap-highlight-color: transparent; touch-action: manipulation;}
#to-configurator .cfg-option:last-child{border-bottom: 0;}
#to-configurator .cfg-option:hover{background: var(--bg-3);}
#to-configurator .cfg-option:active{background: var(--bg-4);}
#to-configurator .cfg-option input[type="radio"]{appearance: none; width: 18px; height: 18px; border: 1px solid var(--line-2); border-radius: 50%; background: var(--bg); cursor: pointer; position: relative; flex: none; transition: border-color 0.15s;}
#to-configurator .cfg-option input[type="radio"]:checked{border-color: var(--accent);}
#to-configurator .cfg-option input[type="radio"]:checked::after{content: ''; position: absolute; inset: 3px; background: var(--accent); border-radius: 50%;}
#to-configurator .cfg-option:has(input:checked){background: var(--accent-soft);}
#to-configurator .cfg-option .opt-name{font-weight: 500; font-size: 14px; color: var(--ink);}
#to-configurator .cfg-option .opt-name small{display: block; font-family: var(--mono); font-weight: 400; font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-faint); margin-top: 3px;}
#to-configurator .opt-delta{font-family: var(--mono); font-size: 12px; color: var(--ink-dim); white-space: nowrap; justify-self: end;}
#to-configurator .opt-delta.negative{color: var(--ink-dim);}
#to-configurator .opt-delta.same{color: var(--ink-faint);}
#to-configurator .cfg-option.is-disabled{opacity: 0.42; cursor: not-allowed;}
#to-configurator .cfg-option.is-disabled:hover{background: var(--bg-2);}
#to-configurator .cfg-option.is-disabled input{pointer-events: none;}
#to-configurator .opt-lock{display: none; grid-column: 2 / -1; font-family: var(--mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-dim); margin-top: 6px;}
#to-configurator .cfg-option.is-disabled .opt-lock{display: block;}
#to-configurator .save-build{margin-top: 32px; padding-top: 22px; border-top: 1px solid var(--line);}
#to-configurator .save-build-title{font-family: var(--mono); font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--ink-dim); margin-bottom: 12px;}
#to-configurator .save-build-row{display: flex;}
#to-configurator .save-build-row input{flex: 1; min-width: 0; padding: 12px; min-height: 44px; background: var(--bg-3); border: 1px solid var(--line-2); border-right: 0; color: var(--ink-dim); font-family: var(--mono); font-size: 11px; outline: none; border-radius: 0; text-overflow: ellipsis; -webkit-appearance: none;}
#to-configurator .save-build-copy{flex: none; padding: 0 18px; min-height: 44px; background: var(--bg-4); border: 1px solid var(--line-2); color: var(--ink); font-family: var(--mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation; transition: background 0.15s;}
#to-configurator .save-build-copy:hover{background: var(--line-2);}
#to-configurator .save-build-note{font-size: 12px; line-height: 1.55; color: var(--ink-dim); margin-bottom: 12px;}
#to-configurator #saveEmail{font-size: 16px; color: var(--ink);}
#to-configurator #saveEmail.invalid{border-color: #d06666;}
#to-configurator .save-success-msg{font-size: 13px; line-height: 1.55; color: var(--ink-dim); margin-bottom: 14px;}
#to-configurator .save-success-msg b{color: var(--ink); font-weight: 600;}
#to-configurator .techspecs{background: var(--bg-2); border-radius: 22px; margin: 8px 0 48px; padding: 56px 48px;}
#to-configurator .techspecs h2{font-family: var(--sans); font-weight: 700; font-size: 30px; letter-spacing: 0.02em; text-transform: uppercase; color: var(--ink); margin-bottom: 18px;}
#to-configurator .techspecs-intro{max-width: 62ch; font-size: 14.5px; line-height: 1.7; color: var(--ink-dim); margin-bottom: 34px;}
#to-configurator .ts-list{max-width: 900px;}
#to-configurator .ts-row{display: grid; grid-template-columns: auto 1fr auto auto; gap: 14px; align-items: center; padding: 15px 4px; border-bottom: 1px solid var(--line);}
#to-configurator .ts-ico{width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid var(--accent); color: var(--accent); flex: none;}
#to-configurator .ts-ico svg{width: 14px; height: 14px;}
#to-configurator .ts-label{font-family: var(--sans); font-weight: 700; font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--ink);}
#to-configurator .ts-val{font-family: var(--sans); font-weight: 500; font-size: 13px; color: var(--ink-dim); text-align: right; justify-self: end;}
#to-configurator .ts-edit{font-family: var(--mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-faint); background: transparent; border: 0; border-bottom: 1px solid var(--line-2); padding: 3px 2px; cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation; transition: color 0.15s, border-color 0.15s;}
#to-configurator .ts-edit:hover{color: var(--accent); border-color: var(--accent);}
#to-configurator .band{padding: 56px 0; border-top: 1px solid var(--line);}
#to-configurator .band-eyebrow{font-family: var(--mono); font-size: 11px; letter-spacing: 0.28em; text-transform: uppercase; color: var(--ink-dim); margin-bottom: 12px;}
#to-configurator .band-title{font-family: var(--sans); font-weight: 700; font-size: clamp(24px, 3vw, 34px); text-transform: uppercase; letter-spacing: 0.01em; color: var(--ink); line-height: 1.05; margin-bottom: 30px;}
#to-configurator .band-title span{color: var(--accent);}
#to-configurator .pay-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 20px;}
#to-configurator .pay-card{background: var(--bg-2); border: 1px solid var(--line-2); padding: 30px 28px; display: flex; flex-direction: column;}
#to-configurator .pay-card .tag{font-family: var(--mono); font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--ink-dim); margin-bottom: 14px;}
#to-configurator .pay-card h3{font-family: var(--sans); font-weight: 700; font-size: 22px; text-transform: uppercase; color: var(--ink); margin-bottom: 12px;}
#to-configurator .pay-card p{font-size: 13.5px; line-height: 1.6; color: var(--ink-dim); margin-bottom: 18px; flex-grow: 1;}
#to-configurator .pay-card .price-note{font-family: var(--mono); font-size: 11px; color: var(--ink-faint); margin-bottom: 18px;}
#to-configurator .pay-btn{display: block; width: 100%; text-align: center; padding: 16px 20px; min-height: 50px; font-family: var(--sans); font-weight: 700; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation;}
#to-configurator .pay-btn.solid{background: var(--accent); color: var(--accent-ink); border: 0; transition: background 0.18s;}
#to-configurator .pay-btn.solid:hover{background: var(--accent-hover);}
#to-configurator .pay-btn.outline{background: transparent; color: var(--ink); border: 1px solid var(--line-2); transition: border-color 0.18s;}
#to-configurator .pay-btn.outline:hover{border-color: var(--ink-faint);}
#to-configurator .fin-disclosure{margin-top: 20px; font-family: var(--mono); font-size: 11px; line-height: 1.7; color: var(--ink-dim); max-width: 900px;}
#to-configurator .fin-disclosure .dnum{color: var(--ink);}
#to-configurator .sync-est{font-family: var(--mono); font-size: 12px; line-height: 1.55; color: var(--ink-dim); margin-bottom: 18px; padding: 12px 14px; background: var(--bg); border: 1px solid var(--line-2);}
#to-configurator .sync-est b{font-family: var(--mono); color: var(--ink); font-size: 15px;}
#to-configurator .sync-est .sync-term{color: var(--ink-faint);}
#to-configurator .legal-disclosure{margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--line); font-family: var(--mono); font-size: 10.5px; line-height: 1.7; color: var(--ink-faint); max-width: 100%;}
#to-configurator .legal-disclosure b{color: var(--ink-dim); font-weight: 600;}
#to-configurator .footer{border-top: 1px solid var(--line); padding: 28px 0; display: grid; grid-template-columns: 1fr auto 1fr; gap: 24px; align-items: center; font-family: var(--mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-dim);}
#to-configurator .footer .center{text-align: center;}
#to-configurator .footer .right{text-align: right;}
#to-configurator .footer img{height: 34px;}
@media (max-width: 1080px){
#to-configurator .prodwrap{grid-template-columns: 1fr; gap: 40px;}
  }
@media (max-width: 720px){
#to-configurator .wrap, #to-configurator .topbar{padding-left: 18px; padding-right: 18px;}
#to-configurator .prodhead{padding: 28px 0 20px;}
#to-configurator .ph-right{width: 100%;}
#to-configurator .ph-right .notch-btn{flex: 1;}
#to-configurator .stage-frame{height: 320px;}
#to-configurator .techspecs{padding: 36px 20px; border-radius: 16px;}
#to-configurator .ts-row{grid-template-columns: auto 1fr auto;}
#to-configurator .ts-val{grid-column: 1 / -1; text-align: left; justify-self: start; margin-left: 38px;}
#to-configurator .pay-grid{grid-template-columns: 1fr;}
#to-configurator .platform-grid{grid-template-columns: 1fr;}
#to-configurator .footer{grid-template-columns: 1fr; gap: 12px;}
#to-configurator .footer .center, #to-configurator .footer .right{text-align: left;}
  }
#to-configurator .build-modal{position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; padding: 20px;}
#to-configurator .build-modal[hidden]{display: none;}
#to-configurator .build-modal-backdrop{position: absolute; inset: 0; background: rgba(4,4,6,0.8); backdrop-filter: blur(6px);}
#to-configurator .build-modal-card{position: relative; width: 100%; max-width: 460px; background: var(--bg-2); border: 1px solid var(--line-2); padding: 40px; box-shadow: 0 32px 80px rgba(0,0,0,0.6);}
#to-configurator .build-modal-close{position: absolute; top: 12px; right: 12px; width: 44px; height: 44px; display: grid; place-items: center; background: transparent; border: 0; color: var(--ink-faint); font-size: 24px; cursor: pointer; transition: color 0.2s;}
#to-configurator .build-modal-close:hover{color: var(--ink);}
#to-configurator .bm-eyebrow{font-family: var(--mono); font-size: 10px; letter-spacing: 0.24em; text-transform: uppercase; color: var(--accent); margin-bottom: 14px;}
#to-configurator .bm-title{font-family: var(--sans); font-weight: 700; font-size: 26px; text-transform: uppercase; line-height: 1.05; margin-bottom: 12px; color: var(--ink);}
#to-configurator .bm-sub{font-size: 13px; line-height: 1.5; color: var(--ink-dim); margin-bottom: 24px;}
#to-configurator .bm-label{display: block; font-family: var(--mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ink-faint); margin-bottom: 10px;}
#to-configurator #bmEmail, #to-configurator #bmPhone{width: 100%; padding: 16px; min-height: 52px; background: var(--bg-3); border: 1px solid var(--line-2); color: var(--ink); font-family: var(--sans); font-size: 16px; outline: none; border-radius: 0; -webkit-appearance: none; transition: border-color 0.2s;}
#to-configurator #bmEmail::placeholder, #to-configurator #bmPhone::placeholder{color: var(--ink-faint);}
#to-configurator #bmEmail:focus, #to-configurator #bmPhone:focus{border-color: var(--accent);}
#to-configurator #bmEmail.invalid, #to-configurator #bmPhone.invalid{border-color: #d06666;}
#to-configurator .bm-field{margin-bottom: 16px;}
#to-configurator .bm-error{font-family: var(--mono); font-size: 12px; line-height: 1.5; letter-spacing: 0.04em; color: #d06666; margin-top: 10px;}
#to-configurator .bm-error[hidden]{display: none;}
#to-configurator .bm-submit{width: 100%; margin-top: 20px; padding: 17px 20px; min-height: 52px; border: 0; background: var(--accent); color: var(--accent-ink); font-family: var(--sans); font-weight: 700; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; cursor: pointer; transition: background 0.2s;}
#to-configurator .bm-submit:hover{background: var(--accent-hover);}
#to-configurator .bm-submit:disabled{opacity: 0.55; cursor: default;}
#to-configurator .bm-fineprint{margin-top: 16px; font-family: var(--mono); font-size: 10px; color: var(--ink-faint); text-align: center; line-height: 1.7;}
#to-configurator .bm-success{text-align: center; padding: 8px 0;}
#to-configurator .bm-check{width: 56px; height: 56px; margin: 0 auto 20px; border: 1px solid var(--accent); border-radius: 50%; display: grid; place-items: center; color: var(--accent); font-size: 26px;}
#to-configurator .bm-success h3{font-family: var(--sans); font-weight: 700; font-size: 24px; text-transform: uppercase; margin-bottom: 12px; color: var(--ink);}
#to-configurator .bm-success p{font-size: 13px; line-height: 1.55; color: var(--ink-dim); margin-bottom: 8px;}
#to-configurator .bm-success p b{color: var(--ink);}
#to-configurator .bm-relink{display: inline-block; margin-top: 16px; font-family: var(--mono); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--accent); border-bottom: 1px solid var(--accent); padding-bottom: 4px;}
@media (max-width: 640px){
#to-configurator .build-modal{align-items: end; padding: 12px;}
#to-configurator .build-modal-card{padding: 30px 22px;} }