.ui-calendar-weekdays,.ui-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.ui-calendar-weekdays{margin-bottom:var(--space-1)}.ui-calendar-weekdays span{color:var(--app-text-muted);font-size:var(--font-size-xs);text-align:center;font-weight:700}.ui-calendar-grid{row-gap:var(--space-2)}.ui-calendar-grid button{min-width:0;min-height:3.8rem;padding:var(--space-1);border-radius:var(--radius-md);color:var(--app-text);cursor:pointer;font:inherit;background:0 0;border:0;align-content:center;justify-items:center;gap:.1rem;display:grid;position:relative}.ui-calendar-grid button:hover{background:var(--app-surface-muted)}.ui-calendar-grid button[data-selected=true]{background:linear-gradient(145deg, var(--app-primary), color-mix(in srgb, var(--app-primary-strong) 75%, var(--app-primary)));box-shadow:0 .4rem 1rem color-mix(in srgb, var(--app-primary) 14%, transparent);color:var(--app-on-color)}.ui-calendar-grid button[data-outside=true]{pointer-events:none;visibility:hidden}.ui-calendar-grid time{font-size:var(--font-size-md);font-variant-numeric:tabular-nums;font-weight:800}.ui-calendar-today{color:var(--app-primary);font-size:.55rem;font-weight:900;line-height:1;position:absolute;top:.25rem;left:50%;transform:translate(-50%)}.ui-calendar-grid button[data-selected=true] .ui-calendar-today{color:var(--app-on-color)}.ui-date-wheels{align-items:center;gap:var(--space-2);min-height:0;padding:var(--space-2) var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:relative}.ui-date-wheels[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-date-wheels:before{z-index:0;top:50%;right:var(--space-5);left:var(--space-5);border-radius:var(--radius-md);background:var(--app-primary-soft);content:"";pointer-events:none;height:3.4rem;position:absolute;transform:translateY(-50%)}.ui-date-wheels label{z-index:var(--layer-control);min-width:0;position:relative}.ui-date-wheels select{width:100%;height:10.5rem;color:var(--app-text-muted);font:inherit;font-size:var(--font-size-lg);font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;outline:0;padding:3.55rem 0;overflow-y:auto}.ui-date-wheels option{min-height:3.4rem;padding:var(--space-3) var(--space-1);background:var(--app-surface);color:var(--app-text-muted)}.ui-date-wheels option:checked{background:var(--app-primary-soft);color:var(--app-primary);font-weight:900}.ui-date-picker-trigger{align-items:center;gap:var(--space-3);cursor:pointer;font:inherit;text-align:left;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.ui-input.ui-date-picker-trigger{background:var(--app-surface)}.ui-date-picker-trigger>svg{color:var(--app-primary)}.ui-date-picker-trigger:disabled{cursor:not-allowed}.ui-date-picker-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-date-picker-value[data-empty=true]{color:var(--app-text-muted)}.ui-date-picker-mode-icon{color:var(--app-text-muted)!important}.ui-date-picker-backdrop{z-index:var(--layer-popover);background:color-mix(in srgb, var(--app-sidebar) 12%, transparent);pointer-events:auto;display:block;position:fixed;inset:0}.ui-date-picker-panel{z-index:calc(var(--layer-popover) + 1);max-height:var(--ui-date-picker-max-height,min(82dvh, 40rem));padding:var(--space-4);overscroll-behavior:contain;border:1px solid var(--app-border);border-radius:var(--radius-lg);background:var(--app-surface);box-shadow:var(--app-shadow-raised);color:var(--app-text);position:fixed;overflow:hidden auto}.ui-date-picker-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.ui-date-picker-header>div{padding-left:var(--space-3);gap:.15rem;display:grid}.ui-date-picker-header>div>span{color:var(--app-text-muted);font-size:var(--font-size-xs);font-weight:700}.ui-date-picker-header strong{font-size:var(--font-size-lg)}.ui-date-picker-month-trigger{align-items:center;gap:var(--space-1);width:fit-content;padding:.15rem var(--space-1) .15rem 0;border-radius:var(--radius-sm);color:var(--app-text);cursor:pointer;font:inherit;background:0 0;border:0;display:flex}.ui-date-picker-month-trigger:hover,.ui-date-picker-month-trigger[aria-expanded=true]{background:var(--app-primary-soft);color:var(--app-primary)}.ui-date-picker-month-trigger svg{transition:transform .16s}.ui-date-picker-month-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.ui-date-picker-header nav{grid-template-columns:repeat(3,minmax(0,1fr));width:42.8571%;display:grid}.ui-date-picker-header nav button{width:var(--tap-target);height:var(--tap-target);border-radius:var(--radius-pill);background:var(--app-surface-muted);color:var(--app-primary);cursor:pointer;border:0;justify-self:center;place-items:center;padding:0;display:grid}.ui-date-picker-header nav button:hover{background:var(--app-primary-soft)}.ui-date-picker-header nav .ui-date-picker-today-action{border-radius:var(--radius-md);background:var(--app-primary-soft);font-weight:900}.ui-date-picker-header nav button:disabled{color:var(--app-text-muted);cursor:not-allowed;opacity:.45}.ui-date-picker-panel .ui-calendar-grid{gap:var(--space-1)}.ui-date-picker-panel .ui-calendar-grid button{min-height:var(--tap-target);border-radius:var(--radius-sm)}.ui-calendar-grid button:disabled:not([data-outside=true]){color:var(--app-text-muted);cursor:not-allowed;opacity:.4}.ui-date-picker-month-selector{align-content:center;gap:var(--space-4);min-height:15rem;display:grid}.ui-date-picker-month-wheels{padding-right:var(--space-2);padding-left:var(--space-2)}.ui-date-picker-month-wheels:before{right:var(--space-2);left:var(--space-2)}.ui-date-picker-month-actions{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--app-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-date-picker-month-actions .ui-button{width:100%}.ui-date-picker-time{gap:var(--space-2);min-width:0;margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--app-border);display:grid}.ui-date-picker-time-heading{align-items:center;gap:var(--space-2);color:var(--app-primary);display:none}.ui-date-picker-footer{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--app-border);display:flex}.ui-date-picker-time+.ui-date-picker-footer{margin-top:var(--space-3)}.ui-date-picker-footer>div{gap:var(--space-2);display:flex}.ui-date-picker-footer .ui-button{min-width:0}.ui-date-picker-footer>div:first-child .ui-button{padding-left:var(--space-3)}@media (width<=36rem){.ui-date-picker-panel{--ui-date-picker-max-height:88dvh;padding-bottom:calc(var(--space-4) + var(--app-safe-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:0;border-left:0;border-right:0;bottom:0;right:0;width:100%!important;top:auto!important;left:0!important;transform:none!important}.ui-calendar-grid button{min-height:3.35rem}}@media (width<=24rem){.ui-calendar-grid button{min-height:3.1rem}}.ui-calendar-lunar{max-width:100%;color:var(--app-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;line-height:1.25;overflow:hidden}.ui-calendar-grid button[data-selected=true] .ui-calendar-lunar{color:inherit}.ui-date-picker-panel .ui-calendar-grid[data-lunar=true] button{min-height:3.25rem}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.training-navigation{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.training-navigation>.ui-field{flex:1;min-width:180px;max-width:300px}.training-count{margin:18px 0 8px;font-weight:600}.training-range>.muted{margin-bottom:0}.session-edit{gap:16px;margin-top:20px;display:grid}.session-management-list{margin-top:20px}.session-management-row{border-bottom:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.session-management-row>div{min-width:0}.session-management-row strong{overflow-wrap:anywhere}.session-management-row p{margin:6px 0 0}.session-management-row>.ui-button{flex-shrink:0}.ui-date-wheels select:focus-visible{outline:2px solid var(--app-focus);outline-offset:2px}@media (width<=480px){.training-navigation>.ui-field{flex-basis:calc(100% - 112px);min-width:0;max-width:none}.training-navigation>.ui-button:not(.ui-button--icon){flex:1}}
