/* 卓で回して遊ぶお題カード。色とフォントはトップページのトークンをそのまま使う */
#games{background:var(--bg-2)}
.party{margin-top:clamp(40px,4.5vw,64px)}
.party-kick{font:600 .8125rem 'Space Grotesk',sans-serif;letter-spacing:.14em;color:var(--yellow);margin-bottom:18px}
.party-head h3{font-size:clamp(1.5rem,2.6vw,2.25rem);font-weight:900;letter-spacing:-.03em;line-height:1.4;margin-bottom:14px}
.party-head h3 i{font-style:normal;color:var(--yellow)}
.party-head>p{font-size:1rem;line-height:2;color:var(--dim);max-width:34em}
.party-stage{display:grid;grid-template-columns:.95fr 1.05fr;gap:5vw;align-items:center;margin-top:44px}

.pcard{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(250px,23vw,330px);background:var(--bg-3);border:1px solid var(--line-2);padding:clamp(26px,2.6vw,38px);overflow:hidden}
.pcard::before{content:'';position:absolute;inset:0;background:radial-gradient(120% 90% at 85% 0%,#e79eb926,transparent 60%);pointer-events:none}
.pcard-type{position:absolute;top:clamp(24px,2.4vw,34px);left:clamp(26px,2.6vw,38px);font:600 .75rem 'Space Grotesk','Noto Sans JP',sans-serif;letter-spacing:.16em;color:var(--yellow)}
.pcard-no{position:absolute;top:clamp(18px,2vw,26px);right:clamp(22px,2.4vw,32px);font:700 clamp(2.4rem,3.6vw,3.4rem)/1 var(--display);color:#ffffff1f;letter-spacing:-.02em}
.pcard-title{font-size:clamp(1.3rem,2.2vw,1.875rem);font-weight:900;line-height:1.5;letter-spacing:-.02em;margin-bottom:16px}
.pcard-body{font-size:.9375rem;line-height:2;color:var(--dim)}
.pcard[data-k="sing"] .pcard-type{color:var(--yellow)}
.pcard[data-k="talk"] .pcard-type{color:var(--blue)}
.pcard[data-k="cheers"] .pcard-type{color:var(--green)}
.pcard-tip{display:inline-block;margin-top:18px;padding:6px 11px;border:1px solid var(--line-2);font-size:.75rem;color:var(--faint)}
.pcard-tip[hidden]{display:none!important}
.js .pcard.dealt{animation:pcardIn .45s var(--e) both}
@keyframes pcardIn{from{opacity:0;transform:translateY(14px) rotate(-1.2deg)}to{opacity:1;transform:none}}

.party-side{display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.party-draw{min-width:230px;justify-content:space-between}
.party-count{font:600 .8125rem 'Space Grotesk',sans-serif;letter-spacing:.08em;color:var(--faint)}
.party-legend{display:flex;flex-wrap:wrap;gap:8px}
.party-legend span{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--line);font-size:.8125rem;color:var(--dim)}
.party-legend span::before{content:"";width:8px;height:8px;background:currentColor}
.party-legend span:nth-child(1)::before{background:var(--yellow)}
.party-legend span:nth-child(2)::before{background:var(--blue)}
.party-legend span:nth-child(3)::before{background:var(--green)}
.party-note{font-size:.8125rem;line-height:1.9;color:var(--faint);max-width:30em}
.party-note::before{content:'＊';margin-right:7px}

.gms-head{margin-top:clamp(64px,7vw,104px);border-top:1px solid var(--line);padding-top:clamp(40px,4vw,56px)}
.gms-head h3{font-size:clamp(1.5rem,2.6vw,2.25rem);font-weight:900;letter-spacing:-.03em;line-height:1.4}
.gms-head h3 i{font-style:normal;color:var(--yellow)}
.gms{display:grid;grid-template-columns:1fr 1fr;gap:34px 6vw;margin-top:clamp(40px,4vw,58px)}
.gm{border-top:1px solid var(--line-2);padding-top:22px;min-width:0}
.gm-no{display:block;font:600 .75rem 'Space Grotesk',sans-serif;letter-spacing:.14em;color:var(--yellow);margin-bottom:14px}
.gm h3{font-size:clamp(1.125rem,1.7vw,1.375rem);font-weight:900;letter-spacing:-.02em;margin-bottom:14px}
.gm-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.gm-meta span{padding:5px 10px;border:1px solid var(--line);font-size:.75rem;color:var(--dim)}
.gm-rule{font-size:.9375rem;line-height:2;color:var(--dim)}
.gm-drink{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:.8125rem;line-height:1.9}
.gm-drink::before{content:'＋';color:var(--yellow);font-weight:700;margin-right:7px}
.gms-note{margin-top:clamp(40px,4vw,58px);font-size:.8125rem;line-height:1.95;color:var(--faint);max-width:52em}
.gms-note::before{content:'＊';margin-right:7px}

@media(max-width:900px){
  .gms{grid-template-columns:1fr;gap:30px}
  .gms-head{margin-top:60px;padding-top:36px}
  .party-stage{grid-template-columns:1fr;gap:30px;align-items:stretch}
  .pcard{min-height:250px}
  .party-side{width:100%}
  .party-draw{width:100%;min-width:0}
}
@media(max-width:520px){
  .party{margin-top:36px}
  .gms-head h3{font-size:1.5rem}
  .gm h3{font-size:1.125rem}
  .gm-rule{font-size:.875rem}
  .party-head h3{font-size:1.5rem}
  .party-head>p{font-size:.9375rem}
  .pcard{min-height:240px;padding:24px}
  .pcard-title{font-size:1.25rem}
  .pcard-body{font-size:.875rem}
  .party-legend span{font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){.pcard.dealt{animation:none!important}}
.motion-paused .pcard.dealt{animation:none!important}

/* 遊びの一覧（ブーちゃんを3秒長押しで開く） */
.gsheet{position:fixed;inset:0;z-index:150;display:flex;justify-content:center;background:var(--bg-2);color:var(--fg);overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;transition:visibility .3s,opacity .3s;padding:0 5vw}
.gsheet.on{visibility:visible;opacity:1}
.gsheet-in{width:min(760px,100%);padding:clamp(28px,5vw,56px) 0 clamp(40px,6vw,72px)}
.gsheet-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}
.gsheet-close{display:flex;align-items:center;gap:14px;min-height:44px;font:600 .875rem 'Space Grotesk','Noto Sans JP',sans-serif;letter-spacing:.06em}
.gsheet-close span{font-size:1.75rem;line-height:1}
.gsheet-title{font-size:clamp(1.875rem,4vw,2.75rem);font-weight:900;letter-spacing:-.035em;line-height:1.3}
.gsheet-lead{margin-top:12px;font-size:.9375rem;line-height:1.9;color:var(--dim)}
.gsheet-draw{width:100%;justify-content:space-between;margin-top:26px}
.gsheet-list{margin-top:34px}
.gsheet-item{border-top:1px solid var(--line-2);padding:22px 0 24px}
.gsheet-no{display:block;font:600 .75rem 'Space Grotesk',sans-serif;letter-spacing:.14em;color:var(--yellow);margin-bottom:10px}
.gsheet-item h3{font-size:1.1875rem;font-weight:900;letter-spacing:-.02em;margin-bottom:10px}
.gsheet-meta{font:500 .75rem 'Space Grotesk','Noto Sans JP',sans-serif;color:var(--faint);margin-bottom:12px}
.gsheet-rule{font-size:.9375rem;line-height:1.95;color:var(--dim)}
.gsheet-drink{margin-top:10px;font-size:.8125rem;line-height:1.85}
.gsheet-foot{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}
.gsheet-foot .btn{width:100%;justify-content:space-between}
.gsheet-note{margin-top:18px;font-size:.8125rem;line-height:1.9;color:var(--faint)}
.gsheet-note::before{content:'＊';margin-right:7px}
@media(prefers-reduced-motion:reduce){.gsheet{transition:none}}
