:root{--color-bg:#f0f0f0;--color-surface:#fff;--color-border:#ccc;--color-text:#1a1a1a;--color-text-muted:#666;--color-primary:#06c;--color-primary-hover:#0052a3;--color-selected:#cce0ff;--color-hover:#e8e8e8;--color-danger:#c33;--font-family:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--font-size-base:13px;--font-size-small:11px;--border-radius:2px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg)}.app-layout{flex-direction:column;height:100vh;display:flex}.menu-bar{background:var(--color-surface);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);gap:0;padding:0;display:flex}.menu-item{position:relative}.menu-item>button{font:inherit;cursor:pointer;color:var(--color-text);background:0 0;border:none;padding:6px 12px}.menu-item>button:hover,.menu-item>button[aria-expanded=true]{background:var(--color-hover)}.menu-dropdown{background:var(--color-surface);border:1px solid var(--color-border);z-index:50;min-width:220px;padding:4px 0;position:absolute;top:100%;left:0;box-shadow:0 2px 8px #00000026}.menu-dropdown button{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--color-text);white-space:nowrap;background:0 0;border:none;padding:5px 16px;display:block}.menu-dropdown button:hover{background:var(--color-selected)}.menu-dropdown button:disabled{color:var(--color-text-muted);cursor:default}.menu-dropdown button:disabled:hover{background:0 0}.menu-separator{background:var(--color-border);height:1px;margin:4px 0}.menu-submenu{position:relative}.menu-submenu>button{width:100%}.menu-submenu-items{background:var(--color-surface);border:1px solid var(--color-border);z-index:51;min-width:140px;padding:4px 0;display:none;position:absolute;top:0;left:100%;box-shadow:0 2px 8px #00000026}.menu-submenu:hover>.menu-submenu-items{display:block}.tournament-selector{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);align-items:center;gap:12px;margin:4px 4px 0;padding:6px 12px 8px;display:flex}.tournament-selector legend{font-size:var(--font-size-small);color:var(--color-text-muted);padding:0 4px}.tournament-selector label{white-space:nowrap;font-weight:600}.tournament-selector select{font:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);min-width:140px;padding:3px 6px}.tab-panel{flex-direction:column;flex:1;display:flex;overflow:hidden}.tab-headers{background:var(--color-bg);border-bottom:1px solid var(--color-border);gap:0;display:flex}.tab-header{font:inherit;cursor:pointer;color:var(--color-text-muted);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 16px}.tab-header:hover{color:var(--color-text);background:var(--color-hover)}.tab-header.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.tab-content{background:var(--color-surface);flex:1;overflow:hidden}.table-scroll{height:100%;overflow:auto scroll}.data-table{border-collapse:collapse;width:100%;font-size:var(--font-size-base)}.data-table th{background:var(--color-bg);text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;z-index:1;padding:4px 8px;font-weight:600;position:sticky;top:0}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{background:var(--color-hover)}.data-table th .sort-indicator{width:12px;color:var(--color-text-muted);margin-left:2px;font-size:10px;display:inline-block}.data-table th .sort-indicator.active{color:var(--color-primary)}.data-table td{border-bottom:1px solid #e8e8e8;padding:3px 8px}.data-table tr.selected td{background:var(--color-selected)}.data-table tbody tr:hover td{background:var(--color-hover)}.data-table tbody tr.selected:hover td{background:var(--color-selected)}.data-table td.result-cell,.data-table th.result-cell{text-align:center;font-weight:600}.data-table td.number-cell,.data-table th.number-cell{text-align:right}.data-table .place-cell{text-align:center}.data-table .score-cell,.data-table th.score-cell{text-align:right}.status-bar{background:var(--color-bg);border-top:1px solid var(--color-border);font-size:var(--font-size-small);color:var(--color-text-muted);white-space:nowrap;padding:4px 12px}.context-menu{background:var(--color-surface);border:1px solid var(--color-border);z-index:200;min-width:160px;padding:4px 0;position:fixed;box-shadow:0 2px 8px #0003}.context-menu button{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--color-text);white-space:nowrap;background:0 0;border:none;padding:5px 16px;display:block}.context-menu button:hover{background:var(--color-selected)}.context-submenu{position:relative}.context-submenu-items{background:var(--color-surface);border:1px solid var(--color-border);min-width:140px;padding:4px 0;display:none;position:absolute;top:0;left:100%;box-shadow:0 2px 8px #0003}.context-submenu:hover>.context-submenu-items{display:block}.dialog-overlay{z-index:100;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);flex-direction:column;min-width:400px;max-width:90vw;max-height:90vh;display:flex;box-shadow:0 4px 16px #0003}.dialog-title{background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:10px 16px;font-weight:600}.dialog-body{flex:1;padding:16px;overflow-y:auto}.dialog-footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:10px 16px;display:flex}button.btn{border:1px solid var(--color-border);border-radius:var(--border-radius);font:inherit;cursor:pointer;background:var(--color-surface);padding:5px 14px}button.btn:hover{background:var(--color-hover)}button.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}button.btn-primary:hover{background:var(--color-primary-hover)}button.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.form-group{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.form-group label{font-weight:600;font-size:var(--font-size-small)}.form-group input,.form-group select{font:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius);padding:4px 8px}.form-row{gap:12px;display:flex}.form-row .form-group{flex:1}.tiebreak-panel{align-items:stretch;gap:8px;display:flex}.tiebreak-list-container{flex-direction:column;flex:1;gap:2px;display:flex}.tiebreak-list-label{font-size:var(--font-size-small);color:var(--color-text-muted);font-weight:600}.tiebreak-list{width:100%;font:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius);padding:2px}.tiebreak-list option{padding:2px 4px}.tiebreak-buttons{flex-direction:column;justify-content:center;gap:4px;display:flex}.tiebreak-buttons .btn{min-width:32px;font-size:var(--font-size-small);padding:4px 8px}.dialog-tabs{border-bottom:1px solid var(--color-border);background:var(--color-bg);display:flex}.dialog-tab{font:inherit;cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;padding:6px 14px}.dialog-tab:hover{color:var(--color-text)}.dialog-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}@media print{.menu-bar,.tournament-selector,.tab-headers,.status-bar{display:none!important}.tab-content{padding:0!important;overflow:visible!important}.table-scroll{height:auto!important;overflow:visible!important}.app-layout{height:auto}.tab-panel{overflow:visible}.data-table th{position:static}}.empty-state{text-align:center;color:var(--color-text-muted);padding:32px}
