css-pkg-01 1.3.0 → 1.4.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.
@@ -0,0 +1,167 @@
1
+ :root {
2
+ --bg: #041214;
3
+ --surface: #0a2226;
4
+ --surface-light: #11363c;
5
+ --accent: #ffd166;
6
+ --accent-glow: rgba(255, 209, 102, 0.3);
7
+ --accent2: #14b8a6;
8
+ --accent2-glow: rgba(20, 184, 166, 0.3);
9
+ --text: #effcff;
10
+ --muted: #8fb0b3;
11
+ --font-display: 'Russo One', sans-serif;
12
+ --font-body: 'Open Sans', sans-serif;
13
+ }
14
+
15
+ /* Base Reset */
16
+ * { box-sizing: border-box; margin: 0; padding: 0; }
17
+ body { font-family: var(--font-body); background-color: var(--bg); color: var(--text); line-height: 1.6; -webkit-font-smoothing: antialiased; }
18
+ a { color: var(--accent2); text-decoration: none; transition: all 0.3s ease; }
19
+ a:hover { color: var(--accent); }
20
+ h1, h2, h3, h4, .brand { font-family: var(--font-display); font-weight: normal; }
21
+ .container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
22
+
23
+ /* Header (Part A1 Stylings) */
24
+ header { background-color: #02090a; border-bottom: 1px solid var(--surface-light); position: sticky; top: 0; z-index: 1000; }
25
+ .header-inner { display: flex; justify-content: space-between; align-items: center; height: 70px; }
26
+ .brand { font-size: 1.5rem; color: var(--text); display: flex; align-items: center; gap: 8px; text-transform: uppercase; letter-spacing: 1px; }
27
+ .brand span { color: var(--accent); }
28
+
29
+ .nav-links { display: none; }
30
+ .header-actions { display: flex; gap: 10px; align-items: center; }
31
+ .btn { padding: 10px 18px; border-radius: 4px; font-family: var(--font-display); font-size: 0.85rem; text-transform: uppercase; cursor: pointer; text-align: center; transition: 0.3s; }
32
+ .btn-primary { background: var(--accent); color: #000; border: none; box-shadow: 0 0 10px var(--accent-glow); }
33
+ .btn-primary:hover { background: #ffdf99; box-shadow: 0 0 20px var(--accent-glow); transform: translateY(-2px); }
34
+ .btn-secondary { background: transparent; color: var(--accent2); border: 1px solid var(--accent2); }
35
+ .btn-secondary:hover { background: rgba(20, 184, 166, 0.1); box-shadow: 0 0 15px var(--accent2-glow); }
36
+ .mobile-toggle { display: block; background: none; border: none; color: var(--text); font-size: 1.8rem; cursor: pointer; padding: 5px; }
37
+
38
+ .header-actions .btn { display: none; } /* Hidden on very small screens */
39
+
40
+ @media (min-width: 1024px) {
41
+ .nav-links { display: flex; gap: 24px; }
42
+ .nav-links a { color: var(--text); font-weight: 600; font-size: 0.9rem; text-transform: uppercase; letter-spacing: 0.5px; }
43
+ .nav-links a:hover { color: var(--accent2); text-shadow: 0 0 8px var(--accent2-glow); }
44
+ .mobile-toggle { display: none; }
45
+ .header-actions .btn { display: block; }
46
+ }
47
+
48
+ /* Mobile Nav Active State */
49
+ .nav-links.active { display: flex; flex-direction: column; position: absolute; top: 70px; left: 0; width: 100%; background: #02090a; padding: 20px; border-bottom: 2px solid var(--accent2); box-shadow: 0 10px 20px rgba(0,0,0,0.5); }
50
+
51
+ /* Hero Stadium Banner */
52
+ .hero-stadium {
53
+ position: relative;
54
+ padding: 50px 0 60px;
55
+ background: radial-gradient(circle at 80% 20%, var(--surface-light) 0%, var(--bg) 60%);
56
+ border-bottom: 1px solid var(--surface);
57
+ overflow: hidden;
58
+ }
59
+ .hero-stadium::before {
60
+ content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%;
61
+ background: repeating-linear-gradient(45deg, rgba(20, 184, 166, 0.03) 0px, rgba(20, 184, 166, 0.03) 2px, transparent 2px, transparent 15px);
62
+ z-index: 0; pointer-events: none;
63
+ }
64
+ .hero-stadium-inner { position: relative; z-index: 1; }
65
+
66
+ .breadcrumb { font-size: 0.85rem; color: var(--muted); margin-bottom: 20px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
67
+ .breadcrumb a { color: var(--accent2); }
68
+ .breadcrumb span { color: var(--text); }
69
+
70
+ h1 { font-size: clamp(2rem, 5vw, 3.5rem); color: var(--accent); line-height: 1.1; margin-bottom: 20px; text-transform: uppercase; text-shadow: 0 0 20px var(--accent-glow); max-width: 900px; }
71
+
72
+ .meta-chips { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 30px; }
73
+ .chip { background: rgba(20, 184, 166, 0.1); border: 1px solid var(--accent2); padding: 6px 14px; border-radius: 20px; font-size: 0.85rem; font-weight: 600; color: var(--accent2); display: inline-flex; align-items: center; gap: 6px; }
74
+ .chip::before { content: ''; display: inline-block; width: 8px; height: 8px; background: var(--accent2); border-radius: 50%; box-shadow: 0 0 5px var(--accent2); }
75
+
76
+ .intro-box { background: linear-gradient(135deg, rgba(10, 34, 38, 0.8) 0%, rgba(4, 18, 20, 0.9) 100%); border-left: 4px solid var(--accent); padding: 25px; border-radius: 0 12px 12px 0; font-size: 1.1rem; color: var(--text); max-width: 900px; position: relative; box-shadow: 10px 10px 30px rgba(0,0,0,0.5); }
77
+ .intro-box::after { content: '✦'; position: absolute; top: 15px; right: 20px; font-size: 2rem; color: var(--surface-light); opacity: 0.5; }
78
+
79
+ /* Main Content Arena */
80
+ .content-arena { padding: 60px 0; display: grid; gap: 50px; }
81
+
82
+ .stadium-section { position: relative; max-width: 900px; }
83
+ .section-title { font-size: clamp(1.5rem, 3vw, 2rem); color: var(--text); margin-bottom: 25px; padding-bottom: 12px; border-bottom: 1px solid var(--surface-light); position: relative; display: inline-block; width: 100%; }
84
+ .section-title::after { content: ''; position: absolute; left: 0; bottom: -1px; width: 60px; height: 3px; background: var(--accent2); box-shadow: 0 0 10px var(--accent2-glow); }
85
+
86
+ .stadium-section p { margin-bottom: 20px; color: #c8e1e4; font-size: 1.05rem; }
87
+ .stadium-section p a { border-bottom: 1px dashed var(--accent2); }
88
+ .stadium-section p a:hover { border-bottom-style: solid; color: var(--accent); }
89
+
90
+ /* Custom Lists */
91
+ .ace-list { list-style: none; margin: 25px 0; display: grid; gap: 15px; }
92
+ .ace-list li { position: relative; padding-left: 35px; background: rgba(10, 34, 38, 0.4); padding: 15px 15px 15px 45px; border-radius: 6px; border: 1px solid transparent; transition: 0.3s; }
93
+ .ace-list li:hover { border-color: var(--surface-light); background: rgba(10, 34, 38, 0.8); }
94
+ .ace-list li::before { content: ''; position: absolute; left: 15px; top: 18px; width: 14px; height: 14px; background: var(--accent2); clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%); box-shadow: 0 0 8px var(--accent2-glow); }
95
+
96
+ /* Specific Section Stylings */
97
+ /* Golden Card */
98
+ .golden-section .ace-list li { border-left: 3px solid var(--accent); background: linear-gradient(90deg, rgba(255, 209, 102, 0.05) 0%, transparent 100%); }
99
+ .golden-section .ace-list li::before { background: var(--accent); box-shadow: 0 0 8px var(--accent-glow); clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%); }
100
+
101
+ /* Combo Multiplier */
102
+ .combo-list li { transform: skewX(-3deg); border-left: 4px solid; }
103
+ .combo-list li:nth-child(1) { border-color: var(--muted); margin-left: 0; }
104
+ .combo-list li:nth-child(2) { border-color: var(--accent2); margin-left: 15px; }
105
+ .combo-list li:nth-child(3) { border-color: var(--accent); margin-left: 30px; }
106
+ @media (max-width: 768px) { .combo-list li { margin-left: 0 !important; transform: none; } }
107
+
108
+ /* Strategy Grid */
109
+ .strategy-grid { display: grid; grid-template-columns: 1fr; gap: 15px; margin: 25px 0; list-style: none; }
110
+ @media (min-width: 600px) { .strategy-grid { grid-template-columns: 1fr 1fr; } }
111
+ .strategy-grid li { background: var(--surface); border: 1px solid var(--surface-light); padding: 20px; border-radius: 8px; position: relative; overflow: hidden; padding-left: 20px; }
112
+ .strategy-grid li::before { display: none; } /* reset base list */
113
+ .strategy-grid li::after { content: ''; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--accent2); }
114
+
115
+ /* FAQ Section */
116
+ .faq-arena { margin-top: 20px; max-width: 900px; }
117
+ details { background: var(--surface); margin-bottom: 15px; border: 1px solid var(--surface-light); border-radius: 6px; overflow: hidden; transition: 0.3s; }
118
+ details:hover { border-color: var(--accent2); box-shadow: 0 0 15px rgba(20, 184, 166, 0.1); }
119
+ summary { padding: 20px; font-family: var(--font-display); font-size: 1.1rem; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; color: var(--accent); }
120
+ summary::-webkit-details-marker { display: none; }
121
+ summary::after { content: '▼'; font-size: 0.9rem; color: var(--accent2); transition: transform 0.3s; }
122
+ details[open] summary::after { transform: rotate(180deg); }
123
+ details p { padding: 0 20px 20px; margin: 0; color: #c8e1e4; border-top: 1px solid rgba(255,255,255,0.05); margin-top: -5px; padding-top: 15px; }
124
+
125
+ /* Related Links Arena */
126
+ .related-arena { margin: 60px 0; padding: 40px; background: var(--surface); border-radius: 12px; border: 1px solid var(--surface-light); position: relative; overflow: hidden; }
127
+ .related-arena::before { content: ''; position: absolute; top: -50px; right: -50px; width: 150px; height: 150px; background: var(--accent2); filter: blur(100px); opacity: 0.2; }
128
+ .related-arena h3 { font-size: 1.5rem; margin-bottom: 25px; text-align: center; }
129
+ .related-grid { display: grid; grid-template-columns: 1fr; gap: 15px; }
130
+ @media (min-width: 768px) { .related-grid { grid-template-columns: repeat(3, 1fr); } }
131
+ .related-item { background: var(--bg); border: 1px solid var(--surface-light); border-radius: 8px; text-align: center; transition: 0.3s; position: relative; overflow: hidden; }
132
+ .related-item a { display: block; padding: 20px; font-family: var(--font-display); font-size: 1.1rem; color: var(--text); z-index: 2; position: relative; }
133
+ .related-item::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 3px; background: var(--accent2); transform: scaleX(0); transition: 0.3s; transform-origin: left; }
134
+ .related-item:hover { transform: translateY(-5px); border-color: var(--accent2); box-shadow: 0 10px 20px rgba(0,0,0,0.3); }
135
+ .related-item:hover::before { transform: scaleX(1); }
136
+ .related-item:hover a { color: var(--accent); }
137
+
138
+ /* CTA Arena */
139
+ .cta-arena { text-align: center; padding: 60px 20px; background: linear-gradient(0deg, var(--surface) 0%, var(--bg) 100%); border-top: 2px dashed var(--surface-light); margin-top: 40px; }
140
+ .cta-arena h2 { font-size: clamp(1.8rem, 4vw, 2.5rem); color: var(--accent); margin-bottom: 15px; text-transform: uppercase; }
141
+ .cta-arena p { font-size: 1.1rem; color: var(--muted); margin-bottom: 30px; max-width: 600px; margin-left: auto; margin-right: auto; }
142
+ .cta-buttons { display: flex; justify-content: center; gap: 15px; flex-wrap: wrap; }
143
+ .btn-large { padding: 15px 30px; font-size: 1.1rem; letter-spacing: 1px; }
144
+
145
+ /* Footer (Part A2 Stylings) */
146
+ footer { background-color: #02090a; padding: 50px 0 20px; border-top: 2px solid var(--surface); }
147
+ .footer-grid { display: grid; grid-template-columns: 1fr; gap: 40px; margin-bottom: 40px; }
148
+ @media (min-width: 768px) { .footer-grid { grid-template-columns: 2fr 1fr 1fr; } }
149
+ .footer-brand h2 { margin-bottom: 15px; font-size: 2rem; color: var(--text); text-transform: uppercase; }
150
+ .footer-brand span { color: var(--accent); }
151
+ .footer-tagline { color: var(--muted); font-size: 0.95rem; line-height: 1.5; max-width: 300px; }
152
+ .footer-links-group h4 { color: var(--text); margin-bottom: 20px; font-size: 1.1rem; border-bottom: 1px solid var(--surface-light); padding-bottom: 10px; display: inline-block; }
153
+ .footer-links-group a { display: block; color: var(--muted); margin-bottom: 12px; font-size: 0.95rem; }
154
+ .footer-links-group a:hover { color: var(--accent2); transform: translateX(5px); }
155
+ .footer-bottom { text-align: center; color: var(--muted); font-size: 0.85rem; border-top: 1px solid var(--surface-light); padding-top: 20px; }
156
+
157
+
158
+ /* pipeline image & layout guards */
159
+ html, body { overflow-x: clip; }
160
+ img { max-width: 100%; height: auto; }
161
+ img.site-logo { height: 40px; width: auto; max-width: 240px; object-fit: contain; flex: none; }
162
+ header .logo a { display: inline-flex; align-items: center; flex: none; text-decoration: none; }
163
+ img.hero-visual { width: 100%; max-width: 560px; height: auto; object-fit: cover; border-radius: 16px; display: block; margin-inline: auto; }
164
+ img[class^="strip-"], img[class*=" strip-"] { width: 100%; height: auto; display: block; border-radius: 12px; object-fit: cover; }
165
+ /* 合规声明块(zb-disclaimer,全站 footer) */
166
+ .zb-disclaimer { margin-top: 18px; padding-top: 14px; border-top: 1px solid color-mix(in srgb, currentColor 22%, transparent); font-size: .72rem; line-height: 1.65; opacity: .8; display: grid; gap: 6px; }
167
+ .zb-disclaimer .zb-18 { justify-self: start; display: inline-flex; align-items: center; padding: 2px 10px; border: 1.5px solid currentColor; border-radius: 8px; font-weight: 800; letter-spacing: 1px; }