:root{--bg:#131314;--surface:#292a2d;--surface2:#35363a;--surface-hover:#3c3d41;--border:#3c4043;--border-strong:#5f6368;--text:#e8eaed;--muted:#9aa0a6;--accent:#8ab4f8;--accent-hover:#aecbfa;--accent-strong:#1a73e8;--accent-on:#131314;--link:#8ab4f8;--danger:#f28b82;--warn:#fdd663;--ok:#81c995;--section-bank:#8ab4f8;--section-bank-bg:#8ab4f81a;--section-bank-border:#8ab4f859;--section-admin:#fdd663;--section-admin-bg:#fdd6631a;--section-admin-border:#fdd66359;--section-docs:#c58af9;--section-docs-bg:#c58af91a;--section-docs-border:#c58af959;--radius:4px;--font:var(--font-roboto,"Roboto"), system-ui, -apple-system, sans-serif;--mono:ui-monospace, "Roboto Mono", "Cascadia Code", monospace;--header-h:4rem;--mobile-nav-breakpoint:768px;--hover-overlay:#ffffff0f}:root[data-theme=light]{--bg:#fff;--surface:#fff;--surface2:#f1f3f4;--surface-hover:#f8f9fa;--border:#e3e3e0;--border-strong:#dadce0;--text:#202124;--muted:#5f6368;--accent:#1a73e8;--accent-hover:#1765cc;--accent-strong:#1a73e8;--accent-on:#fff;--link:#1a73e8;--danger:#d93025;--warn:#ea8600;--ok:#1e8e3e;--section-bank:#1a73e8;--section-bank-bg:#1a73e81a;--section-bank-border:#1a73e859;--section-admin:#e37400;--section-admin-bg:#ea85061f;--section-admin-border:#ea850659;--section-docs:#9334e6;--section-docs-bg:#9334e61a;--section-docs-border:#9334e659;--hover-overlay:#2021240f}:root[data-theme=light] body{background-color:#f5f4f1;background-image:radial-gradient(1000px 480px at 75% -5%,#f4dec799,#0000),radial-gradient(700px 380px at 45% -8%,#f7ece08c,#0000)}html{font-size:16px}@media (max-width:640px){html{font-size:15px}}*{box-sizing:border-box}body{font-family:var(--font);background:var(--bg);color:var(--text);background-image:radial-gradient(640px 420px at 88% 2%,#8ab4f817,#0000),radial-gradient(480px 320px at 72% 6%,#fdd6630f,#0000),radial-gradient(380px 280px at 94% 10%,#81c9950d,#0000);min-height:100vh;margin:0;line-height:1.5}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.site-header{border-bottom:1px solid var(--border);background:var(--bg);z-index:10;position:sticky;top:0}.header-inner{max-width:1280px;min-height:var(--header-h);flex-wrap:nowrap;align-items:center;gap:1.25rem;margin:0 auto;padding:0 1.5rem;display:flex}.brand{color:var(--text);letter-spacing:-.01em;flex-shrink:0;align-items:center;gap:.625rem;font-size:1.125rem;font-weight:500;text-decoration:none;display:inline-flex}.brand:hover{text-decoration:none}.brand-logo{border-radius:2px;flex-shrink:0;width:auto;height:2rem;display:block}:root[data-theme=light] .brand-logo{filter:invert()}.nav{flex:1;gap:.375rem;margin-left:.5rem;display:flex}.nav a{color:var(--muted);border-radius:var(--radius);border:1px solid #0000;padding:.625rem 1rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .15s,background .15s,border-color .15s}.nav a:hover{color:var(--text);background:var(--hover-overlay);text-decoration:none}.nav a.active{color:var(--accent);background:#8ab4f81f}.nav a.nav-bank.active{color:var(--section-bank);background:var(--section-bank-bg)}.nav a.nav-admin.active{color:var(--section-admin);background:var(--section-admin-bg)}.nav a.nav-docs.active{color:var(--section-docs);background:var(--section-docs-bg)}.wallet-controls{flex-shrink:0;align-items:center;gap:.625rem;font-size:.875rem;display:flex}.wallet-connected{align-items:center;gap:.75rem;display:flex}.wallet-chip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);white-space:nowrap;align-items:center;gap:.625rem;min-height:2.25rem;padding:.4375rem .875rem;display:inline-flex}.wallet-addr{font-family:var(--mono);color:var(--text);font-size:.8125rem;line-height:1.2}.wallet-connector-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-right:1px solid var(--border);padding-right:.625rem;font-size:.6875rem;font-weight:500;line-height:1.2}.wallet-disconnect{flex-shrink:0}.menu-toggle{width:2.75rem;height:2.75rem;color:var(--text);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s;display:none}button.menu-toggle:hover:not(:disabled){background:var(--hover-overlay);border:none}.menu-toggle-icon{background:currentColor;border-radius:1px;width:1.125rem;height:2px;transition:background .2s;display:block;position:relative}.menu-toggle-icon:before,.menu-toggle-icon:after{content:"";background:currentColor;border-radius:1px;width:100%;height:2px;transition:transform .2s,top .2s;position:absolute;left:0}.menu-toggle-icon:before{top:-6px}.menu-toggle-icon:after{top:6px}.menu-toggle.open .menu-toggle-icon{background:0 0}.menu-toggle.open .menu-toggle-icon:before{top:0;transform:rotate(45deg)}.menu-toggle.open .menu-toggle-icon:after{top:0;transform:rotate(-45deg)}.nav-overlay,.nav-drawer,.wallet-controls-drawer{display:none}@media (max-width:768px){.menu-toggle{order:0;display:inline-flex}.nav-desktop{display:none}.nav-overlay{z-index:40;opacity:0;pointer-events:none;cursor:pointer;background:#0000008c;margin:0;padding:0;transition:opacity .2s;display:block;position:fixed;inset:0}.nav-overlay.open{opacity:1;pointer-events:auto}.nav-drawer{z-index:50;background:var(--surface);border-right:1px solid var(--border);flex-direction:column;width:min(17.5rem,85vw);padding:.75rem;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 24px #00000059}.nav-drawer.open{transform:translate(0)}.nav-drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.nav-drawer-title{font-size:.875rem;font-weight:500}.nav-drawer-links{flex-direction:column;flex:1;gap:.25rem;display:flex}.nav-drawer-links a{border-radius:var(--radius);border:1px solid #0000;padding:.875rem 1rem;font-size:1rem;display:block}.nav-drawer-links a.active{color:var(--accent);background:#8ab4f81f}.wallet-controls-desktop{display:none}.wallet-controls-drawer{border-top:1px solid var(--border);flex-direction:column;gap:.5rem;margin-top:auto;padding-top:.75rem;display:flex}.nav-drawer-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0;font-size:.6875rem;font-weight:500}.wallet-controls-drawer button{width:100%;padding:.55rem .75rem;font-size:.8125rem}.wallet-controls-drawer .wallet-connected{flex-direction:column;align-items:stretch;gap:.625rem;display:flex}.wallet-controls-drawer .wallet-chip{white-space:normal;flex-wrap:wrap;justify-content:center}.wallet-controls-drawer .wallet-disconnect{width:100%}.header-inner{gap:.75rem;min-height:3.5rem;padding:0 1rem}.brand{flex:1;order:1;min-width:0;font-size:1rem}.nav-drawer{width:min(19rem,88vw);padding:1rem}.nav-drawer-links{gap:.375rem}.app{padding:1.5rem 1rem 2.5rem}}.app{max-width:1280px;margin:0 auto;padding:2.5rem 1.5rem 3rem}h1{letter-spacing:-.02em;color:var(--text);margin:0 0 .35rem;font-size:1.75rem;font-weight:400}h2{color:var(--text);margin:1.25rem 0 .65rem;font-size:1rem;font-weight:500}h3{color:var(--text);margin:0 0 .5rem;font-size:.9375rem;font-weight:500}.lead{color:var(--muted);max-width:42rem;margin:0 0 1.5rem;font-size:.875rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem;padding:1rem 1.125rem}.card.warn{background:#fdd6630f;border-color:#fdd66373}.grid-2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.625rem;display:grid}.grid-fixed-3{grid-template-columns:repeat(3,1fr);gap:.625rem;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .875rem;transition:background .15s,border-color .15s}.stat:hover{background:var(--surface-hover);border-color:var(--border-strong)}.stat label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem;font-size:.6875rem;font-weight:500;display:block}.stat .value{font-family:var(--mono);word-break:break-all;color:var(--text);font-size:.8125rem}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius);background:var(--surface2);color:var(--muted);border:1px solid var(--border);margin-right:.35rem;padding:.15rem .45rem;font-size:.6875rem;font-weight:500;display:inline-block}.badge.ok{color:var(--ok);background:#81c9951f;border-color:#81c99559}.badge.warn{color:var(--warn);background:#fdd6631f;border-color:#fdd66359}.badge.danger{color:var(--danger);background:#f28b821f;border-color:#f28b8259}button,.btn{font:inherit;cursor:pointer;border-radius:var(--radius);background:var(--accent);color:var(--accent-on);border:1px solid var(--accent);letter-spacing:.01em;padding:.4375rem .875rem;font-size:.8125rem;font-weight:500;transition:background .15s,border-color .15s,color .15s}button:hover:not(:disabled),.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button:disabled{opacity:.45;cursor:not-allowed}button.secondary{color:var(--accent);border:1px solid var(--border-strong);background:0 0}button.secondary:hover:not(:disabled){border-color:var(--accent);background:#8ab4f814}button.danger{color:var(--danger);background:0 0;border-color:#f28b828c}button.danger:hover:not(:disabled){border-color:var(--danger);background:#f28b821a}button.sm{padding:.3125rem .625rem;font-size:.75rem}.form-row{flex-direction:column;gap:.3rem;margin-bottom:.75rem;display:flex}.form-row label{color:var(--muted);font-size:.8125rem;font-weight:500}input,select,textarea{font:inherit;background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);width:100%;padding:.5rem .65rem;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}.form-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.8125rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.55rem .65rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem;font-weight:500}tr.highlight td{background:#8ab4f80f}.mono{font-family:var(--mono);font-size:.8125rem}.muted{color:var(--muted)}.small{font-size:.8125rem}.actions-inline{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}details summary{cursor:pointer;color:var(--link)}.calldata-box{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--mono);word-break:break-all;max-height:120px;margin-top:.75rem;padding:.65rem;font-size:.6875rem;overflow:auto}.tabs{border-bottom:1px solid var(--border);gap:.125rem;margin-bottom:1rem;padding-bottom:0;display:flex}.tab{color:var(--muted);border-radius:var(--radius) var(--radius) 0 0;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.45rem .75rem}.tab:hover{color:var(--text);background:var(--hover-overlay)}.tab.active{color:var(--accent);border-bottom-color:var(--accent);background:0 0}.docs-content h2{margin-top:.5rem}.docs-content h3{margin-top:.75rem;font-size:.875rem}.docs-content ul,.docs-content ol{padding-left:1.25rem}.docs-content code{font-family:var(--mono);background:var(--surface2);border-radius:var(--radius);padding:.1rem .35rem;font-size:.8125rem}.docs-content pre{font-family:var(--mono);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);margin:.75rem 0;padding:.75rem 1rem;font-size:.8125rem;overflow-x:auto}.docs-callout{border-left:3px solid var(--border-strong);color:var(--muted);margin:.75rem 0;padding:.5rem 0 .5rem .75rem;font-size:.875rem}.docs-table{border-collapse:collapse;width:100%;margin:.75rem 0;font-size:.8125rem}.docs-table th,.docs-table td{text-align:left;border-bottom:1px solid var(--border);padding:.4rem .6rem}.docs-table th{color:var(--muted);font-weight:500}.toast-root{z-index:100;flex-direction:column;gap:.5rem;max-width:360px;display:flex;position:fixed;bottom:1rem;right:1rem}.toast{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 1rem;font-size:.8125rem;box-shadow:0 4px 16px #00000059}.toast.ok{border-color:#81c99573}.toast.err{border-color:#f28b8273}.toast-message{line-height:1.35}.toast-detail{color:var(--muted);word-break:break-word;margin-top:.375rem;font-size:.75rem;line-height:1.35}.toast-action{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;background:0 0;margin-top:.5rem;padding:.25rem .5rem;font-size:.75rem}.toast-action:hover{border-color:var(--muted)}.wallet-debug-panel{z-index:90;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(420px,100vw - 2rem);max-height:min(70vh,560px);padding:.875rem 1rem;position:fixed;bottom:1rem;left:1rem;overflow:auto;box-shadow:0 8px 28px #00000059}.wallet-debug-header,.wallet-debug-subheader{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.wallet-debug-grid{grid-template-columns:1fr 1fr;gap:.625rem .75rem;margin-bottom:.875rem;font-size:.8125rem;display:grid}.wallet-debug-section{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.wallet-debug-dl{gap:.5rem;margin:0 0 .75rem;font-size:.8125rem;display:grid}.wallet-debug-dl dt{color:var(--muted);font-size:.75rem}.wallet-debug-dl dd{word-break:break-word;margin:.125rem 0 0}.wallet-debug-issues{color:#f28b82;margin:0 0 .75rem;padding-left:1.1rem;font-size:.8125rem}.wallet-debug-pre{background:var(--surface2,var(--bg));border:1px solid var(--border);border-radius:var(--radius);max-height:180px;font-family:var(--mono);white-space:pre-wrap;word-break:break-word;margin:0 0 .75rem;padding:.5rem .625rem;font-size:.6875rem;overflow:auto}.wallet-debug-badge{border:1px solid var(--border);border-radius:999px;align-items:center;padding:.125rem .4375rem;font-size:.6875rem;font-weight:500;display:inline-flex}.wallet-debug-badge.ok{color:#81c995;border-color:#81c99573}.wallet-debug-badge.bad{color:#f28b82;border-color:#f28b8273}@media (max-width:768px){.wallet-debug-panel{width:auto;bottom:.75rem;left:.75rem;right:.75rem}}.row-actions{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.theme-toggle{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:999px;flex-shrink:0;align-items:center;gap:.5rem;min-height:2.25rem;padding:.3125rem .5rem .3125rem .75rem;transition:background .15s,border-color .15s,color .15s;display:inline-flex}button.theme-toggle:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.theme-toggle-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.6875rem;font-weight:500;line-height:1.2}.theme-toggle-track{background:var(--surface2);border:1px solid var(--border-strong);border-radius:999px;width:2.75rem;height:1.5rem;transition:background .18s,border-color .18s;display:inline-block;position:relative}.theme-toggle.is-light .theme-toggle-track{background:var(--section-bank-bg);border-color:var(--section-bank-border)}.theme-toggle-thumb{background:var(--surface);width:1.125rem;height:1.125rem;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;transition:transform .18s;display:inline-flex;position:absolute;top:50%;left:.125rem;transform:translateY(-50%);box-shadow:0 1px 3px #0000004d}.theme-toggle.is-light .theme-toggle-thumb{color:var(--warn)}.theme-toggle:not(.is-light) .theme-toggle-thumb{transform:translateY(-50%)translate(1.125rem)}.theme-toggle-thumb svg{width:.75rem;height:.75rem;display:block}.theme-toggle-drawer{border-radius:var(--radius);justify-content:space-between;width:100%}.label-short{display:none}@media (max-width:768px){h1{font-size:1.5rem}h2{margin-top:1rem;font-size:.9375rem}.lead{margin-bottom:1rem;font-size:.8125rem}.card{padding:.875rem 1rem}.grid-2{grid-template-columns:1fr;gap:.5rem}.toast-root{max-width:none;bottom:.75rem;left:.75rem;right:.75rem}.tabs{flex-wrap:wrap}.form-actions button{flex:auto;min-width:0}th,td{padding:.45rem .5rem;font-size:.75rem}.mono{word-break:break-all}.docs-content{overflow-wrap:anywhere}.docs-content code{word-break:break-all}.docs-content pre{font-size:.6875rem}}
