/* Explicit surface/text pairs keep tournament controls readable in both themes. */
:root{--cs310-surface:#f7faf5;--cs310-inset:#edf2e9;--cs310-text:#1c3024;--cs310-muted:#465a4c;--cs310-border:#b8c8b1;--cs310-link:#24563c;--cs310-warning:#fff0ce;--cs310-warning-text:#674200}
:root[data-theme="dark"]{--cs310-surface:#17261f;--cs310-inset:#22372b;--cs310-text:#f1f5ed;--cs310-muted:#c2d1c0;--cs310-border:#5c735e;--cs310-link:#c6e4ac;--cs310-warning:#473919;--cs310-warning-text:#ffe4a5}
.cs310-workspace,.cs310-form,.cs310-registrations,.cs310-guide,.cs310-pack,.cs310-entries{color:var(--cs310-text);min-width:0;overflow-wrap:anywhere}
.cs310-panel,.cs310-guide-details{margin:16px 0;border:1px solid var(--cs310-border);border-radius:16px;background:var(--cs310-surface);color:var(--cs310-text);overflow:hidden;padding:0 16px 16px}
.cs310-panel>summary,.cs310-guide-details>summary{display:list-item;margin:0 -16px 16px;padding:16px;background:var(--cs310-inset);color:var(--cs310-text);cursor:pointer;font-weight:800;min-height:48px}
.cs310-panel:not([open]),.cs310-guide-details:not([open]){padding-bottom:0}
.cs310-panel:not([open])>summary,.cs310-guide-details:not([open])>summary{margin-bottom:0}
.cs310-grid,.cs310-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cs310-grid>*,.cs310-detail-grid>*{min-width:0}
.cs310-field{margin:10px 0}.cs310-form label{color:var(--cs310-text)}
.cs310-record,.cs310-subject,.cs310-registration,.cs310-application,.cs310-entry-card,.cs310-participant{padding:14px;margin:12px 0;border:1px solid var(--cs310-border);border-radius:12px;background:var(--cs310-surface);color:var(--cs310-text)}
.cs310-horse-registrations{grid-column:1/-1;background:var(--cs310-surface)!important;color:var(--cs310-text)!important}
.cs310-workspace .form-hint,.cs310-form .form-hint,.cs310-registrations .muted,.cs310-guide .form-hint,.cs310-horse-registrations small{color:var(--cs310-muted)}
.cs310-workspace a,.cs310-guide a,.cs310-registrations a{color:var(--cs310-link)}
.cs310-workspace .actions,.cs310-registrations .actions,.cs310-pack .actions{display:flex;gap:8px;flex-wrap:wrap}
.cs310-workspace button,.cs310-form button,.cs310-registrations button,.cs310-guide button,.cs310-horse-registrations button{white-space:normal;overflow-wrap:anywhere;min-height:42px}
.cs310-workspace button:not(.gold):not(.danger):not(.competition-summary):not(.cal-cell):not(.month-nav),.cs310-horse-registrations button:not(.gold):not(.danger){background:var(--cs310-inset);color:var(--cs310-text);border-color:var(--cs310-border)}
.cs310-workspace .gold,.cs310-form .gold,.cs310-registrations .gold{background:#d9ad45;color:#19180c}
.cs310-workspace .danger,.cs310-registrations .danger{background:#aa2737;color:#fff}
.cs310-workspace .checkitem,.cs310-form .checkitem{display:flex;align-items:flex-start;gap:10px;background:var(--cs310-inset);color:var(--cs310-text);padding:12px;border-radius:10px}
.cs310-workspace input[type="checkbox"],.cs310-form input[type="checkbox"]{width:18px;min-width:18px;height:18px;margin:3px 0}
.cs310-pack-row{padding:12px 0;border-bottom:1px solid var(--cs310-border)}.cs310-pack-row .checkitem{margin-bottom:6px}.cs310-pack-row.done>label{opacity:.85}
.cs310-check{padding:9px 12px;margin:6px 0;border-radius:8px;background:var(--cs310-inset);color:var(--cs310-text)}
.cs310-check-open,.cs310-warning{background:var(--cs310-warning);color:var(--cs310-warning-text);padding:12px;border-radius:10px}
.cs310-identifiers{overflow-wrap:anywhere}.cs310-multiline{white-space:pre-wrap}
.cs310-detail-grid dt{font-weight:750}.cs310-detail-grid dd{margin:4px 0 0;white-space:pre-wrap}
.cs310-guide li{margin:9px 0}.cs310-guide-links{padding-inline-start:22px}
.cs310-event .competition-summary{color:var(--cs310-text)}
.cs310-event .ops-pill{white-space:normal}
.cs310-workspace :focus-visible,.cs310-form :focus-visible,.cs310-guide :focus-visible{outline:3px solid var(--cs310-link);outline-offset:3px}
@media(max-width:600px){.cs310-grid,.cs310-detail-grid{grid-template-columns:1fr}.cs310-panel,.cs310-guide-details{padding-inline:12px}.cs310-panel>summary,.cs310-guide-details>summary{margin-inline:-12px}.cs310-workspace .actions>button,.cs310-registrations .actions>button{flex:1 1 140px}.cs310-entry-card{padding:10px}}
@media print{.cs310-workspace .actions,.cs310-workspace button{display:none}.cs310-panel,.cs310-guide-details{overflow:visible;background:#fff;color:#14231b;border:1px solid #777}}
#editForm[data-competition="true"]{color:var(--cs310-text)}
#editForm[data-competition="true"] :is(label,h2,h3,h4,summary){color:var(--cs310-text)}
#editForm[data-competition="true"] :is(.ops-subcard,details,.checkitem){background:var(--cs310-surface);color:var(--cs310-text);border-color:var(--cs310-border)}
#editForm[data-competition="true"] summary{padding:12px;border-radius:10px;background:var(--cs310-inset);min-height:44px;cursor:pointer}
#editForm[data-competition="true"] :is(input,select,textarea){background:var(--cs310-surface);color:var(--cs310-text);border:1px solid var(--cs310-border)}
#editForm[data-competition="true"] :is(input,textarea)::placeholder{color:var(--cs310-muted);opacity:1}
#editForm[data-competition="true"] :is(.form-hint,.muted){color:var(--cs310-muted)}
#editForm[data-competition="true"] button{white-space:normal;min-height:42px;overflow-wrap:anywhere}
#editForm[data-competition="true"] button:not(.gold):not(.danger):not(.primary){background:var(--cs310-inset);color:var(--cs310-text);border-color:var(--cs310-border)}
#editForm[data-competition="true"] :is(button.gold,button.primary){background:#d9ad45;color:#19180c}
#editForm[data-competition="true"] button.danger{background:#aa2737;color:#fff}
#editForm[data-competition="true"] :focus-visible{outline:3px solid var(--cs310-link);outline-offset:3px}
.cal-dot.sportApplication{background:#8e60ac}
