:root{--ground:#0b0b10;--surface:#15151c;--ink:#ecebf2;--muted:#a4a2b4;--line:rgba(255,255,255,0.08);color-scheme:dark}*{box-sizing:border-box}body,html{margin:0;height:100%;background:var(--ground);color:var(--ink)}body{font-family:Geist,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.5}input,textarea{font-family:inherit}input::placeholder{color:#7f7d90}input:focus{outline:none;border-color:rgba(255,255,255,.25)!important}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #c9c7d6;outline-offset:2px}.app{max-width:560px;margin:0 auto;min-height:100dvh}.app,.page{display:flex;flex-direction:column}.page{padding:28px 20px 40px;gap:18px}.h1{font-size:26px;font-weight:600;letter-spacing:-.03em;margin:0}.sub{font-size:13.5px;color:var(--muted);line-height:1.45;margin:0}.label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#8a889a}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12.5px;color:var(--muted)}.input{height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#0f0f15;color:var(--ink);padding:0 14px;width:100%}.btn,.input{font-size:15px}.btn{height:48px;border-radius:24px;border:none;background:#ecebf2;color:#0b0b10;font-weight:600;padding:0 22px;display:inline-flex;align-items:center;justify-content:center}.btn.ghost{color:var(--ink);border:1px solid rgba(255,255,255,.14);font-weight:500}.btn.ghost,.icon-btn{background:transparent}.icon-btn{width:44px;height:44px;border-radius:22px;border:none;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.card{border-radius:22px;border:1px solid rgba(255,255,255,.07);padding:16px}.clip{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{height:34px;padding:0 14px;border-radius:17px;font-size:13px;font-weight:500;display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.14);color:#c9c7d6}.chip.on{background:#ecebf2;color:#0b0b10;border-color:#ecebf2}.notice{font-size:13px;line-height:1.45;padding:12px 14px;border-radius:14px;background:rgba(245,196,81,.07);border:1px solid rgba(245,196,81,.25);color:#f3e3b5}@keyframes dcSpin{to{transform:rotate(1turn)}}@keyframes dcMorph{0%,to{border-radius:50%}33%{border-radius:54% 46% 52% 48%}66%{border-radius:47% 53% 46% 54%}}@keyframes dcBreathe{0%,to{transform:scale(.94)}50%{transform:scale(1.08)}}@keyframes dcRise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dcUp{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}@keyframes dcBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes dcMoon{0%{transform:translateX(-100%)}45%,55%{transform:translateX(-8%)}to{transform:translateX(105%)}}@keyframes dcTwinkle{0%,to{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1)}}@keyframes dcRing{0%{transform:scale(.9);opacity:.9}to{transform:scale(1.9);opacity:0}}@keyframes dcShimmer{0%{background-position:150% 0;opacity:1}to{background-position:-50% 0;opacity:0}}@keyframes dcPing{0%{box-shadow:0 0 0 0 currentColor;opacity:1;transform:scale(1)}40%{transform:scale(1.12)}to{box-shadow:0 0 0 14px transparent;opacity:0;transform:scale(1)}}@keyframes dcNebula{0%,to{transform:translate(0) rotate(0deg)}50%{transform:translate(6%,-5%) rotate(40deg)}}@keyframes dcEmber{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.08)}}@keyframes dcHalo{0%,to{transform:rotateX(62deg) rotate(0deg)}50%{transform:rotateX(70deg) rotate(25deg)}}@keyframes dcDot{0%,80%,to{opacity:.25}40%{opacity:1}}.rise{animation:dcRise .35s ease-out}.dropcap:first-letter{float:left;font-size:3.3em;line-height:.8;padding:6px 8px 0 0;color:#d4ae7a;font-weight:500}.hue{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:10px;border-radius:5px;margin:0;background:linear-gradient(90deg,hsl(0,85%,66%),hsl(60,85%,66%),hsl(120,85%,66%),hsl(180,85%,66%),hsl(240,85%,66%),hsl(300,85%,66%),hsl(360,85%,66%))}.hue::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:12px;background:#ecebf2;border:3px solid #14141b}.hue::-moz-range-thumb{width:18px;height:18px;border-radius:12px;background:#ecebf2;border:3px solid #14141b}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (prefers-reduced-motion:reduce){.dots *,.orb *,.rise{animation:none!important}}.admin-card,.admin-list{display:flex;flex-direction:column;gap:10px}.admin-card{background:#15151c}.admin-card.urgent{border-color:rgba(252,165,165,.35)}.admin-card.banned{opacity:.75}.admin-meta{gap:2px;font-size:14px}.admin-meta,.admin-people{display:flex;flex-direction:column}.admin-people{gap:4px;font-size:13.5px}.admin-quote{margin:0;padding:8px 12px;border-left:2px solid var(--muted);font-size:14.5px;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.admin-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.admin-ban{display:flex;gap:6px;flex:1 1 100%}.admin-btn,.admin-input{height:34px;font-size:13px;border-radius:17px}.admin-btn{padding:0 14px;background:transparent;color:var(--ink);border:1px solid rgba(255,255,255,.16);flex-shrink:0}.admin-btn.danger{color:#fca5a5;border-color:rgba(252,165,165,.35)}.admin-btn:disabled{opacity:.5}.admin-tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:10px;font-size:11px;background:rgba(255,255,255,.08);color:var(--muted);text-transform:capitalize;vertical-align:1px}.admin-tag.danger{background:rgba(252,165,165,.12);color:#fca5a5}.admin-count{margin-left:6px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:11px;display:inline-flex;align-items:center;justify-content:center;background:#fca5a5;color:#0b0b10}.admin-row{display:flex;align-items:center;gap:10px;font-size:13.5px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.admin-search{display:flex;gap:8px}.admin-stats{display:flex;gap:12px;flex-wrap:wrap}.admin-stats .warn{color:#fca5a5}.admin-link{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:rgba(255,255,255,.25);text-decoration-color:rgba(255,255,255,.25);text-underline-offset:3px}.admin details summary{cursor:pointer;padding:4px 0}.settings-fold summary::-webkit-details-marker{display:none}.settings-fold[open] summary .sub[aria-hidden]{visibility:hidden}