.train-page-container{width:100%;min-height:100vh;background-image:url(/assets/training-bg.png);background-size:cover;background-position:50%;background-attachment:fixed;padding:calc(var(--header-height, 70px) + 2rem) 3vw 2rem 3vw}.loading-state-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;font-family:var(--font-display);font-size:1.5rem;text-transform:uppercase;color:var(--text-secondary);height:80vh}.loading-state-wrapper .spinner{font-size:3rem;color:var(--accent-primary);animation:spin 1s linear infinite}.page-title{font-family:var(--font-display);font-size:3rem;text-align:center;color:var(--text-heading);text-transform:uppercase;margin:0 0 2rem;letter-spacing:2px;text-shadow:0 0 15px rgba(var(--accent-primary-rgb),.5)}.status-indicator{background:rgba(var(--accent-primary-rgb),.05);border:1px dashed var(--color-border);padding:3rem;text-align:center;margin-top:2rem}.status-indicator h2{font-family:var(--font-display);font-size:1.5rem;letter-spacing:1px;color:var(--accent-primary);margin:0 0 .5rem}.status-indicator p{color:var(--text-secondary);margin:0}.fighters-training-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:2rem}.fighter-training-card{background-color:rgba(18,20,28,.5);border:1px solid rgba(255,170,0,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--border-radius,8px);display:flex;flex-direction:column;overflow:hidden;transition:all .2s ease-in-out}.fighter-training-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,.5);border-color:var(--color-border-hover)}.card-header{display:flex;gap:1rem;padding:1rem;background-color:rgba(0,0,0,.2);border-bottom:1px solid var(--color-border)}.sprite-container{width:80px;height:80px;flex-shrink:0;background-color:var(--color-background);border-radius:50%;border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center}.fighter-sprite{max-width:90%;max-height:90%}.header-info{display:flex;flex-direction:column;justify-content:center;gap:.5rem}.fighter-name{font-family:var(--font-display);font-size:1.8rem;color:var(--text-heading);margin:0}.total-skill-score{font-size:.9rem;color:var(--text-secondary);margin:0}.status-pill{display:inline-flex;align-items:center;gap:.5rem;padding:4px 10px;font-size:.8rem;font-weight:700;border-radius:20px;width:-moz-fit-content;width:fit-content}.status-pill.ready{background-color:rgba(39,174,96,.2);color:#27ae60}.status-pill.cooldown{background-color:rgba(241,196,15,.2);color:#f1c40f}.status-pill.error{background-color:rgba(217,47,75,.2);color:#d92f4b}.skills-section{padding:1rem;display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.training-item{gap:1rem;background:rgba(0,0,0,.2);padding:.5rem;border-radius:var(--border-radius)}.skill-display,.training-item{display:flex;align-items:center}.skill-display{flex-grow:1;gap:.75rem}.skill-icon{font-size:1.5rem;color:var(--accent-secondary)}.skill-info{flex-grow:1}.skill-label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.skill-bar{width:100%;height:6px;background-color:rgba(0,0,0,.5);border-radius:3px}.skill-bar-fill{height:100%;background-color:var(--accent-secondary);border-radius:3px;transition:width .3s ease}.skill-value{font-family:var(--font-display);font-size:1.1rem;min-width:25px;text-align:right}.train-button{width:40px;height:40px;flex-shrink:0;background-color:var(--accent-primary);color:var(--color-background);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;transition:all .2s ease}.train-button:hover:not(:disabled){transform:scale(1.1);box-shadow:0 0 15px rgba(var(--accent-primary-rgb),.7)}.train-button:disabled{background-color:#333;color:#666;cursor:not-allowed}.train-button.success{background-color:var(--accent-success);color:#fff}.train-button .btn-spinner{animation:spin 1s linear infinite}.card-footer{padding:.75rem 1rem;border-top:1px solid var(--color-border)}.chat-open-button{background:none;border:1px solid var(--color-border);color:var(--text-secondary);padding:.5rem 1rem;border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;width:100%;cursor:pointer;transition:all .2s}.chat-open-button:hover{background-color:var(--color-border);color:var(--text-primary)}.chat-modal-backdrop{position:fixed;inset:0;background-color:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s}.chat-modal-window{width:90%;max-width:450px;height:70vh;max-height:600px;background-color:rgba(18,20,28,.6);border:1px solid var(--color-border-hover);border-radius:var(--border-radius);box-shadow:0 10px 40px rgba(0,0,0,.5);display:flex;flex-direction:column}.chat-modal-header{padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border)}.chat-modal-header h3{font-family:var(--font-display);font-size:1.2rem;color:var(--accent-primary);margin:0}.chat-modal-header button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer}.chat-modal-body{flex-grow:1;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.chat-bubble{max-width:80%;padding:.5rem 1rem;border-radius:12px;font-size:.95rem;line-height:1.5}.chat-bubble p{margin:0}.chat-bubble.player{background-color:var(--accent-primary);color:var(--color-background);align-self:flex-end;border-bottom-right-radius:2px}.chat-bubble.fighter{background-color:#2c2f36;align-self:flex-start;border-bottom-left-radius:2px}.chat-bubble.is-typing{display:flex;gap:5px;align-items:center;padding:1rem}.chat-bubble.is-typing span{width:8px;height:8px;background-color:#666;border-radius:50%;animation:typing-dot 1.2s ease-in-out infinite}.is-typing span:nth-child(2){animation-delay:.2s}.is-typing span:nth-child(3){animation-delay:.4s}.chat-modal-input-form{display:flex;border-top:1px solid var(--color-border)}.chat-modal-input-form input{flex-grow:1;background:none;border:none;padding:1rem;color:var(--text-primary);outline:none;font-size:1rem}.chat-modal-input-form button{background:var(--accent-primary);border:none;color:var(--color-background);padding:1rem;cursor:pointer;font-size:1.2rem}.chat-modal-input-form button:disabled{background-color:#333;color:#666}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes typing-dot{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@media (max-width:768px){.train-page-container{padding:calc(var(--header-height, 70px) + 1rem) 3vw 1rem 3vw}.page-title{font-size:2rem}.fighters-training-grid{grid-template-columns:1fr}}