.login.lg{justify-content:flex-start;overflow-y:auto;padding:max(56px,env(safe-area-inset-top)) 24px max(28px,env(safe-area-inset-bottom))}.lg-back{position:absolute;left:16px;top:max(16px,env(safe-area-inset-top))}.lg-wrap{width:min(348px,100%);margin-block:auto;display:flex;flex-direction:column;gap:18px}.lg-head{display:flex;flex-direction:column;gap:10px;text-align:center}.lg-title{margin:0;font-size:34px;font-weight:500;letter-spacing:.5em;padding-left:.5em;color:var(--ink)}.lg-sub{margin:0;font-size:13px;line-height:1.7;letter-spacing:.08em;color:var(--dim)}.lg-tabs{display:flex;gap:8px;border-bottom:1px solid rgba(43,42,36,.12)}.lg-tab{flex:1;height:42px;margin-bottom:-1px;border:0;border-bottom:1px solid transparent;background:none;color:var(--dim);font-family:inherit;font-size:14px;letter-spacing:.3em;padding-left:.3em;cursor:pointer}.lg-tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--warm)}.lg-tab:focus-visible{outline:2px solid rgba(176,122,60,.35);outline-offset:-2px}.lg-form{display:flex;flex-direction:column;gap:14px}.lg-field{display:flex;flex-direction:column;gap:7px;font-size:12px;letter-spacing:.1em;color:var(--dim)}.lg-field input{width:100%;height:44px;padding:0 14px;box-sizing:border-box;border-radius:10px;border:1px solid rgba(43,42,36,.18);background:var(--paper);color:var(--ink);font-family:inherit;font-size:16px;letter-spacing:.14em}.lg-field input::placeholder{color:#a8a294;letter-spacing:.04em}.lg-field input:focus{outline:none;border-color:var(--warm);box-shadow:0 0 0 3px #b07a3c24}.lg-row{display:flex;align-items:center;gap:8px}.lg-row input{flex:1;min-width:0}.lg-pic{flex:none;width:120px;height:44px;padding:0;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(43,42,36,.18);border-radius:10px;background:var(--paper);cursor:pointer}.lg-pic img{display:block;width:100%;height:100%;object-fit:contain}.lg-wait{font-size:11px;letter-spacing:.1em;color:#a8a294}.lg-swap{flex:none;height:44px;padding:0 2px;border:0;background:none;color:var(--warm);font-family:inherit;font-size:12px;letter-spacing:.08em;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.login.lg .primary{width:100%}.lg-err{margin:-4px 0 0;font-size:13px;line-height:1.6;color:#b0563c}.lg-fine{margin:0;font-size:11px;line-height:1.7;letter-spacing:.04em;text-align:center;color:#8a8574}.hud{z-index:4}.nameplates{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}.nameplate{position:absolute;left:0;top:0;max-width:9em;overflow:hidden;padding:2px 8px 3px;border:1px solid rgba(176,122,60,.22);border-radius:999px;background:#fffcf4b8;color:#5b4a36;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:12px;line-height:1.35;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;visibility:hidden}.nameplate.me{border-color:#b07a3c61;background:#fffcf4d1;color:#43301d}*{-webkit-tap-highlight-color:transparent}.stage,.lobby,.login{position:fixed;inset:0}.stage{overflow:hidden}:root{--day: #f7f2e6;--paper: #fffdf7;--ink: #2b2a24;--dim: #6f6c5c;--line: rgba(43, 42, 36, .12);--warm: #b07a3c;--green: #5e8c4a}body{margin:0;background:var(--day);color:var(--ink);font-family:Songti SC,"Noto Serif SC",SimSun,serif;overscroll-behavior:none}.lobby{overflow-y:auto;background:var(--day);padding:0 0 44px;box-sizing:border-box}.bar{position:sticky;top:0;z-index:6;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#f7f2e6db;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-sizing:border-box}.bar-brand{font-size:17px;letter-spacing:.34em;color:var(--ink)}.bar-right{display:flex;align-items:center;gap:16px;font-size:12px;letter-spacing:.12em;color:var(--dim)}.bar-stat b{color:var(--warm);font-weight:400;margin:0 2px}.bar-who{max-width:9em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.bar-btn{background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:5px 14px;font-family:inherit;font-size:12px;letter-spacing:.1em;cursor:pointer}.bar-btn:hover{background:#2b2a240d}.hero{position:relative;height:318px;overflow:hidden}.hero-sky{position:absolute;inset:0;background:linear-gradient(180deg,#bfe0f2,#d9ecdd 58%,#f3eee2)}.hero-sun{position:absolute;right:24%;top:44px;width:78px;height:78px;border-radius:50%;background:radial-gradient(circle at 46% 40%,#fffdf2,#ffe9b8 62%,#f6d089);box-shadow:0 0 56px 20px #ffe9b880,0 0 120px 44px #ffe9b838}.hero-hill{position:absolute;left:0;right:0;bottom:0;width:100%;display:block}.hero-text{position:absolute;left:64px;top:56px}.hero-kick{margin:0 0 16px;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:11px;letter-spacing:.44em;color:#5f7a52}.hero-text h1{margin:0;font-weight:400;font-size:74px;letter-spacing:.2em;line-height:1;color:#2e3a26}.hero-tag{margin:16px 0 0;font-size:16px;letter-spacing:.1em;color:#4e5a44}.hero-sub{margin:8px 0 0;font-size:13px;letter-spacing:.14em;color:#6b7a5e}.hero-go{margin-top:22px;display:inline-flex;align-items:center;gap:9px;padding:9px 20px;border-radius:999px;border:1px solid rgba(46,58,38,.28);color:#3c4a32;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:12px;letter-spacing:.18em;text-decoration:none;background:#ffffff59}.hero-go i{width:12px;height:1px;background:currentColor;opacity:.7}.head{display:flex;align-items:baseline;justify-content:space-between;width:min(1120px,calc(100% - 128px));margin:30px auto 16px}.head-l{display:flex;align-items:baseline;gap:14px}.head-num{font-size:11px;letter-spacing:.28em;color:#9a9484}.head h2{margin:0;font-weight:400;font-size:21px;letter-spacing:.16em;color:var(--ink)}.head-r{font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:11px;letter-spacing:.14em;color:#78735f}.grid{width:min(1120px,calc(100% - 128px));margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:0 16px;padding:16px 18px;text-align:left;background:var(--paper);border:1px solid #e6dcc6;border-radius:14px;color:var(--ink);font-family:inherit;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.card:hover{border-color:#cdbd94;box-shadow:0 8px 22px #5a503214;transform:translateY(-1px)}.card:active{transform:scale(.995)}.glyph{width:40px;height:40px;stroke:var(--warm);stroke-width:1.2;fill:none;stroke-linecap:round;stroke-linejoin:round}.card-main{display:flex;flex-direction:column;min-width:0}.place{font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:10.5px;letter-spacing:.3em;color:#78735f}.live{display:inline-block;width:5px;height:5px;margin-right:6px;border-radius:50%;background:var(--green);vertical-align:middle}.card-name{margin-top:4px;font-size:22px;letter-spacing:.12em}.card-blurb{margin-top:3px;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:11.5px;letter-spacing:.03em;color:var(--dim)}.card-meta{text-align:right;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:11px;letter-spacing:.06em;color:var(--dim);line-height:1.8;white-space:nowrap}.card-meta .online{color:#857f6b}.lobby-note{margin:26px 2px 0;text-align:center;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:11px;letter-spacing:.14em;color:#78735f}@media (max-width: 720px){.bar{height:48px;padding:0 18px}.bar-brand{font-size:15px;letter-spacing:.28em}.bar-right{gap:12px}.bar-stat{display:none}.hero{height:236px}.hero-sun{right:16%;top:26px;width:54px;height:54px}.hero-text{left:26px;top:44px}.hero-kick{font-size:10px;letter-spacing:.34em;margin-bottom:12px}.hero-text h1{font-size:52px;letter-spacing:.16em}.hero-tag{font-size:13.5px;margin-top:10px}.hero-go{margin-top:14px;padding:7px 16px;font-size:11px}.head{width:calc(100% - 40px);margin:20px auto 10px}.head h2{font-size:16px}.head-r{display:none}.grid{width:calc(100% - 40px);grid-template-columns:1fr;gap:0}.card{grid-template-columns:34px 1fr auto;gap:0 12px;padding:12px 4px;border:0;border-radius:0;border-bottom:1px solid #e6dcc6;background:none}.card:first-child{border-top:1px solid #e6dcc6}.card:hover{box-shadow:none;transform:none}.glyph{width:28px;height:28px}.place{font-size:9.5px;letter-spacing:.26em}.card-name{font-size:19px;margin-top:3px}.card-blurb{display:block;margin-top:2px;font-size:11px;letter-spacing:.02em;color:#8a8574;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw}.card{padding:10px 4px}.card-meta{font-size:10.5px;line-height:1.7}.lobby-note{width:calc(100% - 40px);margin:14px auto 0;font-size:10px}}.vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,transparent 58%,rgba(46,58,38,.16) 100%)}.hud{position:fixed;inset:0;pointer-events:none;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:var(--ink);user-select:none}.topscrim{position:absolute;top:0;left:0;right:0;height:92px;background:linear-gradient(to bottom,#ffffff6b,#fff0);pointer-events:none}.hud-top{position:absolute;top:max(10px,env(safe-area-inset-top));left:10px;right:10px;display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:12px;background:#fffdf7cc;border:1px solid rgba(43,42,36,.1);backdrop-filter:blur(10px);pointer-events:auto}.hud-place{flex:1;font-family:Songti SC,"Noto Serif SC",SimSun,serif;font-size:15px;letter-spacing:.2em;color:var(--ink)}.hud-people{font-size:11px;letter-spacing:.08em;color:#6f7468}.hud-score{font-size:22px;font-weight:300;letter-spacing:.06em;color:var(--ink)}.hud-score i{font-style:normal;font-size:12px;color:var(--dim);margin-left:2px}.back,.board-btn,.ghost,.mini{background:transparent;border:1px solid rgba(43,42,36,.14);color:var(--ink);border-radius:999px;padding:6px 14px;font-family:inherit;font-size:12px;letter-spacing:.1em;cursor:pointer}.back:hover,.ghost:hover,.board-btn:hover{background:#2b2a240f}.board-btn{padding:6px 12px}.joy{position:absolute;left:18px;bottom:max(24px,env(safe-area-inset-bottom));width:112px;height:112px;border-radius:50%;border:1px solid rgba(43,42,36,.16);background:#fffdf747;pointer-events:auto;touch-action:none}.joy i{position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:#2b2a2424}.action{position:absolute;right:20px;bottom:max(30px,env(safe-area-inset-bottom));width:96px;height:96px;border-radius:50%;border:1px solid rgba(176,122,60,.45);background:#fffdf7d1;color:#6b4a1e;font-family:Songti SC,"Noto Serif SC",SimSun,serif;font-size:15px;letter-spacing:.1em;line-height:1.35;padding:0 10px;backdrop-filter:blur(8px);pointer-events:auto;cursor:pointer;transition:transform .1s ease,background .2s ease}.action.hit{transform:scale(.93);background:#ffe9b8e6}.nudge{position:absolute;left:50%;bottom:26%;transform:translate(-50%);padding:9px 18px;border-radius:20px;background:#fffdf7f0;border:1px solid rgba(43,42,36,.1);box-shadow:0 6px 18px #5a50321a;font-size:13px;letter-spacing:.06em;white-space:nowrap}.board{position:absolute;right:14px;top:calc(max(14px,env(safe-area-inset-top)) + 46px);width:min(300px,78vw);max-height:60vh;overflow-y:auto;padding:14px 16px;border-radius:14px;background:#fffdf7f5;border:1px solid rgba(43,42,36,.1);box-shadow:0 12px 34px #5a503224;pointer-events:auto;font-size:13px}.board-head{display:flex;justify-content:space-between;align-items:center;letter-spacing:.12em;color:var(--ink)}.board-head button{background:none;border:0;color:var(--dim);font-family:inherit;font-size:12px;cursor:pointer}.board-tabs{display:flex;gap:4px}.board-tabs button{background:none;border:1px solid transparent;border-radius:999px;padding:2px 8px;color:#8a8574;font-family:inherit;font-size:12px;cursor:pointer}.board-tabs button.on{color:var(--warm);border-color:#b07a3c47}.board-share{width:100%;margin-top:12px;padding:9px 0;border-radius:10px;border:1px solid rgba(176,122,60,.3);background:transparent;color:var(--ink);font-family:inherit;font-size:13px;letter-spacing:.14em;cursor:pointer}.board-share:hover{background:#b07a3c14}.board ol{list-style:none;margin:10px 0 0;padding:0}.board li{display:flex;gap:10px;padding:6px 0;border-bottom:1px solid rgba(43,42,36,.07);color:#4d4a3e}.board li.me{color:var(--warm)}.rank{width:1.6em;color:#9a9484}.bname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bval{color:#8a8574}.board-empty,.board-me{margin:12px 0 0;font-size:12px;color:var(--dim)}.login{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:0 26px;box-sizing:border-box;background:var(--day)}.login .back{position:absolute;left:16px;top:max(16px,env(safe-area-inset-top))}.login h1{margin:0;font-size:30px;font-weight:500;letter-spacing:.4em;padding-left:.4em}.login-sub{margin:0 0 12px;font-size:13px;color:var(--dim);letter-spacing:.08em}.field{display:flex;flex-direction:column;gap:6px;width:min(340px,100%);font-size:12px;color:var(--dim);letter-spacing:.1em}.field input{height:44px;padding:0 14px;border-radius:10px;border:1px solid rgba(43,42,36,.16);background:var(--paper);color:var(--ink);font-family:inherit;font-size:16px;letter-spacing:.14em}.field input:focus{outline:2px solid rgba(176,122,60,.3);outline-offset:0}.code-row{display:flex;gap:8px}.code-row input{flex:1}.mini{height:44px;padding:0 16px;border-radius:10px}.primary{width:min(340px,100%);height:46px;margin-top:8px;border-radius:999px;border:1px solid rgba(176,122,60,.4);background:var(--paper);color:var(--ink);font-family:inherit;font-size:15px;letter-spacing:.3em;padding-left:.3em;cursor:pointer}.primary:disabled{opacity:.4;cursor:default}.hint{margin:0;font-size:13px;color:var(--warm);letter-spacing:.08em}.err{margin:0;font-size:13px;color:#b0563c}.fine{margin:6px 0 0;font-size:11px;color:#8a8574}.admin{position:fixed;inset:0;overflow-y:auto;background:var(--day);color:var(--ink);padding:22px 28px 40px;box-sizing:border-box;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}.admin.gate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.admin.gate h1{margin:0;font-family:Songti SC,"Noto Serif SC",serif;font-size:28px;letter-spacing:.3em;font-weight:500}.admin.gate form{display:flex;gap:8px}.admin.gate input{height:42px;width:240px;padding:0 14px;border-radius:10px;border:1px solid rgba(43,42,36,.18);background:var(--paper);color:var(--ink);font-family:inherit;font-size:15px}.admin.gate button,.admin-btn{height:42px;padding:0 18px;border-radius:10px;border:1px solid rgba(176,122,60,.36);background:var(--paper);color:var(--ink);font-family:inherit;font-size:14px;cursor:pointer}.admin-top{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid rgba(43,42,36,.1);padding-bottom:12px;margin-bottom:18px}.admin-top b{font-family:Songti SC,"Noto Serif SC",serif;font-size:20px;letter-spacing:.24em}.admin-top span{font-size:12px;color:var(--dim)}.admin-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}.admin-card{background:var(--paper);border:1px solid #e6dcc6;border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}.admin-card span{font-size:12px;color:var(--dim);letter-spacing:.1em}.admin-card b{font-size:30px;font-weight:500;letter-spacing:.02em}.admin-card i{font-style:normal;font-size:11px;color:#8a8574}.admin-block{margin-bottom:22px}.admin-block h2{margin:0 0 10px;font-size:14px;font-weight:500;letter-spacing:.14em;color:#5b5a4c}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{text-align:left;padding:8px 10px;border-bottom:1px solid rgba(43,42,36,.07)}.admin-table th{font-weight:400;color:var(--dim);font-size:12px}.admin-bars{display:flex;align-items:flex-end;gap:4px;height:110px;padding:8px 6px 18px;background:var(--paper);border:1px solid #e6dcc6;border-radius:12px}.admin-bar{position:relative;flex:1;height:100%;display:flex;align-items:flex-end}.admin-bar i{display:block;width:100%;min-height:2px;border-radius:3px 3px 0 0;background:linear-gradient(180deg,#d1a26a,#b07a3c)}.admin-bar span{position:absolute;bottom:-16px;left:0;font-size:10px;color:#9a9484}.admin-sub{margin:0;font-size:13px;color:var(--dim)}.admin-foot{display:flex;justify-content:space-between;align-items:center;margin-top:26px}.admin-foot a,.admin-back{color:var(--warm);text-decoration:none;font-size:13px}@media (max-width: 720px){.admin{padding:16px 16px 32px}.admin-cards{grid-template-columns:1fr 1fr}.admin-card b{font-size:24px}}.pops{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:6}.pop{position:absolute;padding:2px 12px 3px;border-radius:999px;background:#fffcf4c7;box-shadow:0 2px 10px #5a3c141a;font-size:21px;font-weight:700;letter-spacing:.02em;color:#8a5220;white-space:nowrap;will-change:transform,opacity}.lobby-note .ver{margin-left:10px;font-size:11px;letter-spacing:.06em;color:#a39d8c}.fb-pill{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(176,122,60,.28);background:#fffdf7e6;color:#8a7b62;font-family:inherit;font-size:12px;letter-spacing:.06em;cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 2px 10px #5a461e0f;z-index:20}.fb-pill:hover{color:#6d5c40;border-color:#b07a3c73}.fb-box{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:min(320px,calc(100vw - 32px));padding:14px 14px 12px;border-radius:14px;border:1px solid #e6dcc6;background:var(--paper);box-shadow:0 10px 30px #463c2824;z-index:21}.fb-head{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:#5b5a4c;letter-spacing:.04em;margin-bottom:8px}.fb-x{border:0;background:none;font-size:17px;line-height:1;color:#a39d8c;cursor:pointer;padding:0 2px}.fb-input{width:100%;box-sizing:border-box;resize:none;border:1px solid #e2dccd;border-radius:10px;background:#fffdf8;padding:9px 10px;font-family:inherit;font-size:13px;line-height:1.6;color:var(--ink);outline:none}.fb-input:focus{border-color:#b07a3c80;box-shadow:0 0 0 3px #b07a3c14}.fb-foot{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.fb-count{font-size:11px;color:#a39d8c;letter-spacing:.04em}.fb-send{height:32px;padding:0 16px;border-radius:999px;border:1px solid rgba(176,122,60,.4);background:#b07a3c;color:#fffdf7;font-family:inherit;font-size:12.5px;letter-spacing:.08em;cursor:pointer}.fb-send:disabled{opacity:.45;cursor:default}.fb-done{margin:6px 2px 4px;font-size:13px;color:#6d7a5a;letter-spacing:.04em}.fb-err{margin:8px 2px 0;font-size:12px;color:#b0563c}@media (max-width: 720px){.fb-pill{bottom:calc(58px + env(safe-area-inset-bottom,0px));right:14px;height:32px;padding:0 12px}.fb-box{bottom:calc(58px + env(safe-area-inset-bottom,0px));right:14px}}.admin-fb{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.admin-fb li{background:var(--paper);border:1px solid #e6dcc6;border-radius:12px;padding:10px 14px}.admin-fb-meta{display:flex;justify-content:space-between;font-size:11.5px;color:#8a8574;margin-bottom:4px}.admin-fb-meta b{font-weight:500;color:#5b5a4c}.admin-fb p{margin:0;font-size:13px;line-height:1.7;color:var(--ink);white-space:pre-wrap;word-break:break-word}.fb-mask{position:fixed;inset:0;background:#2b2a2414;z-index:20}
