@@ -47,7 +47,7 @@ html,body{height:100%;overflow:hidden;font-family:'Segoe UI',system-ui,-apple-sy
4747
4848/* Search */
4949.search-wrap {position : relative}
50- # search {width : 100% ;padding : 8px 14px 8px 34px ;border-radius : var (--radius-sm );background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 13px ;outline : none; transition : border-color .2s , box-shadow .2s }
50+ # search {width : 100% ;padding : 8px 14px 8px 34px ;border-radius : var (--radius-sm );background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 13px ;transition : border-color .2s , box-shadow .2s }
5151# search : focus {border-color : var (--blue );box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.12 )}
5252# search ::placeholder {color : var (--overlay0 )}
5353.search-icon {position : absolute;left : 10px ;top : 50% ;transform : translateY (-50% );color : var (--overlay0 );pointer-events : none}
@@ -82,34 +82,36 @@ html,body{height:100%;overflow:hidden;font-family:'Segoe UI',system-ui,-apple-sy
8282.tab-content {display : none}.tab-content .active {display : block}
8383
8484/* Controls */
85- .weapon-filter {width : 100% ;padding : 5px 10px ;margin-bottom : 4px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 10px ; outline : none }
86- .weapon-filter : focus {border-color : var (--blue )}
85+ .weapon-filter {width : 100% ;padding : 5px 10px ;margin-bottom : 4px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 10px }
86+ .weapon-filter : focus {border-color : var (--blue ); box-shadow : 0 0 0 3 px rgba ( 137 , 180 , 250 , 0.12 ) }
8787.weapon-filter ::placeholder {color : var (--overlay0 )}
8888.select-wrap {position : relative;margin-bottom : 8px }
89- .custom-select {width : 100% ;padding : 8px 36px 8px 12px ;border-radius : var (--radius-sm );background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 12px ;cursor : pointer;outline : none; appearance : none;-webkit-appearance : none}
90- .custom-select : focus {border-color : var (--blue )}
89+ .custom-select {width : 100% ;padding : 8px 36px 8px 12px ;border-radius : var (--radius-sm );background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 12px ;cursor : pointer;appearance : none;-webkit-appearance : none}
90+ .custom-select : focus {border-color : var (--blue ); box-shadow : 0 0 0 3 px rgba ( 137 , 180 , 250 , 0.12 ) }
9191.select-arrow {position : absolute;right : 11px ;top : 50% ;transform : translateY (-50% );color : var (--overlay0 );pointer-events : none}
9292.select-arrow svg {width : 10px ;height : 10px ;fill : currentColor}
9393.yield-row {display : flex;align-items : center;gap : 10px ;margin-bottom : 4px }
9494.yield-display {min-width : 80px ;text-align : right;font-size : 22px ;font-weight : 800 ;font-variant-numeric : tabular-nums;color : var (--peach );line-height : 1 }
9595.yield-unit {font-size : 11px ;font-weight : 600 ;color : var (--overlay1 )}
96- # yield-slider {flex : 1 ;-webkit-appearance : none;appearance : none;height : 5px ;border-radius : 3px ;background : linear-gradient (90deg , var (--green ) 0% , var (--yellow ) 40% , var (--peach ) 70% , var (--red ) 100% );outline : none;cursor : pointer}
96+ # yield-slider {flex : 1 ;-webkit-appearance : none;appearance : none;height : 5px ;border-radius : 3px ;background : linear-gradient (90deg , var (--green ) 0% , var (--yellow ) 40% , var (--peach ) 70% , var (--red ) 100% );cursor : pointer}
97+ # yield-slider : focus-visible {box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.12 )}
9798# yield-slider ::-webkit-slider-thumb {-webkit-appearance : none;width : 18px ;height : 18px ;border-radius : 50% ;background : var (--text );border : 2px solid var (--surface0 );cursor : pointer;box-shadow : 0 2px 8px rgba (0 , 0 , 0 , 0.4 );transition : transform .15s }
9899# yield-slider ::-webkit-slider-thumb : hover {transform : scale (1.2 )}
99100# yield-slider ::-moz-range-thumb {width : 18px ;height : 18px ;border-radius : 50% ;background : var (--text );border : 2px solid var (--surface0 );cursor : pointer}
100101.yield-labels {display : flex;justify-content : space-between;font-size : 9px ;color : var (--overlay0 );margin-bottom : 8px ;padding : 0 2px }
101102.yield-input-row {display : flex;gap : 6px ;margin-bottom : 8px }
102- # yield-input {width : 80px ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--peach );font-size : 12px ;font-weight : 600 ;outline : none;text-align : right}
103- # yield-input : focus {border-color : var (--blue )}
104- # yield-unit-select {padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 12px ;outline : none;cursor : pointer}
103+ # yield-input {width : 80px ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--peach );font-size : 12px ;font-weight : 600 ;text-align : right}
104+ # yield-input : focus {border-color : var (--blue );box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.12 )}
105+ # yield-unit-select {padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 12px ;cursor : pointer}
106+ # yield-unit-select : focus {border-color : var (--blue );box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.12 )}
105107.burst-options {display : flex;gap : 5px ;margin-bottom : 8px }
106108.burst-btn {flex : 1 ;padding : 6px 4px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--subtext0 );font-size : 11px ;font-weight : 600 ;cursor : pointer;text-align : center;transition : background-color .2s , color .2s , border-color .2s , box-shadow .2s }
107109.burst-btn .active {background : var (--surface1 );color : var (--text );border-color : var (--blue );box-shadow : 0 0 0 1px rgba (137 , 180 , 250 , 0.2 )}
108110.burst-btn : hover : not (.active ){background : rgba (69 , 71 , 90 , 0.5 );color : var (--text )}
109111.compact-row {display : flex;align-items : center;gap : 8px ;margin-bottom : 8px }
110112.compact-row label {font-size : 11px ;color : var (--subtext0 );white-space : nowrap;min-width : 50px }
111- .compact-input {flex : 1 ;max-width : 80px ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 12px ;outline : none; text-align : right}
112- .compact-input : focus {border-color : var (--blue )}
113+ .compact-input {flex : 1 ;max-width : 80px ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 12px ;text-align : right}
114+ .compact-input : focus {border-color : var (--blue ); box-shadow : 0 0 0 3 px rgba ( 137 , 180 , 250 , 0.12 ) }
113115.compact-row .unit {font-size : 10px ;color : var (--overlay0 )}
114116
115117/* Detonate */
@@ -122,10 +124,12 @@ html,body{height:100%;overflow:hidden;font-family:'Segoe UI',system-ui,-apple-sy
122124.btn-secondary : hover {background : var (--surface0 );color : var (--text )}
123125
124126/* Toggles */
125- .toggle-row {display : flex;align-items : center;gap : 8px ;margin-top : 6px ;cursor : pointer;user-select : none}
126- .toggle-row input {display : none }
127+ .toggle-row {display : flex;align-items : center;gap : 8px ;margin-top : 6px ;cursor : pointer;user-select : none; position : relative }
128+ .toggle-row input {position : absolute; inset : 0 ; margin : 0 ; opacity : 0 ; cursor : pointer }
127129.tg-slider {width : 30px ;height : 16px ;border-radius : 8px ;background : var (--surface1 );position : relative;transition : background .2s ;flex-shrink : 0 }
128130.tg-slider ::after {content : '' ;position : absolute;top : 2px ;left : 2px ;width : 12px ;height : 12px ;border-radius : 50% ;background : var (--overlay0 );transition : left .2s , background-color .2s }
131+ .toggle-row : focus-visible .tg-slider ,
132+ .toggle-row input : focus-visible + .tg-slider {box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.32 )}
129133.toggle-row input : checked + .tg-slider {background : var (--blue )}
130134.toggle-row input : checked + .tg-slider ::after {left : 16px ;background : var (--text )}
131135.tg-label {font-size : 10px ;color : var (--subtext0 );font-weight : 600 }
@@ -139,7 +143,8 @@ html,body{height:100%;overflow:hidden;font-family:'Segoe UI',system-ui,-apple-sy
139143.wind-info {flex : 1 ;font-size : 10px }
140144.wind-info label {color : var (--subtext0 );display : block;margin-bottom : 3px ;font-weight : 600 }
141145.wind-speed-row {display : flex;gap : 5px ;align-items : center}
142- # wind-speed {width : 55px ;padding : 4px 6px ;border-radius : 5px ;background : var (--mantle );border : 1px solid var (--surface1 );color : var (--text );font-size : 11px ;outline : none;text-align : right}
146+ # wind-speed {width : 55px ;padding : 4px 6px ;border-radius : 5px ;background : var (--mantle );border : 1px solid var (--surface1 );color : var (--text );font-size : 11px ;text-align : right}
147+ # wind-speed : focus {border-color : var (--blue );box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.12 )}
143148.wind-dir-label {color : var (--overlay0 );font-size : 9px ;margin-top : 2px }
144149
145150/* Legend */
@@ -213,11 +218,13 @@ html,body{height:100%;overflow:hidden;font-family:'Segoe UI',system-ui,-apple-sy
213218.compare-table td {padding : 3px 6px ;border-bottom : 1px solid rgba (69 , 71 , 90 , 0.2 )}
214219.ct-label {color : var (--overlay1 );font-weight : 600 }.ct-a {color : var (--blue );font-weight : 600 ;font-variant-numeric : tabular-nums}.ct-b {color : var (--peach );font-weight : 600 ;font-variant-numeric : tabular-nums}
215220.compare-selects {display : flex;gap : 6px ;margin-bottom : 6px }
216- .compare-selects select {flex : 1 ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 10px ;outline : none}
221+ .compare-selects select {flex : 1 ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 10px }
222+ .compare-selects select : focus {border-color : var (--blue );box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.12 )}
217223
218224/* Share */
219225.share-row {display : flex;gap : 5px ;align-items : center}
220- # share-input {flex : 1 ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 10px ;outline : none;font-family : monospace}
226+ # share-input {flex : 1 ;padding : 5px 8px ;border-radius : 6px ;background : var (--surface0 );border : 1px solid var (--surface1 );color : var (--text );font-size : 10px ;font-family : monospace}
227+ # share-input : focus {border-color : var (--blue );box-shadow : 0 0 0 3px rgba (137 , 180 , 250 , 0.12 )}
221228.share-copy {padding : 5px 10px ;border-radius : 6px ;background : var (--blue );border : none;color : var (--crust );font-size : 10px ;font-weight : 700 ;cursor : pointer}
222229
223230/* MIRV status */
0 commit comments