:root {
  --sanctum-bg: #050706;
  --sanctum-panel: #090d0b;
  --sanctum-green: #00FF66;
  --sanctum-text: #e8f1eb;
  --sanctum-muted: #7d8b82;
  --sanctum-border: #263129;
  --sanctum-danger: #ff695f;
  --sanctum-warn: #d7b85b;
  font-family: "Share Tech Mono", "IBM Plex Mono", "Courier New", monospace;
  color-scheme: dark;
}
* { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: hidden; }
html { background: var(--sanctum-bg); color: var(--sanctum-text); }
body { margin: 0; background: var(--sanctum-bg); font-size: 15px; letter-spacing: .025em; }
button, input, select { font: inherit; }
.topbar { height: 92px; border-bottom: 1px solid var(--sanctum-border); display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(24px,5vw,76px); }
.wordmark { display: flex; flex-direction: column; }
.wordmark span { color: var(--sanctum-green); font-size: 22px; letter-spacing: .22em; }
.wordmark small { color: var(--sanctum-muted); font-size: 12px; letter-spacing: .32em; margin-top: 5px; }
.testnet-flag { border: 1px solid var(--sanctum-green); color: var(--sanctum-green); font-size: 12px; letter-spacing: .2em; padding: 7px 11px; }
.top-actions { align-items: center; display: flex; gap: 25px; }
.text-button { background: none; border: 0; color: var(--sanctum-muted); cursor: pointer; letter-spacing: .12em; }
.text-button:hover { color: var(--sanctum-green); }
.nav-link, .vault-nav a, .confirmation-shell a { color: var(--sanctum-muted); font-size: 12px; letter-spacing: .14em; text-decoration: none; }
.nav-link:hover, .vault-nav a:hover, .vault-nav a.active { color: var(--sanctum-green); }
.vault-nav { align-items: center; display: flex; gap: 25px; }
.vault { margin: 0 auto; padding: 64px 0 90px; width: min(1180px,calc(100% - 48px)); }
.vault-heading, .section-title { align-items: flex-end; display: flex; justify-content: space-between; }
.vault-heading { margin-bottom: 42px; }
.eyebrow { color: var(--sanctum-green); font-size: 12px; letter-spacing: .2em; margin: 0 0 13px; }
.vault-heading h1 { font-size: clamp(25px,4vw,43px); font-weight: 400; letter-spacing: .08em; margin: 0; }
.health-mark { align-items: center; display: flex; gap: 13px; text-align: right; }
.health-mark > span { background: var(--sanctum-green); border-radius: 50%; box-shadow: 0 0 16px rgba(69,242,138,.65); height: 9px; width: 9px; }
.health-mark small { color: var(--sanctum-muted); display: block; font-size: 12px; letter-spacing: .15em; }
.health-mark strong { color: var(--sanctum-green); display: block; font-size: 16px; margin-top: 5px; }
[data-state=PROTECTED] strong, [data-state=UNAVAILABLE] strong { color: var(--sanctum-danger); }
[data-state=PROTECTED].health-mark > span, [data-state=UNAVAILABLE].health-mark > span { background: var(--sanctum-danger); }
[data-state=DEGRADED] strong, [data-state=NOT_CONFIGURED] strong { color: var(--sanctum-warn); }
[data-state=DEGRADED].health-mark > span { background: var(--sanctum-warn); }
.balance-grid { border: 1px solid var(--sanctum-border); display: grid; grid-template-columns: 3fr 1fr; }
.balance, .origin-count { padding: 40px; }
.origin-count { border-left: 1px solid var(--sanctum-border); }
.balance p, .origin-count p, .system-strip > p { color: var(--sanctum-muted); font-size: 12px; letter-spacing: .16em; margin: 0; }
.balance > div { align-items: baseline; display: flex; gap: 18px; margin: 20px 0 16px; }
.balance strong { color: var(--sanctum-green); font-size: clamp(42px,7.5vw,88px); font-weight: 400; letter-spacing: -.045em; line-height: .9; }
.balance span { color: var(--sanctum-green); font-size: 18px; }
.balance small, .origin-count small { color: var(--sanctum-muted); font-size: 13px; }
.origin-count strong { display: block; font-size: 72px; font-weight: 400; margin: 17px 0 12px; }
.system-strip { align-items: center; border: 1px solid var(--sanctum-border); border-top: 0; display: flex; gap: 24px; justify-content: space-between; padding: 22px 28px; }
.system-strip ul { display: flex; gap: 26px; list-style: none; margin: 0; padding: 0; }
.system-strip li { display: flex; flex-direction: column; gap: 5px; }
.system-strip li span { color: var(--sanctum-muted); font-size: 12px; }
.system-strip li strong { color: var(--sanctum-green); font-size: 13px; font-weight: 400; }
.holdings, .give-panel { margin-top: 82px; }
.section-title { margin-bottom: 24px; }
.section-title h2, .give-panel h2 { font-size: 30px; font-weight: 400; margin: 0; }
.section-title > span { color: var(--sanctum-muted); font-size: 13px; }
.origin { border-top: 1px solid var(--sanctum-border); }
.origin:last-child { border-bottom: 1px solid var(--sanctum-border); }
.origin summary { align-items: center; cursor: pointer; display: grid; gap: 20px; grid-template-columns: 55px 1fr 1fr 20px; list-style: none; min-height: 98px; padding: 18px 10px; }
.origin summary::-webkit-details-marker { display: none; }
.origin summary small { color: var(--sanctum-muted); display: block; font-size: 12px; margin-bottom: 8px; }
.origin summary b { font-size: 16px; font-weight: 400; }
.origin summary i { color: var(--sanctum-green); font-size: 21px; font-style: normal; transition: .2s; }
.origin[open] summary i { transform: rotate(45deg); }
.origin-index { color: var(--sanctum-green); font-size: 12px; }
.origin-detail { background: var(--sanctum-panel); border-left: 1px solid var(--sanctum-green); margin: 0 10px 25px 65px; padding: 28px; }
.origin-detail dl { display: grid; gap: 26px; grid-template-columns: repeat(3,1fr); margin: 0; }
.origin-detail dt { color: var(--sanctum-muted); font-size: 12px; margin-bottom: 8px; }
.origin-detail dd { font-size: 14px; margin: 0; }
.provenance { border-top: 1px solid var(--sanctum-border); color: var(--sanctum-green); font-size: 12px; margin: 28px 0 0; padding-top: 20px; }
.provenance span { background: var(--sanctum-green); border-radius: 50%; display: inline-block; height: 6px; margin-right: 8px; width: 6px; }
.give-panel { align-items: center; border: 1px solid var(--sanctum-border); display: flex; gap: 30px; justify-content: space-between; padding: 32px; }
.give-panel > div:last-child { max-width: 490px; text-align: right; }
.give-panel strong { color: var(--sanctum-warn); font-size: 12px; }
.give-panel p { color: var(--sanctum-muted); font-size: 12px; line-height: 1.6; margin: 8px 0 0; }
.give-panel form { display: grid; gap: 16px; min-width: min(100%, 480px); }
.give-panel label { color: var(--sanctum-muted); display: grid; font-size: 13px; gap: 8px; letter-spacing: .14em; }
.give-panel input, .give-panel select { background: var(--sanctum-bg); border: 1px solid var(--sanctum-border); color: var(--sanctum-text); min-height: 48px; padding: 0 14px; width: 100%; }
.primary-action, .secondary-action { border: 1px solid var(--sanctum-green); cursor: pointer; min-height: 48px; padding: 0 18px; }
.primary-action { background: var(--sanctum-green); color: #031007; }
.secondary-action { background: transparent; color: var(--sanctum-green); }
.primary-action:disabled, .secondary-action:disabled { cursor: wait; opacity: .55; }
.security-panel { align-items: center; border: 1px solid var(--sanctum-border); display: grid; gap: 24px; grid-template-columns: 1fr auto auto; margin-top: 82px; padding: 28px 32px; }
.security-panel h2 { font-size: 28px; font-weight: 400; margin: 0; }
.security-panel > strong { color: var(--sanctum-green); }
.ceremony-state { color: var(--sanctum-warn) !important; grid-column: 1/-1; margin: 0 !important; }
.give-review { align-items: flex-start; flex-wrap: wrap; }
.give-review dl, .receipt dl { display: grid; gap: 22px; grid-template-columns: repeat(2,minmax(150px,1fr)); margin: 0; min-width: min(100%,480px); }
.give-review dt, .receipt dt { color: var(--sanctum-muted); font-size: 12px; margin-bottom: 7px; }
.give-review dd, .receipt dd { margin: 0; }
.security-metrics { border: 1px solid var(--sanctum-border); display: grid; grid-template-columns: repeat(4,1fr); }
.readiness-summary { border: 1px solid var(--sanctum-border); margin-bottom: 24px; padding: 26px; }
.readiness-summary dl { display: grid; grid-template-columns: repeat(5,1fr); margin: 0; }
.readiness-summary dl div { border-right: 1px solid var(--sanctum-border); padding: 8px 18px; }
.readiness-summary dl div:last-child { border-right: 0; }
.readiness-summary dt { color: var(--sanctum-muted); font-size: 12px; margin-bottom: 10px; }
.readiness-summary dd { color: var(--sanctum-green); font-size: 12px; margin: 0; }
.security-metrics article { border-right: 1px solid var(--sanctum-border); min-height: 120px; padding: 28px; }
.security-metrics article:last-child { border-right: 0; }
.security-metrics small { color: var(--sanctum-muted); display: block; font-size: 12px; margin-bottom: 18px; }
.security-metrics strong { color: var(--sanctum-green); font-size: 17px; font-weight: 400; }
.security-system { border-top: 0; }
.control-section { margin-top: 78px; }
.security-record { align-items: start; border-top: 1px solid var(--sanctum-border); display: grid; gap: 25px; grid-template-columns: 1fr auto minmax(220px,auto); padding: 24px 10px; }
.security-record:last-child { border-bottom: 1px solid var(--sanctum-border); }
.security-record small, .security-record p { color: var(--sanctum-muted); font-size: 13px; }
.security-record h3 { font-size: 17px; font-weight: 400; margin: 8px 0 15px; }
.security-record > strong { color: var(--sanctum-green); font-size: 12px; }
.record-actions { display: grid; gap: 12px; }
.record-actions form { display: flex; gap: 10px; }
.record-actions label, .recovery-control label { color: var(--sanctum-muted); font-size: 12px; }
.record-actions input, .recovery-control textarea { background: var(--sanctum-bg); border: 1px solid var(--sanctum-border); color: var(--sanctum-text); display: block; margin-top: 7px; padding: 10px; width: 100%; }
.danger-action { background: transparent; border: 1px solid var(--sanctum-danger); color: var(--sanctum-danger); cursor: pointer; min-height: 44px; padding: 0 16px; }
.recovery-control { border: 1px solid var(--sanctum-border); padding: 32px; }
.recovery-status { border-left: 1px solid var(--sanctum-green); margin: 28px 0; padding: 5px 20px; }
.recovery-status strong { color: var(--sanctum-green); }
.recovery-status p, .recovery-control form p { color: var(--sanctum-muted); font-size: 13px; overflow-wrap: anywhere; }
.recovery-control form { display: grid; gap: 16px; }
.event-summary ul { list-style: none; margin: 0; padding: 0; }
.event-summary li { border-top: 1px solid var(--sanctum-border); display: flex; font-size: 12px; justify-content: space-between; padding: 16px 8px; }
.event-summary time { color: var(--sanctum-muted); }
.confirmation-shell { margin: 12vh auto; max-width: 760px; padding: 50px; width: calc(100% - 40px); }
.confirmation-shell h1 { font-size: clamp(30px,5vw,56px); font-weight: 400; }
.confirmation-shell > p:not(.eyebrow) { color: var(--sanctum-muted); line-height: 1.7; }
.confirmation-shell form { margin: 35px 0; }
.sanctus-inventory { margin-top: 55px; }
.sanctus-record { border: 1px solid var(--sanctum-border); display: grid; gap: 35px; grid-template-columns: minmax(240px,.8fr) 1.6fr; margin-top: 22px; padding: 38px; }
.sanctus-identity { border-right: 1px solid var(--sanctum-border); padding-right: 34px; }
.sanctus-identity h2 { font-size: clamp(25px,3vw,42px); font-weight: 400; letter-spacing: .03em; margin: 16px 0 35px; overflow-wrap: anywhere; }
.sanctus-identity > div { display: grid; gap: 10px; }
.sanctus-identity strong { color: var(--sanctum-green); font-size: 24px; font-weight: 400; }
.sanctus-identity span { color: var(--sanctum-muted); font-size: 12px; letter-spacing: .1em; }
.lifecycle-grid { display: grid; gap: 24px; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 0; }
.lifecycle-grid dt, .credential-ceremony dt { color: var(--sanctum-muted); font-size: 12px; margin-bottom: 7px; }
.lifecycle-grid dd, .credential-ceremony dd { font-size: 12px; margin: 0; overflow-wrap: anywhere; }
.sanctus-record form { display: grid; gap: 14px; grid-column: 1/-1; grid-template-columns: repeat(2,minmax(0,1fr)); }
.sanctus-record form button, .sanctus-record .activation-review { grid-column: 1/-1; }
.sanctus-record label, .operator-panel label { color: var(--sanctum-muted); font-size: 12px; }
.sanctus-record input, .operator-panel input, .operator-panel select { background: var(--sanctum-bg); border: 1px solid var(--sanctum-border); color: var(--sanctum-text); display: block; margin-top: 8px; min-height: 44px; padding: 10px; width: 100%; }
.activation-review { border-left: 1px solid var(--sanctum-green); padding: 10px 20px; }
.activation-review small { color: var(--sanctum-muted); display: block; font-size: 12px; margin-bottom: 8px; }
.activation-review strong { color: var(--sanctum-green); font-weight: 400; }
.operator-panel { border: 1px solid var(--sanctum-border); display: grid; gap: 50px; grid-template-columns: 1fr 1fr; margin-top: 78px; padding: 38px; }
.operator-panel h2 { font-size: 25px; font-weight: 400; }
.operator-panel p { color: var(--sanctum-muted); font-size: 12px; line-height: 1.7; }
.operator-panel form { display: grid; gap: 15px; }
.credential-ceremony dl { border: 1px solid var(--sanctum-border); display: grid; gap: 25px; margin: 30px 0; padding: 25px; }
.one-time-secret { color: var(--sanctum-green); font-family: monospace; font-size: 15px !important; overflow-wrap: anywhere; }
.empty-state { border: 1px solid var(--sanctum-border); color: var(--sanctum-muted); padding: 35px; }
.app-topbar { gap: 28px; }
.app-topbar .vault-nav { flex: 1; justify-content: center; }
.application-page .vault-heading small { color: var(--sanctum-muted); display: block; margin-top: 14px; }
.dashboard-grid { border: 1px solid var(--sanctum-border); display: grid; grid-template-columns: repeat(3,1fr); }
.dashboard-grid article { border-bottom: 1px solid var(--sanctum-border); border-right: 1px solid var(--sanctum-border); min-height: 135px; padding: 28px; }
.dashboard-grid article:nth-child(3n) { border-right: 0; }
.dashboard-grid article:nth-last-child(-n+3) { border-bottom: 0; }
.dashboard-grid small, .receive-card dt, .package-card dt { color: var(--sanctum-muted); display: block; font-size: 12px; margin-bottom: 18px; }
.dashboard-grid strong { color: var(--sanctum-green); display: block; font-size: 19px; font-weight: 400; overflow-wrap: anywhere; }
.dashboard-grid article p { color: var(--sanctum-muted); font-size: 13px; margin: 0 0 12px; }
.dashboard-grid .account-number { color: var(--sanctum-text); font-size: 14px; }
.action-row { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }
.action-row a, .receive-card button, .package-card>a { align-items: center; display: inline-flex; justify-content: center; text-decoration: none; }
.readiness-callout { border-left: 2px solid var(--sanctum-warn); margin-top: 28px; padding: 18px 24px; }
.readiness-callout strong { color: var(--sanctum-warn); }
.readiness-callout p { color: var(--sanctum-muted); }
.readiness-callout a { color: var(--sanctum-green); }
.receive-card { border: 1px solid var(--sanctum-border); padding: clamp(28px,6vw,68px); }
.receive-card h2 { color: var(--sanctum-green); font-size: clamp(20px,4vw,40px); font-weight: 400; overflow-wrap: anywhere; }
.receive-card dl { display: flex; gap: 45px; margin: 42px 0; }
.receive-card dd, .package-card dd { margin: 0; }
.receive-card>p:last-child, .instrument-card>p, .package-card>p { color: var(--sanctum-muted); line-height: 1.7; max-width: 720px; }
.copy-state { color: var(--sanctum-green); font-size: 13px; min-height: 18px; }
.give-grid { display: grid; gap: 24px; grid-template-columns: 1fr 1fr; }
.instrument-card, .package-card { border: 1px solid var(--sanctum-border); padding: 34px; }
.instrument-card h2, .package-card h2 { font-size: 25px; font-weight: 400; }
.instrument-card form { display: grid; gap: 18px; margin-top: 30px; }
.instrument-card label { color: var(--sanctum-muted); display: grid; font-size: 12px; gap: 9px; }
.instrument-card input, .instrument-card select { background: var(--sanctum-bg); border: 1px solid var(--sanctum-border); color: var(--sanctum-text); min-height: 49px; padding: 0 14px; width: 100%; }
.activity-list { border-top: 1px solid var(--sanctum-border); list-style: none; margin: 0; padding: 0; }
.activity-list li { align-items: center; border-bottom: 1px solid var(--sanctum-border); display: grid; gap: 24px; grid-template-columns: 190px 1fr auto; min-height: 84px; padding: 16px 10px; }
.activity-list time, .activity-list span { color: var(--sanctum-muted); font-size: 13px; }
.activity-list strong, .activity-list span { display: block; }
.activity-list span { margin-top: 7px; }
.activity-list b { color: var(--sanctum-green); font-weight: 400; }
.pagination { display: flex; justify-content: space-between; margin-top: 28px; }
.pagination a, .section-title a, .package-card a { color: var(--sanctum-green); font-size: 13px; text-decoration: none; }
.package-list { display: grid; gap: 24px; }
.compact-solids { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 60px; }
.compact-solids article { border: 1px solid var(--sanctum-border); padding: 22px; }
.compact-solids article+article { border-left: 0; }
.compact-solids strong, .compact-solids span, .compact-solids b { display: block; font-weight: 400; }
.compact-solids span { color: var(--sanctum-muted); font-size: 13px; margin: 12px 0; }
.compact-solids b { color: var(--sanctum-green); font-size: 12px; }
.package-card { display: grid; gap: 32px; grid-template-columns: .7fr 2fr auto; }
.package-card dl { display: grid; gap: 25px; grid-template-columns: repeat(3,1fr); margin: 0; }
footer { border-top: 1px solid var(--sanctum-border); color: var(--sanctum-muted); display: flex; font-size: 12px; justify-content: space-between; letter-spacing: .12em; padding: 24px clamp(24px,5vw,76px); }
.login-shell { display: grid; grid-template-columns: minmax(0,700px) 1fr; min-height: 100vh; }
.login-panel { border-right: 1px solid var(--sanctum-border); display: flex; flex-direction: column; justify-content: center; padding: clamp(30px,8vw,110px); }
.login-panel .testnet-flag { align-self: flex-start; margin: 75px 0 55px; }
.login-panel h1 { font-size: clamp(30px,5vw,52px); font-weight: 400; margin: 0 0 18px; max-width: 560px; }
.intro { color: var(--sanctum-muted); line-height: 1.7; max-width: 580px; }
.login-panel form { margin-top: 35px; max-width: 500px; }
.login-panel label { color: var(--sanctum-muted); display: block; font-size: 13px; letter-spacing: .15em; margin: 0 0 22px; }
.login-panel input:not([type=hidden]) { background: #070a08; border: 1px solid var(--sanctum-border); color: var(--sanctum-text); display: block; height: 54px; margin-top: 9px; outline: none; padding: 0 16px; width: 100%; }
.login-panel input:focus { border-color: var(--sanctum-green); }
.login-panel button[type=submit] { align-items: center; background: var(--sanctum-green); border: 0; color: #031007; cursor: pointer; display: flex; height: 57px; justify-content: space-between; margin-top: 8px; padding: 0 18px; width: 100%; }
.public-panel { gap: 22px; }
.public-nav, .public-actions { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 12px; }
.public-nav a { color: var(--sanctum-green); font-size: 12px; letter-spacing: .08em; text-decoration: none; }
.public-actions a { align-items: center; border: 1px solid var(--sanctum-green); color: var(--sanctum-green); display: inline-flex; justify-content: center; min-height: 44px; padding: 0 20px; text-decoration: none; }
.public-actions .primary-action { background: var(--sanctum-green); color: #031007; }
.readiness { border: 1px solid var(--sanctum-border); margin: 8px 0; max-width: 560px; }
.readiness div { display: grid; gap: 18px; grid-template-columns: minmax(120px,1fr) 2fr; padding: 12px 16px; }
.readiness div+div { border-top: 1px solid var(--sanctum-border); }
.readiness dt { color: var(--sanctum-muted); font-size: 12px; }
.readiness dd { color: var(--sanctum-text); margin: 0; overflow-wrap: anywhere; }
.local-note { color: #738078; font-size: 13px; margin-top: 25px; max-width: 500px; }
.notice { border-left: 2px solid var(--sanctum-danger); color: var(--sanctum-danger); padding: 10px 14px; }
.login-aside { color: var(--sanctum-muted); display: flex; flex-direction: column; justify-content: center; padding: 70px; }
.login-aside > span { color: var(--sanctum-green); }
.login-aside > div { background: var(--sanctum-border); height: 1px; margin: 25px 0; width: 100%; }
.login-aside p { font-size: clamp(22px,4vw,54px); letter-spacing: .08em; line-height: 1.2; }
@media(max-width:760px) {
  .topbar { height: 76px; padding: 0 18px; }
  .top-actions { gap: 12px; }
  .wordmark span { font-size: 17px; }
  .vault { padding: 42px 0 65px; width: calc(100% - 28px); }
  .vault-heading, .section-title, .give-panel { align-items: flex-start; flex-direction: column; gap: 30px; }
  .security-panel { align-items: start; grid-template-columns: 1fr; }
  .vault-nav { gap: 12px; }
  .security-metrics { grid-template-columns: 1fr 1fr; }
  .readiness-summary dl { grid-template-columns: 1fr 1fr; }
  .readiness-summary dl div { border-bottom: 1px solid var(--sanctum-border); }
  .security-metrics article:nth-child(2) { border-right: 0; }
  .security-metrics article:nth-child(-n+2) { border-bottom: 1px solid var(--sanctum-border); }
  .security-record { grid-template-columns: 1fr; }
  .record-actions form { align-items: stretch; flex-direction: column; }
  .recovery-control { padding: 22px; }
  .event-summary li { align-items: flex-start; flex-direction: column; gap: 8px; }
  .top-actions { align-items: flex-end; flex-direction: column; gap: 12px; }
  .vault-nav { flex-wrap: wrap; }
  .sanctus-record, .operator-panel { grid-template-columns: 1fr; padding: 24px; }
  .sanctus-identity { border-bottom: 1px solid var(--sanctum-border); border-right: 0; padding-bottom: 26px; padding-right: 0; }
  .lifecycle-grid, .sanctus-record form { grid-template-columns: 1fr; }
  .sanctus-record form button, .sanctus-record .activation-review { grid-column: 1; }
  .ceremony-state { grid-column: 1; }
  .health-mark { text-align: left; }
  .balance-grid { grid-template-columns: 1fr; }
  .balance, .origin-count { padding: 26px 22px; }
  .origin-count { border-left: 0; border-top: 1px solid var(--sanctum-border); }
  .balance strong { font-size: clamp(36px,12vw,58px); }
  .system-strip { align-items: flex-start; flex-direction: column; }
  .system-strip ul { display: grid; gap: 18px; grid-template-columns: repeat(3,1fr); width: 100%; }
  .origin summary { grid-template-columns: 30px 1fr 18px; }
  .origin summary > span:nth-child(3) { grid-column: 2; }
  .origin summary i { grid-column: 3; grid-row: 1/3; }
  .origin-detail { margin-left: 30px; padding: 20px; }
  .origin-detail dl { grid-template-columns: 1fr 1fr; }
  .give-panel > div:last-child { text-align: left; }
  .login-shell { grid-template-columns: 1fr; }
  .login-panel { border-right: 0; min-height: 100vh; padding: 30px 24px; }
  .public-panel { justify-content: flex-start; padding-top: 80px; }
  .public-nav { flex-direction: column; }
  .app-topbar { align-items: flex-start; flex-wrap: wrap; height: auto; padding-bottom: 18px; padding-top: 18px; }
  .app-topbar .vault-nav { justify-content: flex-start; order: 3; width: 100%; }
  .dashboard-grid, .give-grid { grid-template-columns: 1fr; }
  .compact-solids { grid-template-columns: 1fr; }
  .compact-solids article+article { border-left: 1px solid var(--sanctum-border); border-top: 0; }
  .dashboard-grid article, .dashboard-grid article:nth-child(3n), .dashboard-grid article:nth-last-child(-n+3) { border-bottom: 1px solid var(--sanctum-border); border-right: 0; }
  .dashboard-grid article:last-child { border-bottom: 0; }
  .activity-list li { align-items: flex-start; grid-template-columns: 1fr; gap: 9px; }
  .package-card { grid-template-columns: 1fr; }
  .package-card dl { grid-template-columns: 1fr 1fr; }
  .readiness div { grid-template-columns: 1fr; gap: 7px; }
  .login-aside { display: none; }
  footer { flex-direction: column; gap: 16px; padding: 20px 18px; }
}
@media(max-width:390px) {
  .top-actions .testnet-flag { display: none; }
  .origin-detail dl { grid-template-columns: 1fr; }
  .balance > div { gap: 10px; }
  .balance strong { font-size: 38px; }
}

/* Task 026A readable interface scale and consistent controls. */
body { font-size: 16px; line-height: 1.5; }
.wordmark small, .testnet-flag, .nav-link, .vault-nav a, .confirmation-shell a,
.eyebrow, .health-mark small, .balance p, .origin-count p, .system-strip > p,
.system-strip li span, .origin summary small, .origin-index, .origin-detail dt,
.provenance, .give-panel label, .give-review dt, .receipt dt, .readiness-summary dt,
.security-metrics small, .security-record > strong, .record-actions label,
.recovery-control label, .sanctus-identity span, .lifecycle-grid dt,
.credential-ceremony dt, .sanctus-record label, .operator-panel label,
.activation-review small, .dashboard-grid small, .receive-card dt, .package-card dt,
.instrument-card label, .compact-solids b, footer, .readiness dt { font-size: 12px; }
.balance small, .origin-count small, .system-strip li strong, .section-title > span,
.readiness-summary dd, .security-record small, .security-record p,
.recovery-status p, .recovery-control form p, .event-summary li,
.dashboard-grid article p, .copy-state, .activity-list time, .activity-list span,
.pagination a, .section-title a, .package-card a, .compact-solids span,
.local-note { font-size: 13px; line-height: 1.55; }
.operator-panel p, .instrument-card > p, .package-card > p,
.receive-card > p, .confirmation-shell > p { font-size: 14px; line-height: 1.7; }
.vault-heading h1 { font-size: clamp(32px,4vw,40px); line-height: 1.15; }
.section-title h2, .give-panel h2, .instrument-card h2, .package-card h2 { font-size: clamp(22px,3vw,28px); line-height: 1.2; }
.instrument-card h2 small { color: var(--sanctum-muted); display: block; font-size: 14px; margin-top: 7px; }
.integrity-context { color: var(--sanctum-muted); display: block; font-size: 12px; line-height: 1.45; margin-top: 8px; max-width: 290px; }
[data-state=NEUTRAL].health-mark > span { background: var(--sanctum-muted); box-shadow: none; }
[data-state=NEUTRAL] strong { color: var(--sanctum-text); }
.activation-code-help { color: var(--sanctum-muted); font-size: 13px !important; line-height: 1.6; margin: 0; }
input:not([type=hidden]), select, textarea { border-radius: 0; font-size: 16px; line-height: 1.4; outline: none; }
input:not([type=hidden]), select { min-height: 50px; padding: 0 15px; }
textarea { padding: 14px 15px; }
input:focus-visible, select:focus-visible, textarea:focus-visible, button:focus-visible, a:focus-visible { outline: 2px solid var(--sanctum-green); outline-offset: 3px; }
.primary-action, .secondary-action, .danger-action, button { min-height: 48px; }
.pin-change-form { display: grid; gap: 20px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.pin-change-form label { color: var(--sanctum-muted); display: grid; font-size: 12px; gap: 8px; letter-spacing: .12em; }
.pin-change-form input { background: var(--sanctum-bg); border: 1px solid var(--sanctum-border); color: var(--sanctum-text); width: 100%; }
.pin-change-form button { grid-column: 1/-1; justify-self: start; }
@media(max-width:700px) {
  .pin-change-form { grid-template-columns: 1fr; }
  .pin-change-form button { grid-column: 1; width: 100%; }
  .health-mark { max-width: 100%; }
  .integrity-context { max-width: 100%; }
}

/* Task 026B guided journey and progressive disclosure. */
.login-panel label small { color: var(--sanctum-muted); display: block; font-size: 13px; letter-spacing: 0; line-height: 1.45; margin-top: 7px; }
.form-error { color: var(--sanctum-danger); min-height: 24px; }
.onboarding-panel { max-width: 820px; }
.account-number-card { border: 1px solid var(--sanctum-border); display: grid; gap: 12px; margin: 24px 0; padding: 24px; }
.account-number-card small { color: var(--sanctum-muted); font-size: 12px; }
.account-number-card strong { color: var(--sanctum-green); font-size: clamp(17px,3vw,27px); overflow-wrap: anywhere; }
.setup-steps { list-style: none; margin: 25px 0; padding: 0; }
.setup-steps li { align-items: center; border-top: 1px solid var(--sanctum-border); display: grid; gap: 18px; grid-template-columns: 42px 1fr; padding: 18px 4px; }
.setup-steps li:last-child { border-bottom: 1px solid var(--sanctum-border); }
.setup-steps li > b { align-items: center; border: 1px solid var(--sanctum-border); display: flex; height: 34px; justify-content: center; width: 34px; }
.setup-steps span, .setup-steps small { display: block; }
.setup-steps small { color: var(--sanctum-muted); font-size: 13px; margin-top: 5px; }
.setup-steps .complete > b, .setup-steps .complete small { color: var(--sanctum-green); }
.passkey-actions { align-items: stretch; display: flex; flex-wrap: wrap; gap: 12px; }
.passkey-help, .text-link { color: var(--sanctum-muted); font-size: 14px; line-height: 1.6; }
.text-link { display: inline-block; margin-top: 18px; }
.vault-primary { border: 1px solid var(--sanctum-border); display: grid; grid-template-columns: 2fr 1fr 1fr; }
.vault-primary article { border-right: 1px solid var(--sanctum-border); min-height: 170px; padding: 30px; }
.vault-primary article:last-child { border-right: 0; }
.vault-primary small, .setup-required dt { color: var(--sanctum-muted); display: block; font-size: 12px; margin-bottom: 15px; }
.vault-primary strong { color: var(--sanctum-green); display: block; font-size: 22px; font-weight: 400; overflow-wrap: anywhere; }
.hero-balance strong { font-size: clamp(30px,5vw,52px); }
.vault-primary p { color: var(--sanctum-muted); font-size: 14px; }
.advanced-details { border: 1px solid var(--sanctum-border); margin-top: 70px; }
.advanced-details > summary { color: var(--sanctum-green); cursor: pointer; font-size: 14px; letter-spacing: .12em; min-height: 54px; padding: 17px 22px; }
.advanced-details .dashboard-grid, .advanced-details .system-strip { border-left: 0; border-right: 0; }
.setup-required { border: 1px solid var(--sanctum-border); max-width: 760px; padding: clamp(28px,5vw,56px); }
.setup-required h2 { font-size: 28px; font-weight: 400; }
.setup-required > p { color: var(--sanctum-muted); line-height: 1.7; }
.setup-required dl { display: grid; grid-template-columns: repeat(3,1fr); margin: 30px 0; }
.setup-required dl div { border-right: 1px solid var(--sanctum-border); padding: 12px 20px; }
.setup-required dl div:last-child { border-right: 0; }
.setup-required dd { color: var(--sanctum-green); margin: 0; }
@media(max-width:760px) {
  .vault-primary { grid-template-columns: 1fr; }
  .vault-primary article { border-bottom: 1px solid var(--sanctum-border); border-right: 0; }
  .vault-primary article:last-child { border-bottom: 0; }
  .setup-required dl { grid-template-columns: 1fr; }
  .setup-required dl div { border-bottom: 1px solid var(--sanctum-border); border-right: 0; }
  .setup-required dl div:last-child { border-bottom: 0; }
  .passkey-actions { flex-direction: column; }
}
