.objective-board{display:grid!important;grid-template-columns:repeat(var(--objective-cols),minmax(0,1fr))!important;grid-template-rows:repeat(var(--objective-rows),minmax(0,1fr))!important;aspect-ratio:var(--objective-cols)/var(--objective-rows);gap:2px!important;padding:4px!important;background:#e5d4b4;border-radius:12px;position:relative;touch-action:none;isolation:isolate}
.objective-board .objective-cell{position:relative;min-width:0;min-height:0;padding:0;border:0;border-radius:5px;background:#fff5df;overflow:hidden;cursor:pointer;touch-action:none;outline-offset:-3px}
.objective-board .objective-fruit{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.objective-board .objective-void{visibility:hidden}.objective-board .objective-selected{outline:3px solid #1560f7}.objective-board .objective-hit{filter:brightness(1.5);transform:scale(.8);transition:transform .18s,filter .18s}
.objective-board .objective-zone{box-shadow:inset 0 0 0 2px #218883}.objective-prop{position:absolute;right:0;bottom:0;width:47%;height:49%;pointer-events:none;z-index:5;filter:drop-shadow(0 1px 1px #111)}.objective-prop img{width:100%;height:100%;object-fit:contain}.objective-prop small{position:absolute;right:0;bottom:0;background:#102932;color:white;border-radius:3px;font:700 11px/1.05 sans-serif;padding:1px;max-width:100%;overflow:hidden}.objective-warning{outline:3px solid #ff6816;animation:objective-pulse .65s infinite alternate}.objective-block,.objective-ice{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:clamp(12px,3vw,30px);z-index:2}.objective-jelly{background:#ec62d94a;border:2px solid #e04cc7}.objective-chain{color:#2f4854;text-shadow:1px 1px white}.objective-crate{background:#a27139e8;color:#ffdf9a;border:3px solid #9a541e}.objective-ice{background:#c8f5ff60;border:3px solid #74c9f1;border-radius:8px;color:#fff;box-shadow:inset 0 0 6px #fff}.objective-special,.objective-token{position:absolute;inset:15%;display:grid;place-items:center;font:bold 24px sans-serif;color:#fff;text-shadow:0 0 3px #371047,1px 1px #371047;pointer-events:none}.objective-token{background:#71818a;border-radius:30%;inset:10%}.objective-status{padding:10px;background:#e9f5f1;border-radius:8px;margin:8px 0;font:13px/1.45 system-ui;color:#163e3b}.objective-status dl{display:grid;grid-template-columns:minmax(70px,1fr) minmax(0,3fr);gap:3px 8px;margin:6px 0}.objective-status dt{font-weight:600}.objective-status dd{margin:0;overflow-wrap:anywhere;max-height:100px;overflow:auto}.objective-error{color:#af102f}.objective-invalid{outline:3px solid #c52c3c}@keyframes objective-pulse{to{opacity:.4}}
.objective-overlay{position:absolute;inset:4px;width:calc(100% - 8px);height:calc(100% - 8px);pointer-events:none;z-index:4}.objective-fog .objective-fruit{opacity:.27;filter:grayscale(.6)}#nativeObjectiveDialog{max-width:min(94vw,600px);max-height:85vh;border:2px solid #387c6f;border-radius:12px}#nativeObjectiveDialog::backdrop{background:#112e36b3}
.objectiveTargets.nativeObjectiveTargets{display:flex;min-height:0;overflow:hidden}.objectiveTarget.nativeObjectiveTarget{flex:1;min-height:0;height:100%;margin:0;padding:0 3px;overflow:hidden;font:700 10px/1.05 system-ui;color:#603c2b;transform:none;background:transparent;white-space:normal;cursor:pointer}
#game:has(.objective-board) .booster:disabled{opacity:.35!important;filter:grayscale(.8);cursor:default}
@media(prefers-reduced-motion:reduce){.objective-warning{animation:none}.objective-hit{transition:none}}
