Enhance calculator modifiers and UI styling

This commit is contained in:
2026-01-14 20:44:19 +01:00
parent 9b5ddf5f3d
commit 5da0e5485a
4 changed files with 521 additions and 20 deletions
+159 -4
View File
@@ -56,6 +56,12 @@ h1 {
margin-bottom: 20px;
}
.af-body h2,
.af-body h3,
.af-body h4 {
color: #f8fafc;
}
.background-roster {
background-color: rgba(255, 255, 255, 0.8); /* Semi-transparent background for better readability */
padding: 20px;
@@ -579,26 +585,50 @@ body.menu-open {
.af-nav {
display: flex;
align-items: center;
gap: 12px;
gap: 10px;
padding: 6px;
border-radius: 999px;
background: rgba(15, 23, 42, 0.65);
border: 1px solid rgba(148, 163, 184, 0.3);
box-shadow: inset 0 0 0 1px rgba(56, 189, 248, 0.1);
}
.af-nav-link {
padding: 8px 16px;
position: relative;
padding: 10px 18px;
border-radius: 999px;
text-decoration: none;
font-weight: 600;
color: #e2e8f0;
background: rgba(148, 163, 184, 0.12);
background: transparent;
border: 1px solid transparent;
transition: all 0.2s ease;
}
.af-nav-link:hover {
border-color: rgba(56, 189, 248, 0.4);
background: rgba(56, 189, 248, 0.2);
background: rgba(56, 189, 248, 0.15);
color: #f8fafc;
}
.af-nav-link::after {
content: "";
position: absolute;
left: 16px;
right: 16px;
bottom: 6px;
height: 2px;
border-radius: 999px;
background: linear-gradient(90deg, rgba(56, 189, 248, 0), rgba(56, 189, 248, 0.9), rgba(34, 197, 94, 0.9), rgba(34, 197, 94, 0));
opacity: 0;
transition: opacity 0.2s ease;
}
.af-nav-link:hover::after,
.af-nav-link:focus-visible::after {
opacity: 1;
}
.af-nav-toggle {
display: none;
padding: 8px 16px;
@@ -842,6 +872,131 @@ body.menu-open {
margin-top: 20px;
}
.af-stat-grid {
display: grid;
gap: 16px;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
margin-top: 24px;
}
.af-stat-card {
padding: 16px;
border-radius: 16px;
border: 1px solid rgba(148, 163, 184, 0.2);
background: rgba(2, 6, 23, 0.6);
}
.af-stat-label {
margin: 0 0 6px;
font-size: 0.75rem;
text-transform: uppercase;
letter-spacing: 0.08em;
color: #94a3b8;
}
.af-stat-value {
margin: 0;
font-size: 1.4rem;
font-weight: 700;
color: #f8fafc;
}
.af-list {
margin: 16px 0 0;
padding-left: 20px;
color: #cbd5f5;
line-height: 1.7;
}
.af-pill-grid {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 16px;
}
.af-pill {
padding: 8px 12px;
border-radius: 999px;
background: rgba(56, 189, 248, 0.15);
border: 1px solid rgba(56, 189, 248, 0.35);
color: #e2e8f0;
font-size: 0.85rem;
font-weight: 600;
}
.af-modifier-stack {
display: grid;
gap: 18px;
margin-top: 16px;
}
.af-modifier-subset {
display: grid;
gap: 12px;
}
.af-modifier-title {
margin: 0;
font-size: 0.85rem;
text-transform: uppercase;
letter-spacing: 0.08em;
color: #94a3b8;
}
.af-checkbox-grid {
display: grid;
gap: 10px;
}
.af-checkbox {
display: flex;
gap: 10px;
align-items: flex-start;
padding: 12px;
border-radius: 12px;
border: 1px solid rgba(148, 163, 184, 0.2);
background: rgba(2, 6, 23, 0.55);
color: #e2e8f0;
font-size: 0.9rem;
line-height: 1.4;
}
.af-checkbox input[type="checkbox"] {
margin-top: 2px;
}
.af-checkbox.is-disabled {
opacity: 0.5;
}
.af-active-modifiers {
margin-top: 20px;
padding-top: 16px;
border-top: 1px solid rgba(148, 163, 184, 0.2);
}
.af-tag-list {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.af-tag {
padding: 6px 12px;
border-radius: 999px;
background: rgba(15, 23, 42, 0.8);
border: 1px solid rgba(148, 163, 184, 0.25);
color: #e2e8f0;
font-size: 0.8rem;
}
.af-empty-hint {
margin: 0;
color: #94a3b8;
font-size: 0.9rem;
}
@media (max-width: 820px) {
.af-header {
flex-wrap: wrap;