*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #1a1a1f;--panel: #252530;--panel-border: #3a3a48;--text: #e8e8ef;--muted: #9a9aad;--accent: #e6392f;--accent-dark: #b82820;--green: #2ecc71;--green-dark: #1e9e55;--yellow: #f4c430;--orange: #ff7a1a;--stage-ratio: 16 / 9;--letterbox: #0c0c10}html,body{height:100%;overflow:hidden;font-family:Segoe UI,system-ui,sans-serif;background:var(--letterbox);color:var(--text)}#stage-shell{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--letterbox)}#game-app{display:flex;flex-direction:column;width:1920px;height:1080px;flex-shrink:0;overflow:hidden;background:var(--bg);position:relative;container-type:size;container-name:game;transform-origin:center center;--ui-scale: 1;--stage-scale: 1;--boom-base-w: 13cqw;--boom-base-h: 12cqw;--boom-arm-h: 2.4cqw;--boom-min-w: 9cqw;--boom-max-w: 92cqw}.hud-top{padding:10px 20px;background:linear-gradient(180deg,#2a2a35,#1f1f28);border-bottom:2px solid var(--panel-border);flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.hud-top-main{min-width:0;flex:1}.hud-top-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;margin-top:2px}.btn-clear-cache{padding:8px 12px;border-radius:6px;border:1px solid #3d4450;background:#1a1d24;color:#9aa3b2;font-weight:650;font-size:.72rem;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;white-space:nowrap}.btn-clear-cache:hover{color:#e8ebf0;border-color:#5a6574;filter:brightness(1.08)}.btn-clear-cache:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hud-top h1{font-size:1.1rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.hud-top p{margin-top:4px;font-size:.85rem;color:var(--muted)}.hud-top strong{color:var(--green)}.btn-session-score{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;padding:8px 14px;border-radius:6px;border:1px solid #454b56;background:#202329;color:var(--text);font-weight:650;font-size:.78rem;letter-spacing:.02em;cursor:pointer;white-space:nowrap;font-variant-numeric:tabular-nums}.btn-session-score .hud-timer{color:#f1f2f4;font-weight:700}.btn-session-score .hud-ops{color:#8fc7a4;font-size:.72rem}.btn-session-score .hud-alerts{color:#d7837e;font-size:.72rem}.btn-session-score:hover{filter:brightness(1.08)}.btn-session-score:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-session-score.is-hidden{display:none}.hud-footer{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:8px 20px;background:linear-gradient(0deg,#121218,#1a1a22);border-top:2px solid var(--panel-border)}.hud-footer-logos{display:flex;align-items:center;justify-content:center;gap:36px}.hud-footer-logos img{display:block;height:38px;width:auto;max-width:280px;object-fit:contain;mix-blend-mode:lighten;pointer-events:none;-webkit-user-select:none;user-select:none}.game-layout{display:flex;flex:1;min-height:0}#scene{flex:1;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#2a2a32 0%,var(--bg) 70%),repeating-linear-gradient(0deg,transparent,transparent 39px,rgba(255,255,255,.02) 39px,rgba(255,255,255,.02) 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,rgba(255,255,255,.02) 39px,rgba(255,255,255,.02) 40px)}#world{position:absolute;top:0;right:0;bottom:0;left:0}.berco-wrap{position:absolute;width:72%;left:14%;z-index:4;pointer-events:none}#berco-wrap-2{top:10%}#berco-wrap-1{top:50%}.berco{position:relative;display:block;width:100%;height:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.5))}.berco-wrap:after{content:"";position:absolute;top:.5%;right:.35%;bottom:.5%;left:.35%;border:3px dashed transparent;border-radius:4px;box-sizing:border-box;opacity:0;transition:border-color .2s ease,opacity .2s ease;pointer-events:none;z-index:3}.berco-tint{position:absolute;left:.5%;top:4%;width:9.5%;height:92%;background:#fff;mix-blend-mode:color;opacity:0;transition:opacity .2s ease,background-color .2s ease;pointer-events:none;z-index:2}.berco-name-label{position:absolute;left:2.2%;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:clamp(16px,2.35cqw,38px);letter-spacing:.12em;line-height:1;color:#fff;-webkit-text-stroke:.5px rgba(0,0,0,.45);opacity:1;transition:color .2s ease;pointer-events:none;z-index:4;white-space:nowrap}.berco-wrap.is-selected:after{opacity:1;border-color:#ff0808}.berco-wrap.is-selected .berco-tint{opacity:1}.berco-wrap.is-selected.is-approach:after{border-color:#2ecc71}.berco-wrap.is-selected.is-approach .berco-tint{background:#2ecc71}.berco-wrap.is-selected.is-retreat:after{border-color:#e74c3c}.berco-wrap.is-selected.is-retreat .berco-tint{background:#e74c3c}.berco-wrap.is-sos:after{opacity:1;border-color:#ff0808;animation:berco-sos-border-flash .45s ease-in-out infinite}.berco-wrap.is-sos .berco-tint{background:#ff0808;opacity:1;animation:berco-sos-tint-flash .45s ease-in-out infinite}.berco-wrap.is-cargo-suspended:not(.is-sos):after{opacity:1;border-color:#ff0808;animation:none}.berco-wrap.is-cargo-suspended:not(.is-sos) .berco-tint{background:#ff0808;opacity:1;animation:none}.berco-wrap .berco-name-label,.berco-wrap.is-selected .berco-name-label,.berco-wrap.is-selected.is-approach .berco-name-label,.berco-wrap.is-selected.is-retreat .berco-name-label,.berco-wrap.is-sos .berco-name-label,.berco-wrap.is-cargo-suspended .berco-name-label{color:#fff;animation:none}@keyframes berco-sos-border-flash{0%,to{border-color:#ff0808;opacity:1}50%{border-color:#fff;opacity:.55}}@keyframes berco-sos-tint-flash{0%,to{opacity:1}50%{opacity:.25}}@keyframes berco-sos-text-flash{0%,to{color:#ff0808;opacity:1}50%{color:#fff;opacity:.4}}.op-zone{position:absolute;background:#45b649;border:2px solid #2e8a3e;z-index:2;pointer-events:none}.op-zone-2{left:1.5%;top:17%;width:10.5%;height:21%}.op-zone-1{left:88%;top:57%;width:10.5%;height:21%}.berth-alert{position:absolute;display:flex;flex-direction:row-reverse;align-items:flex-end;gap:8px;pointer-events:none;z-index:16;opacity:0;visibility:hidden;transform:translate(-50%,-50%);transition:opacity .2s ease,visibility .2s ease}.berth-alert.active{opacity:1;visibility:visible}#berth-alert-2{left:84%;top:14%}#berth-alert-1{left:84%;top:54%}.giroflex{position:relative;width:28px;height:34px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.45))}.giroflex-base{position:absolute;left:50%;bottom:0;width:18px;height:7px;margin-left:-9px;border-radius:2px;background:linear-gradient(180deg,#555,#222);border:1px solid #111}.giroflex-dome{position:absolute;left:50%;bottom:6px;width:22px;height:22px;margin-left:-11px;border-radius:50% 50% 45% 45%;overflow:hidden;border:2px solid rgba(255,255,255,.35);background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.55),transparent 45%)}.giroflex-beam{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:conic-gradient(from 0deg,transparent 0deg,transparent 55deg,rgba(255,255,255,.95) 90deg,transparent 125deg,transparent 360deg);opacity:.85}.berth-alert.approach .giroflex-dome{background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.7),transparent 42%),radial-gradient(circle at 50% 55%,#3dff8a,#129a4a 70%,#0a5c2c);box-shadow:0 0 14px #2eff78f2,0 0 28px #2ecc71b3;animation:giroflex-glow-green .55s linear infinite}.berth-alert.retreat .giroflex-dome{background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.75),transparent 42%),radial-gradient(circle at 50% 55%,#ff6b5a,#e02018 70%,#8a100a);box-shadow:0 0 16px #ff281e,0 0 32px #f00c;animation:giroflex-glow-red .45s linear infinite}.berth-alert.active .giroflex-beam{animation:giroflex-spin .55s linear infinite}.berth-alert.retreat.active .giroflex-beam{animation-duration:.4s}@keyframes giroflex-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes giroflex-glow-green{0%,to{box-shadow:0 0 10px #2eff788c,0 0 18px #2ecc7159}50%{box-shadow:0 0 22px #50ff96,0 0 40px #2eff78d9}}@keyframes giroflex-glow-red{0%,to{box-shadow:0 0 10px #ff281e8c,0 0 18px #ff000059}50%{box-shadow:0 0 24px #ff3c28,0 0 44px #ff0000e6}}.megaphone{position:relative;display:flex;align-items:center;opacity:0;transform:translate(4px) scaleX(-1);transition:opacity .15s ease,transform .15s ease}.berth-alert.sound-on .megaphone{opacity:1;transform:translate(0) scaleX(-1)}.megaphone-icon{display:block;overflow:visible}.megaphone-body,.megaphone-handle{fill:#f0f2f5;stroke:#1a1a22;stroke-width:2}.berth-alert.approach .megaphone-body,.berth-alert.approach .megaphone-handle{fill:#b8ffd0}.berth-alert.retreat .megaphone-body,.berth-alert.retreat .megaphone-handle{fill:#ffc4bc}.sound-waves{position:absolute;left:34px;top:50%;width:22px;height:28px;margin-top:-14px;pointer-events:none}.sound-waves .wave{position:absolute;left:0;top:50%;width:10px;height:10px;margin-top:-5px;border:2.5px solid rgba(255,255,255,.95);border-left:none;border-radius:0 50% 50% 0;opacity:0}.berth-alert.approach .sound-waves .wave{border-color:#5aff96f2}.berth-alert.retreat .sound-waves .wave{border-color:#ff5a46fa}.berth-alert.sound-on .wave.w1{animation:sound-wave .9s ease-out infinite;animation-delay:0s}.berth-alert.sound-on .wave.w2{width:16px;height:16px;margin-top:-8px;animation:sound-wave .9s ease-out infinite;animation-delay:.18s}.berth-alert.sound-on .wave.w3{width:22px;height:22px;margin-top:-11px;animation:sound-wave .9s ease-out infinite;animation-delay:.36s}@keyframes sound-wave{0%{opacity:0;transform:scale(.55)}35%{opacity:1}to{opacity:0;transform:scale(1.15)}}#cargo-slots{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:5}.cargo-slot{position:absolute;width:7.5%;aspect-ratio:1;transform:translate(-50%,-50%);border:2px dashed rgba(60,180,255,.45);border-radius:4px;background:#3cb4ff14;box-sizing:border-box;animation:cargo-slot-pulse 2.4s ease-in-out infinite}@keyframes cargo-slot-pulse{0%,to{border-color:#3cb4ff4d;background:#3cb4ff0d;box-shadow:0 0 6px #3cb4ff1f}50%{border-color:#5ad2ffd9;background:#3cb4ff33;box-shadow:0 0 16px #3cb4ff66}}.cargo-slot:after{content:"X";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:1.05rem;font-weight:900;letter-spacing:0;color:#dcf5fffa;text-shadow:0 0 8px rgba(60,180,255,.9);pointer-events:none;opacity:0;transition:opacity .15s ease}.cargo-slot.is-unavailable,.cargo-slot[hidden]{display:none!important}.cargo-slot.active{animation:none;border-color:#50c8fffa;background:#3cb4ff47;box-shadow:0 0 14px #3cb4ff8c}.cargo-slot.active:after{opacity:1}.crane-static{position:absolute;top:1%;left:2%;width:55%;pointer-events:none;z-index:5;transform:scaleX(-1) rotate(-8deg);transform-origin:left top;opacity:.95}.crane-static img{width:100%;height:auto;display:block}.crane-active{position:absolute;right:4.5%;bottom:2.5%;width:62%;height:52%;z-index:22;pointer-events:none}.crane-active.crane-2{right:auto;left:2%;bottom:auto;top:1.5%;width:55%;height:34%;transform:scaleX(-1);transform-origin:center top;z-index:21}.crane-active.crane-2 .crane-pivot{top:0;bottom:auto;transform-origin:92% 14%}.crane-active.crane-2 .crane-base-wrap{top:0;right:0;bottom:auto;width:calc(var(--boom-base-w) * .88)}.crane-active.crane-2 .crane-boom{top:calc(var(--boom-base-h) * .06);bottom:auto}.crane-active.is-crane-idle{filter:grayscale(.15) brightness(.92);opacity:.88}.crane-active.is-crane-active{opacity:1;filter:none}.hook-assembly.is-crane-idle{opacity:.75;z-index:23}.hook-assembly.is-crane-active{opacity:1;z-index:24}.crane-pivot{position:absolute;right:0;bottom:0;width:100%;height:100%;transform-origin:92% 88%}.crane-base-wrap{position:absolute;right:0;bottom:0;width:var(--boom-base-w);z-index:3;pointer-events:none}.crane-base{position:relative;display:block;width:100%;height:auto;filter:drop-shadow(2px 4px 8px rgba(0,0,0,.6))}.crane-pick{position:absolute;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);width:auto;max-width:88%;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;margin:0;padding:0;border:none;background:transparent;cursor:pointer;pointer-events:auto;z-index:6;-webkit-tap-highlight-color:transparent}.crane-pick-box{position:relative;width:clamp(20px,3cqw,32px);height:clamp(20px,3cqw,32px);aspect-ratio:1;flex-shrink:0;border-radius:5px;border:2px solid rgba(255,255,255,.95);background:#1212168c;box-shadow:0 2px 6px #00000073,inset 0 0 0 1px #00000040;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.crane-pick-box:after{content:"";position:absolute;left:50%;top:44%;width:28%;height:52%;border-style:solid;border-color:transparent;border-width:0 2.5px 2.5px 0;box-sizing:border-box;transform:translate(-50%,-50%) rotate(45deg) scale(.4);opacity:0;transition:opacity .12s ease,transform .12s ease}.crane-pick-name{position:relative;z-index:1;max-width:none;padding:3px 6px;border-radius:3px;background:#0a0a0e8c;font-family:Montserrat,Segoe UI,sans-serif;font-weight:800;font-size:clamp(.62rem,1.25cqw,.85rem);letter-spacing:.02em;line-height:1.1;text-transform:uppercase;text-align:center;color:#fffffff5;text-shadow:0 1px 2px rgba(0,0,0,.75);white-space:nowrap;pointer-events:none}.crane-pick:hover .crane-pick-box{background:#1e1e24b8;border-color:#fff;transform:scale(1.05)}.crane-pick:focus-visible{outline:none}.crane-pick:focus-visible .crane-pick-box{outline:2px solid rgba(255,220,80,.95);outline-offset:2px}.crane-pick.is-active .crane-pick-box{background:#e6392feb;border-color:#fff;box-shadow:0 0 0 2px #e6392f59,0 2px 8px #00000073}.crane-pick.is-active .crane-pick-box:after{border-color:#fff;opacity:1;transform:translate(-50%,-50%) rotate(45deg) scale(1)}.crane-pick.is-active .crane-pick-name{color:#fff;background:#e6392fbf}.crane-pick.is-locked:not(.is-active){cursor:not-allowed;opacity:.72}.crane-pick.is-locked:not(.is-active) .crane-pick-box{background:#2828308c;border-color:#b4b4be8c}.crane-pick.is-locked:not(.is-active):hover .crane-pick-box{transform:none}.crane-active.crane-2 .crane-pick{transform:translate(-50%,-50%) scaleX(-1)}.crane-boom{position:absolute;right:calc(var(--boom-base-w) * .76);bottom:calc(var(--boom-base-h) * .08);width:var(--boom-min-w);height:var(--boom-arm-h);transform-origin:100% 50%;z-index:5;overflow:visible}.crane-boom-segments{position:absolute;top:0;right:0;bottom:0;left:0;background:url(./pedaco-braca-guindaste-CPulzxh2.png) repeat-x left center;background-size:auto 100%;filter:drop-shadow(2px 4px 8px rgba(0,0,0,.5))}.hook-mount{position:absolute;left:0;top:50%;width:1px;height:1px;transform:translate(-50%,-50%);pointer-events:none;z-index:4}.hook-assembly{position:absolute;left:0;top:0;z-index:24;pointer-events:none;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.hook-cable{display:block;width:3px;height:10px;background:linear-gradient(180deg,#666,#222);border-radius:1px;box-shadow:0 0 2px #0006;flex-shrink:0}.crane-hook{display:block;width:max(10px,.91cqw);height:auto;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5));pointer-events:none;flex-shrink:0}.hook-tracker{position:absolute;left:0;top:0;width:0;height:0;z-index:30;pointer-events:none}.hook-tracker-line{position:absolute;left:0;top:0;width:3px;height:80px;margin-left:-1.5px;background:repeating-linear-gradient(to bottom,rgba(40,48,60,.35) 0 7px,transparent 7px 13px);display:block}.hook-tracker-dot{position:absolute;left:0;top:0;width:32px;height:16px;margin:-8px 0 0 -16px;border-radius:50%;background:#ffd22840;border:2px solid rgba(255,220,50,.95);box-shadow:0 0 10px #ffc82866;display:block}.hook-tracker-dot.over-target{background:#46b45a80;border-color:#1e8c3cf2;box-shadow:0 0 14px #32c85a80}.hook-tracker-dot.on-floor{background:#e6503c66;border-color:#c83228bf;box-shadow:0 0 12px #dc3c3259}#cargos{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:11}#special-operators,#operators{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:12}#special-operators{z-index:13}#cargos-air{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:14}.cargo-item{position:absolute;transform:translate(-50%,-50%);pointer-events:none;filter:drop-shadow(0 0 1.5px rgba(255,255,255,.95)) drop-shadow(0 3px 5px rgba(0,0,0,.7)) brightness(1.12) contrast(1.08)}.cargo-item.crate{width:calc(52px * var(--ui-scale, 1));height:auto}.cargo-item.tubes{width:calc(70px * var(--ui-scale, 1))!important;max-width:calc(70px * var(--ui-scale, 1))!important;height:auto!important}.cargo-item.tubo{width:calc(160px * var(--ui-scale, 1))!important;max-width:calc(160px * var(--ui-scale, 1))!important;height:auto!important}.cargo-item.tubes-grandes{width:calc(170px * var(--ui-scale, 1))!important;max-width:calc(170px * var(--ui-scale, 1))!important;height:auto!important}.cargo-item.tools{width:calc(53px * var(--ui-scale, 1))!important;max-width:calc(53px * var(--ui-scale, 1))!important;max-height:calc(53px * var(--ui-scale, 1))!important;height:auto!important;object-fit:contain}.cargo-item.container{width:calc(156px * var(--ui-scale, 1))!important;max-width:calc(156px * var(--ui-scale, 1))!important;height:auto!important}.cargo-item.selected{filter:drop-shadow(0 0 2px rgba(255,255,255,1)) drop-shadow(0 0 10px rgba(70,180,255,.95)) drop-shadow(0 3px 5px rgba(0,0,0,.65)) brightness(1.18);outline:2px solid rgba(80,190,255,.95);outline-offset:3px}.cargo-item.working{filter:drop-shadow(0 0 2px rgba(255,255,255,1)) drop-shadow(0 0 12px rgba(255,180,60,.95)) drop-shadow(0 3px 5px rgba(0,0,0,.65)) brightness(1.12);animation:cargo-work-pulse .6s ease-in-out infinite}.cargo-item.attached{filter:drop-shadow(0 0 2px rgba(255,255,255,1)) drop-shadow(0 0 10px rgba(230,57,47,.7)) drop-shadow(0 3px 5px rgba(0,0,0,.65)) brightness(1.1)}@keyframes cargo-work-pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.04)}}.operator.busy img{animation:op-busy .45s ease-in-out infinite alternate}@keyframes op-busy{0%{transform:translateY(0)}to{transform:translateY(-3px)}}.safety-radius{position:absolute;border-radius:50%;border:4px dashed rgba(255,20,20,.98);background:radial-gradient(circle,#ff1e1452,#ff0f0f29 55%,#ff00000d);box-shadow:0 0 18px #ff1414b3,inset 0 0 16px #ff1e1447;transform:translate(-50%,-50%);pointer-events:none;z-index:6;opacity:0;transition:opacity .25s ease,width .2s ease,height .2s ease}.safety-radius.active{animation:safety-blink 1.8s ease-in-out infinite}@keyframes safety-blink{0%,to{opacity:.72;border-color:#ff1414e6;box-shadow:0 0 14px #ff0f0f8c,inset 0 0 12px #ff141438}50%{opacity:1;border-color:#ff2020;box-shadow:0 0 34px #ff0000e6,0 0 12px #ff5028e6,inset 0 0 22px #ff141461}}.safety-radius.sos-flash{animation:safety-sos-flash .28s ease-in-out infinite;z-index:25}@keyframes safety-sos-flash{0%,to{opacity:.85;border-color:#ff1010;border-width:5px;box-shadow:0 0 28px #ff0000f2,0 0 60px #ff2814bf,inset 0 0 30px #ff1e1480}50%{opacity:1;border-color:#fff;border-width:7px;box-shadow:0 0 55px red,0 0 90px #ff5028,0 0 24px #ffffffd9,inset 0 0 45px #ff321ea6}}.operator,.special-operator{position:absolute;pointer-events:none;transform:translate(-50%,-50%);z-index:1}.operator img{display:block;height:calc(42px * var(--ui-scale, 1));width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.special-operator{z-index:2}.special-operator img{display:block;height:calc(38px * var(--ui-scale, 1));width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4));transition:height .2s ease}.special-operator.signal-pose{z-index:3}.special-operator.signal-pose img{height:calc(114px * var(--ui-scale, 1))}.controls-panel{width:460px;flex-shrink:0;background:var(--panel);border-left:2px solid var(--panel-border);padding:12px;overflow:hidden;display:flex;flex-direction:column;gap:10px;position:relative;min-height:0;align-self:stretch}.btn-info{position:absolute;top:10px;right:10px;z-index:5;width:36px;height:36px;border:1px solid var(--panel-border);border-radius:50%;background:#2f2f3a;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s,border-color .15s}.btn-info:hover{color:var(--text);background:#3a3a48;border-color:#555}.controls-crane{padding-right:36px;flex-shrink:0}.crane-select-hint{margin:0 2px 8px;min-height:1.1em;font-size:11px;font-weight:600;line-height:1.35;color:#c9a227;letter-spacing:.01em}.crane-select-hint[hidden]{display:none}.tablet-section{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.tablet-frame-wrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;border:2px solid var(--panel-border);background:#fff}.tablet-root{flex:1 1 auto;width:100%;min-height:0;height:100%;overflow:hidden}.panel-section h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px}.controls-crane .control-subtitle{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:#ffffff73;margin:12px 0 8px}.controls-crane .control-subtitle:first-of-type{margin-top:0}.dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:inline-block}.dot.orange{background:var(--orange)}.dot.yellow{background:var(--yellow)}.dot.red{background:var(--accent)}.dot.green{background:#45b649}.dot.muted{background:#7a7a8a}.scene-legend{position:absolute;left:12px;bottom:12px;z-index:30;max-width:min(280px,42vw);padding:10px 12px;border-radius:10px;background:#121218e0;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease}.scene-legend.is-on{opacity:1;visibility:visible;transform:translateY(0)}.scene-legend ul{list-style:none;display:flex;flex-direction:column;gap:5px}.scene-legend li{display:flex;align-items:center;gap:8px;font-size:.72rem;color:var(--muted);line-height:1.3}.scene-legend strong{color:var(--text)}.score-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:21000;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.score-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}.score-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0ec7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.score-modal-card{position:relative;width:min(640px,calc(100% - 32px));max-height:min(90vh,720px);display:flex;flex-direction:column;padding:0;text-align:left;background:#1c1f24;border:1px solid #383d46;border-radius:10px;box-shadow:0 24px 70px #00000094;overflow:hidden}.score-modal.is-pass .score-modal-card{border-color:#3f5d4a}.score-modal.is-fail .score-modal-card{border-color:#5a4141}.score-modal-header{padding:16px 22px 12px;background:#202329;border-bottom:1px solid #343942;box-shadow:inset 3px 0 #b73b34}.score-modal.is-pass .score-modal-header{box-shadow:inset 3px 0 #568d6a}.score-modal-title{margin:0;font-size:1.2rem;letter-spacing:.02em;text-transform:none;color:#f1f2f4;font-weight:650}.score-modal.is-pass .score-modal-title{color:#8fc7a4}.score-modal.is-fail .score-modal-title{color:#d7837e}.score-modal-body{display:flex;flex-direction:column;gap:16px;padding:18px 22px 8px;overflow:auto;min-height:0}.score-modal-primary{min-width:0}.score-modal-start{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 8px;color:#a6adb8;font-size:.78rem}.score-modal-start strong{color:#f1f2f4;font-size:1rem;font-variant-numeric:tabular-nums}.score-modal-msg{margin:0;font-size:.84rem;line-height:1.5;color:#8f96a3}.score-modal-statement{min-width:0;border:1px solid #343942;border-radius:6px;background:#202329;overflow:hidden}.score-modal-statement h3{margin:0;padding:10px 14px;border-bottom:1px solid #343942;color:#8f96a3;font-size:.66rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase}.score-statement-list{list-style:none;margin:0;padding:0;max-height:250px;overflow-y:auto}.score-statement-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px;border-bottom:1px solid #30343c;font-size:.78rem;line-height:1.35;color:#d8dce2}.score-statement-list li:last-child{border-bottom:none}.score-statement-list li>span{min-width:0}.score-statement-list strong,.score-statement-list small{display:block}.score-statement-list small{margin-top:2px;color:#8f96a3;font-size:.7rem}.score-statement-list b{flex:0 0 auto;font-size:.76rem;font-variant-numeric:tabular-nums}.score-statement-list b.loss{color:#d7837e}.score-statement-list b.ok{color:#8fc7a4}.score-modal-total{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:12px 14px;border-top:1px solid #414650;background:#252930;color:#d8dce2;font-size:.82rem;font-weight:650}.score-modal-score{color:#f1f2f4;font-size:1.35rem;line-height:1;font-variant-numeric:tabular-nums}.score-modal-score:after{content:" pts";margin-left:3px;color:#8f96a3;font-size:.55em}.score-modal-footer{display:flex;justify-content:flex-end;padding:12px 18px 16px;border-top:1px solid #343942;background:#202329}.score-modal-btn{min-width:180px;padding:10px 18px;border:1px solid #505762;border-radius:5px;background:#30353d;box-shadow:none;color:#e0e3e8;font-size:.78rem;font-weight:650;cursor:pointer}.score-modal.is-pass .score-modal-btn{border-color:#5f7d6b;background:#2d3a33;color:#b7d8c3}.score-modal.is-fail .score-modal-btn{border-color:#5a4141;background:#3a2c2c;color:#e0b0ac}.score-modal-btn:hover{filter:brightness(1.08)}.score-modal-btn:focus-visible{outline:2px solid #8fc7a4;outline-offset:3px}@media(max-width:700px){.score-statement-list{max-height:160px}}.gamification-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:22000;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.gamification-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}.gamification-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b8}.gamification-modal-card{position:relative;width:min(520px,100%);max-height:min(88vh,720px);display:flex;flex-direction:column;padding:0;background:var(--panel);border:1px solid var(--panel-border);border-radius:14px;box-shadow:0 20px 60px #0000008c;overflow:hidden}.gamification-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 10px;border-bottom:1px solid var(--panel-border)}.gamification-modal-header h2{margin:0;font-size:1.05rem;letter-spacing:.03em;text-transform:uppercase}.gamification-modal-close{border:none;background:transparent;color:var(--muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:4px 8px}.gamification-modal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 18px}.gami-stat{background:#17171f;border:1px solid var(--panel-border);border-radius:10px;padding:10px 8px;text-align:center}.gami-stat strong{display:block;font-size:1.25rem;color:var(--text)}.gami-stat span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.gami-stat.ok strong{color:var(--green)}.gami-stat.err strong{color:#e85d5d}.gamification-modal-body{padding:0 18px 12px;overflow:auto;flex:1;min-height:0}.gamification-modal-body section{margin-bottom:14px}.gamification-modal-body h3{margin:0 0 6px;font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.gamification-modal-body ul{list-style:none;margin:0;padding:0;border:1px solid var(--panel-border);border-radius:10px;overflow:hidden}.gamification-modal-body li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--panel-border);font-size:.86rem}.gamification-modal-body li:last-child{border-bottom:none}.gami-label{color:var(--text)}.gami-count{font-weight:700;color:var(--accent)}.gami-recent li{justify-content:flex-start}.gami-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 6px;border-radius:6px;font-size:.72rem;font-weight:700;background:#22222c;color:var(--muted)}.gami-badge.ok{color:var(--green);background:color-mix(in srgb,var(--green) 18%,#17171f)}.gami-badge.err{color:#e85d5d;background:color-mix(in srgb,#e85d5d 18%,#17171f)}.gami-empty{margin:8px 0;color:var(--muted);font-size:.9rem}.gamification-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 18px 16px;border-top:1px solid var(--panel-border)}.gamification-reset-btn{background:transparent;border:1px solid #e85d5d;color:#e85d5d}.gamification-close-btn{background:var(--accent);border:none;color:#111;font-weight:700}.info-modal{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20000;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.info-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}.info-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a6}.info-modal-card{position:relative;width:min(480px,100%);max-height:min(86%,720px);display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--panel-border);border-radius:14px;box-shadow:0 20px 60px #0000008c;overflow:hidden}.info-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--panel-border)}.info-modal-header h2{font-size:.95rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}.btn-info-close{width:34px;height:34px;border:none;border-radius:8px;background:transparent;color:var(--muted);font-size:1.25rem;line-height:1;cursor:pointer}.btn-info-close:hover{background:#3a3a48;color:var(--text)}.info-modal-body{padding:14px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.info-modal-body h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:6px}.info-modal-body p,.info-legend-list li{font-size:.82rem;color:var(--muted);line-height:1.45}.info-modal-body strong{color:var(--green)}.crane-speed-control{margin-top:12px;padding:11px 12px 9px;border:1px solid var(--panel-border);border-radius:8px;background:#ffffff09}.crane-speed-control label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text);font-size:.8rem;font-weight:700}.crane-speed-control output{min-width:44px;color:var(--green);text-align:right}.crane-speed-control input[type=range]{width:100%;margin:10px 0 3px;accent-color:var(--green);cursor:pointer}.alert-monitoring-control{margin-top:10px;padding:11px 12px;display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center;border:1px solid var(--panel-border);border-radius:8px;background:#ffffff09}.alert-monitoring-control>div>label{display:block;color:var(--text);font-size:.8rem;font-weight:700}.alert-monitoring-control>div>p{margin-top:3px;font-size:.72rem}.monitoring-switch{display:grid;grid-template-columns:42px;justify-items:center;gap:3px;cursor:pointer}.monitoring-switch input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.monitoring-switch-track{position:relative;width:42px;height:22px;border-radius:999px;background:#555563;border:1px solid #6b6b78;transition:background .18s ease,border-color .18s ease}.monitoring-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#e5e5ea;transition:transform .18s ease}.monitoring-switch input:checked+.monitoring-switch-track{background:var(--green);border-color:var(--green)}.monitoring-switch input:checked+.monitoring-switch-track:after{transform:translate(20px);background:#fff}.monitoring-switch input:focus-visible+.monitoring-switch-track{outline:2px solid var(--accent);outline-offset:2px}.monitoring-switch output{color:var(--muted);font-size:.62rem;font-weight:700;text-transform:uppercase}.monitoring-switch input:checked~output{color:var(--green)}.monitoring-help{grid-column:1 / -1;margin:0;padding-top:7px;border-top:1px solid var(--panel-border);font-size:.7rem!important}.crane-speed-scale{display:flex;justify-content:space-between;color:var(--muted);font-size:.66rem}.info-legend-list{list-style:none;display:flex;flex-direction:column;gap:6px}.info-legend-list li{display:flex;align-items:flex-start;gap:8px}.info-modal-footer{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--panel-border)}.btn-modal-action{flex:1 1 160px;padding:10px 12px;font-size:.75rem}.info-modal-backdrop,.gamification-modal-backdrop{background:#080a0ec7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.info-modal-card,.gamification-modal-card{background:#1c1f24;border:1px solid #383d46;border-radius:10px;box-shadow:0 24px 70px #00000094}.info-modal-card{width:min(680px,calc(100% - 32px));max-height:min(88%,800px)}.info-modal-header,.gamification-modal-header{min-height:68px;padding:14px 18px;align-items:center;background:#202329;border-bottom:1px solid #343942;box-shadow:inset 3px 0 #b73b34}.modal-eyebrow{display:block;margin-bottom:3px;color:#8f96a3;font-size:.64rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.info-modal-header h2,.gamification-modal-header h2{color:#f1f2f4;font-size:1rem;font-weight:650;letter-spacing:.01em;text-transform:none}.btn-info-close,.gamification-modal-close{width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:#8f96a3;font-size:1.25rem}.btn-info-close:hover,.gamification-modal-close:hover{border-color:#454b56;background:#292d34;color:#f1f2f4}.info-modal-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px 22px;padding:20px;background:#1c1f24}.info-section{min-width:0}.info-section-intro,.info-section-controls{grid-column:1 / -1}.info-section-development{align-self:start;padding:14px;border:1px solid #343942;background:#202329}.info-modal-body h3{margin:0 0 8px;padding-left:9px;border-left:2px solid #b73b34;color:#b6bcc6;font-size:.68rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase}.info-modal-body p,.info-legend-list li{color:#a6adb8;font-size:.78rem;line-height:1.55}.info-modal-body strong{color:#e1e4e9;font-weight:650}.control-reference{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.control-reference>div{display:flex;align-items:center;gap:9px;min-width:0;padding:9px 10px;border:1px solid #343942;background:#202329}.control-reference dt{min-width:30px;color:#d4d8df;font-family:ui-monospace,Cascadia Mono,monospace;font-size:.9rem;font-weight:700}.control-reference dd{color:#a6adb8;font-size:.72rem}.crane-speed-control,.alert-monitoring-control{border-color:#343942;border-radius:4px;background:#202329}.crane-speed-control label,.alert-monitoring-control>div>label{color:#d8dce2;font-weight:600}.crane-speed-control output,.monitoring-switch input:checked~output{color:#8fc7a4}.crane-speed-control input[type=range]{accent-color:#568d6a}.monitoring-switch-track{background:#454a53;border-color:#5a606b}.monitoring-switch input:checked+.monitoring-switch-track{background:#568d6a;border-color:#6aa37f}.monitoring-help{border-top-color:#343942}.info-legend-list{gap:8px}.info-legend-list .dot{margin-top:4px;opacity:.82}.info-modal-footer,.gamification-modal-footer{align-items:center;padding:12px 18px;border-top:1px solid #343942;background:#202329}.info-modal-footer{justify-content:flex-end}.info-modal-footer .btn-modal-action{flex:0 1 auto;min-width:150px;padding:9px 14px;border:1px solid #454b56;border-radius:5px;background:#292d34;box-shadow:none;color:#d8dce2;font-size:.7rem;font-weight:650}.info-modal-footer .btn-modal-action:hover{background:#323740;filter:none}.gamification-modal-card{width:min(920px,calc(100% - 32px));max-height:min(92vh,820px)}.gamification-modal-summary{display:grid;grid-template-columns:230px minmax(0,1fr);gap:0;margin:18px;padding:0;border:1px solid #343942;background:#202329}.gami-score-primary{display:flex;flex-direction:column;justify-content:center;min-height:150px;padding:18px 20px;border-right:1px solid #343942;box-shadow:inset 3px 0 #b73b34}.gami-score-primary>span{color:#8f96a3;font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.gami-score-primary>strong{margin:3px 0 4px;color:#f1f2f4;font-size:3.1rem;font-weight:650;line-height:1;font-variant-numeric:tabular-nums}.gami-score-primary>small{color:#8f96a3;font-size:.7rem}.gami-metrics{display:grid;grid-template-columns:1fr 1fr;align-content:center;padding:10px 16px}.gami-metrics>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:9px 6px;border-bottom:1px solid #30343c}.gami-metrics>div:nth-last-child(-n+2),.gami-metrics>div:last-child{border-bottom:none}.gami-metrics dt{color:#8f96a3;font-size:.68rem}.gami-metrics dd{color:#d8dce2;font-size:.9rem;font-weight:650;font-variant-numeric:tabular-nums}.gami-metrics dd.ok{color:#8fc7a4}.gami-metrics dd.err{color:#d7837e}.gamification-modal-body{display:flex;flex-direction:column;padding:0 18px 18px;overflow:hidden}.gamification-modal-body h3{margin:0 0 8px;color:#8f96a3;font-size:.66rem;font-weight:650;letter-spacing:.1em}.gamification-modal-body ul{border:none;border-radius:0;overflow:visible}.gamification-modal-body li{padding:8px 4px;border-bottom:1px solid #30343c}.gami-count{color:#c8cdd5;font-variant-numeric:tabular-nums}.gami-badge{min-width:30px;border:1px solid #3c414a;border-radius:3px;background:#24282f}.gami-badge.ok{color:#8fc7a4;background:#24282f}.gami-badge.err{color:#d7837e;background:#24282f}.gami-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #343942;background:#202329}.gami-tab{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:8px 12px;border:0;border-right:1px solid #343942;border-bottom:2px solid transparent;background:transparent;color:#9299a5;font:inherit;font-size:.72rem;font-weight:650;cursor:pointer}.gami-tab:last-child{border-right:0}.gami-tab:hover{background:#272b32;color:#d8dce2}.gami-tab.is-active{border-bottom-color:#b73b34;background:#292d34;color:#f1f2f4}.gami-tab b{min-width:23px;padding:2px 6px;border:1px solid #444a54;border-radius:10px;color:#b7bdc7;font-size:.64rem;font-variant-numeric:tabular-nums}.gami-tab-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);flex:1;min-height:220px;max-height:330px;border:1px solid #343942;border-top:0;background:#1c1f24;overflow:hidden}.gami-tab-panel>section{min-width:0;margin:0;padding:16px;overflow-y:auto}.gami-tab-panel>section+section{border-left:1px solid #343942}.gami-tab-panel .gami-recent li{justify-content:flex-start}.gami-tab-panel .gami-empty{margin:12px 0}.gamification-modal-footer{justify-content:space-between}.gamification-reset-btn,.gamification-close-btn{padding:9px 14px;border-radius:5px;box-shadow:none;font-size:.72rem;font-weight:650}.gamification-reset-btn{border:1px solid #5a4141;background:transparent;color:#c98a86}.gamification-reset-btn:hover{background:#2c2528}.gamification-close-btn{border:1px solid #505762;background:#30353d;color:#e0e3e8}.gamification-close-btn:hover{background:#393f48}.gami-sos-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);flex:1;min-height:220px;max-height:360px;border:1px solid #343942;background:#1c1f24;overflow:hidden}.gami-sos-panel>section{min-width:0;margin:0;padding:16px;overflow-y:auto}.gami-sos-panel>section+section{border-left:1px solid #343942}.gami-timeline li{justify-content:flex-start;gap:10px}.gami-time{min-width:52px;color:#8f96a3;font-family:ui-monospace,Cascadia Mono,monospace;font-size:.78rem;font-variant-numeric:tabular-nums}.gami-timer{font-variant-numeric:tabular-nums;letter-spacing:.04em}.alert-monitoring-note{margin-top:12px;padding:12px 14px;border:1px solid #343942;border-radius:4px;background:#202329}.alert-monitoring-note strong{display:block;margin-bottom:4px;color:#d8dce2;font-size:.78rem}.alert-monitoring-note p{margin:0;color:#a6adb8;font-size:.74rem;line-height:1.5}.legend li{display:flex;align-items:center;gap:8px}.badge{font-size:.65rem;background:#3a3a48;padding:2px 6px;border-radius:4px;text-transform:lowercase}.controls-crane .crane-controls-row{display:flex;align-items:center;justify-content:center;gap:10px;padding:0}.controls-crane .joystick-xy{width:140px;height:140px}.controls-crane .btn-hook{width:52px;height:64px;min-width:52px;max-width:52px;box-sizing:border-box;flex-shrink:0}.controls-crane .joystick{padding:0;flex-shrink:0}.controls-crane h2{margin-bottom:6px}.hook-buttons{display:flex;flex-direction:column;gap:14px;flex-shrink:0}.hook-btn-row{display:flex;align-items:center;gap:8px}.hook-btn-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;line-height:1;-webkit-user-select:none;user-select:none;min-width:3.6em}.btn-hook{width:52px;height:64px;min-width:52px;max-width:52px;padding:0;box-sizing:border-box;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:12px}.hook-arrow{width:32px;height:32px;fill:currentColor;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35));pointer-events:none}.btn-hook-up,.btn-hook-down{width:52px;min-width:52px;max-width:52px}.btn-hook-up{background:linear-gradient(180deg,#6eb6ff,#2a6fbf);color:#041018;box-shadow:0 4px #1a4a85,inset 0 1px #ffffff59}.btn-hook-down{background:linear-gradient(180deg,#ff8a7a,#c43a2e);color:#1a0806;box-shadow:0 4px #8a241c,inset 0 1px #ffffff47}.btn-hook:active{transform:translateY(2px);box-shadow:0 1px 0 transparent}.joystick{display:flex;justify-content:center;padding:4px 0}.joystick-xy{width:180px;height:180px;border-radius:50%}.joystick-base{position:relative;background:radial-gradient(circle at 35% 30%,#5a5a68,#2e2e38 45%,#1a1a22);border:4px solid #111;box-shadow:inset 0 2px 8px #ffffff14,inset 0 -4px 12px #00000080,0 6px 20px #0009;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.joystick-base:active{cursor:grabbing}.joystick-ring{position:absolute;top:18px;right:18px;bottom:18px;left:18px;border-radius:50%;border:2px dashed rgba(255,255,255,.12);pointer-events:none}.joystick-ring:before,.joystick-ring:after{content:"";position:absolute;background:#ffffff14}.joystick-ring:before{top:50%;left:8%;right:8%;height:2px;transform:translateY(-50%)}.joystick-ring:after{left:50%;top:8%;bottom:8%;width:2px;transform:translate(-50%)}.joystick-stick{position:absolute;top:50%;left:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff6b60 0%,var(--accent) 50%,var(--accent-dark) 100%);border:3px solid #111;box-shadow:0 4px 10px #00000080,inset 0 2px 4px #ffffff40;pointer-events:none}.joystick-label{position:absolute;font-size:.58rem;font-weight:700;letter-spacing:.06em;color:#ffffff59;pointer-events:none}.joystick-label.top{top:8px;left:50%;transform:translate(-50%)}.joystick-label.bottom{bottom:8px;left:50%;transform:translate(-50%)}.joystick-label.left{left:8px;top:50%;transform:translateY(-50%)}.joystick-label.right{right:8px;top:50%;transform:translateY(-50%)}.joystick-hint{text-align:center;font-size:.7rem;color:var(--muted);margin-top:6px}.btn-row{display:flex;gap:8px}.btn{flex:1;padding:10px 8px;border:none;border-radius:6px;font-size:.78rem;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;transition:transform .1s,box-shadow .1s}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn-approach{background:linear-gradient(180deg,#3ddc84 0%,var(--green-dark) 100%);color:#0a2015;box-shadow:0 3px #157a42}.btn-retreat{background:linear-gradient(180deg,#ff9a4a,#cc6010);color:#1a0e00;box-shadow:0 3px #8a4208}.legend ul{list-style:none;display:flex;flex-direction:column;gap:6px}.legend li{font-size:.72rem;color:var(--muted);line-height:1.4}.legend strong{color:var(--text);font-weight:600}@media(max-width:900px){#game-app{--boom-base-w: 13cqw;--boom-base-h: 12cqw;--boom-arm-h: 2.4cqw;--boom-min-w: 9cqw;--boom-max-w: 92cqw}.gamification-modal-summary{grid-template-columns:170px minmax(0,1fr)}.gami-tab-panel{grid-template-columns:1fr;max-height:360px;overflow-y:auto}.gami-tab-panel>section{overflow:visible}.gami-tab-panel>section+section{border-top:1px solid #343942;border-left:0}}@media(max-width:620px){.gamification-modal{padding:8px}.gamification-modal-card{width:100%;max-height:96vh}.gamification-modal-summary{grid-template-columns:1fr;margin:12px}.gami-score-primary{min-height:110px;border-right:0;border-bottom:1px solid #343942}.gami-tab{gap:4px;padding:7px 5px;font-size:.62rem}.gami-tab b{display:none}}.dev-label-tooltip{position:fixed;z-index:10000;padding:5px 10px;background:#0c121cf0;border:1px solid rgba(79,195,247,.85);color:#e1f5fe;font:600 11px/1.35 ui-monospace,Cascadia Code,Consolas,monospace;border-radius:5px;pointer-events:none;white-space:nowrap;box-shadow:0 4px 14px #00000073}html.dev-labels-on [data-dev-name].dev-label-highlight{outline:2px solid rgba(79,195,247,.95);outline-offset:2px}.btn-dev-toggle{width:100%;flex:none;cursor:pointer;background:linear-gradient(180deg,#5a6070,#3a3f4a);color:#e8ecf0;box-shadow:0 3px #252830}.btn-dev-toggle.active{background:linear-gradient(180deg,#4fc3f7,#0288d1);color:#061018;box-shadow:0 3px #01579b}.info-modal-footer .btn-dev-toggle,.info-modal-footer .btn-dev-toggle.active{width:auto;flex:0 1 auto;min-width:170px;border:1px solid #454b56;border-radius:5px;background:#292d34;box-shadow:none;color:#d8dce2}.info-modal-footer .btn-dev-toggle.active{border-color:#5f7d6b;color:#a7cfb5}.dev-panel .joystick-hint{margin-top:8px}.controls-coachmark{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12000;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.controls-coachmark.is-open{opacity:1;visibility:visible;pointer-events:auto}.controls-coachmark-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0e8c;cursor:pointer}.controls-coachmark-highlight{position:absolute;border:3px solid #f5c400;border-radius:14px;box-shadow:0 0 24px #f5c4008c;pointer-events:none;z-index:1;background:transparent}.controls-coachmark-callout{position:absolute;z-index:2;display:flex;align-items:center;gap:8px;pointer-events:none}.controls-coachmark-arrow{flex-shrink:0;color:#f5c400;filter:drop-shadow(0 2px 6px rgba(0,0,0,.65));animation:coachmark-arrow-blink .7s ease-in-out infinite;pointer-events:none}.controls-coachmark-arrow svg{display:block;width:52px;height:52px}@keyframes coachmark-arrow-blink{0%,to{opacity:1;transform:translate(0)}50%{opacity:.25;transform:translate(10px)}}.controls-coachmark-bubble{pointer-events:auto;background:#1e222c;border:2px solid #f5c400;border-radius:12px;padding:14px 16px;max-width:260px;box-shadow:0 10px 28px #00000073}.controls-coachmark-bubble p{margin:0 0 12px;color:#f2f4f8;font-size:.98rem;line-height:1.35;font-weight:600}.controls-coachmark-bubble .btn-modal-action{width:100%}.berco-btn{flex:1;display:flex;justify-content:space-between!important;align-items:center!important;padding:12px 14px!important;gap:10px;border-radius:12px;background:linear-gradient(to bottom,#fff,#f1f3f5);border:1px solid #ced4da;border-bottom:5px solid #adb5bd;color:#495057;cursor:pointer;transition:all .1s ease;-webkit-user-select:none;user-select:none;box-shadow:0 4px 6px #0000000d;font-family:inherit;font-weight:700;position:relative;top:0;height:120px}.berco-btn:active:not(.active){transform:translateY(2px);border-bottom-width:3px}.berco-btn-left{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.berco-status-bar{position:static!important;transform:none!important;width:100%;height:5px;border-radius:3px;transition:background-color .3s ease,box-shadow .3s ease}.berco-status-bar.status-green{background:#14eb2e;box-shadow:0 0 7px #14eb2e99}.berco-status-bar.status-red{background:#ff0808;box-shadow:0 0 7px #ff0808cc}.berco-count-badge{flex-shrink:0;width:48px;min-height:74px;padding:10px 8px 12px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#464f5c;border:none;box-shadow:inset 0 1px #ffffff14;color:#fff;position:relative}.berco-count-icon-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:24px;height:22px;flex-shrink:0}.berco-count-icon{width:20px;height:20px;flex-shrink:0;opacity:1;object-fit:contain;display:block;filter:none}.berco-signal-arc{display:none;position:absolute;top:-5px;left:50%;transform:translate(-50%);width:22px;height:11px;border:2.5px solid #FFD400;border-bottom:none;border-radius:22px 22px 0 0;box-sizing:border-box;pointer-events:none;z-index:1}.berco-count-badge.has-signal-arc .berco-signal-arc{display:block}.berco-count-num{font-size:24px;font-weight:800;line-height:1;min-width:0;text-align:center}.berco-btn.active .berco-count-badge{background:#1e2430;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px #ffffff0f;color:#fff}.app-container.state-amber .berco-btn.active .berco-count-badge,.app-container.state-red .berco-btn.active .berco-count-badge{background:#1e2430;border:1px solid rgba(255,255,255,.14);color:#fff}.guincho-move-hint-wrap{position:absolute!important;top:clamp(8px,2vw,16px);left:clamp(8px,2vw,16px);inset:auto;z-index:6;display:none;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;width:max-content;max-width:none;margin:0;padding:0;transform:none;pointer-events:none}.guincho-move-hint{position:relative;top:auto;left:auto;width:clamp(28px,7vw,44px);height:auto;max-height:clamp(72px,18vw,110px);object-fit:contain;object-position:top left;display:block;margin:0;padding:0;animation:guincho-hint-blink 1s linear infinite}.app-container.guincho-moving-cargo .guincho-move-hint{width:clamp(32px,8vw,48px);max-height:clamp(90px,22vw,130px)}.guincho-move-hint-berth{display:none;align-self:center;min-width:1.35em;margin:0;padding:2px 7px;border-radius:4px;background:#0c0c10d1;border:1px solid rgba(255,255,255,.55);color:#fff;font-family:Montserrat,Segoe UI,sans-serif;font-weight:800;font-size:clamp(.95rem,3vw,1.25rem);line-height:1.15;letter-spacing:.02em;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.65)}.guincho-move-hint-berth.is-visible{display:block}@keyframes guincho-hint-blink{0%,to{opacity:1}50%{opacity:.35}}.app-container.guincho-moving:not(.guincho-intro-done) .guincho-move-hint-wrap,.app-container.cargo-suspended-hint .guincho-move-hint-wrap{display:flex!important;position:absolute!important;top:clamp(8px,2vw,16px)!important;left:clamp(8px,2vw,16px)!important;right:auto!important;bottom:auto!important;transform:none!important;margin:0!important}.app-container.guincho-moving:not(.guincho-intro-done) .guincho-move-hint,.app-container.cargo-suspended-hint .guincho-move-hint{display:block!important;animation:guincho-hint-blink 1s linear infinite}.app-container.state-idle:not(.cargo-suspended-hint) .guincho-move-hint-wrap{display:none!important}.app-container.state-idle:not(.cargo-suspended-hint) .guincho-move-hint{display:none!important}.berco-counters{display:none!important}.app-container.state-idle .main-content{background-color:#8b929a!important}.app-container.state-idle .icon-green,.app-container.state-idle .icon-red{opacity:0!important;transform:scale(.8);pointer-events:none}.icon-idle{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;opacity:0;transform:scale(.95);transition:opacity .4s ease,transform .4s ease;pointer-events:none;z-index:4}.app-container.state-idle .icon-idle{opacity:1;transform:scale(1)}.idle-prompt-circle{width:min(78%,260px);aspect-ratio:1;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:28px 22px;text-align:center;box-shadow:0 4px 20px #0000001f}.idle-prompt-inner{display:flex;flex-direction:column;align-items:center;gap:4px}.idle-prompt-arrow{display:flex;justify-content:center;align-items:center;margin-top:-18px;margin-bottom:2px;animation:pulse-arrow-up 2s infinite}.idle-prompt-arrow svg{width:72px;height:72px;fill:none;stroke:#4a55688c;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}@keyframes pulse-arrow-up{0%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-14px)}to{opacity:.3;transform:translateY(0)}}.idle-prompt-circle p{margin:0;font-size:18px;font-weight:700;color:#4a5568;line-height:1.35;letter-spacing:.2px}#slider-panel-dual{display:none;flex-direction:column;gap:10px;width:100%}.dual-slider-row{width:100%}.dual-track{height:68px!important;border-radius:34px!important}.dual-track .slider-thumb{width:58px!important;height:58px!important;top:5px!important}.dual-track .slider-text{font-size:15px!important;padding-right:16px!important}.dual-track.track-aproxime{background-color:var(--green-pill, #0e4c35)!important}.dual-track.track-aproxime .slider-thumb{background-color:var(--green-thumb, #093826)!important}.dual-track.track-aproxime .slider-thumb svg{fill:#14eb2e!important}.dual-track.track-aproxime .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color .4s ease-in-out infinite!important}.dual-track.track-aproxime .slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color .5s ease-in-out infinite!important}.app-container.aproxime-alert-screen .dual-track.track-aproxime{background-color:var(--red-pill, #d10000)!important}.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb{background-color:var(--red-thumb, #960000)!important}.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb svg{fill:#ff0808!important}.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color-red .4s ease-in-out infinite!important}.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color-red .5s ease-in-out infinite!important}.dual-track.track-afaste{background-color:var(--red-pill, #d10000)!important}.dual-track.track-afaste .slider-thumb{background-color:var(--red-thumb, #960000)!important}.dual-track.track-afaste .slider-thumb svg{fill:#ff0808!important}.dual-track.track-afaste .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color-red .4s ease-in-out infinite!important}.dual-track.track-afaste .slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color-red .5s ease-in-out infinite!important}.app-container.afaste-alert-screen .dual-track.track-afaste,.app-container.state-red.afaste-alert-screen .dual-track.track-afaste,.app-container.state-amber.afaste-alert-screen .dual-track.track-afaste{background-color:var(--green-pill, #0e4c35)!important}.app-container.afaste-alert-screen .dual-track.track-afaste .slider-thumb,.app-container.state-red.afaste-alert-screen .dual-track.track-afaste .slider-thumb,.app-container.state-amber.afaste-alert-screen .dual-track.track-afaste .slider-thumb{background-color:var(--green-thumb, #093826)!important}.app-container.afaste-alert-screen .dual-track.track-afaste .slider-thumb svg,.app-container.state-red.afaste-alert-screen .dual-track.track-afaste .slider-thumb svg,.app-container.state-amber.afaste-alert-screen .dual-track.track-afaste .slider-thumb svg{fill:#14eb2e!important}.app-container.afaste-alert-screen .dual-track.track-afaste .slider-thumb.is-dragging,.app-container.state-red.afaste-alert-screen .dual-track.track-afaste .slider-thumb.is-dragging,.app-container.state-amber.afaste-alert-screen .dual-track.track-afaste .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color .4s ease-in-out infinite!important}.app-container.afaste-alert-screen .dual-track.track-afaste .slider-thumb.counting,.app-container.state-red.afaste-alert-screen .dual-track.track-afaste .slider-thumb.counting,.app-container.state-amber.afaste-alert-screen .dual-track.track-afaste .slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color .5s ease-in-out infinite!important}.app-container.state-amber .dual-track.track-afaste{background-color:var(--amber-pill, #ff9500)!important}.dual-track.disabled{background-color:#222!important;pointer-events:none}.bottom-area.has-sos{display:flex;flex-direction:column;gap:12px}.sos-buttons-row{display:none;flex-direction:column;gap:10px;width:100%}.app-container.sos-lock .sos-buttons-row{display:flex}.sos-afaste-btn{width:100%;height:80px;border-radius:40px;background-color:#2a0000;color:#fff;font-family:Montserrat,sans-serif;font-size:28px;font-weight:800;letter-spacing:.08em;border:none;cursor:default;z-index:10;display:flex;justify-content:center;align-items:center;gap:12px;animation:blink-sos .5s ease-in-out infinite}@keyframes blink-sos{0%{background-color:#ff0808}50%{background-color:#2a0000}to{background-color:#ff0808}}.sos-afaste-btn svg{width:32px;height:32px;fill:currentColor;flex-shrink:0}.homem-btn{width:100%;height:80px;border-radius:40px;background-color:var(--red-bg);color:#fff;font-size:22px;font-weight:700;border:none;cursor:pointer;z-index:10;animation:blink-color-red .5s ease-in-out infinite;display:flex;justify-content:center;align-items:center;gap:12px}.app-container.sos-lock .berco-btn{pointer-events:none;opacity:.55}.app-container.sos-lock.sos-need-berth .berco-btn{pointer-events:auto;opacity:1;cursor:pointer}.app-container.sos-lock.sos-need-berth #track-sos-afaste,.app-container.sos-lock.sos-line-of-fire #track-sos-afaste,.app-container.sos-lock.sos-raise-cargo #track-sos-afaste{display:none!important}.sos-lock-msg{display:none;margin:0;text-align:center;font-family:Montserrat,sans-serif;font-size:15px;font-weight:700;color:#fff;line-height:1.35;letter-spacing:.02em;padding:0 10px}.app-container.sos-lock .sos-lock-msg:not([hidden]){display:block}.app-container.sos-lock #slider-panel-dual,.app-container.sos-lock #slider-panel-single{display:none!important}.app-container.sos-lock{--sos-red: #ff0808}.app-container.sos-lock .main-content{background-color:var(--sos-red, #ff0808)!important}.app-container.sos-lock .icon-green{display:none!important}.app-container.sos-lock .icon-red{display:flex!important}.app-container.sos-lock #track-sos-afaste:not(.disabled){background-color:#2a0000!important}.app-container.sos-lock #track-sos-afaste:not(.disabled) .slider-thumb{background-color:#1a0000!important}.app-container.sos-lock #track-sos-afaste:not(.disabled) .slider-thumb svg{fill:#ff0808!important}.tablet-root{width:100%;height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;position:relative;font-family:Montserrat,sans-serif;background:#fff;box-sizing:border-box}.tablet-root *,.tablet-root *:before,.tablet-root *:after{box-sizing:border-box;touch-action:pan-y}.tablet-root{--green-bg: #14eb2e;--green-pill: #0e4c35;--green-thumb: #093826;--green-text: #ffffff;--amber-pill: #807000;--amber-thumb: #4d4600;--red-bg: #ff0808;--red-pill: #d10000;--red-thumb: #960000;--red-text: #ffffff;--transition-speed: .4s}.app-container{width:100%;height:100%;max-width:744px;position:relative;background-color:#fff;transition:background-color var(--transition-speed) ease;display:flex;flex-direction:column;padding:15px;gap:15px}.app-container.state-amber{background-color:#000}.app-container.state-amber .main-content{background-color:var(--red-bg)}.app-container.state-amber .icon-green{opacity:0;transform:scale(.8)}.app-container.state-amber .icon-red{opacity:1;transform:scale(1)}.app-container.state-amber .slider-track{background-color:var(--amber-pill)}.app-container.state-amber .slider-thumb{background-color:var(--amber-thumb)}.app-container.state-amber .slider-thumb svg{fill:#ffeb3b}.app-container.state-amber .thumb-countdown{color:#ffeb3b}.app-container.state-red{background-color:#000}.main-content{flex:1;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;background-color:var(--green-bg);border-radius:8px;transition:background-color var(--transition-speed) ease}.app-container.state-red .main-content{background-color:var(--red-bg)}.app-container.aproxime-alert-screen .main-content{background-color:var(--red-bg)!important}.app-container.aproxime-alert-screen .icon-green{opacity:0;transform:scale(.8)}.app-container.aproxime-alert-screen .icon-red{opacity:1;transform:scale(1)}.app-container.aproxime-alert-screen #slider-panel-single .slider-track,.app-container.aproxime-alert-screen .dual-track.track-aproxime{background-color:var(--red-pill)!important}.app-container.aproxime-alert-screen #slider-panel-single .slider-thumb,.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb{background-color:var(--red-thumb)!important}.app-container.aproxime-alert-screen #slider-panel-single .slider-thumb svg,.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb svg{fill:#ff0808!important}.app-container.aproxime-alert-screen #slider-panel-single .slider-thumb.is-dragging,.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color-red .4s ease-in-out infinite!important}.app-container.aproxime-alert-screen #slider-panel-single .slider-thumb.counting,.app-container.aproxime-alert-screen .dual-track.track-aproxime .slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color-red .5s ease-in-out infinite!important}.app-container.afaste-alert-screen .main-content{background-color:var(--green-bg)!important}.app-container.afaste-alert-screen .icon-red,.app-container.state-red.afaste-alert-screen .icon-red,.app-container.state-amber.afaste-alert-screen .icon-red{opacity:0!important;transform:scale(.8)}.app-container.afaste-alert-screen .icon-green,.app-container.state-red.afaste-alert-screen .icon-green,.app-container.state-amber.afaste-alert-screen .icon-green{opacity:1!important;transform:scale(1)}.app-container.afaste-alert-screen .slider-track,.app-container.state-red.afaste-alert-screen .slider-track,.app-container.state-amber.afaste-alert-screen .slider-track{background-color:var(--green-pill)!important}.app-container.afaste-alert-screen .slider-thumb,.app-container.state-red.afaste-alert-screen .slider-thumb,.app-container.state-amber.afaste-alert-screen .slider-thumb{background-color:var(--green-thumb)!important}.app-container.afaste-alert-screen .slider-thumb svg,.app-container.state-red.afaste-alert-screen .slider-thumb svg,.app-container.state-amber.afaste-alert-screen .slider-thumb svg{fill:#14eb2e!important}.app-container.afaste-alert-screen .slider-thumb.is-dragging,.app-container.state-red.afaste-alert-screen .slider-thumb.is-dragging,.app-container.state-amber.afaste-alert-screen .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color .4s ease-in-out infinite!important}.app-container.afaste-alert-screen .slider-thumb.counting,.app-container.state-red.afaste-alert-screen .slider-thumb.counting,.app-container.state-amber.afaste-alert-screen .slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color .5s ease-in-out infinite!important}.top-area{display:flex;gap:10px;width:100%}.berco-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:16px 10px;border-radius:12px;background:linear-gradient(to bottom,#fff,#f1f3f5);border:1px solid #ced4da;border-bottom:5px solid #adb5bd;color:#495057;cursor:pointer;transition:all .1s ease;-webkit-user-select:none;user-select:none;box-shadow:0 4px 6px #0000000d;font-family:inherit;font-weight:700;position:relative;top:0;height:120px}.berco-btn:hover{background:linear-gradient(to bottom,#f8f9fa,#e9ecef);border-color:#adb5bd;border-bottom-color:#8e959c;color:#212529}.berco-btn:active{transform:translateY(2px);border-bottom-width:3px}.berco-btn.active{background:linear-gradient(to bottom,#2d3748,#1a202c);border-color:#4a5568;border-bottom:3px solid #0f172a;color:#fff;box-shadow:inset 0 3px 10px #00000059,0 2px 3px #0003;transform:translateY(4px);font-weight:800;height:120px}.berco-btn.active:hover{transform:translateY(4px);background:linear-gradient(to bottom,#2d3748,#1a202c);color:#fff;box-shadow:inset 0 3px 10px #00000059,0 2px 3px #0003}.berco-title{font-size:17px;font-weight:700;letter-spacing:.2px}.berco-counters{position:absolute;bottom:18px;left:15px;right:15px;display:flex;justify-content:space-between;z-index:5}.berco-counter-group{display:flex;flex-direction:column;gap:5px}.berco-counter-label{font-size:11px;font-weight:800;letter-spacing:1.5px;color:#00370cd9}.app-container.state-red .berco-counter-label,.app-container.state-amber .berco-counter-label{color:#ffffffd9}.berco-pill-track{display:flex;gap:3px;background:#00320a2e;border:2px dashed rgba(0,70,15,.45);border-radius:9px;padding:4px 5px}.app-container.state-red .berco-pill-track,.app-container.state-amber .berco-pill-track{background:#00000040;border-color:#ffffff59}.berco-seg{width:15px;height:26px;border-radius:4px;background:transparent;border:1.5px solid rgba(0,70,15,.28)}.app-container.state-red .berco-seg,.app-container.state-amber .berco-seg{border-color:#fff3}.berco-seg.filled{background:#ff0808;border-color:#c00;box-shadow:0 0 5px #ff0808b3}.berco-limit-line{width:0;height:26px;flex-shrink:0;border-left:2px dashed rgba(0,70,15,.7);margin:0 2px}.app-container.state-red .berco-limit-line,.app-container.state-amber .berco-limit-line{border-color:#fff9}.berco-seg.filled.blinking{animation:blink-pill 1s infinite ease-in-out}@keyframes blink-pill{0%,to{opacity:1}50%{opacity:.15}}.icon-container{position:absolute;transition:opacity var(--transition-speed) ease,transform var(--transition-speed) ease;display:flex;justify-content:center;align-items:center}.icon-green{width:260px;height:260px;border-radius:50%;opacity:1;transform:scale(1)}.icon-green img{width:65%;height:auto}.icon-red{top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;transform:scale(.8);flex-direction:column}.afaste-operador{position:absolute;top:clamp(8px,2vw,16px);right:clamp(8px,2vw,16px);width:clamp(40px,10vw,62px);height:auto;z-index:6}.afaste-stop-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(58vw,220px);height:min(58vw,220px);background:#fff;border-radius:50%;padding:14px 12px 16px;box-shadow:0 6px 28px #0000001f;gap:0}.afaste-guinco-stop{width:48%;height:auto;flex:0 0 auto}.afaste-stop-label{font-family:Montserrat,sans-serif;font-size:clamp(28px,7.5vw,42px);font-weight:800;color:#e80707;letter-spacing:.04em;line-height:1}.app-container.state-red .icon-green{opacity:0;transform:scale(.8)}.app-container.state-red .icon-red{opacity:1;transform:scale(1)}.bottom-area{padding:10px 0 20px;background:transparent}.slider-track{width:100%;height:80px;border-radius:40px;background-color:var(--green-pill);position:relative;display:flex;align-items:center;overflow:hidden;transition:background-color var(--transition-speed) ease;box-shadow:inset 0 4px 10px #0000004d,0 5px 15px #0006}.app-container.state-red .slider-track{background-color:var(--red-pill)}.slider-track.disabled{background-color:#222!important;pointer-events:none;box-shadow:none}.slider-track.disabled .slider-thumb{background-color:#333!important;box-shadow:none;animation:none!important}.slider-track.disabled .slider-thumb svg{fill:#555!important}.slider-track.disabled .slider-text{color:#555!important}.slider-track.disabled .slider-arrow svg{stroke:#555!important}.slider-track.disabled .thumb-countdown{color:#555!important}.slider-text{position:absolute;width:100%;text-align:end;padding-right:23px;color:#fff;font-size:20px;font-weight:700;letter-spacing:1px;pointer-events:none;z-index:1;transition:opacity .2s ease}.slider-thumb{width:70px;height:70px;border-radius:50%;background-color:var(--green-thumb);position:absolute;left:5px;top:5px;display:flex;justify-content:center;align-items:center;z-index:2;cursor:grab;box-shadow:0 4px 10px #0006;transition:background-color var(--transition-speed) ease;animation:pulse-thumb 2s infinite;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.slider-thumb *{pointer-events:none}.app-container.state-red .slider-thumb{background-color:var(--red-thumb)}.slider-thumb:active{cursor:grabbing}.slider-thumb svg{width:34px;height:34px;fill:#14eb2e;transition:fill var(--transition-speed) ease}.app-container.state-red .slider-thumb svg{fill:#ff0808}.slider-arrow{position:absolute;left:90px;z-index:1;display:flex;align-items:center;animation:pulse-arrow 2s infinite}.slider-arrow svg{width:24px;height:24px;fill:none;stroke:#fff6;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}@keyframes pulse-thumb{0%{transform:scale(1) translate(0);box-shadow:0 0 #fff6}50%{transform:scale(1.05) translate(0);box-shadow:0 0 0 10px #fff0}to{transform:scale(1) translate(0);box-shadow:0 0 #fff0}}@keyframes pulse-arrow{0%{opacity:.3;transform:translate(0)}50%{opacity:1;transform:translate(5px)}to{opacity:.3;transform:translate(0)}}@keyframes shake-thumb{0%{transform:translate(var(--tx, 0px)) rotate(0)}20%{transform:translate(calc(var(--tx, 0px) - 4px)) rotate(-4deg)}40%{transform:translate(calc(var(--tx, 0px) + 4px)) rotate(4deg)}60%{transform:translate(calc(var(--tx, 0px) - 3px)) rotate(-3deg)}80%{transform:translate(calc(var(--tx, 0px) + 3px)) rotate(3deg)}to{transform:translate(var(--tx, 0px)) rotate(0)}}@keyframes blink-color{0%{background-color:var(--green-thumb);box-shadow:0 0 #14eb2eb3}50%{background-color:#14eb2e;box-shadow:0 0 18px 8px #14eb2e80}to{background-color:var(--green-thumb);box-shadow:0 0 #14eb2eb3}}@keyframes blink-color-amber{0%{background-color:var(--amber-thumb);box-shadow:0 0 #ffeb3bb3}50%{background-color:#ffeb3b;box-shadow:0 0 18px 8px #ffeb3b80}to{background-color:var(--amber-thumb);box-shadow:0 0 #ffeb3bb3}}@keyframes blink-color-red{0%{background-color:var(--red-thumb);box-shadow:0 0 #ff0808b3}50%{background-color:#ff0808;box-shadow:0 0 18px 8px #ff080880}to{background-color:var(--red-thumb);box-shadow:0 0 #ff0808b3}}.slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color .4s ease-in-out infinite!important}.app-container.state-amber .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color-amber .4s ease-in-out infinite!important}.app-container.state-red .slider-thumb.is-dragging{animation:shake-thumb .25s linear infinite,blink-color-red .4s ease-in-out infinite!important}.slider-track.dragging .slider-text,.slider-track.dragging .slider-arrow{opacity:.2}.slider-track.dragging .slider-thumb{animation:none}.thumb-countdown{font-family:Montserrat,sans-serif;font-size:32px;font-weight:700;color:#fff;line-height:1;animation:none;position:absolute;right:90px;z-index:1}.app-container.state-red .thumb-countdown{color:#fff}@keyframes countdown-ring{0%{box-shadow:0 0 #fffc}50%{box-shadow:0 0 0 8px #fff3}to{box-shadow:0 0 #fff0}}.slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color .5s ease-in-out infinite!important;cursor:default}.app-container.state-red .slider-thumb.counting{animation:countdown-ring 1s ease-out infinite,blink-color-red .5s ease-in-out infinite!important}.cancel-btn{background:transparent;color:#d1d1d1;border:none;font-size:40px;font-weight:400;line-height:1;display:none;justify-content:center;align-items:center;cursor:pointer;z-index:10;pointer-events:all}.app-container.state-red .cancel-btn{color:#d1d1d1}.cancel-btn.visible{display:flex}.next-screen{position:absolute;top:0;right:0;bottom:0;left:0;background:#000;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:100;opacity:0;pointer-events:none;transition:opacity .6s ease;gap:20px}.next-screen.visible{opacity:1;pointer-events:all}.next-screen h1{color:#fff;font-size:32px;font-weight:700;letter-spacing:2px}.next-screen p{color:#fff9;font-size:16px;text-align:center;padding:0 30px}.welcome-screen{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000f2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:150;opacity:1;transition:opacity .5s ease}.welcome-screen.hidden{opacity:0;pointer-events:none}.welcome-card{width:90%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:25px;color:#fff}.activate-btn{width:100%;max-width:280px;padding:18px;border-radius:35px;border:none;background:#14eb2e;color:#000;font-size:16px;font-weight:700;letter-spacing:1px;cursor:pointer;box-shadow:0 5px 20px #14eb2e80;transition:transform .2s ease,box-shadow .2s ease}.activate-btn:active{transform:scale(.97)}.tablet-root.metta-game-embed{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;overflow:hidden;background:#fff}.tablet-root.metta-game-embed .app-container{max-width:none;width:100%;height:100%;min-height:0;flex:1;margin:0}.tablet-root.metta-game-embed .welcome-screen,.tablet-root.metta-game-embed .next-screen{display:none!important}.tablet-root .berco-settings-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:500}.tablet-root .app-container{position:relative}
