.helper{margin:6px 0 0;color:#8e8e8e}.economics-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.profit-card strong,.gh-money{color:#b4ff00}.calendar-section,.payroll-section{margin:28px 0}.calendar-heading{display:flex;justify-content:space-between;gap:20px;align-items:end}.calendar-legend{display:flex;gap:8px;flex-wrap:wrap}.weekday-head{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:14px 0 8px;color:#777;font-size:10px;font-weight:800;letter-spacing:.12em;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-day{min-height:190px;background:#0f0f0f;border:1px solid #242424;border-radius:14px;padding:10px;overflow:hidden}.calendar-day.blank{opacity:.28;background:#090909}.calendar-day.today{border-color:#b4ff00;box-shadow:0 0 0 1px #b4ff0033}.day-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.day-head strong{font-size:18px}.day-head span{font-size:10px;color:#666}.day-events{display:grid;gap:7px}.event-card{width:100%;text-align:left;background:#171717;border:1px solid #2a2a2a;border-radius:10px;padding:9px;color:#eee;cursor:pointer}.event-card:hover{border-color:#555}.event-card.needs-review{border-color:#633}.event-card.excluded{opacity:.4}.event-top{display:flex;justify-content:space-between;gap:8px;align-items:start}.event-top strong{font-size:11px;line-height:1.25}.event-card small{display:block;color:#888;font-size:10px;margin-top:3px}.event-econ{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px;margin-top:7px;font-size:9px;color:#777}.event-econ b{color:#ddd}.event-econ .gh b{color:#b4ff00}.source{display:inline-flex;align-items:center;padding:3px 5px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.05em;white-space:nowrap}.source.fitssey{background:#142d35;color:#75e1ff}.source.regular{background:#232323;color:#aaa}.source.manual{background:#203716;color:#b4ff00}.source.override{background:#3d2915;color:#ffbf66}.trainer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:28px}.trainer-card{background:#111;border:1px solid #262626;border-radius:14px;padding:16px}.trainer-name{font-weight:800}.trainer-payout{font-size:26px;font-weight:900;margin:8px 0}.trainer-meta{display:flex;flex-wrap:wrap;gap:7px 12px;color:#999;font-size:12px}.trainer-meta b{color:#fff}.bad-text{color:#ff7373}.warn-text{color:#ffc85b}.table-section{background:#101010;border:1px solid #242424;border-radius:16px;padding:18px}.table-heading{display:flex;justify-content:space-between;gap:20px;align-items:end}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter,.mini{border:1px solid #333;background:#181818;color:#ddd;border-radius:9px;padding:8px 10px;cursor:pointer}.filter.active{border-color:#b4ff00;color:#b4ff00}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px 10px;border-bottom:1px solid #222;text-align:left;vertical-align:top}th{font-size:11px;color:#777;text-transform:uppercase;letter-spacing:.08em}td small{display:block;color:#777;margin-top:4px}.money{white-space:nowrap}.row-muted{opacity:.5}.pill{display:inline-block;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;background:#222}.pill.good{background:#18311d;color:#8cff9b}.pill.warn{background:#382c11;color:#ffd76d}.pill.bad{background:#3a1717;color:#ff8181}.payroll-dialog{min-width:min(820px,94vw);max-height:90vh;overflow:auto;background:#111;color:#fff;padding:24px;border:1px solid #333;border-radius:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:grid;gap:6px}.form-grid input,.form-grid select{background:#181818;border:1px solid #333;color:#fff;padding:10px;border-radius:8px}.span-2{grid-column:1/-1}.check-row{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.economics-preview{margin:16px 0 0;padding:12px;border:1px solid #2d2d2d;border-radius:10px;background:#0c0c0c;color:#aaa;font-size:12px}.economics-preview b{color:#fff}
@media(max-width:1300px){.economics-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.weekday-head{display:none}}
@media(max-width:900px){.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-heading{align-items:start;flex-direction:column}.economics-summary{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.table-heading{align-items:start;flex-direction:column}}
@media(max-width:600px){.calendar-grid,.economics-summary{grid-template-columns:1fr}.calendar-day{min-height:0}}
.relation-title{margin-top:20px}.relation-form{margin:12px 0}.relation-action{display:flex;align-items:end}.relation-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid #333;font-size:12px}.relation-item small{display:block;color:#999;margin-top:4px}.relation-item .mini{white-space:nowrap}

.payroll-warning{margin:16px 0;padding:12px 14px;border:1px solid rgba(221,182,62,.4);border-radius:10px;background:rgba(221,182,62,.08);color:#e8cb79;font-size:12px;line-height:1.6}.trainer-breakdown{border-top:1px solid #333;margin-top:14px;padding-top:10px;display:grid;gap:8px}.trainer-breakdown-line{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;color:#bbb}.trainer-breakdown-line strong{color:#f5f5f5;font-variant-numeric:tabular-nums}

#editDialog input[type="date"]{color-scheme:dark}#editDialog input[type="date"]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;filter:brightness(0) saturate(100%) invert(88%) sepia(77%) saturate(694%) hue-rotate(23deg) brightness(113%) contrast(107%)}#ratePreview{font-size:12px;line-height:1.65;border:1px solid #353c26;padding:13px;border-radius:10px;color:#d1e4ad}

.advanced-event{border:1px solid #313b24;border-radius:10px;padding:11px;background:#10130e}
.advanced-event summary{cursor:pointer;font-weight:750;color:#c2ed83;list-style-position:inside}
.advanced-event[open] summary{margin-bottom:14px}
.advanced-event .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#customTitleRow.hidden,#projectRow.hidden,#activityRow.hidden{display:none}
@media(max-width:700px){.advanced-event .form-grid{grid-template-columns:1fr}}
