@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@500&display=swap");:root{--bg:#0f1117;--surface:#171b26;--border:#2a3142;--text:#f2f4f8;--muted:#9aa3b5;--accent:#6ea8fe;--sidebar:#12151d;--font-body:"IBM Plex Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",monospace}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:var(--font-body)}a{color:inherit;text-decoration:none}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-sidebar{background:var(--sidebar);border-right:1px solid var(--border);padding:1.25rem 1rem}.admin-sidebar h1{font-size:1rem;margin:0 0 1rem;font-family:var(--font-mono)}.admin-nav{display:grid;grid-gap:.35rem;gap:.35rem}.admin-nav a{padding:.55rem .7rem;border-radius:8px;color:var(--muted)}.admin-nav a:hover,.admin-nav a[data-active=true]{background:var(--surface);color:var(--text)}.admin-main{padding:1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem}.staff-card,.staff-card input,.staff-card select{width:-moz-fit-content;width:fit-content;max-width:100%}.staff-card input[type=email],.staff-card input[type=password],.staff-card input[type=text]{min-width:16rem}.staff-card input[inputmode=numeric]{min-width:8rem;max-width:10rem}.staff-card .form-stack{width:-moz-fit-content;width:fit-content;max-width:100%}.staff-card .password-field{width:16rem;max-width:100%}.success-banner{width:-moz-fit-content;width:fit-content;max-width:100%;background:color-mix(in srgb,#3d7a4a 22%,var(--surface));border:1px solid #3d7a4a;color:#c8efd0;border-radius:8px;padding:.55rem .7rem}.auth-card{width:min(400px,100%);margin:4rem auto}.form-stack{display:grid;grid-gap:.85rem;gap:.85rem;justify-items:start}.auth-card .form-stack,.auth-card label{width:100%}label{display:grid;grid-gap:.3rem;gap:.3rem;color:var(--muted);font-size:.9rem}input{border:1px solid var(--border);background:#0f131c;color:var(--text);border-radius:8px;padding:.6rem .7rem}.auth-card .btn,.auth-card input{width:100%}.password-field{position:relative;display:block;width:100%}.password-field input{width:100%;min-width:0;padding-right:2.75rem;box-sizing:border-box}.password-field input::-ms-reveal{display:none}.password-field__toggle{position:absolute;top:50%;right:.2rem;transform:translateY(-50%);display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.password-field__toggle:hover{color:var(--text);background:color-mix(in srgb,var(--surface) 70%,transparent)}.btn{border:0;border-radius:8px;padding:.6rem .9rem;background:var(--accent);color:#0b1020;font-weight:600;cursor:pointer}.error-banner{background:#3a1f28;border:1px solid #7a3045;color:#ffd7df;border-radius:8px;padding:.55rem .7rem}.error-banner,.manual-finalize-badge{width:-moz-fit-content;width:fit-content;max-width:100%}.manual-finalize-badge{display:inline-block;margin-top:.25rem;padding:.15rem .45rem;border-radius:6px;font-size:.7rem;font-weight:600;background:#3a2a14;border:1px solid #8a6020;color:#ffdca8}.muted{color:var(--muted)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem}.metric-card{background:#0f131c;border:1px solid var(--border);border-radius:8px;padding:.85rem .9rem}.metric-card__label{color:var(--muted);font-size:.8rem;margin-bottom:.35rem}.metric-card__value{font-family:var(--font-mono);font-size:1.25rem;font-weight:500}.moderation-list{list-style:none;margin:.75rem 0 0;padding:0;display:grid;grid-gap:.75rem;gap:.75rem}.moderation-item{display:grid;grid-gap:.6rem;gap:.6rem;padding:.75rem 0;border-top:1px solid var(--border)}.moderation-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.moderation-actions input{min-width:200px;flex:1 1}.form-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end;margin-top:.75rem}.checkbox{display:flex;flex-direction:row;align-items:center;gap:.4rem;padding-bottom:.55rem}select{border:1px solid var(--border);background:#0f131c;color:var(--text);border-radius:8px;padding:.6rem .7rem}.btn-primary{background:var(--accent);color:#0b1020}.btn-danger{background:#a33b52;color:#fff}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:#2a3142;color:var(--text)}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border);font-weight:500}.btn-ghost:hover{color:var(--text)}.table-wrap{overflow-x:auto;margin-top:.75rem}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table td,.admin-table th{text-align:left;padding:.55rem .4rem;border-bottom:1px solid var(--border)}.admin-table th{color:var(--muted);font-weight:500}.crypto-value-td{vertical-align:top;min-width:22rem}.crypto-value-td--compact{min-width:0;width:1%;white-space:nowrap}.admin-table-id-col{width:1%;white-space:nowrap;padding-right:.25rem!important}.admin-table-created-col{padding-left:.25rem!important;white-space:nowrap}.broadcast-error-cell{display:grid;grid-gap:.25rem;gap:.25rem;width:-moz-fit-content;width:fit-content;max-width:14rem;margin-top:.35rem}.broadcast-error-text{display:block;font-family:var(--font-mono);font-size:.7rem;line-height:1.4;color:var(--muted);word-break:break-word;overflow-wrap:anywhere}.crypto-value-cell{display:grid;grid-gap:.35rem;gap:.35rem;width:-moz-fit-content;width:fit-content;max-width:100%}.crypto-value{display:block;font-family:var(--font-mono);font-size:.75rem;line-height:1.45;white-space:nowrap;overflow-x:auto;max-width:100%;padding:.1rem 0;font-feature-settings:none;font-variant-ligatures:none}.crypto-value--md{font-size:.85rem}.crypto-value-actions{display:inline-flex;flex-wrap:wrap;gap:.35rem}.table-sort-btn{padding:0;border:none;background:none;color:inherit;font:inherit;font-weight:500;cursor:pointer}.table-sort-btn:hover{color:var(--text)}.btn-sm{padding:.25rem .55rem;font-size:.8rem}.settings-list{display:grid;grid-gap:.85rem;gap:.85rem}.settings-row{display:grid;grid-gap:.5rem;gap:.5rem;padding:.75rem 0;border-bottom:1px solid var(--border)}@media (max-width:800px){.admin-shell{grid-template-columns:1fr}}