|
|
@@ -54,17 +54,19 @@ header nav { display: flex; align-items: center; flex-wrap: wrap; gap: var(--gri
|
|
|
|
|
|
.nav-menu { display: inline-block; position: relative; }
|
|
|
|
|
|
-.nav-menu > summary {
|
|
|
+.nav-menu > summary,
|
|
|
+.nav-item {
|
|
|
border-radius: 6px;
|
|
|
cursor: pointer;
|
|
|
display: inline-flex;
|
|
|
align-items: center;
|
|
|
gap: 0.3rem;
|
|
|
- list-style: none;
|
|
|
padding: 0.3rem 0.6rem;
|
|
|
user-select: none;
|
|
|
}
|
|
|
|
|
|
+.nav-menu > summary { list-style: none; }
|
|
|
+
|
|
|
.nav-menu > summary::-webkit-details-marker { display: none; }
|
|
|
|
|
|
.nav-menu > summary::after {
|
|
|
@@ -75,7 +77,8 @@ header nav { display: flex; align-items: center; flex-wrap: wrap; gap: var(--gri
|
|
|
}
|
|
|
|
|
|
.nav-menu > summary:hover,
|
|
|
-.nav-menu[open] > summary { background: var(--line-soft); }
|
|
|
+.nav-menu[open] > summary,
|
|
|
+.nav-item:hover { background: var(--line-soft); }
|
|
|
|
|
|
.nav-menu[open] > summary::after { transform: rotate(180deg); }
|
|
|
|
|
|
@@ -103,6 +106,26 @@ header nav { display: flex; align-items: center; flex-wrap: wrap; gap: var(--gri
|
|
|
|
|
|
.nav-dropdown a:hover { background: var(--line-soft); }
|
|
|
|
|
|
+.nav-dropdown button {
|
|
|
+ background: none;
|
|
|
+ border: none;
|
|
|
+ border-radius: 6px;
|
|
|
+ cursor: pointer;
|
|
|
+ padding: 0.35rem 0.6rem;
|
|
|
+ text-align: left;
|
|
|
+ white-space: nowrap;
|
|
|
+}
|
|
|
+
|
|
|
+.nav-dropdown button:hover { background: var(--line-soft); }
|
|
|
+
|
|
|
+.nav-dropdown .nav-user {
|
|
|
+ border-bottom: 1px solid var(--line-soft);
|
|
|
+ font-weight: 600;
|
|
|
+ padding: 0.35rem 0.6rem 0.5rem;
|
|
|
+}
|
|
|
+
|
|
|
+.nav-auth .nav-dropdown { left: auto; right: 0; }
|
|
|
+
|
|
|
/* Hover/focus surface the panel of a closed menu; [open] pins it.
|
|
|
The content-visibility override accompanies display because modern
|
|
|
engines hide a closed <details>' slot content that way. */
|