/* One companion, three clearly priced actions. */
.game-main #hint{display:none!important}
.game-main .tools #mark{grid-column:1/4}.game-main .tools #hypothesis{grid-column:4/7}
.mentor-panel:not([hidden])~.board-tip{display:none}
.game-main:has(.mentor-panel:not([hidden]))>.mobile-play-rules{display:none}
.companion-menu header{display:flex;align-items:center;gap:15px;padding-right:12px}
.companion-menu header>span{flex:none;width:88px;height:105px}.companion-menu header svg{width:100%;height:100%;filter:drop-shadow(0 4px 2px #0001)}
.companion-menu header small{font-size:9px;font-weight:700;letter-spacing:1.6px;color:var(--mint)}
.companion-menu h2{font-family:'Arial Rounded MT Bold','Trebuchet MS',sans-serif;margin:7px 0;font-size:27px;line-height:1.15;letter-spacing:-.7px}
.companion-menu header p{font-size:12px;line-height:1.5;margin:0;color:var(--sub)}
.companion-wallet{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-radius:13px;background:var(--club-bg);color:var(--mint);font-size:13px;font-weight:600;margin:12px 0}
.companion-choices{display:grid;gap:9px}.companion-choices>button{display:flex;align-items:center;gap:13px;padding:13px 15px;min-height:81px;border:1px solid var(--club-line);border-radius:16px;background:var(--surface);text-align:left;color:var(--text)}
.companion-choices>button:enabled:hover{border-color:var(--mint);background:color-mix(in srgb,var(--mint) 5%,var(--surface))}
.companion-choices>button:disabled{opacity:.6}.companion-choices>button b{display:block;font-size:15px;margin-bottom:4px}.companion-choices>button small{display:block;font-size:11px;line-height:1.4;color:var(--sub)}.companion-choices>button em{display:block;font-size:10px;color:var(--mint);font-style:normal;margin-top:5px}
.help-kind-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:13px;background:color-mix(in srgb,var(--mint) 10%,var(--club-bg));font-size:25px;color:var(--mint);flex:none}
.help-price{margin-left:auto;white-space:nowrap;font-size:14px;font-weight:750;color:var(--orange)}
.companion-fairness{font-size:11px;line-height:1.55;color:var(--sub);margin:13px 0 6px}
#companion-status{font-size:12px;line-height:1.5;color:var(--orange);margin:8px 0}#companion-status:empty{display:none}
.companion-back{width:100%;min-height:42px;margin-top:4px;font-size:12px;color:var(--mint);font-weight:600;border-radius:12px;background:var(--club-bg)}
.companion-rules{display:block;font-size:11px;color:var(--sub);margin:8px auto 0;text-decoration:underline;min-height:32px}
dialog:has(.companion-menu){width:min(700px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:24px 28px;border-radius:26px}
.daily-present{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 22px;border-radius:23px;background:linear-gradient(125deg,color-mix(in srgb,var(--orange) 10%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--orange) 23%,var(--club-line));margin:23px 0;color:var(--text);overflow:hidden}
.present-art{position:relative;display:block;width:82px;height:104px}.present-art svg{width:100%;height:100%}.present-art i{position:absolute;right:-4px;top:10px;color:var(--orange);font-size:27px;font-style:normal}
.daily-present>div>small{display:block;font-size:8px;letter-spacing:1.4px;font-weight:700;color:var(--sub)}.daily-present b{display:block;font-family:'Arial Rounded MT Bold','Trebuchet MS',sans-serif;font-size:21px;margin:7px 0}.daily-present>div>span{display:block;font-size:13px;font-weight:700;color:var(--mint)}.daily-present>div>p{font-size:10px;color:var(--sub);line-height:1.5;margin:7px 0 0}
.daily-present>button{min-height:46px;padding:12px 19px;border-radius:15px;background:var(--mint);color:var(--club-bg);font-size:13px;font-weight:750;box-shadow:0 4px 10px #0000000a}.daily-present>button:disabled{background:var(--club-bg);color:var(--sub);opacity:1;box-shadow:none}.daily-present>button:enabled:hover{transform:translateY(-2px)}
#present-status{grid-column:1/-1;font-size:12px;margin:0;color:var(--orange)}#present-status:empty{display:none}
@media(min-width:900px) and (orientation:landscape){.game-main .tools #mark{grid-column:1/-1;grid-row:1}.game-main .tools #hypothesis{grid-column:1/-1;grid-row:2}.game-main .tools #undo{grid-column:1;grid-row:3}.game-main .tools #reset{grid-column:2;grid-row:3}}
@media(max-width:650px){.daily-present{grid-template-columns:59px 1fr auto;gap:10px;padding:14px 12px;margin:4px 0;border-radius:20px}.present-art{width:59px;height:83px}.daily-present b{font-size:16px;margin:6px 0}.daily-present>div>small{font-size:7px;letter-spacing:.7px}.daily-present>div>span{font-size:11px}.daily-present>div>p{font-size:9px;max-width:210px}.daily-present>button{padding:10px 11px;font-size:11px;min-height:44px;border-radius:13px}.present-art i{font-size:20px}.companion-menu header>span{width:62px;height:82px}.companion-menu h2{font-size:23px}.companion-menu header{gap:11px}.companion-menu header p{font-size:11px}.companion-choices>button{padding:12px;gap:9px;min-height:84px}.companion-choices>button b{font-size:14px}.companion-choices>button small{font-size:11px}.help-kind-icon{width:32px;height:36px}.help-price{font-size:12px}.companion-fairness{font-size:11px}dialog:has(.companion-menu){padding:26px 17px 17px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}}
.present-art .present-yarn{position:absolute;right:-6px;bottom:0;width:42px;height:42px;color:var(--orange);filter:drop-shadow(0 3px 2px #0001);transform:rotate(-12deg);transition:transform .3s ease}.daily-present:hover .present-yarn{transform:rotate(10deg)}.companion-wallet>span>svg{width:24px;height:24px}.help-price svg{width:15px;height:15px;vertical-align:middle}
@media(max-width:650px){.present-art .present-yarn{width:33px;height:33px;right:-3px}}
@media(prefers-reduced-motion:reduce){.daily-present *{transition:none!important;animation:none!important}}
.companion-cheer{padding:24px 18px;text-align:center;border:1px dashed color-mix(in srgb,var(--mint) 40%,var(--club-line));border-radius:18px;background:color-mix(in srgb,var(--mint) 4%,var(--surface))}.companion-cheer b{font-family:'Arial Rounded MT Bold','Trebuchet MS',sans-serif;font-size:20px;color:var(--mint)}.companion-cheer p{font-size:12px;color:var(--sub);margin:9px 0 0}.companion-choices>button em:empty{display:none}

.companion-menu header>.companion-help-art[data-pilot-character]{display:block;width:112px;height:132px;overflow:hidden;pointer-events:none}
.companion-help-art[data-pilot-character]>picture{display:block;width:100%;height:100%}
.companion-help-art[data-pilot-character] img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;animation:none!important;transform:none!important;filter:none}
@media(max-width:650px){.companion-menu header>.companion-help-art[data-pilot-character]{width:76px;height:96px}}
@media(max-width:350px),(max-height:600px){.companion-menu header>.companion-help-art[data-pilot-character]{width:62px;height:82px}}

/* A desktop help choice uses the available horizontal room. Mobile keeps the
   existing vertical app sheet; content can still scroll if an error is long. */
@media(min-width:900px){
 #modal:has(.companion-menu){width:min(1000px,calc(100vw - 48px));padding:22px 26px;max-height:calc(100dvh - 32px)}
 #modal .companion-menu header>.companion-help-art[data-pilot-character]{width:88px;height:102px}
 #modal .companion-menu .companion-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
 #modal .companion-choices>.companion-cheer{grid-column:1/-1}
 #modal .companion-choices>button{display:grid;grid-template-columns:39px minmax(0,1fr) auto;align-items:start;gap:10px;min-height:144px;padding:16px}
 #modal .companion-choices>button>span:nth-child(2){min-width:0}
 #modal .companion-choices>button small{font-size:12px;line-height:1.5}
 #modal .companion-choices>button .help-price{margin-left:0;line-height:39px}
 #modal .companion-menu .companion-fairness{font-size:12px;line-height:1.5}
 #modal .companion-menu :is(.companion-back,.companion-rules){min-height:44px;font-size:12px}
}
@media(min-width:900px) and (max-height:720px){
 #modal:has(.companion-menu){padding:18px 24px}
 #modal .companion-menu header>.companion-help-art[data-pilot-character]{width:72px;height:86px}
 #modal .companion-choices>button{min-height:132px;padding:12px}
 #modal .companion-menu .companion-wallet{margin:10px 0}
}
@media(min-width:900px) and (max-height:600px){
 #modal:has(.companion-menu){padding:16px 24px}
 #modal .companion-menu header>.companion-help-art[data-pilot-character]{width:62px;height:74px}
 #modal .companion-menu .companion-wallet{padding:8px 14px;margin:8px 0}
 #modal .companion-choices>button{min-height:120px}
}
