:root{font-family:Arial,Helvetica,sans-serif;color:#233c32;background:#eeefe8;font-synthesis:none;--green:#173f33;--muted:#748075;--line:#d8dcd1;--gold:#dfba76}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button{transition:background .18s,transform .18s}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b78b41;outline-offset:4px}.topbar{height:99px;max-width:1550px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--green);text-decoration:none;font-family:Georgia,serif;font-size:21px;font-weight:bold;letter-spacing:2px}.brand small{display:block;font:8px Arial,sans-serif;letter-spacing:3px;margin-top:6px}.brand-mark{width:38px;height:43px;display:grid;place-items:center;border:1px solid #43604d;font:32px Georgia,serif;border-radius:18px 18px 3px 3px}.header-actions{display:flex;align-items:center;gap:24px}.local-label{font-size:12px;color:#737d71;display:flex;align-items:center;gap:8px}.local-label i,.small-dot{width:6px;height:6px;background:#71926b;border-radius:50%;display:inline-block}.quiet{background:none;border:0;color:#43574a;padding:11px 4px;font-size:12px}.quiet:hover{color:#111}.outline{border:1px solid #abb7a7;background:transparent;color:var(--green);padding:12px 18px;border-radius:5px;font-size:12px}.outline:hover{background:#dce1d5}main{max-width:1550px;margin:auto;padding:36px 48px 0}.table-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.eyebrow,.section-label{font-size:9px;font-weight:bold;letter-spacing:2px}.eyebrow{color:#6a7c67}h1{font:normal 36px/1.1 Georgia,serif;letter-spacing:-1.2px;margin:10px 0 0}.table-heading p{font-size:11px;font-variant-numeric:tabular-nums;margin:0 0 4px}.table-heading p span{color:#a0aa99;margin:0 8px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:30px;align-items:start}.table{background:#173f33;border-radius:9px;color:#c1d0b9;padding:23px 25px 18px;position:relative;box-shadow:0 12px 30px #193e3215;overflow:hidden;background-image:radial-gradient(ellipse at center,#2b514000,#0b2d2466)}.table-meta{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.8px;position:relative;z-index:1;color:#a5b8a0}.table-meta b{padding:0 8px;color:#6a8a73}.board-wrap{position:relative;margin:16px auto 8px;max-width:850px}#board{display:block;width:100%;height:auto;overflow:visible}.tile polygon{stroke:#294d3c;stroke-width:1.5;stroke-linejoin:round;transition:fill .2s,stroke .2s}.tile{cursor:pointer;outline:none}.tile:hover polygon,.tile:focus-visible polygon{fill:#fff8df;stroke:#edc16f;stroke-width:2}.tile.selected polygon{stroke:#e9bd6b;stroke-width:3;fill:#fff3d5}.tile-title{font-size:8.3px;fill:#233f32;font-weight:700}.tile-subtitle{font-size:8px;fill:#4b5b46}.tile-price{font-size:7.8px;fill:#65715a}.token-text{fill:#183d31;font-size:8px;font-weight:bold;pointer-events:none}.token{filter:drop-shadow(0 2px 1px #0003)}.board-center{position:absolute;inset:27% 24% 22%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.center-kicker{font-size:7px;letter-spacing:2.2px;color:#a3b69d;white-space:nowrap}.center-logo{font-family:Georgia,serif;font-size:clamp(22px,3.1vw,49px);letter-spacing:-1.9px;color:#e7e8d7;margin-top:18px;line-height:1.15}.center-logo span{display:block;font:8px Arial,sans-serif;letter-spacing:6px;margin-top:10px;color:#b1c0a6}.center-line{height:1px;width:35px;background:#92a384;margin:20px auto 0}.board-center p{font:italic 13px Georgia,serif;color:#b6c4aa;margin:15px 0 20px}.dice{display:flex;gap:12px}.die{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:4px;background:#eeeadd;border-radius:9px;width:54px;height:54px;padding:10px;box-shadow:0 4px 0 #c1beaf,0 8px 14px #061f2940;transform:rotate(-7deg)}.die:nth-child(2){transform:rotate(8deg)}.die i.pip{background:#284537;border-radius:50%}.center-turn{font-size:8px;letter-spacing:1.4px;margin-top:25px;color:#c9d1b7;max-width:100%;overflow-wrap:anywhere}.table-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #57715b70;padding-top:17px;font-size:9px;color:#aebea6;gap:12px}.table-bottom>span{display:flex;align-items:center;gap:8px}.table-link{font-size:10px;border:0;background:none;color:#e1e4cf;padding:3px 0;white-space:nowrap}.table-link span{margin-left:10px}.sidebar{display:flex;flex-direction:column;gap:22px}.section-label{display:flex;justify-content:space-between;color:#7a8775;letter-spacing:1.6px;font-size:8px;margin-bottom:17px}.section-label span:nth-child(2){font-size:8px;letter-spacing:.7px;font-weight:normal}.turn-panel{border:1px solid #cdd5c5;background:#e4e8dc;border-radius:7px;padding:21px}#active-player{display:flex;align-items:center;gap:13px}#active-player h2{font:normal 25px Georgia,serif;margin:0 0 4px;overflow-wrap:anywhere}#active-player div>span{font-size:10px;color:#75806c}.player-token{width:29px;height:29px;flex-shrink:0;background:var(--player);border-radius:50%;display:inline-grid;place-items:center;color:#274332;font:13px Georgia,serif;border:3px solid #ffffff50;box-shadow:0 0 0 1px #52674722}.player-token.large{width:40px;height:40px;font-size:21px}#message{font-size:12px;color:#63705e;line-height:1.65;min-height:40px;margin:18px 0}.primary{width:100%;border:0;padding:15px 18px;display:flex;justify-content:space-between;align-items:center;background:#214e3d;color:#f5f5e9;border-radius:5px;font-size:12px;font-weight:bold;gap:12px}.primary:hover{background:#163e2d}.primary span{font-size:17px}.action-hint{display:block;text-align:center;font-size:9px;color:#7e8874;margin-top:12px}.full{width:100%;padding-bottom:0}.players-panel,.history-panel{padding:0 2px}.player-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.player-row:last-child{border-bottom:0}.player-row>div{min-width:0}.player-row b{font-size:11px;font-weight:normal;display:block;overflow-wrap:anywhere}.player-row small{display:block;font-size:9px;color:#8a9383;margin-top:4px}.player-row strong{margin-left:auto;font-size:13px;font-weight:normal;white-space:nowrap;font-variant-numeric:tabular-nums}.player-row.is-active b{font-weight:bold}.is-out{opacity:.45}.property-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 0 21px;display:flow-root}.property-panel>.section-label{margin-bottom:19px}.card-preview{float:left;width:77px;padding:0;margin-right:16px;border:0;background:none;box-shadow:0 3px 8px #283b2820;transform:rotate(-3deg);border-radius:5px;overflow:hidden}.card-preview img{display:block;width:100%}.card-preview:hover{transform:rotate(0)}.property-category{color:var(--group);font-size:8px;text-transform:uppercase;letter-spacing:1px;font-weight:bold}.property-detail h3{font:18px Georgia,serif;margin:6px 0 7px}.property-detail p{font-size:10px;color:#83907a;margin:0 0 10px}.property-values{display:flex;gap:20px;padding-top:2px}.property-values span{font-size:9px;color:#89947e;display:block}.property-values b{display:block;font-size:11px;color:#3b513c;font-weight:normal;margin-top:5px}.build-button{margin-top:16px;clear:both;width:100%}.history-panel .section-label{margin-bottom:12px}#history{list-style:none;padding:0;margin:0}#history li{display:flex;gap:11px;font-size:10px;line-height:1.65;color:#76836e;padding:7px 0}#history li>span{color:#adb5a5;font-size:8px;min-width:13px;padding-top:2px}footer{display:flex;justify-content:space-between;gap:15px;font-size:9px;color:#909989;padding:24px 0 26px}footer>span:first-child{font-size:8px;letter-spacing:1.5px}footer b{padding:0 7px}footer button{color:#687a60;background:none;padding:0;border:0;font-size:9px;text-decoration:underline;text-underline-offset:3px;margin-left:5px}dialog{border:1px solid #cbd3c0;border-radius:12px;padding:38px;background:#f0f1e9;color:#233c32;max-width:540px;width:calc(100% - 32px);max-height:88dvh;box-shadow:0 22px 80px #05291d55}dialog::backdrop{background:#0a291f91;backdrop-filter:blur(5px)}dialog h2{font:normal 34px Georgia,serif;letter-spacing:-1px;margin:12px 0 16px}dialog p{font-size:13px;color:#6c7c62;line-height:1.8}dialog label:not(.name-label){display:block;font-size:10px;letter-spacing:1px;text-transform:uppercase;margin:25px 0 9px}select,input{border:1px solid #c5cfba;background:#fafbf5;color:#284532;border-radius:5px;padding:12px;width:100%;font-size:13px}.name-label{display:flex;align-items:center;gap:14px;margin-top:14px}.form-note{font-size:11px!important;margin:20px 0}.dialog-actions{display:flex;align-items:center;gap:20px;margin-top:24px}.dialog-actions .primary{width:auto;flex:1}.dialog-actions .quiet{white-space:nowrap}.close-button{position:absolute;top:12px;right:17px;background:none;border:0;font-size:28px;color:#617354}.rules-list{font-size:13px;color:#64745a;padding-left:18px}.rules-list li{padding:8px 0;line-height:1.8}.rules-list b{color:#254733}.edition-note{padding:16px;background:#e3e7d8;border-radius:5px;font-size:11px!important}.original-card{display:block;max-height:53dvh;max-width:100%;width:auto;margin:20px auto;border-radius:14px}.collection{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}.collection-item{background:none;border:0;padding:0;text-align:left;color:var(--green);font-size:11px}.collection-item img{width:100%;display:block;border-radius:7px;margin-bottom:8px}.rolling .die{animation:toss .17s alternate infinite}.rolling .die:nth-child(2){animation-delay:.08s}@keyframes toss{from{transform:translateY(-5px) rotate(-15deg)}to{transform:translateY(4px) rotate(15deg)}}
@media(min-width:1500px){.game-layout{grid-template-columns:minmax(0,1fr) 330px;gap:40px}.sidebar{gap:27px}.turn-panel{padding:26px}.center-logo{font-size:49px}}
@media(max-width:1100px){.topbar{padding:0 25px}main{padding:28px 25px 0}.game-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.table{padding:20px 14px 15px}.center-kicker{font-size:6px;letter-spacing:1px}.center-logo{font-size:30px}.board-center p{font-size:11px;margin-bottom:14px}.center-line{margin-top:13px}.die{width:42px;height:42px;padding:8px;gap:3px}.center-turn{font-size:7px;margin-top:17px}.table-meta{font-size:6px;letter-spacing:1px}.table-bottom{font-size:7px}.turn-panel{padding:18px}.table-link{font-size:8px}}
@media(max-width:800px){.topbar{height:83px;padding:0 20px}.brand{font-size:17px;gap:9px}.brand small{font-size:6px;letter-spacing:2px}.brand-mark{width:30px;height:37px}.header-actions{gap:14px}.local-label{display:none}.header-actions .quiet{font-size:11px}.header-actions .outline{padding:10px;font-size:10px}main{padding:25px 18px 0}.table-heading{margin-bottom:21px}h1{font-size:31px}.table-heading .eyebrow{font-size:8px}.table-heading p{font-size:9px}.game-layout{grid-template-columns:1fr}.table{padding:20px 18px 16px}.board-wrap{margin-top:20px}.table-meta{font-size:7px}.center-logo{font-size:clamp(22px,5.5vw,42px)}.center-kicker{font-size:8px;letter-spacing:1px}.board-center p{font-size:13px}.die{width:50px;height:50px;padding:10px;gap:3px}.center-turn{font-size:8px}.table-bottom{font-size:9px}.table-link{font-size:10px}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:25px}.history-panel{grid-column:2;grid-row:2}.property-panel{grid-column:1;grid-row:2;border-top:0;padding-top:0;align-self:start}.turn-panel{align-self:start}footer{line-height:1.8}footer>span:last-child{text-align:right;max-width:55%}}
@media(max-width:480px){.table{padding:17px 7px 13px;border-radius:7px}.table-meta{padding:0 8px;font-size:5.5px}.table-meta>span:last-child{letter-spacing:.5px}.board-wrap{margin:18px 0 10px}.center-kicker{font-size:5px;letter-spacing:1px}.center-logo{margin-top:11px;font-size:23px;letter-spacing:-1px}.center-logo span{font-size:6px;letter-spacing:4px;margin-top:6px}.center-line{margin-top:12px;width:24px}.board-center p{font-size:10px;margin:10px 0 14px}.die{width:36px;height:36px;border-radius:6px;padding:7px;gap:2px}.dice{gap:10px}.center-turn{font-size:5.5px;letter-spacing:.6px;margin-top:16px}.table-bottom{font-size:7px;margin:0 7px;gap:4px;padding-top:13px}.table-bottom>span{gap:4px}.table-link{font-size:8px}.table-link span{margin-left:3px}.sidebar{grid-template-columns:1fr;gap:24px}.players-panel{grid-row:2}.property-panel{grid-column:1;grid-row:3}.history-panel{grid-column:1;grid-row:4}.property-panel .card-preview{width:90px}.property-detail h3{font-size:24px}.property-values{gap:35px}.section-label{font-size:9px}#active-player h2{font-size:29px}.turn-panel{padding:23px}#message{min-height:0}.player-row{padding:13px 0}.player-row b{font-size:13px}.player-row strong{font-size:15px}.player-row small{font-size:11px}#history li{font-size:12px}.table-heading p{font-size:8px}.header-actions{gap:10px}.header-actions .quiet{font-size:10px}.brand{font-size:15px;letter-spacing:1px}.brand small{letter-spacing:1.6px}.topbar{padding:0 15px}.brand-mark{width:26px;font-size:25px;height:33px}.table-heading h1{font-size:29px}dialog{padding:30px 23px}.dialog-actions{gap:9px}.dialog-actions .quiet{font-size:10px}.dialog-actions .primary{font-size:11px;padding:13px 11px}footer{display:block}footer>span{display:block!important;max-width:100%!important;text-align:left!important;margin-bottom:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Imagen original, con una capa transparente para fichas y selección. */
.tile polygon{stroke:transparent;stroke-width:2;fill:transparent}
.tile:hover polygon,.tile:focus-visible polygon{fill:#fff5c51a;stroke:#ffe5a1;stroke-width:2}
.tile.selected polygon{fill:transparent;stroke:transparent}
.tile.selected:hover polygon,.tile.selected:focus-visible polygon{fill:#fff5c51a;stroke:#ffe5a1;stroke-width:2}
.ownership-level{font-size:12px;font-weight:bold;fill:#fff;stroke:#123e33;stroke-width:2;paint-order:stroke}
.board-wrap{isolation:isolate;border-radius:4px;overflow:hidden}
.board-deck{position:absolute;border:0;padding:0;background:#000;display:grid;place-items:center}
.board-deck img{width:100%;height:100%;object-fit:fill;display:block;border:3px solid #000}
.board-deck:hover{filter:brightness(1.1)}
.board-deck:focus-visible{outline-offset:2px}
.luck-deck{left:40.72%;top:20.54%;width:16.63%;height:14.17%}
.fate-deck{left:42.27%;top:65.72%;width:16.63%;height:14.17%}
.sidebar-dice{margin:19px 0 0;display:flex;align-items:center;gap:16px}
.sidebar-dice .dice{flex-shrink:0;gap:9px}
.sidebar-dice .die,.sidebar-dice .die:nth-child(2){width:38px;height:38px;padding:8px;gap:3px;border-radius:6px;transform:none;box-shadow:0 2px 0 #c1beaf}
.sidebar-dice .center-turn{font-size:8px;color:#6d7c64;margin:0;letter-spacing:.8px;line-height:1.6}
.property-management{clear:both;display:grid;gap:9px;padding-top:22px}
.property-management .section-label{margin:0 0 4px;font-size:8px}
.property-management .outline{width:100%;font-size:11px}
.management-hint{font-size:10px;line-height:1.6;color:#77866a;display:block;margin:5px 0 8px}
.management-row{display:flex;justify-content:space-between;gap:8px}
.management-row .quiet{font-size:10px}
.choice{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.65;color:#65765a;margin:14px 0}
.choice input{width:15px;height:15px;padding:0;margin:2px 0 0;flex-shrink:0;accent-color:#214e3d}
.claims-panel{background:#f9f5e7;border:1px solid #d9d1b5;padding:18px;border-radius:6px}
.claims-panel[hidden]{display:none}
.claims-panel .section-label{margin-bottom:8px}.claims-panel>p{font-size:10px;line-height:1.7;color:#8b7b56;margin:0 0 8px}
.claim-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #ded6be}
.claim-row b{font-size:11px;display:block}.claim-row small{display:block;font-size:10px;line-height:1.6;color:#85795d;margin-top:4px}
.claim-row .outline{padding:8px 10px;font-size:10px}
.debt-summary,.auction-summary p{font-size:12px;line-height:1.7;color:#67765c}
.auction-summary b{font-size:13px}.trade-total{font-size:11px;line-height:1.7;color:#65765a}
.danger{color:#a44239}.turn-panel .outline{margin-bottom:12px}
#bid-form>label{font-size:11px;display:block;margin:15px 0 8px}#bid-form>.choice{display:flex}
#bid-form .primary{margin-top:12px}#sale-form .primary{margin-top:20px}
@media(min-width:481px) and (max-width:800px){.claims-panel{grid-column:1/-1}.sidebar .history-panel,.sidebar .property-panel{grid-row:auto;grid-column:auto}}
@media(max-width:480px){.sidebar>section{grid-row:auto;grid-column:1}}
.player-token{position:relative;border:2px solid var(--player);background:#fff;overflow:visible;box-shadow:0 0 0 2px #f1f1e8}
.piece-sprite{width:100%;height:100%;display:block;border-radius:50%;background-image:url('assets/piezas.webp');background-size:461.53846% 521.73913%;background-repeat:no-repeat;background-color:white}
.piece-number{position:absolute;right:-4px;bottom:-4px;width:12px;height:12px;border-radius:50%;background:var(--player);color:#173f33;display:grid;place-items:center;font:8px Arial,sans-serif}
.player-token.large{width:49px;height:49px}.player-token.large .piece-number{width:15px;height:15px;font-size:10px}
.board-piece{overflow:hidden;pointer-events:none}.board-piece image{mix-blend-mode:multiply}
.player-setup-row{display:grid;grid-template-columns:minmax(0,1fr) 105px;gap:10px;align-items:center;margin-top:15px}
.player-setup-row .name-label{margin:0;min-width:0;gap:10px}.player-setup-row input{min-width:0}
.player-setup-row select{font-size:11px;padding:12px 6px}.setup-piece{display:block;flex-shrink:0}
.last-card{margin:17px 0 12px;padding:12px;background:#f3f0df;border-left:2px solid #ae9d68;border-radius:3px}
.last-card[hidden]{display:none}.last-card>span{font-size:7px;letter-spacing:1px;color:#8c7c50}.last-card>p{font-size:11px;line-height:1.7;color:#5f664b;margin:7px 0 0}
.release-cards{display:grid;gap:12px;margin-top:24px}.release-cards h3{font:20px Georgia,serif;margin:0}

/* El borde permanente sigue al jugador de turno, independientemente de la consulta. */
.tile.active-space polygon,.tile.active-space.selected polygon{fill:#ffe59828;stroke:#f7be43;stroke-width:4;paint-order:stroke;filter:drop-shadow(0 0 3px #281a08);pointer-events:all}
.tile.active-space:hover polygon,.tile.active-space:focus-visible polygon{stroke:#fff2ba;stroke-width:4}
.arrival-dialog{width:calc(100% - 32px);max-width:540px;padding:34px}
.arrival-dialog .close-button{z-index:1}
.drawn-card{text-align:center;border:2px solid #946a25;border-radius:8px;padding:28px 24px 32px;background:#fff7e4;color:#4e3615}
.drawn-card.fate{background:#edf3e5;border-color:#436044;color:#21482f}
.drawn-symbol{display:block;font:64px/1 Georgia,serif}
.drawn-card h2{font-size:36px;margin:9px 0 16px}
.drawn-card .drawn-recipient{font-size:12px;margin:0;color:inherit}
.drawn-card .drawn-text{font:22px/1.55 Georgia,serif;color:inherit;margin:24px 0 0}
.arrival-note{font-size:12px;line-height:1.65;color:#64745a}
.purchase-arrival{max-width:820px}
.purchase-arrival h2{font-size:30px;margin-right:12px}
.purchase-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:28px;margin-top:22px}
.purchase-card{display:block;width:100%;max-height:57dvh;object-fit:contain;border-radius:12px}
.purchase-player{margin-top:0}
.purchase-summary,.purchase-rents{margin:0;font-size:13px}
.purchase-summary>div,.purchase-rents>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0}
.purchase-summary dd,.purchase-rents dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.purchase-summary>div:first-child{font-weight:bold;font-size:17px;color:#214e3d;border-bottom:1px solid #cbd3c0;margin-bottom:6px;padding-bottom:13px}
.purchase-details h3{font:20px Georgia,serif;margin:22px 0 9px}
.purchase-actions{display:flex;gap:14px;margin-top:25px}
.purchase-actions .primary{flex:1}
@media(max-width:600px){.arrival-dialog{padding:30px 22px}.purchase-layout{grid-template-columns:1fr;gap:20px}.purchase-card{max-height:43dvh;width:auto;max-width:100%;margin:auto}.purchase-arrival h2{font-size:26px}.purchase-actions{flex-direction:column}.drawn-card{padding:22px 18px}.drawn-card .drawn-text{font-size:20px}.purchase-details .purchase-player{font-size:12px}}

[hidden]{display:none!important}
.online-bar{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#e1e8dc;border:1px solid #b7c9ae;padding:17px 20px;border-radius:7px;margin-bottom:28px;font-size:12px}
.online-bar>div:first-child{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.online-bar strong{letter-spacing:1px}.online-bar #online-status{color:#52694b}
.online-bar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.online-bar .outline{padding:9px 12px}
.online-lobby{max-width:720px;margin:45px auto 65px}.online-lobby>p{font-size:14px;line-height:1.7;color:#61725b}
.lobby-members{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0}
.lobby-member{display:flex;align-items:center;gap:14px;padding:16px;background:#e4e8dc;border-radius:6px}
.lobby-member strong{font-size:14px;display:block}.lobby-member span:not(.player-token):not(.piece-sprite):not(.piece-number){font-size:11px;display:block;margin-top:6px;color:#64755e}
.online-lobby .primary{max-width:320px}.mode-options{display:grid;gap:15px;margin:25px 0 15px}
.mode-option{padding:23px;text-align:left;background:#e4e8dc;border:1px solid #c0cdb7;color:#214e3d;border-radius:7px}
.mode-option:hover{background:#d8e2d0}.mode-option strong{display:block;font:24px Georgia,serif;margin-bottom:9px}.mode-option span{font-size:12px;line-height:1.6}
.online-tabs{display:flex;gap:12px;margin:20px 0}.online-tabs [aria-pressed=true]{background:#214e3d;color:#fff;border-color:#214e3d}
.form-error{color:#a33129!important;font-size:13px!important}.waiting-turn{font-size:13px;line-height:1.7;color:#52694b}
@media(max-width:650px){.online-bar{align-items:stretch;flex-direction:column;padding:16px}.online-bar-actions{gap:6px 14px}.lobby-members{grid-template-columns:1fr}.online-lobby{margin:25px 0}.online-lobby h1{font-size:30px}.online-bar .quiet{font-size:11px}.online-tabs .outline{flex:1;padding:12px 8px}}

/* Ritmo del turno: los dados ruedan; el recorrido usa los pasos del motor. */
.turn-progress{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px 0 0;color:#f5eedb;font-size:12px;line-height:1.5}
#motion-count{flex-shrink:0;color:#f2c975;font-variant-numeric:tabular-nums;font-size:11px}
.sound-toggle{border:1px solid #8caa8a;background:transparent;color:#e1e4cf;border-radius:5px;font-size:10px;padding:7px 10px;white-space:nowrap}
.sound-toggle[aria-pressed=false]{color:#a9bba5;border-color:#627c65}
.table-bottom{flex-wrap:wrap}.table-bottom>span{flex:1;min-width:160px}
.sidebar-dice{flex-wrap:wrap;gap:14px}.sidebar-dice .dice{gap:15px;min-height:65px;align-items:center;padding:9px 6px;perspective:400px;overflow:visible}
.sidebar-dice .die,.sidebar-dice .die:nth-child(2){position:relative;display:block;width:46px;height:46px;padding:9px;box-shadow:0 3px 0 #b7b39d,2px 5px 0 #989a81,0 8px 12px #15372925;transform-origin:50% 65%;border:1px solid #fffdf2;background:linear-gradient(145deg,#fffdf3,#dedcc9)}
.die-face{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:4px}
.dice-total{font:28px Georgia,serif;color:#244936;min-width:30px;font-variant-numeric:tabular-nums}
.sidebar-dice .center-turn{flex-basis:100%;margin-top:-5px}
.sidebar-dice .rolling .die{animation:dice-tumble .44s linear infinite}
.sidebar-dice .rolling .die:nth-child(2){animation:dice-tumble-other .5s linear infinite;animation-delay:-.19s}
@keyframes dice-tumble{0%{transform:translate(-4px,0) rotateX(0deg) rotateZ(-12deg)}25%{transform:translate(9px,-13px) rotateX(65deg) rotateZ(85deg)}50%{transform:translate(12px,-5px) rotateX(160deg) rotateZ(175deg)}75%{transform:translate(-7px,-16px) rotateX(280deg) rotateZ(270deg)}100%{transform:translate(-4px,0) rotateX(360deg) rotateZ(348deg)}}
@keyframes dice-tumble-other{0%{transform:translate(4px,-3px) rotateY(0deg) rotateZ(16deg)}25%{transform:translate(-9px,-15px) rotateY(85deg) rotateZ(-85deg)}50%{transform:translate(5px,1px) rotateY(175deg) rotateZ(-170deg)}75%{transform:translate(10px,-12px) rotateY(265deg) rotateZ(-260deg)}100%{transform:translate(4px,-3px) rotateY(360deg) rotateZ(-344deg)}}
.moving-token{pointer-events:none;transform-origin:center;transform-box:fill-box;filter:drop-shadow(0 3px 2px #0005)}
.drawn-card{animation:card-reveal .28s ease-out}
@keyframes card-reveal{from{opacity:.3;transform:translateY(12px) rotate(-2deg)}to{opacity:1;transform:none}}
@media(max-width:600px){.turn-progress{padding:0 7px;font-size:11px;min-height:46px}#motion-count{font-size:10px}.table-bottom{gap:10px}.table-bottom>span{flex-basis:100%}.sound-toggle{padding:8px 11px}.table-link{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.sidebar-dice .rolling .die,.drawn-card{animation:none!important}.moving-token{filter:none}}

@media(prefers-reduced-motion:no-preference){.sidebar-dice .dice:not(.rolling) .die{animation:dice-settle .24s ease-out}}
@keyframes dice-settle{0%{transform:translateY(-5px) rotate(-8deg)}55%{transform:translateY(2px) rotate(3deg)}100%{transform:none}}
