:root {
  --nexus-bg: #f5f5f7;
  --nexus-card: rgba(255,255,255,.88);
  --nexus-text: #111827;
  --nexus-muted: #667085;
  --nexus-line: rgba(15,23,42,.08);
  --nexus-blue: #1677ff;
  --nexus-blue-dark: #0759d5;
  --nexus-success: #16a34a;
  --nexus-danger: #e5484d;
  --nexus-shadow: 0 18px 50px rgba(15,23,42,.08);
  --nexus-soft-shadow: 0 8px 24px rgba(15,23,42,.06);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--nexus-bg); }
body.nexus-app {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 10% 0%, rgba(22,119,255,.11), transparent 29rem),
    radial-gradient(circle at 100% 20%, rgba(114,46,209,.08), transparent 28rem),
    var(--nexus-bg);
  color: var(--nexus-text);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  padding-top: calc(76px + env(safe-area-inset-top));
}
body.has-bottom-nav { padding-bottom: calc(100px + env(safe-area-inset-bottom)); }
button, input, select, textarea { font: inherit; }
a { text-decoration: none; }

.nexus-topbar {
  position: fixed;
  z-index: 80;
  top: 0;
  left: 0;
  right: 0;
  height: calc(72px + env(safe-area-inset-top));
  padding-top: env(safe-area-inset-top);
  background: rgba(248,249,251,.76);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border-bottom: 1px solid rgba(255,255,255,.72);
}
.nexus-topbar-inner {
  max-width: 1180px;
  height: 72px;
  margin: 0 auto;
  padding: 0 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.nexus-brand { display: inline-flex; align-items: center; gap: 11px; color: var(--nexus-text); min-width: 0; }
.nexus-brand-mark {
  width: 39px; height: 39px; border-radius: 13px;
  display: grid; place-items: center; overflow: hidden;
  background: linear-gradient(145deg, #101828, #344054);
  box-shadow: 0 8px 20px rgba(16,24,40,.18), inset 0 1px 0 rgba(255,255,255,.18);
  color: #fff; font: 800 17px Manrope, sans-serif;
}
.nexus-brand-mark img { width: 100%; height: 100%; object-fit: cover; }
.nexus-brand-copy { display: grid; line-height: 1.05; min-width: 0; }
.nexus-brand-copy strong { font: 800 15px Manrope, sans-serif; letter-spacing: -.25px; white-space: nowrap; }
.nexus-brand-copy small { margin-top: 5px; color: var(--nexus-muted); font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.nexus-brand-copy small span { color: var(--nexus-blue); margin-right: 3px; }
.nexus-top-actions { display: flex; align-items: center; gap: 9px; }
.nexus-icon-button {
  width: 40px; height: 40px; border-radius: 14px; display: grid; place-items: center;
  color: #168bd2; background: rgba(255,255,255,.78); border: 1px solid rgba(15,23,42,.06);
  box-shadow: 0 5px 16px rgba(15,23,42,.05); transition: .2s ease;
}
.nexus-icon-button:hover { transform: translateY(-1px); background: #fff; box-shadow: var(--nexus-soft-shadow); }
.nexus-icon-button i { font-size: 18px; }
.nexus-login-pill {
  min-height: 40px; padding: 0 16px; border-radius: 999px; display: inline-flex; align-items: center; gap: 8px;
  color: #fff; font-size: 12px; font-weight: 700; background: linear-gradient(135deg, var(--nexus-blue), #5b8cff);
  box-shadow: 0 10px 24px rgba(22,119,255,.22);
}
.nexus-profile-menu { position: relative; }
.nexus-profile-menu summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 8px; padding: 4px 8px 4px 4px; border-radius: 999px; background: rgba(255,255,255,.74); border: 1px solid rgba(15,23,42,.06); user-select: none; }
.nexus-profile-menu summary::-webkit-details-marker { display: none; }
.nexus-avatar { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; overflow: hidden; color: #fff; background: linear-gradient(145deg, #1677ff, #7a5af8); font-size: 12px; font-weight: 800; }
.nexus-avatar img { width: 100%; height: 100%; object-fit: cover; }
.nexus-profile-name { max-width: 100px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; font-weight: 700; }
.nexus-profile-menu summary > i { color: #98a2b3; font-size: 9px; }
.nexus-profile-dropdown { position: absolute; top: calc(100% + 10px); right: 0; min-width: 200px; padding: 8px; background: rgba(255,255,255,.96); backdrop-filter: blur(20px); border: 1px solid var(--nexus-line); border-radius: 18px; box-shadow: var(--nexus-shadow); }
.nexus-profile-dropdown a { display: flex; align-items: center; gap: 10px; padding: 11px 12px; border-radius: 12px; color: #344054; font-size: 12px; font-weight: 650; }
.nexus-profile-dropdown a:hover { background: #f2f4f7; }
.nexus-profile-dropdown a.danger { color: var(--nexus-danger); }
.nexus-profile-dropdown i { width: 16px; text-align: center; }

.nexus-main { width: 100%; min-height: calc(100vh - 140px); }
.nexus-main > div { position: relative; }

/* Upgrade komponen lama tanpa mengubah fungsi halaman. */
.nexus-main [class*="rounded-[2px]"] { border-radius: 20px !important; }
.nexus-main [class*="border-[#dddddd]"] { border-color: var(--nexus-line) !important; }
.nexus-main .bg-white,
.nexus-main [class*="bg-[#f9f9f9]"] {
  background: var(--nexus-card) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.nexus-main .bg-white[class*="border"],
.nexus-main [class*="bg-[#f9f9f9]"][class*="border"] { box-shadow: var(--nexus-soft-shadow); }
.nexus-main input:not([type="checkbox"]):not([type="radio"]),
.nexus-main select,
.nexus-main textarea {
  min-height: 46px;
  border-radius: 14px !important;
  background: rgba(248,250,252,.92) !important;
  border-color: rgba(15,23,42,.09) !important;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.nexus-main textarea { min-height: 92px; }
.nexus-main input:focus,
.nexus-main select:focus,
.nexus-main textarea:focus { background: #fff !important; border-color: rgba(22,119,255,.55) !important; box-shadow: 0 0 0 4px rgba(22,119,255,.1) !important; outline: none !important; }
.nexus-main button,
.nexus-main a[class*="bg-blue-500"],
.nexus-main button[class*="bg-blue-500"] { border-radius: 14px !important; }
.nexus-main .bg-blue-500 { background: linear-gradient(135deg, var(--nexus-blue), #4d8dff) !important; }
.nexus-main .hover\:bg-blue-600:hover { background: linear-gradient(135deg, var(--nexus-blue-dark), #397ef5) !important; }
.nexus-main table { border-collapse: separate; border-spacing: 0; }
.nexus-main thead { background: rgba(248,250,252,.86) !important; }
.nexus-main tr { transition: background .18s ease; }
.nexus-main tbody tr:hover { background: rgba(22,119,255,.035) !important; }
.nexus-main [class*="fixed inset-0"] > [class*="bg-white"] { border-radius: 26px !important; box-shadow: 0 26px 90px rgba(15,23,42,.22) !important; }

.nexus-footer { max-width: 1180px; margin: 34px auto 0; padding: 24px 24px 120px; display: flex; align-items: center; justify-content: space-between; gap: 18px; color: var(--nexus-muted); }
.nexus-footer > div { display: grid; gap: 3px; }
.nexus-footer strong { color: #344054; font: 800 13px Manrope, sans-serif; }
.nexus-footer span { font-size: 10px; letter-spacing: .05em; text-transform: uppercase; }
.nexus-footer a { display: inline-flex; align-items: center; gap: 8px; color: #168bd2; font-size: 11px; font-weight: 700; }

.nexus-bottom-nav {
  position: fixed; z-index: 75; left: 50%; bottom: calc(14px + env(safe-area-inset-bottom)); transform: translateX(-50%);
  width: min(560px, calc(100% - 24px)); min-height: 70px; padding: 8px;
  display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 4px;
  border: 1px solid rgba(255,255,255,.75); border-radius: 25px;
  background: rgba(255,255,255,.82); backdrop-filter: blur(26px) saturate(180%); -webkit-backdrop-filter: blur(26px) saturate(180%);
  box-shadow: 0 18px 55px rgba(15,23,42,.17), inset 0 1px 0 rgba(255,255,255,.85);
}
.nexus-bottom-nav a { position: relative; min-width: 0; border-radius: 18px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; color: #98a2b3; transition: .22s ease; }
.nexus-bottom-nav a i { font-size: 16px; }
.nexus-bottom-nav a span { max-width: 100%; font-size: 9px; font-weight: 750; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nexus-bottom-nav a.active { color: var(--nexus-blue); background: rgba(22,119,255,.09); }
.nexus-bottom-nav a.active::after { content: ""; position: absolute; top: 5px; width: 4px; height: 4px; border-radius: 50%; background: var(--nexus-blue); }
.nexus-bottom-nav a:active { transform: scale(.95); }

.nexus-support-bubble { position: fixed; z-index: 70; right: max(18px, calc((100vw - 1180px)/2)); bottom: 24px; min-height: 48px; padding: 0 16px 0 13px; display: inline-flex; align-items: center; gap: 9px; border-radius: 999px; color: #fff; background: linear-gradient(135deg, #229ed9, #168bd2); box-shadow: 0 14px 34px rgba(34,158,217,.3); font-size: 11px; font-weight: 750; }
.nexus-support-bubble.with-bottom-nav { bottom: calc(100px + env(safe-area-inset-bottom)); }
.nexus-support-bubble i { font-size: 19px; }

.nexus-toast-container { position: fixed; z-index: 200; top: calc(86px + env(safe-area-inset-top)); left: 50%; transform: translateX(-50%); width: min(92%, 420px); display: grid; gap: 9px; pointer-events: none; }
.nexus-toast { opacity: 0; transform: translateY(-10px) scale(.98); display: flex; align-items: center; gap: 10px; padding: 13px 15px; border: 1px solid rgba(15,23,42,.07); border-radius: 16px; background: rgba(255,255,255,.95); box-shadow: var(--nexus-shadow); color: #344054; font-size: 12px; font-weight: 650; transition: .25s ease; }
.nexus-toast.show { opacity: 1; transform: translateY(0) scale(1); }
.nexus-toast.success i { color: var(--nexus-success); }
.nexus-toast.error i { color: var(--nexus-danger); }
.nexus-toast.info i { color: var(--nexus-blue); }
.is-loading { opacity: .72; cursor: wait !important; }

@media (max-width: 640px) {
  body.nexus-app { padding-top: calc(70px + env(safe-area-inset-top)); }
  .nexus-topbar { height: calc(66px + env(safe-area-inset-top)); }
  .nexus-topbar-inner { height: 66px; padding: 0 16px; }
  .nexus-brand-mark { width: 36px; height: 36px; border-radius: 12px; }
  .nexus-brand-copy strong { font-size: 14px; }
  .nexus-brand-copy small { font-size: 8px; }
  .nexus-profile-name { display: none; }
  .nexus-profile-menu summary { padding-right: 5px; }
  .nexus-profile-menu summary > i { display: none; }
  .nexus-main > div { padding-left: 16px !important; padding-right: 16px !important; }
  .nexus-footer { padding-left: 18px; padding-right: 18px; flex-direction: column; text-align: center; }
  .nexus-support-bubble { right: 16px; width: 48px; padding: 0; justify-content: center; }
  .nexus-support-bubble span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Premium page primitives */
.nexus-shell { max-width: 1120px; margin: 0 auto; padding: 34px 24px 48px; }
.nexus-public-shell { padding-top: 24px; }
.nexus-hero-card {
  position: relative; overflow: hidden; min-height: 520px; padding: 62px;
  display: grid; grid-template-columns: minmax(0,1.15fr) minmax(280px,.85fr); align-items: center; gap: 44px;
  border: 1px solid rgba(255,255,255,.85); border-radius: 36px;
  background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(246,249,255,.8));
  box-shadow: 0 30px 90px rgba(15,23,42,.10);
}
.nexus-hero-card::before { content: ""; position: absolute; width: 340px; height: 340px; border-radius: 50%; right: -90px; top: -100px; background: radial-gradient(circle, rgba(22,119,255,.18), rgba(22,119,255,0) 66%); }
.nexus-hero-copy { position: relative; z-index: 2; }
.nexus-eyebrow { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 999px; color: var(--nexus-blue); background: rgba(22,119,255,.08); font-size: 10px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.nexus-hero-copy h1 { max-width: 650px; margin: 20px 0 18px; color: #101828; font: 800 clamp(38px, 5vw, 66px)/1.02 Manrope, sans-serif; letter-spacing: -.055em; }
.nexus-hero-copy h1 span { color: var(--nexus-blue); }
.nexus-hero-copy > p { max-width: 600px; margin: 0; color: #667085; font-size: 15px; line-height: 1.75; }
.nexus-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.nexus-primary-action, .nexus-secondary-action { min-height: 50px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border-radius: 16px; font-size: 12px; font-weight: 800; }
.nexus-primary-action { color: #fff; background: linear-gradient(135deg, #1677ff, #5a8cff); box-shadow: 0 13px 30px rgba(22,119,255,.22); }
.nexus-secondary-action { color: #344054; background: rgba(255,255,255,.86); border: 1px solid rgba(15,23,42,.08); }
.nexus-trust-row { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; color: #667085; font-size: 10px; font-weight: 700; }
.nexus-trust-row i { color: var(--nexus-success); margin-right: 4px; }
.nexus-phone-preview { position: relative; justify-self: center; width: min(100%, 310px); min-height: 460px; padding: 24px 17px 18px; border: 7px solid #111827; border-radius: 42px; background: #f8fafc; box-shadow: 0 38px 70px rgba(15,23,42,.22); transform: rotate(2deg); }
.nexus-phone-notch { position: absolute; top: 9px; left: 50%; transform: translateX(-50%); width: 88px; height: 20px; border-radius: 999px; background: #111827; }
.nexus-preview-head { margin: 14px 3px 20px; display: flex; justify-content: space-between; color: #344054; font-size: 11px; font-weight: 800; }
.nexus-preview-balance { padding: 22px; border-radius: 26px; color: #fff; background: linear-gradient(145deg, #1677ff, #6d5dfc); box-shadow: 0 18px 34px rgba(22,119,255,.25); }
.nexus-preview-balance small { display: block; opacity: .76; font-size: 9px; }
.nexus-preview-balance strong { display: block; margin: 8px 0 24px; font: 800 25px Manrope, sans-serif; }
.nexus-preview-balance > div { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.nexus-preview-balance > div span { padding: 10px; border-radius: 14px; text-align: center; background: rgba(255,255,255,.17); font-size: 9px; font-weight: 750; }
.nexus-preview-list { margin-top: 18px; padding: 18px; border: 1px solid rgba(15,23,42,.06); border-radius: 24px; background: #fff; box-shadow: var(--nexus-soft-shadow); }
.nexus-preview-list > small { color: #98a2b3; font-size: 9px; font-weight: 700; }
.nexus-preview-list > div { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 10px; padding: 13px 0; border-bottom: 1px solid #f2f4f7; }
.nexus-preview-list > div:last-child { border-bottom: 0; }
.nexus-preview-list > div > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 12px; color: var(--nexus-blue); background: rgba(22,119,255,.08); }
.nexus-preview-list span { display: grid; gap: 2px; }
.nexus-preview-list b { color: #344054; font-size: 9px; }
.nexus-preview-list span small { color: #98a2b3; font-size: 8px; }
.nexus-preview-list strong { color: #344054; font-size: 8px; }
.nexus-metric-grid, .nexus-summary-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 20px; }
.nexus-metric-grid article, .nexus-summary-grid article { position: relative; min-height: 130px; padding: 22px; overflow: hidden; border: 1px solid rgba(255,255,255,.8); border-radius: 24px; background: rgba(255,255,255,.84); box-shadow: var(--nexus-soft-shadow); }
.nexus-metric-grid article span, .nexus-summary-grid article span { display: block; color: #667085; font-size: 10px; font-weight: 700; }
.nexus-metric-grid article strong, .nexus-summary-grid article strong { display: block; max-width: calc(100% - 42px); margin-top: 12px; color: #101828; font: 800 clamp(18px,2.5vw,26px) Manrope,sans-serif; overflow-wrap: anywhere; }
.nexus-metric-grid article > i, .nexus-summary-grid article > i { position: absolute; right: 18px; bottom: 18px; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 15px; color: var(--nexus-blue); background: rgba(22,119,255,.08); }
.nexus-section-heading { max-width: 700px; margin: 74px auto 30px; text-align: center; }
.nexus-section-heading span, .nexus-page-intro span, .nexus-card-heading span { color: var(--nexus-blue); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.nexus-section-heading h2 { margin: 10px 0; color: #101828; font: 800 clamp(27px,4vw,42px)/1.15 Manrope,sans-serif; letter-spacing: -.04em; }
.nexus-section-heading p { color: #667085; font-size: 13px; line-height: 1.7; }
.nexus-feature-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.nexus-feature-grid article { padding: 24px; border: 1px solid rgba(255,255,255,.8); border-radius: 24px; background: rgba(255,255,255,.82); box-shadow: var(--nexus-soft-shadow); }
.nexus-feature-grid article > div { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 15px; color: var(--nexus-blue); background: rgba(22,119,255,.08); }
.nexus-feature-grid h3 { margin: 20px 0 8px; color: #101828; font: 800 15px Manrope,sans-serif; }
.nexus-feature-grid p { margin: 0; color: #667085; font-size: 11px; line-height: 1.65; }
.nexus-final-cta { margin-top: 26px; padding: 34px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-radius: 30px; color: #fff; background: linear-gradient(135deg, #101828, #344054); box-shadow: 0 24px 60px rgba(15,23,42,.19); }
.nexus-final-cta span { color: #84adff; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.nexus-final-cta h2 { max-width: 640px; margin: 7px 0 0; font: 800 clamp(22px,3vw,32px)/1.2 Manrope,sans-serif; }
.nexus-final-cta a { min-height: 48px; padding: 0 18px; flex: 0 0 auto; display: inline-flex; align-items: center; gap: 9px; border-radius: 15px; color: #101828; background: #fff; font-size: 11px; font-weight: 800; }
.nexus-page-intro { margin-bottom: 22px; display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.nexus-page-intro h1 { margin: 5px 0 4px; color: #101828; font: 800 clamp(27px,4vw,40px) Manrope,sans-serif; letter-spacing: -.035em; }
.nexus-page-intro p { margin: 0; color: #667085; font-size: 12px; }
.nexus-soft-action { min-height: 43px; padding: 0 15px; display: inline-flex; align-items: center; gap: 8px; border: 1px solid rgba(15,23,42,.07); border-radius: 14px; color: #344054; background: rgba(255,255,255,.82); box-shadow: var(--nexus-soft-shadow); font-size: 10px; font-weight: 800; }
.nexus-balance-card { position: relative; overflow: hidden; padding: 30px; border-radius: 30px; color: #fff; background: linear-gradient(135deg, #0d62db, #4f8cff 58%, #7a5af8); box-shadow: 0 28px 58px rgba(22,119,255,.25); }
.nexus-balance-card::after { content: ""; position: absolute; right: -80px; top: -90px; width: 260px; height: 260px; border-radius: 50%; background: rgba(255,255,255,.10); }
.nexus-balance-top { position: relative; z-index: 2; display: flex; justify-content: space-between; align-items: center; }
.nexus-balance-top span { font-size: 11px; font-weight: 700; opacity: .8; }
.nexus-balance-top button { width: 36px; height: 36px; display: grid; place-items: center; border: 0; border-radius: 13px; color: #fff; background: rgba(255,255,255,.14); cursor: pointer; }
.nexus-balance-value { position: relative; z-index: 2; margin: 14px 0 32px; font: 800 clamp(32px,6vw,52px) Manrope,sans-serif; letter-spacing: -.045em; }
.nexus-balance-actions { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.nexus-balance-actions a { min-height: 70px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; border-radius: 18px; color: #fff; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.09); font-size: 9px; font-weight: 750; }
.nexus-balance-actions a i { font-size: 15px; }
.nexus-list-card { margin-top: 20px; padding: 24px; border: 1px solid rgba(255,255,255,.8); border-radius: 27px; background: rgba(255,255,255,.86); box-shadow: var(--nexus-soft-shadow); }
.nexus-card-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; padding-bottom: 18px; border-bottom: 1px solid #f2f4f7; }
.nexus-card-heading h2 { margin: 5px 0 0; color: #101828; font: 800 20px Manrope,sans-serif; }
.nexus-card-heading a { color: var(--nexus-blue); font-size: 10px; font-weight: 800; }
.nexus-activity-list > a { display: grid; grid-template-columns: 46px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 15px 0; border-bottom: 1px solid #f2f4f7; color: #344054; }
.nexus-activity-list > a:last-child { border-bottom: 0; }
.nexus-activity-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 15px; color: var(--nexus-blue); background: rgba(22,119,255,.08); }
.nexus-activity-copy, .nexus-activity-value { display: grid; gap: 4px; }
.nexus-activity-copy strong, .nexus-activity-value strong { font-size: 11px; }
.nexus-activity-copy small, .nexus-activity-value small { color: #98a2b3; font-size: 9px; }
.nexus-activity-value { text-align: right; }
.nexus-activity-value .status-paid { color: var(--nexus-success); }
.nexus-activity-value .status-pending { color: #d97706; }
.nexus-activity-value .status-expired { color: var(--nexus-danger); }
.nexus-empty-state { padding: 48px 20px; text-align: center; }
.nexus-empty-state > i { width: 50px; height: 50px; display: grid; place-items: center; margin: 0 auto 14px; border-radius: 17px; color: var(--nexus-blue); background: rgba(22,119,255,.08); }
.nexus-empty-state h3 { margin: 0; font: 800 16px Manrope,sans-serif; }
.nexus-empty-state p { color: #667085; font-size: 10px; }
.nexus-empty-state a { display: inline-flex; margin-top: 8px; padding: 11px 15px; border-radius: 13px; color: #fff; background: var(--nexus-blue); font-size: 10px; font-weight: 800; }
.nexus-admin-hero { position: relative; overflow: hidden; padding: 32px; display: flex; justify-content: space-between; align-items: center; border-radius: 30px; color: #fff; background: linear-gradient(135deg, #101828, #344054); box-shadow: 0 24px 58px rgba(15,23,42,.18); }
.nexus-admin-hero span, .nexus-admin-hero small { display: block; color: rgba(255,255,255,.66); font-size: 10px; }
.nexus-admin-hero strong { display: block; margin: 9px 0 7px; font: 800 clamp(28px,5vw,46px) Manrope,sans-serif; }
.nexus-admin-hero > i { font-size: 72px; color: rgba(255,255,255,.12); }
.nexus-admin-summary { grid-template-columns: repeat(4,minmax(0,1fr)); }
.nexus-quick-admin { margin-top: 20px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.nexus-quick-admin a { padding: 18px; display: grid; grid-template-columns: 42px minmax(0,1fr) 18px; align-items: center; gap: 12px; color: #344054; border: 1px solid rgba(255,255,255,.8); border-radius: 22px; background: rgba(255,255,255,.84); box-shadow: var(--nexus-soft-shadow); }
.nexus-quick-admin a > i:first-child { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 14px; color: var(--nexus-blue); background: rgba(22,119,255,.08); }
.nexus-quick-admin span { display: grid; gap: 3px; }
.nexus-quick-admin strong { font-size: 11px; }
.nexus-quick-admin small { color: #98a2b3; font-size: 9px; }
.nexus-quick-admin a > i:last-child { color: #98a2b3; font-size: 10px; }

@media (max-width: 900px) {
  .nexus-hero-card { padding: 42px; grid-template-columns: 1fr; }
  .nexus-phone-preview { display: none; }
  .nexus-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .nexus-admin-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .nexus-shell { padding: 22px 16px 36px !important; }
  .nexus-hero-card { min-height: auto; padding: 34px 24px; border-radius: 28px; }
  .nexus-hero-copy h1 { font-size: 38px; }
  .nexus-hero-actions { display: grid; }
  .nexus-primary-action, .nexus-secondary-action { width: 100%; }
  .nexus-trust-row { display: grid; gap: 9px; }
  .nexus-metric-grid, .nexus-summary-grid { grid-template-columns: 1fr; }
  .nexus-feature-grid, .nexus-quick-admin { grid-template-columns: 1fr; }
  .nexus-final-cta { padding: 27px; align-items: flex-start; flex-direction: column; }
  .nexus-final-cta a { width: 100%; justify-content: center; }
  .nexus-page-intro { align-items: flex-start; }
  .nexus-page-intro .nexus-soft-action { width: 43px; padding: 0; justify-content: center; }
  .nexus-page-intro .nexus-soft-action:not(:has(span)) { font-size: 0; }
  .nexus-page-intro .nexus-soft-action i { font-size: 14px; }
  .nexus-balance-card { padding: 24px; border-radius: 27px; }
  .nexus-balance-value { margin-bottom: 24px; font-size: 36px; }
  .nexus-balance-actions { gap: 7px; }
  .nexus-balance-actions a { min-height: 64px; border-radius: 16px; }
  .nexus-activity-list > a { grid-template-columns: 42px minmax(0,1fr) auto; }
  .nexus-admin-summary { grid-template-columns: 1fr 1fr; }
}
.nexus-error-card { max-width: 620px; margin: 60px auto; padding: 48px 30px; text-align: center; border: 1px solid rgba(255,255,255,.82); border-radius: 30px; background: rgba(255,255,255,.88); box-shadow: var(--nexus-shadow); }
.nexus-error-card > span { color: var(--nexus-blue); font: 800 11px Manrope,sans-serif; letter-spacing: .12em; }
.nexus-error-icon { width: 66px; height: 66px; display: grid; place-items: center; margin: 18px auto; border-radius: 22px; color: var(--nexus-blue); background: rgba(22,119,255,.08); font-size: 25px; }
.nexus-error-card h1 { margin: 0; font: 800 28px Manrope,sans-serif; }
.nexus-error-card p { color: #667085; font-size: 12px; line-height: 1.7; }
.nexus-error-card > div:last-child { display: flex; justify-content: center; gap: 10px; margin-top: 22px; }
.nexus-error-card button, .nexus-error-card a { min-height: 44px; padding: 0 16px; display: inline-flex; align-items: center; gap: 8px; border: 0; border-radius: 14px; font-size: 10px; font-weight: 800; cursor: pointer; }
.nexus-error-card button { color: #344054; background: #f2f4f7; }
.nexus-error-card a { color: #fff; background: var(--nexus-blue); }

.nexus-logout-form { margin: 0; }
.nexus-profile-dropdown .nexus-logout-form button {
  width: 100%; border: 0; background: transparent; text-align: left; cursor: pointer;
  font: inherit;
}
