Spaces:
Running
Running
Jimin Huang
commited on
Commit
·
83579f2
1
Parent(s):
b72d93e
Change settings
Browse files- src/components/HeaderOpen.vue +27 -11
src/components/HeaderOpen.vue
CHANGED
|
@@ -28,6 +28,7 @@
|
|
| 28 |
</nav>
|
| 29 |
</div>
|
| 30 |
|
|
|
|
| 31 |
<div class="ama-gradient-rule" />
|
| 32 |
</header>
|
| 33 |
</template>
|
|
@@ -42,12 +43,22 @@ export default {
|
|
| 42 |
}
|
| 43 |
</script>
|
| 44 |
|
| 45 |
-
|
|
|
|
| 46 |
:root{
|
| 47 |
-
|
| 48 |
-
--ama-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
}
|
|
|
|
| 50 |
|
|
|
|
|
|
|
| 51 |
.arena-header{
|
| 52 |
position: sticky; top: 0; z-index: 50;
|
| 53 |
background: linear-gradient(135deg,#fbfcff 0%,#ffffff 100%);
|
|
@@ -55,22 +66,21 @@ export default {
|
|
| 55 |
backdrop-filter: blur(8px);
|
| 56 |
}
|
| 57 |
|
| 58 |
-
/* row */
|
| 59 |
.bar{
|
| 60 |
max-width: 1200px;
|
| 61 |
margin: 0 auto;
|
| 62 |
-
padding:
|
| 63 |
display: flex;
|
| 64 |
align-items: center;
|
| 65 |
justify-content: space-between;
|
| 66 |
gap: 16px;
|
| 67 |
}
|
| 68 |
|
| 69 |
-
/*
|
| 70 |
.arena-title{
|
| 71 |
all: unset;
|
| 72 |
cursor: pointer;
|
| 73 |
-
font-size:
|
| 74 |
font-weight: 900;
|
| 75 |
letter-spacing: -0.01em;
|
| 76 |
background-image: linear-gradient(90deg, rgb(var(--ama-start)), rgb(var(--ama-end)));
|
|
@@ -79,15 +89,18 @@ export default {
|
|
| 79 |
color: transparent;
|
| 80 |
}
|
| 81 |
|
| 82 |
-
/*
|
| 83 |
.menu{
|
| 84 |
display: flex; gap: 28px; align-items: center; flex-wrap: wrap;
|
| 85 |
}
|
|
|
|
| 86 |
.menu-item{
|
| 87 |
cursor: pointer; position: relative;
|
| 88 |
-
font-size:
|
| 89 |
padding-bottom: 4px; transition: color .2s ease;
|
| 90 |
}
|
|
|
|
|
|
|
| 91 |
.menu-item:hover{ color: rgb(var(--ama-end)); }
|
| 92 |
.menu-item::after{
|
| 93 |
content:''; position:absolute; left:0; bottom:0; height:2px; width:0%;
|
|
@@ -95,6 +108,8 @@ export default {
|
|
| 95 |
transition: width .25s ease;
|
| 96 |
}
|
| 97 |
.menu-item:hover::after{ width:100%; }
|
|
|
|
|
|
|
| 98 |
.menu-item.active{
|
| 99 |
background-image: linear-gradient(90deg, rgb(var(--ama-start)), rgb(var(--ama-end)));
|
| 100 |
-webkit-background-clip:text; background-clip:text; color:transparent;
|
|
@@ -113,10 +128,11 @@ export default {
|
|
| 113 |
);
|
| 114 |
}
|
| 115 |
|
| 116 |
-
/* responsive
|
| 117 |
@media (max-width: 720px){
|
| 118 |
.bar{ flex-direction: column; align-items: stretch; }
|
| 119 |
.menu{ justify-content: center; gap: 18px; }
|
| 120 |
-
.arena-title{ text-align: center; }
|
|
|
|
| 121 |
}
|
| 122 |
</style>
|
|
|
|
| 28 |
</nav>
|
| 29 |
</div>
|
| 30 |
|
| 31 |
+
<!-- AMA gradient hairline -->
|
| 32 |
<div class="ama-gradient-rule" />
|
| 33 |
</header>
|
| 34 |
</template>
|
|
|
|
| 43 |
}
|
| 44 |
</script>
|
| 45 |
|
| 46 |
+
<!-- GLOBAL (UNSCOPED) — brand tokens must NOT be scoped -->
|
| 47 |
+
<style>
|
| 48 |
:root{
|
| 49 |
+
/* AMA brand gradient: rgb(0,0,185) → rgb(240,0,15) */
|
| 50 |
+
--ama-start: 0, 0, 185;
|
| 51 |
+
--ama-end: 240, 0, 15;
|
| 52 |
+
|
| 53 |
+
/* Podium palette (kept for future use) */
|
| 54 |
+
--gold: #D4AF37;
|
| 55 |
+
--silver: #C0C0C0;
|
| 56 |
+
--bronze: #CD7F32;
|
| 57 |
}
|
| 58 |
+
</style>
|
| 59 |
|
| 60 |
+
<!-- COMPONENT STYLES -->
|
| 61 |
+
<style scoped>
|
| 62 |
.arena-header{
|
| 63 |
position: sticky; top: 0; z-index: 50;
|
| 64 |
background: linear-gradient(135deg,#fbfcff 0%,#ffffff 100%);
|
|
|
|
| 66 |
backdrop-filter: blur(8px);
|
| 67 |
}
|
| 68 |
|
|
|
|
| 69 |
.bar{
|
| 70 |
max-width: 1200px;
|
| 71 |
margin: 0 auto;
|
| 72 |
+
padding: 16px 16px 12px;
|
| 73 |
display: flex;
|
| 74 |
align-items: center;
|
| 75 |
justify-content: space-between;
|
| 76 |
gap: 16px;
|
| 77 |
}
|
| 78 |
|
| 79 |
+
/* Title (left) with AMA gradient text */
|
| 80 |
.arena-title{
|
| 81 |
all: unset;
|
| 82 |
cursor: pointer;
|
| 83 |
+
font-size: 26px;
|
| 84 |
font-weight: 900;
|
| 85 |
letter-spacing: -0.01em;
|
| 86 |
background-image: linear-gradient(90deg, rgb(var(--ama-start)), rgb(var(--ama-end)));
|
|
|
|
| 89 |
color: transparent;
|
| 90 |
}
|
| 91 |
|
| 92 |
+
/* Tabs (right) */
|
| 93 |
.menu{
|
| 94 |
display: flex; gap: 28px; align-items: center; flex-wrap: wrap;
|
| 95 |
}
|
| 96 |
+
|
| 97 |
.menu-item{
|
| 98 |
cursor: pointer; position: relative;
|
| 99 |
+
font-size: 22px; font-weight: 700; color: #1f2937;
|
| 100 |
padding-bottom: 4px; transition: color .2s ease;
|
| 101 |
}
|
| 102 |
+
|
| 103 |
+
/* hover color + underline */
|
| 104 |
.menu-item:hover{ color: rgb(var(--ama-end)); }
|
| 105 |
.menu-item::after{
|
| 106 |
content:''; position:absolute; left:0; bottom:0; height:2px; width:0%;
|
|
|
|
| 108 |
transition: width .25s ease;
|
| 109 |
}
|
| 110 |
.menu-item:hover::after{ width:100%; }
|
| 111 |
+
|
| 112 |
+
/* active = gradient text + full underline */
|
| 113 |
.menu-item.active{
|
| 114 |
background-image: linear-gradient(90deg, rgb(var(--ama-start)), rgb(var(--ama-end)));
|
| 115 |
-webkit-background-clip:text; background-clip:text; color:transparent;
|
|
|
|
| 128 |
);
|
| 129 |
}
|
| 130 |
|
| 131 |
+
/* responsive */
|
| 132 |
@media (max-width: 720px){
|
| 133 |
.bar{ flex-direction: column; align-items: stretch; }
|
| 134 |
.menu{ justify-content: center; gap: 18px; }
|
| 135 |
+
.arena-title{ text-align: center; font-size: 22px; }
|
| 136 |
+
.menu-item{ font-size: 18px; }
|
| 137 |
}
|
| 138 |
</style>
|