.nck-race-planner{width:min(1150px,calc(100vw - 24px));max-width:1150px;max-height:92dvh;padding:22px;font:14px/1.45 'Segoe UI',Arial,sans-serif;color:#e6edf1}
.nck-race-planner h2{font:700 24px 'Segoe UI',Arial,sans-serif!important;margin:0}.planner-heading{display:flex;justify-content:space-between;gap:20px}.planner-heading p,.planner-help{font-size:12px;color:#b6c5cf}.planner-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:15px 0}.planner-controls label{font-size:12px;display:grid;gap:5px;margin:0}.planner-controls input,.planner-controls select{width:auto;min-height:38px;padding:8px;background:#11181d;border:1px solid #47545e;color:#fff;font:13px 'Segoe UI',Arial,sans-serif}.planner-views{display:flex;gap:4px}.planner-views button{font:600 13px 'Segoe UI',Arial,sans-serif;padding:10px}.planner-views [aria-pressed=true]{background:#167ec4;border-color:#39a4f2;color:#fff}
.planner-legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:15px 0}.planner-legend>span{font-size:11px;padding:5px 9px;border:1px solid #58625b}.planner-legend small{font-size:11px;color:#b8c4cb}.planner-summary{font-size:12px;margin:8px 0}.planner-period{display:flex;justify-content:space-between;align-items:center;margin:15px 0;gap:12px}.planner-period strong{font-size:17px}.planner-period button{font-size:22px;padding:4px 17px}
.planner-day-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:12px}.planner-day-tabs button{font:12px 'Segoe UI',Arial,sans-serif;padding:9px 3px;min-width:0}.planner-day-tabs [aria-current]{border-color:#2eacff;background:#173448}.planner-daily{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}.nck-race-planner .planner-slot{border:1px solid #536159;min-width:0;border-radius:4px;color:#ecf6ee;padding:8px 5px;display:grid;gap:3px;justify-content:stretch;text-align:center;font-family:'Segoe UI',Arial,sans-serif;cursor:pointer;box-shadow:none}.planner-slot strong{font:600 12px 'Segoe UI',Arial,sans-serif}.planner-slot small{font:10px 'Segoe UI',Arial,sans-serif}.nck-race-planner .busy,.planner-legend .busy{background:#1a6843;border-color:#62c58c}.nck-race-planner .good,.planner-legend .good{background:#294b37;border-color:#62836a}.nck-race-planner .quiet,.planner-legend .quiet{background:#29352d;border-color:#626d63}.nck-race-planner .unknown{background:#283139;border-color:#58616b}.nck-race-planner .unavailable,.planner-legend .unavailable{background:#343637;color:#b9bdc0;border-color:#55595d}.nck-race-planner .planner-slot.selected{outline:2px solid #46b6ff;outline-offset:1px}.nck-race-planner .planner-slot:hover{filter:brightness(1.18)}
.planner-week-scroll{max-height:460px;overflow:auto;border:1px solid #3d4850}.planner-week{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:3px;min-width:700px;background:#111619}.planner-week th{font:600 11px 'Segoe UI',Arial,sans-serif!important;letter-spacing:0;text-transform:none;padding:3px;color:#d3dee5;background:#171e22}.planner-week thead th{position:sticky;top:0;z-index:1}.planner-week th:first-child{width:95px}.planner-week thead button{font:600 11px 'Segoe UI',Arial,sans-serif;padding:7px 2px;width:100%}.planner-week td{padding:0!important;background:transparent!important;border:0!important}.planner-week .planner-slot{width:100%;height:22px;padding:0;border-radius:2px}.planner-week tbody th{white-space:nowrap}
.planner-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.planner-month-heading{font-size:12px;text-align:center;padding:5px}.planner-month-day{padding:6px;background:#171d21;border:1px solid #3d4850;min-width:0}.planner-month-day .planner-date{font:600 13px 'Segoe UI',Arial,sans-serif;padding:3px 7px;margin-bottom:5px;background:transparent;border:0;color:#fff}.planner-mini-label{display:flex;justify-content:space-between;font-size:8px;color:#b6c2ca}.planner-mini-times{display:grid;grid-template-columns:repeat(48,minmax(0,1fr));gap:0;margin:3px 0 5px}.planner-mini-times .planner-slot{padding:0;height:22px;border-radius:0;border-width:0;min-height:0}.planner-month-day>small{font-size:9px;color:#adbdc8}.planner-month-empty{background:#101416}
.planner-selection{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#111f28;border:1px solid #3f6179;padding:14px;margin:16px 0}.planner-selection strong{font:700 15px 'Segoe UI',Arial,sans-serif}.planner-selection p{font:12px/1.4 'Segoe UI',Arial,sans-serif;margin:6px 0;color:#c6d4dd}.planner-selection button{flex-shrink:0;font:600 13px 'Segoe UI',Arial,sans-serif;padding:12px 18px}.planner-evidence{margin-top:14px;border-top:1px solid #3d4850;padding-top:12px;font-size:12px;color:#b9c9d3}.planner-evidence summary{cursor:pointer;color:#e5edf2;font-weight:600}.planner-evidence h3{font:700 14px 'Segoe UI',Arial,sans-serif!important;margin:18px 0 8px}.planner-source-scroll{overflow:auto;max-height:270px}.planner-source-table{font-size:11px;width:100%}.planner-source-table th{font:600 11px 'Segoe UI',Arial,sans-serif!important;text-transform:none}.planner-source-table td{padding:8px!important}
@media(max-width:700px){.nck-race-planner{padding:15px}.planner-daily{grid-template-columns:repeat(4,minmax(0,1fr))}.planner-month{min-width:650px}.nck-race-planner [data-results]{overflow-x:auto}.planner-day-tabs{min-width:500px}.planner-controls{gap:8px}.planner-selection{align-items:stretch;flex-direction:column}.planner-selection button{width:100%}}

.planner-mini-times .planner-slot:nth-child(12n){border-right:1px solid #111}.planner-month{min-width:750px}

.calendar-suggestions-heading .calendar-planning-view{max-width:100px}.calendar-suggestions-heading>div{display:flex;gap:10px;align-items:center}.calendar-suggestion-slots>button{min-width:185px;flex:1;display:grid;gap:3px;line-height:1.3;background:transparent;border:0;padding:0;text-align:left;color:#fff;cursor:pointer;border-radius:0;font-family:'Segoe UI',Arial,sans-serif}.calendar-suggestion-slots>button:hover strong{text-decoration:underline}.calendar-suggestion-slots>button small{font:700 9px 'Segoe UI',Arial,sans-serif;color:#85c9aa;letter-spacing:.5px}.calendar-suggestion-slots>button strong{font:600 12px 'Segoe UI',Arial,sans-serif;color:#fff}.calendar-suggestion-slots>button span{font:10px/1.4 'Segoe UI',Arial,sans-serif;color:#a5b7c4}

.nck-race-planner{color-scheme:dark}.planner-week button:focus-visible,.planner-mini-times button:focus-visible{outline:2px solid #fff;outline-offset:1px}

.nck-race-planner .race-conflict,.planner-legend .race-conflict{background:#57272b;border-color:#c2616a;color:#ffdee1}.planner-race-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600!important}.planner-daily .planner-race-name{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35}.planner-week .planner-race-name{font-size:9px;padding:0 3px}.planner-mini-times .planner-race-name{display:none}.planner-day-races{display:grid;gap:3px;margin:4px 0 8px;max-height:95px;overflow:auto}.planner-day-races span{display:block;color:#ffb4bc;font:600 10px/1.35 'Segoe UI',Arial,sans-serif;overflow-wrap:anywhere;text-align:left}.planner-daily+.planner-day-races{margin:8px 0}.planner-week .planner-day-races{max-height:64px;margin:4px 3px}.planner-month-day .planner-day-races{max-height:70px}.planner-recommendations{border:1px solid #40545d;background:#111b21;padding:14px;margin:16px 0}.planner-recommend-heading{display:flex;gap:16px;align-items:start;justify-content:space-between}.planner-recommend-heading h3{font:700 17px 'Segoe UI',Arial,sans-serif!important;margin:0 0 5px}.planner-recommend-heading p{font:12px/1.4 'Segoe UI',Arial,sans-serif;color:#bdcbd3;margin:0 0 12px}.planner-recommend-heading label{display:flex;white-space:nowrap;align-items:center;gap:6px;font-size:11px}.planner-recommend-heading input{width:15px;height:15px}.planner-recommend-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.planner-recommend-cards article{border:1px solid #48725d;background:#1a2d24;padding:12px;display:flex;flex-direction:column;gap:8px;min-width:0}.planner-recommend-cards article>small{font:700 9px 'Segoe UI',Arial,sans-serif;color:#a7dfbd;letter-spacing:.4px}.planner-recommend-cards article>strong{font:600 14px/1.4 'Segoe UI',Arial,sans-serif}.planner-recommend-cards article>p{font:11px/1.45 'Segoe UI',Arial,sans-serif;color:#c5d6cb;margin:0}.planner-recommend-cards article>span{font-size:10px;color:#a2d5b5}.planner-recommend-cards article>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.planner-recommend-cards button{font:600 11px 'Segoe UI',Arial,sans-serif;padding:8px}.planner-recommendations [data-rec-reset]{font-size:11px;margin-top:10px}@media(max-width:700px){.planner-recommend-cards{grid-template-columns:1fr}.planner-recommend-heading{flex-direction:column;gap:4px}}
