:root{color-scheme:dark;--bg:#140c0e;--text:#f3e9d8;--muted:#c2b2a4;--gold:#dfb978;--line:#654735;--red:#a32e34;font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--text);background:radial-gradient(ellipse at 15% 35%,#63222755,transparent 55%),radial-gradient(ellipse at 90% 0%,#b0873630,transparent 40%),var(--bg);min-height:100svh}body:before{content:"";position:fixed;inset:0;z-index:-1;background:repeating-linear-gradient(135deg,transparent,transparent 100px,#dfb97806 101px,transparent 102px)}main{max-width:1160px;min-height:calc(100svh - 100px);margin:auto;padding:64px 40px;display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:center}.banner{padding:30px 0}.eyebrow{color:var(--gold);font-size:.7rem;font-weight:700;letter-spacing:.19em}.sigil{height:100px;width:100px;transform:rotate(-6deg);border:3px solid #bc5553;box-shadow:0 0 70px #a32e3460,inset 0 0 35px #a32e3430;margin-bottom:40px;position:relative;overflow:hidden}.sigil:before{content:"";position:absolute;left:40px;top:-10px;width:17px;height:125px;transform:rotate(-42deg);background:#bc5553}.sigil:after{content:"";position:absolute;left:13px;top:15px;border-left:17px solid #bc5553;border-bottom:17px solid transparent}.sigil span{position:absolute;right:14px;bottom:14px;width:17px;height:17px;background:#bc5553}h1{font-family:Georgia,serif;font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;font-weight:500;letter-spacing:-.035em;margin:24px 0}h2{font-size:1.65rem;line-height:1.25;margin:14px 0 18px;font-weight:600}.intro{color:var(--muted);font-size:1rem}.rule{height:1px;background:linear-gradient(90deg,var(--gold),transparent);width:180px;margin:35px 0 20px}.caption{letter-spacing:.3em;color:var(--gold);font-size:.8rem}.card{border:1px solid var(--line);background:linear-gradient(145deg,#2c1a1aeb,#191113f5);padding:36px;border-radius:12px;box-shadow:0 25px 80px #0006}.muted,p{color:var(--muted)}button,input{font:inherit}button,a.primary{min-height:50px;border-radius:6px;cursor:pointer}button{color:var(--text);border:1px solid var(--line);padding:12px 18px;background:transparent;width:100%;margin-top:12px}.primary{width:100%;background:linear-gradient(#b33a40,#86262d);border:1px solid #db7774;color:#fff3df;font-weight:650;display:flex;justify-content:space-between;align-items:center;text-decoration:none;padding:12px 18px}.primary:hover{background:#b73d43}.secondary{background:#dfb978;color:#251717;border-color:var(--gold);font-weight:650}button:disabled{opacity:.55;cursor:wait}:focus-visible{outline:3px solid #f4cb87;outline-offset:4px}#status{min-height:3.2em;font-size:.85rem;margin:18px 0;overflow-wrap:anywhere}aside{border-top:1px solid var(--line);padding-top:22px;margin-top:26px;font-size:.82rem}aside strong{color:var(--text)}aside p{margin-bottom:0}.restriction{font-size:.72rem;margin:22px 0 0}details{border-top:1px solid var(--line);padding-top:18px;font-size:.85rem}summary{cursor:pointer;color:var(--gold);padding:8px 0}label{display:block;margin:12px 0 6px}input{width:100%;padding:12px;color:var(--text);border:1px solid var(--line);background:#120c0d;border-radius:5px}footer{max-width:1080px;margin:auto;border-top:1px solid #65473566;padding:22px 0;color:var(--gold);font-size:.65rem;letter-spacing:.14em;display:flex;justify-content:space-between;gap:18px}footer span{letter-spacing:0;color:var(--muted)}.skip{position:absolute;left:12px;top:-100px;background:#261719;color:var(--text);padding:12px;z-index:2}.skip:focus{top:12px}[hidden]{display:none!important}@media(max-width:760px){main{grid-template-columns:1fr;gap:18px;padding:30px 22px;min-height:auto}.banner{padding:0}.sigil{width:52px;height:52px;margin-bottom:25px}.sigil:before{left:20px;top:-26px;width:10px}.sigil:after{left:5px;top:7px;border-left-width:9px;border-bottom-width:9px}.sigil span{right:6px;bottom:6px;width:9px;height:9px}h1{font-size:2.5rem;margin:18px 0}.intro{font-size:.9rem}.rule,.caption{display:none}.card{padding:26px 23px;margin-top:10px}footer{margin:10px 22px 0;padding-bottom:max(24px,env(safe-area-inset-bottom));flex-direction:column;gap:5px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

#management,#invited{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}#management h3{margin-top:24px}#management ul{padding:0;list-style:none}#management li{font-size:.8rem;border-bottom:1px solid var(--line);padding:16px 0;overflow-wrap:anywhere}#management p,#invited p{font-size:.85rem}

.languages{max-width:1080px;margin:16px auto 0;display:flex;justify-content:flex-end;gap:8px;padding:0 16px}.languages button{width:auto;min-height:44px;margin:0;padding:6px 16px}.languages [aria-pressed=true]{border-color:var(--gold);color:var(--gold)}html[lang=zh-CN] h1{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.3;letter-spacing:0}html[lang=zh-CN] .eyebrow{letter-spacing:.1em}main{padding-top:28px}#setup p{overflow-wrap:anywhere}@media(max-width:760px){.languages{margin-top:12px}main{padding-top:16px}}

canvas{display:block;max-width:100%;height:auto;width:240px;background:white;margin:16px auto;image-rendering:pixelated}#invite-expiry{color:var(--gold);font-weight:700}aside h3{font-size:1rem}

.sigil{display:none}.s-brand{display:block;width:100px;height:100px;object-fit:contain;margin-bottom:32px;border-radius:8px;box-shadow:0 0 50px #a32e3440}@media(max-width:760px){.s-brand{width:64px;height:64px;margin-bottom:20px}}

/* Compact public login; owner setup styling remains separate. */
.simple-login h1{font-size:2rem;margin:0}.simple-login h2{font-size:1.3rem;margin:0 0 12px}.simple-login .banner{padding:0}.simple-login .s-brand{margin-bottom:20px}.simple-login .friend-note{font-size:.82rem;margin:22px 0 12px}.simple-login aside{margin-top:24px;padding-top:12px}.simple-login aside h3{margin:0;text-align:center}.simple-login aside p{text-align:center}.simple-login canvas{width:180px;margin:12px auto}.simple-login #login-help{padding-top:8px}.simple-login #login-help p{margin:8px 0 0}.simple-login #status{min-height:0;margin:12px 0}.simple-login #invited{padding-top:18px;margin-top:18px}
@media(max-width:760px){.simple-login main{padding:12px 22px 28px;gap:12px}.simple-login .banner{display:flex;align-items:center;gap:14px}.simple-login .s-brand{width:48px;height:48px;margin:0}.simple-login h1{font-size:1.4rem}.simple-login .card{padding:22px;margin-top:4px}.simple-login canvas{width:164px}.simple-login .friend-note{margin-top:18px}}
