.notification-enter-active,.notification-leave-active{transition:opacity .25s,transform .25s}.notification-enter-from,.notification-leave-to{opacity:0;transform:translateY(-10px)}.notification-move{transition:transform .25s}.notification-container{top:calc(var(--header-height) + var(--spacing));z-index:10001;pointer-events:none;width:100%;max-width:420px;padding:0 var(--spacing);box-sizing:border-box;position:fixed;left:50%;transform:translate(-50%)}@media print{.notification-container{display:none!important}}.notification-container .notification-list{gap:var(--spacing-half);pointer-events:auto;flex-direction:column;display:flex}.notification-container .notification{justify-content:space-between;align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);box-shadow:0 4px 12px var(--color-shadow-ink-medium);pointer-events:auto;border:1px solid;display:flex}.notification-container .notification .notification-message{flex:1;font-size:14px;line-height:1.4}.notification-container .notification .notification-dismiss{width:24px;height:24px;color:inherit;cursor:pointer;opacity:.8;border-radius:var(--border-radius);background:0 0;border:none;flex-shrink:0;padding:0;font-size:20px;line-height:1}.notification-container .notification .notification-dismiss:hover{opacity:1;background:var(--color-overlay-faint)}.notification-container .notification.notification--error{color:var(--color-notification-error);border-color:var(--color-notification-error);background:var(--color-notification-error-bg)}.notification-container .notification.notification--success{color:var(--color-notification-success);border-color:var(--color-notification-success);background:var(--color-notification-success-bg)}.notification-container .notification.notification--warning{color:var(--color-notification-warning);border-color:var(--color-notification-warning);background:var(--color-notification-warning-bg)}.notification-container .notification.notification--info{color:var(--color-notification-info);border-color:var(--color-notification-info);background:var(--color-notification-info-bg)}.band-wave{pointer-events:none;width:100%;height:44px;display:block;position:absolute;left:0}@media screen and (width<=700px){.band-wave{height:26px}}.band-wave.band-wave--top{top:-1px}.band-wave.band-wave--bottom{bottom:-1px;transform:scaleY(-1)}.difficulty-meter{justify-content:center;align-items:flex-end;gap:var(--dm-gap,2px);height:var(--dm-height,20px);pointer-events:none;flex-direction:row;flex:none;display:inline-flex}.difficulty-meter-seg{width:var(--dm-bar-width,4px);background:color-mix(in srgb, var(--color-border) 65%, var(--color-surface) 35%);opacity:.55;border:none;border-radius:2px;flex-shrink:0;align-self:flex-end;min-height:2px;transition:background-color .35s cubic-bezier(.4,0,.2,1),opacity .3s}.difficulty-meter-seg--tier-1{height:20%}.difficulty-meter-seg--tier-2{height:40%}.difficulty-meter-seg--tier-3{height:60%}.difficulty-meter-seg--tier-4{height:80%}.difficulty-meter-seg--tier-5{height:100%}.difficulty-meter-seg.is-lit{opacity:1}.difficulty-meter--recovery .difficulty-meter-seg.is-lit{background:var(--color-difficulty-recovery)}.difficulty-meter--easy .difficulty-meter-seg.is-lit{background:var(--color-difficulty-easy)}.difficulty-meter--moderate .difficulty-meter-seg.is-lit{background:var(--color-difficulty-moderate)}.difficulty-meter--hard .difficulty-meter-seg.is-lit{background:var(--color-difficulty-hard)}.difficulty-meter--max .difficulty-meter-seg.is-lit{background:var(--color-difficulty-max)}.demo-builder{text-align:left;width:100%;display:block}.demo-builder .db-window{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-primary) 22%, var(--color-border));border-radius:calc(var(--border-radius) * 3);box-shadow:0 1px 0 var(--color-white) inset, 0 24px 60px -20px color-mix(in srgb, var(--color-ink) 45%, transparent), 0 4px 14px color-mix(in srgb, var(--color-ink) 10%, transparent);flex-direction:column;display:flex;overflow:hidden}.demo-builder .db-window .db-titlebar{padding:var(--spacing-half) var(--spacing);background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface-alt));border-bottom:1px solid var(--color-border);align-items:center;gap:6px;display:flex}.demo-builder .db-window .db-titlebar .db-dot{background:color-mix(in srgb, var(--color-primary) 32%, var(--color-border));border-radius:50%;width:9px;height:9px}.demo-builder .db-window .db-titlebar .db-path{margin-left:var(--spacing-half);letter-spacing:.02em;color:var(--color-text-muted);font-size:.72rem;font-weight:600}.demo-builder .db-window .db-head{justify-content:space-between;align-items:flex-end;gap:var(--spacing-half) var(--spacing);padding:var(--spacing) var(--spacing) var(--spacing-half);flex-wrap:wrap;display:flex}@media screen and (width<=560px){.demo-builder .db-window .db-head{padding:var(--spacing-half) var(--spacing-half) var(--spacing-quarter)}}.demo-builder .db-window .db-head .db-title{letter-spacing:-.02em;min-height:1.6em;color:var(--color-ink);font-size:1.35rem;font-weight:800}@media screen and (width<=560px){.demo-builder .db-window .db-head .db-title{font-size:1.1rem}}.demo-builder .db-window .db-head .db-stats{align-items:center;gap:var(--spacing);display:flex}@media screen and (width<=560px){.demo-builder .db-window .db-head .db-stats{gap:var(--spacing-half)}}.demo-builder .db-window .db-head .db-stats .db-total{color:var(--color-primary-strong);align-items:baseline;gap:3px;font-weight:900;display:flex}.demo-builder .db-window .db-head .db-stats .db-total .value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.6rem}@media screen and (width<=560px){.demo-builder .db-window .db-head .db-stats .db-total .value{font-size:1.25rem}}.demo-builder .db-window .db-head .db-stats .db-total .unit{font-size:.8rem;font-weight:700}.demo-builder .db-window .db-head .db-stats .db-metrics{color:var(--color-text-soft);font-variant-numeric:tabular-nums;flex-direction:column;gap:2px;font-size:.78rem;font-weight:700;display:flex}.demo-builder .db-window .db-head .db-stats .db-metrics .db-metric{align-items:center;gap:5px;display:inline-flex}.demo-builder .db-window .db-head .db-stats .db-metrics .db-metric svg{color:var(--color-primary);opacity:.7}.demo-builder .db-window .db-head .db-stats .db-equipment{color:var(--color-primary);opacity:.65;align-items:center;gap:2px;display:flex}@media screen and (width<=560px){.demo-builder .db-window .db-head .db-stats .db-equipment{display:none}}.demo-builder .db-window .db-sets{gap:var(--spacing);min-height:316px;padding:var(--spacing-half) var(--spacing) var(--spacing);flex-direction:column;display:flex}@media screen and (width<=560px){.demo-builder .db-window .db-sets{min-height:280px;padding:var(--spacing-quarter) var(--spacing-half) var(--spacing-half)}}.demo-builder .db-window .db-sets .db-set{gap:var(--spacing-quarter);flex-direction:column;animation:.35s both home-fade-up;display:flex}.demo-builder .db-window .db-sets .db-set .db-set-head{justify-content:space-between;align-items:baseline;gap:var(--spacing-half);padding-bottom:var(--spacing-quarter);border-bottom:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);display:flex}.demo-builder .db-window .db-sets .db-set .db-set-head .db-set-title{color:var(--color-text);font-size:.95rem;font-weight:800}.demo-builder .db-window .db-sets .db-set .db-set-head .db-set-total{color:var(--color-primary-strong);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:700}.demo-builder .db-window .db-sets .db-set .db-row{align-items:center;gap:var(--spacing-half);min-height:30px;animation:.3s both home-fade-up;display:flex}.demo-builder .db-window .db-sets .db-set .db-row .db-text{color:var(--color-text);flex:auto;font-size:.95rem;font-weight:500}@media screen and (width<=560px){.demo-builder .db-window .db-sets .db-set .db-row .db-text{font-size:.85rem}}.demo-builder .db-window .db-sets .db-set .db-row .db-cursor{background:var(--color-primary);vertical-align:text-bottom;width:2px;height:1em;margin-left:1px;animation:1s step-end infinite home-caret;display:inline-block}.demo-builder .db-window .db-sets .db-set .db-row .db-row-equipment{color:var(--color-primary);opacity:.6;align-items:center;gap:2px;animation:.3s both home-pop;display:flex}.demo-generator{align-items:start;gap:var(--spacing);grid-template-columns:minmax(0,5fr) minmax(0,6fr);width:100%;display:grid}@media screen and (width<=860px){.demo-generator{grid-template-columns:1fr}}.demo-generator .dg-panel{gap:var(--spacing-half);padding:var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 3);flex-direction:column;display:flex;box-shadow:0 18px 44px -22px #000000a6}.demo-generator .dg-panel .dg-panel-label{align-items:center;gap:var(--spacing-quarter);letter-spacing:.1em;color:var(--color-text-muted);text-transform:uppercase;font-size:.68rem;font-weight:800;display:flex}.demo-generator .dg-prompt .dg-prompt-text{min-height:4.6em;padding:var(--spacing-half);color:var(--color-text);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);font-size:1rem;font-weight:500;line-height:1.45}.demo-generator .dg-prompt .dg-prompt-text .dg-cursor{background:var(--color-primary);vertical-align:text-bottom;width:2px;height:1.05em;margin-left:1px;animation:1s step-end infinite home-caret;display:inline-block}.demo-generator .dg-prompt .dg-button{justify-content:center;align-items:center;gap:var(--spacing-half);min-height:44px;margin-top:var(--spacing-quarter);color:var(--btn-color);background:var(--color-primary);border-radius:calc(var(--border-radius) * 2);font-size:.95rem;font-weight:800;display:flex}.demo-generator .dg-prompt .dg-button.is-busy{color:var(--color-text-soft);background:var(--color-surface-alt);border:1px solid var(--color-border)}.demo-generator .dg-prompt .dg-button .dg-spinner{animation:.9s linear infinite home-spin}.demo-generator .dg-prompt .dg-button .dg-dots:after{vertical-align:bottom;content:"...";width:1.1em;animation:1.2s steps(4,end) infinite home-dots;display:inline-block;overflow:hidden}.demo-generator .dg-result{min-height:340px}@media screen and (width<=860px){.demo-generator .dg-result{min-height:0}}.demo-generator .dg-result .dg-skeleton{gap:var(--spacing-half);padding-top:var(--spacing-quarter);flex-direction:column;display:flex}.demo-generator .dg-result .dg-skeleton .dg-skeleton-row{background:linear-gradient(90deg, var(--color-surface-alt) 25%, color-mix(in srgb, var(--color-primary) 18%, var(--color-surface-alt)) 50%, var(--color-surface-alt) 75%);background-size:240% 100%;border-radius:999px;height:12px;animation:1.6s ease-in-out infinite home-shimmer}.demo-generator .dg-result .dg-row{align-items:center;gap:var(--spacing-half);opacity:0;min-height:30px;transition:opacity .3s,transform .3s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(10px)}.demo-generator .dg-result .dg-row.is-shown{opacity:1;transform:translateY(0)}.demo-generator .dg-result .dg-row .dg-row-text{color:var(--color-text);flex:auto;font-size:.95rem;font-weight:500}@media screen and (width<=560px){.demo-generator .dg-result .dg-row .dg-row-text{font-size:.85rem}}.demo-generator .dg-result .dg-row .dg-row-equipment{color:var(--color-primary);opacity:.7;align-items:center;gap:2px;display:flex}.demo-generator .dg-result .dg-set-title{margin-top:var(--spacing-half);letter-spacing:.09em;color:var(--color-primary-strong);text-transform:uppercase;opacity:0;font-size:.72rem;font-weight:800;transition:opacity .3s}.demo-generator .dg-result .dg-set-title.is-shown{opacity:1}.demo-parser{gap:var(--spacing);flex-direction:column;width:100%;display:flex}.demo-parser .dp-row{align-items:center;gap:var(--spacing-half);min-height:60px;padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-primary) 25%, var(--color-border));border-radius:calc(var(--border-radius) * 2);box-shadow:0 10px 30px -14px color-mix(in srgb, var(--color-ink) 40%, transparent);display:flex}.demo-parser .dp-row .dp-text{color:var(--color-text);flex:auto;font-size:1.15rem;font-weight:600}@media screen and (width<=560px){.demo-parser .dp-row .dp-text{font-size:.95rem}}.demo-parser .dp-row .dp-cursor{background:var(--color-primary);vertical-align:text-bottom;width:2px;height:1.05em;margin-left:2px;animation:1s step-end infinite home-caret;display:inline-block}.demo-parser .dp-row .dp-row-equipment{color:var(--color-primary);opacity:.6;align-items:center;gap:2px;animation:.3s both home-pop;display:flex}.demo-parser .dp-arrow{justify-content:center;align-items:center;gap:var(--spacing-half);letter-spacing:.12em;color:var(--color-text-muted);text-transform:uppercase;font-size:.7rem;font-weight:800;display:flex}.demo-parser .dp-arrow:before,.demo-parser .dp-arrow:after{background:linear-gradient(90deg, transparent, var(--color-border), transparent);content:"";flex:auto;height:1px}.demo-parser .dp-chips{gap:var(--spacing-half);grid-template-columns:repeat(3,1fr);display:grid}@media screen and (width<=700px){.demo-parser .dp-chips{grid-template-columns:repeat(2,1fr)}}.demo-parser .dp-chips .dp-chip{min-height:58px;padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);opacity:0;flex-direction:column;gap:3px;transition:opacity .28s,transform .28s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(8px)scale(.97)}.demo-parser .dp-chips .dp-chip.is-shown{opacity:1;transform:translateY(0)scale(1)}.demo-parser .dp-chips .dp-chip .dp-chip-label{letter-spacing:.09em;color:var(--color-text-muted);text-transform:uppercase;font-size:.65rem;font-weight:800}.demo-parser .dp-chips .dp-chip .dp-chip-value{align-items:center;gap:var(--spacing-quarter);min-height:22px;color:var(--color-primary-strong);font-size:1rem;font-weight:800;display:flex}.demo-parser .dp-chips .dp-chip .dp-chip-value .dp-chip-equipment{color:var(--color-primary);align-items:center;gap:2px;display:flex}.demo-results{gap:var(--spacing);width:100%;padding:var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 3);box-shadow:0 20px 50px -26px color-mix(in srgb, var(--color-ink) 50%, transparent);flex-direction:column;display:flex}@media screen and (width<=560px){.demo-results{padding:var(--spacing-half)}}.demo-results .dr-ranges{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);align-self:flex-start;gap:2px;padding:3px;display:flex}.demo-results .dr-ranges .dr-range{padding:5px var(--spacing-half);color:var(--color-text-muted);border-radius:var(--border-radius);font-size:.78rem;font-weight:700}.demo-results .dr-ranges .dr-range.is-active{color:var(--btn-color);background:var(--color-primary)}.demo-results .dr-primary{gap:var(--spacing-half);grid-template-columns:repeat(3,1fr);display:grid}.demo-results .dr-primary .dr-stat{padding:var(--spacing) var(--spacing-half);text-align:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);flex-direction:column;align-items:center;gap:2px;display:flex}@media screen and (width<=560px){.demo-results .dr-primary .dr-stat{padding:var(--spacing-half) var(--spacing-quarter)}}.demo-results .dr-primary .dr-stat .dr-stat-value{letter-spacing:-.03em;color:var(--color-primary-strong);font-variant-numeric:tabular-nums;font-size:1.85rem;font-weight:900}@media screen and (width<=560px){.demo-results .dr-primary .dr-stat .dr-stat-value{font-size:1.2rem}}.demo-results .dr-primary .dr-stat .dr-stat-label{color:var(--color-text-muted);font-size:.72rem;font-weight:700}.demo-results .dr-primary .dr-stat .dr-stat-delta{color:var(--color-success);font-size:.7rem;font-weight:700}.demo-results .dr-secondary{justify-content:center;gap:var(--spacing-half) var(--spacing);flex-wrap:wrap;display:flex}.demo-results .dr-secondary .dr-pill{align-items:baseline;gap:var(--spacing-quarter);color:var(--color-text-muted);font-size:.82rem;font-weight:700;display:inline-flex}.demo-results .dr-secondary .dr-pill .dr-pill-value{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800}.demo-results .dr-chart{gap:var(--spacing-quarter);flex-direction:column;display:flex}.demo-results .dr-chart .dr-chart-title{letter-spacing:.09em;color:var(--color-text-muted);text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:800;display:flex}.demo-results .dr-chart .dr-bars{height:92px;padding-top:var(--spacing-quarter);border-bottom:1px solid var(--color-border);align-items:flex-end;gap:3px;display:flex}.demo-results .dr-chart .dr-bars .dr-bar{background:var(--color-primary);opacity:.85;border-radius:2px 2px 0 0;flex:1 1 0;min-height:2px;transition:height .45s cubic-bezier(.22,1,.36,1)}.demo-results .dr-chart .dr-bars .dr-bar.is-empty{background:var(--color-border)}.demo-results .dr-medals{gap:var(--spacing-half);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.demo-results .dr-medals .dr-medal{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half);background:color-mix(in srgb, var(--color-warning) 8%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-warning) 28%, var(--color-border));border-radius:calc(var(--border-radius) * 2);opacity:0;transition:opacity .3s,transform .3s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(8px)}.demo-results .dr-medals .dr-medal.is-shown{opacity:1;transform:translateY(0)}.demo-results .dr-medals .dr-medal .dr-medal-icon{width:32px;height:32px;color:var(--color-warning);background:color-mix(in srgb, var(--color-warning) 16%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.demo-results .dr-medals .dr-medal .dr-medal-text{flex-direction:column;min-width:0;display:flex}.demo-results .dr-medals .dr-medal .dr-medal-text .dr-medal-value{color:var(--color-ink);font-size:.95rem;font-weight:800}.demo-results .dr-medals .dr-medal .dr-medal-text .dr-medal-label{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:700;overflow:hidden}.stroke-bar-wrap{flex-direction:column;gap:3px;display:flex}.stroke-bar{background:color-mix(in srgb, var(--color-border) 50%, transparent);border-radius:3px;display:flex;overflow:hidden}.stroke-segment{min-width:2px;height:100%;transition:width .3s}@media print{.stroke-segment{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.stroke-legend{flex-wrap:wrap;gap:6px;display:flex}.stroke-legend-item{align-items:center;gap:3px;display:inline-flex}.stroke-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}@media print{.stroke-dot{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.stroke-label{color:var(--color-text-soft);font-size:.65rem;font-weight:600}.stroke-pct{color:var(--color-text-muted);font-size:.65rem;font-weight:700}.demo-search{gap:var(--spacing);flex-direction:column;width:100%;display:flex}.demo-search .ds-bar{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 10px 26px -16px color-mix(in srgb, var(--color-ink) 45%, transparent);border-radius:999px;flex-wrap:wrap;display:flex}@media screen and (width<=560px){.demo-search .ds-bar{border-radius:calc(var(--border-radius) * 2)}}.demo-search .ds-bar .ds-bar-icon{color:var(--color-primary)}.demo-search .ds-bar .ds-chip{padding:4px var(--spacing-half);color:var(--color-text-muted);background:var(--color-surface-alt);border:1px solid var(--color-border);transition:color var(--speed) ease, background var(--speed) ease, border-color var(--speed) ease;border-radius:999px;font-size:.8rem;font-weight:700}.demo-search .ds-bar .ds-chip.is-active{color:var(--btn-color);background:var(--color-primary);border-color:var(--color-primary)}.demo-search .ds-bar .ds-count{color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.78rem;font-weight:700}.demo-search .ds-grid{align-content:start;gap:var(--spacing-half);grid-template-columns:repeat(3,1fr);min-height:216px;display:grid;position:relative}@media screen and (width<=860px){.demo-search .ds-grid{grid-template-columns:repeat(2,1fr);min-height:324px}}@media screen and (width<=520px){.demo-search .ds-grid{grid-template-columns:1fr;min-height:0}}.demo-search .ds-grid .ds-card{gap:var(--spacing-quarter);padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);flex-direction:column;transition:opacity .35s,transform .35s cubic-bezier(.22,1,.36,1);display:flex}.demo-search .ds-grid .ds-card .ds-card-title{color:var(--color-ink);font-size:.95rem;font-weight:800}.demo-search .ds-grid .ds-card .ds-card-author{color:var(--color-text-muted);font-size:.7rem;font-weight:600}.demo-search .ds-grid .ds-card .ds-card-stats{align-items:baseline;gap:var(--spacing-quarter);color:var(--color-primary-strong);font-size:.8rem;font-weight:700;display:flex}.demo-search .ds-grid .ds-card .ds-card-stats .ds-card-duration{color:var(--color-text-muted);font-weight:600}.demo-search .ds-grid .ds-card .ds-card-foot{align-items:center;gap:var(--spacing-quarter);padding-top:var(--spacing-quarter);margin-top:auto;display:flex}.demo-search .ds-grid .ds-card .ds-card-foot .ds-card-equipment{color:var(--color-primary);opacity:.6;align-items:center;gap:2px;margin-left:auto;display:flex}.demo-search .ds-grid .ds-card-enter-from,.demo-search .ds-grid .ds-card-leave-to{opacity:0;transform:scale(.94)translateY(6px)}.demo-search .ds-grid .ds-card-leave-active{position:absolute}.demo-teams{gap:var(--spacing-half);width:100%;padding:var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 3);flex-direction:column;display:flex;box-shadow:0 20px 50px -24px #000000b3}@media screen and (width<=560px){.demo-teams{padding:var(--spacing-half)}}.demo-teams .dt-head{justify-content:space-between;align-items:center;gap:var(--spacing-half);padding-bottom:var(--spacing-half);border-bottom:1px solid var(--color-border);display:flex}.demo-teams .dt-head .dt-group{align-items:center;gap:var(--spacing-quarter);color:var(--color-ink);font-size:.95rem;font-weight:800;display:inline-flex}.demo-teams .dt-head .dt-group svg{color:var(--color-primary)}.demo-teams .dt-head .dt-count{color:var(--color-text-muted);font-size:.75rem;font-weight:700}.demo-teams .dt-member{align-items:center;gap:var(--spacing-half);min-height:46px;padding:var(--spacing-quarter) 0;opacity:0;transition:opacity .3s,transform .3s cubic-bezier(.22,1,.36,1);display:flex;transform:translate(-10px)}.demo-teams .dt-member.is-shown{opacity:1;transform:translate(0)}.demo-teams .dt-member .dt-avatar{width:32px;height:32px;color:var(--color-primary-strong);background:var(--color-primary-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:flex}.demo-teams .dt-member .dt-info{flex-direction:column;flex:auto;min-width:0;display:flex}.demo-teams .dt-member .dt-info .dt-name{color:var(--color-text);font-size:.9rem;font-weight:700}.demo-teams .dt-member .dt-info .dt-email{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}@media screen and (width<=560px){.demo-teams .dt-member .dt-info .dt-email{display:none}}.demo-teams .dt-member .dt-chip{padding:3px var(--spacing-half);color:var(--color-text-muted);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:999px;flex-shrink:0;align-items:center;gap:4px;font-size:.7rem;font-weight:800;transition:color .3s,background .3s,border-color .3s;display:inline-flex}.demo-teams .dt-member .dt-chip.is-linked,.demo-teams .dt-member .dt-chip.is-done{color:var(--color-success);background:color-mix(in srgb, var(--color-success) 14%, transparent);border-color:color-mix(in srgb, var(--color-success) 45%, transparent)}.demo-teams .dt-member .dt-chip.is-assigned{color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-primary) 16%, transparent);border-color:color-mix(in srgb, var(--color-primary) 45%, transparent)}.demo-teams .dt-member .dt-chip.is-done{animation:.35s home-pop}.demo-teams .dt-assign{align-items:center;gap:var(--spacing-half);margin-top:var(--spacing-quarter);padding:var(--spacing-half) var(--spacing);background:color-mix(in srgb, var(--color-primary) 14%, transparent);border:1px solid color-mix(in srgb, var(--color-primary) 40%, transparent);border-radius:calc(var(--border-radius) * 2);opacity:0;transition:opacity .35s,transform .35s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(10px)}.demo-teams .dt-assign.is-shown{opacity:1;transform:translateY(0)}.demo-teams .dt-assign svg{color:var(--color-primary-strong);flex-shrink:0}.demo-teams .dt-assign .dt-assign-title{color:var(--color-text);flex:auto;font-size:.85rem;font-weight:700}.demo-teams .dt-assign .dt-assign-progress{color:var(--color-primary-strong);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:800}.home-page{--home-max:1080px;--home-light:#dff2ff;--home-light-alt:#eaf7ff;color:var(--color-text)}.home-page .home-hero{min-height:calc(100vh - var(--header-height));padding:calc(var(--spacing) * 2) var(--spacing) calc(var(--spacing) * 5.5);text-align:center;background:radial-gradient(ellipse 80% 55% at 50% 0%, color-mix(in srgb, var(--color-primary) 30%, transparent), transparent 70%), radial-gradient(ellipse 45% 40% at 100% 75%, color-mix(in srgb, var(--color-accent) 24%, transparent), transparent 65%), radial-gradient(ellipse 40% 35% at 0% 65%, color-mix(in srgb, var(--color-primary-soft) 85%, transparent), transparent 60%), linear-gradient(180deg, var(--color-bg-soft) 0%, #eaf7ff 45%, var(--home-light) 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}@media screen and (width<=700px){.home-page .home-hero{padding:calc(var(--spacing) * 1.5) var(--spacing) calc(var(--spacing) * 5)}}.home-page .home-hero:before{background-image:radial-gradient(color-mix(in srgb, var(--color-primary) 14%, transparent) 1px, transparent 1px);opacity:.5;pointer-events:none;content:"";background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0009,#0000 80%);mask-image:linear-gradient(#0009,#0000 80%)}.home-page .home-hero .hero-inner{z-index:1;flex-direction:column;align-items:center;max-width:56rem;animation:.7s both home-fade-up;display:flex;position:relative}.home-page .home-hero .hero-inner .hero-title{flex-direction:column;align-items:center;margin:0;display:flex}.home-page .home-hero .hero-inner .hero-title .hero-brand{letter-spacing:.4px;background:linear-gradient(100deg, var(--color-ink) 0%, #15618f 45%, var(--color-primary-strong) 78%, var(--color-primary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(3rem,9vw,5.25rem);font-weight:900;line-height:1;transform:skew(-10deg)}.home-page .home-hero .hero-inner .hero-title .hero-slogan{margin-top:var(--spacing-half);letter-spacing:-.025em;color:var(--color-text-soft);font-size:clamp(1.15rem,3vw,1.85rem);font-weight:800;line-height:1.15}.home-page .home-hero .hero-inner .hero-title .hero-slogan .hero-slogan-free{color:var(--color-white);background:var(--color-primary-strong);border-radius:var(--border-radius);padding:.04em .24em;font-weight:900;display:inline-block}.home-page .home-hero .hero-inner .hero-support{margin:var(--spacing-half) 0 0;max-width:40rem;color:var(--color-text-muted);font-size:clamp(1rem,2.2vw,1.15rem);line-height:1.55}.home-page .home-hero .hero-inner .hero-ctas{justify-content:center;gap:var(--spacing-half);width:100%;margin-top:var(--spacing);flex-wrap:wrap;display:flex}@media screen and (width<=480px){.home-page .home-hero .hero-inner .hero-ctas{flex-direction:column}.home-page .home-hero .hero-inner .hero-ctas .hero-cta{align-self:stretch}}.home-page .home-hero .hero-inner .hero-features{justify-content:center;gap:var(--spacing-half) var(--spacing);margin:var(--spacing) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}@media screen and (width<=480px){.home-page .home-hero .hero-inner .hero-features{gap:var(--spacing-half)}}.home-page .home-hero .hero-inner .hero-features li{align-items:center;gap:var(--spacing-quarter);color:var(--color-text-soft);font-size:.85rem;font-weight:700;display:inline-flex}@media screen and (width<=480px){.home-page .home-hero .hero-inner .hero-features li{font-size:.76rem}}.home-page .home-hero .hero-inner .hero-features li svg{color:var(--color-primary-strong)}.home-page .home-hero .hero-demo{z-index:1;width:100%;max-width:880px;margin-top:calc(var(--spacing) * 1.25);animation:.8s .12s both home-fade-up;position:relative}.home-page .home-hero .learn-more{align-self:center;align-items:center;gap:var(--spacing-quarter);bottom:var(--spacing);z-index:1;height:auto;min-height:0;padding:var(--spacing-half);color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;flex-direction:column;font-family:inherit;font-size:.9rem;font-weight:700;animation:.7s .24s both home-fade-in;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.home-page .home-hero .learn-more .learn-more-icon{font-size:1rem;animation:2.2s ease-in-out infinite home-bounce}.home-page .home-hero .learn-more:hover{color:var(--color-primary-strong)}.home-page .home-hero .learn-more:hover .learn-more-icon{color:var(--color-primary)}.home-page .hero-cta{justify-content:center;align-items:center;gap:var(--spacing-half);border-radius:var(--border-radius);cursor:pointer;min-height:50px;transition:background var(--speed) ease, transform var(--speed) ease, box-shadow var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease;padding:.8rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.home-page .hero-cta:hover{transform:translateY(-2px)}.home-page .hero-cta:active{transform:translateY(0)}.home-page .hero-cta-primary{color:var(--btn-color);background:var(--color-primary);border:1px solid var(--color-primary);box-shadow:0 10px 26px -10px color-mix(in srgb, var(--color-primary) 70%, transparent)}.home-page .hero-cta-primary:hover{background:var(--color-primary-strong);border-color:var(--color-primary-strong);box-shadow:0 14px 32px -10px color-mix(in srgb, var(--color-primary) 80%, transparent)}.home-page .hero-cta-secondary{color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-surface) 85%, transparent);border:2px solid color-mix(in srgb, var(--color-primary) 55%, transparent)}.home-page .hero-cta-secondary:hover{background:var(--color-surface);border-color:var(--color-primary)}.home-page .home-band{padding:calc(var(--spacing) * 4) var(--spacing);background:var(--home-light);position:relative}@media screen and (width<=700px){.home-page .home-band{padding:calc(var(--spacing) * 2.5) var(--spacing)}}.home-page .home-band .band-inner{align-items:center;gap:calc(var(--spacing) * 2.5);z-index:1;max-width:var(--home-max);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);margin:0 auto;display:grid;position:relative}@media screen and (width<=900px){.home-page .home-band .band-inner{gap:calc(var(--spacing) * 1.5);grid-template-columns:1fr}}.home-page .home-band .band-copy{flex-direction:column;align-items:flex-start;display:flex}.home-page .home-band .band-copy .band-eyebrow{align-items:center;gap:var(--spacing-quarter);margin:0 0 var(--spacing-half);letter-spacing:.12em;color:var(--color-primary-strong);text-transform:uppercase;font-size:.72rem;font-weight:800;display:inline-flex}.home-page .home-band .band-copy .band-title{letter-spacing:-.035em;color:var(--color-ink);margin:0;font-size:clamp(1.7rem,3.6vw,2.4rem);font-weight:900;line-height:1.1}.home-page .home-band .band-copy .band-lead{margin:var(--spacing-half) 0 0;max-width:34rem;color:var(--color-text-soft);font-size:1.02rem;line-height:1.6}.home-page .home-band .band-copy .band-points{gap:var(--spacing-half);margin:var(--spacing) 0 0;flex-direction:column;padding:0;list-style:none;display:flex}.home-page .home-band .band-copy .band-points li{align-items:flex-start;gap:var(--spacing-half);color:var(--color-text);font-size:.92rem;font-weight:600;display:flex}.home-page .home-band .band-copy .band-points li svg{color:var(--color-primary);flex-shrink:0;margin-top:3px}.home-page .home-band .band-copy .band-link{align-items:center;gap:var(--spacing-quarter);margin-top:calc(var(--spacing) * 1.25);color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-surface) 80%, transparent);border:1px solid color-mix(in srgb, var(--color-primary) 45%, transparent);border-radius:var(--border-radius);cursor:pointer;transition:background var(--speed) ease, border-color var(--speed) ease, transform var(--speed) ease;padding:.6rem 1.15rem;font-family:inherit;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.home-page .home-band .band-copy .band-link:hover{background:var(--color-surface);border-color:var(--color-primary);transform:translateY(-1px)}.home-page .home-band--reverse .band-inner{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}@media screen and (width<=900px){.home-page .home-band--reverse .band-inner{grid-template-columns:1fr}}.home-page .home-band--reverse .band-copy{order:2}@media screen and (width<=900px){.home-page .home-band--reverse .band-copy{order:0}}.home-page .home-band--reverse .band-visual{order:1}.home-page .home-band--stack .band-inner{gap:calc(var(--spacing) * 1.75);grid-template-columns:1fr}.home-page .home-band--stack .band-copy{text-align:center;align-items:center}.home-page .home-band--stack .band-copy .band-lead{margin-left:auto;margin-right:auto}.home-page .home-band--stack .band-copy .band-link{align-self:center}.home-page .home-band--deep{--color-bg:#0d3149;--color-bg-soft:#0b2c42;--color-surface:#0d3149;--color-surface-alt:#123c59;--color-border:#1f5678;--color-text:#d5ebf9;--color-text-soft:#a9cee5;--color-text-muted:#86b1cc;--color-ink:#fff;--color-primary:#4fb8f0;--color-primary-strong:#8ad6ff;--color-primary-soft:#10405e;--color-primary-muted:#0f3a55;--color-success:#4fd1b5;--color-warning:#e8c76a;--btn-color:#06283c;padding-top:calc(var(--spacing) * 5);padding-bottom:calc(var(--spacing) * 5);color:var(--color-text);background:radial-gradient(55% 45% at 12% 0,#4fb8f033,#0000 70%),radial-gradient(50% 45% at 88% 100%,#6eb4ff29,#0000 70%),linear-gradient(#0a2839 0%,#0c3149 50%,#0a2c42 100%)}@media screen and (width<=700px){.home-page .home-band--deep{padding-top:calc(var(--spacing) * 3.5);padding-bottom:calc(var(--spacing) * 3.5)}}.home-page .home-band--deep .band-wave path{fill:var(--home-light)}.home-page .home-extras{padding:calc(var(--spacing) * 4) var(--spacing);background:var(--home-light-alt)}@media screen and (width<=700px){.home-page .home-extras{padding:calc(var(--spacing) * 2.5) var(--spacing)}}.home-page .home-extras .extras-inner{max-width:var(--home-max);margin:0 auto}.home-page .home-extras .extras-title{margin:0 0 var(--spacing);letter-spacing:-.03em;color:var(--color-ink);text-align:center;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:900}.home-page .home-extras .extras-grid{gap:var(--spacing-half);grid-template-columns:repeat(3,1fr);display:grid}@media screen and (width<=860px){.home-page .home-extras .extras-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (width<=520px){.home-page .home-extras .extras-grid{grid-template-columns:1fr}}.home-page .home-extras .extras-grid .extra{align-items:flex-start;gap:var(--spacing-half);padding:var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2.5);transition:border-color var(--speed) ease, box-shadow var(--speed) ease, transform var(--speed) ease;display:flex}.home-page .home-extras .extras-grid .extra:hover{border-color:var(--color-primary);box-shadow:0 10px 26px -14px color-mix(in srgb, var(--color-ink) 45%, transparent);transform:translateY(-2px)}.home-page .home-extras .extras-grid .extra .extra-icon{width:36px;height:36px;color:var(--color-primary-strong);background:var(--color-primary-soft);border-radius:calc(var(--border-radius) * 2);flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;display:flex}.home-page .home-extras .extras-grid .extra h3{color:var(--color-ink);margin:0 0 2px;font-size:.92rem;font-weight:800}.home-page .home-extras .extras-grid .extra p{color:var(--color-text-muted);margin:0;font-size:.84rem;line-height:1.5}.home-page .home-close{padding:calc(var(--spacing) * 4.5) var(--spacing) calc(var(--spacing) * 3);text-align:center;position:relative}.home-page .home-close .band-wave path{fill:var(--home-light-alt)}.home-page .home-close .close-inner{z-index:1;max-width:42rem;margin:0 auto;position:relative}.home-page .home-close .close-inner h2{letter-spacing:-.035em;color:var(--color-ink);margin:0;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:900}.home-page .home-close .close-inner p{margin:var(--spacing-half) 0 0;color:var(--color-text-soft);font-size:1.02rem;line-height:1.55}.home-page .home-close .close-inner .hero-ctas{justify-content:center;gap:var(--spacing-half);margin-top:calc(var(--spacing) * 1.5);flex-wrap:wrap;display:flex}.home-page .home-close .home-seo-links{justify-content:center;gap:var(--spacing-half) var(--spacing);z-index:1;max-width:var(--home-max);margin:calc(var(--spacing) * 3) auto 0;padding-top:var(--spacing);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex;position:relative}.home-page .home-close .home-seo-links a{color:var(--color-text-muted);font-size:.88rem;font-weight:600;text-decoration:none}.home-page .home-close .home-seo-links a:hover{color:var(--color-primary-strong);text-decoration:underline}@keyframes home-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes home-fade-in{0%{opacity:0}to{opacity:1}}@keyframes home-pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes home-caret{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes home-spin{to{transform:rotate(360deg)}}@keyframes home-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes home-dots{0%{width:0}to{width:1.1em}}@keyframes home-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@media (prefers-reduced-motion:reduce){.home-page .hero-inner,.home-page .hero-demo,.home-page .learn-more,.home-page .learn-more .learn-more-icon{animation:none}}.modal-background{z-index:9999;width:100%;height:100%;padding:var(--spacing);background:var(--modal-overlay-bg);-webkit-backdrop-filter:blur(var(--modal-overlay-blur));justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}@media (width<=700px){.modal-background{padding:0 var(--spacing-quarter) 0 var(--spacing-quarter)}}.modal-background.modal--narrow .modal{max-width:500px}.modal-background.modal--medium .modal{max-width:800px}.modal-background.image .modal{width:auto;min-width:auto;max-width:95vw;max-height:95vh;box-shadow:none;background:0 0}.modal-background.image .modal .body{justify-content:center;align-items:center;padding:0;display:flex}.modal-background.image .modal .body img{width:auto;max-width:95vw;height:auto;max-height:95vh;display:block}.modal-background .modal{background-color:var(--color-surface);border-radius:var(--modal-panel-radius);border:1px solid var(--color-border);width:100%;min-width:300px;max-width:1000px;max-height:100%;box-shadow:var(--modal-panel-shadow);transition:max-width var(--speed) ease;flex-direction:column;margin:0 auto;display:flex;position:relative}.modal-background .modal .header{align-items:center;gap:var(--spacing-half);padding:var(--spacing);border-bottom:solid 1px var(--color-border);flex:0 auto;font-size:1.35rem;font-weight:700;display:flex}.modal-background .modal .header h3{min-width:0;font-size:inherit;font-weight:inherit;flex:auto;margin:0;padding:0}.modal-background .modal .header .close{width:36px;height:36px;color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-left:auto;padding:0;font-size:24px;line-height:1;display:flex}.modal-background .modal .header .close:hover{color:var(--color-text)}.modal-background .modal .body{min-height:0;padding:var(--spacing);flex:auto;overflow:auto}.modal-background .modal .footer{padding:var(--spacing);border-top:solid 1px var(--color-border);gap:var(--spacing-half);flex-direction:row;flex:0 auto;display:flex}.modal-background .modal .footer>*{flex:1 1 0;min-width:0}.modal-enter-active,.modal-leave-active{transition:opacity .25s}.modal-enter-active .modal,.modal-leave-active .modal{transition:transform .3s,opacity .3s}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal,.modal-leave-to .modal{opacity:0;transform:translateY(30px)scale(.95)}.interval{align-items:center;display:flex}.interval.info .line .text{color:var(--color-text-soft);font-style:italic}.interval>.action-btn{opacity:.55;transition:opacity var(--speed) ease, color var(--speed) ease, transform var(--speed) ease;flex-shrink:0;align-self:center}.interval>.action-btn:hover:not(.focused){opacity:.8}.interval>.action-btn.focused{opacity:1;color:var(--color-primary);transform:scale(1.06)}.interval .body{flex:1;min-width:0}.interval .body .line{align-items:center;gap:var(--swim-interval-line-gap,var(--spacing-half));border-radius:var(--border-radius);transition:transform .18s;display:flex}.interval .body .line .indent-arrows{flex-direction:row;flex-shrink:0;align-self:center;align-items:center;width:28px;min-height:1.25rem;display:flex}.interval .body .line .indent-arrows--readonly{opacity:.4}.interval .body .line .indent-arrows .indent-btn{color:var(--color-text);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;padding:0;font-size:9px;line-height:1;display:flex}.interval .body .line .indent-arrows .indent-btn:hover:not(:disabled){color:var(--color-primary)}.interval .body .line .indent-arrows .indent-btn:disabled{opacity:.25;cursor:default}.interval .body .line .difficulty-wrap{--swim-difficulty-wrap-width:40px;--swim-difficulty-bars-height:20px;flex:0 0 var(--swim-difficulty-wrap-width);width:var(--swim-difficulty-wrap-width);min-width:var(--swim-difficulty-wrap-width);max-width:var(--swim-difficulty-wrap-width);min-height:calc(var(--swim-difficulty-bars-height) + 2px);border-radius:var(--border-radius);flex-direction:row;justify-content:center;align-items:center;gap:0;display:flex;position:relative}.interval .body .line .difficulty-wrap--editable{z-index:2}.interval .body .line .difficulty-trigger{z-index:1;width:100%;min-height:calc(var(--swim-difficulty-bars-height) + 2px);border-radius:var(--border-radius);cursor:pointer;transition:background var(--speed) ease, box-shadow var(--speed) ease;background:0 0;border:none;justify-content:center;align-items:center;padding:2px 0;display:flex;position:relative}.interval .body .line .difficulty-trigger:hover,.interval .body .line .difficulty-trigger:focus-visible{background:var(--color-primary-soft);outline:none}.interval .body .line .difficulty-trigger:focus-visible{box-shadow:0 0 0 2px var(--color-primary-soft)}.interval .body .line .text{resize:none;flex:1;align-self:center;min-width:0;min-height:1.5em;padding:0;font-family:inherit;font-size:16px;line-height:1.5;overflow:hidden}.interval .body .line .equipment-icons{color:var(--color-primary);opacity:.55;transition:opacity var(--speed) ease;flex-shrink:0;align-self:center;align-items:center;gap:4px;display:inline-flex}.interval .body .line .equipment-icons .equipment-icon-text{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-soft);font-size:11px;font-weight:600}.interval .body .line:hover .equipment-icons,.interval .body .line:focus-within .equipment-icons{opacity:.85}.interval .body .line .enter-hint{color:var(--color-text-muted);-webkit-user-select:none;user-select:none;pointer-events:none;white-space:nowrap;flex-shrink:0;align-self:center;align-items:center;gap:5px;font-size:11px;line-height:1;display:inline-flex}@media screen and (width<=850px){.interval .body .line .enter-hint{display:none}}.interval .body .line .enter-hint .enter-hint-key{border:1px solid var(--color-border);border-radius:4px;justify-content:center;align-items:center;min-width:17px;height:16px;padding:0 4px;font-size:11px;line-height:1;display:inline-flex}.interval .body .enter-hint-fade-enter-active,.interval .body .enter-hint-fade-leave-active{transition:opacity .16s,transform .16s}.interval .body .enter-hint-fade-enter-from,.interval .body .enter-hint-fade-leave-to{opacity:0;transform:translate(4px)}.difficulty-inline-select{z-index:1;position:relative}.difficulty-inline-select .ss-main{opacity:0!important;pointer-events:none!important;width:100%!important;height:100%!important;min-height:0!important;box-shadow:none!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important;position:absolute!important;inset:0!important;overflow:hidden!important}.difficulty-inline-select .ss-main .ss-arrow,.difficulty-inline-select .ss-main .ss-values,.difficulty-inline-select .ss-main .ss-deselect{display:none!important}.modal-background.modal--interval-actions .modal{max-width:550px}.iv-diff-opt{align-items:center;gap:var(--spacing-half);display:inline-flex}.iv-diff-label{line-height:1}.iv-actions-body{gap:var(--spacing);flex-direction:column;display:flex}.iv-actions-body .iv-actions-section{gap:var(--spacing-half);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg-soft);flex-direction:column;display:flex}.iv-actions-body .iv-actions-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-soft);margin:0;font-size:.72rem;font-weight:700}.iv-actions-body .iv-actions-type-options{align-items:stretch;gap:var(--spacing-half);flex-direction:row;display:flex}.iv-actions-body .iv-actions-type{min-width:0;height:auto;min-height:0;padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);text-align:left;white-space:normal;cursor:pointer;transition:background var(--speed) ease, color var(--speed) ease, border-color var(--speed) ease;flex-direction:column;flex:1 1 0;align-items:flex-start;gap:6px;display:flex}.iv-actions-body .iv-actions-type:active{background:var(--color-primary-soft)}.iv-actions-body .iv-actions-type--active{border-color:var(--color-primary);background:var(--color-primary-soft)}.iv-actions-body .iv-actions-type--active .iv-actions-type-title{color:var(--color-primary-strong)}.iv-actions-body .iv-actions-type--active .iv-actions-type-desc{color:var(--color-text)}.iv-actions-body .iv-actions-type-title{color:var(--color-text);font-size:1.05rem;font-weight:600;line-height:1.2}.iv-actions-body .iv-actions-type-desc{width:100%;color:var(--color-text-muted);white-space:normal;overflow-wrap:break-word;font-size:.75rem;font-weight:400;line-height:1.4}.iv-actions-body .iv-actions-fields{align-items:flex-end;gap:var(--spacing-half);flex-flow:wrap;display:flex}.iv-actions-body .iv-actions-field{flex-direction:column;align-items:stretch;min-width:0;display:flex}.iv-actions-body .iv-actions-lbl{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-soft);margin-bottom:4px;font-size:.7rem;font-weight:600;line-height:1;display:block}.iv-actions-body .iv-actions-input{width:100%;font-family:var(--font-family);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-text);padding:8px 10px;font-size:.95rem;line-height:1.3}.iv-actions-body .iv-actions-input:focus{border-color:var(--color-primary);outline:none}.iv-actions-body .iv-actions-field--rep{flex-shrink:0;width:4.5rem}.iv-actions-body .iv-actions-field--dist{flex-shrink:0;width:5.5rem}.iv-actions-body .iv-actions-field--rest{flex-shrink:0;width:5rem}.iv-actions-body .iv-actions-field--sendoff,.iv-actions-body .iv-actions-field--stroke{flex:10rem;min-width:9rem}.iv-actions-body .iv-actions-field--difficulty{flex:0 14rem;min-width:8rem}.iv-actions-body .iv-actions-field--equip{flex:0 auto;min-width:0}.iv-actions-body .iv-actions-select{width:100%}.iv-actions-body .iv-actions-select .ss-main{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);min-height:40px}.iv-actions-body .iv-actions-select .ss-main:focus,.iv-actions-body .iv-actions-select .ss-main.ss-open{border-color:var(--color-primary);outline:none}.iv-actions-body .iv-actions-equip-icons{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.iv-actions-body .iv-actions-equip-btn{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;transition:background var(--speed) ease, color var(--speed) ease, border-color var(--speed) ease;justify-content:center;align-items:center;padding:0;display:inline-flex}.iv-actions-body .iv-actions-equip-btn:hover{border-color:var(--color-primary-soft);color:var(--color-primary)}.iv-actions-body .iv-actions-equip-btn--active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong)}.iv-actions-body .iv-actions-move-row{gap:var(--spacing-half);flex-direction:row;display:flex}.iv-actions-body .iv-actions-move-row .iv-actions-move{flex:1 1 0;min-width:0}.iv-actions-body .iv-actions-move,.iv-actions-body .iv-actions-delete{justify-content:center;align-items:center;gap:var(--spacing-half);width:100%;height:48px;padding:0 var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);cursor:pointer;transition:background var(--speed) ease, color var(--speed) ease, border-color var(--speed) ease;font-size:1rem;font-weight:600;display:flex}.iv-actions-body .iv-actions-move svg,.iv-actions-body .iv-actions-delete svg{width:20px;height:20px}.iv-actions-body .iv-actions-move{color:var(--color-text)}.iv-actions-body .iv-actions-move svg{color:var(--color-primary)}.iv-actions-body .iv-actions-move:active:not(:disabled){background:var(--color-primary-soft);color:var(--color-primary-strong)}.iv-actions-body .iv-actions-move:disabled{opacity:.35;cursor:not-allowed}.iv-actions-body .iv-actions-delete{color:var(--color-danger)}.iv-actions-body .iv-actions-delete:active{background:var(--color-notification-error-bg);border-color:var(--color-danger)}.sets .list{gap:var(--swim-sets-list-gap,var(--spacing-quarter));flex-direction:column;display:flex}.sets .set{border-radius:var(--border-radius);background:0 0;padding:0;transition:background-color .18s,padding .18s,transform .18s;display:flex;overflow:hidden}@media print{.sets .set{break-inside:avoid}}.sets .set .head .title,.sets .set .intervals .text{width:100%;color:var(--color-text);background-color:#0000;border:none;border-bottom:1px solid #0000;border-radius:0}.sets .set .head .title:focus,.sets .set .intervals .text:focus{background-color:var(--color-surface);outline:none}.sets .set>.action-btn{opacity:.55;transition:opacity var(--speed) ease, color var(--speed) ease, transform var(--speed) ease;flex-shrink:0;align-self:flex-start;margin-top:2px}@media print{.sets .set>.action-btn{display:none!important}}.sets .set>.action-btn:hover:not(.focused){opacity:.8}.sets .set>.action-btn.focused{opacity:1;color:var(--color-primary);transform:scale(1.06)}.sets .set .main{min-width:0;padding:0 0 0 var(--spacing-half);flex:1}@media screen and (width<=850px){.sets .set .main{padding-left:var(--spacing-quarter)}}.sets .set .main .head{align-items:baseline;gap:var(--spacing-quarter);--set-head-font-size:24px;display:flex}@media screen and (width<=850px){.sets .set .main .head{--set-head-font-size:18px}}.sets .set .main .head .repeat{font-family:var(--font-family);font-size:var(--set-head-font-size);letter-spacing:.2px;color:var(--color-text);width:2.1ch;box-shadow:none;cursor:pointer;appearance:none;vertical-align:baseline;background:0 0;border:none;flex-shrink:0;margin:0;padding:0;font-weight:700;line-height:1.25}.sets .set .main .head .repeat.two-digit{width:3.2ch}.sets .set .main .head .repeat.readonly{cursor:default;text-align:center}.sets .set .main .head .repeat:focus{outline:none}.sets .set .main .head .sep{font-size:var(--set-head-font-size);letter-spacing:.2px;color:var(--color-text-soft);flex-shrink:0;font-weight:700;line-height:1.25}.sets .set .main .head .title{min-width:0;font-size:var(--set-head-font-size);letter-spacing:.2px;flex:1;font-weight:700}.sets .set .main .head .total{align-items:baseline;gap:var(--spacing-quarter);flex-shrink:0;display:flex}.sets .set .main .head .total .value{color:var(--color-primary-strong);letter-spacing:-.02em;font-size:.9375rem;font-weight:700;line-height:1.2}.sets .set .main .head .total .unit{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem;font-weight:600}.sets .set .main .intervals{gap:var(--swim-intervals-gap,var(--spacing-quarter));padding-left:var(--spacing);border-radius:var(--border-radius);transition:border-color var(--speed) ease, background-color var(--speed) ease;flex-direction:column;display:flex}@media screen and (width<=850px){.sets .set .main .intervals{padding-left:var(--spacing-half)}.sets .set .main .intervals .interval .line{gap:var(--spacing-quarter)}}@media print{.sets .set .main .intervals .text::placeholder{color:#0000!important}.sets .set .main .intervals .indent-arrows{display:none!important}.sets .set .main .intervals .difficulty-wrap .difficulty-bar-seg{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}.sets .set .main .interval-add-wrap{margin-left:var(--spacing);width:min(100%,420px)}@media screen and (width<=850px){.sets .set .main .interval-add-wrap{margin-left:var(--spacing-half);width:100%}}@media print{.sets .set .main .interval-add-wrap{display:none!important}}.sets .set .main .add{text-align:left;width:50%;padding-left:var(--spacing-half);color:var(--color-text-muted);background-color:#0000;border:1px dashed #0000;justify-content:flex-start}.sets .set .main .add:hover{filter:none;border-color:var(--color-border);color:var(--color-text-soft)}.sets .set .main .interval-add{gap:var(--spacing-half);width:100%;display:flex}.sets .set .main .interval-add-btn{min-width:0;height:auto;min-height:0;padding:var(--spacing-half);border:1px dashed var(--color-border);border-radius:var(--border-radius);color:var(--color-text-muted);text-align:left;white-space:normal;cursor:pointer;transition:border-color var(--speed) ease, background-color var(--speed) ease, color var(--speed) ease;background-color:#0000;flex-direction:column;flex:1 1 0;align-items:flex-start;gap:2px;display:flex}.sets .set .main .interval-add-btn:hover{filter:none;border-color:var(--color-primary);background-color:var(--color-primary-soft);color:var(--color-text)}.sets .set .main .interval-add-btn:hover .interval-add-btn-desc{color:var(--color-text-soft)}.sets .set .main .interval-add-btn--info:hover{border-color:var(--color-text-soft);background-color:var(--color-bg-soft)}.sets .set .main .interval-add-btn-label{color:inherit;font-size:.9rem;font-weight:600;line-height:1.2}.sets .set .main .interval-add-btn-desc{color:var(--color-text-muted);transition:color var(--speed) ease;font-size:.68rem;font-weight:400;line-height:1.35}.sets>.add{text-align:left;width:50%;padding-left:var(--spacing-half);margin-top:var(--spacing);color:var(--color-text-muted);background-color:#0000;border:1px dashed #0000;justify-content:flex-start}@media screen and (width<=850px){.sets>.add{width:auto}}@media print{.sets>.add{display:none!important}}.sets>.add:hover{filter:none;border-color:var(--color-border);color:var(--color-text-soft)}.sets .action-btn{width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;display:flex}.sets .action-btn:hover{color:var(--color-primary)}.sets .action-btn:active{color:var(--color-primary-strong)}.sets .swim-set-enter-from,.sets .swim-set-appear-from{opacity:0;transform:translateY(-10px)}.sets .swim-set-enter-active,.sets .swim-set-appear-active{transition:opacity .35s,transform .35s}@media (prefers-reduced-motion:reduce){.sets .swim-set-enter-active,.sets .swim-set-appear-active{transition:none}}.sets .swim-set-leave-active{transition:opacity .2s,transform .2s}@media (prefers-reduced-motion:reduce){.sets .swim-set-leave-active{transition:none}}.sets .swim-set-leave-to,.sets .swim-iv-enter-from{opacity:0;transform:translateY(-6px)}.sets .swim-iv-enter-active{transition:opacity .3s,transform .3s}@media (prefers-reduced-motion:reduce){.sets .swim-iv-enter-active{transition:none}}.sets .swim-iv-leave-active{transition:opacity .18s,transform .18s}@media (prefers-reduced-motion:reduce){.sets .swim-iv-leave-active{transition:none}}.sets .swim-iv-leave-to{opacity:0;transform:translateY(-4px)}.sets .interval-add-swap-enter-active,.sets .interval-add-swap-leave-active{transition:opacity .18s}@media (prefers-reduced-motion:reduce){.sets .interval-add-swap-enter-active,.sets .interval-add-swap-leave-active{transition:none}}.sets .interval-add-swap-enter-from,.sets .interval-add-swap-leave-to{opacity:0}.sets .move-flash{animation:.4s flash-highlight}.set-actions-body{gap:var(--spacing);flex-direction:column;display:flex}.set-actions-body .set-actions-section{gap:var(--spacing-half);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg-soft);flex-direction:column;display:flex}.set-actions-body .set-actions-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-soft);margin:0;font-size:.72rem;font-weight:700}.set-actions-body .set-actions-move-row{gap:var(--spacing-half);flex-direction:row;display:flex}.set-actions-body .set-actions-move-row .set-actions-move{flex:1 1 0;min-width:0}.set-actions-body .set-actions-move,.set-actions-body .set-actions-delete{justify-content:center;align-items:center;gap:var(--spacing-half);width:100%;height:48px;padding:0 var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);cursor:pointer;transition:background var(--speed) ease, color var(--speed) ease, border-color var(--speed) ease;font-size:1rem;font-weight:600;display:flex}.set-actions-body .set-actions-move svg,.set-actions-body .set-actions-delete svg{width:20px;height:20px}.set-actions-body .set-actions-move{color:var(--color-text)}.set-actions-body .set-actions-move svg{color:var(--color-primary)}.set-actions-body .set-actions-move:active:not(:disabled){background:var(--color-primary-soft);color:var(--color-primary-strong)}.set-actions-body .set-actions-move:disabled{opacity:.35;cursor:not-allowed}.set-actions-body .set-actions-delete{color:var(--color-danger)}.set-actions-body .set-actions-delete:active{background:var(--color-notification-error-bg);border-color:var(--color-danger)}.modal-background.modal--set-actions .modal{max-width:550px}.log-modal{gap:var(--spacing);flex-direction:column;display:flex}.log-modal .roster-note{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.4}.log-modal .assign-fields{gap:var(--spacing-half);grid-template-columns:minmax(10rem,12rem) 1fr;display:grid}.log-modal .assign-fields.has-workout{grid-template-columns:1fr minmax(10rem,12rem)}.log-modal .assign-fields.has-workout .assign-field--note{grid-column:1/-1}@media (width<=640px){.log-modal .assign-fields,.log-modal .assign-fields.has-workout{grid-template-columns:1fr}}.log-modal .assign-field{gap:var(--spacing-quarter);flex-direction:column;min-width:0;display:flex}.log-modal .assign-field .ss-main{width:100%}.log-modal .assign-field-label{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft)}.log-modal .assign-input{width:100%;padding:var(--spacing-half) var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);box-sizing:border-box;font-family:inherit;font-size:14px}.log-modal .assign-input:focus{border-color:var(--color-primary);outline:none}.log-modal .who-head{margin-top:var(--spacing-quarter)}.log-modal .who-title{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.06em}.log-modal .select-all{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);transition:border-color var(--speed) ease;display:flex}.log-modal .select-all:hover{border-color:var(--color-primary-soft)}.log-modal .select-all .label{font-weight:var(--font-weight-bold);font-size:14px}.log-modal .select-all .count{color:var(--color-text-muted);margin-left:auto;font-size:12px}.log-modal .group-board{gap:var(--spacing-half);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.log-modal .group-card{gap:var(--spacing-half);padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);min-width:0;transition:border-color var(--speed) ease, background var(--speed) ease;flex-direction:column;display:flex}.log-modal .group-card.is-partial{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--color-border))}.log-modal .group-card.is-all{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface-alt))}.log-modal .group-card-head{align-items:center;gap:var(--spacing-half);min-width:0;display:flex}.log-modal .group-card-check{cursor:pointer;flex:1;min-width:0}.log-modal .group-card-name{font-weight:var(--font-weight-bold);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.log-modal .group-card-count{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12px}.log-modal .group-card-swimmers{flex-direction:column;gap:6px;display:flex}.log-modal .swimmer-chip{text-align:left;border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text-soft);cursor:pointer;transition:border-color var(--speed) ease, background var(--speed) ease, color var(--speed) ease;align-items:center;gap:5px;padding:6px 12px;font-family:inherit;font-size:.82rem;font-weight:600;line-height:1.2;display:flex}.log-modal .swimmer-chip:hover{border-color:var(--color-primary-soft);color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface))}.log-modal .swimmer-chip.selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--btn-color)}.log-modal .swimmer-chip.selected .swimmer-chip-logged{color:inherit;opacity:.9}.log-modal .swimmer-chip-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.log-modal .swimmer-chip-logged{letter-spacing:.04em;text-transform:uppercase;color:var(--color-success);flex-shrink:0;align-items:center;gap:4px;margin-left:auto;font-size:.68rem;font-weight:700;display:inline-flex}.log-modal-footer{align-items:stretch;gap:var(--spacing-half);flex-direction:row;width:100%;display:flex}.log-modal-footer .cancel-btn{padding:var(--spacing-half) var(--spacing);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;transition:color var(--speed) ease, border-color var(--speed) ease;background:0 0;flex:0 0 32%;font-size:14px}.log-modal-footer .cancel-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.log-modal-footer .send-btn{min-width:0;padding:var(--spacing-half) var(--spacing);background:var(--color-primary);color:var(--btn-color);border-radius:var(--border-radius);font-size:14px;font-weight:var(--font-weight-bold);white-space:normal;text-align:center;cursor:pointer;transition:background var(--speed) ease, opacity var(--speed) ease;border:none;flex:1 1 0;line-height:1.3}.log-modal-footer .send-btn:hover:not(:disabled){background:var(--color-primary-strong)}.log-modal-footer .send-btn:disabled{opacity:.5;cursor:default}.assign-history-modal .assign-history-hint{color:var(--color-text-muted);margin:0;font-size:14px;line-height:1.4}.assign-history-modal .assign-history-days{gap:var(--spacing);flex-direction:column;display:flex}.assign-history-modal .assign-history-day{gap:var(--spacing-half);flex-direction:column;display:flex}.assign-history-modal .assign-history-day-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:12px;font-weight:800}.assign-history-modal .assign-history-group{gap:var(--spacing-quarter);flex-direction:column;display:flex}.assign-history-modal .assign-history-group-label{color:var(--color-text-soft);margin:0;font-size:13px;font-weight:700}.assign-history-modal .assign-history-list{gap:var(--spacing-half);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.assign-history-modal .assign-history-row{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);font-size:14px;display:flex}.assign-history-modal .assign-history-row .name{min-width:0;font-weight:var(--font-weight-bold);flex:1}.assign-history-modal .assign-history-row .badge{font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;border-radius:8px;padding:2px 6px}.assign-history-modal .assign-history-row .badge--done{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.assign-history-modal .assign-history-row .badge--pending{background:var(--color-primary-soft);color:var(--color-primary-strong)}.assign-history-modal .assign-history-row .badge--unlinked{background:var(--color-surface);color:var(--color-text-muted)}.assign-history-footer{width:100%}.assign-history-footer .btn{width:100%;padding:var(--spacing-half) var(--spacing)}.recipient-picker{border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.recipient-picker .picker-row{align-items:center;gap:var(--spacing-half);min-height:36px;padding:0 var(--spacing-half);border-bottom:1px solid var(--color-border);font-size:13px;display:flex}.recipient-picker .picker-row .input-checkbox-label{flex-shrink:0;gap:0}.recipient-picker .picker-row .count{color:var(--color-text-muted);white-space:nowrap;margin-left:auto;font-size:12px}.recipient-picker .select-all{background:var(--color-surface-alt);cursor:pointer}.recipient-picker .select-all .label{font-weight:var(--font-weight-bold)}.recipient-picker .groups{max-height:320px;margin:0;padding:0;list-style:none;overflow-y:auto}.recipient-picker .groups>li:last-child>.group-row:last-child,.recipient-picker .groups>li:last-child .member:last-child{border-bottom:none}.recipient-picker .group-row{padding-right:0}.recipient-picker .group-row .group-toggle{align-self:stretch;align-items:center;gap:var(--spacing-half);min-width:0;height:auto;min-height:0;padding:0 var(--spacing-half) 0 0;color:inherit;text-align:left;background:0 0;border:none;border-radius:0;flex:1;font-size:13px;font-weight:400;display:flex}.recipient-picker .group-row .group-toggle:hover{filter:none}.recipient-picker .group-row .group-toggle:hover .caret{color:var(--color-text)}.recipient-picker .group-row .group-toggle .name{text-overflow:ellipsis;font-weight:var(--font-weight-bold);overflow:hidden}.recipient-picker .group-row .group-toggle .caret{width:12px;color:var(--color-text-muted);flex-shrink:0;font-size:11px;transition:transform .25s}.recipient-picker .group-row .group-toggle .caret.open{transform:rotate(180deg)}.recipient-picker .members{background:var(--color-bg-soft);margin:0;padding:0;list-style:none}.recipient-picker .members .member{padding-left:calc(var(--spacing) + var(--spacing-half));cursor:pointer}.recipient-picker .members .member .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recipient-picker .members .member .email{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);margin-left:auto;font-size:12px;overflow:hidden}.rich-text-field{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface)}.rich-text-field:focus-within{border-color:var(--color-primary)}.rich-text-field .rich-text-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-surface-alt);border-radius:var(--border-radius) var(--border-radius) 0 0;flex-wrap:wrap;gap:2px;padding:4px;display:flex}.rich-text-field .rich-text-toolbar button{min-width:32px;height:30px;font-size:12px;font-weight:var(--font-weight-bold);background:0 0;border-color:#0000;padding:0 8px}.rich-text-field .rich-text-toolbar button.active{color:var(--color-primary-strong);background:var(--color-primary-soft)}.rich-text-field .rich-text-link{gap:var(--spacing-quarter);border-bottom:1px solid var(--color-border);padding:6px;display:flex}.rich-text-field .rich-text-link input{flex:1;min-width:0}.rich-text-field .rich-text-input{outline:none;min-height:140px;max-height:480px;padding:10px 12px;font-size:14px;line-height:1.6;overflow-y:auto}.rich-text-field .rich-text-input>:first-child{margin-top:0}.rich-text-field .rich-text-input>:last-child{margin-bottom:0}.rich-text-field .rich-text-input p,.rich-text-field .rich-text-input ul,.rich-text-field .rich-text-input ol,.rich-text-field .rich-text-input blockquote{margin:0 0 .75em}.rich-text-field .rich-text-input h2{margin:1em 0 .4em;font-size:1.3em}.rich-text-field .rich-text-input h3{margin:.9em 0 .35em;font-size:1.1em}.rich-text-field .rich-text-input strong{font-weight:var(--font-weight-bold)}.rich-text-field .rich-text-input em{font-style:italic}.rich-text-field .rich-text-input u{text-decoration:underline}.rich-text-field .rich-text-input ul,.rich-text-field .rich-text-input ol{padding-left:1.4em}.rich-text-field .rich-text-input ul{list-style:outside}.rich-text-field .rich-text-input ol{list-style:decimal}.rich-text-field .rich-text-input li>p{margin:0}.rich-text-field .rich-text-input blockquote{border-left:3px solid var(--color-border);color:var(--color-text-muted);padding-left:12px}.rich-text-field .rich-text-input a{color:var(--color-primary);text-decoration:underline}.rich-text-field .rich-text-input img{border-radius:var(--border-radius);max-width:100%;height:auto;margin:.75em 0;display:block}.compose-form{gap:var(--spacing);flex-direction:column;display:flex}.compose-form .compose-note{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.4}.compose-form .compose-body .field-label{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft)}.compose-form .compose-body .rich-text-input{min-height:120px;max-height:360px}.compose-form .swim-attached{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half);border:1px dashed var(--color-border);border-radius:var(--border-radius);color:var(--color-text-soft);font-size:13px;display:flex}.compose-form .recipients-label{margin-bottom:calc(var(--spacing-half) * -1);font-size:13px;font-weight:var(--font-weight-bold);color:var(--color-text-soft)}.compose-form .limit-notice,.compose-form .send-error{padding:var(--spacing-half);border-radius:var(--border-radius);margin:0;font-size:13px;line-height:1.4}.compose-form .limit-notice{border:1px solid var(--color-warning);background:var(--color-surface-alt)}.compose-form .limit-notice a{color:var(--color-primary);font-weight:var(--font-weight-bold)}.compose-form .limit-notice .link-btn{height:auto;min-height:0;color:var(--color-primary);font:inherit;font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.compose-form .send-error{color:var(--color-danger)}.compose-footer{align-items:stretch;gap:var(--spacing-half);flex-direction:row;width:100%;display:flex}.compose-footer .cancel-btn{padding:var(--spacing-half) var(--spacing);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;transition:color var(--speed) ease, border-color var(--speed) ease;background:0 0;flex:0 0 32%;font-size:14px}.compose-footer .cancel-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.compose-footer .send-btn{min-width:0;padding:var(--spacing-half) var(--spacing);background:var(--color-primary);color:var(--btn-color);border-radius:var(--border-radius);font-size:14px;font-weight:var(--font-weight-bold);white-space:normal;text-align:center;cursor:pointer;transition:background var(--speed) ease, opacity var(--speed) ease;border:none;flex:1 1 0;line-height:1.3}.compose-footer .send-btn:hover:not(:disabled){background:var(--color-primary-strong)}.compose-footer .send-btn:disabled{opacity:.5;cursor:default}.compose-footer .send-btn svg{height:1em;margin-right:6px}.share-modal{align-items:center;gap:var(--spacing);padding:var(--spacing-half) 0;flex-direction:column;display:flex}.share-modal .share-qr{padding:var(--spacing);background:var(--color-white);border-radius:var(--border-radius);box-shadow:0 2px 12px var(--color-shadow-black-sm);justify-content:center;align-items:center;display:flex}.share-modal .share-qr .qr-img{width:220px;height:220px;display:block}.share-modal .share-qr .qr-placeholder{width:220px;height:220px;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.share-modal .share-hint{text-align:center;color:var(--color-text-soft);margin:0;font-size:14px;line-height:1.5}.share-modal .share-code-row{align-items:center;gap:var(--spacing-half);display:flex}.share-modal .share-code-row .share-code-label{color:var(--color-text-muted);font-size:13px;font-weight:600}.share-modal .share-code-row .share-code-btn{background:var(--color-primary-soft);border-radius:var(--border-radius);cursor:pointer;transition:background-color var(--speed) ease;border:none;align-items:center;gap:6px;padding:4px 12px;display:inline-flex}.share-modal .share-code-row .share-code-btn:hover{background:color-mix(in srgb, var(--color-primary-soft) 70%, var(--color-primary))}.share-modal .share-code-row .share-code-btn .share-code-value{letter-spacing:.12em;color:var(--color-primary-strong);font-family:monospace;font-size:1.1rem;font-weight:700}.share-modal .share-code-row .share-code-btn .share-code-icon{color:var(--color-primary);opacity:.6;font-size:12px}.share-modal .share-link-row{border:1px solid var(--color-border);border-radius:var(--border-radius);align-items:center;gap:0;width:100%;display:flex;overflow:hidden}.share-modal .share-link-row .share-link-input{min-width:0;padding:var(--spacing-half) var(--spacing);background:var(--color-surface-alt);color:var(--color-text);border:none;outline:none;flex:1;font-family:monospace;font-size:13px}.share-modal .share-link-row .share-link-copy{padding:var(--spacing-half) var(--spacing);border:none;border-left:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);cursor:pointer;transition:background-color var(--speed) ease, color var(--speed) ease;flex-shrink:0;font-size:14px}.share-modal .share-link-row .share-link-copy:hover{background:var(--color-primary-soft);color:var(--color-primary-strong)}@media print{.share-modal{display:none!important}}.share-footer{width:100%}.share-footer .btn{width:100%;padding:var(--spacing-half) var(--spacing)}.diff-bar-wrap{flex-direction:column;gap:3px;display:flex}.diff-bar{background:color-mix(in srgb, var(--color-border) 50%, transparent);border-radius:3px;display:flex;overflow:hidden}.diff-segment{min-width:2px;height:100%;transition:width .3s}.diff-legend{flex-wrap:wrap;gap:6px;display:flex}.diff-legend-item{align-items:center;gap:3px;display:inline-flex}.diff-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.diff-label{color:var(--color-text-soft);font-size:.65rem;font-weight:600}.diff-pct{color:var(--color-text-muted);font-size:.65rem;font-weight:700}.swim-stats{border-top:1px solid var(--color-border);padding-top:var(--spacing-half)}.swim-stats--modal-trigger{cursor:pointer;margin:0 calc(-1 * var(--spacing-quarter));padding:var(--spacing-quarter);transition:background .15s}.swim-stats--compact{border-top:none;padding-top:0}.swim-stats--compact .swim-stats-title{margin-bottom:var(--spacing-quarter);font-size:.78rem}.swim-stats--compact .stat-row{grid-template-columns:64px 1fr auto auto;gap:4px;padding:2px 0}.swim-stats--compact .stat-name{font-size:.72rem}.swim-stats--compact .stat-bar-wrap{height:4px}.swim-stats--compact .stat-value{font-size:.7rem}.swim-stats--compact .stat-pct{font-size:.65rem}.swim-stats .swim-stats-title{margin:0 0 var(--spacing-half);color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:baseline;gap:var(--spacing-half);width:100%;font-size:.85rem;font-weight:700;line-height:1.2;display:flex}.swim-stats .swim-stats-title-main{align-items:center;gap:6px;min-width:0;display:flex}.swim-stats .swim-stats-title--clickable .swim-stats-title-main{cursor:pointer;-webkit-user-select:none;user-select:none}.swim-stats .swim-stats-title--clickable .swim-stats-title-main:hover{color:var(--color-text)}.swim-stats .swim-stats-title .stats-see-all{height:auto;min-height:unset;color:var(--color-primary);cursor:pointer;white-space:nowrap;text-transform:none;letter-spacing:normal;background:0 0;border:none;flex:none;align-self:auto;margin:0;padding:0;font-family:inherit;font-size:.72rem;font-weight:600;line-height:1.2;display:inline}.swim-stats .swim-stats-title .stats-see-all:hover{color:var(--color-primary-strong);text-decoration:underline}.swim-stats .stats-caret{font-size:.75rem;transition:transform .25s}.swim-stats .stats-caret--open{transform:rotate(90deg)}.swim-stats .stats-details{overflow:hidden}.swim-stats .stats-collapsed{margin-bottom:0}.swim-stats .stats-diff-shorthand{flex-shrink:0}.swim-stats .stat-group{margin-bottom:var(--spacing-half)}.swim-stats .stat-group:last-child{margin-bottom:0}.swim-stats .stat-group-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.72rem;font-weight:600}.swim-stats .stat-row{grid-template-columns:80px 1fr auto auto;align-items:center;gap:6px;padding:3px 0;display:grid}.swim-stats .stat-row:not(:last-child){border-bottom:1px solid color-mix(in srgb, var(--color-border) 40%, transparent)}.swim-stats .stat-name{color:var(--color-text);text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:600;overflow:hidden}.swim-stats .stat-name .stat-name-suffix{color:var(--color-text-muted);text-transform:none;font-size:.82em;font-weight:500}.swim-stats .stat-bar-wrap{background:color-mix(in srgb, var(--color-border) 50%, transparent);border-radius:3px;height:6px;overflow:hidden}.swim-stats .stat-bar{border-radius:3px;min-width:2px;height:100%;transition:width .4s}.swim-stats .stat-bar--stroke{background:var(--color-primary)}.swim-stats .stat-bar--equipment{background:var(--color-info)}.swim-stats .stat-bar--distance{background:color-mix(in srgb, var(--color-primary) 65%, var(--color-text-muted))}.swim-stats .stat-bar--other{background:var(--color-difficulty-other)}.swim-stats .stat-value{color:var(--color-text);text-align:right;min-width:36px;font-size:.75rem;font-weight:700}.swim-stats .stat-pct{color:var(--color-text-muted);text-align:right;min-width:28px;font-size:.7rem;font-weight:600}.stats-fade-enter-active,.stats-fade-leave-active{transition:opacity .3s,transform .3s}.stats-fade-enter-from,.stats-fade-leave-to{opacity:0;transform:translateY(8px)}.stat-row-enter-active,.stat-row-leave-active{transition:opacity .25s,transform .25s}.stat-row-enter-from{opacity:0;transform:translate(-8px)}.stat-row-leave-to{opacity:0;transform:translate(8px)}.stat-row-move{transition:transform .25s}.stats-collapse-enter-active,.stats-collapse-leave-active{max-height:600px;transition:max-height .3s,opacity .3s;overflow:hidden}.stats-collapse-enter-from,.stats-collapse-leave-to{opacity:0;max-height:0;overflow:hidden}.print-tips-modal{gap:var(--spacing);flex-direction:column;display:flex}.print-tips-modal .print-tips-intro{color:var(--color-text-soft);margin:0;font-size:.95rem;line-height:1.5}.print-tips-modal .print-tips-intro .print-tips-learn{color:var(--color-primary);font-weight:600;text-decoration:none}.print-tips-modal .print-tips-intro .print-tips-learn:hover{text-decoration:underline}.print-tips-modal .tip{align-items:flex-start;gap:var(--spacing);display:flex}.print-tips-modal .tip .tip-icon{background:var(--color-primary-soft);width:38px;height:38px;color:var(--color-primary-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.print-tips-modal .tip .tip-body{flex:1;min-width:0}.print-tips-modal .tip .tip-title{color:var(--color-text);font-size:.95rem;font-weight:700}.print-tips-modal .tip .tip-desc{color:var(--color-text-soft);margin:2px 0 0;font-size:.875rem;line-height:1.5}.print-tips-modal .tip .tip-desc strong{color:var(--color-text)}.print-tips-modal .print-dark-toggle{align-items:flex-start;gap:var(--spacing-half);width:100%;margin-top:var(--spacing-half);padding:var(--spacing-half) 0 0;box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity var(--speed) ease;display:flex}.print-tips-modal .print-dark-toggle .input-checkbox-box{margin-top:1px}.print-tips-modal .print-dark-toggle .print-dark-toggle-text{flex-direction:column;gap:1px;min-width:0;display:flex}.print-tips-modal .print-dark-toggle .print-dark-toggle-label{color:var(--color-text-soft);font-size:.875rem;font-weight:600;line-height:1.2}.print-tips-modal .print-dark-toggle .print-dark-toggle-desc{color:var(--color-text-muted);font-size:.8rem;line-height:1.35}.print-tips-modal .print-dark-toggle.print-dark-toggle--on .print-dark-toggle-label{color:var(--color-text)}.print-tips-footer{align-items:stretch;gap:var(--spacing);flex-direction:column;width:100%;display:flex}.print-tips-footer .print-tips-skip{align-items:center;gap:var(--spacing-half);color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;display:flex}.print-tips-footer .print-btn{justify-content:center;align-items:center;gap:var(--spacing-half);width:100%;min-height:44px;padding:0 var(--spacing);border-radius:var(--border-radius);background:var(--color-primary);color:var(--btn-color);cursor:pointer;transition:background var(--speed) ease;border:none;font-size:.95rem;font-weight:600;display:inline-flex}.print-tips-footer .print-btn:hover{background:var(--color-primary-strong)}.swim-settings{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing);box-sizing:border-box;gap:var(--spacing);height:calc(100vh - var(--header-height) - var(--swim-page-padding-y));flex-direction:column;display:flex;position:sticky;top:0;overflow:auto}@media screen and (width<=1023px){.swim-settings{z-index:40;border:none;border-left:1px solid var(--color-border);width:320px;max-width:85vw;height:100vh;box-shadow:0 0 24px color-mix(in srgb, var(--color-text) 12%, transparent);border-radius:0;transition:transform .25s;position:fixed;top:0;right:0;transform:translate(100%)}.swim-settings.open{transform:translate(0)}}.swim-settings>.swim-stats{padding-top:var(--spacing);margin-top:auto}.swim-settings .section{gap:var(--spacing-half);padding-bottom:var(--spacing-half);border-bottom:1px solid var(--color-border);flex-direction:column;display:flex}.swim-settings .creator-info{padding-bottom:var(--spacing-half);border-bottom:1px solid var(--color-border)}.swim-settings .creator-info .creator-name{color:var(--color-primary);transition:color var(--speed) ease;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;text-decoration:none;display:block;overflow:hidden}.swim-settings .creator-info .creator-name:hover{color:var(--color-primary-strong);text-decoration:underline}.swim-settings .actions{gap:var(--spacing);flex-direction:column;display:flex}.swim-settings .actions .action-group{gap:var(--spacing-half);flex-direction:column;display:flex}.swim-settings .actions .tour-cta{color:var(--color-primary-strong)}.swim-settings .actions .tour-cta .icon{background:color-mix(in srgb, var(--color-primary) 16%, transparent);color:var(--color-primary-strong)}.swim-settings .actions .tour-link-fade-enter-active,.swim-settings .actions .tour-link-fade-leave-active{transition:opacity .22s,max-height .28s;overflow:hidden}@media (prefers-reduced-motion:reduce){.swim-settings .actions .tour-link-fade-enter-active,.swim-settings .actions .tour-link-fade-leave-active{transition:opacity .2s}}.swim-settings .actions .tour-link-fade-enter-from,.swim-settings .actions .tour-link-fade-leave-to{opacity:0;max-height:0}.swim-settings .actions .tour-link-fade-enter-to,.swim-settings .actions .tour-link-fade-leave-from{max-height:80px}.swim-settings .actions .save-block{gap:var(--spacing-quarter);flex-direction:column;width:100%;display:flex}.swim-settings .actions .draft-restore-hint,.swim-settings .actions .saving-to-team{color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.4}.swim-settings .actions .save-meta-row{justify-content:space-between;align-items:center;gap:var(--spacing);width:100%;min-height:25px;display:flex}.swim-settings .actions .save-meta-row .save-meta-visibility,.swim-settings .actions .save-meta-row .save-meta-unit{min-width:0}.swim-settings .actions .save-meta-row .save-meta-unit{flex-shrink:0;margin-left:auto}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main{width:auto;height:25px;min-height:25px}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main .ss-values{padding-top:0;padding-bottom:0}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main .ss-values .ss-single{font-weight:700;line-height:1}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main .ss-values .ss-single .visibility-status-label{font-weight:700}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main .ss-values .ss-single .visibility-status-label.is-public{color:var(--color-success)}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main .ss-values .ss-single .visibility-status-label.is-unlisted{color:var(--color-warning)}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main .ss-values .ss-single .visibility-status-label.is-private{color:var(--color-danger)}.swim-settings .actions .save-meta-row .save-meta-visibility .ss-main .ss-values .ss-single .visibility-status-label.is-draft{color:var(--color-notification-info)}.swim-settings .actions .action-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:11px;font-weight:800}.swim-settings .actions .row{gap:var(--spacing-half);grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid}.swim-settings .actions .hint{color:var(--color-text-muted);padding:var(--spacing-half) 0 0;font-size:12px;line-height:1.4}.swim-settings .actions .start-swim-hint{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border:1px dashed var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);color:var(--color-text-soft);text-align:left;margin:0;font-size:13px;line-height:1.4;display:flex}.swim-settings .actions .start-swim-hint .start-swim-hint-icon{color:var(--color-text-muted);flex-shrink:0}.swim-settings .actions .start-swim-hint.start-swim-hint--action{box-sizing:border-box;cursor:pointer;width:100%;transition:border-color var(--speed) ease, background var(--speed) ease, color var(--speed) ease;font-family:inherit}.swim-settings .actions .start-swim-hint.start-swim-hint--action:hover{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));color:var(--color-text)}.swim-settings .actions .super-actions{margin-top:var(--spacing-half);padding-top:var(--spacing);border-top:1px dashed color-mix(in srgb, var(--color-warning) 45%, var(--color-border))}.swim-settings .actions .super-actions .super-actions-label{margin:0 0 var(--spacing-half);letter-spacing:.08em;text-transform:uppercase;color:var(--color-warning);font-size:11px;font-weight:800}.swim-settings .actions .super-actions .super-json-row{justify-content:space-between;align-items:center;gap:var(--spacing-half);box-sizing:border-box;width:100%;padding:var(--spacing-half) var(--spacing);min-height:calc(var(--spacing-half) * 2 + var(--spacing) * 2);background:var(--color-surface-alt);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:border-color var(--speed) ease, background var(--speed) ease;display:flex}.swim-settings .actions .super-actions .super-json-row:focus-within{border-color:var(--color-primary-soft)}.swim-settings .actions .super-actions .super-json-text{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.swim-settings .actions .super-actions .super-json-title{color:var(--color-text);font-size:14px;font-weight:700;line-height:1.3}.swim-settings .actions .super-actions .super-json-desc{color:var(--color-text-muted);font-size:11px;font-weight:500;line-height:1.3}.swim-settings .actions .super-actions .super-json-btns{align-items:center;gap:var(--spacing-quarter);flex-shrink:0;display:flex}.swim-settings .actions .super-actions .super-json-btn{padding:var(--spacing-half) var(--spacing);min-height:calc(var(--spacing) * 2);border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;white-space:nowrap;transition:background var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease;margin:0;font-size:13px;font-weight:700;line-height:1.2}.swim-settings .actions .super-actions .super-json-btn:hover{background:var(--color-bg-soft);border-color:var(--color-primary-soft);color:var(--color-primary-strong)}.swim-settings .cta{align-items:center;gap:var(--spacing-half);width:100%;height:auto;min-height:auto;padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);cursor:pointer;text-align:left;white-space:normal;transition:background-color var(--speed) ease, border-color var(--speed) ease, box-shadow var(--speed) ease;border:1px solid #0000;align-self:stretch;display:flex}.swim-settings .cta .icon{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2);border-radius:var(--border-radius);flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.swim-settings .cta .text{flex:1;min-width:0}.swim-settings .cta .text .label{font-size:14px;font-weight:700;line-height:1.3;display:block}.swim-settings .cta .text .desc{margin-top:1px;font-size:11px;line-height:1.3;display:block}.swim-settings .cta.primary{background:var(--color-primary);color:var(--btn-color);border-color:var(--color-primary)}.swim-settings .cta.primary .icon{background:color-mix(in srgb, var(--btn-color) 20%, transparent);color:var(--btn-color)}.swim-settings .cta.primary .text .desc{color:color-mix(in srgb, var(--btn-color) 75%, transparent)}.swim-settings .cta.primary:hover{background:var(--color-primary-strong);border-color:var(--color-primary-strong)}.swim-settings .cta.secondary{background:var(--color-surface-alt);color:var(--color-text);border-color:var(--color-border)}.swim-settings .cta.secondary .icon{background:var(--color-primary-soft);color:var(--color-primary-strong)}.swim-settings .cta.secondary .text .desc{color:var(--color-text-muted)}.swim-settings .cta.secondary:hover{background:var(--color-bg-soft);border-color:var(--color-primary-soft)}.swim-settings .cta.print-cta .print-dark-option.input-checkbox-label{margin-left:var(--spacing-half);flex-direction:column;align-items:center;gap:2px}.swim-settings .cta.print-cta .print-dark-option.input-checkbox-label .print-dark-word{font-size:10px;font-weight:600;line-height:1}.swim-settings .cta.assign-cta .assign-history-action{margin-left:var(--spacing-half);padding:var(--spacing-quarter) var(--spacing-half);border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:border-color var(--speed) ease, background var(--speed) ease, color var(--speed) ease;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;display:flex}.swim-settings .cta.assign-cta .assign-history-action .assign-history-label{text-align:center;color:var(--color-text-soft);white-space:nowrap;font-size:10px;font-weight:700;line-height:1.2}.swim-settings .cta.assign-cta .assign-history-action:hover{border-color:var(--color-primary-soft);background:var(--color-bg-soft)}.swim-settings .cta.assign-cta .assign-history-action:hover .assign-history-label{color:var(--color-primary-strong)}.swim-settings .cta.did-it-cta{background:var(--color-success);color:var(--btn-color);border-color:var(--color-success)}.swim-settings .cta.did-it-cta .icon{background:color-mix(in srgb, var(--color-white) 20%, transparent);color:var(--btn-color)}.swim-settings .cta.did-it-cta .text .desc{color:color-mix(in srgb, var(--color-white) 75%, transparent)}.swim-settings .cta.did-it-cta:hover{background:var(--color-success-hover);border-color:var(--color-success-hover)}.swim-settings .cta.did-it-cta:disabled{opacity:.6;cursor:not-allowed}.swim-settings .cta.subtle{color:var(--color-text-soft);padding:var(--spacing-quarter) var(--spacing);background:0 0;border-color:#0000}.swim-settings .cta.subtle .icon{color:var(--color-text-muted);width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5);background:0 0}.swim-settings .cta.subtle .text .desc{color:var(--color-text-muted)}.swim-settings .cta.subtle:hover{background:var(--color-surface-alt);color:var(--color-text)}.save-meta-visibility.ss-main .visibility-status-desc,.save-meta-visibility .ss-main .visibility-status-desc{display:none}.ss-content .ss-list .ss-option:has(.visibility-status-label){white-space:normal;height:auto;min-height:auto;padding-top:var(--spacing-half);padding-bottom:var(--spacing-half);flex-direction:column;align-items:stretch;line-height:1.4;display:flex}.ss-content .ss-list .ss-option:has(.visibility-status-label) .visibility-status-label{font-size:14px;font-weight:600;display:block}.ss-content .ss-list .ss-option:has(.visibility-status-label) .visibility-status-label.is-public{color:var(--color-success)}.ss-content .ss-list .ss-option:has(.visibility-status-label) .visibility-status-label.is-unlisted{color:var(--color-warning)}.ss-content .ss-list .ss-option:has(.visibility-status-label) .visibility-status-label.is-private{color:var(--color-danger)}.ss-content .ss-list .ss-option:has(.visibility-status-label) .visibility-status-label.is-draft{color:var(--color-notification-info)}.ss-content .ss-list .ss-option:has(.visibility-status-label) .visibility-status-desc{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:12px;font-weight:400;line-height:1.35;display:block;overflow:hidden}.ss-content .ss-list .ss-option:has(.visibility-status-label).ss-highlighted .visibility-status-label{color:var(--btn-color)}.ss-content .ss-list .ss-option:has(.visibility-status-label):not(.ss-disabled).ss-selected .visibility-status-label{color:var(--btn-color)}.ss-content .ss-list .ss-option:has(.visibility-status-label).ss-highlighted .visibility-status-desc{color:var(--color-on-primary-muted)}.ss-content .ss-list .ss-option:has(.visibility-status-label):not(.ss-disabled).ss-selected .visibility-status-desc{color:var(--color-on-primary-muted)}.generator-error-modal{align-items:center;gap:var(--spacing);text-align:center;padding:var(--spacing-half) 0;flex-direction:column;display:flex}.generator-error-modal .error-icon{border-radius:50%;justify-content:center;align-items:center;width:3.25rem;height:3.25rem;font-size:1.5rem;display:inline-flex}.generator-error-modal .error-icon.is-error{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.generator-error-modal .error-icon.is-limit{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary-strong)}.generator-error-modal .error-message{color:var(--color-text-soft);margin:0;font-size:.95rem;line-height:1.55}.generator-error-modal .error-message strong{color:var(--color-text)}.generator-error-modal .perk-row{justify-content:center;align-items:flex-start;gap:var(--spacing-half);width:100%;margin-top:var(--spacing-quarter);display:flex}.generator-error-modal .perk{align-items:center;gap:var(--spacing-quarter);min-width:0;padding:var(--spacing-half) var(--spacing-quarter);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface));flex-direction:column;flex:1 1 0;display:flex}.generator-error-modal .perk .perk-icon{background:var(--color-primary-soft);width:2rem;height:2rem;color:var(--color-primary-strong);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex}.generator-error-modal .perk span{color:var(--color-text-soft);font-size:.72rem;font-weight:600;line-height:1.25}.generator-error-footer{gap:var(--spacing-half);flex-direction:column;width:100%;display:flex}@media (width>=480px){.generator-error-footer{flex-direction:row;align-items:stretch}}.generator-error-footer .error-signup,.generator-error-footer .error-ok{flex:1 1 0;width:100%;min-width:0}.generator-error-footer .error-signup{min-height:44px;padding:0 var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color var(--speed) ease, background var(--speed) ease;justify-content:center;align-items:center;font-size:.9rem;font-weight:600;display:inline-flex}.generator-error-footer .error-signup:hover{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface))}.generator-error-footer .error-ok{min-height:44px;padding:0 var(--spacing);border-radius:var(--border-radius);background:var(--color-primary);color:var(--btn-color);cursor:pointer;transition:background var(--speed) ease;border:none;justify-content:center;align-items:center;font-size:.95rem;font-weight:600;display:inline-flex}.generator-error-footer .error-ok:hover{background:var(--color-primary-strong)}.import-modal{gap:var(--spacing);flex-direction:column;display:flex}.import-modal .import-intro{color:var(--color-text-soft);margin:0;font-size:.95rem;line-height:1.5}.import-modal .import-features{justify-content:center;align-items:center;gap:var(--spacing-half);flex-wrap:wrap;display:flex}.import-modal .import-feature{align-items:center;gap:var(--spacing-quarter);flex-direction:column;min-width:88px;display:flex}.import-modal .import-feature .import-feature-icon{background:var(--color-primary-soft);width:44px;height:44px;color:var(--color-primary-strong);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.import-modal .import-feature .import-feature-label{color:var(--color-text-soft);text-align:center;font-size:.8rem;font-weight:600}.import-modal .import-feature-arrow{color:var(--color-text-muted);font-size:18px}.import-modal .import-textarea{resize:vertical;width:100%;min-height:320px;padding:var(--spacing-half) var(--spacing);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:border-color var(--speed) ease;outline:none;font-family:inherit;font-size:.95rem;line-height:1.45}.import-modal .import-textarea::placeholder{color:var(--color-text-muted);opacity:.7}.import-modal .import-textarea:focus{border-color:color-mix(in srgb, var(--color-text) 28%, var(--color-border))}.import-footer{width:100%;display:flex}.import-footer .import-submit{justify-content:center;align-items:center;gap:var(--spacing-half);min-height:44px;padding:0 var(--spacing);border-radius:var(--border-radius);background:var(--color-primary);color:var(--btn-color);cursor:pointer;transition:background var(--speed) ease;border:none;flex:auto;font-size:.95rem;font-weight:600;display:inline-flex}.import-footer .import-submit:hover:not(:disabled){background:var(--color-primary-strong)}.import-footer .import-submit:disabled{opacity:.65;cursor:not-allowed}.generate-bar{width:100%;position:relative}@media print{.generate-bar{display:none!important}}.generate-bar .input-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:0 2px 8px color-mix(in srgb, var(--color-text) 8%, transparent);transition:border-color var(--speed) ease, box-shadow var(--speed) ease;align-items:stretch;display:flex;overflow:hidden}.generate-bar .input-wrap:focus-within{border-color:color-mix(in srgb, var(--color-text) 28%, var(--color-border))}.generate-bar .input-wrap.has-dropdown{border-bottom-right-radius:0;border-bottom-left-radius:0}@media (width<=520px){.generate-bar .input-wrap{border-radius:var(--border-radius);flex-wrap:wrap}.generate-bar .input-wrap.has-dropdown{border-bottom-right-radius:0;border-bottom-left-radius:0}}.generate-bar .suggestions{z-index:20;padding:var(--spacing-quarter) 0;background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 28%, var(--color-border));border-bottom-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);box-shadow:0 8px 20px color-mix(in srgb, var(--color-text) 12%, transparent);border-top:none;max-height:320px;margin:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.generate-bar .suggestions-heading{padding:var(--spacing-quarter) var(--spacing);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);font-size:.7rem;font-weight:700}.generate-bar .suggestion{padding:var(--spacing-half) var(--spacing);color:var(--color-text);cursor:pointer;transition:background var(--speed) ease;opacity:0;animation:.22s forwards suggestion-fade-in;animation-delay:calc(var(--i,0) * 30ms);align-items:center;font-size:.95rem;display:flex;transform:translateY(-4px)}.generate-bar .suggestion .suggestion-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.generate-bar .suggestion .suggestion-text .match{color:var(--color-primary);font-weight:600}.generate-bar .suggestion.active{background:var(--color-primary-muted)}.generate-bar .suggestions-drop-enter-active{transform-origin:top;transition:opacity .2s,transform .2s}.generate-bar .suggestions-drop-leave-active{transform-origin:top;transition:opacity .15s,transform .15s}.generate-bar .suggestions-drop-enter-from,.generate-bar .suggestions-drop-leave-to{opacity:0;transform:translateY(-8px)}.generate-bar .input{padding:var(--spacing-half) var(--spacing);color:var(--color-text);text-overflow:ellipsis;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:1rem;line-height:1.35}.generate-bar .input::placeholder{color:var(--color-text-muted);opacity:.7;font-style:italic}@media (width<=520px){.generate-bar .input{width:100%;padding:var(--spacing-half) var(--spacing);flex:100%}}.generate-bar .paste-btn{border:1px solid var(--color-border);color:var(--color-text-soft);padding:var(--spacing-half);margin:var(--spacing-half) var(--spacing-half) var(--spacing-half) 0;border-radius:var(--border-radius);cursor:pointer;transition:color var(--speed) ease, border-color var(--speed) ease;background:0 0;flex-shrink:0;justify-content:center;align-self:center;align-items:center;font-size:1rem;line-height:1;display:inline-flex}.generate-bar .paste-btn:hover:not(:disabled){color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 50%, var(--color-border))}.generate-bar .paste-btn:disabled{opacity:.65;cursor:not-allowed}@media (width<=520px){.generate-bar .paste-btn{width:auto;margin:0 var(--spacing-half) var(--spacing-half) var(--spacing-half)}}.generate-bar .go-btn{background:var(--color-primary);color:var(--btn-color);padding:var(--spacing-half) var(--spacing);margin:var(--spacing-half);border-radius:var(--border-radius);cursor:pointer;transition:background var(--speed) ease;white-space:nowrap;border:none;flex-shrink:0;align-self:center;font-family:inherit;font-size:.95rem;font-weight:600}.generate-bar .go-btn:hover:not(:disabled){background:var(--color-primary-strong)}.generate-bar .go-btn:disabled{opacity:.65;cursor:not-allowed}@media (width<=520px){.generate-bar .go-btn{width:auto;margin:0 0 var(--spacing-half) var(--spacing-half);border-radius:var(--border-radius);padding:var(--spacing-half) var(--spacing);flex:auto}}.search-controls[data-v-73237ca5]{gap:var(--spacing-half);margin-bottom:var(--spacing-half);grid-template-columns:1fr auto;display:grid}.search-controls input[data-v-73237ca5]{padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);border:1px solid var(--color-border)}.results[data-v-73237ca5]{gap:var(--spacing-half);margin-top:var(--spacing);display:grid;overflow:auto}.results .result-card[data-v-73237ca5]{border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing);background:var(--color-surface-alt);gap:var(--spacing-half);flex-direction:column;display:flex}.results .result-card .result-title[data-v-73237ca5]{color:var(--color-text);margin:0;font-size:1rem;font-weight:600}.results .result-card .muted[data-v-73237ca5]{color:var(--color-text-soft);margin:0;font-size:13px;line-height:1.4}.results .result-card .result-total[data-v-73237ca5]{color:var(--color-primary-strong);letter-spacing:-.02em;margin:0;font-size:.9375rem;font-weight:700}.results .result-card .result-meta[data-v-73237ca5]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.4}.results .result-card .result-equipment[data-v-73237ca5]{color:var(--color-text-soft);margin:0;font-size:12px}.results .result-card .result-actions[data-v-73237ca5]{margin-top:auto}.results .result-card .result-actions .btn[data-v-73237ca5]{justify-content:center;width:100%}.error[data-v-73237ca5]{color:var(--color-danger)}.save-empty-modal .issue-list{margin:0 0 var(--spacing-half);color:var(--color-text);padding-left:1.25rem}.save-empty-modal .issue-hint{margin:0 0 var(--spacing-half);color:var(--color-text-soft);font-size:.95rem;line-height:1.45}.save-empty-footer{gap:var(--spacing-quarter);flex-direction:column;width:100%;display:flex}.save-empty-footer button{border-radius:var(--border-radius);cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface-elevated);width:100%;min-height:44px;color:var(--color-text);font-size:.95rem;font-weight:600}.save-empty-footer button:hover{border-color:var(--color-text-soft)}.save-empty-footer .btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--btn-color)}.save-empty-footer .btn-primary:hover{filter:brightness(1.05)}.save-empty-footer .btn-muted{color:var(--color-text-soft);background:0 0}.calories-help-modal p{margin:0 0 var(--spacing-half);color:var(--color-text-soft);font-size:.95rem;line-height:1.55}.calories-help-modal p:last-child{margin-bottom:0}.calories-help-modal .calories-help-muted{color:var(--color-text-muted);margin:0;font-size:13px}.calories-help-modal .calories-help-muted a{color:var(--color-primary);font-weight:600}.swim-stats-modal{gap:var(--spacing);flex-direction:column;display:flex}.swim-stats-modal .stats-hero{align-items:center;gap:var(--spacing);display:flex}@media (width<=480px){.swim-stats-modal .stats-hero{align-items:stretch;gap:var(--spacing-half);flex-direction:column}}.swim-stats-modal .stats-hero-stat{align-items:center;gap:var(--spacing-half);flex:1 1 0;min-width:0;display:flex}.swim-stats-modal .stats-hero-divider{background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--color-border) 90%, transparent), transparent);align-self:stretch;width:1px}@media (width<=480px){.swim-stats-modal .stats-hero-divider{background:linear-gradient(to right, transparent, color-mix(in srgb, var(--color-border) 90%, transparent), transparent);width:auto;height:1px}}.swim-stats-modal .stats-hero-icon{border-radius:50%;flex:none;justify-content:center;align-items:center;width:46px;height:46px;font-size:1.15rem;display:flex}.swim-stats-modal .stats-hero-icon--distance{color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-primary) 16%, var(--color-surface))}.swim-stats-modal .stats-hero-icon--calories{color:var(--color-warning);background:color-mix(in srgb, var(--color-warning) 18%, var(--color-surface))}.swim-stats-modal .stats-hero-icon--unknown{color:var(--color-text-muted);background:color-mix(in srgb, var(--color-border) 40%, var(--color-surface))}.swim-stats-modal .stats-hero-text{flex-direction:column;min-width:0;display:flex}.swim-stats-modal .stats-hero-value{align-items:baseline;gap:5px;min-width:0;display:flex}.swim-stats-modal .stats-hero-number{letter-spacing:-.03em;font-size:clamp(1.9rem,5vw,2.6rem);font-weight:800;line-height:1.05}.swim-stats-modal .stats-hero-number--distance{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-strong));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.swim-stats-modal .stats-hero-number--calories{background:linear-gradient(135deg, var(--color-warning-light), var(--color-warning));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.swim-stats-modal .stats-hero-unit{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.swim-stats-modal .stats-hero-label{text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);margin-top:2px;font-size:.7rem;font-weight:700}.swim-stats-modal .stats-hero-unknown-btn{height:auto;min-height:0;font:inherit;color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin:0;padding:0;font-size:1.4rem;font-weight:800;display:inline-flex}.swim-stats-modal .stats-hero-unknown-btn:hover{filter:none;color:var(--color-primary)}.swim-stats-modal .stats-section-label{margin-bottom:var(--spacing-quarter);text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);font-size:.7rem;font-weight:700;display:block}.swim-stats-modal .stats-effort{padding-top:var(--spacing-half);border-top:1px solid color-mix(in srgb, var(--color-border) 70%, transparent)}.swim-stats-modal .stats-grid{gap:var(--spacing-half);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=600px){.swim-stats-modal .stats-grid{grid-template-columns:1fr}}.swim-stats-modal .stats-group-card{gap:var(--spacing-quarter);padding:var(--spacing-half) var(--spacing-half) var(--spacing-half) 14px;border-radius:var(--border-radius);border:1px solid color-mix(in srgb, var(--color-border) 75%, transparent);background:color-mix(in srgb, var(--color-surface-alt) 55%, var(--color-surface));flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden}.swim-stats-modal .stats-group-card:before{content:"";background:var(--accent,var(--color-primary));width:3px;position:absolute;top:0;bottom:0;left:0}.swim-stats-modal .stats-group-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-soft);align-items:center;gap:6px;margin:0 0 2px;font-size:.72rem;font-weight:700;display:flex}.swim-stats-modal .stats-group-icon{width:.8rem;height:.8rem;color:var(--accent,var(--color-primary));font-size:.8rem}.swim-stats-modal .stats-group-rows{flex-direction:column;display:flex}.swim-stats-modal .stats-item{grid-template-columns:minmax(64px,.85fr) 1fr auto auto;align-items:center;gap:8px;padding:5px 0;display:grid}.swim-stats-modal .stats-item:not(:last-child){border-bottom:1px solid color-mix(in srgb, var(--color-border) 35%, transparent)}.swim-stats-modal .stats-item-name{min-width:0;color:var(--color-text);text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:.82rem;font-weight:600;display:inline-flex;overflow:hidden}.swim-stats-modal .stats-item-icon{width:14px;height:14px;color:var(--color-text-soft);flex:none}.swim-stats-modal .stats-item-suffix{color:var(--color-text-muted);text-transform:none;font-size:.76rem;font-weight:500}.swim-stats-modal .stats-item-bar{background:color-mix(in srgb, var(--color-border) 45%, transparent);border-radius:999px;height:7px;overflow:hidden}.swim-stats-modal .stats-item-bar-fill{transform-origin:0;border-radius:999px;min-width:3px;height:100%;animation:.55s cubic-bezier(.22,1,.36,1) both stats-bar-grow}.swim-stats-modal .stats-item-bar-fill--stroke{background:var(--color-primary)}.swim-stats-modal .stats-item-bar-fill--equipment{background:var(--color-info)}.swim-stats-modal .stats-item-bar-fill--distance{background:color-mix(in srgb, var(--color-primary) 65%, var(--color-text-muted))}.swim-stats-modal .stats-item-bar-fill--other{background:var(--color-difficulty-other)}.swim-stats-modal .stats-item-value{color:var(--color-text);text-align:right;font-variant-numeric:tabular-nums;min-width:40px;font-size:.8rem;font-weight:700}.swim-stats-modal .stats-item-pct{background:color-mix(in srgb, var(--color-border) 35%, transparent);color:var(--color-text-soft);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;justify-self:end;min-width:34px;padding:1px 7px;font-size:.68rem;font-weight:700}.swim-loader{align-items:center;gap:var(--spacing-half);flex-direction:column;display:flex}.swim-loader__badge{width:var(--v35adb9b4);height:var(--v35adb9b4);display:block}.swim-loader__label{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-soft);margin:0;font-size:.72rem;font-weight:700}.swim-loader .ring{fill:none;stroke:var(--color-primary-strong);stroke-width:4px}.swim-loader .wave-back{fill:var(--color-secondary);opacity:.55;animation:3.1s linear infinite reverse swim-wave}.swim-loader .wave-front{fill:var(--color-primary);opacity:.9;animation:2.1s linear infinite swim-wave}.swim-loader .wave-crest{fill:none;stroke:var(--color-on-primary-soft);stroke-width:2px;stroke-linecap:round;animation:2.1s linear infinite swim-wave}.swim-loader .bubble{fill:var(--color-on-primary-muted);opacity:0;animation:2.8s ease-in infinite swim-bubble}.swim-loader .bubble-2{animation-duration:3.2s;animation-delay:.9s}.swim-loader .bubble-3{animation-duration:2.4s;animation-delay:1.7s}@media (prefers-reduced-motion:reduce){.swim-loader .wave-back,.swim-loader .wave-front,.swim-loader .wave-crest,.swim-loader .bubble{animation:none}.swim-loader .bubble{opacity:.4}}.loading-modal{align-items:center;gap:var(--spacing-half);text-align:center;flex-direction:column;display:flex}.loading-modal__title{margin:var(--spacing-quarter) 0 0;color:var(--color-text);font-size:1.15rem;font-weight:700;line-height:1.25}.loading-modal__subtitle{color:var(--color-text-muted);max-width:22rem;margin:0;font-size:.85rem;line-height:1.35}.loading-modal__status{width:100%;min-height:1.4rem;margin-top:var(--spacing-quarter);justify-content:center;align-items:center;display:flex;position:relative}.loading-modal__step{color:var(--color-text);align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:inline-flex}.loading-modal__step-dot{background:var(--color-primary);width:7px;height:7px;box-shadow:0 0 0 0 color-mix(in srgb, var(--color-primary) 55%, transparent);border-radius:50%;animation:1.4s ease-out infinite loading-modal-pulse}.loading-modal .step-fade-enter-active,.loading-modal .step-fade-leave-active{transition:opacity .32s,transform .32s}.loading-modal .step-fade-enter-from{opacity:0;transform:translateY(6px)}.loading-modal .step-fade-leave-to{opacity:0;transform:translateY(-6px)}.loading-modal .step-fade-leave-active{position:absolute}@media (prefers-reduced-motion:reduce){.loading-modal__step-dot{animation:none}}.log-workout-modal.modal-background{z-index:10002}.log-workout-modal .modal{min-width:0;max-width:480px}.log-workout-modal .modal .body{padding:calc(var(--spacing) * 2) calc(var(--spacing) * 1.5)}@media (width<=850px){.log-workout-modal .modal .body{padding:calc(var(--spacing) * 1.5) var(--spacing)}}.log-workout-modal .panel{align-items:center;gap:calc(var(--spacing) * 1.5);flex-direction:column;display:flex}.log-workout-modal .intro{text-align:center}.log-workout-modal .intro .title{color:var(--color-text);margin:0 0 var(--spacing-quarter);font-size:1.8rem;font-weight:800}.log-workout-modal .intro .sub{color:var(--color-text-soft);font-size:.95rem}.log-workout-modal .intro .for-who{color:var(--color-primary-strong);background:var(--color-primary-soft);border-radius:999px;margin-top:6px;padding:2px 10px;font-size:13px;display:inline-block}.log-workout-modal .intro .datetime{justify-content:center;align-items:center;gap:var(--spacing-quarter);margin-top:var(--spacing-half);flex-wrap:wrap;display:flex}.log-workout-modal .intro .date,.log-workout-modal .intro .time{align-items:center;gap:var(--spacing-quarter);display:flex}.log-workout-modal .intro .date-text,.log-workout-modal .intro .time-text{color:var(--color-text);font-size:.95rem;font-weight:500}.log-workout-modal .intro .at{color:var(--color-text-soft);font-size:.95rem;font-weight:500}.log-workout-modal .intro .date-edit{color:var(--color-text-muted);cursor:pointer;opacity:.55;background:0 0;border:none;justify-content:center;align-items:center;padding:2px 4px;font-size:.7rem;transition:opacity .15s,color .15s;display:inline-flex}.log-workout-modal .intro .date-edit:hover{opacity:1;color:var(--color-primary)}.log-workout-modal .intro .date-input,.log-workout-modal .intro .time-input{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-quarter) var(--spacing-half);text-align:center;font-family:inherit;font-size:.95rem}.log-workout-modal .section{text-align:center;width:100%}.log-workout-modal .section .label{color:var(--color-text-soft);margin-bottom:var(--spacing-half);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.log-workout-modal .section .options{gap:var(--spacing-quarter);flex-wrap:wrap;justify-content:center;display:flex}.log-workout-modal .section .option-btn{min-width:72px;padding:var(--spacing-half);border:2px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;text-align:center;flex:1 1 0;font-family:inherit;font-size:.9rem;font-weight:600;transition:border-color .15s,background .15s,color .15s}@media (width<=850px){.log-workout-modal .section .option-btn{min-width:60px;font-size:.8rem}}.log-workout-modal .section .option-btn:hover{border-color:var(--color-primary)}.log-workout-modal .section .option-btn.active{border-color:var(--color-primary);background:var(--color-primary);color:var(--btn-color)}.log-workout-modal .section .stars{gap:var(--spacing-half);justify-content:center;display:flex}.log-workout-modal .section .star-btn{padding:var(--spacing-quarter);cursor:pointer;color:var(--color-border);background:0 0;border:none;font-size:2.5rem;transition:color .15s,transform .12s}.log-workout-modal .section .star-btn:hover{transform:scale(1.2)}.log-workout-modal .section .star-btn.filled{color:var(--color-warning)}.log-workout-modal .section .note{box-sizing:border-box;width:100%;padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-text);resize:vertical;text-align:left;font-family:inherit;font-size:.95rem;line-height:1.5}.log-workout-modal .section .note:focus{border-color:var(--color-primary);outline:none}.log-workout-modal .actions{gap:var(--spacing-half);flex-direction:column;width:100%;display:flex}.log-workout-modal .actions .btn-save{width:100%;padding:var(--spacing);border-radius:var(--border-radius);background:var(--color-primary);color:var(--btn-color);cursor:pointer;border:none;font-family:inherit;font-size:1.15rem;font-weight:700;transition:background .15s,transform .1s}.log-workout-modal .actions .btn-save:hover{background:var(--color-primary-strong)}.log-workout-modal .actions .btn-save:active{transform:scale(.98)}.log-workout-modal .actions .btn-save:disabled{opacity:.6;cursor:not-allowed}.log-workout-modal .actions .btn-cancel{width:100%;padding:var(--spacing-half) var(--spacing);border:2px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);color:var(--color-text);cursor:pointer;font-family:inherit;font-size:1rem;font-weight:600;transition:background .15s}.log-workout-modal .actions .btn-cancel:hover{background:var(--color-bg-soft)}.logging-for-banner{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing-half);padding:var(--spacing-half) var(--spacing);background:var(--color-primary-soft);border:1px solid var(--color-primary);border-radius:var(--border-radius);font-size:14px;display:flex}.logging-for-banner span{flex:1;min-width:0}.logging-for-banner button{height:auto;padding:var(--spacing-quarter) var(--spacing-half);cursor:pointer;font-size:13px}.tour-finish-modal .finish-lead{margin:0 0 var(--spacing-half);color:var(--color-text);font-size:.95rem;line-height:1.5}.tour-finish-modal .finish-hint{color:var(--color-text-soft);margin:0;font-size:.9rem;line-height:1.45}.tour-finish-footer{gap:var(--spacing-quarter);flex-direction:column;width:100%;display:flex}.tour-finish-footer button{width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;font-size:.95rem;font-weight:600}.tour-finish-footer button:hover{border-color:var(--color-text-soft)}.tour-finish-footer .btn-primary{color:var(--btn-color);background:var(--color-primary);border-color:var(--color-primary)}.tour-finish-footer .btn-primary:hover{filter:brightness(1.05)}.driver-popover{all:unset;font-family:var(--driver-popover-font-family,"Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif);box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover-title{zoom:1;margin:0;font-size:19px;font-weight:700;line-height:1.5;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.5}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer-btn{all:unset;box-sizing:border-box;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-popover-footer-btn:hover,.driver-popover-footer-btn:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-side-center,.driver-popover-arrow-none{display:none}.driver-active .driver-overlay{pointer-events:none}.driver-active.driver-no-scroll{overflow:hidden}.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in var(--driver-animation-duration,.4s) ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in var(--driver-animation-duration,.4s)}.driver-active-element-parent-no-scroll{overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}.swim-page{--swim-page-padding-y:calc(var(--spacing) * 1.25 * 2);padding:calc(var(--spacing) * 1.25);box-sizing:border-box;max-width:1200px;margin:0 auto}@media screen and (width<=1023px){.swim-page{padding:var(--spacing-half)}}@media print{.swim-page .svg-inline--fa,.swim-page .equipment-icon{-webkit-print-color-adjust:exact;print-color-adjust:exact}.swim-page{padding:0!important}.swim-page .swim-top{min-height:0!important;display:block!important}.swim-page .settings-column,.swim-page .swim-settings,.swim-page .settings-overlay,.swim-page .settings-fab{display:none!important}.swim-page .canvas{box-shadow:none!important;border:none!important;padding:0!important}.swim-page .canvas .description:placeholder-shown,.swim-page .canvas .top-stats .calories--unknown{display:none!important}}.swim-page .swim-top{gap:var(--spacing);min-height:calc(100vh - var(--header-height) - var(--swim-page-padding-y));grid-template-columns:1fr 320px;align-items:start;display:grid}@media screen and (width<=1023px){.swim-page .swim-top{gap:var(--spacing);flex-direction:column;align-items:stretch;display:flex;position:relative}}.swim-page .swim-top .form-column{gap:var(--spacing);flex-direction:column;width:100%;min-width:0;display:flex}.swim-page .swim-top .active-viewport{width:100%;display:contents}.swim-page .swim-top .settings-column{flex-direction:column;min-width:0;display:flex}.swim-page .canvas{gap:var(--spacing-quarter);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing);box-sizing:border-box;flex-direction:column;width:100%;min-width:0;display:flex}@media screen and (width<=1023px){.swim-page .canvas{padding:var(--spacing-half)}}.swim-page .canvas .top{transition:opacity .3s,transform .3s}@media (prefers-reduced-motion:reduce){.swim-page .canvas .top{transition:none}}.swim-page .canvas .top.meta-hidden{opacity:0;transform:translateY(-10px)}.swim-page .canvas .top .top-row{justify-content:space-between;align-items:flex-start;gap:var(--spacing);display:flex}@media screen and (width<=1023px){.swim-page .canvas .top .top-row{gap:var(--spacing-half)}}.swim-page .canvas .top .top-meta{gap:var(--spacing-quarter);flex-direction:column;flex:1;min-width:0;display:flex}.swim-page .canvas .top .title{--title-size:34px;width:100%;font-size:calc(var(--title-size) * var(--title-scale,1));padding:0;font-weight:800}@media screen and (width<=1023px){.swim-page .canvas .top .title{--title-size:24px;padding-top:0}}.swim-page .canvas .top .top-stats{align-items:flex-end;gap:var(--spacing-quarter);text-align:right;flex-direction:column;flex-shrink:0;min-width:150px;padding:0;display:flex}@media screen and (width<=1023px){.swim-page .canvas .top .top-stats{min-width:auto}}.swim-page .canvas .top .top-stats .total{justify-content:flex-end;align-items:baseline;gap:var(--spacing-quarter);display:flex}.swim-page .canvas .top .top-stats .total .value{transition:color .9s}.swim-page .canvas .top .top-stats .total--tick-up .value{color:var(--color-success)}.swim-page .canvas .top .top-stats .total--tick-down .value{color:var(--color-danger)}.swim-page .canvas .top .top-stats .value{color:var(--color-primary-strong);letter-spacing:-.02em;font-size:1.75rem;font-weight:800;line-height:1.2}@media screen and (width<=1023px){.swim-page .canvas .top .top-stats .value{font-size:1.35rem}}.swim-page .canvas .top .top-stats .unit{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;font-size:.875rem;font-weight:600}@media screen and (width<=1023px){.swim-page .canvas .top .top-stats .unit{font-size:.75rem}}.swim-page .canvas .top .top-stats .stat-metrics{justify-content:flex-end;align-items:center;gap:var(--spacing-half);flex-wrap:wrap;display:flex}.swim-page .canvas .top .top-stats .calories,.swim-page .canvas .top .top-stats .duration{justify-content:flex-end;align-items:baseline;gap:var(--spacing-quarter);display:flex}.swim-page .canvas .top .top-stats .calories .value,.swim-page .canvas .top .top-stats .duration .value{color:var(--color-text);letter-spacing:-.02em;font-size:.8rem;font-weight:700;line-height:1;transition:color .9s}.swim-page .canvas .top .top-stats .calories .unit,.swim-page .canvas .top .top-stats .duration .unit{font-size:.55rem;line-height:1}.swim-page .canvas .top .top-stats .calories--tick-up .value,.swim-page .canvas .top .top-stats .duration--tick-up .value{color:var(--color-success)}.swim-page .canvas .top .top-stats .calories--tick-down .value,.swim-page .canvas .top .top-stats .duration--tick-down .value{color:var(--color-danger)}.swim-page .canvas .top .top-stats .duration .duration-icon{color:var(--color-info);flex:none;align-self:center;font-size:.65rem}.swim-page .canvas .top .top-stats .calories .calories-icon{color:var(--color-warning);flex:none;align-self:center;font-size:.65rem}.swim-page .canvas .top .top-stats .calories--unknown{color:var(--color-text-muted);cursor:pointer;align-items:center;gap:var(--spacing-quarter);background:0 0;border:none;padding:0;font-size:.7rem;font-style:italic;font-weight:600;display:inline-flex}.swim-page .canvas .top .top-stats .calories--unknown:hover{color:var(--color-text-soft)}.swim-page .canvas .top .top-stats .equipment--icons{justify-content:flex-end;gap:var(--spacing-half);color:var(--color-primary);opacity:.6;display:flex}@media screen and (width<=1023px){.swim-page .canvas .top .top-stats .equipment--icons{gap:var(--spacing-quarter);font-size:12px}}.swim-page .canvas .top .top-stats .equipment--none{color:var(--color-text-muted);font-size:12px;font-style:italic;line-height:1.35}.swim-page .canvas .top .description{color:var(--color-text-soft);resize:none;width:100%;min-height:2.5em;transition:height .2s ease-out, background-size .35s ease-in-out, background-color var(--speed) ease, --focus-line-opacity .35s ease-in-out;padding:0;font-size:14px;line-height:1.5;overflow-y:hidden}.swim-page .canvas .top .swim-attribution{color:var(--color-text-muted);margin:0;font-size:13px}.swim-page .settings-overlay{display:none}@media screen and (width<=1023px){.swim-page .settings-overlay{background:color-mix(in srgb, var(--color-text) 25%, transparent);z-index:39;opacity:0;pointer-events:none;transition:opacity .25s;display:block;position:fixed;inset:0}.swim-page .settings-overlay.open{opacity:1;pointer-events:auto}}.swim-page .settings-fab{display:none}@media screen and (width<=1023px){.swim-page .settings-fab{bottom:var(--spacing);right:var(--spacing);border-radius:var(--border-radius);background:var(--color-primary);width:56px;height:56px;color:var(--btn-color);box-shadow:0 4px 14px color-mix(in srgb, var(--color-text) 20%, transparent);cursor:pointer;z-index:38;transition:background var(--speed) ease, transform var(--speed) ease, box-shadow var(--speed) ease;border:none;justify-content:center;align-items:center;font-size:22px;display:flex;position:fixed}.swim-page .settings-fab:hover{background:var(--color-primary-strong);transform:scale(1.05)}.swim-page .settings-fab.active{background:var(--color-primary-strong);box-shadow:0 4px 18px color-mix(in srgb, var(--color-text) 25%, transparent)}}.swim-fullscreen{z-index:9999;background:var(--color-surface);max-width:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden auto}.swim-fullscreen .swim-top{min-height:auto;display:block}.swim-fullscreen .canvas{padding:calc(var(--spacing) * 1.5);padding-bottom:calc(var(--spacing) * 6);box-sizing:border-box;border:none;border-radius:0;max-width:900px;min-height:100vh;margin:0 auto}.swim-fullscreen .settings-column,.swim-fullscreen .swim-settings,.swim-fullscreen .settings-overlay,.swim-fullscreen .settings-fab{display:none!important}.swim-fullscreen .title,.swim-fullscreen .description{cursor:default}.swim-fullscreen .description:placeholder-shown{display:none}.swim-fullscreen .interval-add-wrap,.swim-fullscreen .sets>.add,.swim-fullscreen .action-btn,.swim-fullscreen .indent-arrows{display:none!important}.swim-fullscreen .fullscreen-footer{bottom:var(--spacing);align-items:center;gap:var(--spacing-half);z-index:10000;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}@media print{.swim-fullscreen .fullscreen-footer{display:none!important}}.swim-fullscreen .fullscreen-branding{letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary-strong);pointer-events:none;font-size:14px;font-weight:800}.swim-fullscreen .exit-fullscreen{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) calc(var(--spacing) * 1.5);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;box-shadow:0 4px 16px color-mix(in srgb, var(--color-text) 18%, transparent);transition:background-color var(--speed) ease, box-shadow var(--speed) ease;font-family:inherit;font-size:14px;font-weight:600;display:flex}.swim-fullscreen .exit-fullscreen:hover{background:var(--color-surface-alt);box-shadow:0 6px 20px color-mix(in srgb, var(--color-text) 25%, transparent)}.phase-enter-active,.phase-leave-active{transition:opacity .3s}.phase-enter-from,.phase-leave-to{opacity:0}.generate-slide-enter-active{transition:opacity .35s,transform .35s}@media (prefers-reduced-motion:reduce){.generate-slide-enter-active{transition:opacity .2s}}.generate-slide-enter-from{opacity:0;transform:translateY(-12px)}@media (prefers-reduced-motion:reduce){.generate-slide-enter-from{transform:none}}.generate-slide-leave-active{transition:opacity .3s,transform .35s,max-height .4s,margin-bottom .4s;overflow:hidden}@media (prefers-reduced-motion:reduce){.generate-slide-leave-active{transition:opacity .2s}}.generate-slide-leave-from{max-height:480px}.generate-slide-leave-to{opacity:0;max-height:0;margin-bottom:0;transform:translateY(-16px)}@media (prefers-reduced-motion:reduce){.generate-slide-leave-to{transform:none}}.print-branding-footer{display:none}@media print{.print-branding-footer{text-align:center;letter-spacing:.08em;text-transform:uppercase;width:100%;color:var(--color-primary-strong);pointer-events:none;font-size:14px;font-weight:800;position:fixed;bottom:0;left:50%;transform:translate(-50%);display:block!important}}.notif-bell{position:relative}.notif-bell .bell-btn{border-radius:var(--border-radius);width:38px;height:38px;color:var(--color-text-soft);cursor:pointer;transition:color var(--speed) ease;background:0 0;border:none;justify-content:center;align-items:center;font-size:17px;display:inline-flex;position:relative}.notif-bell .bell-btn:hover{color:var(--color-primary)}.notif-bell .bell-badge{background:var(--color-danger);min-width:16px;height:16px;color:var(--color-white);font-size:10px;font-weight:var(--font-weight-bold);text-align:center;border-radius:8px;padding:0 4px;line-height:16px;position:absolute;top:2px;right:2px}.notif-bell .bell-dropdown{background:var(--color-bg);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);width:300px;max-width:min(300px,100vw - 24px);max-height:360px;box-shadow:0 8px 28px var(--color-shadow-black-lg);z-index:60;transform-origin:100% 0;flex-direction:column;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden}.notif-bell .bell-list{flex:1;min-height:0;overflow:hidden auto}.notif-bell .bell-head{min-height:40px;padding:10px var(--spacing-half);border-bottom:1px solid var(--color-border);font-weight:var(--font-weight-bold);background:var(--color-surface);flex-shrink:0;justify-content:space-between;align-items:center;font-size:14px;line-height:1.4;display:flex}.notif-bell .bell-head .mark-all{color:var(--color-primary);cursor:pointer;height:auto;min-height:0;padding:var(--spacing-quarter) var(--spacing-half);background:0 0;border:none;font-size:12px}.notif-bell .bell-empty{align-items:center;gap:var(--spacing-half);padding:calc(var(--spacing) * 1.5) var(--spacing);text-align:center;color:var(--color-text-muted);flex-direction:column;font-size:13px;line-height:1.5;display:flex}.notif-bell .bell-empty .empty-icon{color:var(--color-border);font-size:1.5rem}.notif-bell .notification-item{padding:10px var(--spacing-half);border-bottom:1px solid var(--color-border);transition:background var(--speed) ease;border-radius:0;gap:10px}.notif-bell .notification-item:hover{background:var(--color-surface)}.notif-bell .notification-item.unread{background:color-mix(in srgb, var(--color-primary) 6%, var(--color-bg))}.notif-bell .notification-item.unread:hover{background:color-mix(in srgb, var(--color-primary) 10%, var(--color-bg))}.notif-bell .bell-view-all{padding:10px var(--spacing-half);text-align:center;min-height:40px;color:var(--color-primary);border-top:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;line-height:1.4;text-decoration:none;display:flex}.notif-bell .bell-view-all:hover{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface))}.bell-dropdown-enter-active,.bell-dropdown-leave-active{transition:opacity .22s,transform .22s}.bell-dropdown-enter-from,.bell-dropdown-leave-to{opacity:0;transform:translateY(-8px)}.password-requirements{gap:var(--spacing-quarter);margin:0;padding:0;list-style:none;display:grid}.password-requirements li{color:var(--color-text-muted);align-items:center;gap:6px;font-size:12px;display:flex}.password-requirements li .rule-icon{text-align:center;width:14px;font-size:10px}.password-requirements li.met{color:var(--color-text-soft)}.auth-create .auth-type{border:none;margin:0;padding:0}.auth-create .auth-type legend{margin-bottom:var(--spacing-half);font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft);padding:0}.auth-create .auth-type .auth-type-options{gap:var(--spacing-half);grid-template-columns:1fr 1fr;display:grid}.auth-create .auth-type .auth-type-option{align-items:center;gap:var(--spacing-quarter);padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);color:var(--color-text-muted);text-align:center;cursor:pointer;height:auto;min-height:auto;transition:background var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease, box-shadow var(--speed) ease;flex-direction:column;display:flex}.auth-create .auth-type .auth-type-option:hover{border-color:var(--color-primary-soft);color:var(--color-text-soft)}.auth-create .auth-type .auth-type-option.active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong);box-shadow:0 0 0 1px color-mix(in srgb, var(--color-primary) 25%, transparent)}.auth-create .auth-type .auth-type-option.active .auth-type-desc{color:color-mix(in srgb, var(--color-primary-strong) 70%, var(--color-text-muted))}.auth-create .auth-type .auth-type-icon{font-size:1.25rem}.auth-create .auth-type .auth-type-name{font-size:13px;font-weight:var(--font-weight-bold)}.auth-create .auth-type .auth-type-desc{color:var(--color-text-muted);font-size:11px;font-weight:400;line-height:1.3}.auth-create .auth-type .auth-type-hint{margin:var(--spacing-half) 0 0;color:var(--color-text-muted);font-size:11px;font-weight:400}.auth-create .auth-type .auth-type-perk{align-items:baseline;gap:var(--spacing-half);margin:var(--spacing-half) 0 0;padding:var(--spacing-half);border-radius:var(--border-radius);background:var(--color-primary-soft);color:var(--color-text-soft);font-size:12px;line-height:1.4;display:flex}.auth-create .auth-type .auth-type-perk svg{color:var(--color-primary)}.auth-create .auth-password-row{gap:var(--spacing-half);grid-template-columns:1fr 1fr;display:grid}@media (width<=480px){.auth-create .auth-password-row{grid-template-columns:1fr}}.auth-create .auth-password-hints{gap:var(--spacing-quarter);display:grid}.auth-create .auth-field-error{color:var(--color-danger);margin:0;font-size:12px}.auth-modal .check-email-copy{color:var(--color-text-soft);margin:0;font-size:14px;line-height:1.5}.auth-modal .check-email-copy strong{color:var(--color-text)}.auth-google{margin-top:var(--spacing)}.auth-google .auth-google-host{justify-content:center;min-height:40px;display:flex}.auth-google .auth-google-busy,.auth-google .auth-google-error{margin:var(--spacing-half) 0 0;text-align:center;font-size:13px}.auth-google .auth-google-busy{color:var(--color-text-muted)}.auth-google .auth-google-error{color:var(--color-danger)}.auth-google .auth-divider{align-items:center;gap:var(--spacing-half);margin:var(--spacing) 0 0;font-size:12px;font-weight:var(--font-weight-bold);letter-spacing:.04em;color:var(--color-text-muted);text-transform:uppercase;display:flex}.auth-google .auth-divider:before,.auth-google .auth-divider:after{content:"";background:var(--color-border);flex:auto;height:1px}.auth-google--link{margin-top:0}.auth-google--link .auth-google-host{justify-content:flex-start}.auth-google--link .auth-google-busy,.auth-google--link .auth-google-error{text-align:left}.modal-background.modal--auth-wide .modal{max-width:600px}.auth-modal .auth-tabs{gap:var(--spacing-quarter);padding:var(--spacing-quarter);border-radius:var(--border-radius);background:var(--color-surface-alt);border:1px solid var(--color-border);grid-template-columns:1fr 1fr;display:grid}.auth-modal .auth-tabs button{height:auto;min-height:auto;padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);color:var(--color-text-muted);font-size:14px;font-weight:var(--font-weight-bold);cursor:pointer;transition:background var(--speed) ease, color var(--speed) ease, box-shadow var(--speed) ease;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;display:flex}.auth-modal .auth-tabs button .auth-tab-icon{font-size:13px}.auth-modal .auth-tabs button:hover:not(.active){color:var(--color-text-soft)}.auth-modal .auth-tabs button.active{background:var(--color-primary);color:var(--btn-color);box-shadow:0 1px 3px var(--color-shadow-black-xl)}.auth-modal .auth-intent{margin-top:var(--spacing);padding:var(--spacing-half) var(--spacing);background:var(--color-primary-muted);border-left:3px solid var(--color-primary);border-radius:0 var(--border-radius) var(--border-radius) 0;color:var(--color-text-soft);font-size:13px;line-height:1.4}.auth-modal .auth-form{gap:var(--spacing-half);margin-top:var(--spacing);display:grid}.auth-modal .auth-form .auth-fields{gap:var(--spacing-half);display:grid}.auth-modal .auth-form label{gap:var(--spacing-quarter);font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft);display:grid}.auth-modal .auth-form label input{width:100%;padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text);transition:border-color var(--speed) ease;font-size:14px}.auth-modal .auth-form label input:focus{border-color:var(--color-primary)}.auth-modal .auth-form .auth-error{padding:var(--spacing-half);background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-radius:var(--border-radius);color:var(--color-danger);font-size:13px;line-height:1.4}.auth-modal .auth-form .auth-actions{gap:var(--spacing-quarter);margin-top:var(--spacing-half);flex-direction:column;display:flex}.auth-modal .auth-form .auth-submit{width:100%;height:auto;min-height:auto;padding:10px var(--spacing);background:var(--color-primary);color:var(--btn-color);border-radius:var(--border-radius);font-size:15px;font-weight:var(--font-weight-bold);cursor:pointer;transition:background var(--speed) ease, opacity var(--speed) ease;border:none}.auth-modal .auth-form .auth-submit:hover:not(:disabled){background:var(--color-primary-strong)}.auth-modal .auth-form .auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-modal .auth-form .auth-switch{text-align:center;color:var(--color-text-muted);margin:0;font-size:13px}.auth-modal .auth-form .auth-switch button{height:auto;min-height:auto;color:var(--color-primary);font-size:13px;font-weight:var(--font-weight-bold);cursor:pointer;transition:text-decoration-color var(--speed) ease;background:0 0;border:none;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.auth-modal .auth-form .auth-switch button:hover{-webkit-text-decoration-color:var(--color-primary);text-decoration-color:var(--color-primary)}.auth-fade-enter-active,.auth-fade-leave-active{transition:opacity var(--speed) ease}.auth-fade-enter-from,.auth-fade-leave-to{opacity:0}.app-shell{--header-height:72px;min-height:100vh}.app-shell .top-header{z-index:20;width:100%;min-height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 8px 20px var(--color-shadow-ink);justify-content:space-between;align-items:stretch;padding:0;display:flex;position:sticky;top:0}@media (width<=768px){.app-shell .top-header{z-index:40}}@media print{.app-shell .top-header{display:none!important}}.app-shell .top-header .header-brand{flex:1;align-items:center;min-width:0;padding:14px 20px;display:flex;position:relative}@media (width<=768px){.app-shell .top-header .header-brand{padding:10px var(--spacing-half)}}.app-shell .top-header .brand{z-index:1;letter-spacing:.4px;color:var(--color-text);font-size:28px;font-weight:900;text-decoration:none;position:relative;transform:skew(-10deg)}.app-shell .top-header .header-wave{z-index:0;opacity:0;pointer-events:none;width:100%;height:18px;animation:1.5s ease-out .3s forwards wave-fade-in;position:absolute;bottom:0;left:0;-webkit-mask-image:linear-gradient(90deg,#000 0% 65%,#0000 80%);mask-image:linear-gradient(90deg,#000 0% 65%,#0000 80%)}.app-shell .top-header .header-wave .wave-back{fill:var(--color-primary);opacity:.08}.app-shell .top-header .header-wave .wave-front{fill:var(--color-primary);opacity:.13}.app-shell .top-header .header-actions{z-index:1;flex-shrink:0;align-items:center;padding-right:20px;display:flex}@media (width<=768px){.app-shell .top-header .header-actions{align-items:stretch;padding-right:0}}.app-shell .top-header .top-nav{z-index:1;align-items:center;gap:8px;display:flex;position:relative}@media (width<=768px){.app-shell .top-header .top-nav{z-index:-1;max-height:0;padding:0 var(--spacing-half);background:var(--color-surface);border-bottom:1px solid var(--color-border);opacity:0;flex-direction:column;gap:0;transition:max-height .3s,opacity .25s,transform .25s,padding .3s;display:flex;position:absolute;top:100%;left:0;right:0;overflow:hidden;transform:translateY(-8px)}.app-shell .top-header .top-nav.open{max-height:600px;padding:var(--spacing-half);opacity:1;transform:translateY(0)}}.app-shell .top-header .top-nav .new-swim-btn{padding:10px 16px;font-weight:800;text-decoration:none}@media (width<=768px){.app-shell .top-header .top-nav .new-swim-btn{width:100%;padding:var(--spacing) var(--spacing);text-align:center;justify-content:center}}.app-shell .top-header .top-nav .nav-link{height:auto;min-height:auto;font-size:inherit;color:var(--color-text);border-radius:var(--border-radius);cursor:pointer;background:0 0;border:1px solid #0000;padding:8px 12px;text-decoration:none}@media (width<=768px){.app-shell .top-header .top-nav .nav-link{width:100%;padding:var(--spacing) var(--spacing);text-align:center;border-radius:var(--border-radius)}}.app-shell .top-header .top-nav .nav-link.router-link-active{background:var(--color-surface-alt);border-color:var(--color-border);font-weight:700}.app-shell .top-header .top-nav .nav-super{color:var(--color-warning)}.app-shell .top-header .top-nav .nav-pro{font-weight:var(--font-weight-bold);color:var(--color-primary-strong)}.app-shell .top-header .hamburger{z-index:1;min-width:64px;color:var(--color-text);border:none;border-left:1px solid var(--color-border);cursor:pointer;transition:background var(--speed) ease;background:0 0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0 16px;font-size:22px;display:none}@media (width<=768px){.app-shell .top-header .hamburger{align-self:stretch;height:auto;min-height:100%;display:flex}}.app-shell .top-header .hamburger .hamburger-label{letter-spacing:.04em;text-transform:uppercase;font-size:8px;font-weight:700;line-height:1}.app-shell .top-header .hamburger:hover{background:var(--color-surface-alt)}.app-shell .mobile-menu-overlay{display:none}@media (width<=768px){.app-shell .mobile-menu-overlay{top:var(--header-height);background:var(--color-overlay-light);z-index:39;display:block;position:fixed;bottom:0;left:0;right:0}}.app-shell .content{height:calc(100vh - var(--header-height));min-height:0;position:relative;overflow-y:auto}@media print{.app-shell .content{height:auto!important;overflow:visible!important}}.page-enter-active,.page-leave-active{transition:opacity .22s,transform .22s}.page-enter-from,.page-leave-to{opacity:0;transform:translateY(8px)}.overlay-fade-enter-active,.overlay-fade-leave-active{transition:opacity .25s}.overlay-fade-enter-from,.overlay-fade-leave-to{opacity:0}:root{--color-white:#fff;--color-black:#000;--color-bg:#dff2ff;--color-bg-soft:#eaf7ff;--color-surface:#f2faff;--color-surface-alt:#e8f5ff;--color-border:#a8d7f2;--color-text:#365a74;--color-text-soft:#557a94;--color-text-muted:#6b8aa3;--color-placeholder:#8fa9bc;--color-ink:#0f2f47;--color-font:var(--color-text);--color-background:var(--color-bg);--color-primary:#2f9fdf;--color-primary-strong:#1988ca;--color-primary-soft:#cfeeff;--color-primary-muted:#e8f5ff;--color-accent:#6eb4ff;--color-secondary:#6b7a8a;--btn-color:var(--color-white);--color-success:#2a9d8f;--color-success-hover:#238b7f;--color-success-dark:#1a7a6e;--color-danger:#d85c73;--color-danger-hover:#c0475c;--color-warning:#c9a227;--color-warning-light:#e0a83a;--color-info:#2f7fbf;--color-difficulty-none:transparent;--color-difficulty-recovery:#6a9ec8;--color-difficulty-easy:#6bae7f;--color-difficulty-moderate:#d4bc62;--color-difficulty-hard:#e09555;--color-difficulty-max:#d97070;--color-difficulty-other:#b0c4d4;--color-stroke-freestyle:var(--color-primary);--color-stroke-backstroke:#8b5cf6;--color-stroke-breaststroke:#10b981;--color-stroke-butterfly:#f59e0b;--color-stroke-im:#ec4899;--color-stroke-kick:#6366f1;--color-stroke-pull:#14b8a6;--color-stroke-drill:#78716c;--color-stroke-choice:#94a3b8;--color-notification-error:var(--color-danger);--color-notification-error-bg:#fff1f4;--color-notification-success:var(--color-success);--color-notification-success-bg:#e8f7f4;--color-notification-warning:var(--color-warning);--color-notification-warning-dark:#9a6b12;--color-notification-warning-bg:#faf6e8;--color-notification-info:var(--color-info);--color-notification-info-bg:#e8f2fa;--color-notification-primary-bg:var(--color-primary-soft);--color-highlight:#fffb8c;--color-on-primary-muted:#ffffffbf;--color-on-primary-soft:#fff9;--color-overlay:#00000080;--color-overlay-light:#0000004d;--color-overlay-subtle:#00000026;--color-overlay-faint:#0000000f;--modal-overlay-bg:color-mix(in srgb, var(--color-text) 55%, transparent);--modal-overlay-blur:3px;--modal-panel-radius:calc(var(--border-radius) * 2);--modal-panel-shadow:0 8px 40px color-mix(in srgb, var(--color-text) 30%, transparent);--color-shadow-ink:#0f2f471f;--color-shadow-ink-medium:#0f2f4726;--color-shadow-ink-soft:#0f2f471a;--color-shadow-black-sm:#0000000f;--color-shadow-black-md:#0000001a;--color-shadow-black-lg:#00000024;--color-shadow-black-xl:#0003;--color-shadow-black-strong:#00000054;--font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;--font-size:16px;--letter-spacing:.01em;--font-weight-bold:600;--input-height:40px;--color-disabled-color:var(--color-text-muted);--color-disabled-background:var(--color-surface-alt);--border-radius:4px;--spacing:16px;--spacing-half:8px;--spacing-quarter:4px;--speed:.3s}*{font-size:100%;font:inherit;vertical-align:baseline;backface-visibility:hidden;border:0;margin:0;padding:0}html{box-sizing:border-box}*,:before,:after{box-sizing:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}button{color:var(--color-font);background:0 0}button:active{outline:none}html{scrollbar-color:var(--color-primary) var(--color-background);scrollbar-width:12px;height:100%;min-height:100%;overflow:hidden}body{height:100%;font-family:var(--font-family);font-size:var(--font-size);letter-spacing:var(--letter-spacing);-webkit-font-smoothing:antialiased;color:var(--color-font);background-color:var(--color-background);transition:all var(--speed);margin:0;padding:0;font-weight:400;line-height:1.3}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background-color:var(--color-background)}::-webkit-scrollbar-thumb{background-color:var(--color-primary);border-radius:var(--border-radius)}.table-scroll{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.table-scroll>table{width:100%;min-width:max-content}.btn-group{background-color:var(--color-border);flex-direction:row;flex:0 auto;gap:2px;width:fit-content;display:flex}.btn-group button:not(:first-child):not(:last-child){border-radius:0!important}.btn-group button:first-child{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.btn-group button:last-child{border-top-left-radius:0!important;border-bottom-left-radius:0!important}button,.btn{height:var(--input-height);min-height:var(--input-height);justify-content:center;align-self:flex-start;align-items:center;gap:var(--spacing-quarter);width:auto;color:var(--color-font);font-size:var(--font-size);font-weight:var(--font-weight-bold);padding:var(--spacing-quarter) var(--spacing-half);cursor:pointer;background-color:var(--color-background);text-align:center;-webkit-user-select:none;user-select:none;white-space:nowrap;border:1px solid var(--color-border);border-radius:var(--border-radius);vertical-align:middle;box-shadow:0 0 0 0 transparent #0000;transition:all var(--speed) ease;flex:none;display:inline-flex}button:hover,.btn:hover{filter:brightness(110%)}button.large,.btn.large{width:100%;height:45px;font-size:24px;font-weight:var(--font-weight-bold)}button:disabled,button.disabled,.btn:disabled,.btn.disabled{box-shadow:none!important;color:var(--color-disabled-color)!important;background-color:var(--color-disabled-background)!important;border:1px solid var(--color-border)!important}button.inactive,.btn.inactive{color:var(--color-border)}button.primary,.btn.primary{color:var(--btn-color);background-color:var(--color-primary);border:1px solid var(--color-primary)}button.secondary,.btn.secondary{color:var(--btn-color);background-color:var(--color-secondary);border:1px solid var(--color-secondary)}button.success,.btn.success{color:var(--btn-color);background-color:var(--color-success);border:1px solid var(--color-success)}button.danger,.btn.danger{color:var(--btn-color);background-color:var(--color-danger);border:1px solid var(--color-danger)}button.border,.btn.border{border:1px solid var(--color-border);background-color:var(--color-background);color:var(--color-font)}button.border:hover.primary,.btn.border:hover.primary{border:1px solid var(--color-primary);color:var(--color-primary)}button.border:hover.secondary,.btn.border:hover.secondary{border:1px solid var(--color-secondary);color:var(--color-secondary)}button.border:hover.danger,.btn.border:hover.danger{border:1px solid var(--color-danger);color:var(--color-danger)}button.subtle-dashed,.btn.subtle-dashed{border:1px dashed var(--color-border);color:var(--color-text-soft);background-color:#0000}button.subtle-dashed:hover,.btn.subtle-dashed:hover{border-color:var(--color-text-muted);color:var(--color-text);background-color:color-mix(in srgb, var(--color-border) 15%, transparent)}button svg,.btn svg{width:auto;min-width:0;max-width:100%;height:100%;min-height:0;max-height:100%}@property --focus-line-opacity{syntax:"<number>";inherits:false;initial-value:0}input,textarea{--focus-line-opacity:0;font-family:var(--font-family);font-size:var(--font-size);color:var(--color-text);padding:var(--spacing-half) 0 var(--spacing-quarter) 0;background-color:#0000;background-image:linear-gradient(color-mix(in srgb, var(--color-primary) calc(var(--focus-line-opacity) * 100%), transparent), color-mix(in srgb, var(--color-primary) calc(var(--focus-line-opacity) * 100%), transparent));width:100%;transition:background-size .35s ease-in-out, background-color var(--speed) ease, --focus-line-opacity .35s ease-in-out;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;border:none;border-bottom:1px solid #0000;border-radius:0}input::placeholder,textarea::placeholder{color:var(--color-placeholder)}input:focus,textarea:focus{--focus-line-opacity:1;background-color:var(--color-surface);background-size:100% 1px;outline:none}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{cursor:default;opacity:.9}input{min-height:var(--input-height);line-height:1.25}input[type=checkbox],input[type=radio]{appearance:none;border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:16px;height:16px;min-height:0;transition:background var(--speed) ease, border-color var(--speed) ease;border-radius:4px;flex:none;place-content:center;margin:0;padding:0;display:inline-grid}input[type=checkbox]:hover:not(:disabled),input[type=radio]:hover:not(:disabled){border-color:var(--color-primary)}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--color-primary-soft);outline-offset:1px}input[type=checkbox]:checked,input[type=radio]:checked{border-color:var(--color-primary);background:var(--color-primary)}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.4;cursor:default}input[type=checkbox]:checked{background:var(--color-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M4 8.5l2.5 2.5L12 5.5'/%3E%3C/svg%3E") center/14px no-repeat}input[type=radio]{border-radius:50%}input[type=radio]:checked{background:var(--color-primary);box-shadow:inset 0 0 0 2.5px var(--color-surface)}textarea{resize:vertical;min-height:80px;line-height:1.5}select,.input-select{font-family:var(--font-family);font-size:var(--font-size);color:var(--color-text);min-height:var(--input-height);padding:var(--spacing-quarter) var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b8aa3' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-half) center;appearance:none;cursor:pointer;transition:border-color var(--speed) ease, box-shadow var(--speed) ease;background-size:12px;padding-right:2rem}select:focus,.input-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 25%, transparent);outline:none}select:disabled,.input-select:disabled{cursor:default;opacity:.9;background-color:var(--color-disabled-background)}select::placeholder,.input-select::placeholder{color:var(--color-placeholder)}select.subtle,.input-select.subtle{border-color:var(--color-primary-soft)}.form-field{gap:var(--spacing-quarter);flex-direction:column;display:flex}.form-field>label{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft)}.form-field>input,.form-field>textarea,.form-field>select{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-half) var(--spacing);min-height:var(--input-height);box-sizing:border-box;color:var(--color-text);font-size:14px}.form-field>input:focus,.form-field>textarea:focus,.form-field>select:focus{border-color:var(--color-primary)}.form-field>select{cursor:pointer;width:100%;padding-right:2rem}.form-field .hint{color:var(--color-text-muted);font-size:11px}.form-field .hint--error{color:var(--color-danger)}.input-toggle{box-sizing:border-box;min-height:var(--input-height);height:var(--input-height);background:color-mix(in srgb, var(--color-border) 40%, var(--color-bg));border-radius:calc(var(--border-radius) + 3px);flex-wrap:wrap;align-items:stretch;gap:2px;padding:3px;display:inline-flex}.input-toggle button{box-sizing:border-box;height:auto;min-height:0;color:var(--color-text-muted);border-radius:var(--border-radius);box-shadow:none;cursor:pointer;background:0 0;border:none;flex:0 auto;justify-content:center;align-self:stretch;align-items:center;padding:5px 13px;font-family:inherit;font-size:13px;font-weight:600;line-height:1;display:inline-flex}.input-toggle button:hover{filter:none}.input-toggle button:hover:not(.active){filter:none;color:var(--color-text);background:color-mix(in srgb, var(--color-surface) 55%, transparent)}.input-toggle button.active{color:var(--color-primary-strong);background:var(--color-surface);box-shadow:0 1px 3px var(--color-shadow-black-sm);font-weight:700}.input-toggle button:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.input-toggle.tight{height:25px;min-height:25px;overflow:hidden}.input-toggle.tight button{height:100%;max-height:100%;padding-top:0;padding-bottom:0}.input-checkbox-label{align-items:center;gap:var(--spacing-half);cursor:pointer;font-size:var(--font-size);color:var(--color-text);-webkit-user-select:none;user-select:none;display:inline-flex}.input-checkbox-label .input-checkbox{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.input-checkbox-label .input-checkbox:focus-visible+.input-checkbox-box{box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 40%, transparent)}.input-checkbox-label .input-checkbox:checked+.input-checkbox-box{background:var(--color-primary);border-color:var(--color-primary)}.input-checkbox-label .input-checkbox:checked+.input-checkbox-box:after{opacity:1}.input-checkbox-label .input-checkbox:indeterminate+.input-checkbox-box{background:var(--color-primary);border-color:var(--color-primary)}.input-checkbox-label .input-checkbox:indeterminate+.input-checkbox-box:after{opacity:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cline x1='2.5' y1='6' x2='9.5' y2='6' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}.input-checkbox-label .input-checkbox:disabled+.input-checkbox-box{opacity:.6;cursor:default}.input-checkbox-label .input-checkbox:disabled~span:last-of-type{opacity:.8}.input-checkbox-label .input-checkbox-box{border:1.5px solid var(--color-border);background:var(--color-surface);width:16px;height:16px;transition:background var(--speed) ease, border-color var(--speed) ease, box-shadow var(--speed) ease;border-radius:4px;flex-shrink:0;position:relative}.input-checkbox-label .input-checkbox-box:after{content:"";opacity:0;transition:opacity var(--speed) ease;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M4 8.5l2.5 2.5L12 5.5'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:14px;position:absolute;inset:0}:root{--ss-primary-color:#5897fb;--ss-bg-color:#fff;--ss-font-color:#4d4d4d;--ss-placeholder-color:#8d8d8d;--ss-disabled-color:#dcdee2;--ss-border-color:#dcdee2;--ss-highlight-color:#fffb8c;--ss-focus-color:var(--ss-primary-color);--ss-success-color:#00b755;--ss-error-color:#dc3545;--ss-main-height:40px;--ss-content-height:300px;--ss-modal-height:85vh;--ss-modal-width:min(90vw, 400px);--ss-search-height:var(--ss-main-height);--ss-option-height:var(--ss-main-height);--ss-spacing-l:9px;--ss-spacing-m:7px;--ss-spacing-s:5px;--ss-animation-timing:.2s;--ss-border-radius:4px;--ss-modal-z-index:1000000}@keyframes ss-valueIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes ss-valueOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}.ss-hide{display:none!important}.ss-main{-webkit-user-select:none;user-select:none;color:var(--ss-font-color);min-height:var(--ss-main-height);width:100%;padding:0 var(--ss-spacing-s);cursor:pointer;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);box-sizing:border-box;transition:background-color var(--ss-animation-timing), border-radius var(--ss-animation-timing);outline:0;flex-direction:row;align-items:center;display:flex;position:relative}@media (prefers-reduced-motion:reduce){.ss-main{transition:background-color var(--ss-animation-timing)}}.ss-main{overflow:hidden}.ss-main:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-main.ss-disabled{background-color:var(--ss-disabled-color);cursor:not-allowed}.ss-main.ss-disabled .ss-values .ss-disabled{color:var(--ss-font-color)}.ss-main.ss-disabled .ss-values .ss-value .ss-value-delete{cursor:not-allowed}.ss-main.ss-dir-above{border-top-left-radius:0;border-top-right-radius:0}.ss-main.ss-dir-below{border-bottom-right-radius:0;border-bottom-left-radius:0}.ss-main .ss-values{align-content:center;align-self:stretch;align-items:center;gap:var(--ss-spacing-m);min-width:0;max-width:100%;padding:var(--ss-spacing-s) 0;box-sizing:border-box;flex-wrap:wrap;flex:1;display:flex;overflow:hidden}.ss-main .ss-values:has(.ss-multi-string){flex-wrap:nowrap;gap:0}:is(.ss-main .ss-values:has(.ss-single),.ss-main .ss-values:has(.ss-placeholder)){flex-wrap:nowrap}.ss-main .ss-values .ss-single,.ss-main .ss-values .ss-placeholder,.ss-main .ss-values .ss-multi-string{width:100%;min-width:0;max-width:100%;padding:0 var(--ss-spacing-m) 0 calc(var(--ss-spacing-l) - var(--ss-spacing-s));text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;flex:1;margin:0;line-height:1.2;display:block;overflow:hidden}.ss-main .ss-values .ss-placeholder{color:var(--ss-placeholder-color)}.ss-main .ss-values .ss-max{-webkit-user-select:none;user-select:none;width:fit-content;color:var(--ss-bg-color);padding:var(--ss-spacing-s) var(--ss-spacing-m);background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius);align-items:center;font-size:12px;line-height:1;display:flex}.ss-main .ss-values .ss-value{-webkit-user-select:none;user-select:none;background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius);width:fit-content;max-width:100%;animation-name:ss-valueIn;animation-duration:var(--ss-animation-timing);align-items:center;animation-timing-function:ease-out;animation-fill-mode:both;display:flex}@media (prefers-reduced-motion:reduce){.ss-main .ss-values .ss-value{animation:none}}.ss-main .ss-values .ss-value.ss-value-out{animation-name:ss-valueOut;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out}.ss-main .ss-values .ss-value.ss-highlighted{box-shadow:inset 0 0 0 2px var(--ss-bg-color);outline:2px solid var(--ss-font-color);outline-offset:-2px}.ss-main .ss-values .ss-value .ss-value-text{min-width:0;color:var(--ss-bg-color);padding:var(--ss-spacing-s) var(--ss-spacing-m);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;line-height:1;overflow:hidden}.ss-main .ss-values .ss-value .ss-value-delete{height:var(--ss-spacing-l);width:var(--ss-spacing-l);padding:var(--ss-spacing-s) var(--ss-spacing-m);cursor:pointer;border-left:solid 1px var(--ss-bg-color);box-sizing:content-box;align-items:center;display:flex}.ss-main .ss-values .ss-value .ss-value-delete svg{height:var(--ss-spacing-l);width:var(--ss-spacing-l)}.ss-main .ss-values .ss-value .ss-value-delete svg path{fill:none;stroke:var(--ss-bg-color);stroke-width:18px;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-deselect{width:fit-content;height:auto;padding:0 var(--ss-spacing-m) 0 var(--ss-spacing-m);flex:0 auto;justify-content:center;align-items:center;display:flex}.ss-main .ss-deselect svg{width:8px;height:8px}.ss-main .ss-deselect svg path{fill:none;stroke:var(--ss-font-color);stroke-width:20px;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-arrow{width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m);flex:0 auto;justify-content:flex-end;align-items:center;display:flex}.ss-main .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18px;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-status{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ss-content{width:auto;height:auto;max-height:var(--ss-content-height);box-sizing:border-box;border:solid 1px var(--ss-border-color);background-color:var(--ss-bg-color);min-height:0;transition:transform var(--ss-animation-timing), opacity var(--ss-animation-timing);opacity:0;z-index:10000;flex-direction:column;display:flex;position:absolute;overflow:hidden;transform:scaleY(0)}@media (prefers-reduced-motion:reduce){.ss-content{transition:none}}.ss-content.ss-relative{z-index:auto;height:100%;position:relative}.ss-content.ss-fixed{position:fixed}.ss-content.ss-dir-above{transform-origin:bottom;border-top-left-radius:var(--ss-border-radius);border-top-right-radius:var(--ss-border-radius);flex-direction:column-reverse}.ss-content.ss-dir-below{transform-origin:top;border-bottom-left-radius:var(--ss-border-radius);border-bottom-right-radius:var(--ss-border-radius)}.ss-content.ss-open{opacity:1;transform:scaleY(1)}.ss-content .ss-search{align-items:center;gap:var(--ss-spacing-s);min-height:var(--ss-search-height);padding:0 var(--ss-spacing-s);box-sizing:border-box;border-bottom:1px solid var(--ss-border-color);flex-direction:row;flex:0 auto;display:flex}.ss-content .ss-search input{font-size:inherit;line-height:inherit;width:100%;min-width:0;height:100%;min-height:0;padding:0 var(--ss-spacing-m);background-color:var(--ss-bg-color);text-align:left;box-sizing:border-box;border:none;outline:0;flex:auto;margin:0;display:inline-flex}.ss-content .ss-search input::placeholder{color:var(--ss-placeholder-color);vertical-align:middle}.ss-content .ss-search input:focus{box-shadow:none}.ss-content .ss-search .ss-addable{cursor:pointer;box-sizing:border-box;border-radius:var(--ss-border-radius);background-color:var(--ss-primary-color);border:none;flex:none;justify-content:center;align-items:center;width:22px;height:22px;margin:auto 0;padding:0;display:inline-flex}.ss-content .ss-search .ss-addable svg{flex:none;justify-content:center;align-items:center;width:10px;height:10px;margin:0;display:flex}.ss-content .ss-search .ss-addable svg path{fill:none;stroke:var(--ss-bg-color);stroke-width:18px;stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-search .ss-selectall{margin-left:auto}.ss-content .ss-selectall{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:var(--ss-spacing-s);transition:opacity var(--ss-animation-timing);flex-direction:row;flex:none;display:flex}.ss-content .ss-selectall:hover{opacity:.7}.ss-content .ss-selectall span{color:var(--ss-font-color);text-align:center;white-space:nowrap;flex:0 auto;justify-content:center;align-items:center;font-size:65%;display:flex}.ss-content .ss-selectall svg{border-radius:calc(var(--ss-border-radius) * .5);flex:none;width:15px;height:15px}.ss-content .ss-selectall svg path{stroke-linecap:round;stroke-linejoin:round;transition:fill var(--ss-animation-timing), stroke var(--ss-animation-timing)}.ss-content .ss-selectall svg path:first-child{fill:var(--ss-bg-color);stroke:var(--ss-border-color);stroke-width:8px}.ss-content .ss-selectall svg path:last-child{fill:none;stroke:#0000;stroke-width:10px}.ss-content .ss-selectall.ss-selected svg{animation-name:ss-valueIn;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out}@media (prefers-reduced-motion:reduce){.ss-content .ss-selectall.ss-selected svg{animation:none}}.ss-content .ss-selectall.ss-selected svg path:first-child{fill:var(--ss-primary-color);stroke:var(--ss-primary-color)}.ss-content .ss-selectall.ss-selected svg path:last-child{stroke:var(--ss-bg-color)}.ss-content.ss-dir-above .ss-search{border-bottom:none;border-top:1px solid var(--ss-border-color)}.ss-content .ss-list{scrollbar-color:var(--ss-primary-color) var(--ss-bg-color);flex:auto;height:auto;min-height:0;overflow:hidden auto}.ss-content .ss-list .ss-error{color:var(--ss-error-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-searching{color:var(--ss-font-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup .ss-option{min-height:0;transition:max-height var(--ss-animation-timing) ease, min-height var(--ss-animation-timing) ease, opacity var(--ss-animation-timing) ease, padding-top var(--ss-animation-timing) ease, padding-bottom var(--ss-animation-timing) ease, margin-top var(--ss-animation-timing) ease, margin-bottom var(--ss-animation-timing) ease}.ss-content .ss-list .ss-optgroup:not(.ss-close):not(.ss-open) .ss-option{min-height:var(--ss-option-height)}.ss-content .ss-list .ss-optgroup.ss-open .ss-option{min-height:var(--ss-option-height);opacity:1;max-height:100px;overflow:visible}.ss-content .ss-list .ss-optgroup.ss-close .ss-option{opacity:0;max-height:0;overflow:hidden;min-height:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}.ss-content .ss-list .ss-optgroup .ss-optgroup-label{min-height:var(--ss-option-height);padding:0 var(--ss-spacing-l);flex-direction:row;justify-content:space-between;align-items:center;display:flex}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-label-text{color:var(--ss-font-color);flex:auto;font-weight:700}.ss-content .ss-list .ss-optgroup .ss-optgroup-label:has(.ss-arrow){cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions{justify-content:center;align-items:center;gap:var(--ss-spacing-m);flex-direction:row;flex:0 auto;display:flex}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable{cursor:pointer;flex-direction:row;flex:0 auto;display:flex}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow{flex:auto;width:10px;height:10px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18px;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content .ss-list .ss-optgroup .ss-option{padding:0 var(--ss-spacing-l) 0 calc(var(--ss-spacing-l) * 3)}.ss-content .ss-list .ss-option{min-height:var(--ss-option-height);padding:0 var(--ss-spacing-l);white-space:normal;color:var(--ss-font-color);cursor:pointer;-webkit-user-select:none;user-select:none;content-visibility:auto;contain-intrinsic-size:auto var(--ss-option-height);align-items:center;display:flex}.ss-content .ss-list .ss-option:hover:not(.ss-disabled){color:var(--ss-bg-color);background-color:var(--ss-primary-color);border-left:5px solid var(--ss-primary-color);transition:border-left var(--ss-animation-timing) ease}.ss-content .ss-list .ss-option.ss-highlighted,.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-disabled{cursor:not-allowed;background-color:var(--ss-disabled-color)}.ss-content .ss-list .ss-option.ss-disabled:hover{color:var(--ss-font-color)}.ss-content .ss-list .ss-option .ss-search-highlight{background-color:var(--ss-highlight-color);display:inline-block}.ss-content .ss-list .ss-search{min-height:var(--ss-search-height);padding:0 var(--ss-spacing-l);flex-direction:row;align-items:center;display:flex}.ss-modal-overlay{z-index:var(--ss-modal-z-index);padding:var(--ss-spacing-l);box-sizing:border-box;opacity:0;transition:opacity var(--ss-animation-timing);background-color:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.ss-modal-overlay{transition:none}}.ss-modal-overlay.ss-open{opacity:1}.ss-modal-overlay .ss-modal-dialog{width:100%;max-width:var(--ss-modal-width);max-height:var(--ss-modal-height);flex-direction:column;display:flex;position:relative;overflow:visible}.ss-modal-overlay .ss-modal-dialog .ss-modal-title{width:100%;padding:0 0 var(--ss-spacing-l);box-sizing:border-box;color:#fff;text-align:left;background:0 0;border:none;flex:none;font-size:1.35em;font-weight:700;line-height:1.3}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content{max-width:100%;max-height:var(--ss-modal-height);transform-origin:50%;z-index:1;border-radius:var(--ss-border-radius);min-height:0;overflow:visible;width:100%!important;margin:0!important;position:relative!important;top:auto!important;left:auto!important}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content .ss-modal-close{z-index:2;border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);width:28px;height:28px;color:var(--ss-font-color);cursor:pointer;border:none;outline:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:absolute;top:0;right:0;transform:translate(50%,-50%);box-shadow:0 1px 4px #00000080}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content .ss-modal-close:hover{background-color:var(--ss-bg-color);box-shadow:0 2px 6px #00000029}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content .ss-modal-close:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content .ss-modal-close svg{width:10px;height:10px}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content .ss-modal-close svg path{fill:none;stroke:currentColor;stroke-width:20px;stroke-linecap:round;stroke-linejoin:round}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content .ss-list{border-radius:0 0 var(--ss-border-radius) var(--ss-border-radius);scrollbar-color:var(--ss-primary-color) var(--ss-bg-color);min-height:0;overflow:hidden auto}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content .ss-search.ss-hide~.ss-list{border-radius:var(--ss-border-radius)}.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content.ss-dir-above,.ss-modal-overlay .ss-modal-dialog .ss-content.ss-modal-content.ss-dir-below{transform-origin:50%;flex-direction:column}:root{--ss-primary-color:var(--color-primary);--ss-bg-color:var(--color-surface);--ss-font-color:var(--color-text);--ss-placeholder-color:var(--color-placeholder);--ss-disabled-color:var(--color-disabled-background);--ss-border-color:var(--color-border);--ss-highlight-color:var(--color-highlight);--ss-focus-color:var(--color-primary);--ss-success-color:var(--color-success);--ss-error-color:var(--color-danger);--ss-main-height:var(--input-height);--ss-content-height:400px;--ss-search-height:var(--ss-main-height);--ss-option-height:var(--ss-main-height);--ss-spacing-l:var(--spacing);--ss-spacing-m:var(--spacing-half);--ss-spacing-s:var(--spacing-quarter);--ss-animation-timing:var(--speed);--ss-border-radius:var(--border-radius)}.ss-main{background-color:var(--color-surface);border:1px solid var(--color-border);transition:border-color var(--speed) ease, box-shadow var(--speed) ease;font-size:14px}.ss-main:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 20%, transparent)}.ss-main .ss-values .ss-single{color:var(--color-text);font-size:14px}.ss-main .ss-values .ss-placeholder{font-size:14px}.ss-main .ss-arrow path{stroke:var(--color-text-muted)}.ss-content{background-color:var(--color-surface);border-color:var(--color-border);border-radius:var(--border-radius);box-shadow:0 4px 12px color-mix(in srgb, var(--color-text) 10%, transparent), 0 1px 3px color-mix(in srgb, var(--color-text) 6%, transparent)}.ss-content .ss-search input{background-color:var(--color-surface);color:var(--color-text);background-image:none;font-size:14px;transition:none}.ss-content .ss-search input::placeholder{color:var(--color-placeholder)}.ss-content .ss-list .ss-option{color:var(--color-text);padding:var(--spacing-half) var(--spacing);font-size:14px;transition:background-color .15s,color .15s}.ss-content .ss-list .ss-option:hover:not(.ss-disabled){background-color:var(--color-primary-soft);color:var(--color-text);border-left:3px solid var(--color-primary)}.ss-content .ss-list .ss-option.ss-highlighted,.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected{background-color:var(--color-primary);color:var(--btn-color)}.ss-content .ss-list .ss-option.ss-disabled{background-color:var(--color-surface-alt);color:var(--color-text-muted)}.text-desc.ss-main .status-option-desc{display:none}.text-desc.ss-content .ss-list .ss-option{height:auto;min-height:var(--ss-option-height);flex-direction:column;align-items:stretch;line-height:1.4;display:flex}.text-desc.ss-content .ss-list .ss-option:has(.status-option-desc){min-height:calc(var(--ss-option-height) + 12px);padding-top:var(--spacing-half);padding-bottom:var(--spacing-half)}.text-desc.ss-content .ss-list .ss-option .suggestion-option{align-items:center;gap:10px;width:100%;display:flex}.text-desc.ss-content .ss-list .ss-option .suggestion-icon{background:var(--color-primary-soft);width:28px;height:28px;color:var(--color-primary);border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.text-desc.ss-content .ss-list .ss-option .suggestion-icon svg{width:14px;height:14px}.text-desc.ss-content .ss-list .ss-option .suggestion-copy{flex-direction:column;min-width:0;display:flex}.text-desc.ss-content .ss-list .ss-option .status-option-label{color:var(--color-text);font-size:14px;font-weight:600;display:block}.text-desc.ss-content .ss-list .ss-option .status-option-desc{color:var(--color-text-muted);margin-top:4px;font-size:12px;font-weight:400;line-height:1.35;display:block}.text-desc.ss-content .ss-list .ss-option:hover:not(.ss-disabled) .status-option-label{color:var(--color-text)}.text-desc.ss-content .ss-list .ss-option.ss-highlighted .status-option-label,.text-desc.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected .status-option-label{color:var(--btn-color)}.text-desc.ss-content .ss-list .ss-option.ss-highlighted .status-option-desc,.text-desc.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected .status-option-desc{color:var(--color-on-primary-muted)}.text-desc.ss-content .ss-list .ss-option.ss-highlighted .suggestion-icon,.text-desc.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected .suggestion-icon{background:color-mix(in srgb, var(--btn-color) 18%, transparent);color:var(--btn-color)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button.notification-item{width:100%;height:auto;min-height:0;box-shadow:none;cursor:pointer;color:inherit;font:inherit;font-weight:inherit;text-align:left;white-space:normal;background:0 0;border:none;border-radius:0;flex:auto;justify-content:flex-start;align-self:stretch;align-items:flex-start;padding:0;display:flex}button.notification-item:hover{filter:none}.notification-item{gap:var(--spacing-half)}.notification-item .details{gap:var(--spacing-quarter);flex-direction:column;flex:1;min-width:0;display:flex}.notification-item .meta{justify-content:space-between;align-items:center;gap:var(--spacing-half);width:100%;display:flex}.notification-item .title{font-weight:var(--font-weight-bold);color:var(--color-text);margin:0;line-height:1.4}.notification-item .body{color:var(--color-text-soft);margin:0;line-height:1.45}.notification-item .time{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;font-size:.75rem;line-height:1.3}.notification-item .type-pill{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;width:fit-content;padding:2px 8px;font-size:.65rem;font-weight:700;line-height:1.3;display:inline-flex}.notification-item .type-pill.swim{color:var(--color-primary-strong);background:var(--color-notification-primary-bg)}.notification-item .type-pill.follower{color:var(--color-success-dark);background:var(--color-notification-success-bg)}.notification-item .type-pill.assignment{color:var(--color-notification-warning-dark);background:var(--color-notification-warning-bg)}.notification-item .type-pill.default{color:var(--color-notification-info);background:var(--color-notification-info-bg)}.notification-item .icon-wrap{flex-shrink:0;position:relative}.notification-item .unread-dot{background:var(--color-primary);width:8px;height:8px;box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 20%, transparent);border-radius:50%;flex-shrink:0;margin-top:6px}.notification-item.full{gap:var(--spacing)}.notification-item.full .details{gap:var(--spacing-half)}.notification-item.full .title{font-size:.95rem}.notification-item.full .body{color:var(--color-text-muted);font-size:.85rem}.notification-item.full .icon-wrap .unread-dot{margin-top:0;position:absolute;top:-2px;right:-2px}.notification-item.compact .notification-icon{border-radius:0}.notification-item.compact .type-pill{padding:1px 6px;font-size:.6rem}.notification-item.compact .title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;overflow:hidden}.notification-item.compact .time{font-size:11px}.notification-item.compact .icon-wrap .unread-dot{margin-top:0;position:absolute;top:-2px;right:-2px}.notification-icon{border-radius:var(--border-radius);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.notification-icon svg{width:1em;height:1em}.notification-icon.sm{width:28px;height:28px;font-size:13px}.notification-icon.md{width:40px;height:40px;font-size:16px}.notification-icon.swim{color:var(--color-primary-strong);background:var(--color-notification-primary-bg)}.notification-icon.follower{color:var(--color-success-dark);background:var(--color-notification-success-bg)}.notification-icon.assignment{color:var(--color-notification-warning-dark);background:var(--color-notification-warning-bg)}.notification-icon.default{color:var(--color-notification-info);background:var(--color-notification-info-bg)}@keyframes confirm-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes flash-highlight{0%{background:var(--color-primary-soft);transform:scale(1.01)}to{background:0 0;transform:scale(1)}}@keyframes loading-modal-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-primary) 55%, transparent)}70%{box-shadow:0 0 0 7px color-mix(in srgb, var(--color-primary) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-primary) 0%, transparent)}}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pulse-fade{0%,to{opacity:.4}50%{opacity:1}}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes stats-bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes suggestion-fade-in{to{opacity:1;transform:translateY(0)}}@keyframes swim-bubble{0%{opacity:0;transform:translateY(0)scale(.6)}20%{opacity:.8}80%{opacity:.3}to{opacity:0;transform:translateY(-46px)scale(1)}}@keyframes swim-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes swim-wave{0%{transform:translate(0)}to{transform:translate(-40px)}}@keyframes wave-fade-in{to{opacity:1}}@media print{html.print-dark .swim-page{background:#fff!important}html.print-dark .swim-page .canvas{filter:none;background:#fff!important}html.print-dark .swim-page .canvas>*{filter:brightness(.78)contrast(1.35)saturate(1.15);-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}html.print-dark .swim-page .svg-inline--fa,html.print-dark .swim-page .equipment-icon,html.print-dark .swim-page .stroke-segment,html.print-dark .swim-page .stroke-dot,html.print-dark .swim-page .diff-segment,html.print-dark .swim-page .diff-dot,html.print-dark .swim-page .difficulty-meter-seg{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}.driver-popover.swim-tour-popover{max-width:340px;padding:var(--spacing);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);box-shadow:var(--modal-panel-shadow)}.driver-popover.swim-tour-popover .driver-popover-title{color:var(--color-ink);font-family:inherit;font-size:1.05rem;font-weight:800;line-height:1.3}.driver-popover.swim-tour-popover .driver-popover-description{margin-top:var(--spacing-quarter);color:var(--color-text-soft);font-family:inherit;font-size:.9rem;line-height:1.5}.driver-popover.swim-tour-popover .driver-popover-arrow{border-color:var(--color-surface)}.driver-popover.swim-tour-popover .driver-popover-close-btn{width:30px;height:30px;color:var(--color-text-muted);font-size:20px}.driver-popover.swim-tour-popover .driver-popover-close-btn:hover,.driver-popover.swim-tour-popover .driver-popover-close-btn:focus{color:var(--color-text)}.driver-popover.swim-tour-popover .driver-popover-footer{gap:var(--spacing-half);margin-top:var(--spacing)}.driver-popover.swim-tour-popover .driver-popover-progress-text{color:var(--color-text-muted);font-family:inherit;font-size:.78rem;font-weight:700}.driver-popover.swim-tour-popover .driver-popover-footer-btn{color:var(--color-text);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:6px 12px;font-family:inherit;font-size:.85rem;font-weight:700}.driver-popover.swim-tour-popover .driver-popover-footer-btn:hover{border-color:var(--color-text-soft);background:var(--color-surface-elevated)}.driver-popover.swim-tour-popover .driver-popover-navigation-btns button:last-child{color:var(--btn-color);background:var(--color-primary);border-color:var(--color-primary)}.driver-popover.swim-tour-popover .driver-popover-navigation-btns button:last-child:hover{filter:brightness(1.05)}
