.ss-credit-choice,.ss-rider-management { font-size:13px; }
.ss-credit-choice summary,.ss-rider-management summary,.ss-refund-panel summary { cursor:pointer; color:#365a43; font-weight:600; }
.ss-credit-choice form { min-width:230px; max-width:360px; display:flex; flex-direction:column; gap:9px; margin-top:10px; }
.ss-credit-choice label,.ss-refund-entry form label,.ss-horse-preferences label { display:flex; flex-direction:column; gap:5px; }
.ss-credit-choice select,.ss-credit-choice textarea,.ss-refund-entry select,.ss-refund-entry textarea,.ss-horse-preferences textarea { width:100%; box-sizing:border-box; padding:8px; border:1px solid #dfe5d9; border-radius:5px; font:inherit; }
.ss-refund-entry { display:flex; flex-direction:column; gap:6px; padding:15px 0; border-bottom:1px solid #e5e9e1; font-size:14px; }
.ss-refund-entry form { max-width:560px; display:flex; flex-direction:column; gap:10px; margin-top:8px; }
.ss-rider-management { grid-column:1/-1; }
.ss-rider-row { padding:10px 0; border-bottom:1px solid #e5e9e1; }
.ss-horse-preferences { display:flex; flex-direction:column; gap:10px; margin-top:12px; }
.ss-horse-preferences label:first-of-type { display:block; }
.ss-horse-preferences small { font-size:12px; color:#63705e; }
.ss-tabs { display:flex; gap:6px; flex-wrap:wrap; border-bottom:1px solid #dfe5d9; margin:0 0 24px; }
.ss-tabs a { padding:12px 20px; color:#365a43; text-decoration:none; border-bottom:3px solid transparent; font-weight:600; }
.ss-tabs a:hover { background:#eef2e8; }
.ss-tabs a:focus-visible { outline:2px solid #365a43; outline-offset:2px; }
.ss-tabs .ss-tab-active { border-color:#365a43; background:#eef2e8; }
.ss-scope-label { display:flex; flex-direction:column; gap:4px; font-size:12px; margin-bottom:6px; }
.ss-scope-label select { max-width:190px; min-height:36px; background:white; border:1px solid #dfe5d9; border-radius:5px; }
.ss-series-label { color:#365a43; }
.ss-calendar-attention summary { cursor:pointer; color:#365a43; font-weight:600; }
.ss-calendar-update { display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid #e5e9e1; font-size:13px; flex-wrap:wrap; }
.ss-wrap { --ss-green:#365a43; --ss-ink:#2d3d32; --ss-muted:#758176; max-width:1100px; margin:28px auto; color:var(--ss-ink); font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.ss-wrap * { box-sizing:border-box; }
.ss-header { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
.ss-header h2 { margin:4px 0 0; font:600 30px/1.15 Georgia,serif; color:var(--ss-ink); }
.ss-eyebrow { color:#8a987f; font-size:11px; font-weight:700; letter-spacing:1.4px; }
.ss-role { padding:6px 10px; border-radius:20px; background:#eff4ec; color:var(--ss-green); font-size:12px; }
.ss-intro { color:var(--ss-muted); }
.ss-card { margin:16px 0; padding:20px; border:1px solid #e3e8df; border-radius:12px; background:#fffefa; box-shadow:0 3px 14px rgba(42,59,45,.04); }
.ss-card h3 { margin:0 0 16px; color:#405346; font:600 21px/1.2 Georgia,serif; }
.ss-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.ss-form label { display:flex; flex-direction:column; gap:6px; color:#647064; font-size:13px; font-weight:600; }
.ss-form input,.ss-form select,.ss-form textarea { width:100%; min-height:42px; padding:9px 11px; border:1px solid #dfe5dc; border-radius:7px; background:#fff; color:#344237; font:inherit; }
.ss-form textarea { min-height:84px; resize:vertical; }
.ss-wide { grid-column:1/-1; }
.ss-form-foot { display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding-top:4px; color:#788278; font-size:12px; }
.ss-button { display:inline-block; padding:10px 16px; border:0; border-radius:7px; background:var(--ss-green); color:#fff!important; font-weight:700; text-decoration:none!important; cursor:pointer; }
.ss-button:hover { background:#294b35; }
.ss-notice { margin:12px 0; padding:11px 14px; border:1px solid #dce7d8; border-radius:8px; background:#f2f7ef; color:#426148; }
.ss-notice-error { border-color:#ecd4cc; background:#fff4f0; color:#985440; }
.ss-empty { margin:0; color:var(--ss-muted); }
.ss-week-card { padding-bottom:14px; }
.ss-week-heading,.ss-horse-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:14px; }
.ss-week-heading h3,.ss-horse-heading h3 { margin:0; }
.ss-week-heading p,.ss-horse-heading p { margin:4px 0 0; color:var(--ss-muted); font-size:12px; }
.ss-week-nav { display:flex; align-items:center; gap:7px; }
.ss-week-nav a { display:inline-flex; min-width:34px; min-height:34px; justify-content:center; align-items:center; padding:6px 10px; border:1px solid #e0e7dc; border-radius:7px; color:#44634a; font-size:13px; font-weight:700; text-decoration:none; }
.ss-week-nav a:first-child,.ss-week-nav a:last-child { font-size:22px; line-height:1; }
.ss-week-nav a:hover { background:#f2f6ef; }
.ss-week-scroll { overflow-x:auto; padding-bottom:4px; }
.ss-week-grid { display:grid; grid-template-columns:repeat(7,minmax(116px,1fr)); gap:8px; min-width:870px; }
.ss-week-day { min-height:176px; padding:10px; border:1px solid #e7ebe3; border-radius:9px; background:#fff; }
.ss-week-day h4 { display:flex; justify-content:space-between; align-items:baseline; gap:5px; margin:0 0 10px; padding-bottom:8px; border-bottom:1px solid #edf0e9; color:#68756a; font-size:11px; font-weight:500; }
.ss-week-day h4 strong { color:#405346; font-size:13px; }
.ss-week-empty { margin:0; color:#a1a99f; font-size:11px; }
.ss-week-events { display:flex; flex-direction:column; gap:7px; }
.ss-week-event { display:flex; flex-direction:column; gap:3px; padding:8px; border-left:3px solid #789477; border-radius:5px; background:#f3f7f0; font-size:11px; }
.ss-week-event time { color:#527155; font-weight:700; }
.ss-week-event strong { color:#35483a; font-size:12px; }
.ss-week-event span,.ss-week-event small { color:#6c796e; }
.ss-week-event a { margin-top:2px; color:#58765a; font-size:10px; font-weight:700; }
.ss-horse-panel { margin-top:16px; }
.ss-horse-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.ss-horse-item { padding:12px; border:1px solid #e7ebe3; border-radius:8px; background:#fff; }
.ss-horse-item > div { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.ss-horse-item strong { color:#405346; }
.ss-horse-item p { margin:8px 0; color:var(--ss-muted); font-size:12px; }
.ss-horse-status { padding:3px 7px; border-radius:12px; background:#eff6ed; color:#507953; font-size:10px; }
.ss-horse-inactive { background:#f1f1ec; color:#798075; }
.ss-horse-form { display:grid; grid-template-columns:1fr 160px 2fr auto; align-items:end; gap:12px; margin:0 0 16px; padding:14px; border-radius:8px; background:#f6f8f3; }
.ss-horse-form label { display:flex; flex-direction:column; gap:5px; color:#647064; font-size:12px; font-weight:600; }
.ss-horse-form input,.ss-horse-form select,.ss-horse-form textarea { width:100%; min-height:40px; padding:8px 10px; border:1px solid #dfe5dc; border-radius:6px; background:#fff; color:#344237; font:inherit; }
.ss-horse-form textarea { min-height:40px; resize:vertical; }
.ss-horse-form-actions { display:flex; align-items:center; gap:10px; white-space:nowrap; }
.ss-button-light { border:1px solid #dce5d8; background:#f4f7f1; color:#436048!important; }
.ss-button-light:hover { background:#eaf1e7; }
.ss-lesson { display:grid; grid-template-columns:minmax(130px,190px) minmax(0,1fr) auto auto; align-items:center; gap:16px; padding:15px 0; border-bottom:1px solid #edf0e9; }
.ss-lesson:last-child { border-bottom:0; }
.ss-lesson-time { display:flex; flex-direction:column; color:#607160; font-size:13px; }
.ss-lesson-time strong { color:#405346; }
.ss-lesson-info h4 { margin:0 0 4px; color:#405346; font-size:15px; }
.ss-lesson-info p,.ss-lesson-info small { margin:0; color:var(--ss-muted); font-size:12px; }
.ss-sync { padding:5px 8px; border-radius:20px; background:#f0f3ec; color:#778176; font-size:11px; white-space:nowrap; }
.ss-sync-synced { background:#eff6ed; color:#507953; }
.ss-sync-failed { background:#fff0eb; color:#a35d49; }
.ss-sync-error { max-width:220px; color:#9c6658; font-size:10px; }
.ss-actions { display:flex; align-items:center; gap:10px; }
.ss-actions form { margin:0; }
.ss-text-button { padding:0; border:0; background:transparent; color:#58765a; font-family:inherit; font-size:12px; font-weight:600; line-height:1.3; text-decoration:underline; cursor:pointer; }
.ss-cancel-button { color:#9c6658; }
.ss-admin-link { margin:14px 0; font-size:13px; }
.ss-lesson-horse { grid-column:1/-1; font-size:13px; }
.ss-lesson-horse summary { color:#365a43; cursor:pointer; font-weight:600; }
.ss-lesson-horse form { display:flex; align-items:end; flex-wrap:wrap; gap:12px; margin:12px 0 0; }
.ss-lesson-horse label { display:flex; flex-direction:column; gap:5px; }
.ss-lesson-horse select { min-height:40px; padding:7px; border:1px solid #dfe5d9; border-radius:6px; }
.ss-instructor-list { list-style:none; padding:0; margin:0; }
.ss-instructor-list li { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:12px 0; border-bottom:1px solid #dfe5d9; }
.ss-instructor-list span { font-size:13px; color:var(--ss-muted,#647064); }
.ss-package-warning,.ss-notice-warning { padding:12px; background:#fff7df; color:#76551b; border:1px solid #e3cd8c; border-radius:8px; }
.ss-package-warning-inline { display:block; color:#76551b; margin:6px 0; }
.ss-package-balance-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.ss-package-balance { display:flex; flex-direction:column; gap:5px; padding:14px; border:1px solid #dfe5d9; border-radius:10px; }
.ss-package-balance small { color:#647064; }
.ss-join-group-button { padding:6px 10px; border:0; border-radius:5px; background:var(--ss-green); color:#fff; cursor:pointer; }
.ss-week-event form { margin:8px 0 0; }
.ss-admin-form > p { display:flex; align-items:end; gap:12px; flex-wrap:wrap; }
.ss-admin-form label { display:flex; flex-direction:column; gap:5px; font-weight:600; }
.ss-admin-form input,.ss-admin-form select { min-width:150px; }
.ss-class-type { margin:16px 0; padding:14px; border:1px solid #dfe5d9; border-radius:8px; }
.ss-package-class-types { margin:12px 0 20px; padding:14px; border:1px solid #dfe5d9; }
.ss-admin-form .ss-package-class-types label { display:flex; flex-direction:row; align-items:center; gap:8px; margin:8px 0; }
.ss-admin-form .ss-package-class-types input[type="checkbox"] { width:auto; min-width:0; margin:0; }
.ss-class-duration { align-self:center; color:#647064; font-size:13px; }
.ss-role-form { display:flex; align-items:center; gap:8px; }
@media(max-width:760px) {
  .ss-wrap { margin:16px 10px; }
  .ss-card { padding:15px; }
  .ss-form { grid-template-columns:1fr; }
  .ss-wide { grid-column:auto; }
  .ss-week-heading,.ss-horse-heading { align-items:flex-start; }
  .ss-horse-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ss-horse-form { grid-template-columns:1fr 1fr; }
  .ss-horse-notes,.ss-horse-form-actions { grid-column:1/-1; }
  .ss-lesson { grid-template-columns:1fr auto; gap:8px 12px; }
  .ss-lesson-time,.ss-lesson-info { grid-column:1/-1; }
  .ss-sync { grid-column:1; justify-self:start; }
  .ss-actions { grid-column:2; grid-row:3; justify-self:end; }
}
@media(max-width:480px) {
  .ss-week-heading,.ss-horse-heading { flex-direction:column; }
  .ss-week-nav { align-self:stretch; }
  .ss-week-nav a:nth-child(2) { flex:1; }
  .ss-horse-grid { grid-template-columns:1fr; }
}
