/* Same felt, wood, paper and Archivo type as the existing Word Rush extension. */
.wf-three-modes{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}.wf-three-modes>button{width:100%!important;min-width:0!important;padding:12px 3px!important;font-size:clamp(9px,2.7vw,12px)!important;letter-spacing:.02em!important;white-space:nowrap!important;box-sizing:border-box}
#wrMessages.wf-app:not([data-view="wordfall-playing"]){color:var(--paper);margin:12px auto}#wrMessages.wf-app{width:100%;max-width:650px}.wf-app .im-setting{flex-wrap:wrap}.wf-app .im-segments{min-width:180px}.wf-invite{display:block;width:100%;min-width:0}
/* The body is a horizontal flex container. Its inactive app shell must not
   reserve a second column beside Wordfall; restore it automatically on exit. */
body:has(> #wrMessages.wf-app:not([hidden])) > #app{display:none!important}
#wrMessages.wf-app[data-view="loading"]{width:100%;max-width:none;margin:0;padding:24px;box-sizing:border-box}
/* Wordfall lives in the existing home shell, using its actual paper, wood,
   profile, navigation and match-row components. */
#scHome:not(.wf-home-active) .wf-home-lobby{display:none}
#scHome.wf-home-active #paneMatches>:not(.wf-home-lobby){display:none!important}
.wf-home-lobby [hidden]{display:none!important}
.wf-home-lobby .seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px}
.wf-home-lobby .seg button{min-width:0;font-size:clamp(10px,3vw,14px);padding:13px 2px;white-space:normal}
.wf-home-lobby .field:first-child{margin-top:0}
.wf-home-lobby .woodbtn{max-width:100%;box-sizing:border-box}
.wf-home-lobby[aria-busy="true"] button{pointer-events:none;opacity:.65}
.wf-home-lobby .wf-join-panel{margin-top:14px}
.wf-join-panel summary{cursor:pointer;font-family:var(--black);font-size:13px;min-height:24px;display:list-item}
.wf-join-panel input{width:100%;box-sizing:border-box;margin:14px 0 0;min-height:44px}
.wf-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wf-refresh{color:var(--paper);font-family:var(--black);font-size:10px;min-height:44px;padding:8px}
.wf-lobby-note{color:var(--paper);font-size:13px;line-height:1.5}
.wf-home-lobby .matchrow>div{min-width:0;overflow-wrap:anywhere}
.wf-host-error{background:var(--paper);color:#8a302b;padding:12px;border-radius:8px}
#wrMessages.wf-app .im-header h1{color:var(--paper)}
#wrMessages.wf-app .im-roster,#wrMessages.wf-app .im-more{color:var(--ink);background:var(--paper)}
#wrMessages .wf-mini{position:relative;display:block;overflow:hidden}.wf-mini i{position:absolute;width:22%;height:25%;left:calc(5% + mod(var(--i),4)*23%);top:65%}.wf-mini i:nth-child(4n+1){left:4%}.wf-mini i:nth-child(4n+2){left:28%}.wf-mini i:nth-child(4n+3){left:52%}.wf-mini i:nth-child(4n){left:76%}.wf-mini i:nth-child(-n+4){top:22%;transform:translateY(calc(var(--i)*6px))}.wf-mini i:nth-child(-n+4):before{content:'';position:absolute;bottom:115%;height:14px;width:2px;background:#d7e3c6;box-shadow:5px -5px #d7e3c650}
.im-game .im-board.im-territory-art{display:block}.im-territory-art svg{display:block;width:100%;height:100%;max-width:100%}
.wf-beta{font:700 10px/1.6 var(--sans);text-align:center;color:#344c2c;padding:10px}.wf-mini .wf-empty{visibility:hidden}
#wrMessages[data-view="wordfall-playing"]{max-width:480px;padding:8px 12px max(10px,env(safe-area-inset-bottom));touch-action:manipulation}
.wf-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}.wf-top h1{font:400 23px var(--black);margin:0;flex:1;letter-spacing:-1px;color:var(--ink,#252625)}.wf-badge{font:800 9px var(--sans);border:1px solid #4e6446;padding:4px 6px;border-radius:3px}
.wf-icon{min-width:44px;min-height:44px;border:1px solid #b8905c;background:linear-gradient(#f0d6aa,#d6b078);border-radius:7px;color:#30291e;font:700 22px var(--sans)!important;box-shadow:0 3px #a07b4c}
.wf-stats{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin:0 0 10px;background:#fbfbf8;border-radius:3px;box-shadow:0 3px #4e644650;color:#252625}.wf-stats>div{position:relative;min-width:65px}.wf-stats>div:last-child{text-align:right}.wf-stats small{display:block;font:800 9px var(--sans);letter-spacing:1px;margin-bottom:3px}.wf-stats strong{font:400 23px var(--black);font-variant-numeric:tabular-nums}.wf-stats>div:first-child strong{display:inline-block}.wf-pop{position:absolute;margin-left:5px;bottom:3px;white-space:nowrap;font:800 13px var(--sans);color:#3b782d;opacity:0;pointer-events:none}.wf-pop.show{animation:wf-pop .8s forwards}.wf-low{color:#a42c26}
.wf-well{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(6,1fr);gap:6px;padding:9px;width:min(100%,calc((var(--im-viewport-height,100dvh) - 264px)*.84));min-width:235px;margin:auto;aspect-ratio:5/6;box-sizing:border-box;background:#4e6446;border:4px solid #3e5535;border-radius:10px;box-shadow:inset 0 0 0 2px #a2bb83,0 4px #33482d;transition:border-color .2s}
.wf-well.wf-danger{border-color:#9e4f39}.wf-tile{position:relative;min-width:0;min-height:0;padding:0;border:1px solid #d2af7b;border-radius:5px;background:repeating-linear-gradient(100deg,#ffffff12 0 5px,#91642812 6px 7px),linear-gradient(#f0d6aa,#d6b078);box-shadow:0 3px #b8905c,inset 0 1px #fff6;font:400 clamp(20px,6vw,32px) var(--black)!important;color:#30291e;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.wf-tile.wf-empty{background:#233a2425;border:1px solid #d3e8ba15;box-shadow:none;opacity:1}.wf-tile.selected{background:linear-gradient(#b8dc91,#8fba69);border-color:#ceeba9;box-shadow:0 2px #60823e,inset 0 1px #e7f8cc;transform:translateY(-1px)}.wf-tile small{position:absolute;left:4px;top:2px;font:800 9px var(--sans)}.wf-tile:focus-visible{outline:3px solid #fff;outline-offset:1px}
.wf-pressure{height:4px;background:#324d3150;border-radius:4px;margin:11px 0 3px;overflow:hidden}.wf-pressure i{display:block;background:#365d2e;height:100%;transition:width .2s}.wf-capacity{display:block;text-align:right;font:700 9px var(--sans);color:#304529}.wf-word{font:400 22px var(--black);letter-spacing:1px;text-align:center;min-height:28px;margin-top:4px;overflow-wrap:anywhere}.wf-word.empty{font:700 14px var(--sans);letter-spacing:0;padding-top:5px;color:#3e5535}.wf-note{font:600 11px/1.3 var(--sans);text-align:center;min-height:28px;margin:5px 0;color:#2a4324}.wf-note.wf-error{color:#852c24}.wf-actions{display:flex;gap:9px;align-items:stretch}.wf-actions .woodbtn{min-height:44px;min-width:0;margin:0;padding:10px 12px;font:400 14px var(--black)!important;border-radius:7px}.wf-actions .go{flex:1}.wf-actions button:disabled{opacity:.45}.wf-exit{position:fixed;inset:auto 16px 20px;z-index:1100;background:#fbfbf8;border:2px solid #4e6446;border-radius:8px;padding:20px;box-shadow:0 0 0 100vmax #17251699;color:#243728}.wf-exit p{font-size:12px}.wf-results{background:#fbfbf8;padding:14px;border-radius:4px;box-shadow:0 3px #4e644655}.wf-results>div{display:flex;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid #d6d7c9}.wf-results>div:last-child{border:0}.wf-results span{overflow-wrap:anywhere}.wf-result-title{font:400 28px var(--black);text-align:center}
@keyframes wf-pop{0%{opacity:0;transform:translateY(4px)}20%,70%{opacity:1}100%{opacity:0;transform:translateY(-15px)}}
/* Regular duel/group result components, with explicit ink on paper surfaces. */
#wrMessages[data-view="wordfall-results"]{max-width:650px}
#wrMessages .wf-result-screen .duelbanner,#wrMessages .wf-result-screen .duelslip,#wrMessages .wf-result-screen .standrow,#wrMessages .wf-result-screen .duelchip{color:#252625}
#wrMessages .wf-result-screen .duelidentity,#wrMessages .wf-result-screen .groupwordhead,#wrMessages .wf-result-note{color:var(--im-surface-ink,#243728);text-shadow:none}
#wrMessages .wf-result-screen .standrow{border:0;min-height:62px;margin:0}
#wrMessages .wf-result-screen .standrow .savatar{color:#fff}
#wrMessages .wf-result-screen .duelbanner{box-sizing:border-box;overflow-wrap:anywhere}
#wrMessages .wf-result-screen .duelgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
#wrMessages .wf-result-screen .duelslip .ds{font-size:clamp(16px,4.6vw,20px);overflow-wrap:anywhere}
#wrMessages .wf-result-screen .wf-result-words{max-height:350px;overflow-y:auto;overscroll-behavior:contain}
#wrMessages .wf-result-screen .duelchip{max-width:calc(100% - 37px);font-size:clamp(10px,2.8vw,12px)}
#wrMessages .wf-result-note{font:500 12px/1.5 var(--sans);margin:12px 0}
#wrMessages .wf-result-actions{margin-top:18px;padding-bottom:env(safe-area-inset-bottom)}
#wrMessages .wf-result-actions .woodbtn{font:400 17px/1.2 var(--black);text-transform:uppercase;min-height:50px;white-space:normal}
/* Shared .woodbtn defaults to width:100%; give each action its own bounded track. */
.wf-board-wrap{position:relative;width:min(100%,calc((var(--im-viewport-height,100dvh) - 264px)*.84));min-width:235px;margin:auto}
#wrMessages #boardWrap.wf-board-wrap{position:relative;display:block;width:min(100%,calc((var(--im-viewport-height,100dvh) - 264px)*.84));max-width:100%;min-width:0;height:auto;aspect-ratio:auto;margin:auto;padding:0;flex:none;transform:none;box-sizing:border-box}
#wrMessages .wf-board-wrap .wf-well{width:100%;min-width:0;margin:0}
#wrMessages #board.wf-well{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-template-rows:repeat(6,minmax(0,1fr))!important;gap:6px!important;padding:9px;width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:5/6!important;transform:none}
#wrMessages #board .wf-tile{display:grid;place-items:center;width:100%;height:100%;min-height:0;min-width:0;aspect-ratio:auto;margin:0;padding:0;box-sizing:border-box}
#wrMessages #board .wf-tile.wf-empty{background:#233a2425!important;border:1px solid #d3e8ba15!important;box-shadow:none!important;opacity:1!important;color:transparent!important}
#wrMessages #board .wf-empty>*{visibility:hidden!important}
#wrMessages #board .wf-empty:before,#wrMessages #board .wf-empty:after{display:none!important}
#wrMessages #board .wf-tile.selected{outline:2px solid #d9f5a5;outline-offset:-3px}
#wrMessages .wf-order{z-index:8;pointer-events:none}
#wrMessages .wf-reveal{position:absolute!important;inset:0;z-index:10;pointer-events:none;user-select:none}
#wrMessages .wf-stats{min-height:58px;box-sizing:border-box}
#wrMessages .wf-stats>div:nth-child(2){display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:center;max-width:40%}
#wrMessages .wf-stats>div:nth-child(2)>small{width:100%;text-align:center}
#wrMessages .wf-stats .wr57-clock-art,#wrMessages .wf-stats .wr57-clock-art svg{position:relative;display:inline-block;width:30px!important;height:34px!important;max-width:100%;margin:0;flex:none}
#wrMessages .wf-board-wrap~.wr-plate-strip{max-height:52px;overflow:hidden;margin:5px 0;pointer-events:none}
@media(min-width:600px){#wrMessages .wf-board-wrap{max-width:380px}}
#wrMessages .wf-actions{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(0,1.35fr);gap:9px;width:100%;min-width:0;box-sizing:border-box}
#wrMessages .wf-actions>button{width:100%;max-width:100%;min-width:0;min-height:48px;margin:0;padding:10px 6px;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;line-height:1.2}
#wrMessages .wf-actions>.go{flex:none}
#wrMessages .wf-top h1,#wrMessages .wf-badge,#wrMessages .wf-word,#wrMessages .wf-note,#wrMessages .wf-capacity,#wrMessages .wf-beta{color:var(--im-surface-ink,#243728)}
#wrMessages .wf-badge{border-color:currentColor}
#wrMessages .wf-note.wf-error{color:#852c24;background:#fff2e5;border-radius:4px;padding:4px}
#wrMessages .wf-pressure{background:#ffffff40}
#wrMessages .wf-pressure i{background:#7ea45a}
#wrMessages .wf-capacity.wf-paused{color:#243728;background:#d8efb8;border-radius:4px;padding:3px 5px}
@media(min-width:600px){.wf-well{max-width:380px}.wf-tile{font-size:32px!important}}@media(max-height:600px){.wf-well{min-width:210px}.wf-top{margin-bottom:6px}.wf-stats{padding:5px 10px}.wf-note{min-height:15px}.wf-top h1{font-size:20px}}@media(prefers-reduced-motion:reduce){.wf-pop.show{animation:none;opacity:1}.wf-well,.wf-pressure i{transition:none}}

/* Brief, non-interactive speed cue; the selected word and score remain readable. */
#wrMessages .wf-badge small{display:block;margin-top:3px;font:800 9px var(--sans);letter-spacing:.04em}
#wrMessages .wf-badge.wf-sped-up{background:#efd29b;color:#382b18;border-color:#ba8f4c}
#wrMessages .wf-speed-cue{position:absolute;z-index:20;top:14px;left:50%;transform:translateX(-50%);max-width:calc(100% - 24px);padding:10px 12px;border:1px solid #b38a4d;border-radius:7px;background:#f1d5a2;color:#382b18;box-shadow:0 3px #9b753d;font:400 12px var(--black);white-space:nowrap;text-align:center;opacity:0;pointer-events:none;transition:opacity .15s}
#wrMessages .wf-speed-cue.show{opacity:1}
@media(prefers-reduced-motion:reduce){#wrMessages .wf-speed-cue{transition:none}}
/* Full-face clock skins keep their readable face instead of an icon-sized SVG. */
#wrMessages .wf-stats .wr57-clock-art:is(.mv-t-flipclock,.w4-t-film),#wrMessages .wf-stats .wr57-clock-art:is(.mv-t-flipclock,.w4-t-film)>svg{width:100%!important;height:100%!important;max-width:none!important}
#wrMessages .wf-untimed-clock .wr582-clock:has(>.mv-t-flipclock)>.wr582-clock-time{position:absolute!important;inset:8px!important;display:grid!important;place-items:center;width:auto!important;height:auto!important;clip:auto!important;overflow:visible!important;white-space:normal!important;font-size:32px;color:#f8f3df;border-radius:4px;background:linear-gradient(#272a30 49%,#111318 49%,#111318 52%,#272a30 52%);box-shadow:0 1px 2px #0009}
