:root{color-scheme:light dark;--color-os-page-bg: #f3f4f6;--color-os-ink: #17211f}@media(prefers-color-scheme:dark){:root{--color-os-page-bg: #121514;--color-os-ink: #edefee}}:root{--type-display: 44px;--type-heading: 26px;--type-card-title: 19px;--type-body: 15px;--type-data: 22px;--type-caption: 13px}:root{--chip-pink-text: light-dark(#B52A5C, var(--color-os-pink-soft-text));--chip-green-text: light-dark(#176B3B, var(--color-os-green-soft-text));--chip-amber-text: light-dark(#8A500F, var(--color-os-amber-soft-text))}.ui-card{background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:20px;box-shadow:var(--color-os-shadow-card);padding:22px 24px;margin-bottom:4px;color:var(--color-os-ink)}.ui-card.ui-card-compact{padding:16px}@media(max-width:480px){.ui-card{padding:16px}}.ui-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}.ui-card-title{font-size:var(--type-card-title);font-weight:700;color:var(--color-os-ink)}.ui-card-title-icon{font-size:15px;color:var(--color-os-ink-muted);vertical-align:middle;margin-left:4px;cursor:help}.ui-card-sub{font-size:var(--type-caption);color:var(--color-os-ink-muted);margin-top:2px;line-height:1.45}.ui-field{display:flex;flex-direction:column;gap:8px;min-width:0}.ui-compact .ui-field{gap:2px}.ui-field-label{font-size:var(--type-caption);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--color-os-ink-muted)}.ui-tint .ui-field-label{color:var(--color-os-ink-secondary)}.ui-btn{font-family:Roboto,sans-serif;font-size:var(--type-body);font-weight:700;border-radius:999px;padding:12px 20px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.ui-btn .material-symbols-rounded{font-size:18px}.ui-btn{width:fit-content;flex-shrink:0;white-space:nowrap}.ui-btn-primary{background:var(--color-os-pink);color:var(--color-os-on-color);border:1px solid transparent}.ui-btn-primary:hover{filter:brightness(.94)}.ui-btn-secondary{background:var(--color-os-surface);color:var(--color-os-ink);border:1px solid var(--color-os-border)}.ui-btn-secondary:hover{border-color:var(--color-os-ink-muted)}.ui-compact .ui-btn{padding:6px 12px;font-size:var(--type-caption);gap:6px}.ui-compact .ui-btn-primary{font-size:var(--type-body)}.ui-select-pill{display:flex;align-items:center;gap:10px;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;padding:10px 14px;min-width:0}.ui-select-pill .material-symbols-rounded{font-size:18px;color:var(--color-os-pink-soft-text);flex-shrink:0}.ui-select-pill select{border:none;outline:none;background:none;font-family:Roboto,sans-serif;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink);width:100%;min-width:0;cursor:pointer}.ui-compact .ui-select-pill{gap:5px;padding:5px 8px}.ui-compact .ui-select-pill .material-symbols-rounded{font-size:15px}.ui-compact .ui-select-pill select{font-size:var(--type-caption)}.ui-multi-select{position:relative}.ui-multi-select-trigger{display:flex;align-items:center;gap:10px;width:100%;min-width:0;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;padding:10px 14px;cursor:pointer;font-family:Roboto,sans-serif;text-align:left}.ui-multi-select-trigger .material-symbols-rounded{font-size:18px;color:var(--color-os-pink-soft-text);flex-shrink:0}.ui-multi-select-trigger .ui-multi-select-chevron{color:var(--color-os-ink-muted)}.ui-multi-select-summary{flex:1;min-width:0;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-multi-select-summary.ui-placeholder{font-weight:400;color:var(--color-os-ink-muted)}.ui-compact .ui-multi-select-trigger{gap:5px;padding:5px 8px}.ui-compact .ui-multi-select-trigger .material-symbols-rounded{font-size:15px}.ui-compact .ui-multi-select-summary{font-size:var(--type-caption)}.ui-multi-select-panel{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:var(--color-os-surface);border-radius:14px;box-shadow:var(--color-os-shadow-card);padding:6px;z-index:20}.ui-multi-select-panel .ui-multi-select-trigger .calm-sport .material-symbols-rounded,.ui-multi-select-option .calm-sport .material-symbols-rounded{color:inherit}.ui-multi-select-panel[role=listbox]{display:flex;flex-direction:column;gap:2px;min-width:100%;box-sizing:border-box;max-height:min(420px,60vh);overflow-y:auto}.ui-multi-select-option{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 10px;box-sizing:border-box;border:0;border-radius:10px;background:transparent;cursor:pointer;text-align:left;font:inherit;font-size:var(--type-body);color:var(--color-os-ink)}.ui-multi-select-option:hover,.ui-multi-select-option:focus-visible{background:var(--color-os-page-bg);outline:none}.ui-multi-select-option.is-selected{font-weight:700}.ui-multi-select-option-label{flex:1;min-width:0}.ui-multi-select-tick{flex:none;font-size:20px;color:var(--color-os-ink)}.ui-multi-select-option-detail{flex:none;font-size:var(--type-caption);font-weight:400;color:var(--color-os-ink-secondary);white-space:nowrap}.ui-multi-select .ui-multi-select-option .calm-zn-chip{width:26px;height:26px}.ui-multi-select .ui-multi-select-trigger .calm-zn-chip{width:24px;height:24px}.ui-chip-tone .ui-choice-chip .material-symbols-rounded{color:var(--calm-sport-fg)}.ui-checkbox-row{padding:8px 10px;gap:10px;border-radius:10px}.ui-multi-select-panel .ui-checkbox-row:hover,.ui-multi-select-clear:hover{background:var(--color-os-page-bg)}.ui-multi-select-clear{padding:8px 10px;border-radius:10px;border-bottom:1px solid var(--color-os-border);margin-bottom:4px;font-size:var(--type-caption);font-weight:700;color:var(--color-os-pink);cursor:pointer}.ui-checkbox-row{display:flex;align-items:center;gap:6px;font-size:var(--type-caption);font-weight:400;color:var(--color-os-ink);cursor:pointer}.ui-checkbox-row input{accent-color:var(--color-os-pink);margin:0}.ui-text-field{width:100%;font-family:Roboto,sans-serif;border:1px solid var(--color-os-border);border-radius:14px;padding:10px 14px;font-size:var(--type-body);font-weight:400;color:var(--color-os-ink);background:var(--color-os-surface);outline:none}.ui-text-field::placeholder{color:var(--color-os-ink-muted)}.ui-text-field:focus{border-color:var(--color-os-pink)}.ui-compact .ui-text-field{padding:5px 9px;font-size:var(--type-caption)}.ui-time-field{display:flex;align-items:center;gap:6px;border:1px solid var(--color-os-border);border-radius:14px;padding:10px 14px;width:fit-content;background:var(--color-os-surface)}.ui-time-field input{border:none;outline:none;width:38px;text-align:center;font-family:Roboto,sans-serif;font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink);background:none}.ui-time-field span{color:var(--color-os-ink-muted);font-weight:700;font-size:var(--type-caption)}.ui-compact .ui-time-field{gap:5px;padding:5px 9px}.ui-compact .ui-time-field input{width:40px}.ui-readonly-field{display:flex;align-items:center;gap:8px;border:1px solid var(--color-os-border);border-radius:14px;padding:10px 14px;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink);background:var(--color-os-page-bg)}.ui-readonly-field .material-symbols-rounded{font-size:17px;color:var(--color-os-ink-muted)}.ui-date-field{position:relative;display:flex;align-items:center;width:220px;max-width:100%}.ui-date-field .ui-date-field-shown{padding-left:12px;padding-right:38px}.ui-date-field .ui-date-field-btn{position:absolute;right:3px;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer}.ui-date-field .ui-date-field-btn .material-symbols-rounded{font-size:18px;color:var(--color-os-pink-soft-text)}.ui-date-field .ui-date-field-btn:focus-visible{outline:2px solid var(--color-os-ink)}.ui-date-field:focus-within .ui-date-field-shown{border-color:var(--color-os-pink)}.ui-compact .ui-date-field .ui-date-field-shown{padding-right:34px}.ui-compact .ui-date-field .ui-date-field-btn{right:2px}.ui-compact .ui-date-field .ui-date-field-btn .material-symbols-rounded{font-size:15px}.ui-stepper{display:flex;align-items:center;gap:8px;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;padding:10px 14px;width:132px;flex-shrink:0}.ui-stepper input{border:none;outline:none;background:none;font-family:Roboto,sans-serif;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink);width:100%;min-width:0;-moz-appearance:textfield}.ui-stepper input::-webkit-outer-spin-button,.ui-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ui-stepper-unit{font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-muted)}.ui-stepper-arrows{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.ui-stepper-arrow{width:18px;height:13px;display:flex;align-items:center;justify-content:center;color:var(--color-os-ink-muted);cursor:pointer;border-radius:4px}.ui-stepper-arrow:hover{background:var(--color-os-page-bg);color:var(--color-os-ink)}.ui-stepper-arrow .material-symbols-rounded{font-size:14px}.ui-compact .ui-stepper{gap:6px;padding:6px 10px;width:96px}.ui-compact .ui-stepper input{font-size:var(--type-caption)}.ui-choice-chip-group{display:flex;gap:8px;flex-wrap:wrap}.ui-choice-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1.5px solid var(--color-os-border);background:var(--color-os-surface);color:var(--color-os-ink-secondary);font-size:var(--type-body);font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.ui-choice-chip .material-symbols-rounded{font-size:17px}.ui-choice-chip.ui-active{background:var(--color-os-pink);border-color:var(--color-os-pink);color:var(--color-os-on-color)}.ui-choice-chip.ui-disabled{opacity:.4;cursor:not-allowed}.ui-compact .ui-choice-chip-group{gap:6px}.ui-compact .ui-choice-chip{gap:5px;padding:4px 10px;font-size:var(--type-caption)}.ui-compact .ui-choice-chip .material-symbols-rounded{font-size:14px}.ui-inline-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid transparent;border-radius:14px;padding:13px 18px;font-size:var(--type-body)}.ui-inline-banner.ui-tone-pink{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.ui-inline-banner.ui-tone-blue{background:var(--color-os-blue-soft-bg);color:var(--color-os-blue-soft-text)}.ui-inline-banner.ui-tone-amber{background:var(--color-os-amber-soft-bg);color:var(--chip-amber-text);align-items:flex-start}.ui-inline-banner .material-symbols-rounded{font-size:19px}.ui-compact .ui-inline-banner{gap:8px;padding:9px 12px;font-size:var(--type-caption)}.ui-compact .ui-inline-banner .material-symbols-rounded{font-size:18px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{min-height:100vh;background-color:var(--color-os-page-bg);color:var(--color-os-ink)}body{margin:0}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}button{font-family:inherit;cursor:pointer;border:none;outline:none}button:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}input,textarea,select{font-family:inherit;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--color-border-focus)!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-background-secondary)}::-webkit-scrollbar-thumb{background:var(--color-surface);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.session-html-content p{margin-bottom:8px}.session-html-content p:last-child{margin-bottom:0}.session-html-content a{color:var(--color-accent);text-decoration:none;font-weight:500}.session-html-content a:hover{text-decoration:underline;color:var(--color-accent-hover)}.session-html-content ul,.session-html-content ol{padding-left:18px;margin-bottom:8px}.session-html-content li{margin-bottom:4px}input.date-input-with-trigger::-webkit-calendar-picker-indicator{opacity:0;pointer-events:none}.coach-toolbar{position:sticky;top:0;z-index:50;flex-shrink:0;background:var(--color-os-surface);border-bottom:1px solid var(--color-os-border);color:var(--color-os-ink)}.coach-toolbar-row{min-height:76px;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:12px 28px}.coach-toolbar-back{flex:none;width:36px;height:36px;margin-left:-8px;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.coach-toolbar-back:hover{background:var(--color-os-page-bg);color:var(--color-os-ink)}.coach-toolbar-titles{flex:1;min-width:0}.coach-toolbar-title{margin:0;font-size:var(--type-heading);font-weight:700;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coach-toolbar-subtitle{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coach-toolbar-end{flex:none;display:flex;align-items:center;gap:12px}.coach-toolbar-tabs{padding:0 14px}.calm{--calm-band-h: 121px;--calm-status-planned: color-mix(in srgb, var(--color-os-ink) 12%, var(--color-os-surface));--calm-status-poor: color-mix(in srgb, var(--color-os-amber-soft-text) 42%, var(--color-os-surface));--calm-status-missed: color-mix(in srgb, var(--color-os-pink) 36%, var(--color-os-surface));--calm-status-resched: color-mix(in srgb, var(--color-os-blue-soft-text) 45%, var(--color-os-surface));--calm-dash: color-mix(in srgb, var(--color-os-ink) 26%, var(--color-os-surface));--calm-week-band: color-mix(in srgb, var(--color-os-page-bg) 55%, var(--color-os-surface));--calm-landing: color-mix(in srgb, var(--color-os-ink) 6%, transparent);--calm-strip-past: color-mix(in srgb, var(--color-os-ink) 32%, var(--color-os-surface));--calm-strip-current: var(--color-os-ink);--calm-strip-future: color-mix(in srgb, var(--color-os-ink) 14%, var(--color-os-surface));--calm-strip-window: var(--color-os-surface);--calm-bar-current: color-mix(in srgb, var(--color-os-ink) 55%, var(--color-os-surface));--calm-bar-ok: color-mix(in srgb, var(--color-os-green-soft-text) 55%, var(--color-os-surface));--calm-bar-behind: color-mix(in srgb, var(--color-os-amber-soft-text) 55%, var(--color-os-surface));--calm-toggle-on: var(--color-os-ink);--calm-toggle-off: color-mix(in srgb, var(--color-os-ink) 18%, var(--color-os-surface));--calm-danger-line: color-mix(in srgb, var(--color-os-danger-text) 28%, var(--color-os-surface));--calm-danger-soft: color-mix(in srgb, var(--color-os-danger-text) 10%, var(--color-os-surface));--calm-shadow-pop: 0 1px 2px color-mix(in srgb, var(--color-os-ink) 5%, transparent), 0 10px 24px color-mix(in srgb, var(--color-os-ink) 13%, transparent);--calm-shadow-lift: 0 14px 30px color-mix(in srgb, var(--color-os-ink) 20%, transparent), 0 2px 6px color-mix(in srgb, var(--color-os-ink) 10%, transparent);--calm-shadow-soft: 0 1px 2px color-mix(in srgb, var(--color-os-ink) 7%, transparent);--calm-z-dayhead: 20;--calm-z-titlerow: 30;--calm-z-menu: 35;--calm-z-band: 40;min-height:100%;background:var(--color-os-page-bg);color:var(--color-os-ink);font-size:var(--type-body);--calm-load-main: color-mix(in srgb, var(--color-os-pink) 55%, var(--color-os-surface));--calm-load-edge: color-mix(in srgb, var(--color-os-ink) 22%, var(--color-os-surface));--calm-load-rest: color-mix(in srgb, var(--color-os-ink) 9%, var(--color-os-surface));--calm-drop-line: color-mix(in srgb, var(--color-os-pink) 45%, var(--color-os-surface));--calm-drop-bg: color-mix(in srgb, var(--color-os-pink) 5%, transparent);--calm-drop-hot: color-mix(in srgb, var(--color-os-pink) 13%, transparent);--calm-z-panel: 90}.calm .calm-tone-run{--calm-sport-bg: var(--color-os-pink-soft-bg);--calm-sport-fg: var(--chip-pink-text)}.calm .calm-tone-strength{--calm-sport-bg: var(--color-os-amber-soft-bg);--calm-sport-fg: var(--chip-amber-text)}.calm .calm-tone-ride{--calm-sport-bg: var(--color-os-blue-soft-bg);--calm-sport-fg: var(--color-os-blue-soft-text)}.calm .calm-tone-neutral{--calm-sport-bg: var(--color-os-slate-soft-bg);--calm-sport-fg: var(--color-os-slate-soft-text)}.calm .calm-tone-swim{--calm-sport-bg: var(--color-os-teal-soft-bg);--calm-sport-fg: var(--color-os-teal-soft-text)}.calm .calm-tone-walk,.calm .calm-tone-walkrun{--calm-sport-bg: var(--color-os-green-soft-bg);--calm-sport-fg: var(--chip-green-text)}.calm .calm-tone-brick{--calm-sport-bg: var(--color-os-purple-soft-bg);--calm-sport-fg: var(--color-os-purple-soft-text)}.calm .calm-tone-hyroxsim,.calm .calm-tone-hyroxstation{--calm-sport-bg: var(--color-os-coral-soft-bg);--calm-sport-fg: var(--color-os-coral-soft-text)}.calm .calm-tone-other{--calm-sport-bg: var(--color-os-slate-soft-bg);--calm-sport-fg: var(--color-os-slate-soft-text)}.calm .calm-sport.is-walkrun{container-type:size;display:inline-flex;align-items:center;justify-content:center;line-height:1}.calm .calm-sport.is-walkrun .calm-wr-walk{font-size:36cqw;margin-right:-12cqw;align-self:flex-end;margin-bottom:12cqw}.calm .calm-sport.is-walkrun .calm-wr-run{font-size:62cqw}.calm .calm-sport{flex:none;display:inline-grid;place-items:center;border-radius:50%;background:var(--calm-sport-bg);color:var(--calm-sport-fg)}.calm .calm-grow{flex-grow:1}.calm .calm-muted-icon{color:var(--color-os-ink-muted)}.calm .calm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.calm button{cursor:pointer}.calm button:focus-visible,.calm [tabindex]:focus-visible,.calm input:focus-visible,.calm select:focus-visible{outline:2px solid var(--color-os-ink);outline-offset:2px}.calm .calm-band{position:sticky;top:0;z-index:var(--calm-z-band);background:var(--color-os-surface);border-bottom:1px solid var(--color-os-border)}.calm .calm-topbar{height:76px;display:flex;align-items:center;gap:14px;padding:0 28px}.calm .calm-who{display:flex;flex-direction:column;gap:2px;min-width:0}.calm .calm-who-name{font-size:var(--type-heading);font-weight:700;line-height:1.15;white-space:nowrap}.calm .calm-who-meta{font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-iconbtn-flat{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-avatar{flex:none;border-radius:50%;display:grid;place-items:center;font-size:var(--type-caption);font-weight:700;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-avatar.is-current{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-search{position:relative}.calm .calm-searchpill{display:flex;align-items:stretch;gap:1px;height:40px}.calm .calm-search-input{display:flex;align-items:center;gap:8px;width:300px;padding:0 10px 0 16px;border-radius:999px 0 0 999px;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary);cursor:text}.calm .calm-search-input input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:var(--type-body);color:var(--color-os-ink)}.calm .calm-search-input input::placeholder{color:var(--color-os-ink-secondary)}.calm .calm-search-input:focus-within{box-shadow:inset 0 0 0 2px var(--color-os-ink)}.calm .calm-search-input input:focus-visible{outline:0}.calm .calm-kbd{font-size:var(--type-caption);font-weight:700;font-family:inherit;color:var(--color-os-ink-secondary);background:var(--color-os-surface);border-radius:6px;padding:0 7px;line-height:20px}.calm .calm-search.is-solo .calm-search-input{border-radius:999px}.calm .calm-filterbtn{width:44px;border:0;border-radius:0 999px 999px 0;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-tabs{height:44px;display:flex;align-items:stretch;gap:4px;padding:0 20px}.calm .calm-tab{display:flex;align-items:center;gap:4px;padding:0 14px;border:0;background:transparent;color:var(--color-os-ink-secondary);font-size:var(--type-body);font-weight:500}.calm .calm-tab.is-active{color:var(--color-os-ink);font-weight:700;box-shadow:inset 0 -2px 0 var(--color-os-pink)}.calm .calm-pop{position:absolute;z-index:45;padding:8px;box-sizing:border-box;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;box-shadow:var(--calm-shadow-pop)}.calm .calm-pop-search{top:48px;right:0;width:340px}.calm .calm-pop-plans{top:100%;left:0;margin-top:8px;width:500px;max-width:calc(100vw - 48px)}.calm .calm-pop-key{top:48px;right:0;width:260px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-pop-tools{top:48px;right:0;width:320px}.calm .calm-pop-label{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary);padding:10px 12px 4px}.calm .calm-pop-foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding:12px 12px 6px;border-top:1px solid var(--color-os-border)}.calm .calm-pophost{position:relative}.calm .calm-plan{position:relative;min-width:0;flex:0 1 auto}.calm .calm-row{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:var(--color-os-ink);text-align:left;cursor:pointer}.calm .calm-row.is-hi,.calm .calm-row.is-current,.calm .calm-row:hover{background:var(--color-os-page-bg)}.calm .calm-row-main{flex:1;min-width:0;display:flex;flex-direction:column}.calm .calm-row-name{flex:1;font-size:var(--type-body);font-weight:700}.calm .calm-row-main .calm-row-name{flex:none}.calm .calm-row-meta{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-link{border:0;background:transparent;padding:0;font-size:var(--type-caption);font-weight:700;color:var(--color-os-pink-soft-text);text-decoration:none}.calm .calm-link:hover{text-decoration:underline}.calm .calm-key-row{display:flex;align-items:center;gap:10px}.calm .calm-key-box{width:16px;height:16px;border-radius:5px;border:2px solid transparent}.calm .calm-key-box.is-planned{border-color:var(--calm-status-planned)}.calm .calm-key-box.is-poor{border-color:var(--calm-status-poor)}.calm .calm-key-box.is-missed{border-color:var(--calm-status-missed)}.calm .calm-key-box.is-moved{border-style:dashed;border-color:var(--calm-status-resched)}.calm .calm-key-note{font-size:var(--type-caption);line-height:1.4;color:var(--color-os-ink-secondary)}.calm .calm-toolitem{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:var(--color-os-ink);text-align:left}.calm .calm-toolitem:hover{background:var(--color-os-page-bg)}.calm .calm-toolitem .material-symbols-rounded{color:var(--color-os-ink-secondary)}.calm .calm-toolitem-text{display:flex;flex-direction:column;gap:1px;font-size:var(--type-body);font-weight:500}.calm .calm-toolitem-sub{font-size:var(--type-caption);font-weight:400;color:var(--color-os-ink-secondary)}.calm .calm-toolitem.is-danger,.calm .calm-toolitem.is-danger .material-symbols-rounded,.calm .calm-toolitem.is-danger .calm-toolitem-sub{color:var(--color-os-danger-text)}.calm .calm-menu{position:absolute;z-index:var(--calm-z-menu);box-sizing:border-box;padding:6px;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;box-shadow:var(--calm-shadow-pop)}.calm .calm-menu-card{right:0;width:220px}.calm .calm-menu-card.is-down{top:32px}.calm .calm-menu-card.is-up{bottom:32px}.calm .calm-menu-area{left:0;width:240px}.calm .calm-menu-area.is-down{top:28px}.calm .calm-menu-area.is-up{bottom:100%}.calm .calm-menu-add{left:50%;transform:translate(-50%);width:220px}.calm .calm-menu-add.is-down{top:32px}.calm .calm-menu-add.is-up{bottom:32px}.calm .calm-menu-drawer{top:44px;right:0;width:240px;z-index:5}.calm .calm-menu-title{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary);padding:6px 8px}.calm .calm-menu-note{display:block;padding:4px 10px 6px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-menu-empty{padding:10px 12px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-menu-rule{height:1px;margin:6px 4px;background:var(--color-os-border)}.calm .calm-menu-search{display:flex;align-items:center;gap:8px;margin:2px 2px 6px;padding:0 12px;height:36px;border-radius:999px;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary)}.calm .calm-menu-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:var(--type-caption);color:var(--color-os-ink)}.calm .calm-menu-search input::placeholder{color:var(--color-os-ink-secondary)}.calm .calm-pop-search-field{margin:4px 4px 8px;height:40px}.calm .calm-pop-search-field input{font-size:var(--type-body)}.calm .calm-menuitem{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:var(--color-os-ink);text-align:left;font-size:var(--type-caption);font-weight:500}.calm .calm-menuitem:hover,.calm .calm-menuitem.is-hi{background:var(--color-os-page-bg)}.calm .calm-menuitem .material-symbols-rounded{color:var(--color-os-ink-secondary)}.calm .calm-menuitem.is-danger,.calm .calm-menuitem.is-danger .material-symbols-rounded{color:var(--color-os-danger-text)}.calm .calm-menu-drawer .calm-menuitem{font-size:var(--type-body);padding:10px 12px;gap:12px}.calm .calm-menuitem-rich{font-weight:700}.calm .calm-menuitem-text{display:flex;flex-direction:column}.calm .calm-menuitem-sub{font-weight:400;color:var(--color-os-ink-secondary)}.calm .calm-body{padding:24px 28px;display:flex;flex-direction:column;gap:16px}.calm .calm-titlerow{position:relative;z-index:var(--calm-z-titlerow);display:flex;align-items:center;gap:12px;min-height:84px}.calm .calm-title-main{display:flex;align-items:center;gap:12px;min-width:0}.calm .calm-title-actions{display:flex;align-items:center;gap:12px;flex:none}.calm .calm-roundbtn{width:36px;height:36px;flex:none;border:0;border-radius:50%;background:var(--color-os-surface);color:var(--color-os-ink-secondary);display:grid;place-items:center;box-shadow:var(--calm-shadow-soft)}.calm .calm-roundbtn.is-off{opacity:.5;cursor:default}.calm .calm-plan-btn{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:0;border:0;background:transparent;text-align:left;color:inherit}.calm .calm-plan-line{display:flex;align-items:center;gap:10px}.calm .calm-plan-name{font-size:var(--type-heading);font-weight:700;line-height:1.15;white-space:nowrap}.calm .calm-plan-sub{font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:var(--type-caption);font-weight:700;white-space:nowrap}.calm .calm-pill-green{background:var(--color-os-green-soft-bg);color:var(--chip-green-text)}.calm .calm-pill-blue{background:var(--color-os-blue-soft-bg);color:var(--color-os-blue-soft-text)}.calm .calm-pill-slate{background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-pill-amber{background:var(--color-os-amber-soft-bg);color:var(--chip-amber-text)}.calm .calm-pill-pink{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-toolsbtn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:0;border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-body);font-weight:700;box-shadow:var(--calm-shadow-soft);white-space:nowrap;flex:none}.calm .calm-toolsbtn .material-symbols-rounded{color:var(--color-os-ink-secondary)}.calm .calm-pophost>.calm-roundbtn{width:40px;height:40px}.calm .calm-shape{flex:0 1 452px;min-width:300px;margin-left:auto;margin-right:16px;display:flex;flex-direction:column;gap:6px}.calm .calm-shape-bars{--col: calc((100% - (var(--n) - 1) * 6px) / var(--n));position:relative;height:var(--strip-h, 44px)}.calm .calm-shape-window{position:absolute;top:-4px;bottom:-4px;border-radius:10px;background:var(--calm-strip-window);left:calc((var(--first) - 1) * (var(--col) + 6px) - 4px);width:calc(var(--count) * var(--col) + (var(--count) - 1) * 6px + 8px)}.calm .calm-shape-row{position:relative;height:var(--strip-h, 44px);display:grid;grid-template-columns:repeat(var(--n),minmax(0,var(--bar-max, 1fr)));justify-content:center;gap:var(--gap, 6px);align-items:end}.calm .calm-shape-bar{position:relative;width:100%;height:var(--strip-h, 44px);padding:0;border:0;background:transparent}.calm .calm-shape-bar:before{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--h);border-radius:6px;background:var(--bar)}.calm .calm-shape-bar.is-past{--bar: var(--calm-strip-past)}.calm .calm-shape-bar.is-current{--bar: var(--calm-strip-current)}.calm .calm-shape-bar.is-future{--bar: var(--calm-strip-future)}.calm .calm-shape-bar:hover{filter:brightness(.93)}.calm .calm-shape-bar:after{content:attr(data-tip);position:absolute;bottom:calc(var(--h) + 8px);left:50%;transform:translate(-50%);padding:4px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;background:var(--color-os-ink);color:var(--color-os-surface);font-size:var(--type-caption);font-weight:500;z-index:50}.calm .calm-shape-bar:hover:after,.calm .calm-shape-bar:focus-visible:after{opacity:1}.calm .calm-shape-caption{display:flex;justify-content:space-between;gap:12px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap}.calm .calm-gridcard.ui-card{padding:0 20px 12px;margin-bottom:0}.calm .calm-cols>*,.calm .calm-day,.calm .calm-day-list,.calm .calm-card-main>*,.calm .calm-card-sub>*{min-width:0}.calm .calm-cols{display:grid;grid-template-columns:100px repeat(7,minmax(0,1fr)) 168px;column-gap:10px}.calm .calm-dayhead{position:sticky;top:var(--calm-band-h);z-index:var(--calm-z-dayhead);height:40px;align-items:center;background:var(--color-os-surface);border-radius:20px 20px 0 0;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-dayhead-cell{padding-left:4px}.calm .calm-dayhead-cell.is-today span{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text);font-weight:700;border-radius:999px;padding:2px 8px}.calm .calm-dayhead-done{padding-left:16px}.calm .calm-weeks{display:flex;flex-direction:column;gap:6px}.calm .calm-week{position:relative;min-height:118px;align-items:stretch;padding:10px 0;border-radius:14px}.calm .calm-week:has(.calm-menu){z-index:var(--calm-z-menu)}.calm .calm-week.is-current{background:var(--calm-week-band)}.calm .calm-week.is-current .calm-daynum:not(.is-today),.calm .calm-week.is-current .calm-weeklabel-sub{color:var(--color-os-ink-secondary)}.calm .calm-weeklabel{position:relative;display:flex;flex-direction:column;gap:2px;padding-left:8px;white-space:nowrap}.calm .calm-weeklabel-n{font-size:var(--type-body);font-weight:700;line-height:1.2}.calm .calm-weeklabel-sub{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-weeklabel-now{font-size:var(--type-caption);font-weight:700}.calm .calm-weeklabel-more .calm-more{position:absolute;top:-2px;right:4px}.calm .calm-day{position:relative;container:calmday / inline-size;min-width:0;display:flex;flex-direction:column;gap:6px}.calm .calm-day:has(.calm-menu){z-index:var(--calm-z-menu)}.calm .calm-day:before{content:"";position:absolute;inset:-4px -5px;border-radius:12px;pointer-events:none}.calm .calm-day.is-landing:before{background:var(--calm-landing)}.calm .calm-day>*{position:relative}.calm .calm-day-top{display:flex;align-items:center;justify-content:space-between;min-height:24px}.calm .calm-daynum{font-size:var(--type-caption);color:var(--color-os-ink-secondary);padding-left:4px;line-height:20px}.calm .calm-daynum.is-today{font-weight:700;color:var(--chip-pink-text);background:var(--color-os-pink-soft-bg);border-radius:999px;padding:0 8px}.calm .calm-day-list{position:relative;display:flex;flex-direction:column;gap:6px}.calm .calm-day-more .calm-more{width:22px;height:22px}.calm .calm-more{opacity:0;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center;transition:opacity .15s}.calm .calm-more:hover{background:var(--color-os-slate-soft-bg)}.calm .calm-weeklabel:hover .calm-more,.calm .calm-day-top:hover .calm-more,.calm .calm-more:focus-visible,.calm .calm-more.is-open{opacity:1}.calm .calm-add-wrap{position:relative;align-self:center;margin-top:2px}.calm .calm-add{width:24px;height:24px;padding:0;border-radius:50%;border:1px solid var(--color-os-border);background:var(--color-os-surface);color:var(--color-os-ink-secondary);display:grid;place-items:center;opacity:0;transition:opacity .15s}.calm .calm-day:hover .calm-add,.calm .calm-day:focus-within .calm-add,.calm .calm-add.is-open{opacity:1}@media(hover:none){.calm .calm-add{opacity:1}}.calm .calm-card{position:relative;display:flex;flex-direction:column;min-width:0;box-sizing:border-box;padding:7px 8px;border-radius:10px;border:1.5px solid transparent;background:var(--color-os-surface);color:var(--color-os-ink);cursor:pointer}.calm .calm-card-main{min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center}.calm .calm-card-sport,.calm .calm-cb{grid-column:1;grid-row:1 / 3}.calm .calm-card-title{grid-column:2;grid-row:1;font-size:var(--type-caption);font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-card-sub{grid-column:2;grid-row:2;height:20px;display:flex;align-items:center;gap:6px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);min-width:0}.calm .calm-card.is-done{border-color:transparent}.calm .calm-card.is-planned{border-color:var(--calm-status-planned)}.calm .calm-card.is-poor{border-color:var(--calm-status-poor)}.calm .calm-card.is-missed{border-color:var(--calm-status-missed)}.calm .calm-card.is-editable{cursor:grab}.calm .calm-extra{padding:0 8px;border-radius:999px;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text);font-size:var(--type-caption);font-weight:700;line-height:18px}.calm .calm-adj{display:flex;align-items:center;height:20px;width:100%}.calm .calm-ctl{display:none;align-items:center;gap:4px;max-width:100%}.calm .calm-day-list{container:calmday / inline-size}@container calmday (max-width: 99px){.calm .calm-card-sub{height:auto;min-height:20px;align-items:flex-start}.calm .calm-adj{height:auto;min-height:20px}.calm .calm-ctl{flex-wrap:wrap;justify-content:flex-start;gap:6px;width:100%;padding-top:2px}.calm .calm-ctl .calm-ctl-time{order:-1;flex:0 0 100%;min-width:0;line-height:1.2;text-align:left;white-space:nowrap}}.calm .calm-ctl-time{min-width:38px;text-align:center;font-weight:700;color:var(--color-os-ink)}.calm .calm-mini{width:18px;height:18px;padding:0;border:0;border-radius:50%;background:var(--color-os-slate-soft-bg);color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-mini:hover{background:var(--calm-status-planned);color:var(--color-os-ink)}.calm .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted) .calm-ctl{display:flex}.calm .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted):has(.calm-ctl){padding-bottom:12px}.calm .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted) .calm-adj .calm-dur{display:none}.calm .calm-cb{display:none;width:26px;height:26px;padding:0;border-radius:50%;place-items:center;border:1.5px solid var(--calm-status-planned);background:var(--color-os-surface);color:var(--color-os-surface)}.calm .calm-cb[aria-checked=true]{border-color:var(--color-os-ink);background:var(--color-os-ink);color:var(--color-os-surface)}.calm .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted) .calm-cb,.calm .calm-card.is-selmode.is-editable .calm-cb{display:grid}.calm .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted) .calm-card-sport,.calm .calm-card.is-selmode.is-editable .calm-card-sport{display:none}.calm .calm-card.is-selected{border-color:var(--color-os-ink)}.calm .calm-card-more{position:absolute;top:3px;right:3px}.calm .calm-card:is(:hover,:focus-within,.is-tapped) .calm-card-more{opacity:1}.calm .calm-card:is(:hover,:focus-within,.is-tapped) .calm-card-more{background:var(--color-os-surface)}.calm .calm-card .calm-card-more:hover{background:var(--color-os-slate-soft-bg)}.calm .calm-card.is-selmode .calm-card-more{display:none}.calm .calm-card.is-resched{border-style:dashed;border-color:var(--calm-status-resched)}.calm .calm-dur.is-missedtag{color:var(--color-os-pink-soft-text);font-weight:700}.calm .calm-card.is-movable{cursor:grab}.calm .calm-card.is-moved{background:var(--color-os-page-bg);border:1.5px dashed var(--calm-dash);box-shadow:none;cursor:default}.calm .calm-card.is-moved .calm-card-title,.calm .calm-pcard.is-moved .calm-pcard-title,.calm .calm-card.is-moved .calm-dur,.calm .calm-pcard.is-moved .calm-dur{color:var(--color-os-ink-secondary)}.calm .calm-resched{display:flex;align-items:center;gap:6px;min-width:0;margin-bottom:4px;font-size:var(--type-caption);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--color-os-blue-soft-text)}.calm .calm-resched-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.calm .calm-resched-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-x{flex:none;margin-left:auto;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:var(--color-os-blue-soft-bg);color:var(--color-os-blue-soft-text);display:grid;place-items:center}@container calmday (max-width: 130px){.calm .calm-resched-text{display:none}.calm .calm-resched{justify-content:space-between}}.calm .calm-card.is-lifted{border:1.5px dashed var(--calm-dash);background:transparent}.calm .calm-card.is-lifted>*{visibility:hidden}.calm .calm-card.is-picked{box-shadow:0 0 0 2px var(--color-os-ink)}.calm .calm-ghost{position:fixed;left:0;top:0;z-index:70;pointer-events:none;cursor:grabbing;box-shadow:var(--calm-shadow-lift);border-color:var(--calm-status-planned);transform-origin:30% 30%}.calm .calm-ghost .calm-card-title{padding-right:0}.calm.is-dragging{user-select:none;-webkit-user-select:none}.calm.is-dragging,.calm.is-dragging *{cursor:grabbing!important}.calm.is-dragging .calm-add,.calm.is-dragging .calm-more{opacity:0;pointer-events:none}.calm.is-dragging .calm-card:hover .calm-ctl,.calm.is-dragging .calm-card:hover .calm-cb{display:none}.calm.is-dragging .calm-card.is-editable:hover:has(.calm-ctl){padding-bottom:7px}.calm.is-dragging .calm-card.is-editable:hover .calm-dur{display:inline}.calm.is-dragging .calm-card.is-editable:hover .calm-card-sport{display:inline-grid}.calm .calm-dropline{position:absolute;left:-2px;right:-2px;height:2px;margin-top:-1px;border-radius:2px;background:var(--color-os-ink);pointer-events:none;z-index:6}.calm .calm-dropline:before{content:"";position:absolute;left:-3px;top:-2px;width:6px;height:6px;border-radius:50%;background:var(--color-os-ink)}.calm .calm-stack-wrap{padding-bottom:7px}.calm .calm-stack .calm-card-main{grid-template-columns:auto minmax(0,1fr)}.calm .calm-stack{--edge: var(--calm-status-planned);box-shadow:0 3px 0 -1px var(--color-os-surface),0 4px 0 -1px var(--edge)}.calm .calm-stack-wrap.is-deep .calm-stack{box-shadow:0 3px 0 -1px var(--color-os-surface),0 4px 0 -1px var(--edge),0 6px 0 -2px var(--color-os-surface),0 7px 0 -2px var(--edge)}.calm .calm-stack.is-done{--edge: var(--color-os-border);border-color:transparent}.calm .calm-stack.is-poor{--edge: var(--calm-status-poor)}.calm .calm-stack.is-missed{--edge: var(--calm-status-missed)}.calm .calm-stack-icons{grid-row:1 / 3;display:flex;align-items:center}.calm .calm-stack-badge{border:2px solid var(--color-os-surface);box-sizing:border-box}.calm .calm-stack-badge+.calm-stack-badge{margin-left:-8px}.calm .calm-stack-dot{position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--color-os-blue-soft-text)}.calm .calm-collapse{align-self:flex-start;display:inline-flex;align-items:center;gap:2px;padding:0 4px;border:0;background:transparent;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}@container calmday (max-width: 149px){.calm .calm-card{padding:7px 6px}.calm .calm-card-main{grid-template-columns:24px minmax(0,1fr);column-gap:6px;grid-template-rows:minmax(24px,auto) auto}.calm .calm-card-sport,.calm .calm-cb{width:24px!important;height:24px!important}.calm .calm-card-sport,.calm .calm-cb{grid-row:1}.calm .calm-card-sub{grid-column:1 / -1}.calm .calm-card-title{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.calm .calm-stack .calm-card-main{grid-template-columns:1fr}.calm .calm-stack-icons{grid-row:1}.calm .calm-stack .calm-card-title{grid-column:1;grid-row:2}.calm .calm-stack .calm-card-sub{grid-row:3}}.calm .calm-weekdone{min-width:0;padding:4px 0 0 16px;display:flex;flex-direction:column;gap:8px}.calm .calm-weekdone-line{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.calm .calm-weekdone-n{font-size:var(--type-card-title);font-weight:700;line-height:1.2}.calm .calm-weekdone-of,.calm .calm-weekdone-note{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-bar{position:relative;height:4px;border-radius:999px;background:var(--color-os-slate-soft-bg)}.calm .calm-bar-fill{height:100%;border-radius:999px;background:var(--calm-bar-behind)}.calm .calm-bar-fill.is-current,.calm .calm-bar-fill.is-future{background:var(--calm-bar-current)}.calm .calm-bar-fill.is-ok{background:var(--calm-bar-ok)}.calm .calm-bar-tick{position:absolute;top:-2px;width:2px;height:8px;margin-left:-1px;border-radius:2px;background:var(--color-os-ink-muted)}.calm .calm-scrim{position:fixed;inset:0;z-index:100;display:flex;justify-content:flex-end;background:var(--color-os-scrim)}.calm .calm-scrim.is-center{z-index:120;justify-content:center;align-items:center}.calm .calm-drawer{width:560px;max-width:100%;height:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--color-os-surface);border-radius:20px 0 0 20px;box-shadow:var(--color-os-shadow-drawer);animation:calm-slide .22s ease}@media(prefers-reduced-motion:reduce){.calm .calm-drawer{animation:none}}.calm .calm-drawer-head{flex:none;display:flex;align-items:center;gap:12px;padding:24px 24px 18px}.calm .calm-drawer-title{flex:1;min-width:0}.calm .calm-drawer-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:var(--type-card-title);font-weight:700;line-height:1.2}.calm .calm-drawer-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-iconbtn{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-drawer-body{flex:1;min-height:0;overflow-y:auto;padding:4px 24px 24px;display:flex;flex-direction:column;gap:18px}.calm .calm-drawer-foot{flex:none;display:flex;align-items:center;gap:10px;padding:16px 24px;border-top:1px solid var(--color-os-border)}.calm .calm-foot-note{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-seg{display:flex;padding:3px;border-radius:999px;background:var(--color-os-page-bg)}.calm .calm-seg button{height:32px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--color-os-ink-secondary);font-size:var(--type-caption);font-weight:500}.calm .calm-seg button.is-on{background:var(--color-os-surface);color:var(--color-os-ink);font-weight:700;box-shadow:var(--calm-shadow-soft)}.calm .ui-field-label{font-weight:500;letter-spacing:0;text-transform:none;color:var(--color-os-ink-secondary)}.calm .calm-field{display:flex;flex-direction:column;gap:6px;min-width:0}.calm .calm-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.calm .calm-grid2.is-wide-first{grid-template-columns:1.3fr 1fr}.calm.is-phone .calm-grid2:has(.ui-date-field,.ui-time-field){grid-template-columns:1fr}.calm .calm-fieldbox{height:44px;box-sizing:border-box;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--color-os-border);border-radius:14px;background:var(--color-os-surface);font-size:var(--type-body)}.calm .calm-fieldbox-static,.calm .calm-fieldbox.is-strong{font-weight:700}.calm .calm-select select{flex:1;min-width:0;border:0;outline:0;background:transparent;appearance:none;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink)}.calm .calm-select:focus-within{border-color:var(--color-os-ink)}.calm .calm .ui-date-field{width:100%}.calm .calm-vol{display:inline-flex;align-items:center;justify-content:space-between;gap:6px}.calm .calm-fieldbox.calm-vol{display:flex;padding:0 8px;width:100%}.calm .calm-fieldbox.calm-vol:focus-within{border-color:var(--color-os-ink)}.calm .calm-step{flex:none;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:var(--color-os-slate-soft-bg);color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-step:hover{background:var(--calm-status-planned);color:var(--color-os-ink)}.calm .calm-vol-input{width:72px;min-width:0;flex:1;border:0;outline:0;background:transparent;text-align:center;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink)}.calm .calm-vol.is-dim{opacity:.4}.calm .calm-rich{border:1px solid var(--color-os-border);border-radius:12px;background:var(--color-os-surface)}.calm .calm-rich:focus-within{border-color:var(--color-os-ink-muted)}.calm .calm-rich-tools{display:flex;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid var(--color-os-page-bg)}.calm .calm-tool{width:28px;height:28px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-tool:hover{background:var(--color-os-page-bg)}.calm .calm-rich-body{padding:12px 14px;font-size:var(--type-body);line-height:1.45;outline:0;overflow-wrap:anywhere}.calm .calm-rich-body:empty:before{content:attr(data-placeholder);color:var(--color-os-ink-secondary);pointer-events:none}.calm .calm-rich-body ul,.calm .calm-rich-body ol{margin:0 0 0 18px;padding:0}.calm .calm-rich-body a{color:var(--color-os-pink-soft-text)}.calm .calm-html p,.calm .calm-html ul{margin:0 0 10px}.calm .calm-html ul,.calm .calm-html ol{padding-left:18px}.calm .calm-html a{color:var(--color-os-pink-soft-text)}.calm .calm-repeat{display:flex;flex-direction:column;gap:10px}.calm .calm-repeat-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.calm .calm-repeat-title{font-size:var(--type-body);font-weight:700}.calm .calm-repeat-sub{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-repeat-quick{display:flex;gap:2px}.calm .calm-linkbtn{border:0;background:transparent;padding:4px 8px;border-radius:8px;font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-linkbtn:hover{background:var(--color-os-page-bg);color:var(--color-os-ink)}.calm .calm-weekrow{border:1px solid var(--color-os-border);border-radius:14px;background:var(--color-os-surface)}.calm .calm-weekrow-main{display:flex;align-items:center;gap:12px;padding:10px 12px}.calm .calm-weekrow-name{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.calm .calm-weekrow-name.is-off{opacity:.4}.calm .calm-weekrow-wk{font-size:var(--type-body);font-weight:700}.calm .calm-weekrow-date{font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap}.calm .calm-editdot{width:6px;height:6px;border-radius:50%;background:var(--color-os-ink);flex:none}.calm .calm-weekrow-vol .calm-step{width:22px;height:22px}.calm .calm-weekrow-vol .calm-vol-input{width:64px;flex:none;height:28px;border-radius:8px;font-size:var(--type-caption)}.calm .calm-weekrow-vol .calm-vol-input:hover{background:var(--color-os-page-bg)}.calm .calm-weekrow-vol .calm-vol-input:focus{background:var(--color-os-page-bg)}.calm .calm-chev{width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-muted);display:grid;place-items:center}.calm .calm-weekrow-detail{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 12px 12px}.calm .calm-switch{position:relative;flex:none;width:36px;height:20px;padding:0;border:0;border-radius:999px;background:var(--calm-toggle-off);transition:background .15s}.calm .calm-switch.is-on{background:var(--calm-toggle-on)}.calm .calm-switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--color-os-surface);transition:left .15s}.calm .calm-switch.is-on .calm-switch-knob{left:18px}.calm .calm-structure{display:flex;flex-direction:column;gap:16px}.calm .calm-block{display:flex;flex-direction:column;gap:8px}.calm .calm-block-head{display:flex;align-items:center;gap:10px;font-size:var(--type-body);font-weight:700}.calm .calm-stepcard{padding:12px 14px;border-radius:12px;background:var(--color-os-page-bg);font-size:var(--type-body);line-height:1.45}.calm .calm-block.is-main{--calm-accent: color-mix(in srgb, var(--calm-sport-fg) 55%, var(--color-os-surface))}.calm .calm-stepcard.is-accent{border-left:3px solid var(--calm-accent)}.calm .calm-accordion.ui-card{padding:0 24px;margin-bottom:0}.calm .calm-acc-row{border-bottom:1px solid var(--color-os-border)}.calm .calm-acc-row:last-child{border-bottom:0}.calm .calm-acc-head{width:100%;display:flex;align-items:center;gap:10px;padding:16px 0;border:0;background:transparent;color:var(--color-os-ink);text-align:left}.calm .calm-acc-label{flex:1;font-size:var(--type-caption);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.calm .calm-acc-icon{color:var(--color-os-ink-muted)}.calm .calm-acc-body{padding:0 0 18px 28px;font-size:var(--type-body);line-height:1.5}.calm .calm-acc-body p{margin:0 0 10px}.calm .calm-acc-body p:last-child{margin-bottom:0}.calm .calm-btn-danger{height:44px;padding:0 20px;border:1px solid var(--calm-danger-line);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-danger-text);font-size:var(--type-body);font-weight:700}.calm .calm-btn-danger:hover{background:var(--calm-danger-soft)}.calm .calm-toast,.calm .calm-selbar{position:fixed;left:50%;bottom:28px;transform:translate(-50%);display:flex;align-items:center;border-radius:999px;background:var(--color-os-ink);color:var(--color-os-surface);box-shadow:var(--calm-shadow-lift);font-size:var(--type-body)}.calm .calm-toast{z-index:110;gap:14px;padding:10px 10px 10px 20px}.calm .calm-toast-undo{height:32px;padding:0 14px;border:0;border-radius:999px;background:color-mix(in srgb,var(--color-os-surface) 18%,transparent);color:inherit;font-size:var(--type-caption);font-weight:700}.calm .calm-toast-x,.calm .calm-selbar-x{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:inherit;display:grid;place-items:center}.calm .calm-selbar{z-index:80;gap:6px;padding:8px 10px 8px 20px}.calm .calm-selbar-count{font-weight:700;margin-right:10px}.calm .calm-selbar-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:inherit;font-size:var(--type-caption);font-weight:700}.calm .calm-selbar-btn:hover{background:color-mix(in srgb,var(--color-os-surface) 14%,transparent)}.calm .calm-selbar-btn.is-danger{background:var(--color-os-danger-text);color:var(--color-os-surface)}.calm .calm-dialog{width:420px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:28px;border-radius:20px;background:var(--color-os-surface);box-shadow:var(--calm-shadow-lift)}.calm .calm-dialog-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--calm-danger-soft);color:var(--color-os-danger-text)}.calm .calm-dialog-title{margin-top:16px;font-size:var(--type-card-title);font-weight:700}.calm .calm-dialog-body{margin-top:6px;font-size:var(--type-body);line-height:1.5;color:var(--color-os-ink-secondary)}.calm .calm-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.calm .calm-btn-danger-solid{height:44px;padding:0 22px;border:0;border-radius:999px;background:var(--color-os-danger-text);color:var(--color-os-surface);font-size:var(--type-body);font-weight:700}.calm .calm-frame{container:calmpage / inline-size}.calm .calm-tabs-wrap{position:relative}.calm .calm-pop-more{top:44px;width:200px;padding:6px}@container calmpage (max-width: 1499px){.calm .calm-titlerow{flex-wrap:wrap;row-gap:14px}.calm .calm-title-main{flex:1 1 auto}.calm .calm-shape{order:2;flex:1 1 280px;max-width:452px;margin:0}.calm .calm-title-actions{order:3;margin-left:auto}}.calm.is-medium .calm-body{padding:20px 16px}.calm.is-medium .calm-gridcard.ui-card{padding:0 12px 12px}.calm.is-medium .calm-cols{grid-template-columns:112px repeat(7,minmax(0,1fr));column-gap:8px}.calm.is-medium .calm-dayhead-done{display:none}.calm.is-medium .calm-week{grid-template-rows:auto 1fr;min-height:0}.calm.is-medium .calm-weeklabel{grid-column:1;grid-row:1}.calm.is-medium .calm-day{grid-row:1 / span 2}.calm.is-medium .calm-weekdone{grid-column:1;grid-row:2;padding:6px 8px 0;gap:6px}.calm.is-medium .calm-week{min-height:118px}.calm.is-medium .calm-card-sub{visibility:hidden}.calm.is-medium .calm-card:is(:hover,:focus-within,.is-tapped):not(.is-lifted) .calm-card-sub{visibility:visible}.calm.is-medium .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted) .calm-ctl{display:none}.calm.is-medium .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted):has(.calm-ctl){padding-bottom:7px}.calm.is-medium .calm-card.is-editable:is(:hover,:focus-within,.is-tapped):not(.is-lifted) .calm-adj .calm-dur{display:inline}@container calmday (max-width: 100px){.calm .calm-card-main{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;row-gap:3px}.calm .calm-card-sport,.calm .calm-cb{grid-column:1;grid-row:1;justify-self:start}.calm .calm-card-title{grid-column:1;grid-row:2}.calm .calm-card-sub{grid-column:1;grid-row:3}.calm .calm-stack .calm-card-main{grid-template-columns:minmax(0,1fr)}}.calm.is-phone{--calm-band-h: 105px;padding-bottom:64px}.calm .calm-band-phone .calm-topbar{height:60px;padding:0 4px;gap:6px}.calm .calm-band-phone .calm-who{margin-left:6px;flex:1}.calm .calm-band-phone .calm-who-name{font-size:var(--type-card-title);overflow:hidden;text-overflow:ellipsis}.calm .calm-band-phone .calm-iconbtn-flat{width:44px;height:44px;flex:none}.calm .calm-band-phone .calm-grow{display:none}.calm .calm-phone-searchrow{padding:0 12px 10px}.calm .calm-phone-searchrow .calm-search{width:100%}.calm .calm-phone-searchrow .calm-search-input{width:100%;border-radius:999px;height:44px}.calm .calm-phone-searchrow .calm-kbd{display:none}.calm .calm-phone-searchrow .calm-pop-search{left:0;right:0;top:52px;width:auto}.calm.is-phone .calm-tabs{overflow-x:auto;padding:0 8px;scrollbar-width:none}.calm.is-phone .calm-tabs::-webkit-scrollbar{display:none}.calm.is-phone .calm-tab{flex:none}.calm .calm-pop-phonemenu{top:50px;right:4px;width:260px;padding:8px}.calm .calm-pop-phonemenu .calm-toolitem{min-height:48px;font-size:var(--type-body)}.calm .calm-pop-phone{top:64px;left:12px;right:12px;width:auto}.calm.is-phone .calm-toolitem{min-height:44px}.calm .calm-pbody{padding:16px 16px 24px;display:flex;flex-direction:column;gap:16px;min-width:0}.calm .calm-ptitle{position:relative}.calm .calm-ptitle-btn{width:100%;min-height:44px;display:flex;align-items:center;gap:8px;padding:0;border:0;background:transparent;color:inherit;text-align:left}.calm .calm-ptitle-name{font-size:var(--type-card-title);font-weight:700;line-height:1.2;min-width:0}.calm .calm-ptitle-sub{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ptitle .calm-pop-phone{top:100%;left:0;right:0;margin-top:6px}.calm .calm-shape.calm-scrubber{order:0;flex:none;min-width:0;width:auto;margin:0 2px}.calm .calm-scrubber .calm-shape-window{background:var(--calm-status-planned)}.calm .calm-pweek{background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:20px;box-shadow:var(--color-os-shadow-card);padding:14px 8px 16px}.calm .calm-pweek-nav{display:flex;align-items:center;gap:4px}.calm .calm-pnav{flex:none;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-pnav:disabled{opacity:.35;cursor:default}.calm .calm-pweek-title{flex:1;min-width:0;text-align:center}.calm .calm-pweek-label{font-size:var(--type-card-title);font-weight:700}.calm .calm-pweek-sub{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-pweek-sum{padding:8px 12px 0}.calm .calm-pweek-line{display:flex;align-items:baseline;gap:6px;margin-bottom:8px;flex-wrap:wrap}.calm .calm-pweek-done{font-size:var(--type-data);font-weight:900}.calm .calm-pweek-of,.calm .calm-pweek-note{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-pweek-note{margin-left:auto}.calm .calm-pday{display:flex;flex-direction:column;gap:8px;min-width:0}.calm .calm-pday-head{position:sticky;top:var(--calm-band-h);z-index:var(--calm-z-dayhead);display:flex;align-items:center;gap:8px;padding:8px 0;background:var(--color-os-page-bg);font-size:var(--type-caption)}.calm .calm-pday-name{font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-pday-num{color:var(--color-os-ink-secondary)}.calm .calm-pday-num.is-today{font-weight:700;color:var(--chip-pink-text);background:var(--color-os-pink-soft-bg);border-radius:999px;padding:1px 9px}.calm .calm-pday-total{margin-left:auto;color:var(--color-os-ink-secondary)}.calm .calm-pcard{width:100%;box-sizing:border-box;min-width:0;min-height:60px;display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid transparent;border-radius:14px;background:var(--color-os-surface);color:var(--color-os-ink);text-align:left;cursor:pointer}.calm .calm-pcard.is-planned{border-color:var(--calm-status-planned)}.calm .calm-pcard.is-poor{border-color:var(--calm-status-poor)}.calm .calm-pcard.is-missed{border-color:var(--calm-status-missed)}.calm .calm-pcard.is-resched{border-style:dashed;border-color:var(--calm-status-resched)}.calm .calm-pcard.is-moved{background:var(--color-os-page-bg);border:1.5px dashed var(--calm-dash);box-shadow:none;cursor:default}.calm .calm-missednote{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:14px;background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-missednote-title{font-size:var(--type-body);font-weight:700}.calm .calm-missednote-body{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-pink-soft-text)}.calm .calm-pcard.is-selected{border-color:var(--color-os-ink);border-style:solid}.calm .calm-pcard-text{flex:1;min-width:0;display:flex;flex-direction:column}.calm .calm-pcard-title{font-size:var(--type-body);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-pcard-sub{display:flex;align-items:center;gap:6px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-pcard-chev{flex:none;color:var(--color-os-ink-muted)}.calm .calm-pcard .calm-resched{margin-bottom:2px}.calm .calm-pcard .calm-x{position:relative;width:28px;height:28px}.calm .calm-pcard .calm-x:after{content:"";position:absolute;inset:-8px}.calm .calm-pcb{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--calm-status-planned);background:var(--color-os-surface);color:var(--color-os-surface)}.calm .calm-pcb.is-on{background:var(--color-os-ink);border-color:var(--color-os-ink)}.calm .calm-pstack-wrap{padding-bottom:9px}.calm .calm-pstack .calm-stack-icons{grid-row:auto}.calm .calm-pstack{box-shadow:0 4px 0 -1px var(--color-os-surface),0 5px 0 -1px var(--edge)}.calm .calm-pstack-wrap.is-deep .calm-pstack{box-shadow:0 4px 0 -1px var(--color-os-surface),0 5px 0 -1px var(--edge),0 8px 0 -2px var(--color-os-surface),0 9px 0 -2px var(--edge)}.calm .calm-pstack .calm-stack-badge+.calm-stack-badge{margin-left:-10px}.calm .calm-pstack .calm-stack-dot{top:8px;right:40px}.calm .calm-pcollapse{align-self:flex-start;min-height:44px;display:inline-flex;align-items:center;gap:2px;padding:0 8px;border:0;background:transparent;color:var(--color-os-ink-secondary);font-size:var(--type-caption);font-weight:500}.calm .calm-padd{min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed var(--calm-dash);border-radius:14px;background:transparent;color:var(--color-os-ink-secondary);font-size:var(--type-body);font-weight:500}.calm .calm-bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:60;height:64px;display:flex;background:var(--color-os-sidebar-bg)}.calm .calm-bn{flex:1;min-width:0;white-space:nowrap;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:var(--color-os-sidebar-text-muted);font-size:var(--type-caption)}.calm .calm-bn.is-active{color:var(--color-os-on-color);font-weight:700}.calm .calm-bn-icon{width:44px;height:26px;display:grid;place-items:center;border-radius:999px}.calm .calm-bn.is-active .calm-bn-icon{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-grab{display:none}.calm.is-phone .calm-scrim{align-items:flex-end;justify-content:center}.calm.is-phone .calm-drawer{width:100%;height:90%;border-radius:20px 20px 0 0;animation:calm-sheet .24s ease}.calm.is-phone .calm-grab{display:block;flex:none;width:36px;height:4px;margin:10px auto 0;border-radius:999px;background:var(--calm-dash)}.calm.is-phone .calm-drawer-head{flex-wrap:wrap;padding:8px 8px 14px 20px;gap:8px}.calm.is-phone .calm-drawer-head .calm-seg{order:5;flex:1 1 100%;margin-right:12px}.calm.is-phone .calm-seg button{flex:1;height:44px}.calm.is-phone .calm-drawer-body{padding:0 20px 20px}.calm.is-phone .calm-drawer-foot{padding:12px 20px 20px}.calm.is-phone .calm-drawer-foot .ui-btn,.calm.is-phone .calm-btn-danger{min-height:48px;justify-content:center}.calm.is-phone .calm-drawer-foot.is-session .ui-btn-secondary{display:none}.calm.is-phone .calm-drawer-foot.is-session .ui-btn-primary{flex:1}.calm.is-phone .calm-iconbtn{width:44px;height:44px}.calm.is-phone .calm-fieldbox{height:48px}.calm.is-phone .calm-select select{align-self:stretch}.calm.is-phone .ui-date-field .ui-text-field{min-height:48px}.calm.is-phone .calm-step{position:relative;width:32px;height:32px}.calm.is-phone .calm-step:after,.calm.is-phone .calm-chev:after{content:"";position:absolute;inset:-6px}.calm.is-phone .calm-chev{position:relative;width:44px;height:44px}.calm.is-phone .calm-tool{width:44px;height:44px}.calm.is-phone .calm-linkbtn{min-height:44px;padding:0 12px}.calm.is-phone .calm-switch{position:relative}.calm.is-phone .calm-switch:after{content:"";position:absolute;inset:-12px -4px}.calm.is-phone .calm-acc-head,.calm.is-phone .calm-menuitem{min-height:44px}.calm.is-phone .calm-weekrow-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;row-gap:8px}.calm.is-phone .calm-weekrow-vol{grid-column:1 / -1;grid-row:2;justify-content:space-between}.calm.is-phone .calm-weekrow-vol .calm-step{width:32px;height:32px}.calm.is-phone .calm-weekrow-vol .calm-vol-input{flex:1;height:44px;font-size:var(--type-body)}.calm.is-phone .calm-weekrow-detail{grid-template-columns:1fr}.calm.is-phone .calm-scrim.is-center .calm-dialog{width:100%;max-width:none;border-radius:20px 20px 0 0;padding:12px 20px calc(28px + env(safe-area-inset-bottom,0px))}.calm.is-phone .calm-scrim.is-center .calm-dialog-icon{display:none}.calm .calm-movedialog{max-height:80vh;display:flex;flex-direction:column}.calm .calm-movedialog .calm-dialog-title{margin-top:0}.calm .calm-addsheet{max-height:85vh;display:flex;flex-direction:column}.calm .calm-addsheet-head{display:flex;align-items:center;gap:4px;margin-top:4px}.calm .calm-addsheet-title{flex:1;min-width:0;padding:8px 4px;font-size:var(--type-card-title);font-weight:700}.calm .calm-addsheet-icon{width:44px;height:44px;flex:none;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink)}.calm .calm-addsheet-icon:hover{background:var(--color-os-page-bg)}.calm .calm-addsheet-search{height:44px;margin:4px 0 8px}.calm .calm-addsheet-search input{font-size:var(--type-body)}.calm .calm-addsheet-list{overflow-y:auto;min-height:0}.calm .calm-addsheet-row{min-height:52px;font-size:var(--type-body);gap:12px;padding:8px 6px}.calm .calm-daylist{margin-top:12px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;min-height:0}.calm .calm-dayopt{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--color-os-ink);font-size:var(--type-body);font-weight:500;text-align:left}.calm .calm-dayopt:hover{background:var(--color-os-page-bg)}.calm .calm-dayopt-note{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm.is-phone .calm-toast{bottom:80px;left:12px;right:12px;transform:none;justify-content:space-between}.calm.is-phone .calm-selbar{bottom:76px;left:12px;right:12px;transform:none;justify-content:space-between;border-radius:20px;padding:6px 6px 6px 16px}.calm.is-phone .calm-selbar-count{margin-right:auto}.calm.is-phone .calm-selbar-btn{min-height:44px;min-width:44px;justify-content:center}.calm.is-phone .calm-selbar-btn:not(.is-danger) .calm-selbar-label{display:none}.calm.is-phone .calm-selbar-x,.calm.is-phone .calm-toast-x,.calm.is-phone .calm-toast-undo{min-width:44px;min-height:44px}.calm .calm-load{display:flex;align-items:flex-end;gap:1px;height:var(--load-h, 44px);overflow:hidden;border-bottom:1px solid var(--color-os-border)}.calm .calm-load-bar{display:block;min-width:var(--load-min, 2px);border-radius:2px 2px 0 0;background:var(--calm-load-edge);transform-origin:bottom}.calm .calm-load-bar.is-main{background:var(--calm-load-main)}.calm .calm-load-bar.is-rest{background:var(--calm-load-rest)}.calm .calm-load.is-animated .calm-load-bar{animation:calm-grow .55s ease-out both}@media(prefers-reduced-motion:reduce){.calm .calm-load.is-animated .calm-load-bar{animation:none}}.calm .calm-load-mini{width:64px;flex:none}.calm .calm-tab-count{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-ellipsis{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-layout{display:flex;align-items:flex-start;min-height:100vh}.calm .calm-layout>.calm-frame{flex:1 1 0;min-width:0}.calm .calm-who-name,.calm .calm-libtitle{margin:0}.calm .calm-libhead .calm-topbar{gap:12px}.calm .calm-libbody{padding-top:16px;padding-bottom:32px;gap:0}.calm .calm-libtools{display:flex;align-items:center;gap:10px;margin-bottom:16px}.calm .calm-fieldpill{height:40px;box-sizing:border-box;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:1px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-body);white-space:nowrap}.calm button.calm-fieldpill:hover{border-color:var(--color-os-ink-muted)}.calm .calm-fieldpill-label{color:var(--color-os-ink-muted)}.calm .calm-fieldpill-value{font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-libsearch{width:300px;cursor:text}.calm .calm-libsearch:focus-within{border-color:var(--color-os-ink)}.calm .calm-libsearch input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:var(--type-body);color:var(--color-os-ink)}.calm .calm-libsearch input::placeholder{color:var(--color-os-ink-secondary)}.calm .calm-seg.is-icons button{width:34px;padding:0;display:grid;place-items:center}.calm .calm-menu-pill{right:0;top:46px;width:220px}.calm .calm-menu-pill .calm-menu-empty{padding:12px}.calm .calm-libgroup{margin-bottom:22px}.calm .calm-libgroup-h{display:flex;align-items:baseline;gap:8px;margin:0 2px 10px;font-size:var(--type-body);font-weight:700}.calm .calm-libgroup-h span{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-libgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.calm .calm-liblist{display:flex;flex-direction:column;gap:8px}.calm .calm-libempty{padding:16px 12px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);text-align:center}.calm .calm-libempty.is-page{padding:56px 0;font-size:var(--type-body)}.calm .calm-libempty-title{font-weight:700;color:var(--color-os-ink);margin-bottom:4px}.calm .calm-scard{position:relative;box-sizing:border-box;display:flex;flex-direction:column;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;transition:box-shadow .15s,border-color .15s,transform .15s}.calm .calm-scard:hover,.calm .calm-scard:focus-within{border-color:var(--calm-dash);box-shadow:var(--calm-shadow-pop)}.calm .calm-scard:hover{transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.calm .calm-scard{transition:none}.calm .calm-scard:hover{transform:none}}.calm .calm-scard.has-menu{z-index:var(--calm-z-menu)}.calm .calm-scard-open{flex:1;display:flex;flex-direction:column;justify-content:flex-start;width:100%;box-sizing:border-box;padding:12px 12px 10px;border:0;border-radius:14px;background:transparent;color:inherit;text-align:left;font:inherit}.calm .calm-scard-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}.calm .calm-scard-text{flex:1;min-width:0;display:flex;flex-direction:column}.calm .calm-scard-name{font-size:var(--type-body);font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-scard-meta{margin-top:1px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-scard-dur{flex:none;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary);transition:opacity .15s}.calm .calm-scard-graph{margin-top:auto;width:100%}.calm .calm-scard-more{position:absolute;top:10px;right:8px;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center;opacity:0;transition:opacity .15s}.calm .calm-scard:is(:hover,:focus-within) .calm-scard-more,.calm .calm-scard-more.is-open{opacity:1}.calm .calm-scard:is(:hover,:focus-within) .calm-scard-dur{opacity:0}.calm .calm-scard-more:hover,.calm .calm-scard-more.is-open{background:var(--color-os-slate-soft-bg);color:var(--color-os-ink)}.calm .calm-scard-open:focus-visible{outline-offset:-2px}.calm .calm-menu-scard{right:8px;width:200px}.calm .calm-menu-scard.is-down{top:42px}.calm .calm-menu-scard.is-up{bottom:42px}.calm .calm-menu-scard .calm-menuitem{font-size:var(--type-body);padding:9px 10px}.calm .calm-scard.is-list{display:block}.calm .calm-scard.is-list .calm-scard-top{margin:0}.calm .calm-scard.is-list .calm-scard-open{display:flex;align-items:center;gap:14px;padding:9px 52px 9px 12px}.calm .calm-scard.is-list .calm-scard-top{display:contents}.calm .calm-scard.is-list .calm-scard-text{flex:1 1 160px;flex-direction:row;align-items:center;gap:14px}.calm .calm-scard.is-list .calm-scard-name{flex:1 1 0;min-width:0}.calm .calm-scard.is-list .calm-scard-meta{flex:0 0 150px;margin:0}.calm .calm-scard.is-list .calm-scard-dur{width:64px;text-align:right;color:var(--color-os-ink-secondary)}.calm .calm-scard.is-list .calm-scard-graph{margin:0;flex:0 1 380px;width:380px;min-width:120px}.calm .calm-scard.is-list .calm-scard-more{top:50%;margin-top:-14px;right:12px}.calm .calm-scard.is-list .calm-scard-dur{opacity:1}.calm .calm-scard.is-list:is(:hover,:focus-within) .calm-scard-dur{opacity:0}.calm .calm-drawer.is-library{width:540px}.calm .calm-loadbox{background:var(--color-os-page-bg);border-radius:14px;padding:16px 16px 12px}.calm .calm-loadbox .calm-load{border-bottom-color:var(--calm-dash)}.calm .calm-loadbox-axis{display:flex;justify-content:space-between;margin-top:6px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-drawer-foot.is-library{gap:8px}.calm .calm-btn-text-danger{height:44px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--color-os-danger-text);font-size:var(--type-body);font-weight:700}.calm .calm-btn-text-danger:hover{background:var(--calm-danger-soft)}.calm .calm-drawer-foot.is-addplan{flex-direction:column;align-items:stretch;gap:12px;padding:18px 24px 20px;background:var(--color-os-page-bg)}.calm .calm-addplan-title{font-size:var(--type-body);font-weight:700}.calm .calm-drawer-foot.is-addplan .calm-foot-note{line-height:1.45}.calm .calm-addplan-actions{display:flex;justify-content:flex-end;gap:8px}.calm .ui-btn:disabled{opacity:.4;cursor:default}.calm .calm-libbtn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px 0 12px;border:0;border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-body);font-weight:700;box-shadow:var(--calm-shadow-soft);white-space:nowrap;flex:none}.calm .calm-libbtn .material-symbols-rounded{color:var(--color-os-ink-secondary)}.calm .calm-libbtn.is-on{background:var(--color-os-ink);color:var(--color-os-surface)}.calm .calm-libbtn.is-on .material-symbols-rounded{color:var(--color-os-surface)}.calm.is-lib-dock .calm-shape{display:none}@container calmpage (max-width: 820px){.calm .calm-libbtn-label{display:none}.calm .calm-title-actions .calm-libbtn{width:40px;padding:0;justify-content:center}}.calm .calm-libpanel{box-sizing:border-box;width:380px;flex:none;display:flex;flex-direction:column;min-height:0;background:var(--color-os-surface);border-left:1px solid var(--color-os-border)}.calm .calm-libpanel.is-dock{position:sticky;top:0;align-self:flex-start;height:100vh;z-index:var(--calm-z-band)}.calm .calm-libpanel.is-overlay{position:fixed;top:0;right:0;bottom:0;z-index:var(--calm-z-panel);box-shadow:var(--color-os-shadow-drawer)}.calm .calm-libpanel.is-overlay{transition:opacity .15s,transform .15s}.calm.is-dragging .calm-libpanel.is-overlay{opacity:0;transform:translate(24px);pointer-events:none}@media(prefers-reduced-motion:reduce){.calm .calm-libpanel.is-overlay{transition:none}}.calm .calm-libpanel.is-sheet{width:auto;flex:1;border-left:0}.calm .calm-libpanel-head{flex:none;display:flex;align-items:center;gap:8px;padding:20px 14px 10px 20px}.calm .calm-libpanel-title{flex:1;min-width:0}.calm .calm-libpanel-h{font-size:var(--type-card-title);font-weight:700;line-height:1.2}.calm .calm-libpanel-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-libpanel-x{width:36px;height:36px}.calm .calm-libday{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 20px 8px;padding:4px 4px 4px 14px;border-radius:999px;background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text);font-size:var(--type-caption);font-weight:700}.calm .calm-libday button{width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;display:grid;place-items:center}.calm .calm-libpanel-search{flex:none;padding:0 20px 6px}.calm .calm-libpanel-search .calm-pop-search-field{margin:0;background:var(--color-os-page-bg)}.calm .calm-libtabs{flex:none;padding:0 10px;gap:0;border-bottom:1px solid var(--color-os-border);overflow-x:auto;scrollbar-width:none}.calm .calm-libtabs::-webkit-scrollbar{display:none}.calm .calm-libtabs .calm-tab{padding:0 10px;gap:5px;flex:none}.calm .calm-libpanel-list{flex:1;min-height:0;overflow-y:auto;box-sizing:border-box;padding:14px 16px;display:flex;flex-direction:column;gap:8px;background:var(--color-os-page-bg)}.calm .calm-libpanel-foot{flex:none;display:flex;align-items:center;gap:10px;padding:14px 20px 16px;border-top:1px solid var(--color-os-border);font-size:var(--type-caption);line-height:1.4;color:var(--color-os-ink-secondary)}.calm .calm-libpanel-hint{flex:1}.calm .calm-libpanel-full{flex:none}.calm .calm-librow{display:flex;align-items:center;flex:none;box-sizing:border-box;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;transition:box-shadow .15s,border-color .15s}.calm .calm-librow:hover,.calm .calm-librow:focus-within{border-color:var(--calm-dash);box-shadow:var(--calm-shadow-pop)}.calm .calm-librow.is-held{border-color:var(--color-os-ink)}.calm .calm-librow-main{flex:1;min-width:0;min-height:44px;display:flex;align-items:center;gap:10px;padding:9px 4px 9px 8px;border:0;border-radius:14px;background:transparent;color:inherit;text-align:left;font:inherit;cursor:grab;touch-action:pan-y}.calm .calm-librow-grip{color:var(--calm-dash)}.calm .calm-librow-text{flex:1;min-width:0;display:flex;flex-direction:column}.calm .calm-librow-name{font-size:var(--type-caption);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-librow-meta{margin-top:1px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-rowplus{flex:none;width:28px;height:28px;margin:0 8px 0 2px;padding:0;border:0;border-radius:50%;background:var(--color-os-slate-soft-bg);color:var(--color-os-ink-secondary);display:grid;place-items:center;opacity:0;transition:opacity .15s}.calm .calm-librow:is(:hover,:focus-within) .calm-rowplus{opacity:1}.calm .calm-rowplus:hover{background:var(--calm-status-planned);color:var(--color-os-ink)}@media(hover:none){.calm .calm-rowplus{opacity:1}}.calm .calm-librowwrap{position:relative;flex:none}.calm .calm-librowwrap.is-picking .calm-rowplus,.calm .calm-rowplus.is-open{opacity:1}.calm .calm-libpick{position:absolute;z-index:50;right:8px;top:calc(100% + 4px);width:210px;box-sizing:border-box;padding:6px;background:var(--color-os-surface);color:var(--color-os-ink);border:1px solid var(--color-os-border);border-radius:14px;box-shadow:var(--calm-shadow-pop)}.calm .calm-libpick.is-up{top:auto;bottom:calc(100% + 4px)}.calm .calm-libpick .calm-menu-title{padding:4px 12px 6px;color:var(--color-os-ink-secondary)}.calm .calm-libpick .calm-menuitem{font-size:var(--type-body);padding:8px 12px}.calm .calm-day.is-dropzone{cursor:copy}.calm .calm-day.is-dropzone:before{border:1.5px dashed var(--calm-drop-line);background:var(--calm-drop-bg)}.calm .calm-day.is-dropzone.is-landing:before{background:var(--calm-drop-hot);border-style:solid}.calm .calm-dropzone-label{margin-top:auto;align-self:center;padding:6px 0 2px;font-size:var(--type-caption);font-weight:700;color:var(--color-os-pink-soft-text)}.calm .calm-day.is-dropzone .calm-add-wrap{display:none}.calm .calm-padd-row{display:flex;flex-direction:column;gap:8px}.calm .calm-libhead.calm-band-phone .calm-topbar{padding:0 16px;gap:8px}.calm .calm-libhead.calm-band-phone .calm-search{flex:1;min-width:0}.calm .calm-libhead.calm-band-phone .calm-search-input{width:100%;height:44px}.calm .calm-libhead.calm-band-phone .calm-kbd{display:none}.calm .calm-libhead.calm-band-phone .calm-pop-search{left:0;right:0;top:52px;width:auto}.calm .calm-libtitlerow{display:flex;align-items:center;gap:0;padding:0 12px 0 20px}.calm .calm-libtitle{flex:1;font-size:var(--type-card-title);font-weight:700}.calm .calm-libtitlerow .calm-seg{margin-left:4px}.calm .calm-libphone-search{padding:0 16px 8px}.calm .calm-libphone-search .calm-libsearch{width:100%;height:44px}.calm .calm-libtabs-page{overflow-x:auto;scrollbar-width:none}.calm .calm-libtabs-page::-webkit-scrollbar{display:none}.calm .calm-libtabs-page .calm-tab{flex:none}.calm.is-phone .calm-libbody{padding:14px 16px 96px}.calm.is-phone .calm-libgrid{grid-template-columns:1fr 1fr;gap:10px}.calm.is-phone .calm-scard-open{min-height:44px}.calm.is-phone .calm-scard.is-grid .calm-scard-open{padding:11px 11px 10px}.calm.is-phone .calm-scard.is-grid .calm-scard-top{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;column-gap:8px;row-gap:6px}.calm.is-phone .calm-scard.is-grid .calm-scard-text{display:contents}.calm.is-phone .calm-scard.is-grid .calm-scard-name{grid-column:2;grid-row:1;padding-right:28px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.calm.is-phone .calm-scard.is-grid .calm-scard-meta{grid-column:1 / -1;grid-row:2;margin:0}.calm.is-phone .calm-scard-more{opacity:1;width:44px;height:44px;top:0;right:0}.calm.is-phone .calm-scard.is-list .calm-scard-open{padding:10px 52px 10px 10px;gap:10px}.calm.is-phone .calm-scard.is-list .calm-scard-text{flex-direction:column;align-items:stretch;gap:0}.calm.is-phone .calm-scard.is-list .calm-scard-meta{flex:none}.calm.is-phone .calm-scard.is-list .calm-scard-graph{flex:none;width:96px;min-width:0}.calm.is-phone .calm-scard.is-list .calm-scard-more{top:50%;margin-top:-22px;right:4px}.calm.is-phone .calm-scard:hover{transform:none}.calm.is-phone .calm-scard.is-list .calm-scard-dur,.calm.is-phone .calm-scard.is-grid .calm-scard-top .calm-scard-dur{display:none}.calm.is-phone .calm-menu-scard{right:4px}.calm.is-phone .calm-menu-scard.is-down{top:46px}.calm.is-phone .calm-menu-scard.is-up{bottom:46px}.calm.is-phone .calm-menu-scard .calm-menuitem{min-height:44px}.calm.is-phone .calm-menu-pill{top:48px}.calm.is-phone .calm-menu-pill .calm-menuitem{min-height:44px}.calm.is-phone .calm-fieldpill{height:44px}.calm.is-phone .calm-shape-bar:after{display:none}.calm .calm-libtitlerow .calm-seg button{width:44px;height:44px}.calm .calm-drawer-foot.is-addplan .ui-date-field .ui-text-field{width:100%;box-sizing:border-box}.calm .calm-fab{position:fixed;right:16px;bottom:84px;z-index:70;height:52px;padding:0 22px 0 16px;border:0;border-radius:999px;background:var(--color-os-pink);color:var(--color-os-on-color);font-size:var(--type-body);font-weight:700;display:inline-flex;align-items:center;gap:6px;box-shadow:var(--calm-shadow-lift)}.calm.is-phone .calm-libpanel-x{width:44px;height:44px}.calm.is-phone .calm-libday button{width:36px;height:36px}.calm.is-phone .calm-libpanel-search .calm-pop-search-field{height:44px}.calm.is-phone .calm-libtabs .calm-tab{min-height:44px}.calm.is-phone .calm-librow-main{min-height:56px}.calm.is-phone .calm-rowplus{width:44px;height:44px;margin-right:4px}.calm.is-phone .calm-libpanel-foot{padding-bottom:20px}.calm.is-phone .calm-drawer-foot.is-library{flex-wrap:wrap}.calm.is-phone .calm-drawer-foot.is-library .calm-grow{display:none}.calm.is-phone .calm-drawer-foot.is-library .ui-btn-primary{order:-1;flex:1 1 100%;justify-content:center}.calm.is-phone .calm-drawer-foot.is-library .ui-btn-secondary,.calm.is-phone .calm-btn-text-danger{flex:1;justify-content:center;min-height:48px}.calm.is-phone .calm-drawer-foot.is-addplan .ui-btn{min-height:48px;justify-content:center;flex:1}.calm.is-phone .calm-drawer-foot.is-addplan .calm-grid2{grid-template-columns:1fr}.calm.is-phone .calm-padd-row{flex-direction:row}.calm.is-phone .calm-padd-row .calm-padd{flex:1}.calm{--calm-tl-line: color-mix(in srgb, var(--color-os-ink) 9%, var(--color-os-page-bg));--calm-tl-line-dim: color-mix(in srgb, var(--color-os-ink) 5%, var(--color-os-page-bg));--calm-tl-open: color-mix(in srgb, var(--color-os-pink) 40%, var(--color-os-page-bg));--calm-tl-gap-line: color-mix(in srgb, var(--color-os-pink) 38%, var(--color-os-surface));--calm-tl-gap-fill: color-mix(in srgb, var(--color-os-pink) 4%, var(--color-os-surface))}.calm .calm-tone-pink{--calm-sport-bg: var(--color-os-pink-soft-bg);--calm-sport-fg: var(--chip-pink-text)}.calm .calm-tone-blue{--calm-sport-bg: var(--color-os-blue-soft-bg);--calm-sport-fg: var(--color-os-blue-soft-text)}.calm .calm-tone-green{--calm-sport-bg: var(--color-os-green-soft-bg);--calm-sport-fg: var(--chip-green-text)}.calm .calm-tone-slate{--calm-sport-bg: var(--color-os-slate-soft-bg);--calm-sport-fg: var(--color-os-slate-soft-text)}.calm .calm-tone-amber{--calm-sport-bg: var(--color-os-amber-soft-bg);--calm-sport-fg: var(--color-os-amber-soft-text)}.calm .calm-tl-body{box-sizing:border-box;gap:24px}.calm .calm-tl-body>*{width:100%;max-width:1080px;margin-inline:auto}.calm .calm-tl-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.calm .calm-tl-year{display:flex;align-items:center;gap:12px;flex:1 1 auto;min-width:0}.calm .calm-tl-yeartext{display:flex;flex-direction:column;gap:3px;min-width:0}.calm .calm-tl-yearnum{margin:0;font-size:var(--type-heading);font-weight:700;line-height:1.15}.calm .calm-tl-headline{font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-tl-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.calm .calm-tl{--tl-x: 18px;display:flex;flex-direction:column}.calm .calm-tl-row{display:grid;grid-template-columns:76px 36px minmax(0,1fr)}.calm .calm-tl-row:has(.calm-tl-menu){position:relative;z-index:5}.calm .calm-tl-date{padding:4px 8px 0 0;text-align:right;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-tl-date.is-node{padding-top:6px}.calm .calm-tl-date.is-block{padding-top:22px;font-weight:700;color:var(--color-os-ink)}.calm .calm-tl-date.is-dim{opacity:.6}.calm .calm-tl-date.is-block.is-dim{opacity:.7}.calm .calm-tl-spine{position:relative}.calm .calm-tl-line{position:absolute;left:calc(var(--tl-x) - 1px);top:0;bottom:0;width:2px;background:var(--calm-tl-line)}.calm .calm-tl-line.is-dim{background:var(--calm-tl-line-dim)}.calm .calm-tl-line.is-dashed{background:repeating-linear-gradient(to bottom,var(--calm-tl-open) 0 5px,transparent 5px 10px)}.calm .calm-tl-content{min-width:0;padding-bottom:10px}.calm .calm-tl-content.is-block{padding-bottom:12px}.calm .calm-tl-content.is-gap{padding:6px 0 12px}.calm .calm-tl-content.is-milestone{padding-bottom:8px}.calm .calm-tl-content.is-today{padding-bottom:6px}.calm .calm-tl-content.is-earlier{padding-bottom:12px}.calm .calm-tl-dot{position:absolute;left:var(--tl-x);transform:translate(-50%);box-sizing:border-box;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 4px var(--color-os-page-bg)}.calm .calm-tl-dot.is-block{top:24px;width:14px;height:14px;background:color-mix(in srgb,var(--dot) 75%,var(--color-os-page-bg))}.calm .calm-tl-dot.is-block.is-faded{background:color-mix(in srgb,var(--dot) 50%,var(--color-os-page-bg))}.calm .calm-tl-dot.is-pink{--dot: var(--color-os-pink-soft-text)}.calm .calm-tl-dot.is-blue{--dot: var(--color-os-blue-soft-text)}.calm .calm-tl-dot.is-green{--dot: var(--color-os-green-soft-text)}.calm .calm-tl-dot.is-slate{--dot: var(--color-os-slate-soft-text)}.calm .calm-tl-dot.is-amber{--dot: var(--color-os-amber-soft-text)}.calm .calm-tl-dot.is-milestone{top:2px;box-shadow:0 0 0 3px var(--color-os-page-bg)}.calm .calm-tl-dot.is-milestone.is-faded .calm-sport{opacity:.7}.calm .calm-tl-dot.is-today{top:8px;width:12px;height:12px;background:var(--color-os-ink)}.calm .calm-tl-dot.is-earlier{top:15px;width:10px;height:10px;background:color-mix(in srgb,var(--color-os-ink) 18%,var(--color-os-page-bg))}.calm .calm-tl-earlier{height:40px;padding:0 12px 0 14px;border:0;border-radius:999px;display:inline-flex;align-items:center;gap:6px;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text);font-size:var(--type-caption);font-weight:700}.calm .calm-tl-today{display:flex;align-items:center;gap:12px;min-height:28px}.calm .calm-tl-today.is-inlist{padding:6px 8px}.calm .calm-tl-todaypill{padding:0 12px;height:24px;line-height:24px;border-radius:999px;background:var(--color-os-ink);color:var(--color-os-surface);font-size:var(--type-caption);font-weight:700;white-space:nowrap}.calm .calm-tl-todayline{flex:1;height:1px;background:var(--color-os-ink);opacity:.18}.calm .calm-tl-node{display:flex;align-items:center;gap:12px;min-height:30px;padding:2px 0}.calm .calm-tl-node.is-faded{opacity:.6}.calm .calm-tl-nodetext{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.calm .calm-tl-nodename{font-size:var(--type-body);font-weight:700}.calm .calm-tl-nodesub{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-tl-gap{display:flex;align-items:center;gap:12px;box-sizing:border-box;min-height:56px;padding:0 14px 0 18px;border:1.5px dashed var(--calm-dash);border-radius:14px}.calm .calm-tl-gap.is-short{min-height:40px}.calm .calm-tl-gap.is-soon{border-color:var(--calm-tl-gap-line);background:var(--calm-tl-gap-fill)}.calm .calm-tl-gap.is-past{opacity:.75}.calm .calm-tl-gaptitle{flex:none;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-tl-gapdates,.calm .calm-tl-gaphint{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-tl-gapdates{flex:none}.calm .calm-tl-gaphint{min-width:0}.calm .calm-tl-gapadd{position:relative;flex:none}.calm .calm-tl-addbtn.ui-btn{height:34px;padding:0 16px 0 10px;gap:4px;font-size:var(--type-caption)}.calm .calm-tl-menu{right:0;bottom:42px;width:260px;display:flex;flex-direction:column}.calm .calm-tl-menuitem{gap:12px;padding:8px 10px}.calm .calm-tl-menuitem .calm-menuitem-rich{font-size:var(--type-body)}.calm .calm-tl-menuitem .calm-sport .material-symbols-rounded{color:inherit}.calm .calm-tl-card{background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:20px;box-shadow:var(--calm-shadow-soft)}.calm .calm-tl-card.is-open{box-shadow:var(--calm-shadow-soft),0 10px 24px color-mix(in srgb,var(--color-os-ink) 5%,transparent)}.calm .calm-tl-card.is-past{opacity:.8}.calm .calm-tl-head{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:14px;padding:16px 20px;border:0;border-radius:20px;background:transparent;color:var(--color-os-ink);text-align:left;font-family:inherit}.calm .calm-tl-head:hover{background:var(--calm-week-band)}.calm .calm-tl-headmain{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.calm .calm-tl-nameline{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px}.calm .calm-tl-name{font-size:var(--type-body);font-weight:700}.calm .calm-tl-meta{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-tl-coachnote{display:block;margin-top:4px;max-width:640px;font-size:var(--type-caption);line-height:1.45;color:var(--color-os-ink-secondary);white-space:normal;text-align:left}.calm .calm-soon.ui-card{margin:0;padding:48px 24px;text-align:center;font-size:var(--type-card-title);font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-tl-private{color:var(--color-os-ink-secondary)}.calm .calm-tl-audit{font-size:var(--type-caption);line-height:1.4;color:var(--color-os-ink-muted)}.calm .calm-tl-coachlabel{font-weight:700;color:var(--color-os-ink)}.calm .calm-tl-node,.calm .calm-tl-mrow{width:100%;box-sizing:border-box;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.calm .calm-tl-node{border-radius:12px}.calm .calm-tl-node:hover,.calm .calm-tl-mrow:hover{background:var(--color-os-page-bg)}.calm .calm-tl-msfoot{display:flex;align-items:center;gap:4px;margin-top:4px}.calm .calm-tl-blockbtn{height:40px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--color-os-ink-secondary);font-size:var(--type-caption);font-weight:700;cursor:pointer}.calm .calm-tl-blockbtn:hover{background:var(--color-os-page-bg);color:var(--color-os-ink)}.calm .calm-tl-blockbtn.is-danger{color:var(--color-os-danger-text)}.calm .calm-tl-blockbtn.is-danger:hover{background:var(--calm-danger-soft);color:var(--color-os-danger-text)}.calm .calm-mv-list{display:flex;flex-direction:column;gap:18px}.calm .calm-mv-field{display:flex;flex-direction:column;gap:4px}.calm .calm-mv-label{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-mv-value{font-size:var(--type-body);font-weight:700;line-height:1.4}.calm .calm-mv-notes{font-size:var(--type-body);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.calm .calm-mv-hint{font-size:var(--type-caption);line-height:1.4;color:var(--color-os-ink-muted)}.calm .calm-mv-coach{display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:12px;background:var(--color-os-page-bg)}.calm .calm-mv-coach .calm-mv-label{color:var(--color-os-ink-secondary)}.calm .calm-mv-vis,.calm .calm-mv-by{font-size:var(--type-caption);line-height:1.4;color:var(--color-os-ink-secondary)}.calm .calm-mv-vis{margin-top:2px}.calm .calm-mv-by{color:var(--color-os-ink-muted)}.calm .calm-mv-coachtext{font-size:var(--type-body);line-height:1.5}.calm .calm-drawer-foot.is-view .calm-btn-text-danger{padding-left:4px;display:inline-flex;align-items:center;gap:6px}.calm .calm-drawer-foot.is-confirm .calm-confirm-q{font-size:var(--type-body);font-weight:700}.calm.is-phone .calm-drawer-foot.is-confirm .calm-confirm-q{flex-basis:100%}.calm.is-phone .calm-drawer-foot.is-confirm .calm-btn-danger-solid{flex:1;min-height:48px}.calm.is-phone .calm-drawer-foot.is-view .ui-btn-primary{flex:1}.calm.is-phone .calm-tl-blockbtn{min-height:44px}.calm .calm-tl-atag{display:inline-flex;align-items:center;gap:4px;flex:none}.calm .calm-tl-count{flex:none;min-width:84px;text-align:right;font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-tl-tags{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:2px}.calm .calm-tl-tags .calm-tl-count{min-width:0;text-align:left}.calm .calm-tl-open{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px;align-items:end;padding:4px 20px 20px}.calm .calm-tl-graph,.calm .calm-tl-noplan{min-width:0;border-radius:14px;background:var(--calm-week-band)}.calm .calm-tl-graph{padding:14px 16px 10px}.calm .calm-tl-graphtitle{margin-bottom:8px;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-shape.is-inblock{flex:none;width:100%;min-width:0;margin:0}.calm .calm-tl-noplan{padding:18px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-tl-side{display:flex;flex-direction:column;gap:14px}.calm .calm-tl-stats{display:flex;gap:28px}.calm .calm-tl-statlabel{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-muted)}.calm .calm-tl-statvalue{font-size:var(--type-data);font-weight:900;line-height:1.2}.calm .calm-tl-planbtn.ui-btn{justify-content:center}.calm .calm-tl-ms{margin:0 20px;padding:12px 0 14px;border-top:1px solid var(--color-os-border)}.calm .calm-tl-mslabel{padding:0 8px 6px;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-muted)}.calm .calm-tl-none{padding:6px 8px;color:var(--color-os-ink-muted)}.calm .calm-tl-mrow{display:flex;align-items:center;gap:12px;padding:6px 8px;border-radius:12px}.calm .calm-tl-mrow:hover{background:var(--calm-week-band)}.calm .calm-tl-mrow.is-faded{opacity:.65}.calm .calm-tl-mdate{flex:none;width:56px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-tl-mtext{flex:1;min-width:0}.calm .calm-tl-mname{font-size:var(--type-body);font-weight:700}.calm .calm-tl-msub{margin-left:10px;font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-tl-addms{margin-top:4px;min-height:36px;padding:0 12px 0 8px;border:0;background:transparent;display:inline-flex;align-items:center;gap:4px;color:var(--color-os-pink-soft-text);font-size:var(--type-caption);font-weight:700}.calm .calm-tl-addms:hover{text-decoration:underline}.calm .calm-field-labelrow{display:flex;align-items:center;justify-content:space-between;gap:8px}.calm .calm-field-labelrow .ui-checkbox-row{font-size:var(--type-caption);font-weight:500;gap:8px}.calm .ui-checkbox-row input{accent-color:var(--color-os-ink);width:18px;height:18px}.calm .calm-tiles{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:8px}.calm .calm-tile{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:76px;padding:12px 4px 10px;border-radius:14px;border:1.5px solid var(--color-os-border);background:var(--color-os-surface);color:var(--color-os-ink);font-family:inherit;font-size:var(--type-caption);font-weight:700}.calm .calm-tile:hover{border-color:var(--calm-dash)}.calm .calm-tile[aria-pressed=true]{border-color:var(--color-os-ink)}.calm .calm-chips .ui-choice-chip{min-height:36px;box-sizing:border-box;padding:0 14px;font-family:inherit;font-size:var(--type-caption);color:var(--color-os-ink)}.calm .ui-choice-chip.ui-active,.calm .calm-chips .ui-choice-chip.ui-active{background:var(--color-os-surface);border-color:var(--color-os-ink);color:var(--color-os-ink)}.calm .ui-text-field:focus,.calm .ui-date-field:focus-within .ui-date-field-shown{border-color:var(--color-os-ink)}.calm .calm-calls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.calm .calm-callopt{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border-radius:14px;text-align:left;border:1.5px solid var(--color-os-border);background:var(--color-os-surface);color:var(--color-os-ink);font-family:inherit}.calm .calm-callopt[aria-pressed=true]{border-color:var(--color-os-ink)}.calm .calm-callopt-name{font-size:var(--type-body);font-weight:700}.calm .calm-callopt-sub{font-size:var(--type-caption);line-height:1.35;color:var(--color-os-ink-muted)}.calm .calm-shareRow{display:flex;align-items:center;gap:12px}.calm .calm-shareText{flex:1;min-width:0}.calm .calm-shareTitle{font-size:var(--type-body);font-weight:700}.calm .calm-hint{font-size:var(--type-caption);line-height:1.4;color:var(--color-os-ink-muted)}.calm .calm-length{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-infobox{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary);font-size:var(--type-caption);line-height:1.45}.calm .calm-range{display:flex;align-items:center;gap:8px}.calm .calm-field>.ui-date-field{width:100%}.calm .calm-range>.ui-date-field{flex:1;width:auto;min-width:0}.calm .calm-range-to{font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-textarea{width:100%;box-sizing:border-box;min-height:96px;padding:12px 14px;border:1px solid var(--color-os-border);border-radius:14px;resize:vertical;background:var(--color-os-surface);color:var(--color-os-ink);font-family:inherit;font-size:var(--type-body)}.calm .calm-textarea::placeholder{color:var(--color-os-ink-muted)}.calm .calm-textarea:focus-visible{outline:0;border-color:var(--color-os-ink)}.calm .ui-btn:disabled{opacity:.4;cursor:not-allowed}.calm.is-phone .calm-tl{--tl-x: 14px}.calm.is-phone .calm-tl-row{grid-template-columns:28px minmax(0,1fr)}.calm.is-phone .calm-tl-body{padding:14px 16px 28px;gap:16px}.calm.is-phone .calm-tl-top{flex-direction:column;align-items:stretch;gap:14px}.calm.is-phone .calm-tl-year{display:grid;grid-template-columns:auto auto auto 1fr;align-items:center;column-gap:2px;margin-left:-8px}.calm.is-phone .calm-tl-yeartext{display:contents}.calm.is-phone .calm-tl-yearnum{grid-column:2;grid-row:1;min-width:60px;text-align:center}.calm.is-phone .calm-tl-year .calm-roundbtn:first-child{grid-column:1;grid-row:1}.calm.is-phone .calm-tl-year .calm-roundbtn:last-child{grid-column:3;grid-row:1}.calm.is-phone .calm-tl-headline{grid-column:1 / -1;grid-row:2;margin:2px 0 0 8px}.calm.is-phone .calm-tl-year .calm-roundbtn{width:44px;height:44px;background:transparent;box-shadow:none}.calm.is-phone .calm-tl-yearnum{font-size:var(--type-card-title)}.calm.is-phone .calm-tl-actions{margin-left:0;gap:8px}.calm.is-phone .calm-tl-actions .ui-btn{flex:1;min-height:44px;justify-content:center}.calm.is-phone .calm-tl-actions>:last-child{order:-1}.calm.is-phone .calm-tl-earlier{height:44px}.calm.is-phone .calm-tl-node{align-items:flex-start;gap:10px;padding:3px 0;min-height:44px}.calm.is-phone .calm-tl-gap{flex-wrap:wrap;gap:6px 10px;padding:12px 14px}.calm.is-phone .calm-tl-gaphint{flex-basis:100%}.calm.is-phone .calm-tl-gap .calm-grow{display:none}.calm.is-phone .calm-tl-gapadd{flex-basis:100%;display:flex;flex-direction:column;gap:6px;margin-top:4px}.calm.is-phone .calm-tl-addbtn.ui-btn{width:100%;height:44px;justify-content:center;font-size:var(--type-body)}.calm.is-phone .calm-tl-menu{position:static;width:auto}.calm.is-phone .calm-tl-menuitem{min-height:48px}.calm.is-phone .calm-tl-head{align-items:flex-start;gap:12px;padding:14px;min-height:44px;border-radius:16px}.calm.is-phone .calm-tl-chev{margin-top:6px}.calm.is-phone .calm-tl-open{grid-template-columns:minmax(0,1fr);gap:14px;padding:0 14px 14px}.calm.is-phone .calm-tl-graph,.calm.is-phone .calm-tl-noplan{padding:12px 14px 8px}.calm.is-phone .calm-tl-planbtn.ui-btn{min-height:44px}.calm.is-phone .calm-tl-ms{margin:0 14px}.calm.is-phone .calm-tl-mrow{align-items:flex-start;padding:7px 0}.calm.is-phone .calm-tl-msub{display:block;margin:1px 0 0;color:var(--color-os-ink-secondary)}.calm.is-phone .calm-tl-mname{line-height:1.3}.calm.is-phone .calm-tl-addms{min-height:44px}.calm.is-phone .calm-tiles{grid-template-columns:repeat(var(--cols-phone, var(--cols)),minmax(0,1fr))}.calm.is-phone .calm-chips .ui-choice-chip,.calm.is-phone .calm-field-labelrow .ui-checkbox-row{min-height:44px}.calm.is-phone .calm-textarea{min-height:96px}.calm.is-phone .calm-range{align-items:stretch}.calm.is-phone .calm-drawer-foot.is-season{flex-wrap:wrap}.calm.is-phone .calm-drawer-foot.is-season .calm-foot-note{flex-basis:100%}.calm.is-phone .calm-drawer-foot.is-season .calm-grow{display:none}.calm.is-phone .calm-drawer-foot.is-season .ui-btn{justify-content:center}.calm.is-phone .calm-drawer-foot.is-season .ui-btn-secondary{flex:1}.calm.is-phone .calm-drawer-foot.is-season .ui-btn-primary{flex:2}.calm .calm-toolitem.is-current{background:var(--color-os-page-bg);font-weight:700}.calm .calm-avatar.is-big{font-size:var(--type-heading)}.calm .calm-avatar.is-mid{font-size:var(--type-card-title)}.calm .calm-pf-body{box-sizing:border-box}.calm .calm-pf-grid{width:100%;max-width:1040px;margin-inline:auto;display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px;align-items:start}.calm .calm-pf-side{position:sticky;top:20px}.calm .calm-pf-main{display:flex;flex-direction:column;gap:16px;min-width:0}.calm .calm-pf-card{box-sizing:border-box;padding:28px;border-radius:20px;background:var(--color-os-surface);box-shadow:var(--color-os-shadow-card)}.calm .calm-pf-title{margin:0;font-size:var(--type-card-title);font-weight:700;line-height:1.2}.calm .calm-pf-sub{margin:1px 0 0;font-size:var(--type-caption);line-height:1.45;color:var(--color-os-ink-secondary)}.calm .calm-pf-idhead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.calm .calm-pf-name{margin-top:16px;font-size:var(--type-heading);font-weight:700;line-height:1.2;overflow-wrap:anywhere}.calm .calm-pf-email{display:flex;align-items:center;gap:2px;margin-top:2px;min-width:0;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-pf-email span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-pf-rule{height:1px;margin:22px 0;background:var(--color-os-border)}.calm .calm-pf-details{display:flex;flex-direction:column;gap:18px}.calm .calm-pf-label{font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-pf-value{display:flex;align-items:center;gap:2px;margin-top:3px;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink)}.calm .calm-pf-copy{position:relative;flex:none;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-muted);display:grid;place-items:center}.calm .calm-pf-copy.is-small{width:28px;height:28px}.calm .calm-pf-copy:hover{background:var(--color-os-page-bg);color:var(--color-os-ink)}.calm .calm-pf-cardhead{display:flex;align-items:center;gap:12px}.calm .calm-pf-headtext{flex:1;min-width:0}.calm .calm-pf-billrow{display:flex;align-items:center;gap:14px;margin-top:18px}.calm .calm-pf-editbtn{width:100%;justify-content:center;margin-top:22px}.calm .calm-pf-panel{display:flex;align-items:center;gap:14px;margin-top:18px;padding:14px 16px;border-radius:14px;background:var(--color-os-page-bg)}.calm .calm-pf-panelicon{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--color-os-ink);color:var(--color-os-surface)}.calm .calm-pf-paneltext{min-width:0}.calm .calm-pf-panellead{font-size:var(--type-body);font-weight:700;color:var(--color-os-ink)}.calm .calm-pf-panelsub{margin-top:1px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-pf-panel+.calm-pf-billtext{margin-top:16px}.calm .calm-pf-steps{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.calm .calm-pf-steps li{display:flex;align-items:flex-start;gap:12px}.calm .calm-pf-stepn{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary);font-size:var(--type-caption);font-weight:700}.calm .calm-pf-stept{padding-top:2px;font-size:var(--type-body);line-height:1.45;color:var(--color-os-ink)}.calm .calm-pf-form{flex:1;min-height:0;display:flex;flex-direction:column}.calm .calm-pf-hint{display:block;margin-top:6px}.calm .calm-drawer.is-pfedit{width:540px}.calm .calm-drawer-foot.is-pfedit{justify-content:flex-end}.calm .calm-pf-billtext{flex:1;margin:0;font-size:var(--type-body);line-height:1.45;color:var(--color-os-ink-secondary)}.calm .calm-pf-billrow .ui-btn{flex:none}.calm .calm-pf-msgbtn{margin-top:20px}.calm .calm-pf-tools{padding:18px 10px}.calm .calm-pf-toolstitle{padding:0 12px 6px}.calm .calm-pf-trow{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:14px;padding:12px;border:0;border-radius:14px;background:transparent;color:var(--color-os-ink);text-align:left}.calm .calm-pf-trow:hover{background:var(--color-os-page-bg)}.calm .calm-pf-rowtext{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.calm .calm-pf-rowname{font-size:var(--type-body);font-weight:700}.calm .calm-pf-rowsub{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-pf-rowicon{color:var(--color-os-ink-muted)}.calm .calm-pf-danger{display:flex;align-items:center;gap:14px;box-shadow:none;border:1px solid var(--calm-danger-line)}.calm .calm-pf-dangertext{flex:1;min-width:0}.calm .calm-pf-danger .calm-pf-title{color:var(--color-os-danger-text)}.calm .calm-pf-delbtn{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.calm.is-phone .calm-pf-body{padding:14px 16px 28px}.calm.is-phone .calm-pf-grid{grid-template-columns:minmax(0,1fr);gap:14px}.calm.is-phone .calm-pf-side{position:static}.calm.is-phone .calm-pf-main{gap:14px}.calm.is-phone .calm-pf-card{padding:22px;border-radius:16px}.calm.is-phone .calm-pf-idhead{align-items:center}.calm.is-phone .calm-pf-who{flex:1;min-width:0}.calm.is-phone .calm-pf-name{margin-top:0;font-size:var(--type-card-title)}.calm.is-phone .calm-pf-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.calm.is-phone .calm-pf-rule{margin:18px 0}.calm.is-phone .calm-pf-copy:after{content:"";position:absolute;inset:-6px}.calm.is-phone .calm-pf-billrow{flex-direction:column;align-items:stretch}.calm.is-phone .calm-pf-billrow .ui-btn,.calm.is-phone .calm-pf-msgbtn{width:100%;min-height:44px;justify-content:center}.calm.is-phone .calm-pf-editbtn{min-height:44px}.calm.is-phone .calm-drawer.is-pfedit{width:100%;height:auto;max-height:90%}.calm.is-phone .calm-drawer-foot.is-pfedit .ui-btn{flex:1;min-height:48px;justify-content:center}.calm.is-phone .calm-pf-form .ui-text-field{height:48px}.calm.is-phone .calm-pf-danger{flex-direction:column;align-items:stretch}.calm.is-phone .calm-pf-delbtn{width:100%;min-height:44px}.calm.is-phone .calm-pf-trow{min-height:56px}.calm.calm-profile-coach .calm-pf-side{top:calc(var(--calm-band-h) + 20px)}.calm.calm-profile-coach.is-phone .calm-pf-side{position:static}.calm.calm-profile-coach .calm-pf-grid{max-width:1120px}.calm.calm-profile-coach .calm-pf-card .calm-pill{padding:5px 12px}.calm.calm-profile-coach .calm-pf-panel+.calm-pf-billtext{margin-top:14px}.calm.calm-profile-coach .calm-pf-msgbtn{margin-top:14px}.calm.calm-profile-coach .calm-pf-danger,.calm.calm-profile-coach .calm-pf-delbtn{border-color:color-mix(in srgb,var(--color-os-danger-text) 20%,var(--color-os-surface))}.calm.calm-profile-coach:not(.is-phone) .calm-pf-card .ui-btn,.calm.calm-profile-coach:not(.is-phone) .calm-pf-delbtn{height:40px;min-height:0}.calm.calm-profile-coach .calm-pf-label,.calm.calm-profile-coach .calm-pf-copy,.calm.calm-profile-coach .calm-pf-rowicon{color:var(--color-os-ink-secondary)}@keyframes calm-slide{0%{transform:translate(28px);opacity:0}to{transform:none;opacity:1}}@keyframes calm-sheet{0%{transform:translateY(32px);opacity:0}to{transform:none;opacity:1}}@keyframes calm-grow{0%{transform:scaleY(.05)}to{transform:scaleY(1)}}.calm{--calm-zone-1: color-mix(in srgb, var(--color-os-ink) 9%, var(--color-os-surface));--calm-zone-2: color-mix(in srgb, var(--color-os-ink) 24%, var(--color-os-surface));--calm-zone-3: color-mix(in srgb, var(--color-os-pink) 38%, var(--color-os-surface));--calm-zone-4: color-mix(in srgb, var(--color-os-pink) 70%, var(--color-os-surface));--calm-zone-5: var(--color-os-pink);--calm-dot-on: var(--color-os-ink);--calm-dot-off: color-mix(in srgb, var(--color-os-ink) 24%, var(--color-os-surface));--calm-dot-none: color-mix(in srgb, var(--color-os-ink) 9%, var(--color-os-surface))}.calm .calm-lb-z1{background:var(--calm-zone-1)}.calm .calm-lb-z2{background:var(--calm-zone-2)}.calm .calm-lb-z3{background:var(--calm-zone-3)}.calm .calm-lb-z4{background:var(--calm-zone-4)}.calm .calm-lb-z5{background:var(--calm-zone-5)}.calm .calm-lb-body{box-sizing:border-box;gap:16px;padding-bottom:48px}.calm .calm-lb-body>*{width:100%;max-width:1280px;margin-inline:auto;box-sizing:border-box}.calm .calm-lb-toprow{display:flex;align-items:center;justify-content:space-between;gap:16px}.calm .calm-lb-tabs{flex:none;padding:0;height:44px;overflow-x:auto}.calm .calm-lb-tabs .calm-tab{padding:0 16px}.calm .calm-seg.calm-lb-seg{flex:none;align-self:flex-start}.calm .calm-seg.calm-lb-seg:not(.is-small){background:color-mix(in srgb,var(--color-os-ink) 8%,var(--color-os-page-bg))}.calm .calm-seg.calm-lb-seg button{flex:none;font-weight:700}.calm .calm-seg.calm-lb-seg:not(.is-small) button{font-size:var(--type-caption);padding:0 14px}.calm .calm-seg.calm-lb-seg.is-small button{height:28px;padding:0 12px}.calm .calm-lb-statgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.calm .calm-lb-stats2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.calm .ui-card.calm-lb-stat{display:flex;flex-direction:column;min-width:0;margin:0;padding:18px 20px;box-sizing:border-box}.calm .calm-lb-stat.is-wide{grid-column:span 2}.calm .calm-lb-label{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-muted)}.calm .calm-lb-value{margin-top:6px;font-size:var(--type-data);font-weight:900;line-height:1.1}.calm .calm-lb-value.is-pink{color:var(--color-os-pink-soft-text)}.calm .calm-lb-change{margin-top:6px;font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-lb-change.is-up{font-weight:500;color:var(--color-os-green-soft-text)}.calm .calm-lb-change.is-down{font-weight:500;color:var(--color-os-amber-soft-text)}.calm .calm-lb-sub{margin-top:auto;padding-top:10px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-sub.is-tight{margin-top:8px;padding-top:0}.calm .calm-lb-sub.is-inline{margin:0;padding:0}.calm .calm-lb-dots{display:flex;gap:clamp(2px,.6vw,5px);margin-top:auto;padding-top:12px;min-width:0}.calm .calm-lb-dot{flex:1 1 0;min-width:0;max-width:10px;aspect-ratio:1 / 1;border-radius:50%}.calm .calm-lb-dot.is-on{background:var(--calm-dot-on)}.calm .calm-lb-dot.is-off{background:var(--calm-dot-off)}.calm .calm-lb-dot.is-none{background:var(--calm-dot-none)}.calm .calm-lb-zhead{display:flex;align-items:center;justify-content:space-between;gap:8px}.calm .calm-lb-easy{display:flex;align-items:baseline;gap:8px}.calm .calm-lb-bigbar{display:flex;gap:2px;height:14px;margin-top:14px;border-radius:7px;overflow:hidden}.calm .calm-lb-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-key{display:inline-flex;align-items:center;gap:6px}.calm .calm-lb-keydot{width:8px;height:8px;flex:none;border-radius:50%}.calm .calm-lb-nodata{margin-top:14px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .ui-card.calm-lb-bars{margin:0;padding:22px 20px 18px}.calm .calm-lb-bars .calm-shape-marks{position:absolute;left:0;right:0;top:-12px;height:6px;display:grid;grid-template-columns:repeat(var(--n),minmax(0,var(--bar-max, 1fr)));justify-content:center;gap:var(--gap, 6px)}.calm .calm-lb-bars .calm-shape-marks span{justify-self:center;width:6px;height:6px;border-radius:50%;background:transparent}.calm .calm-lb-bars .calm-shape-marks span.is-on{background:var(--color-os-ink)}.calm .calm-lb-bars .calm-shape-bars{margin-top:10px}.calm .calm-lb-bars .calm-shape.is-inblock{max-width:none}.calm .calm-lb-bars .calm-shape-bars.is-dense,.calm.is-phone .calm-lb-bars .calm-shape-bars.is-dense{--gap: 3px}.calm .calm-lb-axis{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-lb-tests{margin-top:16px}.calm .calm-lb-testlist{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.calm .calm-lb-test{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px 8px;padding:6px 12px 6px 8px;border-radius:14px;border:1px solid var(--color-os-border);background:var(--color-os-surface);font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-test .material-symbols-rounded{color:var(--color-os-ink-secondary)}.calm .calm-lb-test-name{font-weight:700;color:var(--color-os-ink)}.calm .calm-lb-test-change{font-weight:500}.calm .calm-lb-test-change.is-better{color:var(--color-os-green-soft-text)}.calm .calm-lb-test-change.is-worse{color:var(--color-os-amber-soft-text)}.calm .calm-lb-test-date{color:var(--color-os-ink-muted)}.calm .ui-inline-banner.calm-lb-banner{align-items:center;justify-content:space-between;gap:10px 14px}.calm .calm-lb-banner-lines{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:6px}.calm .calm-lb-banner-line{display:flex;align-items:flex-start;gap:10px;font-weight:500}.calm .calm-lb-banner-line .material-symbols-rounded{flex:none}.calm .calm-lb-weeks{display:flex;flex-direction:column;gap:4px}.calm .calm-lb-weekhead{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0;padding:14px 4px 10px;font-size:var(--type-body);font-weight:700}.calm .calm-lb-weektotal{font-size:var(--type-caption);font-weight:400;color:var(--color-os-ink-secondary)}.calm .calm-lb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.calm .calm-lb-rows{display:flex;flex-direction:column;gap:6px}.calm .calm-lbcard{position:relative;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0;padding:16px;border:1.5px solid transparent;border-radius:20px;background:var(--color-os-surface);color:var(--color-os-ink);box-shadow:var(--color-os-shadow-card);font:inherit;text-align:left;transition:box-shadow .15s,border-color .15s,transform .15s}.calm button.calm-lbcard:hover{border-color:var(--calm-dash);box-shadow:var(--calm-shadow-pop);transform:translateY(-2px)}.calm .calm-lbcard.is-selected{border-color:var(--color-os-ink)}@media(prefers-reduced-motion:reduce){.calm .calm-lbcard{transition:none}.calm button.calm-lbcard:hover{transform:none}}.calm .calm-lbcard.is-missed{background:transparent;border:1.5px dashed var(--calm-dash);box-shadow:none;cursor:default}.calm .calm-lbcard.is-missed .calm-sport{opacity:.55}.calm .calm-lb-head{display:flex;align-items:center;gap:10px;width:100%}.calm .calm-lb-text,.calm .calm-lb-rowtext{flex:1;min-width:0;display:block}.calm .calm-lb-name{display:block;font-size:var(--type-body);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-lb-date{display:block;margin-top:1px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-head .calm-pill,.calm .calm-lbrow .calm-pill{flex:none}.calm .calm-pill.has-icon{display:inline-flex;align-items:center;gap:4px;padding-left:6px}.calm .calm-lbcard.is-missed .calm-pill,.calm .calm-lbrow.is-missed .calm-pill{border:1px dashed var(--calm-dash);background:transparent;color:var(--color-os-ink-secondary)}.calm .calm-lb-main{display:flex;align-items:baseline;gap:10px;min-height:30px;margin-top:16px}.calm .calm-lb-dur{font-size:var(--type-data);font-weight:700;line-height:1.2}.calm .calm-lb-stats{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-planned{margin-top:16px;min-height:30px;display:flex;align-items:center;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-lb-zbar{display:flex;gap:2px;height:8px;margin-top:12px;width:100%;border-radius:4px;overflow:hidden}.calm .calm-lb-foot{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-lb-src{flex:none}.calm .calm-lbrow{box-sizing:border-box;display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 14px;border:1.5px solid transparent;border-radius:16px;background:var(--color-os-surface);color:var(--color-os-ink);box-shadow:var(--calm-shadow-soft);font:inherit;text-align:left}.calm .calm-lbrow.is-selected{border-color:var(--color-os-ink)}.calm .calm-lbrow.is-missed{background:transparent;border:1.5px dashed var(--calm-dash);box-shadow:none}.calm .calm-lbrow.is-missed .calm-sport{opacity:.55}.calm .calm-lb-rowsub{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;margin-top:1px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-rowsub .calm-lb-src:before{content:"· "}.calm .calm-lb-rowend{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.calm .calm-lb-rowdur{font-size:var(--type-body);font-weight:700}.calm .calm-lb-srclink{display:inline-block;margin-top:8px;text-decoration:none}.calm .calm-lb-planline{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;background:var(--color-os-page-bg);font-size:var(--type-caption);line-height:1.45;color:var(--color-os-ink-secondary)}.calm .calm-lb-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.calm .calm-lb-tile{padding:12px 14px;border-radius:14px;background:var(--color-os-page-bg)}.calm .calm-lb-tile-label{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-lb-tile-value{margin-top:4px;font-size:var(--type-data);font-weight:700}.calm .calm-lb-tile-value.is-strong{color:var(--color-os-pink-soft-text)}.calm .calm-lb-block{display:flex;flex-direction:column;gap:2px}.calm .calm-lb-block-h{padding:0 4px 6px;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-muted)}.calm .calm-lb-block-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px}.calm .calm-lb-block-head .calm-lb-block-h{padding-bottom:0}.calm .calm-lb-tile-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-planlink{padding:0;border:0;background:none;font:inherit;color:var(--color-os-ink);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.calm .calm-lb-planlink:hover{color:var(--color-os-pink-soft-text)}.calm .calm-mo{display:flex;flex-direction:column;gap:10px}.calm .calm-mo-c-pace{--mo: var(--color-os-blue-soft-text)}.calm .calm-mo-c-hr{--mo: var(--color-os-pink-soft-text)}.calm .calm-mo-c-power{--mo: var(--color-os-green-soft-text)}.calm .calm-mo-c-cadence{--mo: var(--color-os-amber-soft-text)}.calm .calm-mo-c-elevation{--mo: var(--color-os-ink-secondary)}.calm .calm-mo-chips{display:flex;flex-wrap:wrap;gap:6px}.calm .calm-mo-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;box-sizing:border-box;border-radius:999px;border:1px solid var(--color-os-border);background:var(--color-os-surface);color:var(--color-os-ink-secondary);font:inherit;font-size:var(--type-caption);font-weight:500;cursor:pointer}.calm .calm-mo-chip.is-on{border-color:var(--mo);color:var(--color-os-ink);font-weight:700}.calm .calm-mo-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--mo);opacity:.35}.calm .calm-mo-chip.is-on .calm-mo-dot{opacity:1}.calm .calm-mo-chart{position:relative;height:210px;border-radius:14px;background:var(--color-os-page-bg);overflow:hidden}.calm .calm-mo-svg{display:block;touch-action:pan-y;cursor:crosshair;user-select:none;-webkit-user-select:none}.calm .calm-mo-svg:focus-visible{outline:2px solid var(--color-os-ink);outline-offset:-2px;border-radius:14px}.calm .calm-mo-grid{stroke:color-mix(in srgb,var(--color-os-ink) 10%,var(--color-os-page-bg));stroke-width:1}.calm .calm-mo-win{fill:color-mix(in srgb,var(--color-os-ink) 10%,transparent)}.calm .calm-mo-line{fill:none;stroke:var(--mo);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.calm .calm-mo-axis{fill:var(--mo);font-size:var(--type-caption)}.calm .calm-mo-xaxis,.calm .calm-mo-hint{fill:var(--color-os-ink-secondary);font-size:var(--type-caption)}.calm .calm-mo-cursor{stroke:var(--color-os-ink);stroke-width:1}.calm .calm-mo-pt{fill:var(--mo);stroke:var(--color-os-surface);stroke-width:2}.calm .calm-mo-readout{position:absolute;top:6px;z-index:5;pointer-events:none;box-sizing:border-box;padding:8px 12px;border-radius:10px;white-space:nowrap;background:var(--color-os-surface);border:1px solid var(--color-os-border);box-shadow:var(--calm-shadow-pop);font-size:var(--type-caption);line-height:1.55;color:var(--color-os-ink-secondary)}.calm .calm-mo-readout-time{margin-bottom:4px;color:var(--color-os-ink-secondary)}.calm .calm-mo-readout-row strong{color:var(--color-os-ink)}.calm .calm-mo-lapwrap{display:flex;flex-direction:column;gap:6px}.calm .calm-mo-laps{display:flex;gap:2px;height:46px;overflow-x:auto;scrollbar-width:none}.calm .calm-mo-laps::-webkit-scrollbar{display:none}.calm .calm-mo-lap{min-width:40px;border:0;border-radius:8px;padding:4px 0;font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;overflow:hidden;cursor:pointer;background:color-mix(in srgb,var(--color-os-ink) var(--hard, 5%),var(--color-os-surface));color:var(--color-os-ink)}.calm .calm-mo-lap.is-on{background:var(--color-os-ink);color:var(--color-os-surface)}.calm .calm-mo-lap:focus-visible,.calm .calm-mo-chip:focus-visible,.calm .calm-mo-full:focus-visible{outline:2px solid var(--color-os-ink);outline-offset:2px}.calm .calm-mo-lap-n{font-size:var(--type-caption);line-height:1;opacity:.8}.calm .calm-mo-lap-v{font-size:var(--type-caption);line-height:1.1;font-weight:700}.calm .calm-mo-note{padding:0 4px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-mo-window{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:14px;background:var(--color-os-page-bg)}.calm .calm-mo-window-head{display:flex;align-items:center;gap:8px}.calm .calm-mo-window-k{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-mo-full{margin-left:auto;height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--color-os-border);background:var(--color-os-surface);font:inherit;font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink);cursor:pointer}.calm .calm-mo-stats{display:flex;flex-wrap:wrap;gap:8px 20px}.calm .calm-mo-stat-k{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-mo-stat-v{margin-top:2px;font-size:var(--type-body);font-weight:700}.calm .calm-lb-stage{position:relative;overflow:hidden;height:calc(100vh - 77px);min-height:520px}.calm .calm-lb-titleband{padding:14px 28px;background:var(--color-os-surface);border-bottom:1px solid var(--color-os-border)}.calm .calm-lb-titleband>*{max-width:1280px;margin-inline:auto}.calm .calm-lb-h1{margin:0;font-size:var(--type-heading);font-weight:700;line-height:1.15}.calm .calm-lb-tagline{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-zrow,.calm .calm-lb-splitrow{display:flex;align-items:center;gap:12px;padding:6px 4px}.calm .calm-lb-zname{width:56px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-ztrack{flex:1;min-width:0;display:block}.calm .calm-lb-ztrack>span{display:block;height:8px;border-radius:4px}.calm .calm-lb-ztime{width:48px;text-align:right;font-size:var(--type-caption);font-weight:700}.calm .calm-lb-zpct{width:40px;text-align:right;font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-lb-sn{width:24px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-st{width:48px;font-size:var(--type-body);font-weight:700}.calm .calm-lb-ztrack>.is-split{background:var(--calm-dash)}.calm .calm-lb-ztrack>.is-best{background:var(--color-os-ink)}.calm .calm-lb-map{flex:none;border-radius:14px;overflow:hidden;background:var(--color-os-page-bg)}.calm .calm-lb-map svg{display:block;width:100%;height:150px}.calm .calm-lb-route{fill:none;stroke:var(--color-os-pink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.calm .calm-lb-start{fill:var(--color-os-ink)}.calm .calm-lb-end{fill:var(--color-os-surface);stroke:var(--color-os-ink);stroke-width:2}.calm.is-medium .calm-lb-grid,.calm.is-medium .calm-lb-statgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.calm.is-medium .calm-lb-stat.is-wide{grid-column:span 2}.calm.is-phone .calm-lb-body{padding:14px 16px 96px;gap:14px}.calm.is-phone .calm-lb-tabs{margin:0 -4px}.calm.is-phone .calm-seg.calm-lb-seg:not(.is-small){align-self:stretch}.calm.is-phone .calm-seg.calm-lb-seg:not(.is-small) button{flex:1;height:44px;padding:0 6px}.calm.is-phone .calm-seg.calm-lb-seg.is-small button{height:44px;padding:0 14px}.calm.is-phone .ui-card.calm-lb-stat{padding:14px 16px;border-radius:16px}.calm.is-phone .ui-card.calm-lb-bars{padding:20px 16px 16px;border-radius:16px}.calm.is-phone .calm-lb-bars .calm-shape-bars{--gap: 4px}.calm.is-phone .calm-lb-banner .ui-btn{min-height:44px}.calm.is-phone .calm-lb-weekhead{padding-top:18px;padding-bottom:6px}.calm.is-phone .calm-lbrow{min-height:64px}.calm.is-phone .calm-lb-tile-value{font-size:var(--type-data)}.calm.is-phone .calm-lb-titleband{padding:14px 16px}.calm.is-phone .calm-lb-h1{font-size:var(--type-card-title)}.calm.is-phone .calm-mo-chip,.calm.is-phone .calm-mo-full{height:44px}.calm.is-phone .calm-mo-lap{min-width:44px}.calm .calm-pillscroll{min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none}.calm .calm-pillscroll::-webkit-scrollbar{display:none}.calm .calm-seg.calm-pillswitch{display:inline-flex;align-items:center;gap:2px;background:color-mix(in srgb,var(--color-os-ink) 8%,var(--color-os-page-bg))}.calm .calm-seg.calm-pillswitch button{flex:none;white-space:nowrap;font-weight:700;padding:0 16px}.calm .calm-doc-body{box-sizing:border-box;padding-bottom:48px}.calm .calm-doc-body>*{width:100%;max-width:1120px;margin-inline:auto;box-sizing:border-box}.calm .calm-doc-toprow{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}.calm .calm-doc-toprow .calm-pillscroll{flex:0 1 auto}.calm .calm-doc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.calm .calm-doc-empty{padding:48px 16px;text-align:center;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-doc{position:relative;box-sizing:border-box;min-height:200px;padding:20px;display:flex;flex-direction:column;gap:12px;border-radius:16px;background:var(--color-os-surface);box-shadow:var(--color-os-shadow-card);transition:box-shadow .15s}.calm .calm-doc:hover,.calm .calm-doc:focus-within{box-shadow:var(--calm-shadow-pop)}@media(prefers-reduced-motion:reduce){.calm .calm-doc{transition:none}}.calm .calm-doc.has-menu{z-index:var(--calm-z-menu)}.calm .calm-doc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.calm .calm-doc-topright{display:flex;align-items:center;gap:8px}.calm .calm-doc-menuhost{position:relative;display:flex;flex:none}.calm .calm-doc-more{width:36px;height:36px;margin:-6px -8px 0 0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-doc-more:hover,.calm .calm-doc-more[aria-expanded=true]{background:var(--color-os-slate-soft-bg);color:var(--color-os-ink)}.calm .calm-doc-menu{right:-8px;top:34px;width:190px}.calm .calm-doc-menu .calm-menuitem{font-size:var(--type-body);padding:10px 12px;gap:12px}.calm .calm-doc-text{flex:1;min-width:0}.calm .calm-doc-title{margin:0;font-size:var(--type-body);font-weight:700;line-height:1.3;overflow-wrap:anywhere}.calm .calm-doc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin-top:3px;font-size:var(--type-caption);color:var(--color-os-ink-muted)}.calm .calm-doc-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:10px 0 0;font-size:var(--type-caption);line-height:1.45;color:var(--color-os-ink-secondary)}.calm .calm-doc-actions{display:flex;flex-wrap:wrap;gap:8px}.calm .calm-doc-actions .ui-btn{min-height:40px;padding-block:0;font-size:var(--type-caption)}.calm .calm-drawer.is-doc{width:540px}.calm .ui-btn:disabled{opacity:.4;cursor:not-allowed;filter:none}.calm .calm-doc-linkonly{display:flex;flex-direction:column;gap:2px}.calm .calm-doc-linkonly .ui-checkbox-row{font-size:var(--type-body);font-weight:700;gap:10px}.calm .calm-doc-hint{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-doc-linkonly .calm-doc-hint{padding-left:26px}.calm .ui-text-field[aria-invalid=true]{border-color:var(--color-os-danger-text)}.calm .calm-doc-problem{display:block;margin-top:6px;font-size:var(--type-caption);color:var(--color-os-danger-text)}.calm .calm-doc-textarea{display:block;resize:vertical;min-height:96px;line-height:1.45}.calm .calm-doc-typewrap{position:relative}.calm .calm-doc-typebtn{width:100%;text-align:left;color:var(--color-os-ink);font-family:inherit;font-weight:500}.calm .calm-doc-typebtn[aria-expanded=true]{border-color:var(--color-os-ink)}.calm .calm-doc-typename{flex:1;min-width:0}.calm .calm-doc-typemenu{left:0;right:0;top:52px}.calm .calm-doc-typeitem{font-size:var(--type-body);padding:8px 10px;gap:12px}.calm .calm-doc-typeitem.is-current{font-weight:700;background:var(--color-os-page-bg)}.calm .calm-doc-drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 16px;text-align:center;cursor:pointer;border:1.5px dashed var(--calm-dash);border-radius:14px;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary)}.calm .calm-doc-drop:hover,.calm .calm-doc-drop.is-over,.calm .calm-doc-drop:focus-within{border-color:var(--color-os-ink)}.calm .calm-doc-drop-main{font-size:var(--type-body);font-weight:700;color:var(--color-os-ink)}.calm .calm-doc-picked{display:flex;align-items:center;gap:12px;padding:10px 10px 10px 14px;border:1px solid var(--color-os-border);border-radius:14px;background:var(--color-os-surface)}.calm .calm-doc-picked-text{flex:1;min-width:0;display:flex;flex-direction:column}.calm .calm-doc-picked-name{font-size:var(--type-body);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-doc-error{flex:none;padding:0 24px 12px}.calm .calm-drawer-foot.is-doc{justify-content:flex-end}.calm.is-medium .calm-doc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calm.is-phone .calm-doc-body{padding:14px 16px 96px;gap:14px}.calm.is-phone .calm-doc-body>.ui-btn{width:100%;justify-content:center;min-height:44px}.calm.is-phone .calm-seg.calm-pillswitch button{height:44px;padding:0 14px}.calm.is-phone .calm-doc-grid{grid-template-columns:minmax(0,1fr)}.calm.is-phone .calm-doc-actions .ui-btn{min-height:44px}.calm.is-phone .calm-doc-more{width:44px;height:44px;margin:-10px -12px 0 0}.calm.is-phone .calm-doc-menu{top:40px;right:-4px}.calm.is-phone .calm-doc-menu .calm-menuitem{min-height:44px}.calm.is-phone .calm-doc-error{padding:0 20px 12px}.calm.is-phone .calm-drawer-foot.is-doc .ui-btn{flex:1}.calm.is-phone .calm-drawer-foot.is-doc .calm-grow{display:none}.calm.is-phone .calm-doc-typeitem{min-height:44px}.calm.is-phone.calm-documents .calm-empty-layer{align-items:center;padding-top:16px}.calm.calm-athlete{--calm-band-h: 0px}.calm .calm-weektoggle{display:inline-flex;align-items:center;gap:2px;align-self:flex-start;padding:0;border:0;background:transparent;color:inherit;text-align:left}.calm .calm-weektoggle .material-symbols-rounded{color:var(--color-os-ink-secondary)}.calm .calm-week.is-folded{min-height:0;align-items:center}.calm .calm-week-folded{grid-column:2 / 9;align-self:center;padding-left:4px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-week.is-current .calm-week-folded{color:var(--color-os-ink-secondary)}.calm.is-medium .calm-week-folded{grid-row:1 / span 2}.calm.is-medium .calm-week.is-folded{min-height:0}.calm .calm-pstriprow{display:flex;align-items:center;gap:12px}.calm .calm-pstriprow .calm-shape{flex:1 1 auto;min-width:0}.calm .calm-phonekey .calm-roundbtn{width:44px;height:44px}.calm .calm-ptitle .calm-racesbtn{margin-top:12px;height:44px}.calm .calm-btn-dark{background:var(--color-os-ink);color:var(--color-os-surface);border:1px solid transparent}.calm .calm-btn-dark:hover{filter:brightness(1.15)}.calm.is-phone .calm-drawer-foot.is-session .calm-btn-dark{flex:1;justify-content:center;min-height:48px}.calm .calm-optpills{display:flex;flex-wrap:wrap;gap:8px}.calm .calm-optpill{height:40px;padding:0 16px;border:1px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-body);font-weight:400}.calm .calm-optpill.is-on{border:1.5px solid var(--color-os-ink);font-weight:700}.calm .calm-race-hint{font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-race-empty{padding:24px;text-align:center;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-race-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--color-os-border);border-radius:14px}.calm .calm-race-pri{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:var(--type-caption);font-weight:700;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-race-pri.is-a{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-race-pri.is-b{background:var(--color-os-amber-soft-bg);color:var(--chip-amber-text)}.calm .calm-race-main{flex:1;min-width:0}.calm .calm-race-name{font-size:var(--type-body);font-weight:700}.calm .calm-race-meta{margin-top:1px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-race-form{display:flex;flex-direction:column;gap:20px}.calm .calm-iconbtn.is-danger{color:var(--color-os-danger-text)}.calm.is-phone .calm-race-form .calm-grid2{grid-template-columns:1fr}.calm.is-phone .calm-race-row .calm-iconbtn{width:44px;height:44px}.calm.is-empty .calm-frame{position:relative;overflow:hidden;max-height:100vh}.calm .calm-ghostpage{opacity:.5;filter:grayscale(1) blur(2px);pointer-events:none;-webkit-user-select:none;user-select:none}.calm .calm-ghostpage.is-livehead{opacity:1;filter:none;pointer-events:auto;-webkit-user-select:auto;user-select:auto}.calm .calm-ghostpage.is-livehead :is(.calm-body>:not(.calm-titlerow),.calm-pinert>*,.calm-titlerow>:not(.calm-title-main,.calm-title-actions)){opacity:.5;filter:grayscale(1) blur(2px);pointer-events:none;-webkit-user-select:none;user-select:none}.calm .calm-ghostpage.is-livehead :is(.calm-plan-btn,.calm-title-main>.calm-roundbtn,.calm-title-actions button,.calm-ptitle-btn,.calm-ptitle-sub){opacity:.6;filter:grayscale(1)}.calm .calm-ghostpage.is-livehead .calm-titlerow,.calm .calm-ghostpage.is-livehead .calm-ptitle{position:relative;z-index:11}.calm .calm-pcontents,.calm .calm-pinert{display:contents}.calm .calm-emptyzone.has-livehead .calm-empty-layer{pointer-events:none;align-items:flex-start;padding-top:calc(var(--calm-empty-top, 0px) + 16px)}.calm .calm-emptyzone.has-livehead .calm-empty-wrap{pointer-events:auto}.calm .calm-empty-layer{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:24px 28px;background:linear-gradient(color-mix(in srgb,var(--color-os-page-bg) 10%,transparent),color-mix(in srgb,var(--color-os-page-bg) 70%,transparent))}.calm .calm-empty-wrap{width:100%;max-width:600px;display:flex;flex-direction:column;gap:16px}.calm .calm-empty-card.ui-card{margin:0;padding:44px 32px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.calm .calm-emptyzone{position:relative;overflow:hidden;max-height:calc(100vh - 121px)}.calm .calm-empty-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:4px}.calm .calm-empty-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-empty-title{font-size:var(--type-card-title);font-weight:700;line-height:1.25}.calm .calm-empty-body{max-width:460px;font-size:var(--type-body);line-height:1.5;color:var(--color-os-ink-secondary)}.calm .calm-empty-help.ui-card{margin:0;padding:20px 24px;display:flex;align-items:center;flex-wrap:wrap;gap:16px}.calm .calm-empty-helpicon{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-empty-helptext{flex:1 1 260px;min-width:0}.calm .calm-empty-helptitle{font-size:var(--type-body);font-weight:700}.calm .calm-empty-helpbody{margin-top:2px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm.is-phone .calm-empty-layer{padding:56px 16px 16px;align-items:flex-start}.calm.is-phone .calm-empty-card.ui-card{padding:32px 20px}.calm.is-phone .calm-empty-help.ui-card{padding:16px 20px}.calm{--calm-adj-up: var(--color-os-green-soft-text);--calm-adj-down: var(--color-os-danger-text);--calm-adj-edited-line: color-mix(in srgb, var(--color-os-pink) 45%, var(--color-os-surface))}.calm .calm-adjbar.ui-card{position:relative;z-index:29;flex:none;margin:0;padding:18px 20px;display:flex;flex-direction:column;gap:16px}.calm .calm-adj-head{display:flex;align-items:center;gap:12px}.calm .calm-adj-badge{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-adj-headtext{flex:1;min-width:0}.calm .calm-adj-title{font-size:var(--type-card-title);font-weight:700;line-height:1.2}.calm .calm-adj-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-adj-done.ui-btn{height:40px;padding:0 20px;justify-content:center}.calm .calm-adj-controls{display:flex;align-items:flex-end;gap:24px;flex-wrap:wrap}.calm .calm-adj-field{display:flex;flex-direction:column;gap:8px;min-width:0}.calm .calm-adj-label{font-size:var(--type-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-os-ink-secondary)}.calm .calm-adj-controls .calm-seg.calm-pillswitch button{height:36px}.calm .calm-adj-stepper{display:flex;align-items:center;gap:8px}.calm .calm-adj-step{width:40px;height:40px;border:0;border-radius:50%;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text);display:grid;place-items:center}.calm .calm-adj-step:hover:not(:disabled){background:var(--calm-status-planned);color:var(--color-os-ink)}.calm .calm-adj-step:disabled{opacity:.4;cursor:default}.calm .calm-adj-value{min-width:64px;text-align:center;font-size:var(--type-card-title);font-weight:700}.calm .calm-adj-apply.ui-btn{height:40px;padding:0 20px;margin-left:auto;justify-content:center}.calm .calm-adj-apply.ui-btn:disabled{opacity:.4;cursor:default;filter:none}.calm .calm-adj-select{position:relative}.calm .calm-adj-selectbtn{width:240px;max-width:100%;height:40px;padding:0 12px 0 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--color-os-border);border-radius:12px;background:var(--color-os-surface);color:var(--color-os-ink);font-family:inherit;font-size:var(--type-body);font-weight:700}.calm .calm-adj-selectbtn:hover{border-color:var(--color-os-ink-muted)}.calm .calm-adj-selecttext{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-adj-list{top:46px;left:0;width:100%;min-width:240px;z-index:5;max-height:280px;overflow-y:auto}.calm .calm-adj-list.is-up{top:auto;bottom:46px}.calm .calm-adj-opt{font-size:var(--type-body)}.calm .calm-adj-opt.is-on{background:var(--color-os-page-bg);font-weight:700}.calm .calm-adj-opttext{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-adj-optcount{font-size:var(--type-caption);font-weight:400;color:var(--color-os-ink-secondary)}.calm .calm-adjstrip{flex:none;display:flex;align-items:center;gap:16px;padding:10px 20px;border-radius:20px;background:var(--color-os-slate-soft-bg);color:var(--color-os-ink);font-size:var(--type-caption)}.calm .calm-adjstrip-count{font-size:var(--type-body);font-weight:700;white-space:nowrap}.calm .calm-adjstrip-hint{color:var(--color-os-ink-secondary);white-space:nowrap}.calm .calm-adjstrip-note{flex:1;min-width:0;height:40px;padding:0 16px;border:0;border-radius:12px;background:var(--color-os-surface);box-shadow:var(--calm-shadow-soft);font-family:inherit;font-size:var(--type-caption);color:var(--color-os-ink)}.calm .calm-adjstrip-note::placeholder{color:var(--color-os-ink-secondary)}.calm .calm-adjstrip-reset{height:40px;padding:0 8px;border:0;background:transparent;font-family:inherit;font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.calm .calm-adjstrip-reset:hover{color:var(--color-os-pink-soft-text)}.calm .calm-dur.is-up,.calm .calm-ctl-time.is-up,.calm .calm-pcard-delta.is-up{color:var(--calm-adj-up);font-weight:700}.calm .calm-dur.is-down,.calm .calm-ctl-time.is-down,.calm .calm-pcard-delta.is-down{color:var(--calm-adj-down);font-weight:700}.calm .calm-pcard-delta{font-size:var(--type-caption)}.calm .calm-hist{width:18px;height:18px;flex:none;margin-left:6px;padding:0;border:0;border-radius:50%;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text);display:grid;place-items:center}.calm .calm-hist:hover,.calm .calm-hist.is-open{background:var(--calm-status-planned);color:var(--color-os-ink)}.calm .calm-hist.is-move{background:var(--color-os-blue-soft-bg);color:var(--color-os-blue-soft-text)}.calm .calm-hist.is-move:hover,.calm .calm-hist.is-move.is-open{background:var(--color-os-blue-soft-text);color:var(--color-os-blue-soft-bg)}.calm .calm-histpop.is-move{width:260px}.calm .calm-origpill{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:4px 10px;border-radius:999px;background:var(--color-os-blue-soft-bg);color:var(--color-os-blue-soft-text);font-size:var(--type-caption);font-weight:700}.calm .calm-histbox.is-phoneonly{display:none}.calm.is-phone .calm-histbox.is-phoneonly{display:flex}.calm .calm-card-edit{display:flex;align-items:center;gap:6px;margin-top:4px;min-width:0}.calm .calm-card-edit .calm-hist{margin:0;position:relative}.calm .calm-card-edit .calm-hist:after{content:"";position:absolute;inset:-5px}.calm .calm-card-delta{font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-card-delta.is-up{color:var(--calm-adj-up)}.calm .calm-card-delta.is-down{color:var(--calm-adj-down)}.calm.is-adjusting .calm-card.is-edited:not(.is-selected),.calm.is-adjusting .calm-pcard.is-edited:not(.is-selected){border-color:var(--calm-adj-edited-line);border-style:solid;background:var(--color-os-pink-soft-bg)}.calm.is-adjusting .calm-card.is-edited{--edge: var(--calm-adj-edited-line)}.calm.is-adjusting .calm-card.is-editable{padding-block:11px}.calm.is-adjusting .calm-card.is-editable .calm-card-sub,.calm.is-adjusting .calm-card.is-editable .calm-adj{height:28px}.calm.is-adjusting .calm-card.is-editable .calm-mini{width:26px;height:26px}.calm.is-adjusting .calm-card.is-editable .calm-ctl{gap:6px}.calm .calm-histpop{z-index:var(--calm-z-menu);width:240px;padding:14px 16px;border-radius:16px;cursor:default}.calm .calm-histpop.is-down{top:calc(100% + 6px)}.calm .calm-histpop.is-up{bottom:calc(100% + 6px)}.calm .calm-histpop-card{left:-4px}.calm .calm-histpop-title{padding-bottom:8px;border-bottom:1px solid var(--color-os-border);font-size:var(--type-caption);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.calm .calm-histpop-list{margin:0;padding:10px 0 0;list-style:none;display:flex;flex-direction:column;gap:10px;max-height:220px;overflow-y:auto}.calm .calm-histpop-line{font-size:var(--type-caption);font-weight:700;line-height:1.35;color:var(--color-os-ink)}.calm .calm-histpop-note{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-adjsheet{position:fixed;left:0;right:0;bottom:0;z-index:65;box-sizing:border-box;padding:0 16px 16px;border-radius:20px 20px 0 0;background:var(--color-os-surface);box-shadow:var(--calm-shadow-lift);display:flex;flex-direction:column;gap:12px}.calm.is-phone .calm-adjsheet .calm-adj-head{padding-top:4px}.calm.is-phone .calm-adjsheet .calm-adj-badge{display:none}.calm.is-phone .calm-adjsheet .calm-adj-done.ui-btn{min-height:44px}.calm .calm-adjsheet .calm-adj-controls{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px}.calm .calm-adjsheet .calm-adj-field.is-wide{grid-column:1 / -1}.calm .calm-adjsheet .calm-adj-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.calm .calm-adjsheet .calm-seg.calm-pillswitch{display:flex}.calm .calm-adjsheet .calm-seg.calm-pillswitch button{flex:1;height:44px}.calm .calm-adjsheet .calm-adj-selectbtn{width:100%;height:48px}.calm .calm-adjsheet .calm-adj-step{width:44px;height:44px}.calm .calm-adjsheet .calm-adj-value{min-width:56px}.calm .calm-adjsheet .calm-adj-apply.ui-btn{width:100%;min-height:48px;margin-left:0}.calm.is-phone.is-adjusting{padding-bottom:calc(var(--calm-adjsheet-h, 0px) + 16px)}.calm.is-phone.is-adjusting .calm-toast{bottom:calc(var(--calm-adjsheet-h, 0px) + 12px)}.calm.is-phone.is-adjusting.has-toast{padding-bottom:calc(var(--calm-adjsheet-h, 0px) + 96px)}.calm.is-phone.is-adjusting .calm-selbar{bottom:calc(var(--calm-adjsheet-h, 0px) + 12px)}.calm.is-phone.is-adjusting.is-selecting{padding-bottom:calc(var(--calm-adjsheet-h, 0px) + 80px)}.calm.is-phone .calm-adjstrip{flex-wrap:wrap;gap:8px 12px;padding:12px 16px}.calm.is-phone .calm-adjstrip-hint{display:none}.calm.is-phone .calm-adjstrip-note{order:3;flex:1 1 100%;height:44px}.calm.is-phone .calm-adjstrip-reset{margin-left:auto;min-height:44px}.calm.is-phone .calm-hist{position:relative;width:24px;height:24px}.calm.is-phone .calm-hist:after{content:"";position:absolute;inset:-10px}.calm .calm-pcard{position:relative}.calm .calm-pstep{flex:none;display:flex;align-items:center;gap:8px}.calm .calm-pstep-btn{width:44px;height:44px;border:0;border-radius:50%;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text);display:grid;place-items:center}.calm .calm-pstep-btn:active{background:var(--calm-status-planned);color:var(--color-os-ink)}.calm .calm-histpop-phone{left:12px;right:12px;width:auto}.calm .calm-histpop-phone.is-down{top:calc(100% - 6px)}.calm .calm-ph-body{box-sizing:border-box;padding-bottom:48px}.calm .calm-ph-body>*{width:100%;max-width:1120px;margin-inline:auto;box-sizing:border-box}.calm .calm-ph-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.calm .calm-ph-headtext{flex:1;min-width:0}.calm .calm-ph-h1{margin:0;font-size:var(--type-heading);font-weight:700;line-height:1.15}.calm .calm-ph-tagline{margin-top:2px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-ph{display:flex;flex-direction:column;gap:4px}.calm .calm-ph-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.calm .calm-ph-search{flex:1 1 320px;min-width:0;height:40px;box-sizing:border-box;padding:0 16px;display:flex;align-items:center;gap:8px;border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink-secondary);box-shadow:var(--calm-shadow-soft)}.calm .calm-ph-search:focus-within{outline:2px solid var(--color-os-ink);outline-offset:2px}.calm .calm-ph-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:inherit;font-size:var(--type-body);color:var(--color-os-ink)}.calm .calm-ph-search input::placeholder{color:var(--color-os-ink-secondary)}.calm .calm-ph-toggle{flex:none;display:inline-flex;align-items:center;gap:10px;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink);cursor:pointer}.calm .calm-ph-group{margin:0;display:flex;align-items:center;gap:12px;padding:18px 4px 12px;font-size:var(--type-caption);font-weight:700}.calm .calm-ph-chip{display:inline-flex;align-items:center;gap:8px;height:24px;padding:0 12px;border-radius:999px;background:var(--color-os-ink);color:var(--color-os-surface)}.calm .calm-ph-count{font-weight:500;opacity:.7}.calm .calm-ph-rule{flex:1;height:1px;background:color-mix(in srgb,var(--color-os-ink) 18%,transparent)}.calm .calm-ph-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.calm .calm-ph-card{position:relative;box-sizing:border-box;padding:20px;border:1.5px solid transparent;border-radius:20px;background:var(--color-os-surface);box-shadow:var(--color-os-shadow-card)}.calm .calm-ph-card.is-current{border-color:var(--color-os-ink)}.calm .calm-ph-card.has-menu{z-index:var(--calm-z-menu)}.calm .calm-ph-top{display:flex;align-items:flex-start;gap:12px}.calm .calm-ph-titles{flex:1;min-width:0}.calm .calm-ph-name{margin:0;font-size:var(--type-body);font-weight:700;line-height:1.25;overflow-wrap:anywhere}.calm .calm-ph-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);overflow-wrap:anywhere}.calm .calm-ph-menuhost{position:relative;flex:none;display:flex}.calm .calm-ph-more{width:36px;height:36px;margin:-4px -6px 0 0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-ph-more:hover,.calm .calm-ph-more[aria-expanded=true]{background:var(--color-os-slate-soft-bg);color:var(--color-os-ink)}.calm .calm-ph-menu{right:-6px;top:38px;width:200px}.calm .calm-ph-menu .calm-menuitem{font-size:var(--type-body);padding:10px 12px;gap:12px}.calm .calm-ph-dates{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-top:12px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ph-stats{display:flex;gap:10px;margin-top:14px}.calm .calm-ph-stat{flex:1 1 0;min-width:0;padding:10px 12px;border-radius:12px;background:var(--color-os-page-bg);display:flex;flex-direction:column;gap:2px}.calm .calm-ph-stat-label{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ph-stat-value{font-size:var(--type-body);font-weight:700;color:var(--color-os-ink)}.calm .calm-ph-meter{height:4px;margin-top:12px;border-radius:999px;background:var(--color-os-slate-soft-bg);overflow:hidden}.calm .calm-ph-meter span{display:block;height:100%;border-radius:999px;opacity:.7}.calm .calm-ph-meter .is-ok{background:var(--color-os-green-soft-text)}.calm .calm-ph-meter .is-behind{background:var(--color-os-amber-soft-text)}.calm .calm-ph-none{margin-top:14px;padding:10px 12px;border-radius:12px;background:var(--color-os-page-bg);font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ph-bars{display:flex;align-items:flex-end;gap:3px;height:32px;margin-top:14px}.calm .calm-ph-bars span{flex:1;min-width:0;height:var(--h);border-radius:3px;background:var(--color-os-ink);opacity:.32}.calm .calm-ph-bars span.is-ahead{opacity:.14}.calm .calm-ph-foot{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ph-empty{display:flex;align-items:center;flex-wrap:wrap;gap:14px;box-sizing:border-box;padding:16px 20px;border-radius:20px;background:var(--color-os-surface);box-shadow:var(--color-os-shadow-card);font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-ph-empty>span{flex:1}.calm .calm-ph-buildlink{font-size:var(--type-body)}.calm .calm-ph-nomatch{padding:32px 16px 8px;text-align:center;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-ph-hint{padding:12px 16px;text-align:center;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-dialog-icon.is-neutral{background:var(--color-os-slate-soft-bg);color:var(--color-os-ink)}.calm .calm-pop-plans{display:flex;flex-direction:column;width:560px;max-height:min(640px,calc(100vh - 260px));overflow:hidden;padding:8px}.calm .calm-sw{display:flex;flex-direction:column;min-height:0}.calm .calm-sw-search{flex:none;display:flex;align-items:center;gap:8px;margin:4px;padding:9px 14px;border-radius:999px;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary)}.calm .calm-sw-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:inherit;font-size:var(--type-body);color:var(--color-os-ink)}.calm .calm-sw-search input::placeholder{color:var(--color-os-ink-secondary)}.calm .calm-sw-list{flex:1 1 auto;min-height:0;overflow-y:auto}.calm .calm-sw-label{padding:14px 12px 6px;font-size:var(--type-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-os-ink-secondary)}.calm .calm-sw-row{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:var(--color-os-ink);text-align:left;cursor:pointer}.calm .calm-sw-row:hover,.calm .calm-sw-row.is-current{background:var(--color-os-page-bg)}.calm .calm-sw-main{flex:1;min-width:0;display:flex;flex-direction:column}.calm .calm-sw-name{font-size:var(--type-body);font-weight:700}.calm .calm-sw-meta{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-sw-empty{padding:6px 12px 8px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-sw-empty.is-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.calm .calm-sw-foot{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px;padding:12px 12px 6px;border-top:1px solid var(--color-os-border)}.calm .calm-sw-foot .calm-ph-toggle{font-size:var(--type-body)}.calm .calm-ph-view{max-width:1120px;width:100%;box-sizing:border-box;margin-inline:auto}.calm .calm-ph-viewhead{display:flex;align-items:center;gap:14px}.calm .calm-ph-viewtitle{min-width:0}.calm .calm-ph-viewname{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:var(--type-heading);font-weight:700;line-height:1.15}.calm .calm-ph-viewcard{flex:none;padding:20px 24px;display:flex;flex-direction:column;gap:4px}.calm .calm-ph-viewcard .calm-shape{order:0;flex:none;width:100%;min-width:0;margin:16px 0 0}.calm .calm-ph-viewnote{margin:12px 0 0;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm.is-medium .calm-ph-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.calm.is-phone .calm-ph-body{padding:14px 16px 96px;gap:14px}.calm.is-phone .calm-ph-h1{font-size:var(--type-card-title)}.calm.is-phone .calm-ph-tagline{font-size:var(--type-caption)}.calm.is-phone .calm-ph-cards{grid-template-columns:minmax(0,1fr)}.calm.is-phone .calm-ph-card{border-radius:16px}.calm.is-phone .calm-ph-search{flex-basis:220px}.calm.is-phone .calm-ph-toggle{min-height:44px}.calm.is-phone .calm-ph-more{width:44px;height:44px;margin:-8px -10px 0 0}.calm.is-phone .calm-ph-menu{top:40px;right:-4px}.calm.is-phone .calm-ph-menu .calm-menuitem{min-height:44px}.calm.is-phone .calm-ph-stats{gap:8px}.calm.is-phone .calm-pop-plans{width:auto;max-height:calc(100vh - 300px)}.calm.is-phone .calm-sw-foot{flex-wrap:wrap}.calm.is-phone .calm-sw-foot .calm-link{white-space:nowrap}.calm.is-phone .calm-sw-row{min-height:44px}.calm{--calm-skipped-text: color-mix(in srgb, var(--color-os-blue-soft-text) 40%, var(--color-os-ink-secondary));--calm-status-skipped: color-mix(in srgb, var(--calm-skipped-text) 40%, var(--color-os-surface))}.calm .calm-card.is-skipped,.calm .calm-pcard.is-skipped{border-color:var(--calm-status-skipped)}.calm .calm-dur.is-skippedtag{color:var(--calm-skipped-text);font-weight:700}.calm .calm-actionrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px}.calm .calm-actionbtn{min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid var(--color-os-border);border-radius:14px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-body);font-weight:700}.calm .calm-actionbtn:hover{background:var(--color-os-page-bg)}.calm .calm-skipnote{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:14px;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-skipnote-title{font-size:var(--type-body);font-weight:700}.calm .calm-skipnote-body{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-slate-soft-text)}.calm .calm-skipdialog{width:440px;display:flex;flex-direction:column;gap:16px}.calm .calm-skipdialog-title{margin-top:0;font-size:var(--type-card-title)}.calm .calm-skipdialog-body{margin-top:-10px}.calm .calm-skipopts{display:flex;gap:10px}.calm .calm-skipopts .calm-optpill{flex:1}.calm .calm-skipinput{width:100%;box-sizing:border-box}.calm .calm-skipactions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.calm .calm-skipcancel{height:44px;padding:0 20px;border:0;border-radius:999px;background:transparent;color:var(--color-os-ink-secondary);font-size:var(--type-body);font-weight:700}.calm .calm-skipgo{justify-content:center}.calm.is-phone .calm-skipdialog{gap:16px}.calm.is-phone .calm-skipopts .calm-optpill{min-height:48px}.calm.is-phone .calm-skipactions{flex-direction:column-reverse;gap:6px}.calm.is-phone .calm-skipgo{height:48px;width:100%}.calm.is-phone .calm-skipcancel{height:44px}.calm .calm-histbox{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:14px;background:var(--color-os-page-bg)}.calm .calm-histbox-icon{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--color-os-blue-soft-bg);color:var(--color-os-blue-soft-text)}.calm .calm-histbox-title{font-size:var(--type-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-os-ink-secondary)}.calm .calm-histbox-orig{margin-top:4px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-histbox-row{margin-top:6px}.calm .calm-histbox-move{font-size:var(--type-body);font-weight:700}.calm .calm-histbox-line{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-al-top{position:relative;z-index:var(--calm-z-band);background:var(--color-os-surface);border-bottom:1px solid var(--color-os-border)}.calm .calm-al-topline{min-height:76px;box-sizing:border-box;display:flex;align-items:center;gap:14px;padding:0 28px}.calm .calm-al-tagline{flex:1;min-width:0;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-al-actions{display:flex;align-items:center;gap:12px;margin-left:auto;min-width:0}.calm .calm-al-actions .calm-search-input{width:320px;max-width:100%}.calm .calm-al-actions .calm-pop-search{left:0;right:auto;width:320px}.calm .calm-al-tabs{padding:0 14px;overflow-x:auto;scrollbar-width:none}.calm .calm-al-tabs::-webkit-scrollbar{display:none}.calm .calm-al-tabs .calm-tab{flex:none;gap:6px;white-space:nowrap}.calm .calm-tab-count.is-alert{color:var(--color-os-danger-text)}.calm .calm-al-addhost{position:relative;display:flex;flex:none}.calm .calm-al-add{width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--color-os-pink);color:var(--color-os-on-color);display:grid;place-items:center}.calm .calm-al-addmenu{right:0;top:48px;width:210px;z-index:70}.calm .calm-al-addmenu .calm-menuitem{font-size:var(--type-body);padding:10px 12px;gap:12px}.calm .calm-al-body{box-sizing:border-box;padding:16px 28px 48px;display:flex;flex-direction:column;gap:16px}.calm .calm-al-body>*{width:100%;max-width:1120px;margin-inline:auto;box-sizing:border-box}.calm .calm-al-toolbar{display:flex;align-items:center;gap:12px;min-width:0}.calm .calm-al-toolbar .calm-pillscroll{flex:0 1 auto}.calm .calm-al-hint{font-size:var(--type-caption);color:var(--color-os-ink-secondary);text-align:right}.calm .calm-al-filterchip{flex:none;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 8px 0 14px;border:1px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-caption);font-weight:700}.calm .calm-al-filterchip:hover{background:var(--color-os-page-bg)}.calm .ui-card.calm-al-panel{margin:0 auto;padding:8px 12px 12px}.calm .calm-al-empty{padding:56px 16px;text-align:center;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .ui-card.calm-al-empty{padding:56px 16px}.calm .calm-al-group{display:flex;align-items:center;gap:12px;padding:18px 16px 8px}.calm .calm-al-grouppill{display:inline-flex;align-items:center;gap:8px;height:24px;padding:0 12px;border-radius:999px;background:var(--color-os-ink);color:var(--color-os-surface);font-size:var(--type-caption);font-weight:700}.calm .calm-al-groupcount{font-weight:500;opacity:.75}.calm .calm-al-grouprule{flex:1;height:1px;background:var(--color-os-ink);opacity:.18}.calm .calm-al-list{margin:0;padding:0;list-style:none}.calm .calm-al-item{position:relative}.calm .calm-al-item.has-menu,.calm .calm-al-card.has-menu{z-index:var(--calm-z-menu)}.calm .calm-al-row{display:grid;grid-template-columns:28px 200px minmax(0,1fr) 104px 90px 124px 36px 36px;align-items:center;gap:0 14px;padding:12px 16px;border-radius:14px;transition:background .1s}.calm .calm-al-row>*{min-width:0}.calm .calm-al-row:hover{background:var(--color-os-page-bg)}.calm .calm-al-row.is-race{grid-template-columns:minmax(0,210px) minmax(0,1fr) 130px 90px 110px 190px 36px}.calm .calm-al-racehead{padding:12px 16px 0;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-al-racehead:hover{background:transparent}.calm .calm-al-tick{width:22px;height:22px;padding:0;flex:none;border-radius:7px;box-sizing:border-box;display:grid;place-items:center;border:1.5px solid var(--calm-dash);background:var(--color-os-surface);color:var(--color-os-surface)}.calm .calm-al-tick.is-on{border-color:var(--color-os-ink);background:var(--color-os-ink);color:var(--color-os-surface)}.calm .calm-al-who{display:flex;align-items:center;gap:10px;min-width:0}.calm .calm-al-avatar{flex:none;border-radius:50%;display:grid;place-items:center;font-size:var(--type-caption);font-weight:700;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-al-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--type-body);font-weight:700;color:var(--color-os-ink);text-decoration:none}.calm .calm-al-name:hover{text-decoration:underline;text-underline-offset:3px}.calm .calm-al-main{display:flex;flex-direction:column;gap:2px;min-width:0}.calm .calm-al-titleline{display:flex;align-items:center;gap:8px;min-width:0}.calm .calm-al-title{min-width:0;font-size:var(--type-body);font-weight:700;line-height:1.3;overflow-wrap:anywhere}.calm .calm-al-title.is-done{text-decoration:line-through;color:var(--color-os-ink-secondary)}.calm .calm-al-titleline .calm-pill{flex:none}.calm .calm-al-detail{font-size:var(--type-caption);color:var(--color-os-ink-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-al-duecell{display:flex;flex-direction:column;gap:2px;min-width:0}.calm .calm-al-due{font-size:var(--type-caption);font-weight:700;white-space:nowrap;color:var(--color-os-ink-secondary)}.calm .calm-al-due.is-today{color:var(--chip-pink-text)}.calm .calm-al-due.is-now{color:var(--chip-amber-text)}.calm .calm-al-overdue{font-size:var(--type-caption);font-weight:500;color:var(--color-os-danger-text);white-space:nowrap}.calm .calm-al-overdue.is-quiet{color:var(--color-os-ink-secondary)}.calm .calm-al-dots{display:flex;padding-left:6px}.calm .calm-al-dot{width:26px;height:26px;margin-left:-6px;box-sizing:border-box;border:2px solid var(--color-os-surface);border-radius:50%;display:grid;place-items:center;font-size:var(--type-caption);font-weight:700}.calm .calm-al-dot.is-pink{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-al-dot.is-green{background:var(--color-os-green-soft-bg);color:var(--chip-green-text)}.calm .calm-al-dot.is-blue{background:var(--color-os-blue-soft-bg);color:var(--color-os-blue-soft-text)}.calm .calm-al-dot.is-small{width:22px;height:22px;margin:0;border:0}.calm .calm-al-msg{height:40px;padding:0 16px 0 12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;box-sizing:border-box;border:1px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-body);font-weight:700}.calm .calm-al-msg:hover{background:var(--color-os-page-bg)}.calm .calm-al-msg .material-symbols-rounded{color:var(--color-os-ink-secondary)}.calm .calm-al-iconbtn{width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-al-iconbtn:hover,.calm .calm-al-iconbtn[aria-expanded=true]{background:var(--color-os-slate-soft-bg);color:var(--color-os-ink)}.calm .calm-al-menuhost{position:relative;display:flex;justify-content:flex-end}.calm .calm-al-menu{right:0;top:40px;width:190px}.calm .calm-al-menu .calm-menuitem{font-size:var(--type-body);padding:10px 12px;gap:12px}.calm .calm-al-race{font-size:var(--type-body);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-al-dist{font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-al-racecell{min-width:0;display:flex;flex-direction:column}.calm .calm-al-dist.is-inline{display:none;font-size:var(--type-caption)}.calm .calm-al-train{display:flex;align-items:center;gap:10px;min-width:0}.calm .calm-al-trainbar{flex:1;height:8px;border-radius:999px;overflow:hidden;background:var(--color-os-slate-soft-bg)}.calm .calm-al-trainfill{display:block;height:100%;border-radius:999px}.calm .calm-al-trainfill.is-ok{background:var(--color-os-pink)}.calm .calm-al-trainfill.is-watch{background:var(--calm-bar-behind)}.calm .calm-al-trainfill.is-low{background:var(--color-os-danger-text)}.calm .calm-al-trainpct{width:40px;text-align:right;font-size:var(--type-caption);font-weight:700}.calm .calm-al-trainpct.is-watch{color:var(--chip-amber-text)}.calm .calm-al-trainpct.is-low{color:var(--color-os-danger-text)}.calm .calm-al-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.calm .ui-card.calm-al-stat{margin:0;padding:16px 18px;border-radius:16px}.calm .calm-al-stat-title{font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-al-stat-total{display:flex;align-items:baseline;gap:6px;margin-top:4px}.calm .calm-al-stat-n{font-size:var(--type-data);font-weight:900;line-height:1.1}.calm .calm-al-stat-unit{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-al-stat-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:12px;text-align:left}.calm .calm-al-stat-items>div{min-width:0}.calm .calm-al-stat-count{font-size:var(--type-card-title);font-weight:700;line-height:1.2}.calm .calm-al-stat-count.is-zero{color:var(--color-os-ink-secondary);font-weight:500}.calm .calm-al-stat-label{margin-top:1px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-al-peek{margin:2px 16px 12px;padding:16px;border-radius:14px;background:var(--color-os-page-bg)}.calm .calm-al-peek-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.calm .calm-al-peek-title{font-size:var(--type-body);font-weight:700}.calm .calm-al-peek-sum{flex:1;min-width:0;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-al-small{flex:none;height:32px;padding:0 14px;border:1px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-caption);font-weight:700}.calm .calm-al-small:hover{background:var(--color-os-page-bg)}.calm .calm-al-weekgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calm .calm-al-daycol{display:flex;flex-direction:column;gap:4px;min-width:0}.calm .calm-al-dow{padding-left:4px;font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-al-rest{padding:0 4px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-drawer.is-alert{width:540px}.calm .calm-drawer.is-alert .ui-date-field{width:100%}.calm .calm-al-pickwrap{position:relative}.calm .calm-al-pickbtn{width:100%;text-align:left;color:var(--color-os-ink);font-family:inherit;font-weight:500}.calm .calm-al-pickbtn[aria-expanded=true]{border-color:var(--color-os-ink)}.calm .calm-al-pickbtn[aria-invalid=true]{border-color:var(--color-os-danger-text)}.calm .calm-al-pickicon{color:var(--color-os-ink-secondary)}.calm .calm-al-pickname{flex:1;min-width:0}.calm .calm-al-pickname.is-empty{color:var(--color-os-ink-secondary);font-weight:400}.calm .calm-al-picklist{left:0;right:0;top:52px;max-height:240px;overflow-y:auto}.calm .calm-al-pickitem{font-size:var(--type-body);padding:8px 10px;gap:12px}.calm .calm-al-pickitem.is-current{font-weight:700;background:var(--color-os-page-bg)}.calm .calm-al-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.calm .ui-field>.calm-al-chips:first-of-type{margin-top:0}.calm .calm-al-chip{height:34px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;box-sizing:border-box;flex:none;white-space:nowrap;border:1.5px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-caption);font-weight:700}.calm .calm-al-chip.is-on{border-color:var(--color-os-ink);background:var(--color-os-page-bg)}.calm .calm-al-info{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary);font-size:var(--type-caption);line-height:1.4}.calm .calm-doc-textarea.is-note{min-height:120px}.calm.is-medium .calm-al-row{grid-template-columns:28px 160px minmax(0,1fr) 96px 84px 40px 36px 36px;gap:0 10px;padding-inline:10px}.calm.is-medium .calm-al-row.is-race{grid-template-columns:minmax(0,132px) minmax(0,1fr) 96px 76px 130px 36px}.calm.is-medium .calm-al-row.is-race .is-col{display:none}.calm.is-medium .calm-al-dist.is-inline{display:block}.calm.is-medium .calm-al-race{white-space:normal;line-height:1.25}.calm.is-medium .calm-al-racehead>span:nth-child(6){white-space:nowrap}.calm.is-medium .calm-al-train{gap:6px}.calm.is-medium .calm-al-trainpct{width:34px}.calm.is-medium .calm-al-msg{width:40px;padding:0}.calm.is-medium .calm-al-msg-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.calm.is-medium .calm-al-topline,.calm.is-medium .calm-al-body{padding-inline:20px}.calm.is-medium .calm-al-hint{display:none}.calm.is-medium .calm-al-weekgrid{gap:6px}.calm.is-medium .calm-al-stat-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calm.is-phone .calm-al-topline{min-height:60px;padding:0 16px;gap:8px}.calm.is-phone .calm-al-actions{flex:1;margin-left:0;gap:8px}.calm.is-phone .calm-al-actions .calm-search{flex:1;min-width:0}.calm.is-phone .calm-al-actions .calm-search-input{width:100%;height:40px}.calm.is-phone .calm-al-actions .calm-kbd{display:none}.calm.is-phone .calm-al-actions .calm-pop-search{left:0;right:0;width:auto}.calm.is-phone .calm-al-add{width:44px;height:44px}.calm.is-phone .calm-al-addmenu{top:52px}.calm.is-phone .calm-al-tabs{padding:0 6px}.calm.is-phone .calm-al-body{padding:14px 16px 96px;gap:12px}.calm.is-phone .calm-al-toolbar{overflow-x:auto;scrollbar-width:none}.calm.is-phone .calm-al-toolbar::-webkit-scrollbar{display:none}.calm.is-phone .calm-al-toolbar .calm-pillscroll{overflow:visible;flex:none}.calm.is-phone .calm-al-stack{display:flex;flex-direction:column;gap:12px}.calm.is-phone .calm-al-stack>section{display:flex;flex-direction:column;gap:12px}.calm.is-phone .calm-al-group{padding:6px 2px 0}.calm.is-phone .calm-al-list{display:flex;flex-direction:column;gap:12px}.calm.is-phone .calm-al-empty{padding:48px 16px}.calm.is-phone .calm-al-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.calm.is-phone .calm-al-stat-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calm .calm-al-card{box-sizing:border-box;display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:16px;background:var(--color-os-surface);box-shadow:var(--color-os-shadow-card)}.calm .calm-al-card-top{display:flex;align-items:flex-start;gap:12px}.calm .calm-al-card-top .calm-al-tick{margin-top:1px}.calm .calm-al-card-main{flex:1;min-width:0}.calm .calm-al-card-main .calm-al-detail{margin-top:2px;white-space:normal;line-height:1.4}.calm .calm-al-card-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-al-card-who{display:flex;align-items:center;gap:8px;padding-left:34px}.calm .calm-al-card-who .calm-al-name{flex:1}.calm .calm-al-card-who .calm-al-due.is-overdue{color:var(--color-os-danger-text)}.calm .calm-al-card-foot{display:flex;align-items:center;gap:10px;padding-left:34px}.calm .calm-al-card-foot .calm-al-msg{height:44px}.calm .calm-al-card-when{display:flex;align-items:center;gap:8px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-al-when-date{font-weight:700;color:var(--color-os-ink)}.calm .calm-al-card-train{display:flex;align-items:center;gap:10px}.calm .calm-al-card-train .calm-al-train{flex:1}.calm .calm-al-train-label{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-al-card .calm-al-iconbtn{width:44px;height:44px;margin:-4px}.calm .calm-al-card-top .calm-al-iconbtn{margin:-8px -8px 0 0}.calm .calm-al-card .calm-al-menu{top:40px}.calm .calm-al-card>.calm-al-peek{margin:0;padding:12px}.calm .calm-al-peek.is-phone{display:flex;flex-direction:column;gap:8px}.calm .calm-al-peek.is-phone .calm-al-peek-sum{flex:none;color:var(--color-os-ink-secondary)}.calm .calm-al-peek.is-phone .calm-al-peek-sum strong{color:var(--color-os-ink)}.calm .calm-al-peek.is-phone .calm-pday-head{position:static;padding:4px 0 0}.calm.is-phone .calm-al-iconbtn{width:44px;height:44px}.calm.is-phone .calm-al-chip,.calm.is-phone .calm-al-pickitem{min-height:44px}.calm.is-phone .calm-al-filterchip{height:44px}.calm .calm-dialog.calm-cal{width:380px}.calm .calm-cal-title{margin-top:0}.calm .calm-cal-sub{margin-top:2px}.calm .calm-cal-legend{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-cal-swatch{width:14px;height:14px;border-radius:50%;border:1.5px dashed var(--calm-dash)}.calm.is-phone .calm-scrim.is-center .calm-dialog.calm-cal{width:100%}.calm .calm-lbcard.is-skipped,.calm .calm-lbcard.is-moved,.calm .calm-lbrow.is-skipped,.calm .calm-lbrow.is-moved{background:transparent;box-shadow:none;cursor:default}.calm .calm-lbcard.is-skipped,.calm .calm-lbrow.is-skipped{border:1.5px dashed var(--calm-status-skipped)}.calm .calm-lbcard.is-moved,.calm .calm-lbrow.is-moved{border:1.5px dashed var(--calm-dash)}.calm .calm-lbcard.is-missed,.calm .calm-lbrow.is-missed{border-color:var(--calm-status-missed)}.calm .calm-lbcard.is-skipped .calm-sport,.calm .calm-lbcard.is-moved .calm-sport,.calm .calm-lbrow.is-skipped .calm-sport,.calm .calm-lbrow.is-moved .calm-sport{opacity:.55}.calm .calm-lbcard.is-missed .calm-pill,.calm .calm-lbrow.is-missed .calm-pill{border:0;background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-lbcard.is-skipped .calm-pill,.calm .calm-lbrow.is-skipped .calm-pill{border:0;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-lbcard.is-skipped .calm-lb-planned{color:var(--calm-skipped-text);font-weight:700}.calm .calm-ap-bell{position:relative;flex:none;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-ap-bell:hover,.calm .calm-ap-bell[aria-expanded=true]{background:var(--color-os-slate-soft-bg);color:var(--color-os-ink)}.calm .calm-ap-badge{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;border-radius:999px;display:grid;place-items:center;background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text);box-shadow:0 0 0 2px var(--color-os-surface);font-size:var(--type-caption);font-weight:700;line-height:1}.calm .calm-band .calm-al-addhost{margin-left:-4px}.calm .calm-drawer.is-panel{width:480px}.calm .calm-ap-name{margin-top:2px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-ap-section{display:flex;flex-direction:column;gap:4px}.calm .calm-ap-sechead{display:flex;align-items:center;gap:8px;min-height:36px}.calm .calm-ap-h{flex:1;margin:0;font-size:var(--type-body);font-weight:700}.calm .calm-ap-count{margin-left:4px;font-weight:400;color:var(--color-os-ink-secondary)}.calm .calm-ap-addbtn{flex:none;height:36px;padding:0 14px 0 10px;border:0;border-radius:999px;background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text);display:inline-flex;align-items:center;gap:4px;font-size:var(--type-caption);font-weight:700}.calm .calm-ap-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}.calm .calm-ap-row{display:flex;align-items:flex-start;gap:12px;padding:12px 0}.calm .calm-ap-row+.calm-ap-row,.calm .calm-ap-note+.calm-ap-note{border-top:1px solid var(--color-os-border)}.calm .calm-ap-row .calm-al-tick{margin-top:1px}.calm .calm-ap-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.calm .calm-ap-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ap-meta .calm-al-dots{padding-left:0}.calm .calm-ap-detail.calm-al-detail{white-space:normal;line-height:1.4}.calm .calm-ap-chat{flex:none;width:36px;height:36px;padding:0;border:1px solid var(--color-os-border);border-radius:50%;background:var(--color-os-surface);color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-ap-chat:hover{background:var(--color-os-page-bg);color:var(--color-os-ink)}.calm .calm-ap-empty{padding:8px 0;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-ap-note{display:flex;align-items:flex-start;gap:12px;padding:12px 0}.calm .calm-ap-pin{flex:none;margin-top:1px;color:var(--color-os-ink-secondary)}.calm .calm-ap-pin.is-pinned{color:var(--chip-pink-text)}.calm .calm-ap-notetext{font-size:var(--type-body);line-height:1.45}.calm.is-phone .calm-band-phone .calm-ap-bell,.calm.is-phone .calm-band-phone .calm-al-add{width:44px;height:44px}.calm.is-phone .calm-band-phone .calm-al-addhost{margin-left:0;margin-right:10px}.calm.is-phone .calm-band-phone .calm-al-addmenu{right:0}.calm.is-phone .calm-ap-chat{width:44px;height:44px;margin:-4px 0}.calm.is-phone .calm-ap-addbtn{height:44px}.calm.is-phone .calm-ap-row .calm-al-tick{margin-top:3px}.calm.is-phone .calm-drawer.is-panel{width:100%}.calm .calm-quickadd-host{display:flex;flex:none}.calm.calm-quickadd{min-height:0;display:flex;align-items:center}.calm.calm-quickadd.is-phone{display:block}.calm.is-phone .calm-libhead .calm-al-add{width:44px;height:44px}.calm.is-phone .calm-libhead .calm-al-addmenu{top:52px}.calm .calm-rowmenu{position:relative;flex:none;display:flex}.calm .calm-rowmenu-pop{right:0;top:40px;width:200px;z-index:70}.calm .calm-rowmenu-pop .calm-menuitem{font-size:var(--type-body);padding:10px 12px;gap:12px}.calm .calm-ap-row .calm-al-iconbtn,.calm .calm-ap-note .calm-al-iconbtn{margin:-2px -6px 0 -4px}.calm.is-phone .calm-rowmenu-pop{top:46px}.calm.is-phone .calm-ap-row .calm-al-iconbtn,.calm.is-phone .calm-ap-note .calm-al-iconbtn{width:44px;height:44px;margin:-6px -10px 0 -6px}.calm.is-phone .calm-ap-chat{margin:-4px 0 0}.calm .calm-sset-host{display:contents}.calm .calm-filterbtn.is-open{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text);box-shadow:inset 0 0 0 1px var(--color-os-pink)}.calm .calm-sset-alone .calm-filterbtn{width:40px;height:40px;border-radius:50%}.calm .calm-sset-alone .calm-sset-panel{top:calc(100% + 8px);right:0}.calm .calm-sset-panel{position:absolute;top:48px;right:0;z-index:46;width:320px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:16px;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:14px;box-shadow:var(--calm-shadow-pop)}.calm .calm-sset-body{display:flex;flex-direction:column;gap:16px}.calm .calm-sset-field{display:flex;flex-direction:column;gap:6px}.calm .calm-sset-label{font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-sset-select{width:100%}.calm .calm-sset-select select{width:100%;min-height:40px;color:var(--color-os-ink)}.calm .calm-sset-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}.calm .calm-sset-row .calm-sset-label{font-size:var(--type-body);font-weight:500;color:var(--color-os-ink)}.calm .calm-sset-keyrow{display:flex;align-items:center;gap:8px}.calm .calm-sset-key{flex:1;min-width:0;height:40px;padding:0 14px;box-sizing:border-box;border:1px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-body);font-weight:500;text-align:left}.calm .calm-sset-key.is-listening{border-color:var(--color-os-pink);box-shadow:inset 0 0 0 1px var(--color-os-pink);background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-sset-clear{flex:none;height:40px;padding:0 12px;border:0;background:transparent;color:var(--chip-pink-text);font-size:var(--type-caption);font-weight:700;border-radius:999px}.calm .calm-sset-clear:hover{background:var(--color-os-pink-soft-bg)}.calm .calm-sset-help{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-cancelled{flex:none;border-radius:999px;padding:1px 8px;font-size:var(--type-caption);font-weight:700;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-pop-search{max-height:360px;overflow-y:auto}.calm.is-phone .calm-filterbtn{width:44px;min-width:44px;flex:none;min-height:44px}.calm.is-phone .calm-sset-select select,.calm.is-phone .calm-sset-key,.calm.is-phone .calm-sset-clear{min-height:44px;height:44px}.calm.is-phone .calm-sset-row{min-height:44px}.calm.is-phone .calm-sset-row .calm-switch:after{content:"";position:absolute;inset:-12px -4px}.calm.calm-alertsbar{gap:8px}.calm .calm-ath-titleblock{flex:1;min-width:0}.calm .calm-ath-title{margin:0;font-size:var(--type-heading);font-weight:700;line-height:1.15}.calm .calm-ath-tagline{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ath-body{box-sizing:border-box;padding:16px 28px 48px;display:flex;flex-direction:column;gap:16px}.calm .calm-ath-body>*{width:100%;max-width:1400px;margin-inline:auto;box-sizing:border-box}.calm .calm-ath-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.calm .calm-ath-filter{width:260px;cursor:text}.calm .calm-ath-filter:focus-within{border-color:var(--color-os-ink)}.calm .calm-ath-filter input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:var(--type-body);color:var(--color-os-ink)}.calm .calm-ath-filter input::placeholder{color:var(--color-os-ink-secondary)}.calm .calm-ath-tools .calm-fieldpill-label,.calm .calm-ath-phonerow .calm-fieldpill-label,.calm .calm-ath-tools .calm-muted-icon,.calm .calm-ath-phonerow .calm-muted-icon,.calm .calm-ath-filter .calm-muted-icon{color:var(--color-os-ink-secondary)}.calm .calm-ath-mode button{display:inline-flex;align-items:center;gap:6px;font-weight:700;white-space:nowrap}.calm .calm-ath-weeknav{display:flex;align-items:center;gap:2px;flex:none;margin-left:auto}.calm .calm-ath-weekarrow{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-ath-weekarrow:hover{background:var(--color-os-surface);color:var(--color-os-ink)}.calm .calm-ath-weekrange{padding:0 6px;font-size:var(--type-body);font-weight:700;white-space:nowrap}.calm .calm-ath-thisweek{margin-left:6px;height:32px;padding:0 14px;border:1px solid var(--color-os-border);border-radius:999px;background:var(--color-os-surface);color:var(--color-os-ink);font-size:var(--type-caption);font-weight:700;white-space:nowrap}.calm .calm-ath-thisweek:hover:not(:disabled){border-color:var(--color-os-ink-muted)}.calm .calm-ath-thisweek:disabled{opacity:.55;cursor:default}.calm .calm-ath-av{flex:none;border-radius:50%;display:grid;place-items:center;font-size:var(--type-caption);font-weight:700;background:var(--calm-sport-bg);color:var(--calm-sport-fg)}.calm .calm-ath-dots{display:flex;justify-content:space-between;align-items:center;gap:6px;width:100%}.calm .calm-ath-day{display:flex;flex-direction:column;align-items:center;gap:5px}.calm .calm-ath-dot{display:block;flex:none;width:12px;height:12px;border-radius:50%;box-sizing:border-box}.calm .calm-ath-dot.is-key{width:10px;height:10px}.calm .calm-ath-dot.is-done{background:var(--chip-green-text)}.calm .calm-ath-dot.is-shorter{background:var(--chip-amber-text)}.calm .calm-ath-dot.is-missed{background:var(--color-os-danger-text)}.calm .calm-ath-dot.is-today{border:2px solid var(--color-os-pink)}.calm .calm-ath-dot.is-upcoming{border:1.5px solid var(--calm-dash)}.calm .calm-ath-dot.is-skipped{border:1.5px dashed var(--calm-skipped-text)}.calm .calm-ath-dot.is-moved{border:1.5px dashed var(--calm-dash)}.calm .calm-ath-dot.is-rest{background:var(--calm-dash);transform:scale(.5)}.calm .calm-ath-dot.is-rest.is-key{display:none}.calm .calm-ath-letter{font-size:var(--type-caption);font-weight:500;color:var(--color-os-ink-secondary)}.calm .calm-ath-letter.is-today{font-weight:700;color:var(--color-os-ink)}.calm .calm-ath-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.calm .calm-ath-who.is-row{flex-direction:row;align-items:center;gap:12px}.calm .calm-ath-name{min-width:0;display:flex;align-items:center;gap:8px;font-size:var(--type-body);font-weight:700}.calm .calm-ath-name .calm-ellipsis{flex:0 1 auto}.calm .calm-ath-sub{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ath-fieldlabel{display:block;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ath-fieldvalue{display:block;margin-top:2px;font-size:var(--type-body);font-weight:700}.calm .calm-ath-weeknum{font-size:var(--type-caption);font-weight:700}.calm .calm-ath-heads{display:flex;align-items:center;gap:8px;min-width:0;font-size:var(--type-caption);font-weight:500;line-height:1.35}.calm .calm-ath-heads .material-symbols-rounded{flex:none}.calm .calm-ath-heads.is-warn{color:var(--chip-amber-text)}.calm .calm-ath-heads.is-info,.calm .calm-ath-heads.is-ok{color:var(--color-os-slate-soft-text)}.calm .calm-ath-headtext{min-width:0}.calm .calm-ath-more{flex:none;font-weight:700}.calm .calm-ath-note{display:flex;align-items:flex-start;gap:8px;font-size:var(--type-caption);line-height:1.35;text-align:left;color:var(--color-os-ink-secondary)}.calm .calm-ath-note .material-symbols-rounded,.calm .calm-ath-head .calm-pill,.calm .calm-ath-dayhead .calm-pill{flex:none}.calm .calm-ath-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}.calm .calm-ath-card{box-sizing:border-box;width:100%;display:flex;flex-direction:column;gap:16px;padding:18px;border:0;border-radius:16px;background:var(--color-os-surface);color:var(--color-os-ink);text-align:left;font:inherit;cursor:pointer;box-shadow:var(--color-os-shadow-card);transition:transform .15s,box-shadow .15s}.calm .calm-ath-card:hover{transform:translateY(-2px);box-shadow:var(--calm-shadow-pop)}.calm .calm-ath-card:focus-visible,.calm .calm-ath-listrow:focus-visible,.calm .calm-ath-calwho:focus-visible,.calm .calm-ath-dayhead:focus-visible{outline:2px solid var(--color-os-ink);outline-offset:2px}@media(prefers-reduced-motion:reduce){.calm .calm-ath-card{transition:none}.calm .calm-ath-card:hover{transform:none}}.calm .calm-ath-head{display:flex;align-items:center;gap:12px;width:100%}.calm .calm-ath-weekblock{display:block;width:100%}.calm .calm-ath-weektop{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.calm .calm-ath-pair{display:flex;gap:12px;width:100%}.calm .calm-ath-pair>span{flex:1;min-width:0}.calm .calm-ath-card .calm-ath-heads{padding:8px 10px;border-radius:10px}.calm .calm-ath-card .calm-ath-heads.is-warn{background:var(--color-os-amber-soft-bg)}.calm .calm-ath-card .calm-ath-heads.is-info,.calm .calm-ath-card .calm-ath-heads.is-ok{background:var(--color-os-slate-soft-bg)}.calm .calm-ath-card.is-compact{gap:12px;padding:14px 16px}.calm .calm-ath-weekrow{display:flex;align-items:center;gap:16px;width:100%}.calm .calm-ath-card.is-compact .calm-ath-dots{flex:none;width:176px}.calm .calm-ath-weekrow .calm-ath-weeknum{flex:1;text-align:right}.calm .calm-ath-panel{padding:8px 12px 12px;overflow-x:auto}.calm .calm-ath-listrow{box-sizing:border-box;min-width:960px;width:100%;display:grid;grid-template-columns:minmax(200px,1.3fr) 130px 170px 100px minmax(130px,1fr) minmax(180px,1.3fr) 24px;align-items:center;column-gap:16px;padding:12px 16px;border:0;border-radius:14px;background:transparent;color:var(--color-os-ink);text-align:left;font:inherit;cursor:pointer}.calm .calm-ath-listrow:hover{background:var(--color-os-page-bg)}.calm .calm-ath-listrow.is-head{padding:14px 16px 10px;font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-secondary);cursor:default}.calm .calm-ath-listrow.is-head:hover{background:transparent}.calm .calm-ath-listrow .calm-ath-dots{width:150px}.calm .calm-ath-headcell{min-width:0}.calm .calm-ath-chev{color:var(--color-os-ink-secondary)}.calm .calm-ath-listnotes{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;padding:10px 0 0 52px}.calm .calm-ath-cal{padding:8px 8px 12px}.calm .calm-ath-calrow{min-width:1040px;display:grid;grid-template-columns:200px repeat(7,minmax(120px,1fr));align-items:stretch;border-radius:12px}.calm .calm-ath-calrow:not(.is-head):hover{background:var(--color-os-page-bg)}.calm .calm-ath-calhead{display:flex;align-items:center;gap:6px;padding:12px 10px;font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-secondary)}.calm .calm-ath-calhead.is-today{color:var(--color-os-ink);background:var(--color-os-pink-soft-bg)}.calm .calm-ath-todaydot{width:7px;height:7px;border-radius:50%;background:var(--color-os-pink)}.calm .calm-ath-calwho{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.calm .calm-ath-pillrow{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:3px}.calm .calm-ath-cell{box-sizing:border-box;min-height:84px;display:flex;flex-direction:column;gap:6px;padding:8px}.calm .calm-ath-cell.is-today{background:var(--color-os-pink-soft-bg)}.calm .calm-ath-chip{box-sizing:border-box;min-width:0;display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--color-os-border);border-radius:10px;background:var(--color-os-surface);color:var(--color-os-ink)}.calm .calm-ath-chip.is-done{background:var(--color-os-green-soft-bg);border-color:var(--color-os-green-soft-bg)}.calm .calm-ath-chip.is-shorter{background:var(--color-os-amber-soft-bg);border-color:var(--color-os-amber-soft-bg)}.calm .calm-ath-chip.is-missed{background:color-mix(in srgb,var(--color-os-danger-text) 10%,var(--color-os-surface));border-color:color-mix(in srgb,var(--color-os-danger-text) 10%,var(--color-os-surface))}.calm .calm-ath-chip.is-today{padding:5px 7px;border:2px solid var(--color-os-pink)}.calm .calm-ath-chip.is-skipped{background:transparent;border:1.5px dashed var(--calm-status-skipped)}.calm .calm-ath-chip.is-moved{background:transparent;border:1.5px dashed var(--calm-dash)}.calm .calm-ath-chip.is-skipped .calm-sport{opacity:.55}.calm .calm-ath-chiptext{min-width:0;display:flex;flex-direction:column}.calm .calm-ath-chipname{font-size:var(--type-caption);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-ath-chipmeta{font-size:var(--type-caption);color:var(--color-os-ink-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-ath-chip.is-skipped .calm-ath-chipmeta{color:var(--calm-skipped-text);font-weight:700}.calm .calm-ath-legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 18px;margin-top:6px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ath-legenditem{display:inline-flex;align-items:center;gap:6px}.calm .calm-ath-keybox{width:12px;height:12px;border-radius:4px;box-sizing:border-box;border:1px solid var(--color-os-border);background:var(--color-os-surface)}.calm .calm-ath-keybox.is-done{background:var(--color-os-green-soft-bg);border-color:var(--color-os-green-soft-bg)}.calm .calm-ath-keybox.is-shorter{background:var(--color-os-amber-soft-bg);border-color:var(--color-os-amber-soft-bg)}.calm .calm-ath-keybox.is-missed{background:color-mix(in srgb,var(--color-os-danger-text) 10%,var(--color-os-surface));border-color:color-mix(in srgb,var(--color-os-danger-text) 10%,var(--color-os-surface))}.calm .calm-ath-keybox.is-skipped{background:transparent;border:1.5px dashed var(--calm-status-skipped)}.calm .calm-ath-keybox.is-moved{background:transparent;border:1.5px dashed var(--calm-dash)}.calm .calm-ath-phonerow{display:flex;align-items:center;gap:10px}.calm .calm-ath-daytabs{display:flex;gap:2px;padding:4px;border-radius:16px;background:var(--color-os-surface);box-shadow:var(--color-os-shadow-card)}.calm .calm-ath-daytab{flex:1;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 0;border:0;border-radius:14px;background:transparent;color:var(--color-os-ink-secondary)}.calm .calm-ath-daytab.is-on{background:var(--color-os-ink);color:var(--color-os-surface)}.calm .calm-ath-daytab-top{font-size:var(--type-caption);font-weight:500}.calm .calm-ath-daytab-num{font-size:var(--type-body);font-weight:700}.calm .calm-ath-daycard{box-sizing:border-box;display:flex;flex-direction:column;gap:10px;padding:12px 14px}.calm .calm-ath-dayhead{width:100%;display:flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.calm .calm-ath-dayhead .calm-ath-name{flex:1}.calm .calm-ath-rest{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-ath-fab{position:fixed;right:16px;bottom:80px;z-index:55}.calm .calm-ath-fab .ui-btn{height:52px;box-shadow:var(--calm-shadow-pop)}.calm.is-phone .calm-ath-body{padding:14px 16px 160px;gap:12px}.calm.is-phone .calm-ath-body>*{max-width:none}.calm.is-phone .calm-ath-filter{width:100%;height:44px}.calm.is-phone .calm-ath-phonerow .calm-fieldpill,.calm.is-phone .calm-ath-mode button{height:44px}.calm.is-phone .calm-ath-phonerow .calm-iconbtn-flat{width:44px;height:44px}.calm.is-phone .calm-ath-weeknav{justify-content:space-between}.calm.is-phone .calm-ath-thisweek{height:44px}.calm.is-phone .calm-ath-weekarrow{width:44px;height:44px}.calm.is-phone .calm-ath-daycard .calm-ath-chip{padding:8px 10px}.calm.is-medium .calm-ath-body{padding-inline:20px}.calm .calm-buildmenu-host{position:relative;display:inline-flex}.calm .calm-buildmenu{position:absolute;z-index:var(--calm-z-menu);top:calc(100% + 8px);left:50%;transform:translate(-50%);width:min(300px,calc(100vw - 32px));box-sizing:border-box;padding:8px;text-align:left;background:var(--color-os-surface);border:1px solid var(--color-os-border);border-radius:16px;box-shadow:var(--calm-shadow-pop)}.calm .calm-buildmenu.is-panel{position:static;transform:none;width:min(340px,calc(100vw - 32px));padding:12px;box-shadow:var(--calm-shadow-lift)}.calm .calm-buildmenu-title{padding:6px 12px 8px;font-size:var(--type-card-title);font-weight:700}.calm.is-phone .calm-buildmenu.is-panel{width:100%;border-radius:20px 20px 0 0;padding-bottom:24px}.calm .calm-buildmenu-row{display:flex;align-items:center;gap:14px;width:100%;box-sizing:border-box;padding:10px 12px;border:0;border-radius:14px;background:transparent;color:var(--color-os-ink);text-align:left;cursor:pointer}.calm .calm-buildmenu-row:hover,.calm .calm-buildmenu-row:focus-visible{background:var(--color-os-page-bg)}.calm .calm-buildmenu-icon{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-buildmenu-text{display:flex;flex-direction:column;gap:1px;min-width:0}.calm .calm-buildmenu-name{font-size:var(--type-body);font-weight:700}.calm .calm-buildmenu-sub{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-btn-dark:disabled{opacity:.45;cursor:not-allowed;filter:none}.calm.is-build{--calm-band-h: 76px;min-height:100vh;background:var(--color-os-page-bg)}.calm .calm-bp{display:flex;flex-direction:column;min-height:100vh}.calm .calm-bp-head{position:sticky;top:0;z-index:var(--calm-z-band);flex:none;height:76px;box-sizing:border-box;display:flex;align-items:center;gap:14px;padding:0 28px;background:var(--color-os-surface);border-bottom:1px solid var(--color-os-border)}.calm .calm-bp-head-text{flex:1;min-width:0}.calm .calm-bp-title{margin:0;font-size:var(--type-heading);font-weight:700;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-bp-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-bp-steps{display:flex;align-items:center;gap:14px;margin:0 12px 0 0;padding:0;list-style:none}.calm .calm-bp-steps li{display:inline-flex;align-items:center;gap:8px;font-size:var(--type-body);font-weight:500;color:var(--color-os-ink-secondary);white-space:nowrap}.calm .calm-bp-steps li.is-on{font-weight:700;color:var(--color-os-ink)}.calm .calm-bp-step-n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:var(--type-caption);font-weight:700;background:var(--color-os-page-bg);color:var(--color-os-ink-secondary)}.calm .calm-bp-steps li.is-on .calm-bp-step-n{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-bp-note{display:flex;align-items:center;gap:8px;max-width:300px;margin-right:6px;font-size:var(--type-caption);line-height:1.35;color:var(--color-os-ink-secondary)}.calm .calm-bp-note .material-symbols-rounded{flex:none}.calm .calm-bp-note.is-bar{max-width:none;margin:0;padding:10px 16px;background:var(--color-os-surface);border-bottom:1px solid var(--color-os-border)}.calm .calm-bp-note.is-dialog{max-width:none;margin:8px 0 20px}.calm .calm-bp-body{flex:1;min-width:0;box-sizing:border-box;padding:28px 28px 120px}.calm .calm-bp-body.is-weeks{padding:0}.calm .calm-bp-col{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:18px}.calm .calm-bp-card.ui-card{margin:0}.calm .calm-bp-stack{display:flex;flex-direction:column;gap:18px}.calm .calm-bp-pair{gap:16px;align-items:start}.calm .calm-bp-counts{gap:18px}.calm .calm-bp-weeks{display:flex;align-items:center;gap:12px;min-height:44px}.calm .calm-bp-hint{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-bp-summary{display:flex;align-items:center;gap:8px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-bp-summary .material-symbols-rounded{flex:none}.calm .calm-bp-summary.is-aside{align-self:end;min-height:44px}.calm .calm-bp-summary.is-problem{color:var(--color-os-danger-text)}.calm .calm-bp-lead{margin:0;padding:0 6px;font-size:var(--type-body);color:var(--color-os-ink-secondary)}.calm .calm-bp-future{padding:0 6px}.calm .calm-bp-future .ui-checkbox-row{align-items:flex-start;gap:12px}.calm .calm-bp-future .ui-checkbox-row input{width:20px;height:20px;margin-top:1px}.calm .calm-bp-future-text{display:flex;flex-direction:column;gap:2px}.calm .calm-bp-future-title{font-size:var(--type-body);font-weight:700}.calm .calm-bp-future-sub{font-size:var(--type-caption);font-weight:400;color:var(--color-os-ink-secondary)}.calm .calm-bp-race{position:relative;margin-top:12px;padding:16px;border:1px solid var(--color-os-border);border-radius:14px;background:var(--color-os-page-bg)}.calm .calm-bp-race .calm-bp-pair{margin-right:32px}.calm .calm-bp-race-x{position:absolute;top:8px;right:8px}.calm .calm-uw{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:22px}.calm .calm-uw-day{min-width:0;min-height:120px;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;padding:6px 4px 8px;border-radius:12px;background:var(--color-os-page-bg)}.calm .calm-uw-day:has(.calm-menu){position:relative;z-index:var(--calm-z-menu)}.calm .calm-uw-day.is-over{background:var(--color-os-pink-soft-bg)}.calm .calm-uw-name{padding-left:2px;font-size:var(--type-caption);font-weight:700;letter-spacing:.06em;color:var(--color-os-ink-secondary)}.calm .calm-uw-chip{position:relative;display:flex;align-items:center;gap:6px;padding:6px;border-radius:10px;background:var(--color-os-surface);border:1.5px solid var(--calm-status-planned);cursor:grab;box-sizing:border-box}.calm .calm-uw-chip.is-lifted{opacity:.45}.calm .calm-uw-chip-text{display:flex;flex-direction:column;min-width:0;flex:1}.calm .calm-uw-chip-title{font-size:var(--type-caption);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-uw-chip-dur{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-uw-x{position:absolute;top:2px;right:2px;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:var(--color-os-surface);color:var(--color-os-ink-secondary);display:grid;place-items:center;opacity:0;transition:opacity .15s;cursor:pointer}.calm .calm-uw-chip:hover .calm-uw-x,.calm .calm-uw-x:focus-visible{opacity:1}.calm .calm-uw-x:hover{background:var(--color-os-page-bg);color:var(--color-os-ink)}.calm .calm-uw-addwrap{position:relative;align-self:center;margin-top:2px}.calm .calm-uw .calm-uw-add{opacity:1}.calm .calm-uw-menu{top:30px;left:50%;transform:translate(-50%);width:260px}.calm .calm-uw-menuhead{display:flex;align-items:center;gap:4px}.calm .calm-uw-back{width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-os-ink-secondary);display:grid;place-items:center;cursor:pointer}.calm .calm-uw-summary{margin-top:12px}.calm .calm-bp-search{margin-bottom:14px;height:44px;box-sizing:border-box;padding:0 14px;border:1px solid var(--color-os-border);border-radius:12px;background:var(--color-os-surface)}.calm .calm-bp-tpls{display:flex;flex-direction:column;gap:10px}.calm .calm-bp-tpl{display:flex;align-items:center;gap:16px;width:100%;box-sizing:border-box;padding:16px 18px;border:1px solid var(--color-os-border);border-radius:16px;background:var(--color-os-surface);color:var(--color-os-ink);text-align:left;cursor:pointer}.calm .calm-bp-tpl:hover{background:var(--color-os-page-bg)}.calm .calm-bp-tpl.is-on{box-shadow:inset 0 0 0 1.5px var(--color-os-ink)}.calm .calm-bp-tpl-icon{width:44px;height:44px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-bp-tpl.is-on .calm-bp-tpl-icon{background:var(--color-os-pink-soft-bg);color:var(--chip-pink-text)}.calm .calm-bp-tpl-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.calm .calm-bp-tpl-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--type-body);font-weight:700}.calm .calm-bp-tpl-mine{padding:1px 8px;border-radius:999px;font-size:var(--type-caption);font-weight:700;background:var(--color-os-slate-soft-bg);color:var(--color-os-slate-soft-text)}.calm .calm-bp-tpl-meta{font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-bp-radio{width:22px;height:22px;flex:none;box-sizing:border-box;border-radius:50%;border:2px solid var(--color-os-ink-secondary);display:grid;place-items:center}.calm .calm-bp-tpl.is-on .calm-bp-radio{border-color:var(--color-os-ink)}.calm .calm-bp-tpl.is-on .calm-bp-radio:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--color-os-ink)}.calm .calm-bp-weeks-wrap{display:flex;align-items:flex-start}.calm .calm-bp-weeks-main{flex:1 1 0;min-width:0;box-sizing:border-box;padding:24px 28px 160px;container:bpweeks / inline-size}.calm .calm-bp-weeks-wrap.is-lib-dock .calm-bp-weeks-main{padding-inline:16px}.calm .calm-bp-gridhead .calm-libbtn{flex:none}@container bpweeks (max-width: 800px){.calm .calm-libbtn-label{display:none}.calm .calm-bp-gridhead .calm-libbtn{width:40px;padding:0;justify-content:center}.calm .calm-gridcard.is-draft{padding-inline:12px}.calm .calm-gridcard.is-draft .calm-cols{grid-template-columns:76px repeat(7,minmax(0,1fr));column-gap:6px}}.calm .calm-bp-weeks-wrap .calm-libpanel.is-dock{top:76px;height:calc(100vh - 76px)}.calm .calm-bp-gridhead{display:flex;align-items:center;gap:12px;margin-bottom:16px}.calm .calm-bp-gridhead-text{flex:1;min-width:0}.calm .calm-bp-gridhead-h{font-size:var(--type-card-title);font-weight:700}.calm .calm-bp-gridhead-sub{margin-top:2px;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-gridcard.is-draft .calm-cols{grid-template-columns:100px repeat(7,minmax(0,1fr))}.calm .calm-gridcard.is-draft .calm-week{min-height:118px}.calm .calm-weeklabel-hours{display:flex;flex-wrap:wrap;column-gap:4px;font-size:var(--type-caption);font-weight:700}.calm .calm-dialog.calm-bp-save{width:520px}.calm .calm-bp-save-title{margin-top:0}.calm .calm-bp-tplrow{display:flex;align-items:center;gap:12px}.calm .calm-bp-tplrow-text{font-size:var(--type-body);font-weight:700}.calm .calm-bp-tplfields{margin-top:18px;display:flex;flex-direction:column;gap:12px}.calm.is-phone .calm-bp-head{padding:0 12px;gap:8px}.calm.is-phone .calm-bp-head .ui-btn{padding-inline:14px}.calm.is-phone .calm-bp-body{padding:16px 16px 120px}.calm.is-phone .calm-bp-pair{grid-template-columns:1fr}.calm.is-phone .calm-bp-race .calm-bp-pair{margin-right:0;padding-top:28px}.calm.is-phone .calm-uw{grid-template-columns:1fr}.calm.is-phone .calm-uw-day{flex-direction:row;flex-wrap:wrap;align-items:center;min-height:0}.calm.is-phone .calm-uw-name{width:36px}.calm.is-phone .calm-uw-chip{flex:1 1 140px}.calm.is-phone .calm-uw-x{opacity:1}.calm.is-phone .calm-uw-menu{left:auto;right:0;transform:none;width:min(260px,calc(100vw - 48px))}.calm.is-phone .calm-bp-weeks-main{padding:16px 16px 160px;overflow-x:auto}.calm.is-phone .calm-gridcard.is-draft{min-width:760px}.calm.is-phone .calm-bp-gridhead{flex-wrap:wrap}.calm.is-phone .calm-dialog.calm-bp-save{width:100%}.calm .calm-nu-body{box-sizing:border-box;padding-bottom:48px}.calm .calm-nu-body>*{width:100%;max-width:1120px;margin-inline:auto;box-sizing:border-box}.calm .calm-nu-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.calm .calm-nu-search{flex:none}.calm .calm-nu-filters{display:flex;flex-wrap:wrap;gap:10px}.calm .calm-nu-filter.is-set{border-color:var(--color-os-ink)}.calm .calm-nu-filters .calm-menu-pill{left:0;right:auto}.calm .calm-nu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.calm .calm-nu-card{position:relative;box-sizing:border-box;padding:20px;display:flex;flex-direction:column;gap:12px;border-radius:16px;background:var(--color-os-surface);box-shadow:var(--color-os-shadow-card);transition:box-shadow .15s}.calm .calm-nu-card:hover,.calm .calm-nu-card:focus-within{box-shadow:var(--calm-shadow-pop)}@media(prefers-reduced-motion:reduce){.calm .calm-nu-card{transition:none}}.calm .calm-nu-card.has-menu{z-index:var(--calm-z-menu)}.calm .calm-nu-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-height:28px}.calm .calm-nu-sports{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.calm .calm-nu-sport{display:inline-flex}.calm .calm-nu-menuhost{z-index:1}.calm .calm-nu-title{margin:0;font-size:var(--type-card-title);font-weight:700;line-height:1.25;overflow-wrap:anywhere}.calm .calm-nu-open{padding:0;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.calm .calm-nu-open:after{content:"";position:absolute;inset:0;border-radius:inherit}.calm .calm-nu-open:focus-visible{outline:0}.calm .calm-nu-open:focus-visible:after{outline:2px solid var(--color-os-ink);outline-offset:-2px}.calm .calm-nu-blocks{display:flex;flex-direction:column;gap:10px}.calm .calm-nu-label{margin-bottom:4px;text-transform:uppercase}.calm .calm-nu-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--type-body);line-height:1.4;color:var(--color-os-ink)}.calm .calm-nu-tags{display:flex;flex-wrap:wrap;gap:6px}.calm .calm-nu-used{margin-top:auto;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-drawer.is-nutrition{width:540px}.calm .calm-textarea[aria-invalid=true]{border-color:var(--color-os-danger-text)}.calm .calm-nu-group{display:flex;flex-direction:column;gap:4px}.calm .calm-nu-checks{display:flex;flex-direction:column}.calm .calm-nu-checks .ui-checkbox-row,.calm .calm-nu-practice .ui-checkbox-row{min-height:36px;font-size:var(--type-body);gap:10px}.calm .calm-nu-practice{display:flex;flex-direction:column;gap:2px}.calm .calm-nu-practice .ui-checkbox-row{font-weight:700}.calm .calm-nu-practice .calm-doc-hint{padding-left:28px}.calm.is-medium .calm-nu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calm.is-phone .calm-nu-body{padding:14px 16px 96px;gap:14px}.calm.is-phone .calm-nu-body>.ui-btn{width:100%;justify-content:center;min-height:44px}.calm.is-phone .calm-nu-search{width:100%;height:44px}.calm.is-phone .calm-nu-filters .calm-fieldpill{height:44px}.calm.is-phone .calm-nu-grid{grid-template-columns:minmax(0,1fr)}.calm.is-phone .calm-nu-menuhost .calm-doc-more{width:44px;height:44px;margin:-8px -10px 0 0}.calm.is-phone .calm-nu-checks .ui-checkbox-row,.calm.is-phone .calm-nu-practice .ui-checkbox-row{min-height:44px}.calm.is-phone .calm-nu-menuhost .calm-doc-menu{top:40px;right:-4px}.calm.is-phone .calm-nu-menuhost .calm-doc-menu .calm-menuitem{min-height:44px}.calm .calm-lb-mapbtn{display:block;width:100%;padding:0;border:0;cursor:zoom-in}.calm .calm-lb-mapbtn img{display:block;width:100%;height:220px;object-fit:cover}.calm .calm-lb-mapzoom{cursor:zoom-out}.calm .calm-lb-mapzoom img{max-width:95vw;max-height:95vh;object-fit:contain;border-radius:14px;box-shadow:var(--color-os-shadow-card)}.calm .calm-lb-notes{margin:6px 0 0;font-size:var(--type-body);line-height:1.5;white-space:pre-wrap}.calm .calm-lb-emptycard{margin:40px auto 0;max-width:460px}.calm .calm-lb-splithr{flex:none;min-width:64px;text-align:right;white-space:nowrap;font-size:var(--type-caption);color:var(--color-os-ink-secondary)}.calm .calm-lb-viewbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.calm .calm-lb-list{padding:8px 12px 12px;overflow-x:auto}.calm .calm-lb-listrow{box-sizing:border-box;min-width:900px;width:100%;display:grid;grid-template-columns:minmax(220px,1.6fr) 110px 120px 80px 100px 100px minmax(110px,1fr) 24px;align-items:center;column-gap:16px;padding:10px 14px;border:0;border-radius:12px;background:transparent;color:var(--color-os-ink);text-align:left;font:inherit;cursor:pointer}.calm .calm-lb-listrow:hover,.calm .calm-lb-listrow.is-selected{background:var(--color-os-page-bg)}.calm .calm-lb-listrow:focus-visible{outline:2px solid var(--color-os-ink);outline-offset:2px}.calm .calm-lb-listrow.is-head{padding:12px 14px 8px;font-size:var(--type-caption);font-weight:700;color:var(--color-os-ink-secondary);cursor:default}.calm .calm-lb-listrow.is-head:hover{background:transparent}.calm .calm-lb-listname{display:flex;align-items:center;gap:10px;min-width:0}.calm .calm-lb-listname .calm-lb-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calm .calm-lb-listcell{font-size:var(--type-caption);color:var(--color-os-ink-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm .calm-lb-listtime{font-size:var(--type-body);font-weight:700}.calm .calm-lb-more{display:flex;justify-content:center;padding:8px 0 16px}body{margin:0;min-width:320px;min-height:100vh}.auth-loading-page{min-height:100vh;width:100%;display:grid;place-items:center;padding:32px 20px;background:var(--color-background);color:var(--color-text)}.auth-loading-shell{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.auth-loading-logo{width:min(172px,58vw);height:auto}.auth-loading-spinner{width:38px;height:38px;border:3px solid var(--color-os-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.auth-loading-copy{display:grid;gap:4px}.auth-loading-title{font-size:1rem;font-weight:700}.auth-loading-subtitle{color:var(--color-text-secondary);font-size:.92rem}
