.card-hub,.card-table{max-width:860px;width:min(860px,calc(100% - 24px));background:#fffaf0}.card-hub h2,.card-table h2{font-family:var(--serif);margin:0 0 8px}.card-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.card-choice{display:block;border:1px solid #c99d5d;border-radius:14px;padding:18px;color:#392526;background:white;text-decoration:none}.card-choice:hover{box-shadow:0 5px 15px #4b203025;transform:translateY(-2px)}.card-choice h3{font-size:1.15rem;margin:12px 0 8px}.card-choice p{line-height:1.6;margin:0 0 12px}.card-choice>span:last-child{font-size:.875rem;color:#8c2536}.card-choice-mark{display:block;color:#a12e43;font:700 1.7rem Georgia,serif;letter-spacing:.15em}.kizuna-dealer{display:flex;align-items:center;gap:16px;position:relative;margin:0 0 16px;padding:8px 14px;background:linear-gradient(110deg,#382039,#66263b);color:#fff4e4;border-radius:16px;min-height:140px;overflow:hidden}.kizuna-dealer img{height:155px;width:108px;object-fit:cover;object-position:50% 12%;align-self:flex-end;filter:drop-shadow(0 4px 6px #0005)}.kizuna-dealer div{flex:1}.kizuna-dealer strong{color:#efcf90;font-family:var(--serif);font-size:1.1rem}.kizuna-dealer p{font-size:1rem;line-height:1.65;margin:8px 0}.dealer-flight{position:absolute;left:70px;top:90px;opacity:0;width:35px;height:48px;background:#7e293c;border:2px solid #e8c783;border-radius:4px;pointer-events:none}.is-dealing .dealer-flight{animation:card-deal .85s ease-out}.is-dealing .kizuna-dealer img{animation:dealer-nod .8s ease-in-out}.card-table{position:relative}.card-table #cardSubtitle{margin:0 0 14px}.card-start-pane{padding:20px;border:1px solid #d3b788;background:white;border-radius:14px}.card-start-pane p,.card-table details{line-height:1.85}.card-table .card-primary{background:#92283b;color:white;border-color:#92283b;min-width:160px}.card-table details{margin:16px 0}.card-table details p{padding:0 8px}.card-table .card-board{background:#174e49;color:white;border:4px double #c6aa70;border-radius:16px;padding:16px;min-height:220px}.card-row{margin:8px 0 18px}.card-row h3{font-size:.95rem;font-weight:500;margin:0 0 8px}.card-hand{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.mini-game .playing-card{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;width:66px;height:94px;min-height:0;min-width:0;padding:5px;border:1px solid #d8cdb9;border-radius:7px;background:#fffdf7;color:#202133;box-shadow:0 3px 5px #0003;font-family:Georgia,serif;line-height:1;font-weight:700;transition:transform .15s,border-color .15s;touch-action:manipulation}.playing-card b{font-size:1rem;text-align:left}.playing-card>span{font-size:1.6rem;text-align:center}.playing-card i{font-style:normal;font-size:.875rem;text-align:left;transform:rotate(180deg)}.mini-game .playing-card.red,.seven-lane.red{color:#a72640}.mini-game .playing-card:disabled{opacity:1;cursor:default}.mini-game .playing-card.selected{outline:3px solid #f4c45b;transform:translateY(-5px)}.mini-game .playing-card:not(:disabled):hover{border-color:#f4c45b;transform:translateY(-3px)}.mini-game .playing-card.card-back{background:repeating-linear-gradient(45deg,#86283f 0 5px,#96344a 5px 6px);border:3px double #efd49c;justify-content:center;color:#f7dda4}.opponent-hand .playing-card{width:47px;height:70px}.card-comparison{display:flex;gap:32px;justify-content:center}.card-comparison .playing-card{margin:auto}.card-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:14px}.card-score,.card-instruction{text-align:center;font-size:1rem;line-height:1.6}.card-score{font-variant-numeric:tabular-nums}.card-table #cardResult{background:#fff0c9;border:1px solid #d0a249;border-radius:12px;padding:20px;margin-top:16px;text-align:center}.card-table #cardResultText{font-weight:700;line-height:1.7}.card-tools{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-top:14px;font-size:.875rem}.card-tools label{display:flex;align-items:center;gap:8px;min-height:44px}.card-tools input{width:20px;height:20px}.card-pause-notice,.card-restart-confirm{background:#f5e3bc;color:#462824;padding:14px;border-radius:10px;margin:12px 0;line-height:1.7}.seven-lanes{display:grid;gap:6px;margin-bottom:18px}.seven-lane{display:grid;grid-template-columns:22px 65px 1fr;align-items:center;gap:6px;background:#fffdf7;color:#202133;border-radius:6px;padding:8px}.seven-run{display:grid;grid-template-columns:repeat(13,1fr);gap:2px}.seven-run i{font:normal .875rem Georgia,serif;text-align:center;opacity:.22;padding:5px 0}.seven-run i.placed{opacity:1;background:#eedcba;border-radius:3px}.speed-center{display:flex;justify-content:center;gap:30px;border-block:1px solid #ffffff35;margin:16px 0;padding:14px 0}.speed-hand{flex-wrap:nowrap;gap:6px}.speed-hand .playing-card{flex:0 1 62px}.sol-top{display:grid;grid-template-columns:1fr 1fr 4fr;gap:7px;align-items:start;margin-bottom:18px}.sol-found{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.sol-top .playing-card{width:100%;height:90px}.mini-game .empty-card{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #e6cf9c;background:#ffffff0b;color:#fff5db;border-radius:6px;min-width:0;width:100%;height:90px;padding:4px;font-size:1rem}.empty-card small{font-size:.875rem;margin-top:5px}.sol-cols{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;align-items:start;min-height:235px;padding-bottom:12px}.mini-game .sol-target{width:100%;font-size:.875rem;padding:5px 0;min-height:36px;background:#ffffff16;border:1px solid #c7c4a66b;color:white;margin-bottom:5px}.sol-column .playing-card{width:100%;height:90px;position:relative;margin-bottom:-58px}.sol-column .playing-card:last-child{margin-bottom:0}.sol-column .playing-card b{font-size:.95rem}.sol-column .playing-card span{font-size:1.4rem}.sol-top>div>button[data-action=stock]{font-size:.875rem;padding:5px;min-height:90px;width:100%}.card-board .game-tip{color:#f0e8d5}.card-table [hidden]{display:none!important}.card-choice:focus-visible{outline:3px solid #96263a;outline-offset:3px}@keyframes card-deal{0%{opacity:1;transform:translate(0,0) rotate(-12deg)}90%{opacity:1}100%{opacity:0;transform:translate(160px,85px) rotate(8deg)}}@keyframes dealer-nod{50%{transform:translateY(4px) rotate(-2deg)}}@media(max-width:520px){.card-table{padding:12px}.card-table .card-board{padding:10px}.kizuna-dealer{gap:8px;padding:4px 10px;min-height:125px}.kizuna-dealer img{height:135px;width:86px}.card-library{gap:8px}.card-choice{padding:14px 11px}.card-choice p{font-size:.875rem}.sol-cols,.sol-found,.sol-top{gap:4px}.sol-top .playing-card,.sol-column .playing-card,.mini-game .empty-card{height:72px;padding:3px}.sol-column .playing-card{margin-bottom:-42px}.sol-column .playing-card b,.sol-top .playing-card b{font-size:.875rem;letter-spacing:-.05em}.sol-column .playing-card span{font-size:1.2rem}.sol-column .playing-card i{font-size:.875rem}.seven-lane{grid-template-columns:18px 1fr}.seven-run{grid-column:1/-1}.card-tools{gap:8px}.card-tools button{padding:8px 10px}}@media(prefers-reduced-motion:reduce){.is-dealing .dealer-flight,.is-dealing .kizuna-dealer img{animation:none}.playing-card,.card-choice{transition:none}}

.card-table .card-tools label[hidden]{display:none!important}

.kizuna-dealer .kizuna-bubble{position:relative;background:#fffaf0;color:#422735;border:1px solid #e9c992;border-radius:14px;padding:12px 14px;line-height:1.7;min-height:3.2em}.kizuna-bubble::before{content:"";position:absolute;left:-8px;top:18px;width:12px;height:12px;transform:rotate(45deg);background:#fffaf0;border-left:1px solid #e9c992;border-bottom:1px solid #e9c992}.kizuna-dealer.is-speaking img{animation:dealer-nod 1s ease-in-out infinite}.game-voice-dealer{min-height:104px;margin-bottom:6px}.game-voice-dealer img{height:110px;width:80px}.game-voice-control{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.875rem;margin-bottom:8px}.game-voice-control input{width:20px;height:20px}@media(prefers-reduced-motion:reduce){.kizuna-dealer.is-speaking img{animation:none}}
