/* Apple experience alignment: persistent navigation, explicit calls and protected play. */
.club-navigation{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin:-8px 0 27px;padding:0 0 17px;gap:16px}.club-navigation>div{display:flex;gap:7px}.club-navigation button{border:0;background:none;padding:9px 12px;color:#aebaa5;font-size:11px;border-radius:6px;min-height:38px}.club-navigation button:hover{background:#ffffff08;color:#efdfc2}.club-navigation .club-nav-home{padding-left:0;color:#efbd9c;font:17px Georgia,serif}.club-navigation small,.club-navigation button span{font-size:7px;letter-spacing:.5px;color:#7f9178;margin-left:6px}#learn-toggle{color:#eedbc1}.match-balls{display:flex;justify-content:space-between;gap:10px;font-size:9px;border-bottom:1px solid var(--line);padding:12px 0;color:#9eaf91}.match-balls strong{font:16px Georgia,serif;font-weight:normal;color:var(--coral);margin:0 5px}.match-balls>span:nth-child(2) strong{color:var(--mint)}.match-balls small{color:#7b8e70;font-size:7px}.call-controls{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.call-controls button{border:1px solid #c4d1b528;border-radius:6px;background:#ffffff04;padding:8px;color:#c3cdb6;font-size:9px;min-height:33px}.call-controls .call-risk{border-color:#e6a88245;color:#e0af8f}.call-controls .call-primary{background:#edbb9622;color:#f0d9b7}.call-controls .call-active{border-color:#efa88c;background:#efa88c22}.table-notice{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:#2d3d31f5;color:#dfdec7;border:1px solid #adb68c55;padding:12px 18px;border-radius:9px;box-shadow:0 9px 25px #0008;font-size:12px;z-index:75}.table-paused .stage:after{content:'TABLE PAUSED';position:absolute;inset:70px 20% 50px;display:grid;place-items:center;background:#101b16a8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:35%;z-index:9;font-size:11px;letter-spacing:4px;color:#dcc8a0;pointer-events:none}.hand-slot .card-index{position:absolute;left:0;right:0;bottom:8px;text-align:center;color:#e5d8ab;font-size:11px;pointer-events:none}.hand-slot[data-dragging=true]{z-index:30!important;transition:none!important;opacity:.85}.hand-slot.risky .playing-card{outline:1px dashed #e5a477;outline-offset:3px}.hand-slot.playable .playing-card{outline:1px solid #e9cd8a88;outline-offset:3px}.hand-slot.illegal{filter:saturate(.5)}.hand-caption button{font-size:9px;border:0;background:none;color:#b9bea5;padding:0}.club-dialog{width:1160px;padding:42px;background:radial-gradient(ellipse at 90% 5%,#88744519,transparent 60%),#1a241f}.club-close{position:absolute;top:22px;right:22px}.club-arrival{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:320px;gap:30px;padding:20px 10px}.club-arrival h2{font:65px/1.08 Georgia,serif;letter-spacing:-2px;margin:20px 0}.club-arrival>div>p{font:20px/1.8 Georgia,serif;color:#a9b69d}.arrival-art{position:relative;height:300px;display:grid;place-items:center;isolation:isolate}.arrival-art #arrival-deck{display:flex;gap:0;transform:rotate(-8deg);--card-width:122px}.arrival-art .playing-card:nth-child(1){transform:translate(35px,18px) rotate(-13deg);z-index:1}.arrival-art .playing-card:nth-child(2){transform:translateY(-10px);z-index:3}.arrival-art .playing-card:nth-child(3){transform:translate(-35px,18px) rotate(13deg);z-index:2}.arrival-orbit{position:absolute;width:260px;height:260px;border:1px solid #c6b37628;border-radius:50%;transform:rotateX(25deg);box-shadow:0 0 65px #acac6b13,inset 0 0 50px #c9a35c09;z-index:-1}.arrival-star{position:absolute;right:35px;top:24px;color:#d9c795;font-size:36px}.arrival-options{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:26px}.arrival-options button{text-align:left;border:1px solid #b8c2a128;border-radius:10px;background:linear-gradient(130deg,#e6c9900a,transparent);padding:24px;color:#dfdfc9;min-height:190px}.arrival-options button:hover{border-color:#dab58b88;box-shadow:0 0 25px #d7ae6d0a}.arrival-number{display:block;font-size:8px;letter-spacing:1.4px;color:#93a287}.arrival-options strong{display:block;margin-top:22px;font:25px Georgia,serif;font-weight:normal}.arrival-options i{float:right;color:#d8b589;font:16px sans-serif}.arrival-options p{font-size:12px;line-height:1.9;color:#95a78a}.arrival-foot{display:flex;justify-content:space-between;color:#768b6a;font-size:9px;margin:27px 0 0;letter-spacing:.3px}.arrival-setup{display:flex;align-items:center;gap:13px;margin-top:20px}.arrival-setup label{font-size:11px;color:#c9d1b8}.arrival-setup select{margin-left:12px;background:#141e18;color:#dfddc1;border:1px solid #afbb9944;border-radius:6px;padding:8px;font-size:11px}.arrival-setup>span{font-size:9px;color:#7e9574}.learning-dialog{width:1240px;max-height:92vh;height:850px;display:none;flex-direction:column;padding:28px}.learning-dialog[open]{display:flex}#courses-container{flex:1;min-height:0;overflow:auto}.deck-dialog{width:1110px;max-height:94vh;overflow:auto;padding:24px}.consequence-dialog{width:580px}.consequence-dialog p{font-size:13px;line-height:1.8;color:#b4c0a6}.consequence-dialog select{width:100%;padding:11px;background:#141d17;color:#dddcc0;border:1px solid #b4c0a633;border-radius:6px;margin:10px 0 18px}.risk-card-row{display:flex;justify-content:center;gap:7px;padding:10px;--card-width:58px}.consequence-actions{display:flex;gap:10px;margin-top:23px}.consequence-actions button{flex:1}.risk-notice{border-left:2px solid #e9a97c;padding:10px 15px;background:#d6a06d0a;font-size:12px;line-height:1.8;color:#d1bea2}.table-life-message{position:absolute;top:12%;left:50%;transform:translateX(-50%);z-index:10;padding:9px 14px;border:1px solid #c8b37c55;background:#253629f0;border-radius:15px;font:italic 13px Georgia,serif;color:#d7d5b9;pointer-events:none}.input-hint{font-size:7px;color:#7f9373;text-align:center;margin-top:9px}.turn-guidance{border:1px solid #e4c6962b;background:#e4c69605;border-radius:7px;padding:10px 12px;font-size:10px;color:#bdc5ac;line-height:1.8;margin-top:12px}.turn-guidance strong{font-weight:normal;color:#ebd2aa}body[data-control-side=left] .companion{order:-1}body[data-control-side=left] .game-layout{grid-template-columns:312px minmax(0,1fr)}body[data-table-color=blue] .felt{background:radial-gradient(ellipse at 50% 35%,#354f5c,#283e4d 60%,#1d303c)}body[data-table-color=black] .felt{background:radial-gradient(ellipse at 50% 35%,#343b3a,#232b29 60%,#1a211f)}body[data-text-size=large] .game-controls p,body[data-text-size=large] .call-controls button{font-size:12px}body[data-text-size=larger] .game-controls p,body[data-text-size=larger] .call-controls button{font-size:14px}body[data-card-size=large] .your-hand .playing-card{width:calc(var(--card-width)*1.25)}body[data-card-size=largest] .your-hand .playing-card{width:calc(var(--card-width)*1.5)}.your-hand{overflow-x:auto;overflow-y:visible;justify-content:safe center}.comic-landing{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg);color:#f4dca8;font:italic 34px Georgia,serif;text-shadow:2px 2px #403528;z-index:12;pointer-events:none;animation:comic-pop .6s ease both}@keyframes comic-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-12deg)}40%{opacity:1;transform:translate(-50%,-50%) scale(1.1) rotate(-8deg)}100%{opacity:0;transform:translate(-50%,-65%) scale(.9) rotate(-8deg)}}
@media(max-width:1100px){body[data-control-side=left] .game-layout{grid-template-columns:270px minmax(0,1fr)}.club-navigation{gap:5px}.club-navigation button{font-size:10px;padding:9px}.club-navigation small,.club-navigation button span{display:none}.club-arrival h2{font-size:54px}.arrival-options strong{font-size:21px}}
@media(max-width:850px){body[data-control-side=left] .game-layout{grid-template-columns:minmax(0,1fr)}body[data-control-side=left] .companion{order:0}.match-balls{grid-column:1;grid-row:4}.round-progress{grid-row:5}.call-controls{grid-column:2;grid-row:4 / 6;align-content:end;padding-bottom:8px}.game-controls{grid-row:1 / 4}.club-dialog{padding:28px}.club-arrival{min-height:280px}.arrival-art{height:240px}.arrival-art #arrival-deck{--card-width:94px}.club-arrival h2{font-size:43px}.arrival-setup{align-items:flex-start;flex-direction:column}.arrival-options button{padding:17px}.arrival-options strong{font-size:18px}.arrival-options p{font-size:10px}.arrival-options{gap:10px}.club-arrival>div>p{font-size:17px}.learning-dialog .dialog-top h2{font-size:25px}}
@media(max-width:540px){.club-navigation{flex-wrap:wrap;margin:0 5px 22px;gap:4px;padding-bottom:10px}.club-navigation .club-nav-home{font-size:15px}.club-navigation>div{gap:2px}.club-navigation button{font-size:9px;min-height:33px;padding:7px}.club-navigation>div:last-child{width:100%;justify-content:flex-end;border-top:1px solid var(--line);margin-top:5px;padding-top:5px}.club-dialog{padding:22px 18px;max-height:94vh}.club-close{position:static;display:block;margin-left:auto;font-size:9px}.club-arrival{display:flex;flex-direction:column;gap:0;padding:15px 6px;align-items:flex-start;min-height:0}.club-arrival h2{font-size:46px;margin:18px 0}.club-arrival>div>p{font-size:17px;line-height:1.7;margin:12px 0}.arrival-art{align-self:center;height:165px;width:100%;margin-top:15px}.arrival-art #arrival-deck{--card-width:83px}.arrival-orbit{height:160px;width:160px}.arrival-star{right:15%;top:3px;font-size:25px}.arrival-options{grid-template-columns:1fr;margin-top:18px;gap:9px}.arrival-options button{min-height:0;padding:16px}.arrival-options strong{font-size:22px;margin-top:10px}.arrival-options p{font-size:11px;margin-bottom:0}.arrival-options p br{display:none}.arrival-number{font-size:7px}.arrival-foot{font-size:8px;line-height:1.8;margin-top:18px}.arrival-foot span{display:none}.learning-dialog{padding:16px;height:94vh;max-height:94vh;max-width:calc(100vw - 12px)}.learning-dialog .dialog-top{margin-bottom:16px;align-items:flex-start}.learning-dialog .dialog-top h2{font-size:24px}.learning-dialog .dialog-top .icon-button{font-size:0}.learning-dialog .dialog-top .icon-button:after{content:'×';font-size:18px}.deck-dialog{padding:14px;max-width:calc(100vw - 12px)}.match-balls{font-size:7px}.match-balls strong{font-size:13px}.call-controls{gap:4px}.call-controls button{font-size:8px;min-height:30px;padding:6px}.consequence-dialog{padding:20px}.risk-card-row{--card-width:45px;gap:5px}.table-notice{font-size:10px;max-width:90vw;text-align:center}.turn-guidance{font-size:9px;padding:8px}}
/* Purchased trays stay beside their seat and never cover playable cards. */
.table-items { position:absolute; inset:0; z-index:9; pointer-events:none; }
.table-item { position:absolute; width:58px; height:62px; padding:0; background:none; border:0; color:#e5d7b9; cursor:pointer; pointer-events:auto; filter:drop-shadow(0 5px 5px #0007); }
.table-item svg { width:100%; height:48px; }
.table-item span { display:block; font:7px -apple-system,sans-serif; letter-spacing:.8px; }
.table-item[data-seat="0"] { left:calc(50% + 82px); bottom:23px; }
.table-item[data-seat="1"] { left:12%; top:53%; }
.table-item[data-seat="2"] { left:calc(50% + 80px); top:14%; }
.table-item[data-seat="3"] { right:13%; top:53%; }
.table-item:focus-visible { outline:2px solid #dfb393; outline-offset:4px; border-radius:8px; }
.table-item-effect { position:absolute; z-index:20; pointer-events:none; color:#eedbb8; font:12px Georgia,serif; text-shadow:0 2px 6px #000; }
.table-item-effect span { position:absolute; white-space:nowrap; left:0; top:-28px; transform:translateX(-50%); }
.table-item-effect i { position:absolute; top:8px; left:-6px; width:12px; height:12px; border-radius:50%; background:#dec19a; animation:table-item-rise 1.4s both ease-out; }
.table-item-effect i:nth-of-type(2) { left:8px; animation-delay:.15s; }
.table-item-effect i:nth-of-type(3) { left:-18px; animation-delay:.3s; }
.table-item-effect-clouds i { width:24px; height:24px; background:#d5ddd375; filter:blur(3px); animation-duration:2s; }
.table-item-effect-drink i { width:4px; height:17px; background:#d6b57e; border-radius:5px; }
.table-item-effect.is-still i { display:none; }
@keyframes table-item-rise { from { opacity:0; transform:translateY(0) scale(.3); } 25% { opacity:.8; } to { opacity:0; transform:translateY(-65px) scale(1.5); } }
@media(max-width:600px) { .table-item { width:42px; height:48px; } .table-item svg { height:36px; } .table-item[data-seat="1"] { left:8%; } .table-item[data-seat="3"] { right:9%; } }
