@jjlmoya/utils-astronomy 1.13.0 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,317 +1,5 @@
1
1
  .star-calc-wrapper {
2
- width: 100%;
3
- max-width: 56rem;
4
- margin: 0 auto;
5
- padding: 2rem;
6
- background: var(--bg-surface);
7
- border: 1px solid var(--border-base);
8
- border-radius: 1.5rem;
9
- box-shadow: 0 25px 50px -12px var(--shadow-base);
10
- }
11
-
12
- .star-calc-grid {
13
- display: grid;
14
- grid-template-columns: 1fr;
15
- gap: 2rem;
16
- }
17
-
18
- @media (min-width: 768px) {
19
- .star-calc-grid {
20
- grid-template-columns: 1fr 1fr;
21
- gap: 3rem;
22
- }
23
- }
24
-
25
- .star-calc-controls {
26
- display: flex;
27
- flex-direction: column;
28
- gap: 1.5rem;
29
- }
30
-
31
- .star-mode-selector {
32
- display: flex;
33
- align-items: center;
34
- gap: 1rem;
35
- }
36
-
37
- .star-mode-label {
38
- font-size: 0.875rem;
39
- font-weight: 500;
40
- color: var(--text-muted, #cbd5e1);
41
- }
42
-
43
- .star-toggle-group {
44
- display: flex;
45
- background: var(--bg-muted);
46
- padding: 0.25rem;
47
- border-radius: 0.75rem;
48
- border: 1px solid var(--border-base);
49
- }
50
-
51
- .star-toggle-btn {
52
- padding: 0.5rem 1rem;
53
- border: none;
54
- background: transparent;
55
- color: var(--text-muted, #94a3b8);
56
- cursor: pointer;
57
- border-radius: 0.5rem;
58
- font-weight: 600;
59
- font-size: 0.875rem;
60
- transition: all 0.2s ease;
61
- }
62
-
63
- .star-toggle-btn.active {
64
- background: var(--color-amber, #f59e0b);
65
- color: var(--color-bg-deep, #0f172a);
66
- box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
67
- }
68
-
69
- .star-control-group {
70
- display: flex;
71
- flex-direction: column;
72
- gap: 0.75rem;
73
- }
74
-
75
- .star-control-label {
76
- font-size: 0.9rem;
77
- font-weight: 500;
78
- color: var(--text-muted, #cbd5e1);
79
- display: flex;
80
- justify-content: space-between;
81
- }
82
-
83
- .star-stepper {
84
- display: flex;
85
- align-items: center;
86
- background: var(--bg-muted);
87
- border: 1px solid var(--border-base);
88
- border-radius: 0.75rem;
89
- overflow: hidden;
90
- }
91
-
92
- .star-step-btn {
93
- width: 4rem;
94
- height: 3.5rem;
95
- border: none;
96
- background: var(--bg-muted);
97
- color: var(--color-amber, #f59e0b);
98
- font-size: 1.5rem;
99
- cursor: pointer;
100
- transition: background 0.2s ease;
101
- }
102
-
103
- .star-step-btn:hover {
104
- background: var(--bg-page);
105
- }
106
-
107
- .star-stepper-input {
108
- flex: 1;
109
- background: transparent;
110
- border: none;
111
- color: var(--text-base);
112
- text-align: center;
113
- font-size: 1.25rem;
114
- font-weight: 600;
115
- outline: none;
116
- width: 100%;
117
- }
118
-
119
- .star-select-wrapper {
120
- position: relative;
121
- width: 100%;
122
- }
123
-
124
- .star-select-arrow {
125
- position: absolute;
126
- right: 0.875rem;
127
- top: 50%;
128
- transform: translateY(-50%);
129
- width: 1rem;
130
- height: 1rem;
131
- color: var(--color-amber, #f59e0b);
132
- pointer-events: none;
133
- }
134
-
135
- .star-select {
136
- appearance: none;
137
- -webkit-appearance: none;
138
- width: 100%;
139
- background: var(--bg-muted);
140
- border: 1px solid var(--border-base);
141
- color: var(--text-base);
142
- padding: 0.875rem 3rem 0.875rem 1rem;
143
- border-radius: 0.75rem;
144
- font-size: 0.95rem;
145
- outline: none;
146
- cursor: pointer;
147
- transition: border-color 0.2s ease;
148
- }
149
-
150
- .star-select:hover {
151
- border-color: var(--text-muted);
152
- }
153
-
154
- .star-select:focus {
155
- border-color: var(--color-amber, #f59e0b);
156
- }
157
-
158
- .star-select option {
159
- background: var(--bg-surface);
160
- color: var(--text-base);
161
- }
162
-
163
- .star-range {
164
- width: 100%;
165
- accent-color: var(--color-amber, #f59e0b);
166
- height: 6px;
167
- border-radius: 3px;
168
- cursor: pointer;
169
- }
170
-
171
- .star-range-labels {
172
- display: flex;
173
- justify-content: space-between;
174
- font-size: 0.75rem;
175
- color: var(--text-muted, #64748b);
176
- }
177
-
178
- .star-npf-controls {
179
- display: none;
180
- flex-direction: column;
181
- gap: 1.5rem;
182
- animation: star-fade-in 0.3s ease;
183
- }
184
-
185
- @keyframes star-fade-in {
186
- from {
187
- opacity: 0;
188
- transform: translateY(-10px);
189
- }
190
- to {
191
- opacity: 1;
192
- transform: translateY(0);
193
- }
194
- }
195
-
196
- .star-results {
197
- display: flex;
198
- flex-direction: column;
199
- gap: 2rem;
200
- justify-content: center;
201
- }
202
-
203
- .star-result-main {
204
- text-align: center;
205
- background: var(--bg-muted);
206
- padding: 2rem;
207
- border-radius: 1.5rem;
208
- border: 1px solid var(--border-base);
209
- }
210
-
211
- .star-time-display {
212
- display: flex;
213
- flex-direction: column;
214
- align-items: center;
215
- margin-bottom: 1rem;
216
- }
217
-
218
- .star-time-value {
219
- font-size: 5rem;
220
- font-weight: 800;
221
- color: var(--color-amber, #f59e0b);
222
- line-height: 1;
223
- text-shadow: 0 0 30px rgba(245, 158, 11, 0.3);
224
- }
225
-
226
- .star-time-unit {
227
- font-size: 1.25rem;
228
- color: var(--text-muted, #94a3b8);
229
- text-transform: uppercase;
230
- letter-spacing: 0.1em;
231
- margin-top: 0.5rem;
232
- }
233
-
234
- .star-result-text {
235
- font-size: 0.95rem;
236
- color: var(--text-muted, #94a3b8);
237
- margin: 0;
238
- }
239
-
240
- .star-simulation {
241
- background: var(--bg-muted);
242
- padding: 1.5rem;
243
- border-radius: 1rem;
244
- border: 1px solid var(--border-base);
245
- }
246
-
247
- .star-sim-label {
248
- display: block;
249
- font-size: 0.85rem;
250
- color: var(--text-muted, #94a3b8);
251
- margin-bottom: 1rem;
252
- text-align: center;
253
- }
254
-
255
- .star-sim-container {
256
- height: 100px;
257
- background: radial-gradient(circle at center, #0f172a 0%, #020617 100%);
258
- border-radius: 0.5rem;
259
- position: relative;
260
- display: flex;
261
- align-items: center;
262
- justify-content: center;
263
- overflow: hidden;
264
- margin-bottom: 1rem;
265
- }
266
-
267
- .star-sim-view {
268
- position: relative;
269
- width: 100%;
270
- height: 100%;
271
- display: flex;
272
- align-items: center;
273
- justify-content: center;
274
- }
275
-
276
- .star-point {
277
- height: 4px;
278
- width: 4px;
279
- background: white;
280
- border-radius: 50%;
281
- box-shadow: 0 0 10px white;
282
- transition: width 0.3s ease, border-radius 0.3s ease;
283
- }
284
-
285
- .star-point.is-trail {
286
- background: linear-gradient(90deg, white, rgba(255, 255, 255, 0.1));
287
- }
288
-
289
- .star-center-marker {
290
- position: absolute;
291
- color: rgba(245, 158, 11, 0.3);
292
- font-size: 1.5rem;
293
- pointer-events: none;
294
- }
295
-
296
- .star-sim-info-row {
297
- text-align: center;
298
- font-size: 0.85rem;
299
- }
300
-
301
- .star-sim-info {
302
- color: var(--color-amber, #f59e0b);
303
- font-weight: 500;
304
- }
305
-
306
- .star-sim-range-wrapper {
307
- margin-top: 1rem;
308
- display: flex;
309
- flex-direction: column;
310
- gap: 0.5rem;
311
- }
312
-
313
- .star-sim-range-label {
314
- font-size: 0.75rem;
315
- color: var(--text-muted, #64748b);
316
- text-align: center;
317
- }
2
+ width: 100%;
3
+ max-width: 56rem;
4
+ margin: 0 auto;
5
+ }
@@ -1,332 +1,5 @@
1
1
  .tscope-wrapper {
2
- width: 100%;
3
- max-width: 56rem;
4
- margin: 0 auto;
5
- padding: 2.5rem;
6
- background: var(--bg-surface);
7
- border: 1px solid var(--border-base);
8
- border-radius: 2rem;
9
- box-shadow: 0 40px 80px -20px var(--shadow-base);
10
- position: relative;
11
- overflow: hidden;
12
- }
13
-
14
- .tscope-grid {
15
- display: grid;
16
- grid-template-columns: 1fr;
17
- gap: 2.5rem;
18
- position: relative;
19
- z-index: 1;
20
- }
21
-
22
- @media (min-width: 850px) {
23
- .tscope-grid {
24
- grid-template-columns: 1.1fr 1fr;
25
- gap: 3.5rem;
26
- }
27
- }
28
-
29
- .tscope-controls {
30
- display: flex;
31
- flex-direction: column;
32
- gap: 2rem;
33
- }
34
-
35
- .tscope-control-group {
36
- display: flex;
37
- flex-direction: column;
38
- gap: 0.85rem;
39
- }
40
-
41
- .tscope-control-label {
42
- font-size: 0.85rem;
43
- font-weight: 700;
44
- color: var(--text-muted, #94a3b8);
45
- text-transform: uppercase;
46
- letter-spacing: 0.05em;
47
- display: flex;
48
- justify-content: space-between;
49
- }
50
-
51
- .tscope-stepper {
52
- display: flex;
53
- align-items: center;
54
- background: var(--bg-muted);
55
- border: 1px solid var(--border-base);
56
- border-radius: 1rem;
57
- overflow: hidden;
58
- transition: border-color 0.3s ease;
59
- }
60
-
61
- .tscope-stepper:focus-within {
62
- border-color: var(--color-purple, #a855f7);
63
- }
64
-
65
- .tscope-step-btn {
66
- width: 4rem;
67
- height: 4rem;
68
- border: none;
69
- background: var(--bg-muted);
70
- color: var(--color-purple, #a855f7);
71
- font-size: 1.8rem;
72
- cursor: pointer;
73
- transition: all 0.2s ease;
74
- display: flex;
75
- align-items: center;
76
- justify-content: center;
77
- }
78
-
79
- .tscope-step-btn:hover {
80
- background: var(--bg-page);
81
- color: var(--color-purple, #a855f7);
82
- }
83
-
84
- .tscope-stepper-input {
85
- flex: 1;
86
- background: transparent;
87
- border: none;
88
- color: var(--text-base);
89
- text-align: center;
90
- font-size: 1.5rem;
91
- font-weight: 700;
92
- outline: none;
93
- width: 100%;
94
- }
95
-
96
- .tscope-select-wrapper {
97
- position: relative;
98
- width: 100%;
99
- }
100
-
101
- .tscope-select-arrow {
102
- position: absolute;
103
- right: 0.875rem;
104
- top: 50%;
105
- transform: translateY(-50%);
106
- width: 1rem;
107
- height: 1rem;
108
- color: var(--color-purple, #a855f7);
109
- pointer-events: none;
110
- }
111
-
112
- .tscope-select {
113
- appearance: none;
114
- -webkit-appearance: none;
115
- width: 100%;
116
- background: var(--bg-muted);
117
- border: 1px solid var(--border-base);
118
- color: var(--text-base);
119
- padding: 1rem 3rem 1rem 1.25rem;
120
- border-radius: 1rem;
121
- font-size: 0.95rem;
122
- font-weight: 600;
123
- outline: none;
124
- cursor: pointer;
125
- transition: border-color 0.3s ease;
126
- }
127
-
128
- .tscope-select:hover {
129
- border-color: var(--color-purple, #a855f7);
130
- }
131
-
132
- .tscope-select:focus {
133
- border-color: var(--color-purple, #a855f7);
134
- }
135
-
136
- .tscope-select option {
137
- background: var(--bg-surface);
138
- color: var(--text-base);
139
- }
140
-
141
- .tscope-range {
142
- width: 100%;
143
- appearance: none;
144
- background: var(--bg-muted);
145
- height: 10px;
146
- border-radius: 20px;
147
- outline: none;
148
- cursor: pointer;
149
- border: 1px solid var(--border-base);
150
- accent-color: var(--color-purple, #a855f7);
151
- }
152
-
153
- .tscope-results {
154
- display: flex;
155
- flex-direction: column;
156
- gap: 2.5rem;
157
- padding: 0.5rem;
158
- }
159
-
160
- .tscope-main-result {
161
- text-align: center;
162
- background: var(--bg-muted);
163
- padding: 3rem 2rem;
164
- border-radius: 2rem;
165
- border: 1px solid var(--border-base);
166
- }
167
-
168
- .tscope-result-title {
169
- font-size: 0.9rem;
170
- color: var(--color-purple, #a855f7);
171
- text-transform: uppercase;
172
- letter-spacing: 0.2em;
173
- margin: 0 0 2rem;
174
- }
175
-
176
- .tscope-resolution-value {
177
- display: flex;
178
- flex-direction: column;
179
- align-items: center;
180
- gap: 0.5rem;
181
- }
182
-
183
- .tscope-resolution-number {
184
- font-size: 6rem;
185
- font-weight: 900;
186
- line-height: 0.9;
187
- background: linear-gradient(to bottom, var(--text-base), var(--color-purple, #a855f7));
188
- -webkit-background-clip: text;
189
- -webkit-text-fill-color: transparent;
190
- background-clip: text;
191
- filter: drop-shadow(0 10px 20px rgba(168, 85, 247, 0.4));
192
- }
193
-
194
- .tscope-resolution-unit {
195
- font-size: 1.15rem;
196
- color: var(--text-muted, #94a3b8);
197
- font-weight: 600;
198
- text-transform: lowercase;
199
- opacity: 0.8;
200
- }
201
-
202
- .tscope-comp-grid {
203
- display: grid;
204
- grid-template-columns: 1fr 1fr;
205
- gap: 1.5rem;
206
- }
207
-
208
- .tscope-comp-card {
209
- background: var(--bg-muted);
210
- padding: 1.25rem;
211
- border-radius: 1.25rem;
212
- text-align: center;
213
- border: 1px solid var(--border-base);
214
- transition: transform 0.3s ease, border-color 0.2s ease;
215
- }
216
-
217
- .tscope-comp-card:hover {
218
- transform: translateY(-5px);
219
- border-color: var(--color-purple, #a855f7);
220
- }
221
-
222
- .tscope-comp-title {
223
- font-size: 0.75rem;
224
- color: var(--text-muted, #64748b);
225
- margin: 0 0 0.75rem;
226
- text-transform: uppercase;
227
- letter-spacing: 0.1em;
228
- }
229
-
230
- .tscope-comp-value {
231
- font-size: 1.75rem;
232
- font-weight: 800;
233
- color: var(--color-pink, #ec4899);
234
- }
235
-
236
- .tscope-seeing-alert {
237
- padding: 1.25rem;
238
- background: var(--bg-muted);
239
- border-left: 4px solid var(--color-warning, #f59e0b);
240
- border-radius: 0.75rem;
241
- font-size: 0.85rem;
242
- color: var(--text-muted);
243
- line-height: 1.6;
244
- display: block;
245
- }
246
-
247
- .tscope-seeing-alert.visible {
248
- animation: tscope-slide-in 0.4s ease-out;
249
- }
250
-
251
- @keyframes tscope-slide-in {
252
- from {
253
- opacity: 0;
254
- transform: translateX(-10px);
255
- }
256
- to {
257
- opacity: 1;
258
- transform: translateX(0);
259
- }
260
- }
261
-
262
- .tscope-visualization {
263
- background: var(--bg-muted);
264
- padding: 2rem;
265
- border-radius: 1.5rem;
266
- border: 1px solid var(--border-base);
267
- }
268
-
269
- .tscope-vis-label {
270
- display: block;
271
- font-size: 0.75rem;
272
- font-weight: 800;
273
- color: var(--text-muted, #475569);
274
- text-transform: uppercase;
275
- letter-spacing: 0.15em;
276
- margin-bottom: 2rem;
277
- text-align: center;
278
- }
279
-
280
- .tscope-sim-container {
281
- height: 140px;
282
- background: radial-gradient(circle at center, #0f172a 0%, #000 100%);
283
- border-radius: 1rem;
284
- display: flex;
285
- align-items: center;
286
- justify-content: center;
287
- position: relative;
288
- border: 1px solid rgba(168, 85, 247, 0.1);
289
- }
290
-
291
- .tscope-binary-system {
292
- display: flex;
293
- align-items: center;
294
- position: relative;
295
- padding: 2rem;
296
- }
297
-
298
- .tscope-star {
299
- width: 8px;
300
- height: 8px;
301
- background: white;
302
- border-radius: 50%;
303
- filter: blur(var(--star-blur, 0)) drop-shadow(0 0 10px #fff) drop-shadow(0 0 20px var(--color-purple, #a855f7));
304
- transition: all 0.5s ease;
305
- position: relative;
306
- z-index: 2;
307
- }
308
-
309
- .tscope-star::after {
310
- content: '';
311
- position: absolute;
312
- top: 50%;
313
- left: 50%;
314
- transform: translate(-50%, -50%);
315
- width: 200%;
316
- height: 200%;
317
- background: radial-gradient(circle, rgba(255, 255, 255, 0.2) 0%, transparent 70%);
318
- pointer-events: none;
319
- }
320
-
321
- .tscope-sim-explanation {
322
- margin-top: 1.5rem;
323
- font-size: 0.8rem;
324
- color: var(--text-muted);
325
- text-align: center;
326
- line-height: 1.6;
327
- letter-spacing: 0.02em;
328
- padding: 1rem;
329
- background: var(--bg-page);
330
- border-radius: 0.75rem;
331
- border: 1px dashed var(--border-base);
332
- }
2
+ width: 100%;
3
+ max-width: 56rem;
4
+ margin: 0 auto;
5
+ }
@@ -1,5 +0,0 @@
1
- .bortle-wrapper {
2
- width: 100%;
3
- max-width: 80rem;
4
- margin: 0 auto;
5
- }
@@ -1,5 +0,0 @@
1
- .scope-container {
2
- width: 100%;
3
- border-radius: 1.5rem;
4
- overflow: hidden;
5
- }
@@ -1,5 +0,0 @@
1
- .star-calc-wrapper {
2
- width: 100%;
3
- max-width: 56rem;
4
- margin: 0 auto;
5
- }
@@ -1,5 +0,0 @@
1
- .tscope-wrapper {
2
- width: 100%;
3
- max-width: 56rem;
4
- margin: 0 auto;
5
- }