/* V3.1: contraste del directorio y ajuste responsive/tactil. */
.directory-heading p{color:#c5d5df}.rooms-panel,.create-panel{color:#173247}.rooms-panel h2,.rooms-panel h3,.create-panel h2{color:#173247}.create-panel label{color:#385466}.create-panel input,.create-panel select{background:#fff;color:#173247;border-color:#8da5b5}.create-panel input::placeholder{color:#657d8d;opacity:1}.create-panel input:focus-visible,.create-panel select:focus-visible{outline-color:#126c78}.room-card{color:#173247}.room-meta{color:#405f72}.room-phase{color:#0b625e}.room-empty{color:#405f72}.room-card button.secondary{background:#173f59;color:#fff;border-color:#173f59;font-weight:700;box-shadow:0 2px 0 #0a2638}.room-card button.secondary:hover:not(:disabled){background:#215a7a;border-color:#215a7a}.room-card button.secondary:focus-visible{outline-color:#087b8b}.room-card button.secondary:disabled{background:#536b79;color:#fff;opacity:.62}.room-navigation button{min-height:44px}.room-navigation #directory-button{background:#173f59;color:#fff;border-color:#6d90a5;font-weight:700}.room-navigation #directory-button:hover:not(:disabled){background:#215a7a}.room-navigation #take-seat{color:#162d3b}.seat-ticket button,.topbar button{min-height:40px}.lobby-panel input,.lobby-panel select,#seat-dialog input,#seat-dialog select{min-height:44px}.actions button,.ready-actions button{min-height:46px}.die-button{min-height:62px}.text-button{color:#c8d7e0;text-decoration:underline;text-underline-offset:3px}.text-button:hover{color:#fff}.spectator-note{color:#bed0dc}
@media(max-width:760px){html,body{max-width:100%;overflow-x:hidden}main{width:100%;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.directory-heading{align-items:flex-start}.directory-heading>div{min-width:0}.directory-heading h1{line-height:1.08}.directory-grid{gap:16px}.rooms-panel,.create-panel{width:100%;min-width:0}.room-card button.secondary{width:100%;min-height:48px}.room-navigation{width:100%;padding:0 2px}.room-navigation strong{min-width:0;overflow-wrap:anywhere}.seat-ticket{width:100%}.lobby-panel{width:100%;min-width:0}.settings-grid{min-width:0}.board-layout,.table-area,.left-rail,.right-rail{min-width:0}.actions button{min-height:48px}.toast{bottom:max(12px,env(safe-area-inset-bottom))}}
@media(max-width:560px){body{font-size:14px}.topbar{align-items:center}.topbar .brand{min-width:0}.topbar nav{width:100%;display:flex;justify-content:stretch;gap:6px}.topbar nav button{flex:1 1 0;min-width:0;min-height:42px;padding:8px 5px!important;font-size:11px}.topbar .volume-control{flex:1 1 100%;justify-content:center;padding:2px 0 0}.topbar .volume-control input{width:min(180px,55vw)}.directory{padding-top:8px}.directory-heading{margin-bottom:18px}.directory-heading p{font-size:12px}.port-logo{width:68px;height:72px;border-radius:12px}.rooms-panel,.create-panel{padding:16px;border-radius:12px}.create-panel .settings-grid,.lobby-panel .settings-grid{grid-template-columns:1fr;gap:0}.create-panel label{margin:12px 0}.room-card{padding:16px 0}.room-card h3{font-size:18px}.room-meta{gap:6px 12px;font-size:12px}.room-navigation{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.room-navigation strong{grid-column:1/-1;grid-row:1;margin:0;font-size:15px}.room-navigation #viewer-label{grid-column:1/-1;font-size:12px}.room-navigation button{width:100%;min-height:46px;padding:9px 8px}.seat-ticket{display:grid;grid-template-columns:1fr auto;gap:7px 10px}.seat-ticket>span:first-child{grid-column:1/-1}.seat-ticket .seat-key-label{align-self:center}.seat-ticket code{font-size:15px;letter-spacing:2px}.seat-ticket button{grid-column:1/-1;width:100%;border-color:#7094a9}.players{grid-template-columns:repeat(2,minmax(0,1fr))!important}.player{min-width:0;min-height:66px;padding:8px}.player-name{font-size:11px}.player-score{font-size:20px}.left-rail .fortune[data-card]:not([data-card=""]){grid-template-columns:82px minmax(0,1fr);gap:0 12px;padding:13px}.fortune .card-art{width:82px}.fortune[data-card]:not([data-card=""]) h2{font-size:20px}.fortune[data-card]:not([data-card=""]) p{font-size:10px}.table{height:235px}.dice-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 10px 12px}.die-button{width:100%;max-width:none;min-height:70px;padding:7px 2px}.die-button .symbol img{width:34px;height:34px}.die-button small{font-size:8px}.die-button .die-status{font-size:7px}.selection-tools button{min-height:38px;padding:7px 9px}.actions{display:grid;grid-template-columns:1fr;gap:8px}.actions button{width:100%;min-width:0!important;min-height:48px}.right-rail{display:grid;grid-template-columns:1fr!important;gap:14px}.right-rail .chat-panel{grid-column:auto}.loot-panel,.log-panel,.chat-panel{min-width:0}.game-footer{flex-direction:column;gap:4px;padding-bottom:max(18px,env(safe-area-inset-bottom))}.game-footer span:first-child{max-width:none}.ready-actions{display:grid;grid-template-columns:1fr;gap:8px}.ready-actions button{width:100%;min-height:48px}.invite-box button{min-height:42px;padding-left:12px;padding-right:12px}.dialog-heading{gap:12px}.dialog-heading .close-dialog{flex:0 0 44px;width:44px;height:44px;padding:0}dialog{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:17px;overflow:auto}#full-history{overflow-x:auto}#full-history table{min-width:560px}.menu-actions button{min-height:46px}.saved-seat{min-height:48px}.help-grid,.card-guide{grid-template-columns:1fr}.guide-art{width:48px}.toast{width:calc(100vw - 24px);max-width:none;text-align:center;padding:12px 14px}.game-heading{align-items:flex-end;gap:10px}.goal{flex-shrink:0}.table-bottomline{align-items:flex-start}.table-bottomline #table-instruction{min-width:0}.table-bottomline #skull-count{white-space:nowrap}}
@media(max-width:390px){.brand>span:last-child{font-size:9px}.topbar nav button{font-size:10px}.directory-heading .port-logo{width:58px;height:62px}.room-navigation{grid-template-columns:1fr}.room-navigation strong,.room-navigation #viewer-label{grid-column:1}.game-heading h1{font-size:20px}.goal strong{font-size:21px}.players{gap:6px}.table{height:215px}.die-button{min-height:66px}.die-button .symbol img{width:30px;height:30px}.left-rail .fortune[data-card]:not([data-card=""]){grid-template-columns:72px minmax(0,1fr)}.fortune .card-art{width:72px}}
@media(max-height:520px) and (orientation:landscape){.topbar{position:static}.table{height:205px}.directory-heading{margin-bottom:12px}.lobby{margin-top:4px}.game-heading{margin-bottom:10px}}
