.app{display:flex;flex-direction:column;height:100vh;background:#1a1a1a}html,body,#root{height:100%;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{display:flex;flex-direction:column}main{flex:1;display:flex;flex-direction:column;overflow:hidden}.grid-container{display:flex;gap:8px;padding:8px;width:100%;height:calc(100vh - 57px);box-sizing:border-box;position:relative}.videos-column{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.videos-column .grid-item{flex:1;min-height:100px;display:flex;flex-direction:column;width:100%;position:relative;background:#2a2a2a;border-radius:8px;overflow:hidden}.chesscom-column{width:0;overflow:hidden;transition:width .3s ease}.grid-container[data-has-chesscom=true] .chesscom-column{width:1052px;flex:0 0 1052px}.chesscom-column .grid-item{width:100%;height:100%;position:relative;background:#2a2a2a;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.grid-container.layout-vertical-stack{flex-direction:column;align-items:center;justify-content:flex-start}.grid-container.layout-vertical-stack .videos-column{width:80%;max-width:1000px;flex:1;display:flex;flex-direction:column;gap:8px;min-height:0}.grid-container.layout-vertical-stack .videos-column .grid-item{flex:1;min-height:100px;width:100%;min-height:0}.grid-container.layout-two-columns{flex-direction:row;align-items:stretch}.grid-container.layout-two-columns .videos-column{flex:1;display:flex;flex-direction:row;gap:8px;min-width:0;min-height:0}.grid-container.layout-two-columns .videos-column .videos-sub-column{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0;height:100%}.grid-container.layout-two-columns .videos-column .grid-item{flex:1;min-height:0;width:100%}.grid-container.layout-videos-chesscom{flex-direction:row;align-items:stretch;gap:8px}.grid-container.layout-videos-chesscom .videos-column{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0}.grid-container.layout-videos-chesscom .videos-column .grid-item{flex:1;min-height:0;width:100%}.grid-container.layout-videos-chesscom-stack{flex-direction:row;align-items:stretch;gap:8px}.grid-container.layout-videos-chesscom-stack .videos-column{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0}.grid-container.layout-three-columns{flex-direction:row;align-items:stretch;gap:8px}.grid-container.layout-three-columns .videos-column{flex:1;display:flex;flex-direction:row;gap:8px;min-width:0;min-height:0}.grid-container.layout-three-columns .videos-column .videos-sub-column{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0;height:100%}.grid-container.layout-three-columns .videos-column .grid-item{flex:1;min-height:0;width:100%}.grid-item{position:relative;background:#2a2a2a;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.chesscom-tile{height:calc(100vh - 57px);max-height:calc(100vh - 57px)}.grid-container.resizable{position:relative}.grid-item.resizable{resize:horizontal;overflow:auto}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#333;color:#fff;border-bottom:1px solid #555;height:57px;box-sizing:border-box;position:relative}.tournament-logo{font-size:16px;font-weight:700;flex:0 0 auto;padding-left:20px}.round-selector-center{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center}.round-selector-center .select-control{padding:8px 12px;border:1px solid #555;border-radius:4px;background:#444;color:#fff;cursor:pointer;font-size:14px}.top-bar h1{margin:0;font-size:18px;font-weight:600}.controls-group{display:flex;align-items:center;gap:12px;flex:0 0 auto;margin-left:auto}.controls-group select,.controls-group button{padding:8px 12px;border:1px solid #555;border-radius:4px;background:#444;color:#fff;cursor:pointer;font-size:14px}.controls-group button:hover{background:#555}.controls-group button.primary{background:#0066cc;border-color:#06c}.controls-group button.primary:hover{background:#0052a3}.controls-group button.secondary{background:#666;border-color:#666}.controls-group button.secondary:hover{background:#777}.tile-container{display:flex;flex-direction:column;height:100%;overflow:visible}.tile-content{position:relative;display:flex;flex-direction:column;align-items:stretch;flex:1;min-height:0;width:100%}.tile-content:has(.chesscom-container){height:100%}.tile-controls{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:#2a2a2a;flex-wrap:wrap}.tile-control-btn{padding:6px 12px;border:1px solid #555;border-radius:4px;background:#333;color:#fff;cursor:pointer;font-size:14px}.tile-control-btn:hover{background:#444}.tile-control-btn.tile-control-close{background:#cc4444;border-color:#c44}.tile-control-btn.tile-control-close:hover{background:#cc0000;border-color:#c00}.tile-control-select{padding:6px 8px;border:1px solid #555;border-radius:4px;background:#333;color:#fff;font-size:14px;max-width:200px}.tile-control-volume{width:100px;cursor:pointer}.tile-control-volume::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#007bff;cursor:pointer}.tile-control-volume::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#007bff;cursor:pointer;border:none}.youtube-container{width:100%;height:auto;position:relative;background:#1a1a1a;aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center;margin:0 auto}.tile-content .youtube-container{margin-left:auto;margin-right:auto}.youtube-container iframe{width:100%;height:100%;border:none;border-radius:4px}.chesscom-container{width:100%;height:100%;position:relative;display:flex;align-items:flex-start;justify-content:center;background:#1a1a1a;overflow:auto;padding:8px}.chesscom-container iframe{width:100%;height:100%;border:none;border-radius:4px}.chesscom-close-overlay{position:absolute;top:8px;right:8px;z-index:10}.chesscom-close-btn{padding:6px 12px;border:1px solid #555;border-radius:4px;background:#333;color:#fff;cursor:pointer;font-size:14px}.chesscom-close-btn:hover{background:#444}@media (max-width: 768px){.top-bar{flex-wrap:wrap;padding:8px 12px}.controls-group{gap:8px;font-size:12px}.tile-controls{flex-direction:column;gap:4px}.grid-item{min-height:200px;width:100%}.chesscom-column{width:0!important;flex:none!important}}
