.plan-ahead{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;overflow:hidden;min-width:0}.plan-ahead-top{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding-bottom:6px;margin-bottom:6px;border-bottom:1px solid var(--border);min-height:28px}.plan-ahead-serve-toggle{display:flex;align-items:center;gap:4px;flex-shrink:0}.plan-ahead-serve-toggle .plan-ahead-label{margin-right:0}.plan-ahead-group,.plan-ahead-control-group{display:flex;align-items:center;gap:4px;flex-shrink:0}.plan-ahead-control-group .control-check{font-size:.6875rem}.plan-ahead-control-group .btn-rotation{width:28px;height:28px;font-size:.8125rem}.plan-ahead-libero-toggles{gap:4px 14px}.plan-ahead-label{font-size:.6875rem;color:var(--text-muted);white-space:nowrap}.plan-ahead-select{padding:3px 6px;font-size:.6875rem;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.plan-ahead-select:focus{outline:none;border-color:var(--accent)}.plan-ahead-rotation-control{display:flex;align-items:center;gap:3px}.plan-ahead-rot-btn{padding:3px 6px;font-size:.6875rem;font-weight:600;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;min-width:26px}.plan-ahead-rot-btn:hover{background:var(--bg-elevated);border-color:var(--text-muted)}.plan-ahead-rot-btn:focus{outline:none;border-color:var(--accent)}.plan-ahead-main{flex:1;min-height:0;min-width:0;display:flex;flex-direction:row;gap:16px;overflow:hidden}.plan-ahead-left-panel{flex-shrink:0;display:flex;flex-direction:column;gap:10px;min-width:0;width:280px}.plan-ahead-lineup-select-row,.plan-ahead-config-select-row{display:flex;flex-direction:column;gap:4px}.plan-ahead-lineup-select-row .plan-ahead-select,.plan-ahead-config-select-row .plan-ahead-select{width:100%;box-sizing:border-box}.plan-ahead-hint{font-size:.65rem;font-style:italic;margin-top:2px}.plan-ahead-table-panel{flex:0 0 auto;overflow:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}@media(max-width:700px){.plan-ahead-main{flex-direction:column}.plan-ahead-left-panel{width:auto}}.plan-ahead-compact-table{width:100%;border-collapse:collapse;font-size:.8125rem}.plan-ahead-compact-table thead th{padding:6px 8px 6px 0;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-muted);border-bottom:1px solid var(--border)}.plan-ahead-compact-table-team-row th{padding:6px 8px 8px 0;border-top:3px solid transparent;font-size:.8125rem}.plan-ahead-pos-header{width:1%;white-space:nowrap}.plan-ahead-team-header{text-align:center;white-space:nowrap;min-width:8em}.plan-ahead-compact-table tbody tr{border-bottom:1px solid var(--border)}.plan-ahead-compact-table tbody tr:last-child{border-bottom:none}.plan-ahead-compact-table tbody tr:hover{background:#ffffff08}.plan-ahead-pos-cell{padding:4px 12px 4px 0;font-weight:600;font-size:.8125rem;white-space:nowrap;vertical-align:middle}.plan-ahead-num-cell{padding:4px 8px;vertical-align:middle;width:56px}.plan-ahead-num-cell .plan-ahead-compact-num{width:100%;box-sizing:border-box}.plan-ahead-compact-num{padding:4px 6px;font-size:.75rem;text-align:center;background:var(--bg-input);border:1px solid var(--border);border-radius:4px;color:var(--text)}.plan-ahead-compact-num::placeholder{color:var(--text-dim)}.plan-ahead-serve-btn{padding:3px 8px;font-size:.6875rem;font-weight:600;color:var(--text-muted);background:var(--bg-input);border:1px solid var(--border);cursor:pointer;transition:background .2s,color .2s,border-color .2s}.plan-ahead-serve-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.plan-ahead-serve-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.plan-ahead-serve-btn.active{background:var(--team-color, var(--selection-bg));color:var(--selection-text);border-color:var(--team-color, var(--selection-border))}.plan-ahead-court-row,.plan-ahead-courts-row{flex:1;min-width:0;min-height:0;overflow:hidden;display:flex;align-items:stretch;justify-content:center;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius)}.plan-ahead-court-with-rotations{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:10px}.plan-ahead-rotation-buttons-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;flex-shrink:0}.plan-ahead-rotation-buttons-row .plan-ahead-control-group{display:flex;align-items:center;gap:4px}.plan-ahead-rotation-buttons-row .btn-rotation{width:28px;height:28px;padding:0;font-size:.8125rem;font-weight:600;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.plan-ahead-rotation-buttons-row .btn-rotation:hover{background:var(--bg-elevated);border-color:var(--text-muted)}.plan-ahead-rotation-buttons-row .btn-rotation.active{background:var(--selection-bg);color:var(--selection-text);border-color:var(--selection-border)}.plan-ahead-court-label-row{flex-shrink:0;font-size:.75rem;font-weight:600;color:var(--text-muted);line-height:1.2;padding:2px 0}.plan-ahead-court-wrapper{flex:1;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center}.plan-ahead-court-wrapper.plan-ahead-court-fit{overflow-x:hidden;overflow-y:auto;align-self:stretch;align-items:flex-start;justify-content:center;padding-top:4px}.plan-ahead-courts-row{flex-direction:row;gap:12px;justify-content:flex-start;padding:12px}.plan-ahead-court-cell{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px}.plan-ahead-court-label{font-size:.75rem;font-weight:600;color:var(--text-muted)}.plan-ahead-court-scaled{flex-shrink:0;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow)}.plan-ahead-court-wrap{border-radius:var(--radius);overflow:hidden}.controls{flex-shrink:0;display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:12px;padding:10px 0}.control-group{display:flex;align-items:center;gap:8px}.control-group-libero{gap:10px}.control-divider{width:1px;height:20px;background:var(--border);flex-shrink:0}.control-label{font-size:.8125rem;font-weight:500;color:var(--text-muted)}.control-check{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:var(--text);cursor:pointer}.control-check input{width:16px;height:16px}.btn-rotation{width:32px;height:32px;padding:0;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem;font-weight:500;transition:background .2s,border-color .2s,color .2s}.btn-rotation:hover{background:var(--bg-elevated);border-color:var(--border-focus)}.btn-rotation.active{background:var(--selection-bg);border-color:var(--selection-border);color:var(--selection-text);font-weight:600}.btn-system{padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem;font-weight:500;transition:background .2s,border-color .2s}.btn-system:hover{background:var(--bg-elevated);border-color:var(--border-focus)}.btn-system.active{background:var(--selection-bg);border-color:var(--selection-border);color:var(--selection-text);font-weight:600}.segmented-control{display:inline-flex;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);overflow:hidden}.segmented-control .btn-segment{padding:6px 12px;border:none;border-radius:0;background:transparent;color:var(--text);font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .2s,color .2s;border-right:1px solid var(--border)}.segmented-control .btn-segment:last-child{border-right:none}.segmented-control .btn-segment:hover{background:var(--bg-elevated)}.segmented-control .btn-segment.active{background:var(--selection-bg);color:var(--selection-text);font-weight:600}.toggle-wrap{display:inline-flex;align-items:center;cursor:pointer}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-track{display:block;width:36px;height:20px;border-radius:10px;background:var(--bg-input);border:1px solid var(--border);transition:background .2s,border-color .2s;position:relative}.toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--text-muted);transition:transform .2s,background .2s}.toggle-input:checked+.toggle-track{background:var(--selection-bg);border-color:var(--selection-border)}.toggle-input:checked+.toggle-track:after{transform:translate(16px);background:var(--selection-text)}.toggle-input:focus-visible+.toggle-track{outline:2px solid var(--selection-border);outline-offset:2px}.toggle-input:disabled+.toggle-track{opacity:.6;cursor:not-allowed}.toggle-wrap:has(.toggle-input:disabled){cursor:not-allowed}.select-config{min-width:180px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem;cursor:pointer;transition:border-color .2s}.select-config:hover,.select-config:focus{border-color:var(--border-focus);outline:none}.select-config option{background:var(--bg-elevated);color:var(--text)}.btn-ghost{padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem;font-weight:500;transition:background .2s,border-color .2s}.btn-ghost:hover{background:var(--bg-elevated);border-color:var(--border-focus)}.btn-ghost.active{background:var(--selection-bg);border-color:var(--selection-border);color:var(--selection-text)}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-primary{padding:8px 16px;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-size:.8125rem;font-weight:600;transition:background .2s}.btn-primary:hover{background:var(--accent-hover)}.court-toolbar-sep-fill{flex:1;min-width:12px;width:auto;height:auto;margin:0;background:none!important}.court-toolbar-config-badge{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:6px 10px 6px 12px;font-size:.75rem;background:var(--bg-card);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0003;max-width:240px}.court-toolbar-config-badge-label{font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);flex-shrink:0}.court-toolbar-config-badge-value{font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.court-column{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-card)}.out-of-rotation-overlay{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:var(--text);z-index:100;pointer-events:auto;animation:out-of-rotation-fade .15s ease-out}@keyframes out-of-rotation-fade{0%{opacity:0}to{opacity:1}}.out-of-rotation-card{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:min(90vw,420px);padding:1.5rem 1.75rem;background:var(--surface, #1a1a1a);border:1px solid rgba(255,255,255,.08);border-radius:14px;box-shadow:0 20px 40px #0006,0 0 0 1px #0003}.out-of-rotation-message{margin:0;font-size:1rem;font-weight:500;line-height:1.45;letter-spacing:.01em;text-align:center;color:var(--text)}.out-of-rotation-revert-btn{padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;letter-spacing:.02em;color:var(--bg, #0f0f0f);background:var(--accent, #0ea5e9);border:none;border-radius:10px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.out-of-rotation-revert-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0ea5e959}.out-of-rotation-revert-btn:active{transform:translateY(0)}.court-toolbar-wrap{position:relative;flex-shrink:0;width:100%;min-width:0;background:var(--bg-card)}.draw-toolbar-popover{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:2px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;padding:6px 10px;min-width:220px;min-height:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:100}.draw-toolbar-popover .court-toolbar-btn{padding:4px 8px;font-size:.75rem}.draw-toolbar-icon-wrap{position:relative;display:inline-flex}.draw-toolbar-popover .court-toolbar-btn-icon{padding:6px;line-height:0}.draw-toolbar-popover .court-toolbar-btn-icon svg{display:block}.draw-toolbar-icon-menu{position:absolute;top:100%;left:0;margin-top:2px;padding:6px 8px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:101;display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:120px}.draw-toolbar-icon-menu-colors{display:flex;flex-wrap:wrap;gap:4px}.draw-toolbar-icon-menu-curved{margin-left:4px;padding:2px 4px;font-size:.7rem}.draw-toolbar-popover .draw-toolbar-options{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:0 2px}.draw-toolbar-popover .draw-toolbar-options.draw-toolbar-colors{border-left:1px solid var(--border);margin-left:2px;padding-left:8px}.draw-toolbar-popover .draw-toolbar-options.draw-toolbar-arrow-options{display:flex;align-items:center;flex-wrap:wrap;gap:4px;border-left:1px solid var(--border);margin-left:2px;padding-left:8px}.draw-toolbar-popover .court-toolbar-check{margin:0;padding:4px 6px}.draw-toolbar-popover .draw-toolbar-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.draw-toolbar-popover .draw-toolbar-row+.draw-toolbar-row{margin-top:4px;padding-top:4px;border-top:1px solid var(--border)}.draw-toolbar-popover .draw-toolbar-label{font-size:.65rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-right:2px}.court-toolbar-dropdown-wrap{position:relative}.court-toolbar-dropdown-backdrop{position:fixed;inset:0;z-index:99}.court-toolbar-dropdown{position:absolute;top:100%;left:0;margin-top:2px;min-width:160px;padding:4px 0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:100}.court-toolbar-dropdown-item-wrap{position:relative;display:block}.court-toolbar-dropdown .signin-tooltip{position:absolute;left:0;transform:none;top:100%;bottom:auto;margin-bottom:0;margin-top:4px;padding:6px 10px;font-size:.75rem;font-weight:500;color:#fff;background:#1a1a1a;border-radius:6px;white-space:nowrap;box-shadow:0 2px 8px #0000004d;z-index:2001;pointer-events:none}.court-toolbar-dropdown .signin-tooltip:after{content:"";position:absolute;bottom:100%;top:auto;left:12px;margin-left:0;border:4px solid transparent;border-bottom-color:#1a1a1a;border-top:none}.court-toolbar-dropdown-item-overlay{position:absolute;inset:0;cursor:not-allowed}.court-toolbar-dropdown-item{display:block;width:100%;padding:6px 12px;font-size:.8125rem;font-weight:500;color:var(--text);background:none;border:none;text-align:left;cursor:pointer;transition:background .12s}.court-toolbar-dropdown-item:hover:not(:disabled){background:#ffffff0f}.court-toolbar-dropdown-item:disabled{opacity:.5;cursor:not-allowed}.court-toolbar-select{padding:5px 8px;font-size:.8125rem;font-weight:500;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:4px;cursor:pointer;min-width:120px}.court-toolbar-libero-check{white-space:nowrap}.court-toolbar-bar{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:0;padding:4px 8px;min-height:40px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;border-bottom:none;box-sizing:border-box}.court-toolbar-group{display:flex;align-items:center;gap:0;flex-wrap:wrap}.court-toolbar-btn{padding:6px 12px;font-size:.8125rem;font-weight:500;color:var(--text);background:transparent;border:none;border-radius:4px;cursor:pointer;transition:background .12s ease,color .12s ease}.court-toolbar-btn:hover:not(:disabled){background:#ffffff0f;color:var(--text)}.court-toolbar-btn.active{background:var(--selection-bg);color:var(--selection-text)}.court-toolbar-btn-icon.active-subtle{background:#ffffff1a;color:var(--text);outline:none;box-shadow:none}.court-toolbar-btn:disabled{opacity:.45;cursor:not-allowed}.court-toolbar-draw-toggle{font-weight:600}.court-toolbar-draw-toggle.draw-toggle-open{background:transparent;color:var(--text);border-bottom:2px solid #fff;border-radius:4px 4px 0 0}.court-toolbar-draw-toggle.draw-toggle-open:hover{background:#ffffff0f;color:var(--text)}.court-toolbar-btn-primary{background:var(--accent);color:#fff}.court-toolbar-btn-primary:hover:not(:disabled){background:var(--accent-hover, #3b82f6);color:#fff}.court-toolbar-sep{width:1px;height:20px;background:var(--border);margin:0 4px;flex-shrink:0}.court-toolbar-sep-main{height:24px;margin:0 8px;opacity:.7}.court-toolbar-options{display:flex;align-items:center;gap:6px}.court-toolbar-options.draw-toolbar-colors{padding:0 2px}.draw-color-swatch{width:20px;height:20px;border-radius:50%;border:2px solid transparent;padding:0;cursor:pointer;flex-shrink:0;transition:transform .12s,border-color .12s,box-shadow .12s}.draw-color-swatch:hover{transform:scale(1.12);border-color:var(--text-muted)}.draw-color-swatch.active{border-color:var(--selection-border);box-shadow:0 0 0 1px var(--selection-border)}.court-toolbar-check{display:flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:500;color:var(--text);cursor:pointer;margin:0;padding:4px 8px;border-radius:4px}.court-toolbar-check:hover{background:#ffffff0a}.court-toolbar-check input{margin:0}.court-scaled-wrap{flex:1;min-height:420px;display:flex;align-items:center;justify-content:center;background:var(--bg-input);border:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);overflow:hidden}@media(max-width:920px){.court-column{order:1;min-height:min(300px,50vh);min-width:0}.court-scaled-wrap{min-height:min(260px,44vh);min-width:200px}}.court-scaled-inner{display:block}.court-wrap{border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}.main-content{flex:1;min-height:0;overflow:hidden;display:flex;gap:20px;align-items:stretch;justify-content:center}.lineup-card{flex:0 1 auto;min-width:0;max-width:380px;background:var(--bg-elevated);border-radius:var(--radius);padding:14px 12px;border:1px solid var(--border);overflow:hidden}.lineup-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:10px}.lineup-saved-row{display:flex;gap:8px;margin-bottom:10px;align-items:center;flex-wrap:nowrap;min-width:0}.lineup-dropdown-wrap{position:relative;flex:1;min-width:0}.lineup-dropdown-trigger{display:flex;align-items:center;gap:6px;width:100%;min-width:0;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem;text-align:left;cursor:pointer;transition:border-color .2s}.lineup-dropdown-trigger:hover:not(:disabled){border-color:var(--border-focus)}.lineup-dropdown-trigger:focus{outline:none;border-color:var(--accent)}.lineup-dropdown-trigger:disabled{opacity:.8;cursor:not-allowed}.lineup-dropdown-trigger-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lineup-dropdown-trigger-arrow{flex-shrink:0;font-size:.65rem;color:var(--text-muted)}.lineup-dropdown-menu{min-width:200px;max-height:240px;overflow-y:auto}.lineup-dropdown-item-row{display:flex;align-items:center;gap:6px;width:100%}.lineup-dropdown-item-row .lineup-dropdown-item{flex:1;min-width:0}.lineup-dropdown-item{display:flex;align-items:center;width:100%;padding:8px 12px;font-size:.8125rem;color:var(--text);background:none;border:none;text-align:left;cursor:pointer;transition:background .12s}.lineup-dropdown-item:hover{background:#ffffff0f}.lineup-dropdown-item.active{background:var(--selection-bg);color:var(--selection-text)}.lineup-dropdown-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lineup-dropdown-delete{flex-shrink:0;padding:4px 8px;font-size:.7rem;color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:color .2s,border-color .2s}.lineup-dropdown-delete:hover{color:#dc2626;border-color:#dc2626}.lineup-select{flex:1;min-width:0;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem}.lineup-select:focus{outline:none;border-color:var(--accent)}.lineup-select:disabled{opacity:.8;cursor:not-allowed}.lineup-select-ellipsis{max-width:180px;overflow:hidden;text-overflow:ellipsis}.lineup-actions-dropdown-wrap{position:relative;flex-shrink:0}.lineup-actions-btn{padding:6px 10px;min-width:36px}.btn-tooltip-wrap{position:relative;display:inline-block}.signin-tooltip{position:absolute;left:50%;transform:translate(-50%);bottom:100%;margin-bottom:6px;padding:6px 10px;font-size:.75rem;font-weight:500;color:#fff;background:#1a1a1a;border-radius:6px;white-space:nowrap;box-shadow:0 2px 8px #0000004d;z-index:2000;pointer-events:none}.signin-tooltip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-4px;border:4px solid transparent;border-top-color:#1a1a1a}.btn-tooltip-overlay{position:absolute;inset:0;cursor:not-allowed}.btn-lineup-save{flex-shrink:0;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font-size:.75rem;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s}.btn-lineup-save:hover{border-color:var(--accent);background:var(--bg-input)}.btn-lineup-save:disabled{opacity:.6;cursor:not-allowed}.btn-lineup-delete{flex-shrink:0;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);font-size:.75rem;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s,color .2s}.btn-lineup-delete:hover:not(:disabled){border-color:#dc2626;color:#dc2626;background:var(--bg-input)}.btn-lineup-delete:disabled{opacity:.5;cursor:not-allowed}.lineup-options{display:flex;flex-wrap:wrap;gap:12px 16px;margin-bottom:10px}.lineup-options .control-check{font-size:.75rem;color:var(--text)}.lineup-legend-row{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--text-muted);margin-bottom:12px;padding-top:8px;border-top:1px solid var(--border)}.lineup-legend-row .lineup-square{width:18px;height:18px;border:2px solid #eab308;border-radius:4px;flex-shrink:0;box-sizing:border-box}.lineup-list{list-style:none;padding:0;margin:0}.lineup-item{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:.8125rem;color:var(--text)}.lineup-label-cell{flex:0 0 200px;display:flex;align-items:center;gap:8px;min-width:0}.lineup-item .lineup-dot{width:18px;height:18px;border-radius:50%;flex-shrink:0;box-sizing:border-box}.lineup-dot.dashed{border:2px dashed rgba(255,255,255,.6)}.lineup-dot.solid{border:2px solid transparent}.lineup-role-label{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.lineup-fields{display:flex;gap:6px;flex:1;min-width:0}.lineup-item .lineup-input{padding:4px 6px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.7rem;min-width:0}.lineup-input:focus{outline:none;border-color:var(--accent)}.lineup-input.lineup-num{width:48px;flex-shrink:0}.lineup-square{width:18px;height:18px;border:2px solid #eab308;border-radius:4px;flex-shrink:0;box-sizing:border-box}@media(max-width:920px){.main-content{flex-direction:column;align-items:stretch;min-height:0;overflow-x:hidden}.lineup-card{min-width:0;max-width:100%;flex-shrink:0;order:2;max-height:40vh;overflow-y:auto}}.lineup-table-card{min-width:0;max-width:100%;background:var(--bg-elevated);border-radius:var(--radius);border:1px solid var(--border);padding:12px 14px;overflow-x:auto}.lineup-table-title{font-size:.9375rem;font-weight:600;margin-bottom:10px}.lineup-table-options{display:flex;gap:12px;margin-bottom:10px}.lineup-table-options .control-check{font-size:.75rem}.lineup-table-header{display:grid;grid-template-columns:32px minmax(0,1fr) minmax(0,1fr) 40px;gap:4px;align-items:center;margin-bottom:4px;padding-bottom:4px;border-bottom:1px solid var(--border);font-size:.65rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.lineup-table-header-role{font-weight:600}.lineup-table-header-cell{min-width:0}.lineup-table-header-num{text-align:center}.lineup-table-list{list-style:none;margin:0;padding:0}.lineup-table-item{display:grid;grid-template-columns:32px minmax(0,1fr) minmax(0,1fr) 40px;gap:4px;align-items:center;margin-bottom:6px;font-size:.75rem}.lineup-table-role{font-weight:600}.lineup-table-input{padding:4px 6px;font-size:.75rem;background:var(--bg-input);border:1px solid var(--border);border-radius:4px;color:var(--text);min-width:0;box-sizing:border-box}.lineup-table-input::placeholder{color:var(--text-dim)}.lineup-table-num{text-align:center}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1500}.modal-panel{background:var(--bg-card);padding:24px;border-radius:var(--radius-lg);width:340px;max-width:calc(100vw - 32px);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.save-config-modal-panel{width:380px}.modal-section-label{display:block;font-size:.8125rem;font-weight:600;color:var(--text);margin-bottom:6px}.save-config-option-row{display:flex;align-items:center;gap:8px;font-size:.8125rem;cursor:pointer;margin-bottom:8px}.save-config-option-row select{margin-left:4px;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text)}.save-config-multi-checkboxes{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:12px}.save-config-check-label{display:flex;align-items:center;gap:6px;font-size:.8125rem;cursor:pointer}.save-config-all-btn{margin-bottom:8px}.modal-input{width:100%;margin-bottom:12px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.875rem}.lineup-explorer-panel{width:360px;max-height:70vh;display:flex;flex-direction:column}.lineup-explorer-preview{padding:10px 12px;margin-bottom:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated)}.lineup-explorer-preview-title{font-size:.875rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lineup-explorer-preview-detail{font-size:.75rem;color:var(--text-muted);margin-top:2px}.lineup-explorer{overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated)}.lineup-explorer-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lineup-explorer-section{padding:4px 0}.lineup-explorer-section-title{padding:6px 12px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:#00000026;border-bottom:1px solid var(--border)}.lineup-explorer-item-row{display:flex;align-items:center;gap:6px;width:100%}.lineup-explorer-item-row .lineup-explorer-item{flex:1;min-width:0}.lineup-explorer-delete{flex-shrink:0;padding:4px 8px;font-size:.7rem;color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:color .2s,border-color .2s}.lineup-explorer-delete:hover{color:#dc2626;border-color:#dc2626}.lineup-explorer-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:.8125rem;color:var(--text);background:none;border:none;text-align:left;cursor:pointer;transition:background .12s}.lineup-explorer-item:hover{background:#ffffff0f}.lineup-explorer-item.active{background:var(--selection-bg);color:var(--selection-text)}.lineup-explorer-icon{flex-shrink:0;width:20px;text-align:center;font-size:.875rem}.export-modal-panel{max-width:400px}.export-check-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:.875rem}.export-check-disabled{opacity:.8}.export-check-disabled input{cursor:not-allowed}.export-lineup-options{margin-left:24px;margin-top:6px;margin-bottom:8px}.export-note{font-size:.75rem;margin-top:4px;color:var(--text-muted)}.export-rotations-row{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:6px}.export-preview-modal{width:95vw;max-width:1000px;height:90vh;max-height:90vh;display:flex;flex-direction:column}.export-preview-iframe-wrap{flex:1;min-height:0;height:calc(90vh - 120px);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-elevated)}.export-preview-iframe-wrap iframe{width:100%;height:100%;min-height:560px;border:none}.modal-title{margin:0 0 16px;font-size:1.0625rem;font-weight:600;letter-spacing:-.02em}.modal-panel input[type=text],.modal-panel select{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.875rem;margin-bottom:12px}.modal-panel input:focus,.modal-panel select:focus{outline:none;border-color:var(--accent)}.modal-section{margin:14px 0;padding:14px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border)}.modal-section label{font-size:.8125rem;font-weight:600;color:var(--text);display:block;margin-bottom:10px}.modal-radio-group{display:flex;flex-direction:column;gap:8px}.modal-radio-group label{display:flex;align-items:center;gap:10px;font-weight:400;margin:0;cursor:pointer}.modal-actions{display:flex;gap:10px;margin-top:20px}.modal-actions .btn{flex:1;padding:10px 14px;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;transition:opacity .2s,background .2s}.modal-actions .btn-success{background:var(--success);color:#fff;border:none}.modal-actions .btn-success:hover:not(:disabled){background:var(--success-hover)}.modal-actions .btn-secondary{background:var(--bg-input);color:var(--text);border:1px solid var(--border)}.modal-actions .btn-secondary:hover{background:var(--bg-elevated);border-color:var(--border-focus)}.modal-actions .btn:disabled{opacity:.6;cursor:not-allowed}.modal-description{font-size:.8125rem;color:var(--text-muted);margin:0 0 14px;line-height:1.5}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:12px;box-shadow:0 10px 40px #00000040;z-index:2000;max-width:calc(100vw - 32px);animation:toast-in .25s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast-message{font-size:.9375rem;font-weight:500}.toast-success{background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff}.toast-error{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.toast-info{background:var(--bg-card);color:var(--text);border:1px solid var(--border)}.toast-dismiss{background:none;border:none;color:inherit;opacity:.85;font-size:1.25rem;line-height:1;padding:0 4px;cursor:pointer;border-radius:4px}.toast-dismiss:hover{opacity:1}.confirm-modal-panel{max-width:400px}.app{height:100%;overflow:hidden;display:flex;flex-direction:column;align-items:center;padding:12px 16px;background:var(--bg-page);color:var(--text)}.app-card{width:100%;max-width:980px;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-card);border-radius:var(--radius-lg);padding:16px 20px 20px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.app-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border)}.app-title{font-size:1rem;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.2}.app-subtitle{font-size:.75rem;color:var(--text-muted);margin-top:0;line-height:1.2}.view-tabs{display:flex;gap:0;flex-shrink:0;margin-bottom:12px;border-bottom:1px solid var(--border)}.view-tab{padding:8px 16px;font-size:.875rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:color .2s,border-color .2s}.view-tab:hover{color:var(--text)}.view-tab.active{color:var(--selection-text);border-bottom-color:var(--selection-border)}.view-content-wrap{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.court-view-wrap{flex:1;min-height:520px;display:flex;flex-direction:column;overflow:hidden}@media(max-width:920px){.app{min-height:100vh;height:auto}.app-card{flex:none}.view-content-wrap{min-height:280px;flex:none}.court-view-wrap{min-height:280px}}@media(max-width:480px){.app{padding:8px 10px}.app-card{padding:12px 14px 14px}}.account-chip{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:.8125rem;transition:border-color .2s,background .2s}.account-chip:hover{border-color:var(--border-focus);background:var(--bg-elevated)}.account-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;flex-shrink:0}.account-avatar.signed-in{background:#22c55e40;color:#4ade80}.account-avatar.guest{background:var(--border);color:var(--text-muted)}.account-label{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.account-value{font-size:.8125rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-dropdown{position:absolute;right:0;margin-top:8px;width:280px;background:var(--bg-elevated);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:14px 16px;z-index:2000;border:1px solid var(--border)}.account-dropdown p{font-size:.75rem;color:var(--text-muted);margin:0 0 12px;line-height:1.45}.account-dropdown .btn{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem;display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;transition:background .2s,border-color .2s}.account-dropdown .btn:hover{background:#26262b;border-color:var(--border-focus)}.account-dropdown-divider{border:none;border-top:1px solid var(--border);margin:10px 0 12px}.account-dropdown input{width:100%;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.8125rem;margin-bottom:6px}.account-dropdown input::placeholder{color:var(--text-dim)}.account-dropdown .btn-group{display:flex;gap:8px;margin-top:4px}.account-dropdown .btn-sign-out{margin-top:12px;width:100%;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-muted);font-size:.8125rem;transition:background .2s,color .2s}.account-dropdown .btn-sign-out:hover{background:#26262b;color:var(--text)}:root{color-scheme:dark;--bg-page: #0c0c0e;--bg-card: #141416;--bg-elevated: #1c1c1f;--bg-input: #1e1e22;--border: #2a2a2e;--border-focus: #3f3f46;--text: #fafafa;--text-muted: #a1a1aa;--text-dim: #71717a;--accent: #0ea5e9;--accent-hover: #38bdf8;--accent-muted: rgba(14, 165, 233, .15);--selection-bg: rgba(255, 255, 255, .1);--selection-border: rgba(255, 255, 255, .22);--selection-text: var(--text);--checkbox-check: rgba(255, 255, 255, .9);--success: #22c55e;--success-hover: #4ade80;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--shadow: 0 4px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .5);font-family:Inter,ui-sans-serif,system-ui,sans-serif;line-height:1.5;font-weight:400;color:var(--text);background-color:var(--bg-page);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{height:100%}body{margin:0;min-width:320px;min-height:100%;overflow-y:auto;overflow-x:hidden}#root{min-height:100%}@media(min-width:921px){body{height:100%;overflow:hidden}#root{height:100%}}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select{font-family:inherit}input[type=checkbox],input[type=radio]{accent-color:var(--checkbox-check);cursor:pointer}
