/* Asgard visual refresh */
body {
  background:
    radial-gradient(circle at top right, rgba(255, 204, 23, .10), transparent 28rem),
    radial-gradient(circle at top left, rgba(53, 119, 191, .18), transparent 24rem),
    linear-gradient(180deg, #061326 0%, #081a2f 45%, #0a1f37 100%) fixed;
}
.sidebar { background: linear-gradient(180deg, rgba(7, 22, 42, .98), rgba(8, 27, 54, .98)); border-right-color: rgba(146, 181, 220, .16); }
.topbar, .public-header { background: rgba(6, 19, 38, .84); border-bottom-color: rgba(146, 181, 220, .14); backdrop-filter: blur(18px); }
.nav a { color: #dbe7f3; }
.nav a:hover { background: rgba(255,255,255,.04); }
.nav a.active { background: linear-gradient(90deg, rgba(255,204,23,.16), rgba(10,61,124,.24)); border-color: rgba(255,204,23,.18); }
.nav-icon, .nav-toggle, .topbar-icon-button, .sidebar-account, .section-tabs, .btn, .panel, .metric, .message-card, .vehicle-card { box-shadow: none; }
.panel, .metric, .message-card, .vehicle-card { background: linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.012)), rgba(13,32,56,.88); border-color: rgba(146, 181, 220, .14); }
.subpanel, .sidebar-account, .metric-card, .section-tabs, .btn, .calendar-day, .detail-list > div, .stat-list > div, .table-wrap table, .topbar-search, .notification-popover, .todo-card-menu-panel { background-color: rgba(9, 26, 48, .74); }
.btn-primary { color: #071321; background: linear-gradient(180deg, #ffe58b, #ffcc17); border-color: rgba(255, 204, 23, .5); }
.btn-primary:hover:not(:disabled) { background: linear-gradient(180deg, #fff1b9, #ffd84c); }
.btn-ghost { border-color: rgba(167, 195, 226, .18); background: rgba(255,255,255,.02); }
.metric.featured { background: linear-gradient(145deg, rgba(255,204,23,.12), rgba(10,61,124,.16)), rgba(13,32,56,.9); }
.public-brand span, .brand strong { letter-spacing: .22em; }
.public-header nav > a:first-child { color: #dfe9f7; }
.table-wrap { overflow-x: auto; }
.ranking-list { gap: .7rem; }
.ranking-list li { align-items: flex-start; padding: .85rem .95rem; background: linear-gradient(180deg, rgba(5,15,28,.86), rgba(8,17,31,.92)); border-color: rgba(255, 204, 23, .12); }
.ranking-list li > div { flex: 1; min-width: 0; }
.ranking-list strong, .ranking-list small { white-space: normal; overflow: visible; text-overflow: initial; overflow-wrap: anywhere; }
.ranking-list strong { line-height: 1.35; }
.ranking-list small { display: block; line-height: 1.45; }
.asgard-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, .72fr);
  align-items: center;
  gap: clamp(1.5rem, 3vw, 3rem);
  padding: clamp(1.4rem, 4vw, 3.5rem);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 28px;
  background:
    radial-gradient(circle at 78% 38%, rgba(255, 204, 23, .08), transparent 14rem),
    linear-gradient(135deg, rgba(8, 18, 34, .98), rgba(3, 9, 18, .98));
  box-shadow: 0 24px 80px rgba(0, 0, 0, .28);
}
.asgard-showcase-copy { display: grid; gap: 1.1rem; }
.asgard-kicker { color: #ffcc17; font-size: .84rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.asgard-showcase h1 { max-width: 9ch; margin: 0; color: #fffdf8; font-size: clamp(2.7rem, 6vw, 5rem); line-height: .94; }
.asgard-showcase p { max-width: 62ch; margin: 0; color: #d1dfef; font-size: 1rem; }
.asgard-hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.asgard-showcase-brand { display: grid; place-items: center; min-height: 100%; }
.asgard-showcase-logo { width: min(100%, 370px); max-height: 420px; object-fit: contain; filter: drop-shadow(0 24px 50px rgba(0, 0, 0, .30)); }
.asgard-recruitment-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 1rem; margin-top: .25rem; padding: 1rem 1.1rem; border: 1px solid rgba(255,204,23,.28); border-radius: 20px; background: linear-gradient(180deg, rgba(255,204,23,.09), rgba(255,204,23,.04)); }
.asgard-recruitment-card.is-closed { border-color: rgba(167,195,226,.18); background: linear-gradient(180deg, rgba(167,195,226,.08), rgba(167,195,226,.03)); }
.asgard-recruitment-icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(255,204,23,.35); color: #ffe58b; background: rgba(255,204,23,.06); font-size: 1.1rem; }
.asgard-recruitment-copy span { display: inline-block; margin-bottom: .35rem; padding: .24rem .65rem; border: 1px solid rgba(146, 234, 201, .35); border-radius: 999px; color: #b9f0de; font-size: .67rem; font-weight: 900; letter-spacing: .06em; }
.asgard-recruitment-copy strong { display: block; color: #fff4c8; font-family: Georgia, serif; font-size: 1.35rem; font-weight: 600; }
.asgard-recruitment-copy p { margin-top: .18rem; color: #d3dfeb; }
.asgard-menu-card { margin-top: 1.35rem; padding: 1.15rem; border: 1px solid rgba(146,181,220,.14); border-radius: 24px; background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.008)), rgba(13,32,56,.9); }
.asgard-menu-head { margin-bottom: 1rem; }
.asgard-menu-head h2 { margin: .1rem 0 .35rem; font-family: Georgia, serif; font-size: 1.7rem; font-weight: 600; }
.asgard-menu-head p { margin: 0; color: #b8c9da; }
.asgard-menu-frame { padding: clamp(.75rem, 2vw, 1.1rem); border: 1px solid rgba(255,255,255,.08); border-radius: 18px; background: linear-gradient(180deg, rgba(5, 16, 30, .88), rgba(10, 25, 44, .88)); }
.asgard-menu-frame img { width: 100%; height: auto; border-radius: 14px; object-fit: contain; background: #fff; }
.asgard-menu-empty { display: grid; place-items: center; min-height: 240px; text-align: center; color: #d1dfef; }
.asgard-editor { max-width: 860px; margin: 0 auto; padding: 1.5rem; border: 1px solid rgba(146,181,220,.16); border-radius: 24px; background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.008)), rgba(13,32,56,.92); }
.asgard-editor h1 { margin-bottom: .45rem; }
.asgard-editor p { color: #c5d4e4; }
.asgard-editor form { display: grid; gap: 1rem; margin: 1.25rem 0 1.5rem; }
.asgard-editor input[type=file] { width: 100%; padding: 1rem; border: 1px dashed rgba(146,181,220,.35); border-radius: 14px; color: #d5e1ec; background: rgba(255,255,255,.02); }
.asgard-menu-preview { max-width: 100%; max-height: 800px; object-fit: contain; background: #fff; border-radius: 14px; }
@media (max-width: 980px) {
  .asgard-showcase { grid-template-columns: 1fr; }
  .asgard-showcase h1 { max-width: none; }
}
@media (max-width: 760px) {
  .asgard-recruitment-card { grid-template-columns: 1fr; }
  .asgard-showcase { padding: 1.2rem; }
}
