body{margin:0}.instance-manager{margin:0 auto;max-width:1400px;padding:20px}.header{justify-content:space-between;margin-bottom:30px}.header,.header-actions{align-items:center;display:flex}.header-actions{gap:20px}.auto-toggle{align-items:center;background:#f8f9fa;border:1px solid #ddd;border-radius:20px;display:flex;gap:10px;padding:5px 15px}.auto-toggle label{color:#555;font-size:14px;font-weight:500}.header h1{color:#333;margin:0}.create-form{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.create-form h2{color:#333;margin-top:0}.form-group{margin-bottom:15px}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:5px}.form-control{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:400px 1fr}.instances-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-height:calc(100vh - 200px);overflow-y:auto;padding:20px}.instances-list h2{border-bottom:2px solid #007bff;color:#333;margin-bottom:10px;margin-top:0;padding-bottom:10px}.list{display:flex;flex-direction:column;gap:15px}.instance-card{border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:15px;transition:all .2s}.instance-card:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff33}.instance-card.selected{background-color:#f0f7ff;border-color:#007bff}.instance-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.instance-header h3{color:#333;font-size:18px;margin:0}.badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 12px;text-transform:uppercase}.badge-success{background-color:#28a745;color:#fff}.badge-warning{background-color:#ffc107;color:#333}.badge-danger{background-color:#dc3545;color:#fff}.badge-info{background-color:#17a2b8;color:#fff}.badge-secondary{background-color:#6c757d;color:#fff}.instance-info{margin-bottom:10px}.instance-info p{color:#666;font-size:14px;margin:5px 0}.instance-actions{display:flex;flex-wrap:wrap;gap:8px}.btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.btn:hover{opacity:.9;transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:#007bff;color:#fff}.btn-success{background-color:#28a745;color:#fff}.btn-warning{background-color:#ffc107;color:#333}.btn-danger{background-color:#dc3545;color:#fff}.btn-sm{font-size:12px;padding:4px 8px}.instance-details{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-height:calc(100vh - 200px);overflow-y:auto;padding:20px}.instance-details h2{border-bottom:2px solid #007bff;color:#333;margin-bottom:10px;margin-top:0;padding-bottom:10px}.no-selection{align-items:center;color:#999;display:flex;height:400px;justify-content:center}.status-card{display:flex;flex-direction:column;gap:30px}.agents-section h3,.best-agent-section h3,.progress-section h3{color:#555;margin-bottom:15px;margin-top:0}.progress-bar{background-color:#e9ecef;border-radius:15px;height:30px;margin-bottom:10px;overflow:hidden;width:100%}.progress-fill{align-items:center;background:linear-gradient(90deg,#007bff,#0056b3);color:#fff;display:flex;font-weight:500;height:100%;justify-content:center;transition:width .5s ease}.card-progress{margin:10px 0}.progress-bar.mini{height:8px;margin-bottom:5px}.roi-label{color:#28a745;font-size:13px;font-weight:600}.profit{color:#28a745;font-size:24px;font-weight:700;margin:10px 0}.agents-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.agent-card{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:15px}.agent-card h4{color:#333;font-size:16px;margin:0 0 10px}.agent-card p{color:#666;font-size:14px;margin:5px 0}@media (max-width:1024px){.content{grid-template-columns:1fr}.instance-details,.instances-list{max-height:none}}.leaderboard{margin:0 auto;max-width:1400px;padding:20px}.leaderboard .header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.roi-explanation{background:linear-gradient(135deg,#667eea15,#764ba215);border-left:4px solid #667eea;border-radius:4px;margin-bottom:25px;padding:15px 20px}.roi-explanation p{color:#555;font-size:14px;margin:5px 0}.roi-explanation .formula-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:inline-block;margin:10px 0;min-width:300px;padding:15px}.roi-explanation .formula-label{color:#333!important;font-weight:700;margin-bottom:10px!important}.roi-explanation .formula-math-boxed{align-items:center;background:#fff;border:2px solid #667eea;border-radius:8px;box-shadow:0 4px 6px #0000000d;color:#222;display:flex;font-family:Times New Roman,Times,serif;font-size:1.15em;gap:8px;justify-content:center;margin:10px auto;padding:15px 25px}.formula-roi-label{font-weight:700;margin-right:5px}.formula-log{font-weight:500;margin-left:5px}.formula-n{font-style:italic}.roi-explanation .formula-math{align-items:center;color:#222;display:flex;font-family:Times New Roman,Times,serif;font-size:1.1em;gap:10px;justify-content:center}.formula-paren{font-size:1.8em;font-weight:300}.formula-one{margin-right:5px}.roi-explanation .formula-fraction{align-items:center;display:inline-flex;flex-direction:column;vertical-align:middle}.roi-explanation .formula-numerator{border-bottom:1px solid #333}.roi-explanation .formula-denominator,.roi-explanation .formula-numerator{padding:0 5px;text-align:center;width:100%}.roi-explanation .formula-minus{font-size:1.2em;font-weight:700}.roi-explanation .formula-note{color:#666!important;font-size:.85em!important;font-style:italic;margin-top:10px!important}.roi-explanation .interpretation{color:#666;font-style:italic;margin-top:8px}.formula-container{background:#fff;border-radius:8px;box-shadow:inset 0 2px 4px #0000000d;display:flex;justify-content:center;margin:15px 0;overflow-x:auto;padding:10px}.formula-container .katex-display{margin:0}.leaderboard h1{color:#333;font-size:32px;margin:0}.controls{align-items:center;gap:15px}.controls label{align-items:center;color:#555;display:flex;font-weight:500;gap:10px}.limit-select{border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px}.loading{color:#666;font-size:18px;padding:40px;text-align:center}.alert{border-radius:4px;margin-bottom:20px;padding:15px}.alert-danger{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.leaderboard-content{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.no-data{color:#999;padding:60px;text-align:center}.leaderboard-table{width:100%}.table-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:grid;font-size:14px;font-weight:600;grid-template-columns:80px 180px 180px 100px 150px 130px 130px 130px 100px;letter-spacing:.5px;padding:15px 20px;text-transform:uppercase}.table-body{display:flex;flex-direction:column}.table-row{align-items:center;border-bottom:1px solid #e9ecef;display:grid;grid-template-columns:80px 180px 180px 100px 150px 130px 130px 130px 100px;padding:20px;transition:all .2s}.table-row:hover{background-color:#f8f9fa;transform:translateX(5px)}.table-row.podium{background:linear-gradient(90deg,#ffd7000d,#0000)}.table-row.rank-1{background:linear-gradient(90deg,#ffd70026,#0000)}.table-row.rank-2{background:linear-gradient(90deg,#c0c0c026,#0000)}.table-row.rank-3{background:linear-gradient(90deg,#cd7f3226,#0000)}.col-rank{align-items:center;display:flex;justify-content:center}.rank-badge{font-size:24px;font-weight:700}.agent-info,.instance-info{display:flex;flex-direction:column;gap:4px}.agent-name,.instance-name{color:#333;font-size:15px;font-weight:600}.agent-id,.instance-id{color:#999;font-size:12px}.profit{font-size:16px;font-weight:600}.profit.positive{color:#28a745}.profit.negative{color:#dc3545}.col-roi{align-items:center;display:flex;justify-content:center}.roi{background:#0000000d;border-radius:20px;font-size:18px;font-weight:700;padding:6px 12px}.roi.positive{background:#28a7451a;color:#28a745}.roi.negative{background:#dc35451a;color:#dc3545}.col-history{align-items:center;display:flex;justify-content:center}.btn-history{background:#f0f2f5;border:1px solid #dcdfe6;border-radius:4px;color:#606266;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s}.btn-history:hover{background:#e4e7ed;border-color:#c0c4cc}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:500px;overflow:hidden;width:90%}.modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.modal-header h2{color:#333;font-size:20px;margin:0}.close-button{background:none;border:none;color:#999;cursor:pointer;font-size:28px}.modal-body{flex:1 1;overflow-y:auto;padding:0}.history-list{display:flex;flex-direction:column}.history-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:grid;grid-template-columns:20px 1fr 100px 80px 20px;padding:15px 20px;transition:background .2s}.history-item:hover{background-color:#f5f7fa}.game-status-dot{border-radius:50%;height:10px;width:10px}.history-item.win .game-status-dot{background-color:#28a745}.history-item.loss .game-status-dot{background-color:#dc3545}.history-item.draw .game-status-dot{background-color:#6c757d}.history-item.win .game-profit{color:#28a745;font-weight:700}.history-item.loss .game-profit{color:#dc3545;font-weight:700}.game-episode{color:#333;font-weight:500}.game-time{color:#999;font-size:12px}.view-details-arrow{color:#ccc;font-size:18px;text-align:right}.game-details{padding:20px}.back-button{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;margin-bottom:20px;padding:0}.details-grid{background:#f8f9fa;border-radius:8px;padding:20px}.detail-row{border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:10px 0}.detail-row:last-child{border-bottom:none}.detail-row span{color:#666}.winrate-bar{background-color:#e9ecef;border-radius:15px;height:30px;overflow:hidden;position:relative;width:100%}.winrate-fill{background:linear-gradient(90deg,#28a745,#20c997);height:100%;transition:width .5s ease}.winrate-text{color:#333;font-size:13px;font-weight:600;left:50%;position:absolute;text-shadow:0 0 3px #fffc;top:50%;transform:translate(-50%,-50%)}.col-games{color:#666;font-weight:500}@media (max-width:1200px){.table-header,.table-row{font-size:13px;grid-template-columns:60px 150px 200px 100px 120px 120px 100px}.leaderboard h1{font-size:24px}}@media (max-width:768px){.leaderboard{padding:10px}.leaderboard .header{align-items:flex-start;flex-direction:column;gap:15px}.table-header,.table-row{gap:10px;grid-template-columns:1fr}.table-header{display:none}.table-row{grid-gap:5px;display:grid;gap:5px;grid-template-columns:1fr 1fr 1fr 1fr}.col-rank{grid-column:1/2;grid-row:1}.col-agent{grid-column:1/3;grid-row:2}.col-instance{grid-column:3/5;grid-row:2}.col-roi{grid-column:1/2}.col-profit,.col-roi{grid-row:3;justify-content:flex-start}.col-profit{grid-column:2/5}.col-avg-profit,.col-games{display:none}.col-winrate{grid-column:1/5;grid-row:4}.agent-info,.instance-info{gap:2px}.table-row{align-items:flex-start;display:flex;flex-direction:column;padding:15px}.col-agent,.col-avg-profit,.col-games,.col-instance,.col-profit,.col-rank,.col-winrate{width:100%}.rank-badge{font-size:20px}.winrate-bar{width:100%}}.game-container{background-color:#0e301a;border-radius:20px;box-shadow:0 20px 50px #0009;color:#fff;font-family:Inter,-apple-system,sans-serif;margin:20px auto;max-width:1000px;padding:30px}.game-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.pot-display{color:gold;font-size:1.8rem;font-weight:800}.pot-display span{background:#ffd70033;border-radius:10px;padding:5px 15px}.poker-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000004d;display:flex;flex-direction:column;height:120px;justify-content:space-between;padding:8px;position:relative;transition:transform .2s;-webkit-user-select:none;user-select:none;width:80px}.poker-card:hover{transform:translateY(-5px)}.poker-card.back{background:linear-gradient(135deg,#1a237e,#0d47a1);border:4px solid #fff;color:#fff;font-size:2rem;overflow:hidden}.card-inner,.poker-card.back{align-items:center;display:flex;justify-content:center}.card-inner{border:2px dashed #ffffff4d;border-radius:6px;height:100%;width:100%}.card-svg-container{align-items:center;background-color:initial;box-shadow:none;display:flex;justify-content:center;padding:0}.card-image{height:100%;object-fit:contain;width:100%}.fallback-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000004d;display:flex;flex-direction:column;justify-content:space-between;padding:8px}.card-bottom,.card-top{align-items:center;display:flex;flex-direction:column;line-height:1}.card-bottom{transform:rotate(180deg)}.rank{font-size:.9rem;font-weight:900}.suit{font-size:1.2rem}.card-center{font-size:3rem;left:50%;opacity:.15;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.table-area{background:#1b5e20;border:12px solid #3e2723;border-radius:150px;box-shadow:inset 0 0 100px #00000080;margin-bottom:40px;min-height:400px;padding:50px;position:relative}.public-cards{display:flex;gap:15px;justify-content:center;margin-bottom:60px;min-height:120px}.opponents-grid{display:flex;gap:20px;justify-content:space-around}.player-box{align-items:center;background:#0009;border:3px solid #0000;border-radius:15px;display:flex;gap:15px;padding:15px;transition:all .3s}.player-box.active{border-color:gold;box-shadow:0 0 20px #ffd70066;transform:scale(1.05)}.avatar{font-size:2rem}.name{color:#bbb;font-size:.9rem}.name,.stack{font-weight:700}.stack{color:#4caf50;font-size:1.2rem}.player-section{align-items:center;background:#ffffff0d;border-radius:20px;display:flex;justify-content:space-between;padding:30px}.player-box.human{background:none;border:none;flex-direction:column}.player-main-info{align-items:center;display:flex;gap:20px;margin-bottom:20px}.hand-display{display:flex;gap:15px}.controls{display:flex;flex:1 1;justify-content:flex-end}.action-buttons{display:flex;flex-direction:column;gap:10px}.btn-action{border:none;border-radius:10px;cursor:pointer;font-size:1.1rem;font-weight:700;min-width:250px;padding:15px 40px;text-transform:uppercase;transition:all .2s}.btn-0{background:#d32f2f;color:#fff}.btn-1{background:#1976d2;color:#fff}.btn-2{background:#388e3c;color:#fff}.btn-action:hover:not(:disabled){filter:brightness(1.2);transform:translateX(-5px)}.btn-action:disabled{cursor:not-allowed;opacity:.3}.replay-button,.start-button{background:gold;border:none;border-radius:15px;box-shadow:0 10px 0 #b8860b;color:#000;cursor:pointer;font-size:1.5rem;font-weight:800;padding:20px 50px}.replay-button:active{box-shadow:0 5px 0 #b8860b;transform:translateY(5px)}.agent-reveal-zone{align-items:center;display:flex;justify-content:center;min-height:70px}.agent-revealed-hand{background:#ffffff1a;border-radius:5px;display:flex;gap:5px;margin-top:5px;padding:5px}.agent-revealed-hand .poker-card{font-size:.6rem;height:60px;padding:3px;width:40px}.agent-revealed-hand .poker-card .rank{font-size:.6rem}.agent-revealed-hand .poker-card .suit{font-size:.5rem}.agent-revealed-hand .poker-card .card-center{font-size:1.5rem}.result-badge{border-radius:20px;box-shadow:0 5px 10px #0000004d;font-size:1.2rem;font-weight:700;padding:5px 15px;position:absolute;right:-15px;top:-15px}.result-badge.win{background:#4caf50}.result-badge.loss{background:#f44336}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{display:flex;flex-direction:column;min-height:100vh}.navbar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-container{align-items:center;display:flex;height:70px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 20px}.navbar-brand{display:flex;flex-direction:column;gap:2px}.logo{align-items:center;color:#fff;display:flex;font-size:28px;font-weight:700;gap:8px}.subtitle{color:#fffc;font-size:12px;letter-spacing:1px;text-transform:uppercase}.navbar-menu{display:flex;gap:30px;list-style:none}.nav-link{border-radius:4px;color:#fff;font-size:16px;font-weight:500;padding:8px 16px;position:relative;text-decoration:none;transition:all .2s}.nav-link:hover{background-color:#ffffff1a}.nav-link:after{background-color:#fff;bottom:-8px;content:"";height:3px;left:0;position:absolute;transition:width .3s;width:0}.nav-link:hover:after{width:100%}.main-content{flex:1 1;padding:20px 0}.footer{background-color:#2d3748;color:#fff;margin-top:auto;padding:20px;text-align:center}.footer p{font-size:14px;margin:0;opacity:.8}@media (max-width:768px){.navbar-container{flex-direction:column;gap:15px;height:auto;padding:15px 20px}.navbar-menu{gap:15px}.nav-link{font-size:14px}.logo{font-size:24px}}
/*# sourceMappingURL=main.0ad637d5.css.map*/