@font-face{font-family:Pixel;src:url('/assets/pixel.ttf') format('truetype');font-display:swap;font-weight:400}
:root{color-scheme:dark;--bg:#010417;--text:#edf1ff;--muted:#a9b1cc;--cyan:#20dcff;--pink:#ed49ff;--line:#28264e;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
*{box-sizing:border-box}body{margin:0;min-height:100svh}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a{color:var(--cyan)}button{border:1px solid transparent;background:linear-gradient(110deg,#13d6ee,#7973ff 65%,#d24ced);color:#020720;font-weight:700;padding:15px 23px;border-radius:9px;cursor:pointer;min-height:48px;font-size:1rem}button:hover{filter:brightness(1.13)}button:active{transform:translateY(1px)}:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}input,textarea{border:1px solid var(--line);background:#090d27;color:var(--text);border-radius:9px;padding:15px;font-size:1rem;min-width:0}input:focus{border-color:var(--cyan)}.entry{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 24px 28px}.hero-art{display:block;width:min(660px,100%,calc(100svh - 170px));height:auto;object-fit:contain}.invite-form{width:min(620px,100%);margin-top:8px}.invite-bar{display:flex;gap:6px;align-items:stretch;padding:5px;border:1px solid #5e4381;border-radius:12px;background:linear-gradient(100deg,#0c1830,#110d27);box-shadow:-10px 0 28px #00bbff13,10px 0 28px #d54dff18}.invite-bar:focus-within{border-color:#54d5fa;box-shadow:0 0 22px #41b4ff29}.invite-bar input{width:100%;border:0;background:transparent;border-radius:7px;font-family:Pixel,monospace;font-size:.9rem;letter-spacing:.07em;padding:15px 13px;text-transform:uppercase}.invite-bar input::placeholder{font-family:Arial,Helvetica,sans-serif;letter-spacing:0;font-size:1rem;color:#b3b5ce;text-transform:none}.invite-bar button{white-space:nowrap;display:flex;align-items:center;gap:16px}.invite-bar button span{font-size:1.4rem;line-height:1}.form-error{min-height:1.5em;color:#ffadce;font-size:.875rem;margin:11px 3px 0;line-height:1.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.welcome-content{min-height:100svh;padding:28px 20px 35px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.welcome-art{width:min(680px,100%,62svh);height:auto}.welcome h1{font-size:clamp(2.2rem,6vw,3.5rem);font-weight:400;letter-spacing:.06em;margin:12px 0 8px}.continuation{font-size:1.125rem;color:#bcc4e0;margin:0 0 36px}.launch{width:min(640px,100%)}.launch-label{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;color:#b4bbd5;margin:0 0 26px}.countdown{display:flex;justify-content:center;align-items:flex-start;gap:18px}.countdown div{flex:1;max-width:116px}.countdown strong{display:block;font-family:Pixel,monospace;font-size:clamp(1.2rem,4vw,2.6rem);font-weight:400;color:#c7eeff;text-shadow:0 0 19px #2cbdff65;line-height:1.4}.countdown div:nth-last-child(-n+3) strong{color:#f0c5ff;text-shadow:0 0 19px #f342ff65}.countdown span{display:block;font-size:.875rem;color:var(--muted);margin-top:16px}.countdown b{font-family:monospace;font-size:2rem;color:#55527d;font-weight:400}.launch-date{font-size:.875rem;color:#848da8;margin:30px 0}.quiet-link{font-size:.875rem;color:#9ca6c3;text-decoration:none;margin-top:12px}.quiet-link:hover{color:var(--cyan)}.admin-shell{width:min(1050px,100%);margin:auto;padding:36px 24px 60px}.admin-header{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px;color:var(--muted);font-size:.875rem}.brand{color:#f5f2ff;text-decoration:none;letter-spacing:.4em;font-size:1.25rem}.admin h1{font-size:2rem;font-weight:400;margin:28px 0}.login-card{max-width:400px;margin:70px auto}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card label{margin-top:12px;font-size:.875rem}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.secondary{background:transparent;color:var(--text);border-color:var(--line);font-weight:400}.small{padding:9px 13px;min-height:38px;font-size:.875rem}.generator,.generated{background:#080b22;border:1px solid var(--line);border-radius:14px;padding:24px;margin:10px 0 26px}.generator label{font-size:.875rem;display:block;margin-bottom:12px}.generator-controls{display:flex;gap:12px}.generator-controls input{width:90px}.muted{color:var(--muted);font-size:.875rem;margin-bottom:0}.generated h2{font-size:1.125rem;font-weight:400;margin-top:0}.generated textarea{font-family:Pixel,monospace;font-size:.875rem;line-height:2.3;width:100%;resize:vertical;margin-bottom:12px}.copy-status{color:var(--muted);font-size:.875rem;margin-left:12px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}th{font-weight:400;color:var(--muted)}th,td{padding:18px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.code{font-family:Pixel,monospace;font-size:.75rem;color:#bcecff}.empty{padding:40px 12px;color:var(--muted);text-align:center}
@media(max-width:600px){.entry{padding:18px 14px 16px}.hero-art{width:min(100%,calc(100svh - 170px))}.invite-form{margin-top:12px}.invite-bar{gap:0}.invite-bar input{padding:16px 9px;font-size:.73rem;letter-spacing:.03em}.invite-bar input::placeholder{font-size:.875rem}.invite-bar button{padding:13px 12px;font-size:.875rem;gap:7px}.invite-bar button span{display:none}.countdown{gap:7px}.countdown b{font-size:1.3rem}.countdown span{font-size:.875rem;margin-top:12px}.admin-shell{padding:24px 16px}.admin-header{align-items:flex-start}.admin-header span{text-align:right;max-width:120px;line-height:1.5}.generator,.generated{padding:18px}.generator-controls{flex-wrap:wrap}.generated textarea{font-size:.7rem}.launch-date{line-height:1.7}}
@media(prefers-reduced-motion:reduce){button:active{transform:none}}

/* Extend the artwork's blue and violet light across the viewport. */
.landing:not(.not-found) .hero-art{width:min(660px,100%,max(300px,calc(100svh - 300px)))}
.home-launch{text-align:center;width:min(480px,100%);margin-top:12px}
.home-launch .launch-label{font-size:.875rem;margin-bottom:18px}
.home-launch .countdown{gap:12px}
.home-launch .countdown strong{font-size:clamp(1.3rem,3.2vw,1.9rem)}
.home-launch .countdown b{font-size:1.5rem}
.home-launch .countdown span{margin-top:10px}
.error-entry{text-align:center;padding-top:36px;padding-bottom:36px}
.error-art{width:min(540px,100%,48svh)}
.error-number{font-family:Pixel,monospace;font-size:clamp(2.5rem,7vw,4.5rem);line-height:1.3;margin:8px 0 20px;color:#d9eaff;text-shadow:-5px 0 25px #00ceff66,5px 0 25px #df47ff66}
.error-entry h1{font-size:clamp(1.7rem,4vw,2.6rem);font-weight:400;margin:0 0 16px}
.error-message{color:var(--muted);font-size:1rem;line-height:1.8;margin:0 0 25px}
.error-entry .quiet-link{margin-top:25px}
.landing,.welcome{
 background:
  radial-gradient(ellipse at 37% 43%,#00234455 0%,#00142b22 28%,transparent 58%),
  radial-gradient(ellipse at 64% 48%,#250b4650 0%,#17052a22 28%,transparent 58%),
  #010417;
}
.hero-art,.welcome-art{
 -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 87%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 9%,#000 89%,transparent 100%);
 -webkit-mask-composite:source-in;
 mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 87%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 9%,#000 89%,transparent 100%);
 mask-composite:intersect;
}
.welcome-art{
 -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 16%,#000 84%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 13%,#000 77%,transparent 100%);
 mask-image:linear-gradient(to right,transparent 0%,#000 16%,#000 84%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 13%,#000 77%,transparent 100%);
}

