html.wr-messages,html.wr-messages body{min-height:100%;margin:0;overscroll-behavior:none}
/* Same profile components as the app; modal sizing follows the Messages panel. */
.im-profile-home{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left;background:none;border:0;color:inherit;padding:4px 0;min-height:48px}
.im-profile-home>span:last-child{min-width:0}.im-profile-home strong{display:block;overflow-wrap:anywhere}.im-profile-home small{display:block;font-size:11px;margin-top:4px;opacity:.8}
.im-profile-target{cursor:pointer;text-underline-offset:4px}.im-profile-target:focus-visible{outline:3px solid #b69745;outline-offset:3px}.im-profile-target:hover{text-decoration:underline}
html.wr-messages.im-profile-open body{overflow:hidden!important}
html.wr-messages #publicProfileSheet.im-profile-sheet{z-index:1200;padding:8px;box-sizing:border-box;overflow:hidden;background:#101a21b8}
html.wr-messages #publicProfileSheet.im-profile-sheet>.sheet{position:relative;width:min(100%,740px);max-width:740px;max-height:calc(100dvh - 16px);height:calc(100dvh - 16px);margin:auto;padding:12px 12px max(18px,env(safe-area-inset-bottom));box-sizing:border-box;overflow:auto;overscroll-behavior:contain;border-radius:20px;background:var(--cream,#f4f0e5)}
html.wr-messages #publicProfileSheet.im-profile-sheet #publicProfileClose{position:sticky;top:0;right:auto;margin:0 0 10px auto;min-width:40px;min-height:40px;width:40px;height:40px;padding:0;font-size:24px;z-index:20}
html.wr-messages .im-profile-sheet .wr60-public-title{font-size:18px;margin:0 0 14px;padding-right:28px;overflow-wrap:anywhere}
html.wr-messages .im-profile-sheet .wr60-profile{width:100%;min-width:0}html.wr-messages #publicProfileSheet.im-profile-sheet .wr60-tabs{overflow-x:auto;top:50px;background:#3b5238}.im-profile-sheet .wr60-tabs button{min-width:0;font-size:clamp(10px,2.8vw,14px);padding:14px 8px}
.im-profile-sheet .wr60-panel{padding:16px}.im-profile-sheet .wr60-trio{gap:6px}.im-profile-sheet .wr60-trio .stat{min-width:0;padding:10px 4px}.im-profile-sheet .wr60-trio .stat>b{font-size:clamp(18px,5.3vw,30px)}.im-profile-sheet .wr60-trio .stat>span{font-size:10px}
.im-profile-sheet .wr60-bestword{flex-wrap:wrap}.im-profile-sheet .wr60-bestword i{flex:none;width:28px;height:34px;font-size:20px}.im-profile-sheet .wr60-actions:empty{display:none}
.im-profile-sheet .wr60-modebar button{min-height:44px}.im-profile-sheet .wr60-record-labels{gap:8px;flex-wrap:wrap}.im-profile-sheet .wr60-note{line-height:1.5}
.im-profile-sheet .im-profile-record h3{font:400 15px var(--black);margin:0 0 14px}.im-profile-sheet .im-profile-record .wr60-btn{margin-top:8px}.im-profile-sheet .im-profile-refresh{display:block;margin:20px auto 8px}
html.wr-messages.im-profile-open #recordsSheet{z-index:1210}html.wr-messages.im-profile-open #recordsSheet>.sheet{max-height:calc(100dvh - 28px);overflow:auto}
.im-result-profile{display:block;border:1px solid #cad4b180;border-radius:8px;padding:10px 14px;background:#304e3a;color:#fff7df;font:700 12px var(--sans);min-height:44px;margin:8px 0 14px}
html.wr-messages body{padding:0!important}html.wr-messages .wrap{max-width:650px!important;margin:auto;padding:12px!important}
#wrMessages{max-width:560px;margin:auto;padding:18px 18px 28px;color:#243728;font-family:inherit;box-sizing:border-box}#wrMessages[hidden]{display:none}
#wrMessages button,#wrMessages input,#wrMessages select{font:inherit;touch-action:manipulation}#wrMessages button{cursor:pointer}#wrMessages[aria-busy=true] button{opacity:.65;pointer-events:none}
.im-header{display:flex;align-items:center;gap:12px;margin-bottom:18px}.im-header h1{font-size:26px;font-weight:950;line-height:1;margin:0;flex:1}.im-icon{border:1px solid #d6c9aa;border-radius:12px;background:#f3e7ce;min-width:44px;min-height:44px;font-size:25px!important}
.im-account{display:flex;align-items:center;gap:10px;border-bottom:1px solid #d8d0bf;padding:0 0 16px;margin-bottom:16px}.im-account .avatar{width:42px;height:42px;flex-shrink:0}.im-account strong{flex:1}.im-small{border:1px solid #d5c7a8;border-radius:10px;background:#f5ead2;padding:10px;font-size:12px!important;font-weight:700!important}
.im-game{display:flex;align-items:center;text-align:left;gap:16px;border:1px solid #d6cbb3;background:#fffaf0;border-radius:18px;padding:10px;width:100%;margin:12px 0;box-shadow:0 3px 0 #ddd5c4;min-height:146px;color:#193624}
.im-game>span{flex:1;min-width:0}.im-game strong{display:block;font-size:23px;line-height:1.15;font-weight:950;overflow-wrap:anywhere}.im-game small{display:block;margin-top:10px;font-size:12px;color:#6c6d60}.im-game>b{font-size:25px}
.im-board{--n:5;display:grid;grid-template-columns:repeat(var(--n),1fr);gap:3px;padding:9px;border-radius:12px;background:#416344;width:42%;flex-shrink:0;box-sizing:border-box}.im-board i,.im-rack i{font-style:normal;display:grid;place-items:center;color:#302719;background:repeating-linear-gradient(100deg,#ecd19d 0 7px,#e6c48b 8px 9px);border-radius:3px;box-shadow:0 2px 0 #b38b53;font-weight:900;aspect-ratio:1;font-size:13px}
.im-rack{width:42%;display:flex;align-items:center;gap:2px;background:#416344;border-radius:12px;padding:16px 6px;box-sizing:border-box;min-height:110px}.im-rack i{width:14%;font-size:13px;aspect-ratio:.76}.im-hidden-board{width:min(280px,80%);margin:18px auto}.im-hidden-board i{font-size:24px}
.im-wins{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:20px 6px 10px;font-size:14px;border-top:1px solid #d8d0bf;margin-top:20px}.im-wins small{flex-basis:100%;font-weight:800;text-transform:uppercase;font-size:10px;letter-spacing:.1em;color:#747766}
.im-fields{padding:10px 14px;border:1px solid #d8ccb5;border-radius:16px;background:#fff9ed}.im-setting{display:flex;align-items:center;gap:10px;margin:14px 0}.im-setting>label{font-size:12px;font-weight:800;width:70px;flex-shrink:0;text-transform:uppercase}.im-segments{display:flex;flex:1;border:1px solid #d7ccb5;border-radius:9px;overflow:hidden}.im-option{flex:1;background:#f4ebda;border:0;padding:11px 6px;color:#23382a;font-size:13px!important;min-height:44px}.im-option[aria-pressed=true]{background:#345d3c;color:white;font-weight:800!important}
.im-more{border:1px solid #d8ccb5;border-radius:14px;background:#fff9ed;padding:16px;margin:14px 0}.im-more summary{cursor:pointer;font-weight:750}.im-more label,#wrMessages>label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;font-size:14px}.im-more input,#wrMessages select,#wrMessages input{box-sizing:border-box;min-height:44px;padding:10px;border:1px solid #bfb89f;border-radius:8px;background:#fffdf6;color:#243728;max-width:100%}.im-more input{width:90px}#wrMessages select{width:100%}
.im-primary,.im-button,.im-history{display:block;border-radius:12px;padding:16px;width:100%;margin:12px 0;min-height:48px;font-weight:800!important}.im-primary{background:#365c3c;color:#fff8e5;border:1px solid #243f29;box-shadow:0 3px 0 #233d29;font-size:18px!important}.im-button,.im-history{background:#ecd3a3;color:#302719;border:1px solid #b99b68}.im-history{text-align:left}.im-link{display:block;border:0;background:transparent;text-decoration:underline;color:#42563d;padding:12px;margin:auto;font-size:13px!important}.im-error{color:#8c2922;font-size:14px;line-height:1.4;padding:10px;background:#ffece4;border-radius:8px}.im-meta,.im-roster{text-align:center}.im-roster p{margin:8px}.im-roster small{color:#737467}
.im-results-actions{margin:18px 0;padding:16px;background:#f5efdf;border-radius:14px;color:#253728}.im-results-actions button{font:inherit}.im-results-actions details{padding:12px 0}.im-results-actions details p{font-size:13px}
html.wr-messages #btnRematch,html.wr-messages #btnAgain,html.wr-messages #btnDone,html.wr-messages #btnSeriesNext,html.wr-messages #seriesPanel,html.wr-messages #matchChat,html.wr-messages #wrCoachReview,html.wr-messages #wrCoachResult,html.wr-messages [id^=wr681],html.wr-messages #wrBotRematchControls{display:none!important}
html.wr-messages #boardWrap{max-width:min(100%,450px);margin-left:auto;margin-right:auto}
html.wr-messages #wrMessages:has(.im-setting) .im-setting{flex-wrap:wrap}html.wr-messages #wrMessages:has(.im-setting) .im-segments{min-width:190px}
@media(max-width:360px){#wrMessages{padding:12px}.im-game{gap:10px}.im-game strong{font-size:19px}.im-header h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){.im-game,.im-primary{transition:none}}

html.wr-messages #seriesStartActions,html.wr-messages #savedBoardTools,html.wr-messages #btnShare{display:none!important}
#wrMessages{position:relative;z-index:3}
html.wr-messages #scPlay #boardWrap{width:100%;box-sizing:border-box}
html.wr-messages body{display:block!important}
html.wr-messages #app{margin-inline:auto}
html.wr-messages:has(#wrMessages:not([hidden])) #app{display:none!important}
#wrMessages{width:100%;margin-top:0}
.im-header h1,.im-game strong{font-family:var(--black);font-weight:400}

.im-challenge-art{position:relative;margin:12px auto;width:180px;height:115px;overflow:hidden;display:grid;place-items:center}.im-challenge-art>svg{max-height:110px;max-width:170px}

/* V78: the same felt, paper, wood and bundled type as the main app. */
#wrMessages{max-width:480px;padding:20px 16px 28px;color:var(--ink);font-family:var(--sans)}
.im-header{margin-bottom:20px;gap:10px}.im-brand{flex:1;min-width:0}.im-brand small{display:block;font-size:9px;font-weight:800;letter-spacing:.18em;margin-bottom:7px;color:#23351e}.im-header h1{font-size:28px;line-height:1.08;letter-spacing:-.035em;color:#131311}
.im-icon{position:relative;background:#fbfbf8;border:1px solid #3d56364d;border-radius:9px;box-shadow:0 3px 0 #4e6446;color:#131311;flex-shrink:0}
.im-settings-icon:before{content:'';position:absolute;width:22px;height:16px;left:10px;top:12px;background:linear-gradient(#263b20,#263b20) 0 2px/22px 2px no-repeat,linear-gradient(#263b20,#263b20) 0 12px/22px 2px no-repeat}
.im-settings-icon:after{content:'';position:absolute;left:15px;top:12px;width:4px;height:7px;border:2px solid #263b20;border-radius:2px;background:#fbfbf8;box-shadow:8px 10px 0 -1px #fbfbf8,8px 10px 0 1px #263b20}
.im-account{border:0;background:#fbfbf8;padding:12px;margin-bottom:22px;box-shadow:0 3px 0 #4e644655;border-radius:3px;gap:12px}.im-account .avatar{width:38px;height:38px;font-size:18px}.im-account strong{font-size:16px}.im-small{background:#eeeee6;border:1px solid #d4d5c8;border-radius:6px;padding:10px;font-size:11px!important;color:#283b22}
.im-game{position:relative;min-height:118px;margin:0 0 18px;padding:16px 14px;gap:14px;background:#fbfbf8;border:0;border-radius:3px;box-shadow:0 4px 0 #4e644677;color:#131311}
.im-game:before,.im-game:after{content:'';position:absolute;left:0;right:0;height:6px;background:#fbfbf8;clip-path:polygon(0 50%,8% 0,17% 70%,26% 20%,35% 100%,44% 30%,53% 70%,62% 0,71% 60%,80% 20%,89% 80%,100% 30%,100% 100%,0 100%)}
.im-game:before{top:-5px}.im-game:after{bottom:-5px;transform:rotate(180deg)}
.im-game strong{font-size:23px;letter-spacing:-.04em;overflow-wrap:normal}.im-game small{margin-top:7px;font-size:11px;color:#6b6a5f;line-height:1.5}.im-game>b{font-size:26px;color:#4e6446}
.im-game .im-board,.im-game .im-rack{width:90px;min-width:90px;height:90px;min-height:0;gap:2px;padding:7px;background:#4e6446;border:2px solid #3d5036;border-radius:8px;box-shadow:inset 0 1px 0 #a8bd91,0 2px 0 #384b30}
.im-board i,.im-rack i{background:repeating-linear-gradient(100deg,#ffffff12 0 5px,#91642812 6px 7px),linear-gradient(#f0d6aa,#d6b078);border:1px solid #d2af7b;box-shadow:0 2px 0 #b8905c,inset 0 1px 0 #fff6;color:#30291e;border-radius:3px}
.im-game .im-board i{font-size:8px}.im-game .im-rack{gap:2px;padding:7px 4px}.im-game .im-rack i{font-size:8px;border-radius:2px;min-width:0}
.im-wins{background:#4e6446;color:#fbfbf8;border:1px solid #3e5137;border-radius:9px;padding:14px;margin-top:24px;font-size:12px;box-shadow:inset 0 1px 0 #ffffff20}.im-wins small{color:#dde9d3;font-size:9px;letter-spacing:.14em}
.im-link{color:#1c3017;font-size:12px!important;font-weight:700;padding:16px;min-height:44px}
.im-fields,.im-more{background:#fbfbf8;border-color:#4e64464d;border-radius:8px;box-shadow:0 3px 0 #4e644644}.im-setting>label{color:#4e6446;font-size:10px;letter-spacing:.04em}.im-option{background:#edeee6}.im-option[aria-pressed=true]{background:#4e6446}.im-segments{border-color:#c9cebe;border-radius:6px}.im-primary{background:linear-gradient(#66bd59,#3f8e3a);border-color:#397e32;border-radius:9px;box-shadow:0 4px 0 #2d6828;color:#fff;font-family:var(--black)!important;font-size:16px!important;font-weight:400!important}.im-button,.im-history{background:linear-gradient(#f0d6aa,#d6b078);border-color:#b8905c;border-radius:8px;box-shadow:0 3px 0 #a07b4c}.im-meta{font-size:12px;color:#243b1e;line-height:1.6}.im-roster{background:#fbfbf8;padding:14px;border-radius:6px;margin:14px 0}.im-results-actions{background:#fbfbf8;box-shadow:0 3px 0 #4e644644;border-radius:8px}.im-hidden-board{background:#4e6446;border:5px solid #527343;box-shadow:inset 0 0 0 2px #a2bb83,0 4px 0 #3e5535}
#wrMessages button:focus-visible{outline:3px solid #172a12;outline-offset:4px}#wrMessages button:active{transform:translateY(2px)}
@media(max-width:360px){#wrMessages{padding:16px 12px}.im-header h1{font-size:25px}.im-game{padding:14px 10px;gap:10px}.im-game strong{font-size:20px}.im-game .im-board,.im-game .im-rack{width:76px;min-width:76px;height:76px}.im-account{gap:8px}.im-small{padding:9px 7px}}

/* V79.3: a quiet loading interstitial; never overrides the game or menus. */
html.wr-messages:has(#wrMessages[data-view=loading]:not([hidden])) body:before,
html.wr-messages:has(#wrMessages[data-view=loading]:not([hidden])) body:after{display:none!important}
#wrMessages[data-view=loading]{position:fixed;inset:0;z-index:1000;max-width:none;margin:0;padding:24px;overflow:auto;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--im-surface-ink,#172813)}
#wrMessages[data-view=loading][hidden]{display:none}
.im-loading-content{text-align:center;width:100%;max-width:300px;margin:auto;padding:24px 0;box-sizing:border-box}
.im-loading-tiles{display:flex;justify-content:center;gap:6px;width:max-content;margin:0 auto 27px;padding:14px 13px 17px;border:1px solid #849d704d;border-radius:18px;background:#2e4935;box-shadow:inset 0 1px 0 #ffffff18,0 4px 0 #263e2d,0 12px 24px #192c242b}
.im-loading-tiles i{display:grid;place-items:center;width:39px;height:45px;font-family:var(--black),sans-serif;font-size:25px;font-style:normal;font-weight:400;color:#30291e;border:1px solid #c8a46d;border-radius:6px;background:repeating-linear-gradient(100deg,#ffffff12 0 7px,#9164280c 8px 9px),linear-gradient(#f0d6aa,#dfbd87);box-shadow:0 3px 0 #b18b53,inset 0 1px 0 #fff8;animation:im-loading-tile 2s ease-in-out infinite}
.im-loading-tiles i:nth-child(2){animation-delay:.12s}.im-loading-tiles i:nth-child(3){animation-delay:.24s}.im-loading-tiles i:nth-child(4){animation-delay:.36s}
#wrMessages .im-loading-brand{font-family:var(--black),sans-serif;font-size:26px;line-height:1.1;letter-spacing:-.035em;margin:0 0 13px;color:#faf2df}
#wrMessages .im-loading-status{font-family:var(--sans),sans-serif;font-size:14px;line-height:1.5;margin:0;color:#dce3ce}
.im-loading-dots{display:flex;justify-content:center;gap:6px;margin-top:21px}.im-loading-dots i{width:5px;height:5px;border-radius:50%;background:#e4c991;animation:im-loading-dot 1.4s ease-in-out infinite}.im-loading-dots i:nth-child(2){animation-delay:.16s}.im-loading-dots i:nth-child(3){animation-delay:.32s}
@keyframes im-loading-tile{0%,12%,48%,100%{transform:translateY(0)}28%{transform:translateY(-5px)}}
@keyframes im-loading-dot{0%,80%,100%{opacity:.3}40%{opacity:1}}
@media(prefers-reduced-motion:reduce){.im-loading-tiles i,.im-loading-dots i{animation:none}}
/* Keep the board concealed until the leave/rejoin checks finish. */
html.wr-messages.wr-im-away #app{visibility:hidden!important;pointer-events:none!important}
/* V80: reuse the game's controls, without a separate white results panel. */
html.wr-messages #imResultsActions{margin:0;padding:0 0 max(18px,env(safe-area-inset-bottom));background:transparent;box-shadow:none;border:0;border-radius:0;color:#fff}
html.wr-messages #imResultsActions .woodbtn{font-family:var(--black);font-size:17px;line-height:1.2;font-weight:400;min-height:50px;text-transform:uppercase;letter-spacing:.02em}
html.wr-messages #imResultsActions button:focus-visible{outline:3px solid #fff;outline-offset:4px}
html.wr-messages #imResultsActions>p,html.wr-messages #imResultsActions details{font-family:var(--sans);font-size:13px;line-height:1.5}
html.wr-messages #imResultsActions .im-error{color:#8c2922}
/* V83: native-looking, accessible records from the home wins button. */
.im-records-link{width:100%;text-align:left;cursor:pointer}
.im-records-link small{display:block}
.im-record-card{margin:12px 0;padding:14px;border:1px solid #293f2e;border-radius:10px;background:#344f3a;color:#faf3df;box-shadow:0 3px 0 #263d2c}
.im-record-card h2{font:400 16px var(--black);margin:0 0 12px}
.im-record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0}
.im-record-grid>div{padding:10px 4px;text-align:center;border-radius:6px;background:linear-gradient(#f0d6aa,#d6b078);color:#302719;box-shadow:0 2px 0 #a07b4c}
.im-record-grid dt{font:700 10px var(--sans);letter-spacing:.06em;text-transform:uppercase}
.im-record-grid dd{font:400 26px var(--black);margin:5px 0 0;overflow-wrap:anywhere}
.im-record-card p{font:500 11px var(--sans);color:#d8e1cd;margin:12px 0 0}
.im-record-note{font:500 12px/1.5 var(--sans);color:#1c3017;margin:16px 0}
.im-record-heading{font:400 20px var(--black);color:#172813;margin:24px 0 12px;overflow-wrap:anywhere}
.im-opponent{display:flex;align-items:center;gap:10px;width:100%;min-height:66px;margin:10px 0;padding:12px;text-align:left;border:1px solid #b8905c;border-radius:8px;background:linear-gradient(#f0d6aa,#d6b078);box-shadow:0 3px 0 #a07b4c;color:#302719}
.im-opponent>span:first-child{flex:1;min-width:0}.im-opponent strong{display:block;font-size:15px;overflow-wrap:anywhere}.im-opponent small{display:block;font-size:11px;margin-top:5px}.im-opponent-record{font-size:12px;white-space:nowrap}.im-opponent>b{font-size:24px}

/* V84 — one selected cosmetic preview, and theatre curtains across the result board. */
.im-cosmetic-note{font-size:13px;line-height:1.5;text-align:center;color:#465b40}
.im-cosmetic-stage{margin-top:16px;padding:14px;border:2px solid #57784d;border-radius:16px;background:#e7e7cf;overflow:hidden}
.im-cosmetic-stage h2{font-family:var(--black);font-size:19px;text-align:center;margin:12px 0 0}
.im-cosmetic-preview{height:220px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border-radius:10px;background:#314b36}
.im-cosmetic-preview>span{max-width:100%;max-height:100%}.im-cosmetic-preview .wr72-preview,.im-cosmetic-preview .wr74-preview{width:100%;height:100%}
.im-cosmetic-preview .background-theme-swatch{width:100%;height:100%}
.im-cosmetic-preview img{max-width:100%;max-height:210px;object-fit:contain}
.im-cosmetic-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}
.im-cosmetic-item{min-height:52px;border:1px solid #8b9d73;border-radius:10px;padding:10px;background:#ebe2c8;color:#263a27;font-size:13px!important}
.im-cosmetic-item[aria-pressed=true]{background:#365e3d;color:#fff5da;border-color:#203e28;box-shadow:inset 0 0 0 2px #95bb79}
#imEquipCosmetic:disabled{opacity:.65;cursor:default}
.im-curtain-board{position:relative;isolation:isolate;overflow:hidden}
.im-curtain-call{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:hidden;border-radius:8px}
.im-curtain{position:absolute;top:0;bottom:0;width:50.5%;background:repeating-linear-gradient(90deg,#420f1a 0%,#9b273a 6%,#d1515c 10%,#7b1b2e 17%,#410d19 22%);border-bottom:8px solid #c79b48;box-shadow:0 8px 16px #0008}
.im-curtain.left{left:0;border-radius:0 0 26% 8%;transform:translateX(-94%)}
.im-curtain.right{right:0;border-radius:0 0 8% 26%;transform:translateX(94%)}
.im-curtain-valance{position:absolute;top:0;left:0;right:0;height:15px;background:repeating-linear-gradient(90deg,#781a2a 0 12px,#ab3846 18px,#4d1020 28px);border-bottom:3px solid #cfad62;border-radius:0 0 45% 45%;box-shadow:0 3px 6px #0005}
@media(prefers-reduced-motion:reduce){.im-curtain-call *{animation:none!important;transition:none!important}}

.im-board.im-curtain-preview{width:210px;height:210px}.im-board.im-curtain-preview>.im-curtain-call i{aspect-ratio:auto;font-size:inherit;border-radius:0;display:block}.im-board.im-curtain-preview .im-curtain{background:repeating-linear-gradient(90deg,#420f1a 0%,#9b273a 6%,#d1515c 10%,#7b1b2e 17%,#410d19 22%)}

/* V93: an immediate web shell bridges HTML parsing into the live loading view. */
#imLaunchShell{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:24px;background:transparent;color:var(--im-surface-ink,#172813);font-family:var(--sans,sans-serif)}
#imLaunchShell .im-loading-brand{font-family:var(--black,sans-serif);font-size:26px;margin:0 0 13px;line-height:1.1}#imLaunchShell .im-loading-status{font-size:14px;color:#dce3ce;margin:0;line-height:1.5}
#wrMessages:not([data-view=loading]){animation:im-content-in .14s ease-out both}
@keyframes im-content-in{from{opacity:.75;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){#wrMessages:not([data-view=loading]){animation:none}}

/* V96: panel-sized gameplay. No screen-sized minimums or transform scaling. */
html.wr-messages.im-game-layout body{height:var(--im-viewport-height,100dvh)!important;min-height:0!important;overflow:hidden!important}
html.wr-messages.im-game-layout #app{width:var(--im-viewport-width,100%);max-width:760px!important;height:var(--im-viewport-height,100dvh)!important;min-height:0!important;padding:8px 12px 12px!important;margin:0 auto!important;box-sizing:border-box}
html.wr-messages.im-game-layout #scPlay,html.wr-messages.im-game-layout #scAnagram{height:100%!important;min-height:0!important;max-height:none!important;padding:0!important;flex:1 1 0;min-width:0;overflow:visible!important}
html.wr-messages.im-game-layout #scPlay>*:not(.spacer),html.wr-messages.im-game-layout #scAnagram>*{flex-shrink:0}
html.wr-messages.im-game-layout #scPlay>.spacer{min-height:4px;flex:1 1 0}
html.wr-messages.im-game-layout #scPlay>.torn{margin-top:0!important}
html.wr-messages.im-game-layout #scPlay #boardWrap{width:var(--im-board-side,280px)!important;max-width:100%!important;flex:none;align-self:center;margin-inline:auto!important}
html.wr-messages.im-game-layout #board{font-size:var(--im-cell-font,28px)!important}
html.wr-messages.im-game-layout #scAnagram .ana-top{gap:8px;margin-top:0;flex-wrap:wrap}
html.wr-messages.im-game-layout #scAnagram{justify-content:center}
html.wr-messages.im-game-layout #scAnagram .ana-scorecard{margin-top:12px!important;margin-bottom:12px;min-width:0;width:min(100%,480px);flex:none}
html.wr-messages.im-game-layout #scAnagram .ana-enter{margin-top:0!important;min-height:44px;padding:12px 16px;flex:none}
html.wr-messages.im-game-layout #scAnagram .ana-rackzone{width:var(--im-rack-width,280px)!important;max-width:100%;align-self:center;flex:none;padding-bottom:8px;margin-bottom:0}
/* V99.1: portrait phones retain the app's top HUD and lower letter rack.
   Short panels keep the compact layout and the same measured rack fitting. */
/* Use the native panel measurement: CSS vh/media queries can briefly retain
   Messages' compact height during expansion. */
html.wr-messages.im-game-layout.im-phone-portrait #scAnagram{justify-content:flex-start}
html.wr-messages.im-game-layout.im-phone-portrait #scAnagram .ana-scorecard{margin-top:clamp(24px,calc(var(--im-viewport-height)*.09),80px)!important;width:min(86%,360px)}
html.wr-messages.im-game-layout.im-phone-portrait #scAnagram .ana-enter{margin-top:auto!important;padding:17px 16px}
html.wr-messages.im-game-layout.im-phone-portrait #scAnagram .ana-rackzone{padding-bottom:max(40px,min(calc(var(--im-viewport-height)*.16),140px),env(safe-area-inset-bottom))}
/* V97.1: moving clones live under body, outside #scAnagram. Keep their
   lettering identical to the rack/build tiles so taps never inflate it. */
html.wr-messages.im-game-layout :is(#scAnagram .ana-tile,.ana-flight){font-size:var(--im-ana-font,28px)!important}
html.wr-messages.im-game-layout #scAnagram :is(.ana-rackzone,.ana-row){min-width:0;box-sizing:border-box}
html.wr-messages .im-challenge-art[data-w3-challenge]{width:208px;height:144px;margin:12px auto}
html.wr-messages .im-challenge-art[data-w3-challenge]>svg{width:208px;height:144px;max-width:100%;max-height:none}
html.wr-messages.im-short #scPlay>.torn,html.wr-messages.im-short #scAnagram .ana-scorecard{padding:10px 14px}
html.wr-messages.im-short #scPlay .avatar,html.wr-messages.im-short #scAnagram .ana-scorecard .avatar{width:36px;height:36px;font-size:18px}
html.wr-messages.im-short #scPlay .headnums .pts,html.wr-messages.im-short #scAnagram .headnums .pts{font-size:23px}
html.wr-messages.im-short #scPlay .headnums .words,html.wr-messages.im-short #scAnagram .headnums .words{font-size:12px}
html.wr-messages.im-short #scPlay>.tracker{height:28px;min-height:28px;margin-bottom:5px}
html.wr-messages.im-short #scAnagram .ana-scorecard{margin-bottom:8px}
html.wr-messages.im-short-wide #app{max-width:1000px!important}
html.wr-messages.im-short-wide #scPlay.on{display:grid;grid-template-columns:minmax(0,.41fr) minmax(0,.59fr);grid-template-rows:auto auto 1fr;gap:8px 16px;align-content:center}
html.wr-messages.im-short-wide #scPlay>*{grid-column:1;min-width:0}
html.wr-messages.im-short-wide #scPlay>.spacer{display:none}
html.wr-messages.im-short-wide #scPlay #boardWrap{grid-column:2;grid-row:1 / span 12;justify-self:center;align-self:center}
html.wr-messages.im-short-wide #scPlay .clockrow{flex-wrap:wrap;margin-top:0}
html.wr-messages.im-short-wide #scPlay .game-controls{flex-wrap:wrap}
html.wr-messages.im-short-wide #scPlay>.tracker{align-self:end;align-items:center}

/* V100 Messages layout recovery. The panel fitter owns the board dimensions;
   main-app trail rules based on svh must not cap a resized extension board. */
html.wr-messages.im-game-layout body.playing #scPlay #boardWrap{
 max-width:100%!important;
}
html.wr-messages.im-game-layout #scPlay>.wr-trail-strip,
html.wr-messages.im-game-layout #scPlay>.wr-plate-strip{
 width:100%!important;max-width:100%!important;align-self:center;
}
html.wr-messages.im-short #scPlay>.wr-trail-strip{
 height:52px!important;min-height:0!important;flex:0 0 52px!important;margin-block:4px!important;
}
html.wr-messages.im-short #scPlay>.wr-plate-strip{
 height:36px!important;min-height:0!important;flex:0 0 36px!important;margin-block:4px!important;
}
/* WR THEME CONTINUITY START */
/* The same background lives on body across menu, loading and gameplay.
   Do not put opaque theme copies on fixed/scrolling children: their tile origins diverge. */
html.wr-messages{--im-surface-ink:#172813;--im-surface-muted:#172813}
html.wr-messages body #wrMessages{color:var(--im-surface-ink)}
#wrMessages :is(.im-account,.im-fields,.im-more,.im-roster,.im-cosmetic-stage){color:#243728}
#wrMessages .im-header h1,#wrMessages .im-brand small,
#wrMessages>.im-link,#wrMessages>.im-meta,#wrMessages>.im-record-note,
#wrMessages>.im-record-heading,#wrMessages>.im-cosmetic-note,
#wrMessages>.im-theme-link{color:var(--im-surface-ink)}
#wrMessages .im-loading-brand,#wrMessages .im-loading-status,
#imLaunchShell .im-loading-brand,#imLaunchShell .im-loading-status{color:var(--im-surface-ink)}
#wrMessages .im-loading-status,#imLaunchShell .im-loading-status{opacity:.85}
#wrMessages .im-loading-content,#imLaunchShell .im-loading-content{position:relative;isolation:isolate}
.im-theme-link{display:block;width:100%;border:0;background:transparent;min-height:44px;margin:0 0 12px;padding:10px;font-size:12px!important;font-weight:700!important;text-align:right;text-decoration:underline;text-underline-offset:3px}
#wrMessages button:focus-visible{outline-color:var(--im-surface-ink)}
/* WR THEME CONTINUITY END */

/* Completed shared-message results: read-only spectator surface. */
#scDone.im-spectator > :not(#imSpectatorSummary):not(#detailResults):not(#imSpectatorActions){display:none!important}
#scDone.im-spectator #btnShare{display:none!important}
.im-spectator-summary{margin:18px 0 20px;color:var(--ink,#171c16)}
.im-spectator-title{padding:18px 14px;background:#ffe73c;border-radius:12px;box-shadow:0 4px 0 #b4a330;font-family:var(--font-display,'Archivo Black',sans-serif);font-size:clamp(23px,7vw,36px);line-height:1.2;text-align:center;overflow-wrap:anywhere}
.im-spectator-meta{color:#f5f1df;font-size:14px;margin:18px 0 12px}
.im-spectator-roster{display:grid;gap:9px}
.im-spectator-player{border:2px solid transparent;background:#f5f1e5;color:#171c16;border-radius:11px;padding:13px 15px;display:flex;gap:12px;justify-content:space-between;align-items:center;text-align:left;font:inherit;cursor:pointer;box-shadow:0 3px 0 #9c9c8a}
.im-spectator-player[aria-pressed=true]{border-color:#c8f7a7;background:#76db60;box-shadow:0 0 0 2px #76db60}
.im-spectator-player span{min-width:0}.im-spectator-player strong{display:block;overflow-wrap:anywhere;font-size:19px}.im-spectator-player small{display:block;opacity:.7;margin-top:3px}.im-spectator-player b{font-size:25px;white-space:nowrap}
#scDone.im-spectator .detailresults{margin-top:20px}
html.wr-messages #imSpectatorActions{margin:18px 0 0;padding:0 0 max(18px,env(safe-area-inset-bottom));background:transparent;box-shadow:none;border:0;border-radius:0}
html.wr-messages #imSpectatorActions .woodbtn{font-family:var(--black);font-size:17px;line-height:1.2;font-weight:400;min-height:50px;text-transform:uppercase;letter-spacing:.02em}
html.wr-messages #imSpectatorActions button:focus-visible{outline:3px solid #fff;outline-offset:4px}
html.wr-messages .im-spectator-title{font-family:var(--black);text-transform:uppercase}
html.wr-messages .im-spectator-meta{background:#203b2bd9;border-radius:8px;padding:10px 12px;color:#f5f1df}
