@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root { --ink:#11141b; --paper:#f4f1e9; --acid:#d5ff45; --red:#ff5c38; --muted:#777b76; --line:#d6d2c8; } * { box-sizing:border-box; } body { margin:0; background:var(--paper); color:var(--ink); font-family:'Space Grotesk',sans-serif; } .hidden { display:none !important; }.admin-modal { position:fixed; inset:0; z-index:5; display:grid; place-items:center; padding:20px; background:rgba(16,19,27,.48); }.admin-modal form { width:min(440px,100%); padding:34px; background:var(--paper); border:1px solid var(--ink); box-shadow:8px 8px 0 var(--ink); }.admin-modal h1 { font-size:58px; line-height:.85; letter-spacing:-.07em; margin:18px 0 28px; }.admin-modal em { color:var(--red); font-style:normal; }.admin-modal input { display:block; width:100%; padding:14px; margin:10px 0; border:1px solid var(--ink); background:transparent; font:13px 'DM Mono',monospace; }.admin-modal button { width:100%; padding:14px; margin-top:8px; border:1px solid var(--ink); background:var(--acid); font-weight:600; }.admin-shell { max-width:1100px; margin:auto; padding:28px 5vw 60px; } header { display:flex; justify-content:space-between; border-bottom:1px solid; padding-bottom:17px; font:11px 'DM Mono',monospace; letter-spacing:.08em; } header button { border:0; border-bottom:1px solid; background:transparent; color:inherit; font:inherit; padding:0; } a { color:inherit; text-decoration:none; } .admin-head { padding:75px 0 55px; }.admin-head p,.label { font:11px 'DM Mono',monospace; color:var(--muted); letter-spacing:.12em; }.admin-head h1 { font-size:clamp(60px,10vw,120px); line-height:.83; letter-spacing:-.08em; margin:18px 0; }.admin-head em { color:var(--red); font-style:normal; }.admin-head span { font:12px 'DM Mono',monospace; color:var(--muted); }.workspace { display:grid; grid-template-columns:330px 1fr; gap:28px; align-items:start; }.form-panel,.list-panel { border:1px solid; padding:24px; background:#fff; box-shadow:5px 5px 0 var(--ink); }.form-panel input,.form-panel textarea { display:block; width:100%; border:1px solid var(--line); padding:13px; margin:10px 0; background:transparent; font:13px 'DM Mono',monospace; }.form-panel textarea { height:90px; resize:vertical; }.form-panel button { width:100%; padding:14px; background:var(--acid); border:1px solid; font-weight:600; }.list-title { display:flex; justify-content:space-between; align-items:center; }.list-title p { margin-top:0; }.list-title span { font:10px 'DM Mono',monospace; color:var(--muted); }article { border-top:1px solid var(--line); padding:15px 0; display:flex; justify-content:space-between; }article div { display:grid; gap:5px; }article strong { font-size:17px; }article span,article small { font:11px 'DM Mono',monospace; color:var(--muted); }article button { border:0; background:transparent; font-size:23px; color:var(--red); cursor:pointer; }.catalog { margin-top:70px; }.relic-list { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--ink); border:1px solid var(--ink); }.relic-list div { background:var(--paper); padding:20px; display:grid; gap:8px; }.relic-list b { font-size:28px; color:var(--red); }.relic-list strong { font-size:18px; }.relic-list span { font:10px 'DM Mono',monospace; color:var(--muted); }
.admin-section { margin-top:70px; }.admin-section > .list-title { margin-bottom:18px; }.user-list { border:1px solid var(--ink); background:var(--ink); display:grid; gap:1px; }.user-card { background:var(--paper); padding:18px; display:grid; grid-template-columns:180px 1fr; gap:18px; }.user-card div:first-child { display:grid; gap:5px; }.user-card strong { font-size:17px; }.user-card span,.user-card small { font:11px 'DM Mono',monospace; color:var(--muted); }.user-relics { display:flex; flex-wrap:wrap; align-content:center; gap:6px; }.user-relics span { color:var(--ink); border:1px solid var(--ink); padding:6px 8px; background:#fff; }.relic-form { display:grid; grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr; gap:8px; }.relic-form input,.relic-form select { min-width:0; border:1px solid var(--ink); background:#fff; padding:13px; font:12px 'DM Mono',monospace; }.relic-form .wide { grid-column:span 2; }.relic-form button { background:var(--acid); border:1px solid var(--ink); font-weight:600; }.muted { color:var(--muted); font:12px 'DM Mono',monospace; } header .shutdown-button { color:var(--red); border-bottom-color:var(--red); margin-right:12px; } header .shutdown-button:disabled { opacity:.45; cursor:wait; }
.data-tools { margin-top:0; }.data-tool-actions { display:flex; gap:8px; }.data-tool-actions button { border:1px solid var(--ink); background:var(--acid); padding:12px 16px; font-weight:600; }.data-tool-actions .restore-button { background:#ffdb59; }
.client-style-form { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }.client-style-form label { margin:0; font:11px 'DM Mono',monospace; }.client-style-form select { min-width:220px; border:1px solid var(--ink); background:#fff; padding:12px; font:12px 'DM Mono',monospace; }.client-style-form button { border:1px solid var(--ink); background:var(--acid); padding:12px 16px; font-weight:600; }.client-style-form button:disabled { opacity:.55; cursor:wait; }body.dark-mode .client-style-form select { color:var(--ink); background:#151920; }
body.dark-mode { --ink:#f1eee6; --paper:#151920; --muted:#a5aaa5; --line:#3b414c; background:#151920; } body.dark-mode .admin-modal { background:rgba(4,7,12,.72); } body.dark-mode .admin-modal form, body.dark-mode .form-panel, body.dark-mode .list-panel { background:#202630; } body.dark-mode .form-panel input, body.dark-mode .form-panel textarea, body.dark-mode .user-form input, body.dark-mode .relic-form input, body.dark-mode .relic-form select, body.dark-mode .rate-toolbar select { color:var(--ink); background:#151920; } body.dark-mode .catalog-relic, body.dark-mode .user-card, body.dark-mode .rate-row { background:#202630; } body.dark-mode .user-relics span { background:#151920; }
.content-tools,.notification-tools { margin-top:70px; }.markdown-editor { display:grid; grid-template-columns:minmax(280px,1fr) minmax(280px,1fr); gap:18px; }.editor-fields { display:grid; gap:8px; }.version-fields { display:grid; grid-template-columns:1fr 1fr 120px; gap:8px; }.editor-fields input,.editor-fields select,.editor-fields textarea,.notification-editor input,.notification-editor textarea { width:100%; border:1px solid var(--ink); background:#fff; padding:13px; font:12px 'DM Mono',monospace; }.editor-fields textarea { min-height:180px; resize:vertical; }.editor-fields button,.notification-editor button { border:1px solid var(--ink); background:var(--acid); padding:12px; font-weight:600; }.markdown-preview { min-height:240px; padding:18px; border:1px solid var(--ink); background:#fff; }.markdown-preview p { line-height:1.7; }.markdown-preview code,.admin-notification-list code { padding:2px 5px; background:rgba(127,129,125,.2); font:12px 'DM Mono',monospace; }.notification-editor { display:grid; grid-template-columns:1fr 2fr 130px; gap:8px; }.notification-editor textarea { min-height:45px; resize:vertical; }.admin-notification-list { display:grid; gap:1px; margin-top:18px; background:var(--ink); }.admin-notification-list article { display:flex; justify-content:space-between; gap:18px; padding:16px; background:var(--paper); }.admin-notification-list article > div { display:grid; gap:6px; }.admin-notification-list small { font:10px 'DM Mono',monospace; color:var(--muted); }.admin-notification-list strong { font-size:16px; }.admin-notification-list button { flex:0 0 auto; align-self:start; border:1px solid var(--ink); background:#ffb5a4; padding:8px 12px; font-size:11px; } body.dark-mode .markdown-preview, body.dark-mode .editor-fields input, body.dark-mode .editor-fields select, body.dark-mode .editor-fields textarea, body.dark-mode .notification-editor input, body.dark-mode .notification-editor textarea { color:var(--ink); background:#151920; }
.user-form { display:grid; grid-template-columns:1fr 1fr 160px 130px; gap:8px; margin-bottom:18px; }.user-form input { min-width:0; border:1px solid var(--ink); padding:13px; background:#fff; font:12px 'DM Mono',monospace; }.user-form button,.user-actions button,.grant-row button { border:1px solid var(--ink); background:var(--acid); padding:9px 12px; font-size:11px; }.user-card.is-banned { background:#ffe3dc; }.user-summary { display:grid; gap:5px; }.user-actions { display:flex; flex-wrap:wrap; gap:5px; margin-top:7px; }.user-actions button:nth-child(2) { background:#ffb5a4; }.user-actions button:nth-child(3) { background:transparent; }.grant-row { display:flex; width:100%; gap:5px; margin-bottom:8px; }.grant-row select { flex:1; min-width:0; border:1px solid var(--ink); background:#fff; padding:8px; font:11px 'DM Mono',monospace; }.user-relics > span { display:inline-flex; gap:5px; align-items:center; }.user-relics > span button { border:0; color:var(--red); background:transparent; cursor:pointer; font-size:16px; }
.rate-toolbar { display:flex; align-items:center; gap:8px; margin-bottom:10px; }.rate-toolbar select { flex:1; border:1px solid var(--ink); background:#fff; padding:13px; font:12px 'DM Mono',monospace; }.rate-toolbar button { background:var(--acid); border:1px solid var(--ink); padding:0 18px; font-weight:600; }.rate-toolbar button:disabled { cursor:not-allowed; opacity:.55; }.rate-total { flex:0 0 auto; font:11px 'DM Mono',monospace; color:var(--muted); }.rate-list { border:1px solid var(--ink); background:var(--ink); }.rate-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(120px,220px) 55px; gap:8px 12px; align-items:center; padding:12px 15px; background:var(--paper); border-bottom:1px solid var(--line); }.rate-row:last-child { border-bottom:0; }.rate-name { display:grid; gap:4px; }.rate-row small,.rate-row output { font:10px 'DM Mono',monospace; color:var(--muted); }.rate-row input { width:100%; accent-color:#86a91d; }.rate-presets { grid-column:2 / 4; display:flex; flex-wrap:wrap; gap:4px; }.rate-presets button { min-width:38px; border:1px solid var(--line); padding:4px 7px; background:transparent; color:var(--muted); font:10px 'DM Mono',monospace; }.rate-presets button[aria-pressed="true"] { border-color:var(--ink); background:var(--acid); color:#10131b; }.rate-presets button:disabled { cursor:not-allowed; opacity:.55; }
body.dark-mode .rate-toolbar select { color:var(--ink); background:#151920; }
.admin-section { margin-top:70px; }.admin-section > .list-title { margin-bottom:18px; }.user-list { border:1px solid var(--ink); background:var(--ink); display:grid; gap:1px; }.user-card { background:var(--paper); padding:18px; display:grid; grid-template-columns:180px 1fr; gap:18px; }.user-card div:first-child { display:grid; gap:5px; }.user-card strong { font-size:17px; }.user-card span,.user-card small { font:11px 'DM Mono',monospace; color:var(--muted); }.user-relics { display:flex; flex-wrap:wrap; align-content:center; gap:6px; }.user-relics span { color:var(--ink); border:1px solid var(--ink); padding:6px 8px; background:#fff; }.relic-form { display:grid; grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr; gap:8px; }.relic-form input,.relic-form select { min-width:0; border:1px solid var(--ink); background:#fff; padding:13px; font:12px 'DM Mono',monospace; }.relic-form .wide { grid-column:span 2; }.relic-form button { background:var(--acid); border:1px solid var(--ink); font-weight:600; }.muted { color:var(--muted); font:12px 'DM Mono',monospace; }
@media(max-width:700px){.workspace{grid-template-columns:1fr}.relic-list{grid-template-columns:1fr 1fr}.admin-shell{padding:20px 18px}.admin-head{padding:55px 0 40px}.relic-form{grid-template-columns:1fr 1fr}.relic-form input:first-child,.relic-form .wide,.relic-form button{grid-column:span 2}.user-card{grid-template-columns:1fr;gap:12px}} @media(max-width:430px){.relic-list{grid-template-columns:1fr}}
.catalog-relic { background: var(--paper); padding: 16px 20px; display: flex; justify-content: space-between; align-items: center; gap: 16px; border-bottom: 1px solid var(--line); }.catalog-relic:last-child { border-bottom: 0; }.catalog-relic > div { display: grid; gap: 7px; }.catalog-relic > button { flex: 0 0 auto; border: 1px solid var(--ink); background: #ffb5a4; padding: 9px 13px; font-size: 11px; }.catalog-relic > div span { font: 10px 'DM Mono',monospace; color: var(--muted); }
.version-history-tools { margin-top:70px; }.admin-version-history { display:grid; gap:1px; background:var(--ink); }.admin-version-history article { display:grid; grid-template-columns:1fr auto; gap:10px 18px; padding:16px; background:var(--paper); }.admin-version-history article > div:first-child { display:grid; gap:5px; }.admin-version-history article > .markdown-body { grid-column:1 / -1; }.admin-version-history strong { font-size:16px; }.admin-version-history span,.admin-version-history small { color:var(--muted); font:10px 'DM Mono',monospace; }.admin-version-history .version-actions { grid-column:2; grid-row:1; display:flex; align-items:start; gap:6px; }.admin-version-history button { border:1px solid var(--ink); background:#ffb5a4; padding:8px 12px; font-size:11px; cursor:pointer; }.admin-version-history button[data-edit-version] { background:var(--acid); } body.dark-mode .admin-version-history article { background:#202630; }.content-form-actions { display:flex; gap:8px; }.content-form-actions button { flex:1; }.content-form-actions #cancelVersionEdit { background:var(--paper); border:1px solid var(--ink); padding:12px; }
.metrics-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--ink); }.metrics-grid article { display:grid; gap:7px; padding:22px; background:var(--paper); }.metrics-grid strong { font-size:32px; }.metrics-grid span,.admin-list span,.admin-list small { color:var(--muted); font:10px 'DM Mono',monospace; }.profile-form,.admin-form { display:grid; grid-template-columns:1fr 1fr 180px 180px; gap:8px; }.profile-form input,.admin-form input,.admin-form select { min-width:0; border:1px solid var(--ink); padding:13px; background:#fff; font:12px 'DM Mono',monospace; }.profile-form button,.admin-form button { border:1px solid var(--ink); background:var(--acid); font-weight:600; }.profile-form button:last-child { background:#ffdb59; }.admin-list { display:grid; gap:1px; background:var(--ink); }.admin-list article { display:grid; grid-template-columns:1fr 180px 80px; gap:10px; align-items:center; padding:15px; background:var(--paper); }.admin-list article > div { display:grid; gap:5px; }.admin-list select,.admin-list button { border:1px solid var(--ink); padding:8px; background:#fff; font:11px 'DM Mono',monospace; }.admin-list button { background:#ffb5a4; } body.dark-mode .metrics-grid article, body.dark-mode .admin-list article { background:#202630; } body.dark-mode .profile-form input, body.dark-mode .admin-form input, body.dark-mode .admin-form select, body.dark-mode .admin-list select { color:var(--ink); background:#151920; }
 .metrics-tools .list-title .label { display:flex; align-items:center; gap:10px; }
.inline-action { border:0; border-bottom:1px solid var(--ink); background:transparent; color:var(--ink); font:inherit; cursor:pointer; }
.status-indicator { color:var(--muted); }
.status-indicator.is-online { color:#25833b; }
.metrics-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
 @media(max-width:600px) { .rate-toolbar { flex-wrap:wrap; }.rate-toolbar select { flex-basis:100%; }.rate-total { flex:1; }.rate-row { grid-template-columns:minmax(0,1fr) 55px; }.rate-name { grid-column:1 / -1; }.rate-presets { grid-column:1 / -1; } }
 .backup-list { margin-top:16px; border:1px solid var(--ink); background:var(--ink); }
.backup-item { align-items:center; gap:14px; padding:14px 16px; background:var(--paper); }
.backup-item > div:first-child { min-width:0; }
.backup-item strong { overflow-wrap:anywhere; font:12px 'DM Mono',monospace; }
.backup-actions { display:flex; flex:0 0 auto; gap:6px; }
.backup-actions button,.secondary-action { border:1px solid var(--ink); padding:8px 11px; background:var(--acid); font:11px 'DM Mono',monospace; cursor:pointer; }
.backup-actions button:last-child { background:#ffb5a4; }
.backup-actions button:disabled { opacity:.45; cursor:not-allowed; }
.data-tool-actions .secondary-action { background:transparent; }
body.dark-mode .backup-item { background:#202630; }
body.dark-mode .inline-action { color:var(--ink); }
@media(max-width:800px) { .metrics-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .metrics-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.data-tool-actions { flex-wrap:wrap; }.backup-item { align-items:flex-start; flex-direction:column; }.backup-actions { flex-wrap:wrap; }.metrics-tools .list-title { align-items:flex-start; gap:10px; flex-direction:column; } }
.notification-editor .notification-actions,.admin-notification-list .notification-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }.notification-actions label { display:flex; align-items:center; gap:6px; font-size:11px; white-space:nowrap; }.notification-editor .notification-actions input,.admin-notification-list .notification-actions input { width:auto; margin:0; padding:0; }.admin-notification-list .notification-actions { align-self:start; }.admin-notification-list .notification-actions button { flex:0 0 auto; }
@media(max-width:800px) { .notification-editor { grid-template-columns:1fr; } }

button,a,input,select,textarea { transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,opacity .16s ease,transform .16s ease; }
button { cursor:pointer; color:inherit; }
button:hover:not(:disabled),a:hover { filter:brightness(.94); }
button:active:not(:disabled),a:active { transform:translateY(1px); }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid var(--red); outline-offset:3px; }
input:focus-visible,select:focus-visible,textarea:focus-visible { border-color:var(--red); }
button:disabled { cursor:not-allowed; opacity:.55; }
button[aria-busy="true"] { cursor:wait; }
@media(prefers-reduced-motion:reduce) { button,a,input,select,textarea { transition:none; } }
.role-management { margin-top:38px; padding-top:24px; border-top:1px solid var(--line); }.admin-form,.role-form-actions { display:flex; flex-wrap:wrap; gap:8px; }.admin-form input,.admin-form select,.role-management input:not([type="checkbox"]) { min-width:150px; flex:1 1 170px; border:1px solid var(--ink); background:#fff; padding:12px; font:12px 'DM Mono',monospace; }.admin-form button,.role-management button { border:1px solid var(--ink); background:var(--acid); padding:11px 15px; font-weight:600; }.role-management fieldset { margin:14px 0; border:1px solid var(--line); }.role-management legend { padding:0 6px; font:11px 'DM Mono',monospace; color:var(--muted); }.role-permission-options { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:8px; padding:8px 0; }.role-permission-options label { display:flex; align-items:center; gap:8px; font-size:12px; }.role-permission-options input { accent-color:var(--red); }.role-form-actions .secondary-action { background:transparent; }.role-list article { align-items:center; gap:16px; }.role-actions { display:flex; gap:8px; }.role-actions button { padding:7px 10px; }.role-actions button[data-delete-role] { background:#ffb5a4; }.admin-form { margin-bottom:18px; }.admin-list select { min-width:180px; border:1px solid var(--ink); background:#fff; padding:8px; font:11px 'DM Mono',monospace; }body.dark-mode .admin-form input,body.dark-mode .admin-form select,body.dark-mode .role-management input:not([type="checkbox"]),body.dark-mode .admin-list select { color:var(--ink); background:#151920; }@media(max-width:600px) { .role-list article { align-items:flex-start; flex-direction:column; }.admin-form { display:grid; }.admin-form input,.admin-form select { width:100%; } }
body.dark-mode .admin-modal button,
body.dark-mode .form-panel button,
body.dark-mode .relic-form button,
body.dark-mode .data-tool-actions button:not(.secondary-action),
body.dark-mode .client-style-form button,
body.dark-mode .backup-actions button,
body.dark-mode .editor-fields button,
body.dark-mode .notification-editor button,
body.dark-mode .admin-notification-list button,
body.dark-mode .user-form button,
body.dark-mode .user-actions button:not(:nth-child(3)),
body.dark-mode .grant-row button,
body.dark-mode .rate-toolbar button,
body.dark-mode .catalog-relic > button,
body.dark-mode .admin-version-history button,
body.dark-mode .content-form-actions button:not(#cancelVersionEdit),
body.dark-mode .profile-form button,
body.dark-mode .admin-form button,
body.dark-mode .role-management button:not(.secondary-action),
body.dark-mode .admin-list button { color:#10131b; }
