@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700&family=Inter:wght@400&display=swap";.combat-overlay-container{position:absolute;top:0;left:0;right:0;margin:0 auto;width:100%;height:100%;pointer-events:none;z-index:1000;transition:transform .1s ease}.combat-overlay-container.fixed-size{width:844px;height:390px}.screen-shake{animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-4px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-8px,0,0)}40%,60%{transform:translate3d(8px,0,0)}}.retro-rpg-box{background:color-mix(in srgb,var(--color-primary-dark) 90%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:3px solid var(--color-accent-gold);border-radius:12px;box-shadow:inset 0 0 0 2px #ffffff1a,0 8px 32px #0009,0 0 15px var(--color-accent-gold);color:#fff;font-family:Courier New,Courier,monospace;padding:24px;min-width:300px;pointer-events:auto;animation:slideUp .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.defender-panel{position:absolute;top:0;right:0}.defender-panel.compact{min-width:210px}.attacker-panel{position:absolute;bottom:0;left:0;margin-bottom:40px}.command-btn{flex:1;background:var(--color-bg-parchment);color:var(--color-text-dark);border:2px solid var(--color-accent-gold);border-radius:8px;padding:12px 16px;margin:0 4px;font-size:1.2rem;font-weight:700;cursor:pointer;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:2px;box-shadow:0 4px 6px #0006}.command-btn:hover{background:var(--color-accent-gold);color:var(--color-text-dark);transform:translateY(-2px);box-shadow:0 6px 12px #00000080}.command-btn:active{transform:translateY(1px);box-shadow:0 2px 4px #0006}.rpg-box-header{font-size:1.4rem;font-weight:800;margin-bottom:12px;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 0px rgba(0,0,0,.8);color:#f1c40f}.combat-hp-bar-container{width:100%;height:16px;background-color:#1a1a1a;border:2px solid #34495e;border-radius:6px;margin-bottom:10px;position:relative;box-shadow:inset 0 2px 4px #00000080;display:flex}.combat-hp-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#27ae60,#2ecc71);transition:width .4s cubic-bezier(.4,0,.2,1),background .4s;box-shadow:inset 0 2px 4px #fff3}.combat-block-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#bdc3c7,#ecf0f1);box-shadow:inset 0 2px 4px #fff6;display:flex;align-items:center;justify-content:center;color:#2c3e50;font-size:10px;font-weight:900;text-shadow:0px 1px 1px rgba(255,255,255,.8);transition:width .4s cubic-bezier(.4,0,.2,1);border-left:1px solid rgba(0,0,0,.2)}.combat-hp-bar-fill.warning{background:linear-gradient(90deg,#d35400,#e67e22)}.combat-hp-bar-fill.critical{background:linear-gradient(90deg,#c0392b,#e74c3c)}.status-label{font-size:1rem;color:#bdc3c7;margin-top:8px;font-weight:700}.action-bar-container{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100%;box-sizing:border-box;padding:0;pointer-events:auto;z-index:1010}.command-list{margin:0;list-style:none;padding:0;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;width:100%;gap:6px}.command-list:empty{display:none;margin:0}.command-item{flex:1;justify-content:center;text-align:center;padding:8px 12px;cursor:pointer;font-size:1.1rem;font-weight:700;border-radius:6px 6px 0 0;background:var(--color-bg-parchment);border:2px solid var(--color-accent-gold);border-bottom:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;box-shadow:0 4px 6px #0006;color:var(--color-text-dark)}.command-item:first-child{border-left:none}.command-item:last-child{border-right:none}.command-item:hover{background:var(--color-accent-gold);color:var(--color-primary-dark);border-color:var(--color-accent-gold);transform:translateY(-2px);box-shadow:0 4px 10px #f1c40f66}.combat-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:center;z-index:2000;pointer-events:auto}.combat-modal-content{pointer-events:auto;animation:slideUp .3s cubic-bezier(.16,1,.3,1) forwards}.damage-number{position:absolute;font-size:3rem;font-weight:900;color:#f33;text-shadow:-2px -2px 0 #fff,2px -2px 0 #fff,-2px 2px 0 #fff,2px 2px 0 #fff,0 4px 15px rgba(0,0,0,.8);pointer-events:none;z-index:1001;animation:floatDamage 1s cubic-bezier(.16,1,.3,1) forwards}@keyframes floatDamage{0%{transform:scale(.5) translateY(0);opacity:0}20%{transform:scale(1.2) translateY(-20px);opacity:1}40%{transform:scale(1) translateY(-30px);opacity:1}to{transform:scale(1) translateY(-60px);opacity:0}}.atb-bar-container{width:100%;height:8px;background-color:#1a1a1a;border:1px solid #34495e;border-radius:4px;margin-bottom:10px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #00000080;z-index:10}.atb-bar-fill{height:100%;background:linear-gradient(90deg,#2980b9,#3498db);transition:width .2s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 1px 2px #fff3}.atb-bar-negative-fill{height:100%;background:repeating-linear-gradient(-45deg,rgba(0,0,0,.15),rgba(0,0,0,.15) 8px,transparent 8px,transparent 16px),#b07d2b;position:absolute;right:0;top:0;transition:width .2s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 1px 2px #fff3}.gambit-editor-container{padding:1rem;font-family:Inter,sans-serif;color:var(--color-text-dark)}.gambit-editor-title{font-family:Cinzel,serif;font-size:1.25rem;font-weight:700;color:var(--color-accent-gold);margin-bottom:1rem;border-bottom:2px solid var(--color-primary-dark);padding-bottom:.5rem}.gambit-editor-list{display:flex;flex-direction:column;gap:.5rem}.gambit-editor-row{display:flex;gap:.5rem;align-items:center;font-size:.875rem;border:1px solid var(--color-primary-dark);border-radius:4px;padding:.5rem;flex-wrap:wrap;background:var(--color-bg-parchment);box-shadow:inset 0 0 5px #0000001a}.gambit-editor-row.is-dragging{opacity:.5;box-shadow:0 4px 8px #0003}.gambit-drag-handle{cursor:grab;padding:.25rem;border-radius:4px;user-select:none;color:var(--color-primary-dark);font-weight:700}.gambit-if-label{font-weight:600;color:var(--color-primary-dark);text-transform:uppercase;letter-spacing:.1em;font-size:.75rem}.gambit-arrow{color:var(--color-primary-dark);font-weight:700;padding:0 .25rem}.gambit-condition-btn,.gambit-action-btn{background:transparent;color:var(--color-text-dark);padding:.25rem .5rem;font-family:Courier New,Courier,monospace;font-size:.875rem;font-weight:700;border:none;border-bottom:2px solid var(--color-primary-dark);cursor:pointer;text-align:left;transition:all .2s}.gambit-action-btn{flex:1}.gambit-condition-btn:hover,.gambit-action-btn:hover{background:#0000000d}.gambit-remove-btn{color:#8b0000;font-weight:700;margin-left:.5rem;padding:8px 12px;border-radius:4px;transition:all .2s;background:transparent;border:none;cursor:pointer;font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center}.gambit-remove-btn:hover{background:#8b00001a}.gambit-add-btn{margin-top:1rem;font-size:.875rem;background:var(--color-bg-parchment);color:var(--color-text-dark);font-weight:700;padding:.75rem;border-radius:4px;transition:all .2s;border:2px dashed var(--color-primary-dark);cursor:pointer;text-align:center}.gambit-add-btn:hover{background:#e8dcc5}.gambit-catalogue-config{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;font-family:Inter,sans-serif;color:var(--color-text-light)}.gambit-stamped-input{padding:.5rem;background:transparent;border:none;border-bottom:2px solid var(--color-accent-gold);color:var(--color-text-light);font-family:Courier New,Courier,monospace;font-weight:700;outline:none}.gambit-stamped-input option{background:var(--color-primary-dark);color:var(--color-text-light)}.gambit-catalogue-save-btn,.gambit-catalogue-item-btn{background:var(--color-primary-dark);color:var(--color-accent-gold);font-weight:700;padding:.5rem;border-radius:4px;border:1px solid var(--color-accent-gold);margin-top:.5rem;cursor:pointer;text-align:left}.gambit-catalogue-save-btn:hover,.gambit-catalogue-item-btn:hover{background:#111}.gambit-catalogue-back-btn{color:var(--color-accent-gold);background:transparent;border:none;cursor:pointer;text-align:left;font-size:.875rem;margin-bottom:.5rem}.gambit-catalogue-item-title{font-weight:700;display:block}.gambit-catalogue-item-desc{font-size:.75rem;color:#ccc;display:block}.catalogue-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:5000}.catalogue-modal-container{background:var(--color-primary-dark);padding:1rem;border-radius:8px;width:100%;max-width:28rem;max-height:80vh;display:flex;flex-direction:column;border:2px solid var(--color-accent-gold);box-shadow:0 10px 25px #000c;font-family:Inter,sans-serif}.catalogue-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.catalogue-modal-title{font-family:Cinzel,serif;font-size:1.25rem;font-weight:700;color:var(--color-accent-gold);margin:0}.catalogue-modal-close{color:#8b0000;background:transparent;border:none;font-weight:700;font-size:1.75rem;line-height:1;cursor:pointer;transition:color .2s;padding:0 .5rem}.catalogue-modal-close:hover{color:#a00}.catalogue-modal-body{flex:1;overflow:auto}.catalogue-modal-search{width:100%;box-sizing:border-box;background:var(--color-bg-parchment);color:var(--color-text-dark);border:1px solid var(--color-accent-gold);padding:8px;border-radius:4px;margin-bottom:1rem;font-family:Inter,sans-serif}.catalogue-modal-search:focus{outline:2px solid var(--color-primary-dark)}.catalogue-modal-list{flex:1;overflow-y:auto;display:flex;flex-direction:column}.catalogue-modal-item{text-align:left;background:var(--color-bg-parchment);border:none;border-bottom:1px solid var(--color-primary-dark);padding:.75rem;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s;cursor:pointer;color:var(--color-text-dark)}.catalogue-modal-item:hover{background:#e8e3d8}.catalogue-modal-item:last-child{border-bottom:none}.catalogue-modal-item-label{font-weight:700;font-size:1rem}.catalogue-modal-item-desc{font-size:.85em;color:#444;margin-top:.25rem}.catalogue-modal-arrow{color:var(--color-primary-dark);font-weight:700;margin-left:.5rem}.catalogue-modal-empty{text-align:center;color:var(--color-accent-gold);margin:1rem 0}.gambit-drawer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:2000}.gambit-drawer-overlay.open{pointer-events:auto}.gambit-drawer-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#0000;transition:background .3s ease}.gambit-drawer-overlay.open .gambit-drawer-backdrop{background:#0006}.gambit-drawer-content{position:absolute;top:0;left:-350px;width:350px;height:100%;background:var(--color-primary-dark);border-right:4px solid var(--color-accent-gold);box-shadow:4px 0 15px #00000080;transition:left .3s ease;display:flex;flex-direction:column}.gambit-drawer-overlay.open .gambit-drawer-content{left:0}.gambit-drawer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:2px solid var(--color-accent-gold)}.gambit-drawer-header h2{font-family:Cinzel,serif;color:var(--color-accent-gold);margin:0;font-size:1.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.gambit-drawer-close{background:transparent;border:none;color:var(--color-accent-gold);font-size:2rem;line-height:1;cursor:pointer;transition:color .2s}.gambit-drawer-close:hover{color:#fff}.gambit-drawer-body{flex:1;overflow-y:auto;padding:1rem}.gambit-drawer-body .gambit-editor-container{padding:0}.gambit-drawer-body .gambit-editor-title{display:none}.board-ui-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;display:flex;justify-content:flex-end;align-items:stretch;padding:20px;box-sizing:border-box}.hand-container{width:200px;display:flex;flex-direction:column;justify-content:center;gap:10px;pointer-events:auto;position:absolute;right:0;top:50%;transform:translateY(-50%);transform-origin:right center}@media(max-height:600px){.hand-container{transform:translateY(-50%) scale(.85)}}@media(max-height:480px){.hand-container{transform:translateY(-50%) scale(.7)}}@media(max-height:380px){.hand-container{transform:translateY(-50%) scale(.55)}}.movement-card{width:140px;height:180px;background-color:#f4e7c3;border:4px solid #3e2723;border-radius:12px;padding:10px;cursor:pointer;transition:transform .2s,box-shadow .2s,background-color .2s;user-select:none;display:flex;flex-direction:column;align-items:center;box-shadow:0 4px 6px #0000004d}.movement-card:hover{transform:translateY(-5px);box-shadow:0 8px 12px #0006}.movement-card.selected{transform:translate(-20px);border-color:gold;box-shadow:0 0 15px #ffd700cc;background-color:#fff8e1}.card-header{width:100%;display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-family:Arial,sans-serif;font-weight:700;color:#3e2723}.movement-value{font-size:20px;background:#3e2723;color:#fff;width:28px;height:28px;display:flex;justify-content:center;align-items:center;border-radius:50%}.stance-label{font-size:14px;text-transform:uppercase;letter-spacing:1px}.stance-icon{width:44px;height:44px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:24px;border:3px solid #3e2723}.stance-Fortified .stance-icon{background-color:#a8d5ba}.stance-Normal .stance-icon{background-color:#e0e0e0}.stance-Exposed .stance-icon{background-color:#f28b82}:root{--color-primary-dark: #2A0845;--color-primary-light: #6441A5;--color-accent-gold: #D4AF37;--color-accent-silver: #E0E0E0;--color-bg-parchment: #F4F1EA;--color-text-dark: #1A1A1A;--color-text-light: #FDFBF7}body{margin:0;padding:0;background-color:var(--color-primary-dark);color:var(--color-text-light);font-family:Inter,sans-serif;overflow:hidden;touch-action:none}h1,h2,h3,.title-screen-title,.waiting-room-title,.active-games-title,.card-title{font-family:Cinzel,serif}#app-container{position:relative;width:100dvw;height:100dvh}#rotate-overlay{display:none;position:fixed;inset:0;background:var(--color-primary-dark);color:var(--color-accent-gold);z-index:9999;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px}#rotate-overlay svg{margin-bottom:20px;animation:rotatePhone 2s infinite ease-in-out}@keyframes rotatePhone{0%{transform:rotate(0)}50%{transform:rotate(-90deg)}to{transform:rotate(-90deg)}}@media(max-width:900px)and (orientation:portrait){body:not(.allow-portrait) #app-container{display:none!important}body:not(.allow-portrait) #rotate-overlay{display:flex}}#ui-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;display:flex;justify-content:center;align-items:center}#auth-modal{background:var(--color-bg-parchment);color:var(--color-text-dark);border:4px solid var(--color-primary-dark);border-radius:6px;padding:clamp(1.5rem,5vw,2rem) clamp(2rem,8vw,4rem);width:90%;max-width:500px;box-shadow:0 4px 6px #0000004d;pointer-events:auto;text-align:center}#auth-modal h2{color:var(--color-primary-dark);font-size:clamp(2rem,8vw,2.5rem);margin-top:0}#auth-modal p{font-size:1.2rem;color:#555;font-weight:700}.auth-form{display:flex;flex-direction:column;gap:15px;margin-top:20px}.auth-input{padding:12px;font-size:1rem;border:2px solid #ccc;border-radius:8px;outline:none;transition:border-color .2s}.auth-input:focus{border-color:#3498db}.auth-btn-row{display:flex;gap:10px;justify-content:center;margin-top:10px}.auth-btn-secondary{background:transparent;color:var(--color-text-dark);border:2px solid var(--color-text-dark);padding:12px 24px;font-size:1.2rem;font-weight:700;border-radius:6px;cursor:pointer;transition:transform .1s,background .2s;box-shadow:0 4px 6px #0000001a}.auth-btn-secondary:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px 4px #0000001a}.auth-btn-secondary:hover:not(:disabled){background:#1a1a1a0d}.auth-btn-secondary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.oauth-divider{margin:20px 0;font-size:.9rem;color:#888;position:relative}.oauth-divider:before,.oauth-divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:#ddd}.oauth-divider:before{left:0}.oauth-divider:after{right:0}.oauth-providers{display:flex;justify-content:center;gap:15px;margin-top:10px}.oauth-btn{width:50px;height:50px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s,opacity .2s,box-shadow .2s;box-shadow:0 4px 6px #0000001a;padding:0}.oauth-btn:hover{transform:translateY(-2px);opacity:.9;box-shadow:0 6px 12px #00000026}.oauth-google{background:#fff;border:1px solid #ddd}.oauth-discord{background:#5865f2}.oauth-twitch{background:#9146ff}.oauth-steam{background:#171a21}.auth-help-text{font-size:.8rem;color:#1a1a1acc;margin-top:20px}.auth-help-text a,.auth-legal a{color:var(--color-primary-light);font-weight:600;text-decoration:underline}.auth-error{color:#e74c3c;background:#e74c3c1a;padding:10px;border-radius:4px;font-size:.9rem;margin-bottom:10px}#login-btn{background:var(--color-accent-gold);color:var(--color-text-dark);border:4px solid var(--color-primary-dark);padding:12px 24px;font-size:1.2rem;font-weight:700;border-radius:6px;cursor:pointer;transition:transform .1s,box-shadow .1s;box-shadow:0 4px 6px #0000004d}#login-btn:active{transform:translateY(4px);box-shadow:0 0 #1b5e20}.auth-bg{width:100dvw;height:100dvh;background-color:var(--color-primary-dark)}.title-screen-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100dvw;height:100dvh;background-color:var(--color-primary-dark);color:var(--color-text-light);position:relative;overflow-y:auto;overflow-x:hidden;padding:20px 0}.title-screen-container:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at center,transparent 0%,rgba(0,0,0,.6) 100%);pointer-events:none}.title-screen-title{font-size:clamp(2.5rem,8vw,4rem);color:var(--color-accent-gold);margin:0 0 20px}.title-screen-subtitle{font-size:1.2rem;margin-bottom:40px;color:#bdc3c7;text-align:center;padding:0 20px}.title-screen-error{color:#e74c3c;margin-bottom:20px;background:#e74c3c33;padding:10px;border-radius:4px}.title-screen-create-btn{padding:15px 30px;font-size:1.5rem;background:var(--color-accent-gold);color:var(--color-text-dark);border:4px solid var(--color-primary-dark);border-radius:6px;cursor:pointer;font-weight:700;box-shadow:0 8px 15px #00000080;transition:transform .1s,background .2s;margin-bottom:clamp(20px,4vh,40px);flex-shrink:0;min-width:clamp(240px,40vw,320px)}.title-screen-create-btn:hover:not(:disabled){background:#e8d385;transform:translateY(-4px);box-shadow:0 12px 20px #0009}.title-screen-create-btn:disabled{background:#7f8c8d;cursor:not-allowed;box-shadow:none;transform:none}.title-screen-install-btn{padding:15px 30px;font-size:1.2rem;background:var(--color-text-dark);color:var(--color-accent-gold);border:4px solid var(--color-accent-gold);border-radius:6px;cursor:pointer;font-weight:700;box-shadow:0 4px 6px #0000004d;transition:transform .1s,background .2s,color .2s;margin-bottom:clamp(20px,4vh,40px);flex-shrink:0;min-width:clamp(200px,35vw,260px)}.title-screen-install-btn:hover:not(:disabled){background:var(--color-accent-gold);color:var(--color-text-dark);transform:translateY(-2px)}.title-screen-logo{width:120px;margin-bottom:16px}.title-screen-buttons-container{display:flex;flex-direction:column;align-items:center;gap:15px;margin-bottom:40px}@media(max-height:600px),(max-width:900px){.title-screen-container{justify-content:flex-start;overflow-y:auto;padding-top:10px;padding-bottom:20px}.title-screen-logo{width:60px;margin-bottom:5px;margin-top:10px}.title-screen-title{font-size:1.8rem;margin:5px 0}.title-screen-subtitle{font-size:.9rem;margin-bottom:10px}.title-screen-buttons-container{margin-bottom:15px;gap:10px}.title-screen-create-btn,.title-screen-install-btn{padding:8px 16px;font-size:1rem}}.active-games-container{background:var(--color-bg-parchment);color:var(--color-text-dark);border:4px solid var(--color-primary-dark);border-radius:6px;padding:clamp(15px,3vw,20px);width:90%;max-width:600px;max-height:80dvh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000004d}.active-games-title{margin-top:0;margin-bottom:20px;color:var(--color-primary-dark);border-bottom:2px solid var(--color-primary-dark);padding-bottom:10px}.active-games-list{overflow-y:auto;flex:1;padding-right:10px}.active-games-empty{color:#95a5a6;text-align:center;margin:20px 0}.game-item{background:#0000000d;padding:15px;border-radius:4px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;border:2px solid transparent;transition:all .2s ease-in-out}.game-item:hover{background:#ffffff1a;border-color:#3498db}.game-item-title{font-weight:700;margin-bottom:5px}.game-item-meta{font-size:.9em;color:#95a5a6}.game-item-status{padding:5px 10px;border-radius:20px;font-size:.85em;font-weight:700;color:#fff}.copy-link-btn{padding:10px 20px;background:var(--color-accent-gold);color:var(--color-text-dark);border:2px solid var(--color-primary-dark);border-radius:4px;cursor:pointer;font-weight:700}.copy-link-btn:hover{background:#e8d385}.waiting-room-overlay{position:absolute;inset:0;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2000;color:#fff;font-family:sans-serif;backdrop-filter:blur(8px)}.waiting-room-title{font-size:clamp(2rem,8vw,3rem);color:#f1c40f;margin-bottom:10px}.waiting-room-subtitle{font-size:1.2rem;margin-bottom:30px;color:#bdc3c7}.waiting-room-main-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:500px}.waiting-room-content{background:var(--color-bg-parchment);color:var(--color-text-dark);border:4px solid var(--color-primary-dark);border-radius:6px;padding:clamp(20px,4vw,30px);width:90%;max-width:500px;box-shadow:0 4px 6px #0000004d;max-height:80dvh;overflow-y:auto}.waiting-room-players-title{margin-top:0;border-bottom:1px solid #555;padding-bottom:10px}.waiting-room-empty-players{color:#888}.waiting-room-players-list{list-style:none;padding:0}.waiting-room-player-item{font-size:1.2rem;margin:15px 0;display:flex;align-items:center}.waiting-room-player-color{margin-right:10px}.waiting-room-start-btn{margin-top:30px;width:100%;padding:15px;font-size:1.2rem;background:var(--color-primary-light);color:var(--color-text-light);border:4px solid var(--color-primary-dark);border-radius:6px;cursor:pointer;font-weight:700;transition:background .2s}.waiting-room-start-btn:hover:not(:disabled){background:#27ae60}.waiting-room-start-btn:disabled{background:#7f8c8d;cursor:not-allowed}.waiting-room-waiting-text{font-size:1.2rem;color:#f39c12}.board-container{width:100dvw;height:100dvh;overflow:hidden}#game-canvas-container{width:100%;height:100%;touch-action:none;user-select:none}.debug-panel{position:absolute;top:10px;right:10px;z-index:1000;padding:10px}.game-status-label{position:absolute;top:20px;left:20px;z-index:1000;background:#000000b3;color:#fff;padding:10px 20px;border-radius:8px;font-size:1.2rem;font-weight:700}.board-ui-container{position:absolute;bottom:20px;left:0;width:100%;justify-content:center;pointer-events:none;z-index:1000}.replay-timeline-container{position:absolute;left:50%;bottom:20px;transform:translate(-50%);background:var(--color-primary-dark);padding:1rem 2rem;border-radius:4px;display:flex;flex-direction:column;gap:.8rem;pointer-events:auto;border:2px solid var(--color-accent-gold);box-shadow:0 4px 15px #00000080;align-items:center;width:90%;max-width:500px}.replay-timeline-controls{display:flex;gap:15px;align-items:center}.replay-control-btn{background:var(--color-bg-parchment);border:2px solid #2b2b2b;color:var(--color-text-dark);font-size:1.5rem;padding:10px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;width:50px;height:50px;transition:background .2s,transform .1s;box-shadow:2px 2px #00000080}.replay-control-btn:hover{background:#e0d0b8}.replay-control-btn:active{transform:translate(1px,1px);box-shadow:1px 1px #00000080}.replay-timeline-progress-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;gap:5px}.replay-timeline-slider{width:100%;-webkit-appearance:none;appearance:none;height:8px;background:#1a1a1a;border-radius:4px;outline:none}.replay-timeline-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--color-accent-gold);cursor:pointer;border-radius:2px}.replay-timeline-slider::-moz-range-thumb{width:16px;height:16px;background:var(--color-accent-gold);cursor:pointer;border-radius:2px;border:none}.replay-timeline-label{color:var(--color-bg-parchment);font-family:Inter,sans-serif;font-size:.9rem;font-weight:700}.hand-container{display:flex;gap:15px;pointer-events:auto}.card{background:var(--color-bg-parchment);color:var(--color-text-dark);border-radius:6px;width:clamp(100px,15dvw,140px);height:clamp(140px,30dvh,200px);padding:clamp(8px,2dvh,15px);box-shadow:0 4px 6px #0000004d;cursor:pointer;transition:transform .2s ease-out,box-shadow .2s ease-out;display:flex;flex-direction:column;position:relative;border:4px solid var(--color-primary-dark)}.card:hover:not(.disabled){transform:translateY(-20px) scale(1.05);box-shadow:0 15px 30px #0006;border-color:#3498db;z-index:10}.card.disabled{opacity:.5;cursor:not-allowed;transform:none}.card-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #eee;padding-bottom:8px;margin-bottom:10px}.card-header-center{justify-content:center;margin-top:10px}.card-cost{background:#f1c40f;color:#8e44ad;width:clamp(20px,4dvh,28px);height:clamp(20px,4dvh,28px);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:clamp(.8rem,2dvh,1.1rem);border:2px solid #fff;box-shadow:0 2px 4px #0003}.card-title{font-weight:700;color:#2c3e50;font-size:clamp(.8rem,2dvh,1rem)}.card-body{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:center}.card-effect{font-size:clamp(1.2rem,3dvh,2rem);font-weight:700;color:#e74c3c;margin-bottom:clamp(5px,1dvh,10px)}.card-description{font-size:clamp(.7rem,1.5dvh,.85rem);color:#7f8c8d;line-height:1.2}.card-footer{border-top:1px solid #eee;padding-top:5px;font-size:clamp(.6rem,1dvh,.8rem);color:#95a5a6;text-align:center;text-transform:uppercase;letter-spacing:1px}.play-button{background:#3498db;color:#fff;border:none;border-radius:4px;padding:8px;cursor:pointer;font-weight:700;transition:background .2s}.play-button:hover{background:#2980b9}.combat-overlay{position:absolute;inset:0;z-index:3000;pointer-events:none}.combat-damage-number{position:absolute;color:#ff3b3b;font-size:4rem;font-weight:900;text-shadow:-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000,2px 2px 0 #000,0 4px 10px rgba(0,0,0,.5);transform:translate(-50%,-50%);pointer-events:none;font-family:Impact,Comic Sans MS,sans-serif;letter-spacing:2px}.hp-bar-container{width:60px;height:8px;background:#000c;border:2px solid #222;border-radius:4px;margin-top:-60px;margin-left:-30px;position:absolute}.hp-bar-fill{height:100%;background:linear-gradient(90deg,#e74c3c,#c0392b);border-radius:2px;transition:width .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 1px 2px #ffffff4d}.copy-invite-btn,.add-bot-btn{padding:10px 20px;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:8px;height:44px;min-width:auto}.copy-invite-btn .mobile-icon,.add-bot-btn .mobile-icon{display:none}@media(max-height:600px),(max-width:900px){.copy-invite-btn,.add-bot-btn{padding:10px;width:44px;height:44px;border-radius:8px}.copy-invite-btn .desktop-text,.add-bot-btn .desktop-text{display:none}.copy-invite-btn .mobile-icon,.add-bot-btn .mobile-icon{display:flex}.color-picker-container{flex-wrap:wrap!important;justify-content:center!important}.waiting-room-start-btn{position:fixed!important;bottom:0;left:0;width:100%!important;margin:0!important;border-radius:0!important;z-index:50;box-shadow:0 -4px 10px #00000080;border-top:4px solid var(--color-primary-dark)!important}.waiting-room-overlay{padding-bottom:70px!important;justify-content:flex-start;padding-top:10px}.waiting-room-title{display:none}.waiting-room-main-container{flex-direction:row;max-width:900px;align-items:stretch;gap:15px;padding:0 10px;height:100%;width:100%}.player-configurator{flex:1;padding:10px!important;margin-bottom:0!important;background:#00000080;border-radius:6px}.waiting-room-content{flex:1;margin-bottom:0!important;margin-top:0!important;max-width:none!important;overflow-y:auto}.player-configurator h3{margin-bottom:5px!important;font-size:1.1rem}.difficulty-container,.sprite-container{margin-bottom:5px!important}.sprite-container img{width:80px!important;height:80px!important}.sprite-container button{font-size:1.2rem!important}}
