/* TapePlay original browser presentation, MIT. No imported art/audio/fonts. */
:root{color-scheme:light;--paper:#f5f1e8;--ink:#26362c;--line:#d8ddcf;--muted:#657063;--red:#bd5140;font-family:system-ui,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden;background:var(--paper);color:var(--ink)}button,input{font:inherit}button{min-height:44px;border:1px solid var(--line);border-radius:9px;padding:8px 13px;background:#fffdf8;color:var(--ink);cursor:pointer;touch-action:manipulation}button:disabled{opacity:.48;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a98b4a;outline-offset:2px}a{color:inherit}#tp-header{display:flex;align-items:center;gap:12px;padding:7px 16px;min-height:52px;border-bottom:1px solid var(--line)}#tp-header>a{font-size:23px;text-decoration:none;font-weight:750;letter-spacing:-1px;white-space:nowrap}#tp-header>a span{color:var(--red)}#title{flex:1;min-width:0;font-size:13px}#language{font-size:11px;min-height:34px;padding:5px 9px}#reload-note{font-size:10px;padding:4px 16px;background:#e7e4d7;color:#715f3c}#limits{padding:6px 16px;font-size:11px;line-height:1.7;border-bottom:1px solid var(--line)}#limits summary{cursor:pointer}#limits p{max-width:1100px;margin:8px auto}#app{max-width:1100px;margin:auto;padding:18px 18px 0}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.2}h2{font-size:20px}h3{font-size:15px}.panel{padding:22px;border:1px solid var(--line);border-radius:15px;background:#fffdf7;margin-bottom:16px}.entry{max-width:520px;margin:28px auto}.entry label{display:grid;gap:8px;font-size:13px}.entry input{width:100%;min-height:46px;font-size:16px;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}.entry button{width:100%;margin-top:15px}.hint{font-size:12px;color:var(--muted);line-height:1.6}.primary{background:#2f513e;color:#fff9e9;border-color:#2f513e}.table-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.table-heading h1{font-size:23px;margin:0}.table-heading .tag{font-size:11px;color:var(--muted)}.players{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:10px}.player{min-width:0;border:1px solid #537461;border-radius:10px;background:#204934;color:#f4edd7;padding:11px}.player.current{box-shadow:inset 0 0 0 2px #e5c98d}.player .name{font-size:13px;overflow-wrap:anywhere}.player .stats{display:flex;flex-wrap:wrap;gap:7px;font-size:11px;color:#d1dbbc;margin-top:6px}.player .kind{font-size:10px;color:#a9bda6;margin-top:4px}.empty{background:#e8ebdf;color:#657063;border-style:dashed;border-color:#c1cbb8}.board{padding:15px;border-radius:14px;background:radial-gradient(ellipse,#366a4b,#1e402f);color:#f8eed0;margin-bottom:12px;min-height:105px}.board .line{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px}.public-cards{display:flex;gap:4px;flex-wrap:wrap;margin-top:10px}.small-card{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:39px;padding:3px;border-radius:4px;background:#fff9e9;color:#24372b;font-size:13px}.red{color:#b14436!important}.own-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;margin-bottom:8px}.hand{display:grid;grid-template-columns:repeat(17,minmax(0,1fr));gap:5px;padding:10px 3px 9px}.card{min-width:0;min-height:0;height:80px;padding:6px 2px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;border:1px solid #c9cebd;border-radius:7px;background:#fffcf2;color:#27382d;box-shadow:0 3px 5px #20362412}.card b{font-size:18px}.card span{font-size:24px}.card.selected{outline:3px solid #a58236;transform:translateY(-6px);background:#fff4c7}.actions{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:7px;padding:11px 0 max(11px,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);z-index:5}.actions button{flex:1;min-width:70px}.actions .selection{width:100%;font-size:11px;color:var(--muted);margin:0}.actions #play{flex:1.5}.result{padding:16px;border:1px solid #d2ba7e;background:#fff8e3;border-radius:12px;margin:10px 0}.result h2{margin-bottom:7px}.scores{display:flex;gap:12px;flex-wrap:wrap;font-size:13px}.scores span{overflow-wrap:anywhere}.events{font-size:12px;color:var(--muted);line-height:1.8;margin-top:13px}.events ul{padding-left:18px}.events li{overflow-wrap:anywhere}#status{max-width:1100px;margin:0 auto;padding:8px 18px;font-size:12px;line-height:1.5;min-height:34px;overflow-wrap:anywhere}footer{font-size:10px;color:var(--muted);text-align:center;padding:10px 15px 25px}.waiting-tools{display:flex;gap:10px;flex-wrap:wrap}.waiting-tools button{flex:1}.source-note{font-size:11px;color:var(--muted);line-height:1.7;margin-top:12px}.errors{color:#a23d31!important}
@media(max-width:760px){#app{padding:12px 12px 0}#tp-header{padding:5px 12px;gap:8px;min-height:46px}#tp-header>a{font-size:21px}#title{font-size:11px}#reload-note{padding:4px 12px}#limits{padding:5px 12px}.entry{margin:14px auto}.panel{padding:18px}.table-heading h1{font-size:20px}.players{gap:6px}.player{padding:9px 7px}.player .name{font-size:12px}.player .stats{font-size:10px;gap:5px}.board{padding:12px;min-height:90px}.hand{grid-template-columns:repeat(9,minmax(0,1fr));gap:5px}.card{height:70px}.card b{font-size:16px}.card span{font-size:21px}.actions button{padding:8px 10px;font-size:12px}.events{margin-top:9px}}
@media(max-width:430px){.hand{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}.card{height:64px}.card b{font-size:15px}.card span{font-size:20px}.player .name{font-size:11px}.player .stats{display:block}.player .stats span{display:block;margin-top:2px}.table-heading .tag{font-size:10px}.own-heading{font-size:12px}.actions{gap:5px}}
@media(orientation:landscape)and(max-height:500px){#tp-header{min-height:38px;padding:3px 12px}#language{min-height:30px}#reload-note{padding-top:2px;padding-bottom:2px}#limits{padding-top:2px;padding-bottom:2px}#app{padding-top:9px}.table-heading{margin-bottom:6px}.players{margin-bottom:7px}.player{padding:5px 8px}.player .stats{display:flex;margin-top:3px}.player .kind{display:none}.board{padding:8px 10px;min-height:68px;margin-bottom:8px}.hand{grid-template-columns:repeat(17,minmax(0,1fr));gap:3px;padding-top:9px}.card{height:57px;padding:4px 1px}.card b{font-size:14px}.card span{font-size:18px}.actions{padding-top:7px;padding-bottom:7px}.actions button{min-height:36px}.events{margin-top:6px}.entry{margin:8px auto}.entry h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.board .hint{color:#c8d5bb}
