@import url(https://fonts.googleapis.com/css?family=Poppins:100,200,300,400,500,600,700,800,900);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.home-page{display:flex;flex-direction:column;height:100vh;justify-content:space-between}.logo_element{position:absolute;width:30vw}.logo_container{align-items:center;display:flex;flex-direction:column;justify-content:center;position:fixed;top:50%;width:100%}@keyframes logo_shake{0%{transform:scale(1)}25%{transform:scale(1.05)}50%{transform:scale(1.15)}75%{transform:scale(1.05)}to{transform:scale(1)}}.logo_element:hover{animation:logo_shake .75s ease-out infinite;cursor:pointer}.logo{position:absolute;width:30vw}.button_home{background-color:#8b85c1;border:none;border-radius:1vh;color:#281223;cursor:pointer;font-size:1.3em;padding:15px 30px;transition:background-color .3s ease}.curved-area{bottom:0;position:absolute}.curved-area button{color:#fff;margin:2vh;padding:2vh}.button.submit{background-color:#8b85c1}.overlay{background:#0006}.overlay,.overlay-without-background{align-items:center;display:flex;height:100%;justify-content:center;position:fixed;width:100%;z-index:2}.close-button-gold{align-items:center;background:none;border:none;border-radius:50%;color:gold;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:30px;justify-content:center;transition:all .3s ease;width:30px;z-index:10}.close-button-gold:hover{background:#ffd70033;transform:scale(1.1)}.options-card{background:#000c;border-radius:1vh;display:flex;flex-direction:column;padding:3vh}.options-card h3{color:#fff;font-size:1.5em}.options-card .button.submit{margin-top:2vh;width:75%}.player-selection-card{align-items:center;background-color:#f5f5f5;border:.2vh solid #38182f;border-radius:1vh;display:flex;flex-direction:column;padding:4vh}.player-selection-card h3{color:#38182f;font-size:1.5em}.player-selection-card .dropdown{border:.2vh solid #38182f;border-radius:2vh;font-size:1em;margin-bottom:2vh;padding:2vh;width:80%}.player-selection-card .button.submit{width:75%}.volume-control{background:#00000080;border-radius:1vh;bottom:2vh;padding:2vh;position:fixed;right:2vh;z-index:2}.volume-control input[type=range]{-webkit-appearance:none;background:#0000;width:15vh}.volume-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;cursor:pointer;height:1.5vh;margin-top:-.35vh;width:1.5vh}.volume-control input[type=range]::-webkit-slider-runnable-track{background:gold;border-radius:1vh;height:.8vh;width:100%}.error-message{color:red;font-size:1.2em;margin-top:2vh}.success-message{color:green;font-size:1.2em;margin-top:2vh}.link{color:#007bff;cursor:pointer;font-weight:700;text-decoration:underline;transition:color .3s ease-in-out}.link:hover{color:#0056b3;text-decoration:none}.options-card p{color:#fff;font-size:1.2em;margin-top:2vh}.overlay input{border:2px solid #ddd;border-radius:5px;font-size:1rem;margin:8px 0;outline:none;padding:10px;transition:border-color .3s ease-in-out,box-shadow .3s ease-in-out;width:100%}.overlay input:focus{border-color:#007bff;box-shadow:0 0 5px #007bff80}.overlay input::placeholder{color:#888;font-size:.9rem}.overlay input.error{border-color:red;box-shadow:0 0 5px #ff000080}.top-buttons{display:flex;gap:1vw;position:fixed;right:20px;top:20px;z-index:100}.friends-button{background:#000c!important;border:none;border-radius:1.2em;box-shadow:0 2px 8px #0003;color:#232b3a;cursor:pointer;font-size:1.2em;font-weight:700;padding:12px 16px;transition:background .3s,color .2s,transform .15s}.friends-button:hover{transform:scale(1.04)}.admin-button{background:#000c!important;border:none;border-radius:1.2em;box-shadow:0 2px 8px #0003;color:#232b3a;cursor:pointer;font-size:1.2em;font-weight:700;padding:12px 16px;transition:background .3s,color .2s,transform .15s}.admin-button:hover{transform:scale(1.04)}.profile-button{background:#000c!important;border-radius:1.2em;box-shadow:0 2px 8px #0003;color:#232b3a;font-size:1.2em;padding:12px 16px;transition:background .3s,color .2s,transform .15s}.profile-button:hover{transform:scale(1.04)}.home-profile-button{background:#000c!important;border:none;border-radius:1.2em;bottom:20px;box-shadow:0 2px 8px #0003;color:#232b3a;cursor:pointer;font-size:1.2em;font-weight:700;left:20px;padding:12px 16px;position:fixed;transition:background .3s,color .2s,transform .15s;z-index:1000}.home-profile-button:hover{transform:scale(1.04)}.logout-button{background:#000c!important;border:none;border-radius:1.2em;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;font-size:1em;font-weight:700;letter-spacing:1px;padding:12px 24px;text-transform:uppercase;transition:background .3s,color .2s,transform .15s}.logout-button:hover{transform:scale(1.04)}.mj-games-container{background:#0009!important}.mj-content,.mj-footer,.mj-games-container,.mj-header,.modal-card{border:none!important;border-radius:3vh!important;box-shadow:none!important;color:#fff}.mj-header{align-items:center;background:#0000!important;border:none;border-radius:3vh 3vh 0 0!important;box-shadow:none;display:flex;flex-direction:column;font-size:1.3em;justify-content:center;padding:2vh 0 1vh}.mj-header,.mj-header h3,.mj-header h4{color:gold;font-weight:700;text-align:center;width:100%}.mj-header h3,.mj-header h4{letter-spacing:1px;margin:.5em 0;text-shadow:none}.mj-footer{align-items:center;background:#0000!important;border:none;border-radius:0 0 3vh 3vh!important;box-shadow:none;display:flex;justify-content:center;padding:2vh 0;text-align:center;width:100%}.mj-footer .button.submit{display:block;float:none;margin:0 auto}.mj-content{align-items:center;background:#0000!important;display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:3vh 3vw}.mj-games-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(2,minmax(300px,1fr));justify-items:center;width:100%}.mj-game-card{background:#000000e6!important;border:2px solid #ffd70055;border-radius:2vh}.search-section{background:#0000004d;border-bottom:1px solid #ffd70033;padding:2vh 3vw}.search-container{display:flex;gap:1vw;margin-bottom:2vh}.search-input{background:#000000b3;border:1px solid #ffd70055;border-radius:1vh;flex:1 1;font-size:1.6vh;padding:1vh 1.5vw}.search-input::placeholder{color:#ffd70088}.search-btn{background:#000000b3;border:1px solid #ffd70055;border-radius:1vh;color:gold;cursor:pointer;font-size:1.6vh;padding:1vh 1.5vw;transition:all .3s ease}.search-btn:disabled{cursor:not-allowed;opacity:.5}.search-results{max-height:20vh}.search-result-item{border-bottom:1px solid #ffd70022;padding:1.5vh 1.5vw;transition:background .3s ease}.search-result-item:hover{background:#ffd7001a}.user-name{font-size:1.6vh}.invite-btn{background:#000000b3;font-size:1.2vh}.mj-game-card{box-shadow:0 4px 12px #0000004d;color:#fff;padding:20px;position:relative;transition:box-shadow .3s,border-color .3s}.mj-game-card:hover{border-color:gold;box-shadow:0 8px 24px #ffd70033}.game-header{align-items:flex-start;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.game-name{color:gold;font-size:1.2em;letter-spacing:1px;margin:0;text-shadow:none}.game-actions{display:flex;gap:8px}.copy-link-btn,.delete-game-btn{background:#0000004d;border:1px solid #ffd70044;border-radius:1.2em;color:gold;cursor:pointer;font-size:18px;margin-left:2px;padding:8px 12px;transition:background .2s,color .2s,border-color .2s,transform .15s}.copy-link-btn:hover,.delete-game-btn:hover{border-color:gold;color:#232b3a;transform:scale(1.08)}.delete-game-btn{margin-left:8px}.join-game-btn{background:linear-gradient(90deg,gold,#8b85c1);border:none;border-radius:1.2em;box-shadow:0 2px 8px #0003;color:#232b3a;cursor:pointer;font-size:1em;font-weight:700;letter-spacing:1px;padding:12px;text-transform:uppercase;transition:background .3s,color .2s,transform .15s;width:100%}.button.submit:hover,.join-game-btn:hover{background:linear-gradient(90deg,#8b85c1,gold);color:#fff;transform:scale(1.04)}.game-buttons{display:flex;flex-direction:column;gap:8px;margin-top:12px}.admin-game-btn{background:linear-gradient(90deg,#4caf50,#45a049);border:none;border-radius:1.2em;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;font-size:.9em;font-weight:700;letter-spacing:1px;padding:10px;text-transform:uppercase;transition:background .3s,color .2s,transform .15s;width:100%}.admin-game-btn:hover{background:linear-gradient(90deg,#45a049,#4caf50);transform:scale(1.04)}.button.submit{display:block;margin:18px auto 0}.no-games{background:#0003;border:2px dashed #ffd70044;border-radius:1.2em;color:gold;padding:40px}.info-row{align-items:center;color:#fff;display:flex;font-size:.98em;justify-content:space-between;margin-bottom:8px;padding:5px 0}.info-label{color:gold;font-weight:500}.info-value{color:#fff;font-weight:600}.modal-overlay{background:#0009!important;bottom:0;right:0;z-index:1000}.modal-card{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border-radius:2vh;box-shadow:0 8px 32px #000a;color:#fff;max-width:90vw;min-width:320px;padding:32px 32px 24px;text-align:center}.modal-card h4{color:gold;font-size:1.2em;font-weight:700;margin-bottom:16px;text-shadow:none}.modal-card input{background:#232b3a;border:1px solid #ffd70044;border-radius:1em;color:gold;font-size:1em;margin:12px 0;padding:10px;text-align:center;width:80%}.modal-actions{display:flex;gap:18px;justify-content:center;margin-top:18px}.modal-actions button{background:linear-gradient(90deg,gold,#8b85c1);border:none;border-radius:1.2em;color:#232b3a;cursor:pointer;font-size:1em;font-weight:700;padding:10px 28px;transition:background .2s,color .2s,transform .15s}.modal-actions button.danger{background:#c0392b;color:#fff}.modal-actions button.danger:disabled{background:#888;color:#eee;cursor:not-allowed}.modal-actions button:hover:not(:disabled){background:linear-gradient(90deg,#8b85c1,gold);color:#fff;transform:scale(1.04)}@media (max-width:1100px){.mj-games-container{max-width:98vw;min-width:0;min-width:auto;width:95vw}.mj-games-grid{gap:20px;grid-template-columns:1fr}}.button.submit,.join-game-btn,.modal-actions button{background:gold;border:none;border-radius:1.2em;color:#000;font-size:1.1em;font-weight:700;margin:10px 0;padding:12px 32px;transition:background .2s,color .2s}.button.submit:hover,.join-game-btn:hover,.modal-actions button:hover:not(:disabled){background:gold;color:#232b3a}.player-modal{max-height:90vh;max-width:90vw;min-width:600px;overflow-y:auto}.player-header{text-align:center}.player-header h3{color:gold;font-size:1.8rem;margin-bottom:10px}.player-header p{color:#b8b8b8;font-size:1rem}.invitations-section{margin-bottom:30px;width:100%}.invitations-section h4{border-bottom:2px solid #8b85c1;color:#8b85c1;font-size:1.3rem;margin-bottom:15px;padding-bottom:5px}.invitations-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:15px}.invitation-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000e6;border:2px solid gold;border-radius:18px;box-shadow:0 4px 24px 0 #ffd7002e;color:#fff;margin-bottom:18px;padding:22px 24px 18px;position:relative;transition:box-shadow .3s,border-color .3s,background .3s}.invitation-card:hover{border-color:gold;box-shadow:0 8px 32px 0 #ffd70088}.invitation-card .game-mj,.invitation-card .game-name{color:#fff;font-weight:600;margin-bottom:8px}.invitation-card .status-accepted{background:gold;border:none;border-radius:1.2em;box-shadow:0 2px 8px #4ecdc455;color:#232b3a;display:inline-block;font-size:1em;font-weight:700;letter-spacing:1px;margin:10px 0 16px;padding:7px 22px}.invitation-card p{color:#b8f6f6;font-size:1.08em;margin:0 0 8px}.invitation-card strong{color:#fff;font-weight:700}.game-name{font-size:1.2rem;font-weight:700;margin-bottom:8px}.game-mj{color:#b8b8b8;font-size:.9rem;margin-bottom:12px}.invitation-status{border-radius:15px;display:inline-block;font-size:.8rem;font-weight:700;margin-bottom:10px;padding:4px 10px}.status-pending{background:#ffa726;color:#000}.status-accepted{background:#4ecdc4;color:#000}.status-declined{background:#ff6b6b;color:#fff}.invitation-actions{gap:8px}.invitation-actions .button.submit{flex:1 1;font-size:.9rem;margin:0;padding:6px 12px}.characters-section{width:100%}.characters-section h4{border-bottom:2px solid gold;color:gold;font-size:1.3rem;margin-bottom:15px;padding-bottom:5px}.characters-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:15px}.character-card{border:1px solid gold;border-radius:8px;cursor:pointer;padding:15px;transition:all .3s ease}.character-card:hover{transform:translateY(-3px)}.character-name{color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:10px}.character-stats{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr;margin-bottom:12px}.stat-item{font-size:.85rem;justify-content:space-between}.stat-label{color:#b8b8b8}.stat-value{color:#fff;font-weight:700}.create-character-btn{align-items:center;border:2px dashed gold;border-radius:8px;color:#b8b8b8;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:30px 15px;text-align:center;transition:all .3s ease}.create-character-btn:hover{transform:translateY(-3px)}.create-character-btn .icon{font-size:2.5rem;margin-bottom:8px}.no-invitations{color:#b8b8b8;font-size:1rem;padding:30px}.no-invitations .icon{display:block;font-size:3rem;margin-bottom:15px;opacity:.5}.loading{color:#b8b8b8;padding:30px}.loading .spinner{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#8b85c1;height:30px;margin:0 auto 15px;width:30px}.modal-footer{margin-top:20px;text-align:center;width:100%}@media (max-width:768px){.player-modal{max-width:95vw;min-width:95vw}.characters-grid,.invitations-grid{grid-template-columns:1fr}.invitation-actions{flex-direction:column}}.options-card .password-input-container,.options-card input{box-sizing:border-box;display:block;margin:12px auto;max-width:90vw;min-width:220px;width:350px}.options-card .password-input-container{align-items:center;display:flex;margin:12px auto;padding:0;position:relative}.options-card .password-input-container input{flex:1 1;margin:0;width:100%}.options-card .password-toggle{background:none;border:none;color:#888;cursor:pointer;font-size:1.5em;padding:0 8px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.modal-footer .button.submit{display:block;margin:0 auto;max-width:90vw;width:300px}.admin-modal{background:#000;overflow-y:auto}.admin-header{border-bottom:2px solid #8b85c1;margin-bottom:20px;padding-bottom:15px;text-align:center}.admin-header h3{color:gold;font-size:1.5em;margin:0}.admin-content{display:flex;flex-direction:column;gap:25px}.admin-section{background:#8b85c11a;border:1px solid #8b85c14d;border-radius:10px;padding:20px}.admin-section h4{border-bottom:1px solid #8b85c14d;color:gold;font-size:1.2em;margin:0 0 15px;padding-bottom:8px}.search-section{margin-bottom:15px}.search-input{background:#281223cc;border:1px solid #8b85c1;border-radius:5px;color:#fff;font-size:14px;padding:10px;width:100%}.search-input:focus{border-color:gold;box-shadow:0 0 5px #ffd7004d;outline:none}.search-input::placeholder{color:#fff9}.search-loading{color:gold;font-size:14px;font-style:italic;margin-top:5px}.search-results{background:#281223e6;border:1px solid #8b85c14d;border-radius:5px;max-height:200px}.search-result-item{align-items:center;border-bottom:1px solid #8b85c133;display:flex;justify-content:space-between;padding:10px 15px;transition:background-color .2s ease}.search-result-item:hover{background:#8b85c11a}.search-result-item:last-child{border-bottom:none}.user-name{font-weight:500}.invite-btn{background:#8b85c1;border:none;border-radius:4px;color:#fff;font-size:12px;padding:6px 12px;transition:background-color .2s ease}.invite-btn:hover{background:#7a75b0}.invitations-list,.players-list{max-height:200px;overflow-y:auto}.invitation-item,.player-item{align-items:center;background:#ffd7001a;border:1px solid #8b85c133;border-radius:5px;display:flex;justify-content:space-between;margin-bottom:8px;padding:10px 15px}.invitation-info{gap:5px}.admin-player-info{align-items:center;display:flex;flex:1 1;flex-direction:row;gap:10px}.invited-user,.player-name{color:#fff;font-size:14px;font-weight:500}.player-name{min-width:80px}.invitation-status{border-radius:10px;font-size:12px;font-weight:500;padding:2px 8px;text-transform:uppercase}.invitation-status.pending{background:#ffd70033;color:gold}.invitation-status.accepted{background:#4caf5033;color:#4caf50}.invitation-status.declined{background:#f4433633;color:#f44336}.player-status{color:#4caf50;font-size:12px;font-style:italic}.player-email{color:#fff9;font-size:11px;font-style:italic}.player-character{color:gold;font-size:12px;font-style:italic;font-weight:500}.kick-btn,.revoke-btn{background:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s ease}.kick-btn:hover,.revoke-btn:hover{background:#d32f2f}.no-invitations,.no-players{color:#fff9;font-style:italic;padding:20px;text-align:center}.admin-invitations-btn{background:#0000004d;border:1px solid #ffd70044;border-radius:1.2em;color:gold;cursor:pointer;font-size:18px;margin-left:2px;padding:8px 12px;transition:background .2s,color .2s,border-color .2s,transform .15s}.admin-invitations-btn:hover{border-color:gold;color:#232b3a;transform:scale(1.08)}@media (max-width:768px){.admin-modal{margin:10px;max-width:95vw}.admin-content{gap:15px}.admin-section{padding:15px}.invitation-item,.player-item{align-items:flex-start;flex-direction:column;gap:10px}.kick-btn,.revoke-btn{align-self:flex-end}}.password-input-container{align-items:center;display:flex;font-size:1rem;padding:10px;width:100%}.password-toggle{border-radius:4px;font-size:16px;padding:4px;right:8px;transition:background-color .2s}.password-toggle:hover{background-color:#0000001a}.password-toggle:focus{background-color:#00000026;outline:none}.chat-window-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.chat-window{background:#2d2d2d;border:2px solid #ffd70055;border-radius:2vh;box-shadow:0 8px 32px #000c;display:flex;flex-direction:column;height:80vh;max-width:600px;width:90vw}.chat-header{align-items:center;background:#0000004d;border-bottom:1px solid #ffd70033;border-radius:2vh 2vh 0 0;display:flex;justify-content:space-between;padding:2vh 3vw}.chat-header-actions{align-items:center;display:flex;gap:1vw}.chat-invite-btn{align-items:center;background:none;border:1px solid #ffd70055;border-radius:1vh;color:gold;cursor:pointer;display:flex;font-size:1.8vh;justify-content:center;padding:.8vh 1.2vw;transition:all .3s ease}.chat-invite-btn:hover{background:#ffd70033;transform:scale(1.05)}.chat-friend-info{display:flex;flex-direction:column;gap:.5vh}.chat-friend-name{color:gold;font-size:1.6vh;font-weight:700;letter-spacing:1px;text-shadow:none}.chat-status{color:#0f0;font-size:1.2vh}.chat-close-btn{background:none;border:none;border-radius:50%;color:gold;cursor:pointer;font-size:2vh;padding:.5vh;transition:background .3s ease}.chat-close-btn:hover{background:#ffd70033}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:1.5vh;overflow-y:auto;padding:2vh 3vw}.chat-loading,.chat-no-messages{color:#ffd70088;font-style:italic;padding:4vh;text-align:center}.chat-message{display:flex;margin-bottom:1vh}.chat-message.own{justify-content:flex-end}.chat-message.other{justify-content:flex-start}.chat-message-content{border-radius:2vh;max-width:70%;padding:1.5vh 2vw;position:relative}.chat-message.own .chat-message-content{background:#ffd70033;border:1px solid #ffd70055;border-radius:2vh 2vh .5vh 2vh}.chat-message.other .chat-message-content{background:#0009;border:1px solid #ffd70033;border-radius:2vh 2vh 2vh .5vh}.chat-message-text{word-wrap:break-word;color:#fff;font-size:1.4vh;line-height:1.4}.chat-message-footer{align-items:center;display:flex;justify-content:space-between;margin-top:.5vh}.chat-message-time{color:#ffd70088;font-size:1vh}.chat-delete-btn{background:none;border:none;border-radius:50%;color:#ff6b6b;cursor:pointer;font-size:1.2vh;opacity:.7;padding:.2vh;transition:all .3s ease}.chat-delete-btn:hover{background:#ff6b6b33;opacity:1;transform:scale(1.1)}.chat-input-form{background:#0000004d;border-radius:0 0 2vh 2vh;border-top:1px solid #ffd70033;display:flex;gap:1vw;padding:2vh 3vw}.chat-input{background:#000000b3;border:1px solid #ffd70055;border-radius:1vh;color:#fff;flex:1 1;font-size:1.4vh;padding:1vh 1.5vw}.chat-input::placeholder{color:#ffd70088}.chat-input:focus{border-color:gold;box-shadow:0 0 0 2px #ffd70033;outline:none}.chat-send-btn{background:#000000b3;border:1px solid #ffd70055;border-radius:1vh;color:gold;cursor:pointer;font-size:1.4vh;min-width:4vw;padding:1vh 2vw;transition:all .3s ease}.chat-send-btn:hover:not(:disabled){background:#ffd70033;transform:scale(1.05)}.chat-send-btn:disabled{cursor:not-allowed;opacity:.5}.chat-invite-section{background:#0006;border-top:1px solid #ffd70033;max-height:30vh;overflow-y:auto}.chat-invite-header{align-items:center;border-bottom:1px solid #ffd70022;display:flex;justify-content:space-between;padding:1.5vh 2vw}.chat-invite-header h4{color:gold;font-size:1.4vh;font-weight:700;margin:0}.chat-invite-close-btn{background:none;border:none;border-radius:50%;color:gold;cursor:pointer;font-size:1.6vh;padding:.3vh;transition:background .3s ease}.chat-invite-close-btn:hover{background:#ffd70033}.chat-invite-content{padding:1.5vh 2vw}.chat-invite-games h5{color:gold;font-size:1.2vh;font-weight:700;margin:0 0 1vh}.chat-no-games{color:#ffd70088;font-size:1.2vh;font-style:italic;padding:2vh;text-align:center}.chat-games-list{display:flex;flex-direction:column;gap:1vh}.chat-game-item{align-items:center;background:#0000004d;border:1px solid #ffd70033;border-radius:1vh;display:flex;justify-content:space-between;padding:1vh 1.5vw;transition:all .3s ease}.chat-game-item:hover{background:#00000080;border-color:#ffd70055}.chat-game-name{color:#fff;font-size:1.3vh;font-weight:700}.chat-invite-game-btn{background:#ffd70033;border:1px solid #ffd70055;border-radius:.8vh;color:gold;cursor:pointer;font-size:1.2vh;font-weight:700;padding:.6vh 1.2vw;transition:all .3s ease}.chat-invite-game-btn:hover{background:#ffd7004d;transform:scale(1.05)}.game-invite-link{background:#ffd7001a;border:1px solid #ffd70055;border-radius:.5vh;color:gold;cursor:pointer;display:inline-block;font-weight:700;margin:.5vh 0;padding:.5vh 1vw;text-decoration:underline;transition:all .3s ease}.game-invite-link:hover{background:#ffd70033;color:orange;text-decoration:none;transform:scale(1.02)}@media (max-width:768px){.chat-window{height:90vh;width:95vw}.chat-message-content{max-width:85%}.chat-input-form{padding:1.5vh 2vw}.chat-send-btn{min-width:8vw}}.chat-invite-system-message{background:#3a3627;border:1.5px solid #ffd70088;border-radius:1.5vh;box-shadow:0 2px 8px #0000001f;color:#fff;font-size:1.3vh;margin:1vh 0;padding:2vh 2vw 1vh;position:relative}.chat-invite-system-message strong{color:#b39ddb;font-size:1.2em}.chat-invite-system-message .game-invite-link{background:#ffd70022;border:1px solid #ffd70088;border-radius:.7vh;color:gold;display:inline-block;font-size:1.1em;font-weight:700;margin:1vh 0;padding:.5vh 1vw;text-align:center;text-decoration:none;transition:all .2s}.chat-invite-system-message .game-invite-link:hover{background:#ffd70044;color:#b39ddb}.chat-invite-accept-btn,.chat-invite-revoke-btn{border:none;border-radius:.7vh;cursor:pointer;display:inline-block;font-size:1.1em;font-weight:700;margin-top:1vh;padding:.7vh 1.5vw;transition:background .2s,color .2s}.chat-invite-accept-btn{background:gold;color:#3a3627;margin-right:1vw}.chat-invite-accept-btn:hover{transform:scale(1.05)}.chat-invite-revoke-btn{background:#fff;border:1.5px solid #b71c1c;color:#b71c1c}.chat-invite-revoke-btn:hover{background:#b71c1c;color:#fff}.friends-menu{background:#2d2d2d;border:2px solid #ffd70055;border-radius:2vh;box-shadow:0 8px 32px #000c;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:90vw}.friends-menu-header{align-items:center;background:#0000004d;border-bottom:1px solid #ffd70033;border-radius:2vh 2vh 0 0;display:flex;justify-content:space-between;padding:2vh 3vw}.friends-menu-header h3{color:gold;font-size:1.8vh;font-weight:700;margin:0}.close-btn{background:none;border:none;border-radius:50%;color:gold;cursor:pointer;font-size:2vh;padding:.5vh;transition:background .3s ease}.close-btn:hover{background:#ffd70033}.friends-menu-tabs{background:#0003;border-bottom:1px solid #ffd70033;display:flex}.tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#fff;cursor:pointer;flex:1 1;font-size:1.4vh;padding:1.5vh 1vw;transition:all .3s ease}.tab-btn.active{background:#ffd7001a;border-bottom-color:gold;color:gold}.tab-btn:hover:not(.active){background:#ffffff1a}.friends-menu-content{flex:1 1;overflow-y:auto;padding:2vh 3vw}.friends-menu-content::-webkit-scrollbar{width:.8vw}.friends-menu-content::-webkit-scrollbar-track{background:#0000004d;border-radius:.5vh}.friends-menu-content::-webkit-scrollbar-thumb{background:#ffd70055;border-radius:.5vh}.friends-menu-content::-webkit-scrollbar-thumb:hover{background:#ffd70088}.loading{font-style:italic;padding:4vh}.add-friend-section{margin-bottom:3vh}.add-friend-input{background:#000c;border:1px solid #ffd70055;border-radius:1vh;color:#fff;font-size:1.4vh;margin-bottom:1vh;padding:1vh;width:100%}.add-friend-input::placeholder,.search-hint{color:#ffd70088}.search-hint{font-size:1.2vh;font-style:italic;padding:.5vh 0;text-align:center}.search-results{background:#000c;border:1px solid #ffd70033;border-radius:1vh;max-height:25vh;overflow-y:auto;padding:.5vh}.search-results::-webkit-scrollbar{width:.8vw}.search-results::-webkit-scrollbar-track{background:#0000004d;border-radius:.5vh}.search-results::-webkit-scrollbar-thumb{background:#ffd70055;border-radius:.5vh}.search-results::-webkit-scrollbar-thumb:hover{background:#ffd70088}.search-result{align-items:center;border-bottom:1px solid #ffd70022;border-radius:.5vh;display:flex;justify-content:space-between;margin-bottom:.3vh;padding:1.2vh 1.5vw;transition:background .3s ease}.search-result:hover{background:#ffd70026}.search-result:last-child{border-bottom:none;margin-bottom:0}.search-result span{color:#fff;flex:1 1;font-size:1.3vh;font-weight:500;margin-right:1vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-friend-btn{background:#000c;border:1px solid #ffd70055;border-radius:.5vh;color:gold;cursor:pointer;font-size:1.2vh;font-weight:500;min-width:6vw;padding:.6vh 1.2vw;text-align:center;transition:all .3s ease}.add-friend-btn:hover{background:#ffd70033;box-shadow:0 0 10px #ffd7004d;transform:scale(1.05)}.friends-list{max-height:30vh;overflow-y:auto;padding-right:.5vw}.friends-list::-webkit-scrollbar{width:.8vw}.friends-list::-webkit-scrollbar-track{background:#0000004d;border-radius:.5vh}.friends-list::-webkit-scrollbar-thumb{background:#ffd70055;border-radius:.5vh}.friends-list::-webkit-scrollbar-thumb:hover{background:#ffd70088}.friend-item{align-items:center;border-bottom:1px solid #ffd70022;border-radius:.5vh;display:flex;justify-content:space-between;margin-bottom:.3vh;padding:1.5vh 1.5vw;transition:all .3s ease}.friend-item:hover{background:#ffd7001a;box-shadow:0 2px 8px #ffd7001a;transform:translateX(.3vw)}.friend-item:last-child{border-bottom:none;margin-bottom:0}.friend-info{display:flex;flex-direction:column;gap:.5vh}.friend-name{color:#fff;font-size:1.4vh;font-weight:500}.friend-status{color:gold;font-size:1.2vh}.friend-actions{align-items:center;display:flex;gap:.5vw}.chat-friend-btn{background:none;border:none;border-radius:50%;color:gold;cursor:pointer;font-size:1.6vh;padding:.5vh;transition:background .3s ease}.chat-friend-btn:hover{background:#ffd70033;transform:scale(1.1)}.remove-friend-btn{background:none;border:none;border-radius:50%;color:#c0392b;cursor:pointer;font-size:1.6vh;padding:.5vh;transition:background .3s ease}.remove-friend-btn:hover{background:#c0392b33}.no-friends{color:gold;font-style:italic;padding:4vh;text-align:center}.invitations-tab{max-height:40vh;overflow-y:auto;padding-right:.5vw}.invitations-tab::-webkit-scrollbar{width:.8vw}.invitations-tab::-webkit-scrollbar-track{background:#0000004d;border-radius:.5vh}.invitations-tab::-webkit-scrollbar-thumb{background:#ffd70055;border-radius:.5vh}.invitations-tab::-webkit-scrollbar-thumb:hover{background:#ffd70088}.invitation-item{align-items:center;border-bottom:1px solid #ffd70022;border-radius:.5vh;display:flex;justify-content:space-between;margin-bottom:.3vh;padding:1.5vh 1.5vw;transition:background .3s ease}.invitation-item:hover{background:#ffd7001a;box-shadow:0 2px 8px #ffd7001a;transform:translateX(.3vw)}.invitation-item:last-child{border-bottom:none;margin-bottom:0}.invitation-info{display:flex;flex-direction:column;gap:.5vh}.invitation-from{color:#fff;font-size:1.4vh;font-weight:500}.invitation-game,.invitation-type{color:gold;font-size:1.2vh}.invitation-type{font-weight:500}.invitation-date{color:#ffd70088;font-size:1vh;font-style:italic}.invitation-actions{display:flex;gap:1vw}.accept-btn,.decline-btn{border:1px solid;border-radius:.5vh;cursor:pointer;font-size:1.2vh;padding:.5vh 1vw;transition:all .3s ease}.accept-btn{background:#2ecc7133;border-color:#2ecc71;color:#2ecc71}.accept-btn:hover{background:#2ecc714d;transform:scale(1.05)}.decline-btn{background:#e74c3c33;border-color:#e74c3c;color:#e74c3c}.decline-btn:hover{background:#e74c3c4d;transform:scale(1.05)}.no-invitations{color:gold;font-style:italic;padding:4vh;text-align:center}.sent-invitations-tab{max-height:40vh;overflow-y:auto;padding-right:.5vw}.sent-invitations-tab::-webkit-scrollbar{width:.8vw}.sent-invitations-tab::-webkit-scrollbar-track{background:#0000004d;border-radius:.5vh}.sent-invitations-tab::-webkit-scrollbar-thumb{background:#ffd70055;border-radius:.5vh}.sent-invitations-tab::-webkit-scrollbar-thumb:hover{background:#ffd70088}.sent-invitation-item{border-bottom:1px solid #ffd70022;border-radius:.5vh;margin-bottom:.3vh;padding:1.5vh 1.5vw;transition:background .3s ease}.sent-invitation-item:hover{background:#ffd7001a;box-shadow:0 2px 8px #ffd7001a;transform:translateX(.3vw)}.sent-invitation-item:last-child{border-bottom:none;margin-bottom:0}.sent-invitation-info{display:flex;flex-direction:column;gap:.5vh}.sent-invitation-to{color:#fff;font-size:1.4vh;font-weight:500}.sent-invitation-game{color:gold;font-size:1.2vh}.sent-invitation-status{font-size:1.2vh;font-weight:500}.sent-invitation-status.pending{color:#f39c12}.sent-invitation-status.accepted{color:#2ecc71}.sent-invitation-status.declined{color:#e74c3c}.no-sent-invitations{color:gold;font-style:italic;padding:4vh;text-align:center}.sent-friend-requests-tab{background:#0009!important;border:none!important;border-radius:3vh!important;box-shadow:none!important;color:#fff;max-height:40vh;overflow-y:auto;padding:2vh 2.5vw 2vh 2vw}.sent-friend-requests-tab::-webkit-scrollbar{width:.8vw}.sent-friend-requests-tab::-webkit-scrollbar-track{background:#0000004d;border-radius:.5vh}.sent-friend-requests-tab::-webkit-scrollbar-thumb{background:#ffd70055;border-radius:.5vh}.sent-friend-requests-tab::-webkit-scrollbar-thumb:hover{background:#ffd70088}.sent-friend-request-item{align-items:center;border:2px solid #ffd70055;border-radius:2vh;box-shadow:none!important;display:flex;justify-content:space-between;margin-bottom:1.5vh;padding:2vh 2vw;transition:all .3s ease}.sent-friend-request-item:hover{border-color:#ffd70088;transform:scale(1.02)}.sent-friend-request-item:last-child{margin-bottom:0}.sent-friend-request-info{display:flex;flex:1 1;flex-direction:column;gap:.8vh;width:100%}.sent-friend-request-to{color:gold;font-size:1.4vh;font-weight:700;letter-spacing:1px;margin:0;text-shadow:none}.sent-friend-request-status{color:gold;font-size:1.2vh;font-weight:500;letter-spacing:.5px;text-shadow:none}.sent-friend-request-status.pending{color:orange}.sent-friend-request-status.accepted{color:#0f0}.sent-friend-request-status.declined{color:#f44}.sent-friend-request-date{color:#ffd70088;font-size:1vh;font-style:italic;text-shadow:none}.no-sent-requests{background:#000c!important;border-radius:3vh!important;color:#ffd70088;font-style:italic;margin:2vh 0;padding:4vh;text-align:center}@media (max-width:768px){.friends-menu{max-height:90vh;width:95vw}.friends-menu-tabs{flex-direction:column}.tab-btn{font-size:1.2vh;padding:2vh 1vw}.invitation-actions{flex-direction:column;gap:.5vh}.search-results{max-height:20vh}.friends-list{max-height:25vh}.search-result span{font-size:1.2vh}.add-friend-btn{font-size:1.1vh;min-width:8vw;padding:.5vh 1vw}.friend-actions{gap:.3vw}.chat-friend-btn,.remove-friend-btn{font-size:1.4vh}.invitations-tab,.sent-invitations-tab{max-height:30vh}.sent-friend-requests-tab{max-height:35vh}.friend-item,.invitation-item,.sent-invitation-item{margin-bottom:.2vh;padding:1.2vh 1.2vw}.search-result{margin-bottom:.2vh;padding:1vh 1.2vw}.game-invites-tab{max-height:35vh}}.game-invites-tab{max-height:40vh;overflow-y:auto;padding-right:.5vw}.game-invites-tab::-webkit-scrollbar{width:.8vw}.game-invites-tab::-webkit-scrollbar-track{background:#0000004d;border-radius:.5vh}.game-invites-tab::-webkit-scrollbar-thumb{background:#ffd70055;border-radius:.5vh}.game-invites-tab::-webkit-scrollbar-thumb:hover{background:#ffd70088}.game-invites-section{margin-bottom:3vh}.game-invites-info h4{color:gold;font-size:1.6vh;margin-bottom:2vh;text-align:center}.games-list{display:flex;flex-direction:column;gap:1vh}.game-item{align-items:center;background:#0000004d;border:1px solid #ffd70055;border-radius:1vh;display:flex;justify-content:space-between;padding:1.5vh 1.5vw;transition:all .3s ease}.game-item:hover{background:#ffd7001a;transform:translateX(.3vw)}.game-name{color:#fff;font-size:2.5vh;font-weight:500}.game-status{color:#0f0;font-size:1.1vh;font-style:italic}.no-games{color:#ffd70088;font-style:italic;padding:4vh;text-align:center}.invite-buttons{display:flex;flex-wrap:wrap;gap:.5vw}.invite-btn{background:#000c;border:1px solid #ffd70055;border-radius:.5vh;color:gold;cursor:pointer;font-size:1.1vh;padding:.5vh 1vw;transition:all .3s ease;white-space:nowrap}.invite-btn:hover{background:#ffd70033;box-shadow:0 0 10px #ffd7004d;transform:scale(1.05)}.invitations-section{margin-bottom:3vh}.invitations-section h4{border-bottom:1px solid #ffd70033;color:gold;font-size:1.6vh;font-weight:700;margin:0 0 2vh;padding:1vh 0}.invitation-item.sent{background:#ffd7000d;border-left:3px solid gold}.invitation-status{align-items:center;display:flex}.status-pending{color:gold;font-size:1.2vh;font-weight:700}.status-accepted{color:#4caf50;font-size:1.2vh;font-weight:700}.status-declined{color:#f44336;font-size:1.2vh;font-weight:700}.invitation-btn{border:none;border-radius:.5vh;cursor:pointer;font-size:1.2vh;margin:0 .5vh;padding:.5vh 1vh;transition:all .2s ease}.accept-btn{background:#4caf50;color:#fff}.accept-btn:hover{background:#45a049}.decline-btn{background:#f44336;color:#fff}.decline-btn:hover{background:#da190b}.cancel-btn{background:#ffffff1a;color:#fff}.cancel-btn:hover{background:#fff3}.profile-card{background:#000c;border-radius:15px;box-shadow:0 10px 30px #00000080;color:#fff;max-height:80vh;max-width:500px;overflow-y:auto;padding:30px;position:relative;width:90%}.profile-header{border-bottom:2px solid gold;margin-bottom:30px;padding-bottom:20px;text-align:center}.profile-header h2{color:gold;font-size:24px;letter-spacing:2px;margin:0;text-transform:uppercase}.profile-section{margin-bottom:25px}.profile-section h3{border-left:3px solid gold;color:gold;font-size:18px;margin-bottom:15px;padding-left:10px}.profile-info{background:#ffffff1a;border:1px solid gold;border-radius:8px;margin-bottom:15px;padding:15px}.profile-info p{align-items:center;display:flex;justify-content:space-between;margin:8px 0}.profile-info strong{color:gold;min-width:120px}.profile-form{gap:15px}.form-group,.profile-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:gold;font-size:14px;font-weight:700}.form-group input{background:#ffffff1a;border:1px solid gold;border-radius:5px;color:#fff;font-size:14px;padding:12px;transition:all .3s ease}.form-group input:focus{border-color:gold;box-shadow:0 0 10px #4a90e24d;outline:none}.form-group input::placeholder{color:#fff9}.password-input-container{position:relative}.password-toggle{align-items:center;background:none;border:none;color:gold;cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;padding:0;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:20px}.password-toggle:hover{color:gold}.profile-buttons{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px}.profile-button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;letter-spacing:1px;min-width:120px;padding:12px 20px;text-transform:uppercase;transition:all .3s ease}.button-primary{background:gold!important;color:#000}.button-primary:hover{transform:translateY(-2px)}.button-secondary{background:gold!important;color:#000}.button-secondary:hover{transform:translateY(-2px)}.button-danger{background:#d22c2c!important;color:#000}.button-danger:hover{transform:translateY(-2px)}.button-close{background:linear-gradient(135deg,#6c757d,#5a6268);background:gold!important;color:#000}.button-close:hover{transform:translateY(-2px)}.error-message{background:#dc35451a;border:1px solid #dc3545;border-radius:5px;color:#dc3545}.error-message,.success-message{font-size:14px;margin:10px 0;padding:10px}.success-message{background:#28a7451a;border:1px solid #28a745;border-radius:5px;color:#28a745}.availability-indicator{align-items:center;display:flex;font-size:12px;gap:8px;margin-top:5px}.availability-indicator.available{color:#28a745}.availability-indicator.unavailable{color:#dc3545}.availability-indicator.checking{color:#ffc107}.availability-indicator .indicator-dot{border-radius:50%;height:8px;width:8px}.availability-indicator.available .indicator-dot{background:#28a745}.availability-indicator.unavailable .indicator-dot{background:#dc3545}.availability-indicator.checking .indicator-dot{animation:pulse 1.5s infinite;background:#ffc107}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.confirmation-modal{align-items:center;background:#000000e6;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1100}.confirmation-card{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);border:2px solid #dc3545;border-radius:15px;color:#fff;max-width:400px;padding:30px;text-align:center;width:90%}.confirmation-card h3{color:#dc3545;margin-bottom:20px}.confirmation-card p{line-height:1.5;margin-bottom:25px}.confirmation-buttons{display:flex;gap:15px;justify-content:center}.loading{color:#4a90e2;gap:10px}.spinner{border:2px solid #4a90e24d;border-top-color:#4a90e2;height:20px;width:20px}@media (max-width:768px){.profile-card{margin:20px;padding:20px}.profile-buttons{flex-direction:column}.profile-button{min-width:auto}}.profile-card::-webkit-scrollbar{width:8px}.profile-card::-webkit-scrollbar-track{background:#000c;border-radius:4px}.profile-card::-webkit-scrollbar-thumb{background:gold;border-radius:4px}.profile-card::-webkit-scrollbar-thumb:hover{background:#ffed4e}.profile-card{scrollbar-color:gold #000c;scrollbar-width:thin}.admin-page{align-items:center;background-color:initial;display:flex;flex-direction:column;min-height:100vh;position:relative;text-align:center}.overlay-admin-page{background-color:#00000080;height:100%;position:absolute;width:100%;z-index:3}.return-button{background-color:#000c;border:none;color:#fff;cursor:pointer;left:3vh;position:absolute;top:3vh}.return-button:hover{background-color:#000}.search-bar{border:none;border-radius:1vh;font-size:1rem;margin-bottom:2vh;margin-top:2vh;padding:2vh}.items{align-items:center;display:flex;flex-direction:column;max-width:90%}.items-container{display:flex;flex-wrap:wrap;gap:2vh;justify-content:center;margin-top:2vh;padding:1vh;width:100%}.item-card{align-items:center;background-color:#313131cc;border-radius:1vh;color:#fff;cursor:pointer;display:flex;flex:0 0 20%;justify-content:space-between;min-height:60px;padding:2vh}.item-card:hover{background-color:#313131}.item-card>div{align-items:center;display:flex;gap:10px;justify-content:space-between;width:100%}.item-card>div>div:first-child{align-items:center;display:flex;flex:1 1;gap:8px}.item-card>div>div:first-child>span:first-child{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-card>div>div:first-child>span:last-child{color:gold;opacity:.8;white-space:nowrap}.action-card{background-color:#313131cc;border:.2vh solid #000c;border-radius:1vh;display:flex;flex-direction:column;justify-content:space-between;margin:2.5% 2vh 2vh;max-height:80vh;min-width:80vh;overflow:auto;padding:5vh;position:absolute;z-index:3}.action-card h2{color:gold;margin-bottom:2vh}.stat-button{margin-top:2vh}.action-card form{align-items:center;display:flex;flex-direction:column;flex-grow:1;gap:2vh;justify-content:space-between}.stat-entry{width:100%}.admin-page textarea{border-radius:2vh;height:12.5vh;width:100%}.action-card form input{border:.2vh solid #000c;border-radius:2vh;box-sizing:border-box;padding:2vh;width:100%}.action-card form button{background-color:#000c;border:none;border-radius:2vh;color:#fff;cursor:pointer;padding:2vh}.action-card form button:hover{background-color:#7a6f9b}.title{color:gold;font-size:2em;margin-bottom:3vh}.info{color:#fff;font-size:1.5em;position:relative;top:30%}.button{background-color:#000c;border:none;border-radius:2vh;color:#fff;cursor:pointer;font-size:1.3em;padding:2vh 4vh;transition:background-color .3s ease}.button:hover{background-color:#000}.button.submit{align-self:center;background:gold;border:none;border-radius:1vh;color:#000;cursor:pointer;flex-shrink:0;margin:1vh;padding:1vh 2vh;width:80%}.button.create-button{text-align:center}.button.close-button{display:flex;font-size:1em;margin-top:-3vh;padding:1vh 2vh;position:absolute}.menu-container{align-items:flex-end;display:flex;flex-direction:column;position:absolute;right:3vh;top:3vh}.menu-button:hover{background-color:#000}.dropdown-menu{background-color:#000c;border:.2vh solid #000c;border-radius:1vh;display:none;flex-direction:column;margin-top:2vh;overflow:hidden;z-index:1}.menu-container:hover .dropdown-menu{display:flex}.dropdown-menu button{background:none;border:none;color:#fff;cursor:pointer;font-size:1em;padding:2vh 4vh;text-align:left}.dropdown-menu button:hover{background-color:#000}.action-card .button-container{display:flex;flex-direction:column;gap:1.5vh}.quantity-popup{background-color:#fff;border-radius:1vh;padding:5vh;text-align:center;z-index:4}.quantity-popup h2{color:#000c;margin:5vh}.confirm-button{background-color:#4caf50;border:none;border-radius:1vh;color:#fff;cursor:pointer;font-size:.8em;margin:2vh;padding:2vh 4vh}.quantity-content{display:inline-block;width:80%}.monitoring-nav{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin:20px 0}.monitoring-btn{background-color:gold;border:none;border-radius:1vh;color:#232b3a;cursor:pointer;font-size:1.95vh;font-weight:700;padding:1.125vh 2.25vh;transition:transform .2s}.monitoring-btn:hover{transform:scale(1.05)}.modal-action-card{animation:modalFadeIn .2s ease-out;background:#313131cc;border:2px solid gold;border-radius:15px;box-shadow:0 10px 30px #000c;left:50%;max-width:400px;min-width:300px;padding:25px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:4}@keyframes modalFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.modal-action-card h2{color:gold;font-size:1.4em;margin:0 40px 20px 0;text-align:center;text-shadow:0 0 10px #ffd7004d}.modal-action-card .close-button{align-items:center;border:2px solid #fff!important;border-radius:50%!important;box-shadow:0 2px 8px #e74c3c66;cursor:pointer;display:flex;font-size:.8em;font-weight:700;height:24px!important;justify-content:center;margin:0;padding:0!important;position:absolute;right:8px;top:8px;transition:all .3s ease;width:24px!important}.modal-action-card .close-button:hover{transform:scale(1.15)}.modal-action-card .button{border:none;border-radius:8px;cursor:pointer;font-size:1em;font-weight:700;margin-bottom:10px;padding:12px 20px;text-align:center;transition:all .3s ease;width:100%}.modal-action-card .button.submit{background:linear-gradient(135deg,#4caf50,#45a049);box-shadow:0 4px 15px #4caf504d;color:#fff}.modal-action-card .button.submit:hover{box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.modal-action-card .button.submit:last-child{background:linear-gradient(135deg,gold,orange);box-shadow:0 4px 15px #ffd7004d;color:#2a2a2a}.modal-action-card .button.submit:last-child:hover{box-shadow:0 6px 20px #ffd70066;transform:translateY(-2px)}@media (max-width:768px){.modal-action-card{margin:20px;max-width:90vw;min-width:280px}}.global-store-detail-overlay{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:3}.global-store-detail-modal{animation:modalSlideIn .3s ease-out;background:linear-gradient(135deg,#2a2a2a,#3a3a3a);border:2px solid gold;border-radius:15px;box-shadow:0 10px 30px #ffd7004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.detail-header{align-items:center;background:linear-gradient(90deg,#8b85c133,#8b85c11a);border-bottom:1px solid #ffd7004d;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 25px;z-index:10}.detail-header h2{color:gold;font-size:1.8em;margin:0;text-shadow:0 0 10px #ffd70080}.close-button{align-items:center;background:none;border-radius:50%;color:gold;display:flex;font-size:2em;height:40px;justify-content:center;padding:0;transition:all .3s ease;width:40px}.close-button:hover{background-color:#ffd70033;transform:scale(1.1)}.detail-content{flex:1 1;overflow-y:auto;padding:25px}.item-info{margin-bottom:30px}.global-store-detail-info-section{background:#8b85c11a;border-left:4px solid gold;border-radius:10px;margin-bottom:25px;padding:20px}.global-store-detail-info-section h3{color:gold;font-size:1.3em;letter-spacing:1px;margin:0 0 15px;text-transform:uppercase}.detail-field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.field-label{color:gold;font-size:.9em;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.field-value{background:#ffffff1a;border:1px solid #ffd70033;border-radius:6px;color:#fff;font-size:1em;line-height:1.4;padding:8px 12px}.stat-list{display:flex;flex-wrap:wrap;gap:10px}.stat-item{align-items:center;background:#8b85c133;border:1px solid #8b85c166;border-radius:20px;display:flex;gap:8px;padding:6px 12px}.stat-name{color:#8b85c1;font-size:.9em;font-weight:700}.stat-bonus{color:gold;font-weight:700}.user-info{display:flex;flex-direction:column;gap:4px}.user-name{color:#fff;font-size:1.1em;font-weight:700}.user-email{color:#ccc;font-size:.9em;font-style:italic}.creator-info{margin-bottom:10px}.category-specific-info{border-top:1px solid #ffd70033;margin-top:15px;padding-top:15px}.category-specific-info .detail-field{background:#8b85c126;border-left:3px solid #8b85c1;border-radius:8px;margin-bottom:8px;padding:8px 12px}.category-specific-info .field-label{color:#8b85c1;font-size:.85em;font-weight:700}.category-specific-info .field-value{background:#8b85c11a;border:1px solid #8b85c14d}.action-buttons{border-top:1px solid #ffd7004d;gap:15px;justify-content:center;padding-top:20px}.import-button{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:25px;box-shadow:0 4px 15px #4caf504d;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;padding:12px 25px;transition:all .3s ease}.import-button:hover{box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.cancel-button{background:linear-gradient(135deg,#38182f,#281223);border:none;border-radius:25px;box-shadow:0 4px 15px #38182f4d;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;padding:12px 25px;transition:all .3s ease}.cancel-button:hover{box-shadow:0 6px 20px #38182f66;transform:translateY(-2px)}@media (max-width:768px){.global-store-detail-modal{margin:10px;max-height:95vh}.detail-header{padding:15px 20px}.detail-header h2{font-size:1.5em}.detail-content{padding:20px}.action-buttons{flex-direction:column;gap:10px}.cancel-button,.import-button{width:100%}}.global-store-filters{background:#0009;border:2px solid gold;border-radius:15px;box-shadow:0 5px 15px #ffd70033;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;left:20px;max-height:calc(100vh - 160px);overflow-y:auto;padding:20px;position:fixed;top:120px;transition:all .3s ease;width:12vw;z-index:1000}.filters-header{border-bottom:1px solid #ffd7004d;margin-bottom:20px;padding-bottom:15px;position:relative;text-align:center}.filters-toggle-button{align-items:center;background:gold;border:none;border-radius:50%;box-shadow:0 2px 5px #0000004d;color:#2a2a2a;cursor:pointer;display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;position:absolute;right:-10px;top:50%;transform:translateY(-50%);transition:all .3s ease;width:20px}.filters-toggle-button:hover{background:orange;transform:translateY(-50%) scale(1.1)}.filters-header h3{color:gold;font-size:1.3em;letter-spacing:1px;margin:0;text-transform:uppercase}.filter-section{margin-bottom:20px}.filter-label{color:gold;display:block;font-size:.9em;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.filter-input,.filter-select{background:#ffffff1a;border:1px solid #ffd7004d;border-radius:6px;box-sizing:border-box;color:#fff;font-size:.85em;padding:8px 10px;transition:all .3s ease;width:calc(100% - 24px)}.filter-input:focus,.filter-select:focus{border-color:gold;box-shadow:0 0 10px #ffd7004d;outline:none}.filter-input::placeholder{color:#fff9}.filter-select option{background:#2a2a2a;color:#fff}.filter-toggle{align-items:center;display:flex;gap:10px}.filter-checkbox{accent-color:gold;cursor:pointer;height:18px;width:18px}.filter-checkbox-label{color:#fff;cursor:pointer;font-size:.9em;line-height:1.4;-webkit-user-select:none;user-select:none}.filter-reset-button{background:linear-gradient(135deg,#38182f,#281223);border:none;border-radius:8px;box-shadow:0 2px 8px #38182f4d;color:#fff;cursor:pointer;font-size:.9em;font-weight:700;padding:12px 20px;transition:all .3s ease;width:100%}.filter-reset-button:hover{box-shadow:0 4px 12px #38182f66;transform:translateY(-1px)}@media (max-width:768px){.global-store-filters{left:auto;margin-bottom:20px;max-height:none;position:relative;top:auto;width:100%}}.monitoring-dashboard,body{background:#0000;color:#fff;font-family:Arial,sans-serif;min-height:100vh}.monitoring-dashboard p{color:#fff!important;font-size:1.85vh!important;line-height:3vh!important;margin:.8vh 0!important}.monitoring-dashboard strong{color:gold!important}.anomaly-detail-section p{color:#fff!important;font-size:1.85vh!important;line-height:3vh!important;margin:.8vh 0!important}.anomaly-detail-section strong{color:gold!important}.anomaly-modal-content p{color:#fff!important;font-size:1.85vh!important;line-height:3vh!important;margin:.8vh 0!important}.anomaly-modal-content strong{color:gold!important}.anomalies-list{max-height:60vh;overflow-x:hidden;overflow-y:auto;padding-right:10px}.anomalies-list::-webkit-scrollbar{width:12px}.anomalies-list::-webkit-scrollbar-track{background:#3131314d;border-radius:6px}.anomalies-list::-webkit-scrollbar-thumb{background:gold;border:2px solid #3131314d;border-radius:6px}.anomalies-list::-webkit-scrollbar-thumb:hover{background:#ffed4e}.dashboard-header{align-items:center;background:#313131cc;border-radius:2vh;box-shadow:0 4px 24px #000a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.dashboard-header h1{color:gold;font-size:4.5vh;font-weight:700;margin:0;text-shadow:none}.dashboard-controls{display:flex;gap:15px}.metrics-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:30px}.metric-card,.recommendations-card{background:#313131cc;border:none;border-radius:2vh;box-shadow:0 8px 32px #000a;color:#fff;padding:28px}.metric-card h3,.recommendations-card h3{color:gold;font-size:2.25vh;font-weight:700;margin-bottom:18px;text-shadow:none}.endpoint-row,.error-row,.game-connection,.metric-row{align-items:center;border-bottom:1px solid #ffd70044;display:flex;justify-content:space-between;padding:10px 0}.endpoint-row:last-child,.error-row:last-child,.game-connection:last-child,.metric-row:last-child{border-bottom:none}.metric-value{color:gold;font-size:1.1em;font-weight:700}.metric-value.error{color:#ff6b6b}.no-data{font-style:italic}.dashboard-footer,.no-data{color:#ffd70088;text-align:center}.dashboard-footer{background:#313131cc;border-radius:2vh;margin-top:32px;padding:20px}.loading{color:gold;font-size:1.2em;text-align:center}.recommendations-card ul{padding-left:1.2em}.recommendations-card li{color:#fff;font-size:1.1em;margin-bottom:1em}.recommendations-card strong{color:gold}@media (max-width:900px){.metrics-grid{grid-template-columns:1fr}}@media (max-width:600px){.dashboard-header{flex-direction:column;gap:1em;padding:12px}.metrics-grid{gap:16px}.metric-card,.recommendations-card{padding:14px}}.anomalies-btn{background-color:gold;border:none;border-radius:1vh;color:#232b3a;cursor:pointer;font-size:1.95vh;font-weight:700;padding:1.125vh 2.25vh;transition:transform .2s}.anomalies-btn:hover{transform:scale(1.05)}.anomalies-btn.active{background-color:gold;box-shadow:0 0 20px gold}.anomalies-section{background:#313131cc;border-radius:2vh;box-shadow:0 8px 32px #000a;color:#fff;margin:40px 0;max-width:100%;overflow:hidden;padding:35px}.anomalies-section h3{color:gold;font-size:2.25vh;font-weight:700;margin-bottom:18px;text-shadow:none}.anomalies-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:28px}.stat-card{background:#313131e6;border:2px solid gold;border-radius:1.5vh;box-shadow:0 4px 16px #000a;color:gold;cursor:pointer;overflow:hidden;padding:20px;position:relative;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 25px #ffd7004d;transform:translateY(-5px)}.stat-card.active-filter{background:#ffd7001a;border:2px solid gold;box-shadow:0 8px 25px #ffd70066;transform:translateY(-5px)}.stat-card.active-filter:before{color:gold;content:"✓";font-size:1.2em;font-weight:700;position:absolute;right:10px;top:10px}.stat-number{color:gold;display:block;font-size:3vh;font-weight:700;margin-bottom:8px}.stat-label{color:#fff;font-size:1.4vh;opacity:.9}.anomalies-list{display:flex;flex-direction:column;gap:30px}.anomaly-card{word-wrap:break-word;background:#313131e6;border:1px solid #ffd70044;border-radius:1.5vh;box-shadow:0 4px 16px #000a;color:#fff;padding:25px;transition:transform .2s}.anomaly-card:hover{box-shadow:0 6px 24px #000a;transform:scale(1.02)}.anomaly-card.resolved{background-color:#31313199;opacity:.6}.anomaly-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:22px}.anomaly-info h4{color:gold;font-size:1.8vh;font-weight:700;margin-bottom:12px}.priority-badge{border-radius:1vh;display:inline-block;font-size:1.2vh;font-weight:700;margin-right:12px;padding:8px 12px;text-transform:uppercase}.priority-haute{background-color:#e74c3c;border:1px solid #c0392b;color:#fff}.priority-moyenne{background-color:#f39c12;border:1px solid #e67e22;color:#fff}.priority-basse{background-color:#27ae60;border:1px solid #229954;color:#fff}.status-badge{border-radius:1vh;display:inline-block;font-size:1.2vh;font-weight:700;padding:8px 12px;text-transform:uppercase}.status-nouvelle{background-color:#3498db;border:1px solid #2980b9;color:#fff}.status-en-cours{background-color:#f39c12;border:1px solid #e67e22;color:#fff}.status-résolue{background-color:#27ae60;border:1px solid #229954;color:#fff}.anomaly-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.anomaly-actions button{border:none;border-radius:1vh;cursor:pointer;font-size:1.4vh;font-weight:700;padding:12px 16px;text-transform:uppercase;transition:transform .2s}.view-btn{background-color:#3498db;color:#fff}.view-btn:hover{background-color:#2980b9;transform:scale(1.05)}.status-btn{background-color:#f39c12;color:#fff}.status-btn:hover{background-color:#e67e22;transform:scale(1.05)}.resolve-btn{background-color:#27ae60;color:#fff}.resolve-btn:hover{background-color:#229954;transform:scale(1.05)}.delete-btn{background-color:#e74c3c;color:#fff}.delete-btn:hover{background-color:#c0392b;transform:scale(1.05)}.anomaly-details{color:#fff;font-size:1.4vh;overflow-wrap:break-word;word-break:break-word}.anomaly-details p{border-bottom:1px solid #ffd70022;margin:12px 0;padding:10px 0}.anomaly-details p:last-child{border-bottom:none}.anomaly-details strong{color:gold}.no-anomalies{color:#ffd70088;font-size:1.6vh;font-style:italic;padding:40px;text-align:center}.anomaly-modal-overlay{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.anomaly-modal{background:#313131f2;border:2px solid gold;border-radius:2vh;box-shadow:0 10px 25px #000c;color:#fff;max-height:80vh;max-width:40%;overflow-y:auto;width:90%}.anomaly-modal-header{align-items:center;border-bottom:2px solid #ffd70044;display:flex;justify-content:space-between;padding:24px}.anomaly-modal-header h3{color:gold;font-size:2vh;font-weight:700;margin:0}.anomaly-close-btn{align-items:center;background:none;border:2px solid gold;border-radius:50%;color:gold;cursor:pointer;display:flex;font-size:2.5vh;height:40px;justify-content:center;padding:0;transition:transform .2s;width:40px}.anomaly-close-btn:hover{background-color:gold;color:#232b3a;transform:scale(1.1)}.anomaly-modal-content{padding:24px}.anomaly-detail-section{margin-bottom:28px}.anomaly-detail-section h4{color:gold;font-size:1.6vh;font-weight:700;margin-bottom:16px}.context-grid,.info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.context-grid>div,.info-grid>div{background:#313131cc;border-left:4px solid gold;border-radius:1vh;color:#fff;padding:16px}.context-grid strong,.info-grid strong{color:gold;font-weight:700}.steps-list{margin-left:20px}.steps-list li{color:#fff;font-size:1.3vh;margin-bottom:12px;padding:8px 0}.steps-list li::marker{color:gold;font-weight:700}.action-buttons{display:flex;gap:16px;margin-top:16px}.action-buttons button{border:none;border-radius:1vh;cursor:pointer;font-size:1.3vh;font-weight:700;padding:16px 24px;text-transform:uppercase;transition:transform .2s}@media (max-width:900px){.anomalies-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.anomaly-header{align-items:flex-start;flex-direction:column;gap:16px}.anomaly-actions{justify-content:space-between;width:100%}.context-grid,.info-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.anomalies-stats{grid-template-columns:1fr}}@media (max-width:600px){.anomalies-section{margin:20px 0;padding:20px}.anomaly-card{padding:16px}.anomaly-actions{flex-direction:column;gap:8px}.anomaly-actions button{width:100%}}.performance-analysis,body{background:#0000;color:#fff;font-family:Arial,sans-serif;min-height:100vh}.analysis-header{align-items:center;background:#313131cc;border-radius:2vh;box-shadow:0 4px 24px #000a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.analysis-header h1{color:gold;font-size:4.5vh;font-weight:700;margin:0;text-shadow:none}.tab-navigation{display:flex;gap:10px}.dashboard-controls button,.tab-navigation button{background-color:gold;border:none;border-radius:1vh;color:#232b3a;cursor:pointer;font-size:1.95vh;font-weight:700;padding:1.125vh 2.25vh;transition:transform .2s}.dashboard-controls button:hover,.tab-navigation button.active,.tab-navigation button:hover{transform:scale(1.05)}.loading{align-items:center;display:flex;flex-direction:column;gap:20px;height:50vh;justify-content:center}.spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#4caf50;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{background:#f443361a;border:1px solid #f443364d;border-radius:15px;padding:40px;text-align:center}.error-message h2{color:#f44336;margin-bottom:20px}.error-message button{background:#f44336;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.error-message button:hover{background:#d32f2f;transform:translateY(-2px)}.analysis-content{display:flex;flex-direction:column;gap:30px}.actions-section,.impact-section,.issue-section,.redundancies-content,.score-card,.summary-card{background:#313131cc;border:none;border-radius:2vh;box-shadow:0 8px 32px #000a;color:#fff;padding:28px}.actions-section h3,.impact-section h3,.issue-section h3,.redundancies-content h2,.score-card h2,.summary-card h2{color:gold;font-size:2.25vh;font-weight:700;margin-bottom:18px;text-shadow:none}.summary-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:20px;text-align:center}.stat.critical{background:#f443361a;border-color:#f443364d}.impact-value,.score-value,.stat-value{color:gold;font-size:2em;font-weight:700}.stat.critical .stat-value{color:#ff6b6b}.no-issues,.stat-label{color:#ffd70088;font-size:1em}.issues-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.issue-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;padding:25px}.issue-section h3{border-bottom:2px solid #ffffff4d;color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 20px;padding-bottom:10px;text-shadow:0 2px 4px #0000004d}.no-issues{color:#4caf50;font-style:italic;margin:20px 0;text-align:center}.issue-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;margin-bottom:15px;padding:20px}.issue-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.issue-severity{border-radius:20px;color:gold;font-size:.8rem;font-weight:600;font-weight:700;padding:4px 12px;text-transform:uppercase}.issue-type{color:#bbdefb;font-family:Courier New,monospace;font-size:.9rem}.issue-message{font-weight:500;margin:10px 0}.issue-recommendation{color:#bdbdbd;font-size:.9rem;font-style:italic;margin:10px 0 0}.optimization-content{display:flex;flex-direction:column;gap:30px}.actions-section,.impact-section,.score-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;box-sizing:border-box;margin-bottom:30px;padding:25px;width:100%}.score-card{align-items:center;display:flex;flex-direction:column;justify-content:center}.actions-section,.impact-section,.score-card{position:static;z-index:auto}.optimization-content>*{max-width:100%;min-width:0}.score-card h2{margin-bottom:20px}.impact-section{margin-top:0}.score-circle{align-items:center;background:linear-gradient(45deg,#4caf50,#45a049);border-radius:50%;box-shadow:0 8px 32px #4caf504d;display:flex;height:150px;justify-content:center;margin:0 auto 20px;width:150px}.score-value{color:#fff;font-size:1.5rem;font-weight:700}.score-description{color:#bdbdbd;font-size:1.2rem;margin:0}.actions-section h3{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 20px;text-shadow:0 2px 4px #0000004d}.performance-action-card{background:#ffffff14;border:1px solid #ffffff2e;border-radius:15px;box-shadow:0 4px 16px #00000012;display:flex;flex-direction:column;margin-bottom:18px;max-width:50%;padding:20px 25px;position:static;transition:box-shadow .2s}.performance-action-card:last-child{margin-bottom:0}.action-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.action-priority{border-radius:20px;box-shadow:0 2px 8px #00000014;font-weight:700;letter-spacing:1px;padding:4px 16px;text-transform:uppercase}.action-effort,.action-impact,.action-priority{font-size:.9rem;margin-bottom:4px;margin-right:8px}.action-effort,.action-impact{background:#ffffff14;border-radius:12px;color:#bdbdbd;padding:4px 10px}.action-header>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.performance-action-card h4{color:#fff;margin:10px 0}.performance-action-card p{color:#bdbdbd;font-size:.9rem;margin:10px 0 0}.impact-section h3{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 20px;text-shadow:0 2px 4px #0000004d}.impact-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.impact-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:20px;text-align:center}.impact-card h4{color:#fff;margin:0 0 10px}.impact-value{color:#4caf50;font-size:2rem;font-weight:700;text-shadow:0 2px 4px #0000004d}.redundancies-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;padding:25px}.redundancies-content h2{color:#fff;font-size:1.8rem;font-weight:600;margin:0 0 20px;text-shadow:0 2px 4px #0000004d}.no-redundancies{color:#4caf50;font-style:italic;margin:20px 0;text-align:center}.redundancy-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;margin-bottom:15px;padding:20px}.redundancy-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.redundancy-count,.redundancy-type{color:#fff;font-weight:600}.redundancy-count{background:#ff9800;border-radius:20px;font-size:.8rem;padding:4px 12px}.redundancy-endpoint{color:#bbdefb;font-family:Courier New,monospace;font-size:.9rem;margin:10px 0}.redundancy-recommendation{color:#bdbdbd;font-style:italic;margin:10px 0 0}@media (max-width:768px){.performance-analysis{padding:10px}.analysis-header{flex-direction:column;gap:20px;text-align:center}.analysis-header h1{font-size:2rem}.tab-navigation{flex-wrap:wrap;justify-content:center}.impact-grid,.issues-grid,.summary-stats{grid-template-columns:1fr}.action-header{align-items:flex-start;flex-direction:column;gap:5px}.optimization-content{gap:20px}.actions-section,.impact-section,.score-card{margin-bottom:20px;padding:15px}}.actions-section,.impact-section,.issue-section,.redundancies-content,.score-card{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.issue-section:first-child{animation-delay:.1s}.issue-section:nth-child(2){animation-delay:.2s}.issue-section:nth-child(3){animation-delay:.3s}.score-card{animation-delay:.1s}.actions-section{animation-delay:.2s}.impact-section{animation-delay:.3s}.redundancies-content{animation-delay:.1s}@media (max-width:900px){.analysis-content,.issues-grid{gap:16px;grid-template-columns:1fr}.actions-section,.impact-section,.issue-section,.redundancies-content,.score-card,.summary-card{padding:14px}}body,html{background-color:initial;font-family:Arial,sans-serif;height:100%;margin:0;padding:0}.create-player-container{display:flex;justify-content:center;margin:0 auto;max-height:96vh;max-height:98vh;max-width:185vh;min-height:98vh}.create-player-page{background-color:#313131cc;border-radius:2vh;box-shadow:0 0 1.5vh #0003;flex:1 1;margin-top:2vh}.create-player-page h1{color:#8b85c1;font-size:4.5vh;margin-bottom:2vh;text-align:center}.content{align-items:center;display:flex;flex-direction:column;padding:2vh}.create-player-page input[type=number],.create-player-page select,.info-section input[type=text]{border:.1vh solid #ccc;border-radius:.4vh;font-size:2.4vh;margin-bottom:1.5vh;padding:1.5vh;width:45vh}.create-player-page .statistics-section{margin-bottom:2vh}.create-player-page .statistics-grid{grid-gap:1vh;align-items:center;display:grid;gap:1vh;grid-template-columns:1fr 1fr 1fr}.create-player-page .header{color:#8b85c1;font-size:2.25vh;font-weight:700;margin-bottom:1vh!important;margin:0;text-align:center}.create-player-page .stat-label{color:#8b85c1;font-size:2.25vh;font-weight:700;margin-bottom:1vh;text-align:left}.create-player-page .bonus{color:#8b85c1;font-size:2.25vh;font-weight:700;margin-bottom:.5vh;text-align:center}.create-player-page .stat-input{text-align:center;width:10vh!important}.create-player-page .stat-input-container{align-items:center;display:flex}.create-player-page .stat-buttons{display:flex;flex-direction:column;margin-bottom:1.2vh;margin-left:.5vh}.create-player-page .stat-buttons button{margin:.2vh 0}.create-player-page .stat-buttons button,.skills-section button{background-color:initial;border:none;color:#6a5fa3;cursor:pointer;font-size:2.25vh;font-weight:700;width:2.25vh}.create-player-page button[type=submit]{background-color:#6a5fa3;border:none;border-radius:1vh;color:#fff;cursor:pointer;font-size:1.95vh;padding:1.125vh 2.25vh;transition:background-color .3s ease}.create-player-page button[type=submit]:hover{background-color:#38182f}.skills-section{background-color:#313131cc;border-radius:2vh;box-shadow:0 0 1.5vh #0003;flex:1 1;margin-left:1.5vh;margin-top:2vh}.skills-section p{color:#8b85c1;font-weight:700;text-align:center}.skills-group h3{color:#8b85c1;font-size:2.25vh;margin-bottom:.5vh;text-align:center}.skills-list{display:flex;flex-wrap:wrap;gap:1vh;justify-content:center}.skill{align-items:center;background-color:#f5f5f5;border:.1vh solid #ccc;border-radius:.4vh;display:flex;flex-direction:column;padding:1vh;width:10vh}.skill-label{color:#555;font-size:1.5vh;font-weight:700;margin-bottom:.5vh}.skill-stat{color:#888;font-size:1.35vh}.skill-bonus{color:#888;font-size:1.2vh}.battle-skill-bonus span,.skill-bonus span{font-size:1.8vh;margin:1vh}.info-section{margin-bottom:2vh}.battle-section,.info-section{background-color:#313131cc;border-radius:2vh;box-shadow:0 0 1.5vh #0003;flex:1 1;max-height:47vh;min-height:47vh}.side-section{display:flex;flex:1 1;flex-direction:column;justify-content:space-between;margin-right:1.5vh;margin-top:2vh}.battle-section h1,.info-section h1,.skills-section h1{color:#8b85c1;font-size:4.5vh;margin-bottom:2vh;text-align:center}.create-player-page h2{color:#8b85c1;font-size:2.25vh;margin-bottom:1vh;text-align:center}.battle-section p,.create-player-page p{color:#8b85c1;font-weight:700;text-align:center}.submit-button{background-color:#6a5fa3;border:none;border-radius:1vh;color:#fff;cursor:pointer;font-size:1.95vh;padding:1.125vh 2.25vh}.info-section label{color:#555;font-size:2.5vh;font-weight:700;padding-left:.2vh}.info-section-content{padding:3vh}.circle-container{display:flex;justify-content:space-around;margin:2vh 0}.circle-wrapper{align-items:center;display:flex;flex-direction:column}.pv-circle-label{border-color:#f74b4b;color:#f82020}.movement-circle-label,.pv-circle-label{font-size:1.8vh;font-weight:700;margin-bottom:.75vh}.movement-circle-label{border-color:#55a8fa;color:#55a8fa}.soul-circle-label{border-color:#9428ed;color:#e755fa}.defense-circle-label,.soul-circle-label{font-size:1.8vh;font-weight:700;margin-bottom:.75vh}.defense-circle-label{border-color:#7d91a7;color:#7d91a7}.circle{align-items:center;border:1vh solid;border-radius:50%;display:flex;font-size:3vh;height:10vh;justify-content:center;text-align:center;width:10vh}.hp-circle{border-color:#f74b4b;color:#f82020}.soul-circle{border-color:#de55fa;color:#de55fa}.movement-circle{border-color:#55a8fa;color:#55a8fa}.defense-circle{border-color:#7d91a7;color:#7d91a7}.battle-skills-container{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-around}.battle-skills-group{margin-bottom:1.5vh;margin-right:1.5vh;padding:.4vh}.battle-skills-group h3{color:#8b85c1;font-size:2.25vh;margin-bottom:.75vh;text-align:center}.battle-skills-list{display:flex;flex-wrap:wrap;gap:1vh;justify-content:center}.battle-skill{align-items:center;background-color:#f5f5f5;border:.1vh solid #ccc;border-radius:.4vh;display:flex;flex-direction:column;padding:.5vh;width:10vh}.battle-skill-label{color:#555;font-size:1.5vh;font-weight:700;margin-bottom:.75vh}.battle-skill-bonus{color:#888;font-size:1.2vh}.global-container{display:flex;flex-direction:column}.container{align-content:center;display:flex}.left-side,.right-side{display:flex;flex:1 1;flex-direction:column}.view-player-container{width:50vh}.side-view-player-container,.view-player-container{background-color:#313131cc;border-radius:1vh;box-shadow:0 1vh 3vh #0003;color:#333;display:flex;flex-direction:column;font-family:Arial,sans-serif;margin-top:2vh;padding:2vh}.side-view-player-container{margin-left:5vh;margin-right:5vh;max-height:45vh;min-height:45vh;position:relative}h1{color:#8b85c1;font-size:3.5vh;text-align:center}.stat-title{border-bottom:.2vh solid #8b85c1;color:#8b85c1;margin-top:2vh}p{color:#fff;font-size:1.85vh;line-height:3vh;margin:.8vh 0}strong{color:#8b85c1}.strong-secondary{color:#fff}select{background-color:#fffc;border:.2vh solid #8b85c1;border-radius:.5vh;box-shadow:0 .5vh 1vh #0000001a;color:#333;cursor:pointer;font-size:1.85vh;outline:none;padding:1vh;width:100%}select:focus{border-color:#0056b3;box-shadow:0 0 1vh #007bff80}.details{background-color:#fffc;border:.2vh solid #8b85c1;border-radius:1vh;box-shadow:0 1vh 1vh #0000001a;color:#333;font-size:1.85vh;height:100%;margin-top:2vh;overflow-y:auto;padding:2vh;scrollbar-color:#fff #fff0}.details p{color:#333;margin:.25vh 0}.details ul{font-size:1.85vh;margin:.25vh 0}.details strong{color:#8b85c1}.orb-container{background:radial-gradient(circle,#8338ec,#000);border-radius:50%;bottom:50%;box-shadow:0 0 4vh #8338ec;height:25vh;left:50%;overflow:hidden;position:absolute;transform:translateX(-50%) translateY(50%);width:25vh}.orb-fill{animation:animate 6s ease-in-out infinite;background:linear-gradient(180deg,#c19bf5,#8338ec);bottom:0;position:absolute;transition:height .5s ease-in-out;width:100%}.orb-text{color:#fff;font-size:2vh;font-weight:700;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:1}.buttons-container{bottom:5vh;display:flex;flex-direction:row;flex-wrap:wrap;gap:1vh;justify-content:space-evenly;position:absolute;width:100%}@keyframes animate{0%,to{-webkit-clip-path:polygon(0 48%,20% 47%,50% 49%,80% 50%,100% 48%,100% 100%,0 100%);clip-path:polygon(0 48%,20% 47%,50% 49%,80% 50%,100% 48%,100% 100%,0 100%)}50%{-webkit-clip-path:polygon(0 50%,20% 51%,50% 52%,80% 51%,100% 50%,100% 100%,0 100%);clip-path:polygon(0 50%,20% 51%,50% 52%,80% 51%,100% 50%,100% 100%,0 100%)}}.soul-shard-popup-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1}.soul-shard-popup{background-color:#fff;border-radius:1vh;max-width:70vh;padding:4vh;text-align:center}.soul-shard-popup P{color:#333;font-size:1.85vh}.soul-shard-popup ul{list-style-type:none;padding:0}.soul-shard-popup li{margin-bottom:5vh}.soul-shard-popup button{background-color:#4caf50;border:none;border-radius:.5vh;color:#fff;cursor:pointer;font-size:1.85vh;margin:2vh;padding:2vh 4vh}.soul-shard-popup button:hover{background-color:#45a049}.soul-core-section{height:100%;position:relative}.soul-core-section button{background-color:#8338ec;border:none;border-radius:.5vh;box-shadow:0 1vh 2vh #0003;color:#fff;cursor:pointer;font-size:1.85vh;left:50%;padding:1vh 2vh;position:relative;top:80%;transform:translateX(-50%);transition:background-color .3s,transform .2s ease}.soul-core-section button:hover{background-color:#5410b4}.equipment-popup-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1}.equipment-popup{background-color:#fff;border-radius:2vh;box-shadow:0 2vh 4vh #0003;font-family:Poppins,sans-serif;max-height:80vh;overflow:auto;padding:4vh;text-align:center}.equipment-popup p{color:#333;font-size:1.85vh}.details li{list-style:none}.equipment-popup h2{color:#8b85c1;font-size:2.5vh;margin-bottom:2vh}.equipment-popup ul{list-style:none;margin-bottom:3vh;overflow-y:auto;padding:0}.equipment-item{background-color:#f9f9f9;border:.2vh solid #ccc;border-radius:1vh;margin-bottom:1vh;padding:2vh}.equipment-item strong{color:#333;font-size:1.85vh}.equipment-item p{color:#555;font-size:1.5vh;margin:1vh 0}.equip-button{align-self:flex-end;background-color:#4caf50;border:none;border-radius:1vh;box-shadow:0 .2vh .4vh #0003;color:#fff;cursor:pointer;font-size:1.5vh;margin-top:2vh;padding:2vh 4vh}.equip-button:hover{background-color:#45a049}.close-button{background-color:#d9534f;border:none;border-radius:1vh;color:#fff;cursor:pointer;font-size:1.5vh;padding:2vh 4vh}.close-button:hover{background-color:#c9302c}.equipment-slots-container{align-self:center;background-color:#313131cc;border-radius:1vh;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start;margin-bottom:2vh;margin-top:2vh;padding:2vh;position:relative;width:95%}.equipment-slots{display:flex;gap:1.5vh;grid-template-columns:repeat(auto-fill,minmax(25vh,1fr));justify-items:center}.equipment-slot{background-color:#fffc;border:.4vh dashed #8b85c1;border-radius:2vh;cursor:pointer;padding:2vh;text-align:center;transition:transform .2s,box-shadow .2s;width:22vh}.equipment-slot:hover{box-shadow:0 1vh 2vh #0003;transform:translateY(-.15vh)}.equipment-slot p{color:#8b85c1;font-size:2.5vh;font-weight:700;margin:1.2vh 0}.equipped-item{background-color:#8b85c1;border-radius:1vh;box-shadow:0 .1vh .5vh #0000001a;padding:1.5vh}.equipped-item p{color:#8b85c1;font-size:1.85vh;margin:0}.equipment-slot p:last-child{color:#333;font-size:1.85vh;font-style:italic}.equipped-item p{color:#fff!important}.remove-button{background-color:#d9534f;color:#fff}.remove-button:hover{background-color:#c9302c}.inventory-category{margin-top:0}.player-image{display:flex;position:absolute;width:10vh}.game-page{background-color:#000;display:flex;flex-direction:column;height:100vh;justify-content:space-between;overflow:hidden;position:relative;z-index:0}.map-select{background-color:#f0f0f080;bottom:0;box-shadow:0 -2px 5px #0003;font-size:2.5vh;left:0;position:fixed;transition:width .3s ease;width:75%;z-index:1}.dice-select{background-color:#f0f0f0;border:none;border-radius:.4rem;box-shadow:0 0 5vh rgba(0,0,0,.397);cursor:pointer;padding:1rem;text-align:center;transition:background-color .3s}.dice-select:hover{background-color:#dcdcdc}.dice-select option{padding:1vh;text-align:center}.dice-select:focus{outline:none}.messages-container{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border-left:2px solid #444;box-shadow:-2px 0 15px #000000b3;display:flex;flex-direction:column;height:100vh;justify-content:flex-start;position:fixed;right:0;top:0;transition:transform .3s ease;width:25%;z-index:4}.messages-container.closed{transform:translateX(100%)}.messages{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:1rem}.messages::-webkit-scrollbar{width:8px}.messages::-webkit-scrollbar-track{background:#1a1a1a}.messages::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.messages::-webkit-scrollbar-thumb:hover{background:gold}.message{word-wrap:break-word;background:linear-gradient(135deg,#2a2a2a,#3a3a3a);border:1px solid #444;border-radius:.8rem;box-shadow:0 2px 8px #0000004d;color:#e0e0e0;font-size:1rem;margin-bottom:1.5vh;max-width:100%;padding:1rem;position:relative}.message-avatar{border:2px solid #ffd900ab;border-radius:50%;left:1vh;position:absolute;top:1vh;width:5vh}.message-text{display:flex;flex-direction:column}.message-text strong{align-self:center;color:gold;font-size:1.25rem;margin-bottom:1.5rem;margin-top:.25rem;text-shadow:0 0 5px #ffd7004d}.message-time{color:#ffd700cc;font-family:monospace;font-size:.95em;opacity:.85;pointer-events:none;position:absolute;right:1.2rem;top:.5rem;z-index:2}.message-line{align-items:center;display:flex;justify-content:space-between;margin-bottom:.3rem}.message-line:last-child{margin-bottom:0}.textarea-container{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border-top:2px solid #444;box-shadow:0 -2px 10px #00000080;display:flex;flex-direction:column;position:relative;width:100%}.textarea{background:linear-gradient(135deg,#2a2a2a,#3a3a3a);border:1px solid #444;border-radius:.5rem;color:#e0e0e0;font-size:1rem;height:20vh;margin:1vh;outline:none;padding:1vh;resize:none;-webkit-user-select:none;user-select:none;width:97%}.textarea::placeholder{color:#888}.send-icon{bottom:1vh;color:gold;cursor:pointer;font-size:2rem;position:absolute;right:2vw;transition:all .3s ease}.send-icon:hover{color:#fff;text-shadow:0 0 10px #ffd700cc;transform:scale(1.1)}.hide-icon{align-items:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border:2px solid #444;border-bottom-left-radius:2vh;border-right:none;border-top-left-radius:2vh;box-shadow:-2px 0 10px #00000080;color:gold;cursor:pointer;display:flex;font-size:2.5vh;font-weight:700;height:12vh;justify-content:center;position:fixed;right:0;text-shadow:0 0 5px #ffd70080;top:50%;transform:translateY(-50%);transition:all .3s ease;width:4vh;z-index:4}.hide-icon:hover{background:linear-gradient(135deg,#2d2d2d,#3d3d3d);border-color:gold;box-shadow:-3px 0 15px #ffd7004d;text-shadow:0 0 10px #ffd700cc;transform:translateY(-50%) scale(1.05)}.hide-icon:active{transform:translateY(-50%) scale(.95)}@keyframes vibrate{0%{transform:translateX(0)}25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-5px)}to{transform:translateX(5px)}}.messages-container.vibrating{animation:vibrate .3s ease-out}.message.dice-message{background:linear-gradient(135deg,#1a2a1a,#2a3a2a);border:1px solid #4a5a4a;box-shadow:0 2px 8px #00ff001a}.message.dice-message-critical-success{background:linear-gradient(135deg,#2a2a1a,#3a3a2a);border:1px solid #5a5a4a;box-shadow:0 2px 8px #ffd70033}.message.dice-message-critical-success u{color:gold;text-decoration:none;text-shadow:0 0 5px #ffd70080}.message.dice-message-critical-fail u{color:#ff6b6b;text-decoration:none;text-shadow:0 0 5px #ff6b6b80}.date-separator{align-items:center;display:flex;justify-content:center;margin:2vh 0;position:relative}.date-separator:before{background:linear-gradient(90deg,#0000,gold,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:50%;z-index:1}.date-separator span{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border:1px solid #444;border-radius:1vh;box-shadow:0 2px 8px #0000004d;color:gold;font-size:.9rem;font-weight:700;padding:.5vh 2vh;position:relative;text-align:center;text-shadow:0 0 5px #ffd7004d;z-index:2}em{color:#aaa;font-size:.8rem}.message.dice-message-critical-fail{background:linear-gradient(135deg,#2a1a1a,#3a2a2a);border:1px solid #5a4a4a;box-shadow:0 2px 8px #ff6b6b33}.message.system-message{background:linear-gradient(135deg,#1a1a2a,#2a2a3a);border:1px solid #4a4a5a;box-shadow:0 2px 8px #6b6bff1a}.player-info{background-color:#0009;border-bottom-right-radius:1vh;justify-content:space-between;padding:1rem 1rem 1rem 1.5rem;position:fixed;top:0;z-index:0}.player-info p{color:gold;font-size:4vh;font-weight:700}.character-sheet{align-items:center;background-color:#0009;border-radius:50%;box-shadow:0 4px 6px #0003;cursor:pointer;display:flex;font-size:24px;height:8vh;justify-content:center;margin-left:1vh;margin-top:15vh;position:fixed;transition:background-color .3s,transform .3s;-webkit-user-select:none;user-select:none;width:8vh;z-index:1}.character-sheet:hover{background-color:#000c;transform:scale(1.1)}.action-button{align-items:center;background-color:#0009;border-radius:50%;box-shadow:0 4px 6px #0003;cursor:pointer;display:flex;font-size:24px;height:8vh;justify-content:center;position:fixed;transition:background-color .3s,transform .3s;-webkit-user-select:none;user-select:none;width:8vh}.action-button:hover{background-color:#000c;transform:scale(1.1)}.back-button{background-color:initial;border:none;border-bottom-right-radius:1vh;color:gold;cursor:pointer;font-size:4vh;justify-content:space-between;position:fixed;top:0;z-index:2}.context-menu{background-color:#333;border-radius:5px;color:#fff;padding:5px;position:absolute;z-index:4}.context-menu-item{cursor:pointer;padding:8px 12px;position:relative}.context-menu-item:hover .submenu{display:block}.context-menu-item:hover{background-color:#525252}.submenu{background-color:#333;border-radius:1vh;display:none;left:100%;position:absolute;top:-1vh;z-index:4}.submenu-item{cursor:pointer;display:flex;padding:1vh 2vh;width:25vh}.submenu-item:hover{background-color:#525252}.submenu-item-icon{height:5vh;margin-right:2vh;width:5vh}.item{align-items:center;cursor:move;display:flex;justify-content:center;position:absolute;transition:transform .5s ease-in-out;z-index:0}:root{--item-img-size:75px}.item img{height:75px;height:var(--item-img-size);object-fit:cover;transition:filter .3s ease,opacity .3s ease;width:75px;width:var(--item-img-size)}.item img.dead-item{filter:brightness(50%) sepia(1) hue-rotate(-50deg) saturate(10) opacity(.8)}.selected-highlight{border-radius:2vh;box-shadow:0 0 1vh .5vh blue}.health-bar{background-color:#343333;border-radius:1vh;cursor:pointer;display:flex;height:3vh;left:50%;overflow:hidden;position:absolute;top:-4vh;transform:translateX(-50%);width:10vh}.health-bar-fill{border-radius:.5vh;height:100%;transition:width 1s ease,height 1s ease,width 1s ease}.health-bar.slider-active{height:3vh;width:10vh}.health-slider{-webkit-appearance:none;appearance:none;background:#0000;cursor:pointer;height:100%;position:absolute;width:100%}.health-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#cf2f2f;border-radius:50%;cursor:pointer;height:3vh;width:1vh}.health-slider::-moz-range-thumb{background:#cf2f2f;cursor:pointer;height:2vh;width:.5vh}.soul-essence-bar{background-color:#343333;border-radius:1vh;cursor:pointer;display:flex;height:3vh;left:50%;overflow:hidden;position:absolute;top:-8vh;transform:translateX(-50%);width:10vh}.soul-essence-bar-fill{border-radius:.5vh;height:100%;transition:width 1s ease,height 1s ease}.soul-essence-bar.slider-active{height:3vh;width:10vh}.soul-essence-slider{-webkit-appearance:none;appearance:none;background:#0000;cursor:pointer;height:100%;position:absolute;width:100%}.soul-essence-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#9832a8;border-radius:50%;cursor:pointer;height:3vh;width:1vh}.soul-essence-slider::-moz-range-thumb{background:#9832a8;cursor:pointer;height:2vh;width:.5vh}.mode-toggle-button{background:linear-gradient(135deg,#2a2a2a,#3a3a3a);border:2px solid #444;border-bottom-left-radius:.8rem;border-bottom-right-radius:.8rem;box-shadow:0 2px 8px #0000004d;color:gold;cursor:pointer;font-size:1.2rem;font-weight:700;padding:1vh 2vh;text-shadow:0 0 5px #ffd7004d;transition:all .3s ease}.mode-toggle-button:hover{background:linear-gradient(135deg,#3a3a3a,#4a4a4a);border-color:gold;box-shadow:0 4px 12px #ffd70033;text-shadow:0 0 10px #ffd700cc;transform:translateY(-1px)}.management-container{color:#e0e0e0;display:flex;flex-direction:column;height:100%;margin-top:-6vh;width:100%}.management-container h3{align-self:center;color:gold;margin-top:5vh;text-shadow:0 0 5px #ffd7004d}.item-row{align-items:center;background:linear-gradient(135deg,#2a2a2a,#3a3a3a);border:1px solid #444;border-radius:1vh;box-shadow:0 2px 8px #0000004d;color:#e0e0e0;display:flex;flex-direction:column;gap:1vh;margin-bottom:2vh;padding:1vh;position:relative}.item-row:hover{background:linear-gradient(135deg,#3a3a3a,#4a4a4a);border-color:gold;box-shadow:0 4px 12px #ffd7001a}.item-icon{border-radius:50%;box-shadow:0 0 10px #ffd7004d;height:10vh;width:10vh}.bars-container{gap:1vh}.bars-container,.controls-container{display:flex;margin:.5vh 0;width:100%}.controls-container{gap:5vh;justify-content:center}.health-bar-container,.soul-essence-bar-container{align-items:center;background-color:#343333;border-radius:1vh;display:flex;flex:1 1;height:3vh;overflow:hidden;position:relative}.health-bar-fill,.soul-essence-bar-fill{border-radius:1vh;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.health-bar-fill{background-color:#cf2f2f}.soul-essence-bar-fill{background-color:#9832a8}.health-slider,.soul-essence-slider{-webkit-appearance:none;appearance:none;cursor:pointer;height:100%;margin:0;position:relative;width:100%;z-index:2}.health-slider::-webkit-slider-thumb,.soul-essence-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:.3vh solid #ddd;border-radius:50%;cursor:pointer;height:3vh;-webkit-transition:background-color .3s;transition:background-color .3s;width:1.5vh}.health-slider::-webkit-slider-thumb:hover,.soul-essence-slider::-webkit-slider-thumb:hover{background:#f0f0f0}.health-slider::-moz-range-thumb,.soul-essence-slider::-moz-range-thumb{background:#ff0;cursor:pointer;height:3vh;width:.5vh}.health-bar-text,.soul-essence-bar-text{color:#fff;font-size:2.5vh;font-weight:700;pointer-events:none;position:absolute;text-align:center;text-shadow:-.15vh -.15vh 0 #000,.15vh -.15vh 0 #000,-.15vh .15vh 0 #000,.15vh .15vh 0 #000;-webkit-user-select:none;user-select:none;width:100%;z-index:2}.delete-button{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:.5vh;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:1.5vh;font-weight:700;margin-top:1vh;padding:.8vh 1.6vh;text-shadow:0 0 5px #00000080;transition:all .3s ease}.delete-button:hover{background:linear-gradient(135deg,#c82333,#a71d2a);box-shadow:0 4px 12px #dc354580;transform:translateY(-1px)}.delete-button:active{transform:translateY(0)}.arrow{background-color:red;height:.5vh;position:absolute;transform-origin:0 50%;z-index:4}.arrow-head{border-bottom:.25vh solid #0000;border-left:.5vh solid red;border-top:.25vh solid #0000;height:0;position:absolute;right:0;top:-.25vh;width:0}.arrow-distance{background-color:#fff;border-radius:.2vh;font-size:1vh;font-weight:700;left:50%;padding:.2vh .5vh;position:absolute;top:-2vh;transform:translateX(-50%);z-index:1001}.map-container{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:contain;display:flex;height:100vh;justify-content:center;overflow:hidden;position:absolute;transition:transform .03s linear;-webkit-user-select:none;user-select:none;width:100vw;will-change:transform;z-index:-1}.map-container.scrollable,.map-container.square{overflow:auto}.turn-order-container{background-color:#0009;border-radius:1vh;bottom:5vh;box-shadow:0 0 1vh #00000080;color:#fff;overflow:hidden;position:relative!important;z-index:2}.turn-order-container.expanded{width:40vh}.turn-order-container:not(.expanded){align-items:center;display:flex;height:5vh;justify-content:center;width:10vh}.toggle-button{background:none;border:none;color:#fff;cursor:pointer;font-size:1.5vh;padding:.5vh}.turn-order-content{display:flex;flex-direction:column;gap:1vh;padding:1vh}.new-combat-button{background-color:#28a745;border:none;border-radius:.5vh;color:#fff;cursor:pointer;font-size:1.5vh;padding:1vh}.new-combat-button:hover{background-color:#218838}.turn-order-list{flex:1 1;list-style:none;margin:0;overflow-y:auto;padding:0}.turn-order-item{align-items:center;background-color:#ffffff1a;border-radius:.5vh;cursor:grab;display:flex;gap:1vh;height:5vh;padding:1vh}.turn-order-item img{border-radius:50%;height:4vh;width:4vh}.turn-order-item.dragging{opacity:.5}.dragging-container{box-shadow:0 0 2vh #ffffffb3;opacity:.8}.no-select{user-select:none;-webkit-user-select:none;-ms-user-select:none}.item.hover-highlight{position:relative}.item.hover-highlight:before{background-color:#ffff00b3;border-radius:50%;bottom:-1vh;content:"";left:-1vh;position:absolute;right:-1vh;top:-1vh;z-index:-1}.damage-indicator{align-self:flex-end;color:#fff;font-size:3vh;font-weight:700;padding:1vh 2vh;position:absolute}.roll-dice-container{align-items:center;display:flex;flex-direction:column;left:0;position:absolute;top:0}.roll-dice-button{background:none;border:none;cursor:pointer;font-size:4vh;font-weight:700}.roll-result{font-size:3vh;font-weight:700;margin-top:.5vh}.health-adjust,.soul-adjust{align-items:center;display:flex;gap:.5vh;margin-top:.5vh}.health-input,.soul-input{-webkit-appearance:none;appearance:textfield;background:linear-gradient(135deg,#2a2a2a,#3a3a3a);border:2px solid #444;border-radius:.5vh;color:#e0e0e0;font-size:1.2vh;outline:none;padding:.5vh;text-align:center;transition:all .3s ease;width:6vh}.health-input::-webkit-inner-spin-button,.health-input::-webkit-outer-spin-button,.soul-input::-webkit-inner-spin-button,.soul-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.health-input[type=number],.soul-input[type=number]{-moz-appearance:textfield;font-size:2vh}.health-input:focus,.soul-input:focus{border-color:gold;box-shadow:0 0 8px #ffd7004d}.health-input::placeholder,.soul-input::placeholder{color:#888}.health-button,.soul-button{background:linear-gradient(135deg,#2a2a2a,#3a3a3a);border:2px solid #444;border-radius:.5vh;color:gold;cursor:pointer;font-size:2vh;font-weight:700;min-width:3vh;padding:.5vh 1vh;transition:all .3s ease}.health-button:hover,.soul-button:hover{background:linear-gradient(135deg,#3a3a3a,#4a4a4a);border-color:gold;text-shadow:0 0 5px #ffd70080;transform:translateY(-1px)}.health-button:active,.soul-button:active{transform:translateY(0)}.modal-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:4}.modal-content{background:#fff;border-radius:2vh;min-width:30vh;padding:5vh;text-align:center;z-index:4}.modal-content h2{color:#9832a8;margin-top:0;z-index:4}.modal-content button{background-color:#28a745;border:none;border-radius:.5vh;color:#fff;cursor:pointer;font-size:2vh;margin-top:2vh;padding:1vh}.modal-content p{color:#000;font-size:2.5vh;line-height:3vh;margin:.8vh 0}.connected-players-bar{background:#0009;border-radius:1vh;color:#fff;cursor:pointer;left:50%;padding:2vh;position:fixed;text-align:center;top:-2vh;transform:translateX(-50%);transition:top .3s ease-in-out;width:30vh;z-index:4}.toggle-text{font-weight:700;margin:0}.players-list{margin-top:2vh}.player{align-items:center;border-bottom:.1vh solid #fff3;display:flex;gap:2vh;padding:1vh}.player-avatar{border-radius:50%;height:30px;width:30px}.management-container span{align-self:center}.item-list{margin-top:2vh}.map-select-container{background:#0009;border-top-left-radius:3vh;border-top-right-radius:3vh;bottom:-1vh;box-shadow:none;color:#fff;cursor:pointer;display:inline-block;height:auto;left:50%;max-width:none;min-width:0;min-width:auto;padding:0;position:fixed;right:auto;text-align:center;transform:translateX(-50%);width:-webkit-max-content;width:max-content;z-index:4}.messages-container.closed~.map-select-container{right:0}.map-select-container.expanded{box-shadow:0 4px 6px #0000004d;display:block;left:0;max-width:100vw;min-width:200px;padding:10px;right:25vw;transform:none;width:auto}.map-select-container.full-width.expanded{max-width:100vw;right:0!important}.map-select-header{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:1.1em;font-weight:700;gap:10px;justify-content:center;margin-bottom:0;min-height:36px;min-width:70px;padding:8px 18px}.map-select-header:after{content:"▲";font-size:1.2em;transition:transform .3s ease}.map-select-container.expanded .map-select-header:after{transform:rotate(180deg)}.maps-list{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap;gap:15px;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:8px;scrollbar-color:gold #222;scrollbar-width:thin;width:100%}.maps-list::-webkit-scrollbar{background:#222;height:8px}.maps-list::-webkit-scrollbar-thumb{background:gold;border-radius:4px}.map-item{align-items:center;background-color:#ffffff1a;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;max-width:200px;min-width:150px;padding:10px;transition:all .3s ease}.map-item:hover{background-color:#fff3;border-color:gold;transform:translateY(-5px)}.map-item.selected{background-color:#ffd70033;border-color:gold;box-shadow:0 0 10px #ffd70080}.map-preview{border:1px solid #ffffff4d;border-radius:6px;height:80px;margin-bottom:8px;object-fit:cover;width:120px}.map-item-name{word-wrap:break-word;font-size:.9em;font-weight:700;text-align:center}.target-in-range{border-radius:50%;box-shadow:0 0 0 6px gold,0 0 16px 4px #ffd70055;cursor:pointer;transition:box-shadow .2s;z-index:30}@keyframes targetPulse{0%{opacity:.8;transform:scale(1)}to{opacity:1;transform:scale(1.1)}}.target-indicator{transition:all .2s ease}.target-indicator:hover{background-color:#ff00004d!important;border-color:#f44!important}.attacker-highlight{animation:attackerPulse .8s ease-in-out;z-index:200}.target-hit{animation:targetHit .8s ease-in-out;z-index:200}.target-miss{animation:targetMiss .8s ease-in-out;z-index:200}.attack-line{animation:attackLine .8s ease-in-out;background:linear-gradient(90deg,gold,red);height:3px;pointer-events:none;position:absolute;z-index:150}@keyframes attackerPulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes targetHit{0%{transform:scale(1)}25%{transform:scale(1.2)}50%{transform:scale(.9)}to{transform:scale(1)}}@keyframes targetMiss{0%{transform:scale(1)}25%{transform:scale(1.1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes attackLine{0%{opacity:0;transform:scaleX(0)}50%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}.circle-target-highlight{border-radius:50%;box-shadow:0 0 0 6px #ffa50099,0 0 16px 4px #ffa50066;transition:box-shadow .3s ease;z-index:25}@keyframes circleTargetPulse{0%{opacity:.6;transform:scale(1)}to{opacity:1;transform:scale(1.05)}}.circle-target-indicator{transition:all .3s ease}.circle-target-indicator:hover{background-color:#ffa50080!important;border-color:orange!important}.action-menu{background-color:#000c;border:1px solid #ffffff1a;border-radius:1vh;box-shadow:0 4px 6px #0000004d;color:#fff;margin-left:10vh;padding:2vh;position:relative;z-index:2}.attack-menu{max-height:50vh;max-width:30vw;overflow-y:auto}.action-menu h1{color:#fff;font-size:1.2em;letter-spacing:1px;margin-bottom:15px;text-align:center;text-transform:uppercase}.attack-menu-container{margin-top:35vh}.attack-menu-container,.dice-menu-container{cursor:pointer;margin-left:1vh;position:fixed;z-index:1}.dice-menu-container{margin-top:25vh}.dice-section,.weapon-section{background-color:#ffffff0d;border-radius:6px;display:flex;flex-direction:column;gap:.5rem;margin-bottom:20px;max-height:30vh;max-width:30vw;padding:10px}.dice-options{flex-wrap:wrap;gap:10px}.dice-option,.dice-options{display:flex;justify-content:center}.dice-option{align-items:center;background-color:#ffffff1a;border:1px solid #fff3;border-radius:6px;cursor:pointer;font-size:1.2em;font-weight:700;height:50px;transition:all .3s ease;width:50px}.dice-option:hover{background-color:#fff3;transform:scale(1.05)}.dice-option.selected{background-color:#fff;border-color:#fff;color:#000}.bonus-dice-input,.dice-input{background-color:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;display:block;font-size:1.3em;margin:0 auto;padding:8px;text-align:center;width:100px}.bonus-dice-input:focus,.dice-input:focus{border-color:#fff;outline:none}.attack-roll-button,.dice-roll-button{background-color:#fff;border:none;border-radius:6px;color:#000;cursor:pointer;font-size:1.1em;font-weight:700;letter-spacing:1px;padding:12px;text-transform:uppercase;transition:all .3s ease;width:100%}.weapon-info{background-color:#ffffff0d;border-radius:6px;margin-bottom:15px;padding:10px;text-align:center}.weapon-info h1{color:#fff;margin-bottom:10px}.weapon-damage,.weapon-type{color:#fffc;font-size:.9em;margin:5px 0}.attack-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:space-between}.attack-item{background-color:#ffffff0d;border-radius:6px;box-sizing:border-box;flex-basis:calc(50% - 4px);flex-grow:0;flex-shrink:0;padding:8px;transition:all .3s ease}.attack-item:hover{background-color:#ffffff1a;transform:translateY(5px)}.attack-roll-button{background-color:initial;border:1px solid #fff;border-radius:6px;color:#fff;padding:10px;text-align:left;transition:all .3s ease;width:100%}.attack-roll-button:hover,.dice-roll-button:hover{background-color:#fff;color:#000;transform:translateY(-2px)}.attack-name{font-size:1.1em;font-weight:700;margin-bottom:5px;text-align:center}.attack-details{color:#fffc;display:flex;flex-direction:column;font-size:.8em;gap:2px}.attack-damage{color:gold;font-weight:700}.attack-range{color:#87ceeb}.attack-area{color:#ff6b6b;font-style:italic}.main-attack{background-color:#fff;color:#000;margin-top:20px}@keyframes diceRoll{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dice-option.rolling{animation:diceRoll .5s ease-in-out}.bonus-dice-input::-webkit-inner-spin-button,.bonus-dice-input::-webkit-outer-spin-button,.dice-input::-webkit-inner-spin-button,.dice-input::-webkit-outer-spin-button{background:#fff;border-radius:4px;cursor:pointer;height:100%;margin:0 10px 0 0;opacity:1;padding:0;position:absolute;right:0;top:0;transform:scale(2);width:25px}.bonus-dice-input[type=number],.dice-input[type=number]{-moz-appearance:textfield;position:relative}.bonus-dice-input::-ms-clear,.bonus-dice-input::-ms-reveal,.dice-input::-ms-clear,.dice-input::-ms-reveal{display:none}.orientation-lock-overlay{align-items:center;background-color:#000;color:#fff;display:flex;font-size:1.8rem;height:100vh;justify-content:center;left:0;position:fixed;text-align:center;top:0;width:100vw;z-index:10}.orientation-message{max-width:80%}.macro-overlay{background-color:#0009;border-radius:4px;color:#fff;left:0;position:fixed;top:0;transform:translateX(15vw);transition:all .3s ease;width:100px;z-index:5}.macro-overlay.expanded{display:flex;flex-direction:column;height:auto;max-height:50vh;transform:translateX(12.5vw);width:300px}.macro-header{align-items:center;background-color:#0003;box-sizing:border-box;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:space-between;padding:10px}.expand-icon{font-size:1.2em}.macro-content{box-sizing:border-box;display:flex;flex-direction:column;height:calc(50vh - 40px)}.macro-list{flex:1 1;flex-direction:column;gap:10px;min-height:0;overflow-y:auto}.macro-item,.macro-list{display:flex;padding:10px}.macro-item{background-color:#ffffff1a;border-radius:4px;flex-direction:column;gap:5px}.macro-title{font-weight:700;margin-bottom:5px}.macro-buttons{gap:8px;width:100%}.macro-action-btn,.macro-buttons{display:flex;justify-content:center}.macro-action-btn{align-items:center;background-color:#4a4a4a;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:.9em;min-width:80px;padding:8px 12px;text-align:center;transition:background-color .2s}.macro-action-btn:hover{background-color:#5a5a5a}.macro-edit-btn{background-color:#2196f3}.macro-edit-btn:hover{background-color:#1976d2}.macro-delete-btn{background-color:#f44}.macro-delete-btn:hover{background-color:#f66}.macro-form{background-color:#000c;border-radius:4px;display:flex;flex-direction:column;flex-shrink:0;gap:10px;padding:10px}.macro-form input,.macro-form textarea{background-color:#333;border:1px solid #444;border-radius:4px;color:#fff;padding:8px}.macro-form textarea{min-height:60px;resize:vertical}.macro-form button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px}.macro-form button:hover{background-color:#45a049}:root{--attack-overlay-gold:gold;--attack-overlay-red:red;--attack-overlay-orange:#ff6500;--attack-overlay-blue:#06f;--attack-overlay-purple:#9832a8;--attack-overlay-black:#000000b3;--attack-overlay-white:#fffc;--attack-range-radius:50%;--attack-line-height:3px;--attack-overlay-z-index:150;--attack-spotlight-z-index:100;--attack-targeting-z-index:200}.instinct-range-overlay{animation:rangeOverlayPulse 2s ease-in-out infinite alternate;background:radial-gradient(circle,#ffd7001a 0,#ffd7000d 70%,#0000 100%);border:3px solid gold;border:3px solid var(--attack-overlay-gold);border-radius:50%;border-radius:var(--attack-range-radius);box-shadow:0 0 10px #ffd7004d,inset 0 0 20px #ffd7001a;pointer-events:none;position:absolute;z-index:150;z-index:var(--attack-overlay-z-index)}@keyframes rangeOverlayPulse{0%{opacity:.6;transform:scale(1)}to{opacity:.8;transform:scale(1.02)}}.attack-spotlight-overlay{background:#000000b3;background:var(--attack-overlay-black);height:100vh;left:0;mask-composite:subtract;-webkit-mask-composite:subtract;pointer-events:none;position:fixed;top:0;transition:opacity .3s ease;width:100vw;z-index:100;z-index:var(--attack-spotlight-z-index)}.circle-area-targeting-overlay{animation:circleTargetingPulse 1s ease-in-out infinite alternate;background:radial-gradient(circle,#ff650033 0,#ff65001a 60%,#ff65000d 100%);border:2px solid #ff6500;border:2px solid var(--attack-overlay-orange);border-radius:50%;border-radius:var(--attack-range-radius);box-shadow:0 0 15px #ff650066,inset 0 0 10px #ff650033;pointer-events:none;position:absolute;transition:all .1s ease;z-index:200;z-index:var(--attack-targeting-z-index)}@keyframes circleTargetingPulse{0%{box-shadow:0 0 15px #ff650066,inset 0 0 10px #ff650033;opacity:.7}to{box-shadow:0 0 25px #ff650099,inset 0 0 15px #ff65004d;opacity:.9}}.line-area-targeting-overlay{left:0;position:absolute;top:0;z-index:200;z-index:var(--attack-targeting-z-index)}.line-area-targeting-overlay,.line-area-targeting-svg{height:100%;pointer-events:none;width:100%}.line-area-targeting-polygon{fill:#0066ff4d;stroke:#06f;stroke:var(--attack-overlay-blue);stroke-width:2;animation:lineTargetingPulse 1.2s ease-in-out infinite alternate;filter:drop-shadow(0 0 8px rgba(0,102,255,.5))}@keyframes lineTargetingPulse{0%{fill-opacity:.2;stroke-opacity:.6}to{fill-opacity:.4;stroke-opacity:1}}.attack-animation-line{animation:attackAnimationLine .8s ease-in-out;background:linear-gradient(90deg,gold,red);background:linear-gradient(90deg,var(--attack-overlay-gold),var(--attack-overlay-red));box-shadow:0 0 6px #ffd700cc,0 0 12px #f009;height:3px;height:var(--attack-line-height);pointer-events:none;position:absolute;transform-origin:left center;z-index:150;z-index:var(--attack-overlay-z-index)}@keyframes attackAnimationLine{0%{filter:blur(2px);opacity:0;transform:scaleX(0)}30%{filter:blur(1px);opacity:1;transform:scaleX(.7)}60%{filter:blur(0);opacity:1;transform:scaleX(1)}to{filter:blur(1px);opacity:0;transform:scaleX(1)}}.range-indicator-circle{animation:rangeIndicatorPulse 3s ease-in-out infinite;background:#ffd7000d;border:2px dashed gold;border:2px dashed var(--attack-overlay-gold);border-radius:50%;border-radius:var(--attack-range-radius);opacity:.8;pointer-events:none;position:absolute;z-index:150;z-index:var(--attack-overlay-z-index)}@keyframes rangeIndicatorPulse{0%,to{border-color:#ffd70099;opacity:.6}50%{border-color:gold;opacity:.9}}.attack-target-highlight{animation:attackTargetHighlight .6s ease-in-out infinite alternate;background:#ff00001a;border:3px solid red;border:3px solid var(--attack-overlay-red);border-radius:50%;border-radius:var(--attack-range-radius);box-shadow:0 0 12px #f009,inset 0 0 8px #f003;pointer-events:none;position:absolute;z-index:200;z-index:var(--attack-targeting-z-index)}@keyframes attackTargetHighlight{0%{opacity:.7;transform:scale(1)}to{opacity:1;transform:scale(1.05)}}.area-effect-preview{opacity:.8;pointer-events:none;position:absolute;transition:all .1s ease;z-index:200;z-index:var(--attack-targeting-z-index)}.area-effect-preview.circle{background:radial-gradient(circle,#ff650026 0,#ff65000d 100%);border:2px solid #ff6500;border:2px solid var(--attack-overlay-orange);border-radius:50%;border-radius:var(--attack-range-radius)}.area-effect-preview.line{background:linear-gradient(45deg,#06f3,#0066ff1a);border:1px solid #06f;border:1px solid var(--attack-overlay-blue)}.targeting-crosshair{height:20px;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:20px;z-index:200;z-index:var(--attack-targeting-z-index)}.targeting-crosshair:after,.targeting-crosshair:before{background:#fffc;background:var(--attack-overlay-white);box-shadow:0 0 4px #000c;content:"";position:absolute}.targeting-crosshair:before{height:20px;left:50%;transform:translateX(-50%);width:2px}.targeting-crosshair:after{height:2px;top:50%;transform:translateY(-50%);width:20px}.attack-mode-indicator{animation:attackModeIndicator 2s ease-in-out infinite alternate;background:linear-gradient(135deg,#000c,#282828e6);border:2px solid gold;border:2px solid var(--attack-overlay-gold);border-radius:20px;box-shadow:0 4px 12px #00000080,0 0 20px #ffd7004d;color:gold;color:var(--attack-overlay-gold);font-size:14px;font-weight:700;left:50%;padding:8px 16px;pointer-events:none;position:fixed;top:20px;transform:translateX(-50%);z-index:200;z-index:var(--attack-targeting-z-index)}@keyframes attackModeIndicator{0%{opacity:.8;text-shadow:0 0 5px #ffd70080}to{opacity:1;text-shadow:0 0 10px #ffd700cc}}@media (max-width:768px){.attack-mode-indicator{font-size:12px;padding:6px 12px}.targeting-crosshair{height:16px;width:16px}.targeting-crosshair:before{height:16px}.targeting-crosshair:after{width:16px}}@media (prefers-contrast:high){.instinct-range-overlay{background:#ffd70033;border-width:4px}.circle-area-targeting-overlay{background:#ff65004d;border-width:3px}.attack-animation-line{box-shadow:0 0 8px gold,0 0 16px #f00c;height:4px}}@media (prefers-reduced-motion:reduce){.attack-mode-indicator,.attack-target-highlight,.circle-area-targeting-overlay,.instinct-range-overlay,.line-area-targeting-polygon,.range-indicator-circle{animation:none}.attack-animation-line{animation:attackAnimationLineReduced .4s ease-in-out}}@keyframes attackAnimationLineReduced{0%{opacity:0;transform:scaleX(0)}50%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}
/*# sourceMappingURL=main.b3398a70.css.map*/