:root{--gold: #d9b36a;--gold-bright: #f2d17e;--red: #b2332b;--ink: #e8e2d2;--panel: rgba(16, 18, 24, .82);--line: rgba(217, 179, 106, .35)}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%;overflow:hidden;background:#0b0d12;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:var(--ink);user-select:none}#scene-container{position:absolute;inset:0}#scene-container canvas{display:block}.hidden{display:none!important}#hud{position:absolute;top:0;left:0;right:0;z-index:10;pointer-events:none}.hud-top{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:linear-gradient(180deg,#080a0ee0,#080a0e00)}.hud-left{display:flex;align-items:center;gap:14px}.mode-badge{font-size:13px;letter-spacing:2px;color:var(--gold);border:1px solid var(--line);border-radius:4px;padding:4px 10px;background:#00000059}.turn-indicator{display:flex;align-items:center;gap:8px;font-size:16px;letter-spacing:1px}.turn-dot{width:13px;height:13px;border-radius:50%;box-shadow:0 0 8px currentColor}.turn-dot.red{background:var(--red);color:var(--red)}.turn-dot.black{background:#4d5365;color:#4d5365}.hud-right{display:flex;gap:10px;pointer-events:auto}.hud-btn{font-size:13px;letter-spacing:1px;color:var(--ink);background:#181b24d9;border:1px solid var(--line);border-radius:5px;padding:7px 14px;cursor:pointer;transition:all .15s ease}.hud-btn:hover{border-color:var(--gold);color:var(--gold-bright);background:#262a36f2}.hud-btn.ghost{opacity:.75}#thinking{margin:10px auto 0;width:fit-content;font-size:13px;letter-spacing:2px;color:var(--gold);background:#00000080;border:1px solid var(--line);border-radius:20px;padding:6px 16px;animation:breathe 1.4s ease-in-out infinite}@keyframes breathe{0%,to{opacity:.55}50%{opacity:1}}#menu{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 40%,#1e1a12b8,#08090df0)}.menu-card{text-align:center;padding:48px 56px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 18px 60px #0009,inset 0 0 60px #d9b36a0a;animation:rise .5s ease both}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.game-title{font-family:Songti SC,STSong,SimSun,serif;font-size:54px;letter-spacing:14px;color:var(--gold-bright);text-shadow:0 0 24px rgba(242,209,126,.35);margin-bottom:10px}.game-subtitle{color:#e8e2d2a6;letter-spacing:4px;font-size:14px;margin-bottom:36px}.menu-buttons{display:flex;gap:16px;justify-content:center;margin-bottom:28px}.menu-btn{font-size:17px;letter-spacing:4px;padding:13px 30px;border-radius:6px;border:1px solid var(--line);background:#181b24e6;color:var(--ink);cursor:pointer;transition:all .16s ease}.menu-btn:hover{transform:translateY(-2px);border-color:var(--gold);color:var(--gold-bright)}.menu-btn.primary{background:linear-gradient(180deg,#b2332bd9,#7e1f1ad9);border-color:#f2d17e80}.menu-btn.primary:hover{box-shadow:0 0 22px #b2332b80}.menu-hint{font-size:12px;line-height:1.9;color:#e8e2d273}#banner{position:absolute;top:17%;left:50%;transform:translate(-50%);z-index:15;font-family:Songti SC,STSong,SimSun,serif;font-size:64px;letter-spacing:20px;color:var(--gold-bright);text-shadow:0 0 30px rgba(242,209,126,.6),0 2px 8px rgba(0,0,0,.8);pointer-events:none}#banner.pop{animation:banner-pop 1.5s ease both}@keyframes banner-pop{0%{opacity:0;transform:translate(-50%) scale(.6)}18%{opacity:1;transform:translate(-50%) scale(1.08)}30%{transform:translate(-50%) scale(1)}78%{opacity:1}to{opacity:0;transform:translate(-50%) scale(1)}}#end-modal{position:absolute;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:#050609ad;backdrop-filter:blur(3px)}.end-card{text-align:center;min-width:320px;padding:40px 48px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 18px 60px #000000a6;animation:rise .35s ease both}#end-title{font-family:Songti SC,STSong,SimSun,serif;font-size:40px;letter-spacing:10px;margin-bottom:10px}#end-modal.red #end-title{color:#e8604f;text-shadow:0 0 22px rgba(224,96,79,.5)}#end-modal.black #end-title{color:#9aa3bd;text-shadow:0 0 22px rgba(154,163,189,.45)}#end-modal.draw #end-title{color:var(--gold-bright)}#end-subtitle{color:#e8e2d299;letter-spacing:2px;margin-bottom:28px}.end-buttons{display:flex;gap:14px;justify-content:center}
