.fishing-layer{position:fixed;z-index:15000;inset:25dvh 0 auto;width:100%;height:50dvh;color:#fff;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;overflow:hidden;background:#031a2a;box-shadow:0 0 40px #000c;border-block:1px solid #3edcff66;touch-action:manipulation}
.fishing-layer[hidden]{display:none!important}.fishing-layer *{box-sizing:border-box}.fishing-layer button{font:inherit;color:inherit;border:0;cursor:pointer;touch-action:manipulation}
.fishing-hub{height:100%;padding:10px 12px 16px;background:radial-gradient(circle at 50% -20%,#0e7d9e,#05283d 45%,#02131f)}
.fishing-hub-head,.fishing-game-head{height:38px;display:flex;align-items:center;gap:8px}.fishing-hub-head strong{font-size:16px}.fishing-close,.fishing-back{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#ffffff18;box-shadow:inset 0 0 0 1px #ffffff26;font-size:20px;font-weight:900}.fishing-close{margin-left:auto}.fishing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:12px}.fishing-tile{display:flex;min-width:0;flex-direction:column;align-items:center;gap:5px;background:transparent}.fishing-tile-icon{display:grid;place-items:center;width:min(15vw,58px);aspect-ratio:1;border-radius:17px;background:linear-gradient(145deg,#15bfe7,#07577f);box-shadow:0 5px 13px #0019,inset 0 0 0 1px #8cf1ff66;overflow:hidden}.fishing-tile-icon img{width:100%;height:100%;object-fit:cover}.fishing-tile small{max-width:100%;font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fishing-game{position:absolute;inset:0;overflow:hidden;background:#06304a}.fishing-ocean{position:absolute;inset:0;overflow:hidden;user-select:none;background-image:url("/assets/Fishing/background-fishing.png"),linear-gradient(#08779c,#075677 40%,#03314e 76%,#031e32);background-size:cover;background-position:center}.fishing-ocean:after{content:"";position:absolute;z-index:1;inset:auto 0 0;height:10px;background:repeating-linear-gradient(135deg,#b89449 0 16px,#8b6933 17px 32px);opacity:.42}.fishing-game-head{position:absolute;z-index:30;inset:0 0 auto;height:44px;padding:5px 7px;background:#031e30e8;backdrop-filter:blur(5px)}
.fishing-balance{min-width:76px;padding:3px 7px;border:1px solid #28d7ff66;border-radius:9px;background:#032f47}.fishing-balance small{display:block;font-size:7px;color:#64def9}.fishing-balance strong{display:block;color:#ffe16a;font-size:13px}.fishing-auto,.fishing-targets{padding:7px 8px;border-radius:8px;background:#087eaa;box-shadow:0 2px 0 #034b68;font-size:10px;font-weight:900}.fishing-auto.on{background:#18a95c;box-shadow:0 2px 0 #09652f}.fishing-targets{margin-left:auto}.fishing-status{position:absolute;z-index:20;top:49px;left:50%;transform:translateX(-50%);max-width:75%;padding:3px 8px;border-radius:10px;background:#001d2baa;font-size:9px;font-weight:800;text-align:center;pointer-events:none;transition:opacity .25s}.fishing-status.luck{color:#ffe86a}
.fishing-entities{position:absolute;z-index:5;inset:0}.fishing-fish{position:absolute;display:flex;align-items:center;justify-content:center;font-weight:900;filter:drop-shadow(0 4px 4px #001a);will-change:transform;cursor:crosshair}.fishing-fish img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;transform:rotate(var(--fish-angle));transform-origin:center}.fishing-fish span{position:absolute;left:50%;bottom:-3px;transform:translateX(-50%);padding:1px 4px;border-radius:7px;background:#001d2bcc;color:#fff58a;font-size:10px;line-height:1.2;pointer-events:none}.fishing-fish.fallback{border-radius:55% 45% 45% 55%;border:2px solid #ffffff66;background:currentColor}.fishing-fish.hit{filter:brightness(1.8) drop-shadow(0 0 8px #fff)}.fishing-fish.dying{opacity:0;transition:opacity .22s,filter .22s;filter:brightness(2) blur(2px)}
.fishing-projectile{position:absolute;z-index:12;width:9px;height:9px;border-radius:50%;background:#fff6a0;box-shadow:0 0 5px 2px #ff9,0 0 12px 4px #1bdcff;pointer-events:none}.fishing-reward{position:absolute;z-index:15;color:#fff16b;font-size:17px;font-weight:1000;text-shadow:0 2px 4px #000;animation:fishing-reward .75s ease-out forwards;pointer-events:none}@keyframes fishing-reward{to{transform:translateY(-32px) scale(1.18);opacity:0}}
.fishing-cannon{position:absolute;z-index:14;left:50%;bottom:3px;width:68px;height:68px;transform:translateX(-50%);pointer-events:none}.fishing-cannon img{width:100%;height:100%;object-fit:contain;transform-origin:50% 62%;filter:drop-shadow(0 4px 5px #001)}.fishing-bet{position:absolute;z-index:18;left:50%;bottom:2px;transform:translateX(-50%);display:flex;align-items:center;width:68px;height:19px;border-radius:10px;background:#031e30ed;box-shadow:0 0 0 1px #5de6ff66}.fishing-bet button{width:22px;height:19px;padding:0;background:#0a89b1;font-size:14px;font-weight:1000}.fishing-bet button:first-child{border-radius:10px 0 0 10px}.fishing-bet button:last-child{border-radius:0 10px 10px 0}.fishing-bet b{flex:1;text-align:center;color:#ffe16a;font-size:9px}
.fishing-cashback{position:absolute;z-index:18;right:0;top:50%;transform:translateY(-50%);width:40px;height:40px;padding:2px;border-radius:12px 0 0 12px;background:#073c5be8;box-shadow:0 0 0 1px #4ce0ff66}.fishing-cashback img{width:100%;height:100%;object-fit:contain}.fishing-panel{position:absolute;z-index:40;inset:44px 6px auto auto;width:min(285px,88vw);max-height:calc(100% - 50px);overflow:auto;padding:10px;border-radius:12px;background:#03263af5;box-shadow:0 8px 28px #000b,inset 0 0 0 1px #4ce0ff55}.fishing-panel[hidden]{display:none}.fishing-panel-head{display:flex;align-items:center;gap:6px}.fishing-panel-head strong{font-size:11px}.fishing-panel-head button{margin-left:auto;width:26px;height:26px;border-radius:50%;background:#ffffff18;font-size:17px}.fishing-panel p{margin:5px 0 8px;color:#a9d9e7;font-size:9px}.fishing-options{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.fishing-option{display:flex;align-items:center;gap:3px;padding:4px;border-radius:7px;background:#ffffff0d;font-size:9px}.fishing-option input{margin:0;width:13px;height:13px}.fishing-panel-actions{display:flex;gap:6px;margin-top:8px}.fishing-panel-actions button{flex:1;padding:6px;border-radius:7px;background:#087eaa;font-size:9px;font-weight:900}
.fishing-popup{position:absolute;z-index:60;inset:0;display:grid;place-items:center;background:#00121db3}.fishing-popup[hidden]{display:none}.fishing-popup-card{position:relative;width:min(260px,82vw);padding:18px 14px 14px;border-radius:18px;text-align:center;background:linear-gradient(160deg,#075b78,#03283e);box-shadow:0 12px 35px #000c,inset 0 0 0 1px #53e9ff77}.fishing-popup-card>button:first-child{position:absolute;right:8px;top:7px;width:27px;height:27px;border-radius:50%;background:#ffffff18;font-size:17px}.fishing-popup-card small,.fishing-popup-card span{display:block;color:#9ee8f7;font-size:10px}.fishing-popup-card strong{display:block;margin:7px;color:#ffe16a;font-size:23px}.fishing-popup-card .fishing-collect{width:100%;padding:9px;border-radius:9px;background:#17a95d;font-size:11px;font-weight:900}.fishing-popup-card .fishing-processing{margin:6px 0;color:#b7dbe4;font-size:9px}.fishing-loading{position:absolute;z-index:80;inset:0;display:grid;place-items:center;background:#032235e8;font-size:12px;font-weight:800}.fishing-loading[hidden]{display:none}
@media (min-width:700px){.fishing-layer{left:50%;width:min(100%,900px);transform:translateX(-50%)}.fishing-grid{grid-template-columns:repeat(4,110px);justify-content:center}.fishing-fish span{font-size:11px}}

/* ===== Fishing — enquadramento mobile em telas largas ===== */
@media (min-width:431px){
    .fishing-layer{
        left:50%;
        right:auto;
        width:430px;
        max-width:100vw;
        transform:translateX(-50%);
    }
}

/* ===== Fishing — grade responsiva dentro do frame 430px ===== */
@media (min-width:431px){
    .fishing-grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
        justify-content:stretch;
    }
}

/* ===== Fishing Multiplayer — 4 canhões ===== */

.fishing-cannon.seat-1,
.fishing-cannon.seat-2,
.fishing-cannon.seat-3,
.fishing-cannon.seat-4{
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
    transform:none;
}

.fishing-cannon.seat-1{
    left:18%;
    top:46px;
    transform:translateX(-50%) rotate(180deg);
}

.fishing-cannon.seat-2{
    right:18%;
    top:46px;
    transform:translateX(50%) rotate(180deg);
}

.fishing-cannon.seat-3{
    left:18%;
    bottom:3px;
    transform:translateX(-50%);
}

.fishing-cannon.seat-4{
    right:18%;
    bottom:3px;
    transform:translateX(50%);
}

.fishing-bet.seat-1{
    left:18%;
    top:47px;
    bottom:auto;
    transform:translateX(-50%);
}

.fishing-bet.seat-2{
    left:auto;
    right:18%;
    top:47px;
    bottom:auto;
    transform:translateX(50%);
}

.fishing-bet.seat-3{
    left:18%;
    bottom:2px;
    transform:translateX(-50%);
}

.fishing-bet.seat-4{
    left:auto;
    right:18%;
    bottom:2px;
    transform:translateX(50%);
}

.fishing-remote-cannon{
    pointer-events:none;
    opacity:.92;
}

.fishing-remote-cannon small{
    position:absolute;
    left:50%;
    bottom:-12px;
    transform:translateX(-50%);
    max-width:86px;
    padding:1px 5px;
    border-radius:8px;
    background:#001d2bcc;
    color:#fff;
    font-size:8px;
    font-weight:800;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.fishing-remote-cannon.seat-1 small,
.fishing-remote-cannon.seat-2 small{
    top:-12px;
    bottom:auto;
    transform:translateX(-50%) rotate(180deg);
}


/* ===== Fishing Multiplayer — perspectiva relativa ===== */

.fishing-cannon.view-self{
    left:50%;
    right:auto;
    top:auto;
    bottom:3px;
    transform:translateX(-50%);
}

.fishing-bet.view-self{
    left:50%;
    right:auto;
    top:auto;
    bottom:2px;
    transform:translateX(-50%);
}

/* Jogador remoto 1 */
.fishing-cannon.view-top-left{
    left:22%;
    right:auto;
    top:46px;
    bottom:auto;
    transform:translateX(-50%) rotate(180deg);
}

/* Jogador remoto 2 */
.fishing-cannon.view-top-right{
    left:auto;
    right:22%;
    top:46px;
    bottom:auto;
    transform:translateX(50%) rotate(180deg);
}

/* Jogador remoto 3 */
.fishing-cannon.view-side{
    left:auto;
    right:2px;
    top:50%;
    bottom:auto;
    transform:translateY(-50%) rotate(-90deg);
}

.fishing-cannon.view-top-left small,
.fishing-cannon.view-top-right small{
    top:-12px;
    bottom:auto;
    transform:translateX(-50%) rotate(180deg);
}

.fishing-cannon.view-side small{
    left:auto;
    right:54px;
    top:50%;
    bottom:auto;
    transform:translateY(-50%) rotate(90deg);
}



/* Tela temática de carregamento do Fishing */
.fishing-loading{
 background:radial-gradient(circle at 50% 35%,#08718d,#04364f 52%,#011724);
 text-align:center;
 padding:20px;
}
.fishing-loader-content{
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:12px;
 width:min(310px,90%);
}
.fishing-loader-icon{
 font-size:46px;
 animation:fishing-loader-float 2s ease-in-out infinite;
}
.fishing-loader-title{
 font-size:27px;
 letter-spacing:4px;
 color:#e7fcff;
 text-shadow:0 0 15px #36d8f588;
}
#fishing-loader-status{
 font-size:12px;
 color:#b5e8f3;
}
.fishing-loader-track{
 width:100%;
 height:13px;
 border-radius:20px;
 overflow:hidden;
 background:#001d30;
 border:1px solid #69e4f977;
}
#fishing-loader-fill{
 width:0;
 height:100%;
 background:linear-gradient(90deg,#18a9d2,#72f0ff);
 border-radius:20px;
 transition:width .15s ease;
}
#fishing-loader-percent{
 color:#fff;
 font-size:20px;
}
@keyframes fishing-loader-float{
 0%,100%{transform:translateY(0)}
 50%{transform:translateY(-7px)}
}
@media(prefers-reduced-motion:reduce){
 .fishing-loader-icon{animation:none}
}
