.cal-heading{align-items:flex-end;gap:24px}.cal-heading>.primary-btn{flex-shrink:0}.cal-heading .red{font-style:italic}.cal-icon{flex-shrink:0}.cal-week-overview{display:grid;grid-template-columns:minmax(200px,1fr) minmax(260px,1.3fr);align-items:center;gap:36px;padding:26px 30px;margin-bottom:28px;border:1px solid #dce1ce;border-radius:17px;background:#e9eddd}.cal-week-copy .eyebrow{font-size:9px;color:#7e8a6a}.cal-week-copy h2{font-size:25px;letter-spacing:-.6px;font-weight:500;margin:13px 0 11px}.cal-week-copy p{margin:0;font-size:11px;line-height:1.8;color:#7b846c}.cal-week-copy strong{font-weight:600;color:#515d45}.cal-week-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;max-width:430px;width:100%;justify-self:end}.cal-week-column{text-align:center;color:#7c896d;font-size:9px}.cal-week-column>span:last-child{display:block;margin-top:9px}.cal-week-column.selected>span:last-child{color:var(--red);font-weight:700}.cal-week-minutes{display:block;height:17px;font-size:8px;color:#8e997f}.cal-week-track{height:48px;background:#dae2c9;border-radius:5px;display:flex;align-items:flex-end;overflow:hidden}.cal-week-track>span{display:block;background:var(--red);width:100%;border-radius:5px}.cal-week-track>span.has-log{background:#859b68}.cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:22px;align-items:start}.cal-month-panel{background:var(--paper,#fffefa);border:1px solid var(--line,#e2e4da);border-radius:17px;overflow:hidden;min-width:0}.cal-month-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:23px 24px 20px}.cal-month-header h2{font-size:22px;font-weight:500;letter-spacing:-.5px;margin:0 0 7px}.cal-month-header p{font-size:10px;color:var(--muted,#8c957f);margin:0}.cal-month-controls{display:flex;align-items:center;gap:3px;flex-shrink:0}.cal-month-controls .icon-btn{width:34px;height:38px;min-height:38px}.cal-month-controls .quiet-btn{font-size:10px;margin-right:5px}.cal-weekday-labels{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0 11px 12px;color:#8d9680;font-size:9px;text-transform:uppercase;letter-spacing:.5px;text-align:center}.cal-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#e8e9df;border-top:1px solid #e8e9df;border-bottom:1px solid #e8e9df}.cal-day{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;position:relative;min-width:0;min-height:91px;padding:10px 7px 8px;background:var(--paper,#fffefa);color:var(--ink,#292c26);text-align:left;overflow:hidden;border:0;border-radius:0}.cal-day:hover{background:#f4f4ec}.cal-day.outside{background:#f7f7f1;color:#adb3a3}.cal-day.selected{background:#fbebe5;box-shadow:inset 0 0 0 1.5px var(--red)}.cal-day:focus-visible{z-index:1;outline:3px solid #315c9d;outline-offset:-3px}.cal-day:disabled{cursor:default;opacity:.55}.cal-day-top{display:flex;align-items:center;justify-content:space-between;gap:2px}.cal-day-top>span{display:grid;place-items:center;min-width:22px;height:22px;font-size:11px;border-radius:50%}.cal-day.today .cal-day-top>span{background:var(--red);color:white}.cal-day-top>small{font-size:8px;color:#929b86}.cal-day-events{display:flex;flex-direction:column;gap:4px;padding-top:9px;min-width:0;overflow:hidden}.cal-event-label{font-size:8px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:2px solid var(--red);padding:2px 0 2px 4px;color:#6c745f}.cal-event-label.completed{border-color:#859b68}.cal-event-label.partial{border-color:#c69c59}.cal-event-label.skipped{border-color:#bac1af;color:#adb4a1;text-decoration:line-through}.cal-event-more{font-size:8px;color:#89947a;padding-left:6px}.cal-day-dots{display:none}.cal-legend{display:flex;flex-wrap:wrap;gap:14px;padding:15px 20px;font-size:8px;color:#8e987f}.cal-legend>span{display:flex;gap:5px;align-items:center}.cal-legend i,.cal-day-dots i{display:block;width:5px;height:5px;border-radius:50%;background:var(--red)}.cal-legend i.completed,.cal-day-dots i.completed{background:#859b68}.cal-legend i.partial,.cal-day-dots i.partial{background:#c69c59}.cal-legend i.skipped,.cal-day-dots i.skipped{background:#bcc4af}.cal-selected-day{min-width:0}.cal-selected-heading{padding:2px 0 18px}.cal-selected-heading .eyebrow{font-size:9px;color:#929d81}.cal-selected-heading h2{font-size:23px;font-weight:500;letter-spacing:-.6px;margin:11px 0 7px}.cal-selected-heading p{font-size:10px;color:#8d9780;line-height:1.7;margin:0}.cal-day-list{display:flex;flex-direction:column;gap:13px}.cal-session-card{background:var(--paper,#fffefa);border:1px solid var(--line,#e2e4da);padding:20px;border-radius:14px;min-width:0}.cal-session-card.skipped{background:#f2f3ec}.cal-session-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:8px;color:#9aa38d;margin-bottom:17px}.cal-status{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;background:#f6ece2;color:#ad8160;border-radius:4px;font-size:8px;white-space:nowrap}.cal-status .icon{width:11px;height:11px}.cal-status.completed{background:#edf1e5;color:#7b9160}.cal-status.partial{background:#faf1df;color:#aa8b50}.cal-status.skipped{background:#e8ebdf;color:#929c81}.cal-session-card h3{font-size:18px;line-height:1.4;font-weight:500;letter-spacing:-.35px;margin:0 0 13px;overflow-wrap:anywhere}.cal-session-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:9px;color:#929d81}.cal-session-meta strong{font-size:13px;font-weight:500;color:#626e53}.cal-session-exercises{font-size:10px;color:#949d87;line-height:1.8;margin:13px 0 18px;overflow-wrap:anywhere}.cal-logged-time{font-size:10px;color:#7c9062;line-height:1.7;margin:0 0 15px}.cal-session-actions{display:flex;flex-direction:column;gap:8px}.cal-session-actions .primary-btn,.cal-session-actions .secondary-btn{min-height:42px;padding:10px 13px;font-size:10px;justify-content:center}.cal-session-actions .quiet-btn{font-size:9px;min-height:30px;align-self:center}.cal-skip{color:#a0a88f}.cal-day-empty{border:1px dashed #d8dfc9;border-radius:14px;padding:28px 20px;text-align:center;background:#f2f4eb}.cal-day-empty>.icon{width:28px;height:28px;color:#93a17f;margin:0 auto 16px}.cal-day-empty h3{font-size:16px;font-weight:500;margin:0 0 12px}.cal-day-empty p{font-size:10px;color:#8e997f;line-height:1.8;margin:0 0 20px}.cal-day-empty .secondary-btn{font-size:10px;width:100%;justify-content:center;min-height:43px}.cal-routines{margin-top:34px}.cal-routines-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.cal-routines-heading .eyebrow{font-size:8px}.cal-routines-heading h2{font-size:24px;font-weight:500;letter-spacing:-.6px;margin:9px 0 0}.cal-routines-heading>span{font-size:10px;color:#8e987f}.cal-plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cal-plan-card{display:flex;align-items:flex-start;gap:14px;padding:21px;background:var(--paper,#fffefa);border:1px solid var(--line,#e2e4da);border-radius:14px;min-width:0}.cal-plan-symbol{display:grid;place-items:center;width:34px;height:34px;background:#eef1e5;border-radius:9px;color:#91a174;flex-shrink:0}.cal-plan-symbol .icon{width:19px;height:19px}.cal-plan-content{min-width:0;flex:1}.cal-plan-content h3{font-size:15px;line-height:1.5;font-weight:500;margin:0 0 8px;overflow-wrap:anywhere}.cal-plan-content p{font-size:10px;color:#7c8869;margin:0 0 6px;line-height:1.6}.cal-plan-content small{display:block;font-size:9px;color:#98a08b;line-height:1.8}.cal-plan-meta{display:block;font-size:9px;color:#98a08b;line-height:1.8;margin-top:10px}.cal-plan-actions{display:flex;align-items:center;flex-direction:column;gap:5px}.cal-plan-actions .icon-btn{width:30px;height:30px;min-height:30px;color:#8d9b79}.cal-plan-actions .quiet-btn{font-size:8px;padding:5px;min-height:28px;color:#a0a78f}.cal-routines-empty{border:1px dashed #d8dfc9;border-radius:12px;padding:25px;color:#8b967b;line-height:1.8;font-size:11px}.cal-storage-note{font-size:9px;color:#99a18c;line-height:1.9;max-width:700px;margin:24px 0 0}.cal-form-date-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;margin-top:22px}.cal-weeks-field{display:flex;border:1px solid var(--line,#e2e4da);border-radius:8px;overflow:hidden;align-items:center;background:var(--paper,#fffefa)}.cal-weeks-field input{border:0!important;min-width:0;box-shadow:none!important}.cal-weeks-field>span{font-size:11px;color:#939c84;padding-right:14px}.cal-weekday-fieldset{border:0;padding:0;margin:25px 0 22px;min-width:0}.cal-weekday-fieldset legend{font-size:11px;font-weight:600;color:#758064;padding:0;margin-bottom:12px}.cal-weekday-choices{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-weekday-choice{position:relative;display:block;min-width:0;cursor:pointer}.cal-weekday-choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.cal-weekday-choice span{display:grid;place-items:center;min-height:44px;border:1px solid #e0e5d6;border-radius:8px;background:#f5f6ee;color:#8b9877;font-size:11px}.cal-weekday-choice input:checked+span{color:var(--red);border-color:#e9b6a7;background:#fbeae3;font-weight:600}.cal-weekday-choice input:focus-visible+span{outline:3px solid #315c9d;outline-offset:2px}.cal-weekday-fieldset p{font-size:9px;color:#969f89;line-height:1.8;margin:10px 0 0}.cal-schedule-preview{padding:20px;background:#edf1e3;border:1px solid #e0e7d2;border-radius:11px;margin:15px 0 18px;color:#83916d;font-size:11px;line-height:1.8}.cal-preview-title{display:flex;align-items:center;gap:9px;margin-bottom:8px;color:#64754c}.cal-preview-title .icon{width:18px;height:18px}.cal-preview-title strong{font-size:14px;font-weight:500}.cal-schedule-preview p{margin:6px 0;font-size:10px}.cal-schedule-preview p strong{font-weight:500;color:#6f8057}.cal-preview-meta{display:flex;flex-wrap:wrap;gap:7px 17px;font-size:9px;padding:11px 0;border-top:1px solid #dce4cc;margin-top:13px}.cal-schedule-preview small{display:block;font-size:9px;color:#96a085;line-height:1.8}
@media(max-width:1180px){.cal-layout{grid-template-columns:minmax(0,1fr)}.cal-selected-day{margin-top:4px}.cal-day-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.cal-selected-heading{padding-bottom:14px}.cal-day-empty{grid-column:1/-1;padding:25px;display:flex;align-items:center;gap:20px;text-align:left;flex-wrap:wrap}.cal-day-empty>.icon{margin:0}.cal-day-empty h3{margin:0}.cal-day-empty p{flex:1;min-width:200px;margin:0}.cal-day-empty .secondary-btn{width:auto}.cal-week-overview{gap:24px;padding:24px}.cal-plan-list{grid-template-columns:minmax(0,1fr)}}
@media(max-width:680px){.cal-heading{flex-direction:column;align-items:flex-start;gap:18px}.cal-heading>.primary-btn{min-height:44px;font-size:11px}.cal-week-overview{grid-template-columns:minmax(0,1fr);padding:22px;gap:22px;margin-bottom:22px}.cal-week-copy h2{font-size:23px;margin:10px 0 7px}.cal-week-copy p{font-size:10px}.cal-week-bars{max-width:none;gap:9px}.cal-week-track{height:40px}.cal-week-column{font-size:8px}.cal-month-header{padding:18px 14px;gap:8px}.cal-month-header h2{font-size:20px}.cal-month-header p{font-size:9px}.cal-month-controls{gap:0}.cal-month-controls .quiet-btn{font-size:9px;margin-right:1px;padding:8px 5px}.cal-month-controls .icon-btn{width:31px;min-width:31px;height:38px}.cal-weekday-labels{font-size:8px;padding:0 3px 10px;letter-spacing:0}.cal-day{min-height:60px;padding:6px 2px 7px;align-items:center}.cal-day-top{width:100%;justify-content:center}.cal-day-top>span{font-size:11px;min-width:24px;height:24px}.cal-day-top small,.cal-day-events{display:none}.cal-day-dots{display:flex;gap:3px;justify-content:center;align-items:center;margin-top:8px;height:5px;max-width:100%}.cal-day-dots i{width:4px;height:4px;flex-shrink:0}.cal-day-dots b{font-size:7px;font-weight:400;line-height:1;color:#89957b}.cal-legend{gap:12px;padding:13px;font-size:7px}.cal-layout{gap:24px}.cal-selected-heading h2{font-size:23px}.cal-day-list{display:flex;flex-direction:column}.cal-session-card{padding:22px}.cal-session-card h3{font-size:21px}.cal-session-top{font-size:9px}.cal-session-meta{font-size:10px}.cal-session-meta strong{font-size:14px}.cal-session-exercises{font-size:11px}.cal-session-actions .primary-btn,.cal-session-actions .secondary-btn{font-size:11px;min-height:44px}.cal-session-actions .quiet-btn{font-size:10px}.cal-day-empty{display:block;text-align:center;padding:28px 22px}.cal-day-empty>.icon{margin:0 auto 16px}.cal-day-empty h3{margin:0 0 11px}.cal-day-empty p{min-width:0;font-size:11px;margin:0 0 18px}.cal-day-empty .secondary-btn{width:100%}.cal-routines{margin-top:28px}.cal-routines-heading h2{font-size:23px}.cal-plan-card{padding:19px 16px;gap:11px}.cal-plan-symbol{width:31px;height:31px}.cal-plan-content h3{font-size:14px}.cal-plan-content p{font-size:9px}.cal-plan-content small,.cal-plan-meta{font-size:8px}.cal-plan-actions .quiet-btn{font-size:8px}.cal-storage-note{font-size:9px}.cal-form-date-grid{gap:13px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.cal-weeks-field>span{font-size:10px;padding-right:9px}.cal-weekday-choices{gap:4px}.cal-weekday-choice span{font-size:9px;min-height:43px;border-radius:6px}.cal-weekday-fieldset legend{font-size:10px}.cal-schedule-preview{padding:17px}.cal-preview-title strong{font-size:13px}.cal-schedule-preview p{font-size:10px}}
.cal-heading-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;flex-shrink:0}.cal-heading-actions .primary-btn,.cal-heading-actions .secondary-btn{min-height:44px;font-size:11px}.cal-actual-breakdown{display:flex;flex-wrap:wrap;gap:7px 15px;margin-top:13px;font-size:10px;line-height:1.8;color:#667657}.cal-actual-breakdown span{display:flex;gap:5px}.cal-actual-breakdown b{font-weight:600}.cal-time-note{margin-top:8px!important;font-size:9px!important}.cal-add-date{width:100%;justify-content:center;margin-top:15px;min-height:44px;font-size:10px}.cal-event-label[data-kind="climbing"]{border-color:#658f98}.cal-day-dots i.climbing,.cal-legend i.climbing{background:#658f98}.cal-category.climbing{color:#456d76;font-size:9px}.cal-climbing-card{border-top:3px solid #658f98}.cal-climbing-card .cal-session-meta{line-height:1.8}.cal-quick-section{padding:23px 0;border-top:1px solid var(--line);margin-top:22px}.cal-quick-section h3{font-size:20px;letter-spacing:-.3px;font-weight:500;margin:11px 0 16px}.cal-quick-section p{font-size:12px;line-height:1.9;color:var(--muted)}.cal-quick-actions{display:flex;flex-wrap:wrap;gap:10px}.cal-quick-build{padding-bottom:0}.cal-quick-build .secondary-btn{margin-top:6px;min-height:44px}.cal-import-guide{border:1px solid var(--line);background:var(--sage,#edf1e3);padding:18px 20px;border-radius:12px;font-size:12px;line-height:1.9;margin:19px 0}.cal-import-guide>strong{font-weight:600}.cal-import-guide ol{padding-left:20px;margin:9px 0}.cal-import-guide p{color:var(--muted);font-size:11px;line-height:1.8;margin:13px 0 0}.cal-import-file{font-size:11px;color:var(--muted);overflow-wrap:anywhere;line-height:1.8}.cal-import-summary{display:flex;flex-direction:column;gap:7px;background:var(--sage,#edf1e3);padding:16px 18px;border-radius:10px;margin:18px 0;font-size:13px;line-height:1.6}.cal-import-summary span{font-size:11px;color:var(--muted)}.cal-import-table-wrap{max-width:100%;max-height:460px;overflow:auto;border:1px solid var(--line);border-radius:11px}.cal-import-table{border-collapse:collapse;width:100%;font-size:11px;text-align:left;line-height:1.7}.cal-import-table caption{text-align:left;padding:15px 16px;font-weight:600;font-size:12px;background:var(--paper)}.cal-import-table th{background:var(--sage,#edf1e3);font-size:10px;font-weight:600;position:sticky;top:0;z-index:1;white-space:nowrap}.cal-import-table td,.cal-import-table th{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.cal-import-table tr:last-child td{border-bottom:0}.cal-import-table td>strong{display:block;margin-top:4px;font-size:12px;font-weight:500}.cal-import-table td>span{display:block;font-size:10px;color:var(--muted)}.cal-import-table td>small{display:block;margin-top:5px;font-size:10px;color:var(--muted)}.cal-import-table details{margin-top:7px;font-size:10px;min-width:145px}.cal-import-table summary,.cal-csv-help summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px;line-height:1.9}.cal-import-table ol{padding-left:17px;margin:9px 0;max-width:280px}.cal-import-status{font-size:9px!important;color:var(--ink)!important;padding:3px 6px;border-radius:4px;background:var(--sage,#edf1e3);width:max-content;max-width:100%}.cal-import-status.duplicate,.cal-import-status.conflict{background:var(--red-soft,#fbeae3)}.cal-import-errors{padding:15px 18px;border:1px solid var(--red);border-radius:10px;margin:15px 0;font-size:11px;line-height:1.9}.cal-import-errors h3{font-weight:600;font-size:14px;margin:0 0 10px}.cal-import-errors ul{padding-left:18px;max-height:230px;overflow:auto}.cal-import-errors p{color:var(--muted);margin-bottom:0}.cal-csv-help{border-top:1px solid var(--line);padding-top:15px;margin-top:17px;font-size:11px;line-height:1.9}.cal-csv-help p{color:var(--muted)}.cal-csv-help a{color:var(--red)}
:root[data-theme="dark"] .cal-actual-breakdown,:root[data-theme="dark"] .cal-category.climbing{color:var(--muted)}
@media(max-width:680px){.cal-heading-actions{width:100%;justify-content:flex-start;gap:8px}.cal-heading-actions .primary-btn,.cal-heading-actions .secondary-btn{padding:11px 14px;font-size:10px}.cal-add-date{font-size:11px}.cal-actual-breakdown{font-size:10px;gap:6px 13px}.cal-quick-actions>.primary-btn,.cal-quick-actions>.secondary-btn{flex:1;justify-content:center;font-size:11px}.cal-import-table th,.cal-import-table td{padding:10px 11px}.cal-import-table{min-width:450px}.cal-import-guide{padding:16px}.cal-import-table-wrap{max-height:400px}.cal-routines-heading .text-button{font-size:10px}}

/* A video chosen in the yoga library has one focused calendar action. */
.cal-guided-selection{padding:18px 20px;margin:0 0 24px;border:1px solid var(--line);border-radius:12px;background:var(--sage,#edf1e3)}
.cal-guided-selection .eyebrow{font-size:10px}
.cal-guided-selection h3{margin:10px 0 8px;font-size:20px;line-height:1.4;font-weight:500;letter-spacing:-.3px;overflow-wrap:anywhere}
.cal-guided-selection p{margin:0;font-size:12px;line-height:1.7;color:var(--muted)}
@media(max-width:620px){.cal-guided-selection{padding:16px}.cal-guided-selection h3{font-size:18px}#modal:has(#calendar-guided-form) .modal-foot{flex-wrap:wrap;gap:8px}#modal:has(#calendar-guided-form) .modal-foot>.primary-btn{flex:1;justify-content:center;min-width:0}}
.cal-repeat-toggle{display:flex;align-items:center;gap:12px;min-height:48px;margin:22px 0 12px;cursor:pointer;font-size:14px;font-weight:600;color:var(--ink,#262923)}
.cal-repeat-toggle input{width:20px;height:20px;min-height:20px;margin:0;accent-color:var(--red);flex:0 0 20px;cursor:pointer}
.cal-repeat-toggle input:focus-visible{outline:3px solid #315c9d;outline-offset:3px}
.cal-recurrence-fields{border:0;padding:0;margin:0;min-width:0}
.cal-recurrence-fields[hidden]{display:none}
.cal-schedule-date{margin-top:22px}
