.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)}.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)}.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)}.account-page{min-height:100%;padding:var(--spacing);box-sizing:border-box;max-width:1100px;margin:0 auto}.account-page .login-hint{text-align:center;padding:calc(var(--spacing) * 3) var(--spacing);color:var(--color-text-muted);font-size:15px}.account-page .account-nav{flex-shrink:0;width:100%}@media (width>=768px){.account-page .account-nav{width:220px;top:var(--spacing);position:sticky}}.account-page .account-nav .page-header{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing);display:flex}.account-page .account-nav .page-header h2{font-size:20px;font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}.account-page .account-nav nav{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);flex-direction:column;gap:2px;display:flex}@media (width<=767px){.account-page .account-nav nav{gap:var(--spacing-quarter);flex-flow:wrap}}.account-page .account-nav .nav-link{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border-radius:calc(var(--border-radius) - 2px);color:var(--color-text-soft);transition:background-color var(--speed) ease, color var(--speed) ease;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.account-page .account-nav .nav-link .nav-icon{text-align:center;opacity:.75;flex-shrink:0;width:1.1rem;font-size:.8rem}.account-page .account-nav .nav-link:hover{color:var(--color-text);background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.account-page .account-nav .nav-link.active{color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.account-page .account-nav .nav-link.active .nav-icon{opacity:1}.account-page .account-body{gap:var(--spacing);flex-direction:column;display:flex}@media (width>=768px){.account-page .account-body{align-items:flex-start;gap:calc(var(--spacing) * 1.5);flex-direction:row}}.account-page .account-content{flex:1;min-width:0}.account-page .content-fade-enter-active,.account-page .content-fade-leave-active{transition:opacity .2s}.account-page .content-fade-enter-from,.account-page .content-fade-leave-to{opacity:0}.account-page .page-head{justify-content:space-between;align-items:flex-start;gap:var(--spacing);margin-bottom:var(--spacing);flex-wrap:wrap;display:flex}.account-page .page-head h1{margin:0 0 var(--spacing-quarter);font-size:20px}.account-page .page-head-text{flex:1;min-width:20em;max-width:46em}.account-page .page-head-text p{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.account-page .page-actions{align-items:center;gap:var(--spacing-half);flex-shrink:0;margin-left:auto;display:flex}.account-page .page-filters{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing);flex-wrap:wrap;display:flex}.account-page .page-actions>button,.account-page .page-actions>a,.account-page .empty-cta{padding:var(--spacing-half) var(--spacing);background:var(--color-surface-alt);color:var(--color-text-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;font-size:14px;font-weight:var(--font-weight-bold);white-space:nowrap;cursor:pointer;transition:background var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease;justify-content:center;align-items:center;gap:6px;line-height:1.2;text-decoration:none;display:inline-flex}.account-page .page-actions>button:hover,.account-page .page-actions>a:hover,.account-page .empty-cta:hover{background:var(--color-border);color:var(--color-text)}.account-page .page-actions>.primary,.account-page .empty-cta.primary{background:var(--color-primary);color:var(--btn-color);border-color:var(--color-primary)}.account-page .page-actions>.primary:hover,.account-page .empty-cta.primary:hover{background:var(--color-primary-strong);border-color:var(--color-primary-strong);color:var(--btn-color)}.account-page .empty-state{text-align:center;padding:calc(var(--spacing) * 2.5) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text-muted)}.account-page .empty-state .empty-icon{margin-bottom:var(--spacing-half);color:var(--color-primary);opacity:.35;font-size:2.75rem}.account-page .empty-state .empty-text{color:var(--color-text);font-size:1.05rem;font-weight:700}.account-page .empty-state .empty-hint,.account-page .empty-state p{margin:0;margin-top:var(--spacing-half);max-width:28rem;margin-left:auto;margin-right:auto;font-size:.9rem;line-height:1.5}.account-page .empty-state .empty-actions{justify-content:center;gap:var(--spacing-half);margin-top:var(--spacing);flex-wrap:wrap;display:flex}.account-page .loading-state{text-align:center;padding:calc(var(--spacing) * 2.5) var(--spacing);color:var(--color-text-muted)}.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}}.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}.assign-modal .assign-fields{gap:var(--spacing-half);flex-direction:column;display:flex}.assign-modal .assign-field{gap:var(--spacing-quarter);flex-direction:column;display:flex}.assign-modal .assign-field-label{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft)}.assign-modal .assign-input{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}.assign-modal .assign-input:focus{border-color:var(--color-primary);outline:none}.assign-modal .assign-linked{color:var(--color-success);margin-left:auto;font-size:12px}.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 .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 .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)}.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)}.modal-actions{align-items:stretch;gap:var(--spacing-half);flex-direction:row;width:100%;display:flex}.modal-actions .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}.modal-actions .cancel-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.modal-actions .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}.modal-actions .send-btn:hover:not(:disabled){background:var(--color-primary-strong)}.modal-actions .send-btn:disabled{opacity:.5;cursor:default}.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}}.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-desc{color:var(--color-text-muted);margin-top:4px;font-size:12px;font-weight:400;line-height:1.35;display:block}.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)}.share-footer{width:100%}.share-footer .btn{width:100%;padding:var(--spacing-half) var(--spacing)}.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-1df6c83e]{gap:var(--spacing-half);margin-bottom:var(--spacing-half);grid-template-columns:1fr auto;display:grid}.search-controls input[data-v-1df6c83e]{padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);border:1px solid var(--color-border)}.results[data-v-1df6c83e]{gap:var(--spacing-half);margin-top:var(--spacing);display:grid;overflow:auto}.results .result-card[data-v-1df6c83e]{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-1df6c83e]{color:var(--color-text);margin:0;font-size:1rem;font-weight:600}.results .result-card .muted[data-v-1df6c83e]{color:var(--color-text-soft);margin:0;font-size:13px;line-height:1.4}.results .result-card .result-total[data-v-1df6c83e]{color:var(--color-primary-strong);letter-spacing:-.02em;margin:0;font-size:.9375rem;font-weight:700}.results .result-card .result-meta[data-v-1df6c83e]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.4}.results .result-card .result-equipment[data-v-1df6c83e]{color:var(--color-text-soft);margin:0;font-size:12px}.results .result-card .result-actions[data-v-1df6c83e]{margin-top:auto}.results .result-card .result-actions .btn[data-v-1df6c83e]{justify-content:center;width:100%}.error[data-v-1df6c83e]{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{color:var(--color-text-soft);margin:0;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.overlay{z-index:10002;background:var(--modal-overlay-bg);-webkit-backdrop-filter:blur(var(--modal-overlay-blur));justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.log-workout-modal .panel{background:var(--color-surface);border-radius:var(--modal-panel-radius);border:1px solid var(--color-border);box-shadow:var(--modal-panel-shadow);width:100%;max-width:480px;max-height:90vh;margin:var(--spacing);padding:calc(var(--spacing) * 2) calc(var(--spacing) * 1.5);align-items:center;gap:calc(var(--spacing) * 1.5);flex-direction:column;display:flex;overflow-y:auto}@media (width<=850px){.log-workout-modal .panel{padding:calc(var(--spacing) * 1.5) var(--spacing);max-width:calc(100% - var(--spacing))}}.log-workout-modal .header{text-align:center}.log-workout-modal .header .title{color:var(--color-text);margin:0 0 var(--spacing-quarter);font-size:1.8rem;font-weight:800}.log-workout-modal .header .sub{color:var(--color-text-soft);font-size:.95rem}.log-workout-modal .header .datetime{justify-content:center;align-items:center;gap:var(--spacing-quarter);margin-top:var(--spacing-half);flex-wrap:wrap;display:flex}.log-workout-modal .header .date,.log-workout-modal .header .time{align-items:center;gap:var(--spacing-quarter);display:flex}.log-workout-modal .header .date-text,.log-workout-modal .header .time-text{color:var(--color-text);font-size:.95rem;font-weight:500}.log-workout-modal .header .at{color:var(--color-text-soft);font-size:.95rem;font-weight:500}.log-workout-modal .header .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 .header .date-edit:hover{opacity:1;color:var(--color-primary)}.log-workout-modal .header .date-input,.log-workout-modal .header .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)}.log-workout-enter-active,.log-workout-leave-active{transition:opacity .25s}.log-workout-enter-active .panel,.log-workout-leave-active .panel{transition:transform .3s,opacity .3s}.log-workout-enter-from,.log-workout-leave-to{opacity:0}.log-workout-enter-from .panel,.log-workout-leave-to .panel{opacity:0;transform:translateY(30px)scale(.95)}.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 .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}}.swim-card{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}.swim-card .head{justify-content:space-between;align-items:flex-start;gap:var(--spacing-half);display:flex}.swim-card .head-left{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.swim-card .title-row{align-items:center;gap:var(--spacing-half);min-width:0;display:flex}.swim-card .title{color:var(--color-text);letter-spacing:-.02em;margin:0;font-size:1.25rem;font-weight:700;line-height:1.2}.swim-card .status-chip{letter-spacing:.06em;text-transform:uppercase;border-radius:var(--border-radius);border:1px solid var(--color-border);flex-shrink:0;padding:2px 7px;font-size:.65rem;font-weight:700}.swim-card .status-chip.is-public{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent);background:color-mix(in srgb, var(--color-success) 10%, transparent)}.swim-card .status-chip.is-unlisted{color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent);background:color-mix(in srgb, var(--color-warning) 10%, transparent)}.swim-card .status-chip.is-private{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent);background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.swim-card .creator-name{color:var(--color-primary);align-self:flex-start;margin:0;font-size:12px;font-weight:500;text-decoration:none}.swim-card .creator-name:hover{text-decoration:underline}.swim-card .meta{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.4}.swim-card .right{align-items:flex-end;gap:var(--spacing-quarter);flex-direction:column;flex-shrink:0;display:flex}.swim-card .total{justify-content:flex-end;align-items:baseline;gap:var(--spacing-quarter);display:flex}.swim-card .total .value{color:var(--color-primary-strong);letter-spacing:-.02em;font-size:1.375rem;font-weight:800;line-height:1.2}.swim-card .total .unit{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;font-size:.8125rem;font-weight:600}.swim-card .stat-metrics{justify-content:flex-end;align-items:center;gap:var(--spacing-half);flex-wrap:wrap;display:flex}.swim-card .calories,.swim-card .duration{justify-content:flex-end;align-items:baseline;gap:var(--spacing-quarter);display:flex}.swim-card .calories .value,.swim-card .duration .value{color:var(--color-text);font-size:.8125rem;font-weight:700;line-height:1}.swim-card .calories .unit,.swim-card .duration .unit{font-size:.625rem;line-height:1}.swim-card .duration .duration-icon{color:var(--color-info);flex:none;align-self:center;font-size:.625rem}.swim-card .calories .calories-icon{color:var(--color-warning);flex:none;align-self:center;font-size:.625rem}.swim-card .equipment{color:var(--color-primary);opacity:.8;align-items:center;gap:4px;display:flex}.swim-card .card-insights{align-items:flex-start;gap:var(--spacing);display:flex}.swim-card .insight-bar{flex:1;min-width:0}.swim-card .desc{color:var(--color-text-soft);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.swim-card .actions{margin-top:auto}.swim-card .actions .btn{justify-content:center;width:100%}.swim-search{flex-direction:column;display:flex}.swim-search .search-hero{width:100%;padding:0 0 var(--spacing-half);align-items:stretch;gap:var(--spacing-half);flex-direction:column;flex-shrink:0;display:flex}.swim-search .search-hero .search-toolbar{align-items:center;gap:var(--spacing-half);width:100%;padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:box-shadow var(--speed) ease;flex-wrap:wrap;display:flex}.swim-search .search-hero .search-toolbar:focus-within{box-shadow:0 0 0 2px var(--color-primary-soft)}.swim-search .search-hero .search-toolbar .search-input{min-width:0;color:var(--color-text);padding:var(--spacing-quarter) 0;background:0 0;border:none;flex:12rem;font-size:1rem}.swim-search .search-hero .search-toolbar .search-input::placeholder{color:var(--color-placeholder)}.swim-search .search-hero .search-toolbar .search-input:focus{outline:none}.swim-search .search-hero .search-toolbar .search-toolbar-actions{align-items:center;gap:var(--spacing-half);flex:none;display:flex}.swim-search .search-hero .search-toolbar .search-btn{flex-shrink:0}.swim-search .search-hero .search-toolbar .filter-toggle{padding:0 var(--spacing);min-height:var(--input-height);border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text-soft);cursor:pointer;transition:background-color var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease;justify-content:center;align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:inline-flex}.swim-search .search-hero .search-toolbar .filter-toggle:hover,.swim-search .search-hero .search-toolbar .filter-toggle.active{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-muted)}.swim-search .search-hero .search-toolbar .filter-toggle .filter-badge{border-radius:var(--border-radius);background:var(--color-primary);min-width:18px;height:18px;color:var(--btn-color);justify-content:center;align-items:center;padding:0 5px;font-size:.68rem;font-weight:700;display:inline-flex}.swim-search .search-hero .search-toolbar .filter-toggle .filter-caret{opacity:.5;font-size:.6rem}.swim-search .search-hero .search-toolbar .filter-toggle.active .filter-caret{opacity:.8}@media (width<=640px){.swim-search .search-hero .search-toolbar .search-input{flex:100%;width:100%}.swim-search .search-hero .search-toolbar .search-toolbar-actions{flex-wrap:wrap;flex:100%;width:100%}.swim-search .search-hero .search-toolbar .search-btn,.swim-search .search-hero .search-toolbar .filter-toggle{flex:100%;width:100%}}.swim-search .filters-panel{width:100%;padding:var(--spacing);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) 6%, transparent);flex-direction:column;gap:0;display:flex}.swim-search .filter-group{padding:var(--spacing-half) 0}.swim-search .filter-group:first-child{padding-top:0}.swim-search .filter-group-header{margin-bottom:var(--spacing-half)}.swim-search .filter-group-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:700}.swim-search .filter-divider{background:var(--color-border);opacity:.5;height:1px}.swim-search .filter-pills{flex-wrap:wrap;gap:6px;display:flex}.swim-search .pill{border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text-soft);cursor:pointer;transition:all var(--speed) ease;align-items:center;gap:5px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.swim-search .pill:hover{border-color:var(--color-primary-soft);color:var(--color-primary);background:var(--color-primary-muted)}.swim-search .pill.active{border-color:var(--color-primary);background:var(--color-primary);color:var(--btn-color);box-shadow:0 1px 4px color-mix(in srgb, var(--color-primary) 30%, transparent)}.swim-search .pill--diff .pill-dot{background:var(--diff-color);border-radius:50%;flex-shrink:0;width:8px;height:8px}.swim-search .pill--diff:hover{border-color:var(--diff-color);color:var(--color-text);background:color-mix(in srgb, var(--diff-color) 12%, var(--color-surface-alt))}.swim-search .pill--diff.active{border-color:var(--diff-color);background:var(--diff-color);color:var(--btn-color);box-shadow:0 1px 4px color-mix(in srgb, var(--diff-color) 35%, transparent)}.swim-search .pill--diff.active .pill-dot{background:var(--color-white)}.swim-search .filter-equipment{flex-wrap:wrap;gap:6px;display:flex}.swim-search .filter-equipment .eq-btn{border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text-muted);cursor:pointer;transition:all var(--speed) ease;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.swim-search .filter-equipment .eq-btn .eq-name{text-transform:capitalize;font-size:.78rem;font-weight:600}.swim-search .filter-equipment .eq-btn:hover{color:var(--color-primary);border-color:var(--color-primary-soft);background:var(--color-primary-muted)}.swim-search .filter-equipment .eq-btn.active{color:var(--btn-color);background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 1px 4px color-mix(in srgb, var(--color-primary) 30%, transparent)}.swim-search .filter-coach,.swim-search .filter-sort{max-width:280px}.swim-search .filter-footer{padding-top:var(--spacing-half);border-top:1px solid color-mix(in srgb, var(--color-border) 50%, transparent);margin-top:var(--spacing-quarter);justify-content:flex-end;display:flex}.swim-search .clear-btn{border-radius:var(--border-radius);border:1px solid color-mix(in srgb, var(--color-danger) 30%, transparent);background:color-mix(in srgb, var(--color-danger) 6%, var(--color-surface));color:var(--color-danger);cursor:pointer;transition:all var(--speed) ease;align-items:center;gap:5px;padding:5px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.swim-search .clear-btn:hover{background:color-mix(in srgb, var(--color-danger) 12%, var(--color-surface));border-color:var(--color-danger)}.swim-search .filters-slide-enter-active,.swim-search .filters-slide-leave-active{transition:all .25s;overflow:hidden}.swim-search .filters-slide-enter-from,.swim-search .filters-slide-leave-to{opacity:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0}.swim-search .filters-slide-enter-to,.swim-search .filters-slide-leave-from{max-height:720px}.swim-search .search-content{gap:var(--spacing);flex-direction:column;flex:1;width:100%;max-width:1200px;margin:0 auto;display:flex}.swim-search .search-results-section .results-grid{gap:var(--spacing);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=640px){.swim-search .search-results-section .results-grid{grid-template-columns:1fr}}.swim-search .search-results-section .search-card-wrap{min-width:0;display:flex}.swim-search .search-results-section .search-card-wrap .swim-card{flex:1;width:100%}.swim-search .search-results-section .search-card-enter-active,.swim-search .search-results-section .search-card-appear-active{transition:opacity .2s,transform .2s cubic-bezier(.22,1,.36,1)}.swim-search .search-results-section .search-card-enter-from,.swim-search .search-results-section .search-card-appear-from{opacity:0;transform:translateY(14px)}@media (prefers-reduced-motion:reduce){.swim-search .search-results-section .search-card-enter-active,.swim-search .search-results-section .search-card-appear-active{transition:none}.swim-search .search-results-section .search-card-enter-from,.swim-search .search-results-section .search-card-appear-from{opacity:1;transform:none}}.swim-search .search-results-section .message{color:var(--color-text-muted);font-size:14px}.swim-search .search-results-section .error{color:var(--color-danger);font-size:14px}.swim-search .search-results-section .search-sentinel{width:100%;height:1px}.swim-search .search-results-section .card-actions{gap:var(--spacing-half);width:100%;display:flex}.swim-search .search-results-section .card-actions .btn{flex:1;width:auto}.swim-search .search-results-section .card-actions .delete-btn{width:var(--input-height);min-width:var(--input-height);padding:var(--spacing-quarter);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-danger) 25%, transparent);flex:none}.swim-search .search-results-section .card-actions .delete-btn:hover{background:color-mix(in srgb, var(--color-danger) 16%, var(--color-surface))}.swim-search .search-results-section .card-actions .delete-btn svg{width:.85em;max-width:.85em;height:.85em;max-height:.85em}.swim-search .search-results-section .confirm-bar{align-items:center;gap:var(--spacing-half);margin-top:var(--spacing-half);padding:var(--spacing-half);background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface));border-radius:var(--border-radius);color:var(--color-danger);font-size:13px;display:flex}.swim-search .search-results-section .confirm-bar .confirm-yes,.swim-search .search-results-section .confirm-bar .confirm-no{padding:var(--spacing-quarter) var(--spacing-half);border-radius:var(--border-radius);cursor:pointer;font-size:12px}.swim-search .search-results-section .confirm-bar .confirm-yes{background:var(--color-danger);color:var(--btn-color);border:none}.swim-search .search-results-section .confirm-bar .confirm-no{color:var(--color-text-muted);border:1px solid var(--color-border);background:0 0}.swim-search.is-page{min-height:100%;padding:var(--spacing)}.swim-search.is-page .search-hero{max-width:800px;padding:var(--spacing) 0 var(--spacing-half);margin:0 auto}.info-page{min-height:100%;padding:var(--spacing);box-sizing:border-box;max-width:1100px;margin:0 auto}.info-page .info-body{gap:var(--spacing);flex-direction:column;display:flex}@media (width>=768px){.info-page .info-body{align-items:flex-start;gap:calc(var(--spacing) * 1.5);flex-direction:row}}.info-page .info-nav{flex-shrink:0;width:100%}@media (width>=768px){.info-page .info-nav{width:220px;top:var(--spacing);position:sticky}}.info-page .info-nav nav{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);flex-direction:column;gap:2px;display:flex}@media (width<=767px){.info-page .info-nav nav{gap:var(--spacing-quarter);flex-flow:wrap}}.info-page .info-nav .nav-link{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border-radius:calc(var(--border-radius) - 2px);color:var(--color-text-soft);font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.info-page .info-nav .nav-link .nav-icon{text-align:center;opacity:.75;flex-shrink:0;width:1.1rem;font-size:.8rem}.info-page .info-nav .nav-link.active .nav-icon{opacity:1}.info-page .info-nav .nav-link{transition:background-color var(--speed) ease, color var(--speed) ease}.info-page .info-nav .nav-link:hover{color:var(--color-text);background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.info-page .info-nav .nav-link.active{color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.info-page .info-content{flex:1;min-width:0}.info-page .info-content .info-section{margin-bottom:0}.info-page .info-content .info-section .section-title{margin:0 0 var(--spacing);letter-spacing:-.02em;color:var(--color-text);padding-bottom:var(--spacing-half);border-bottom:2px solid var(--color-border);font-size:clamp(1.5rem,3vw,2rem);font-weight:800}.info-page .info-content .info-section .section-desc{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.55}.info-home .lead{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.info-home .feature-row{gap:var(--spacing-half);margin-bottom:calc(var(--spacing) * 1.25);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=520px){.info-home .feature-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.info-home .feature-pill{align-items:center;gap:var(--spacing-quarter);padding:var(--spacing-half) var(--spacing-quarter);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);text-align:center;flex-direction:column;display:flex}.info-home .feature-pill .feature-icon{background:color-mix(in srgb, var(--color-primary) 10%, transparent);width:2rem;height:2rem;color:var(--color-primary-strong);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex}.info-home .feature-pill span{color:var(--color-text-soft);font-size:.75rem;font-weight:600;line-height:1.3}.info-home .topic-grid{gap:var(--spacing);display:grid}@media (width>=560px){.info-home .topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.info-home .topic-card{gap:var(--spacing-half);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:inherit;transition:border-color var(--speed) ease, box-shadow var(--speed) ease;flex-direction:column;text-decoration:none;display:flex}.info-home .topic-card:hover{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border));box-shadow:0 2px 12px color-mix(in srgb, var(--color-text) 6%, transparent)}.info-home .topic-card .topic-icon{border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:2.5rem;height:2.5rem;color:var(--color-primary-strong);justify-content:center;align-items:center;font-size:1.15rem;display:flex}.info-home .topic-card .topic-head{align-items:center;gap:var(--spacing-half);display:flex}.info-home .topic-card h3{color:var(--color-primary-strong);margin:0;font-size:1rem;font-weight:700}.info-home .topic-card p{color:var(--color-text-muted);flex:1;margin:0;font-size:.85rem;line-height:1.45}.info-home .topic-card .topic-link{color:var(--color-primary);font-size:.8rem;font-weight:600}.info-build-swim .lead{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.info-build-swim .step-row{gap:var(--spacing-half);margin-bottom:var(--spacing);display:grid}@media (width>=560px){.info-build-swim .step-row{grid-template-columns:repeat(3,minmax(0,1fr))}}.info-build-swim .step-card{gap:var(--spacing-quarter);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);flex-direction:column;display:flex}.info-build-swim .step-card .step-num{align-items:center;gap:var(--spacing-half);display:flex}.info-build-swim .step-card .step-num .step-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:2rem;height:2rem;color:var(--color-primary-strong);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;display:flex}.info-build-swim .step-card .step-num h3{color:var(--color-text);margin:0;font-size:.9rem;font-weight:700}.info-build-swim .step-card p{color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.4}.info-build-swim .interval-pattern{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing);padding:var(--spacing);background:color-mix(in srgb, var(--color-primary) 4%, var(--color-surface));border:1px solid var(--color-border);border-radius:var(--border-radius);flex-wrap:wrap;display:flex}.info-build-swim .pattern-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.7rem;font-weight:700}.info-build-swim .pattern-parts{align-items:center;gap:var(--spacing-quarter);flex-wrap:wrap;display:flex}.info-build-swim .pattern-parts code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-primary-strong);padding:4px 8px;font-size:.8rem}.info-build-swim .pattern-parts .pattern-arrow{color:var(--color-text-muted);font-size:.7rem}.info-build-swim .chip-section{margin-bottom:var(--spacing)}.info-build-swim .chip-section .chip-label{margin:0 0 var(--spacing-quarter);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.7rem;font-weight:700}.info-build-swim .chip-section .chip-row{gap:var(--spacing-quarter);flex-wrap:wrap;display:flex}.info-build-swim .chip-section .chip{background:var(--color-surface-alt);color:var(--color-text-soft);border:1px solid var(--color-border);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600}.info-build-swim .tip-row{gap:var(--spacing-half);margin-bottom:var(--spacing);display:grid}@media (width>=560px){.info-build-swim .tip-row{grid-template-columns:1fr 1fr}}.info-build-swim .tip-card{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);display:flex}.info-build-swim .tip-card .tip-icon{color:var(--color-primary-strong);flex-shrink:0;margin-top:2px;font-size:.9rem}.info-build-swim .tip-card div{min-width:0}.info-build-swim .tip-card div strong{color:var(--color-text);margin-bottom:2px;font-size:.8rem;display:block}.info-build-swim .tip-card div p{color:var(--color-text-muted);margin:0;font-size:.78rem;line-height:1.4}.info-build-swim .tip-card div p code{background:var(--color-surface-alt);color:var(--color-primary-strong);border-radius:4px;padding:1px 5px;font-size:.9em}.info-build-swim .examples-label{margin:0 0 var(--spacing-half);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.75rem;font-weight:700}.info-build-swim .interval-examples{gap:var(--spacing-half);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.info-build-swim .example-group{padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius)}.info-build-swim .example-group-title{margin:0 0 var(--spacing-quarter);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);font-size:.72rem;font-weight:700}.info-build-swim .example-list{margin:0;padding:0;list-style:none}.info-build-swim .example-item{padding:var(--spacing-quarter) 0;border-bottom:1px solid var(--color-border);margin:0}.info-build-swim .example-item:last-child{border-bottom:none}.info-build-swim .example-interval{background:var(--color-surface-alt);border-radius:var(--border-radius);color:var(--color-text);white-space:pre-wrap;border:none;margin:0 -4px;padding:5px 8px;font-family:inherit;font-size:.82rem;font-weight:500;line-height:1.35;display:block}.info-generator .generator-panel{margin-bottom:calc(var(--spacing) * 1.25)}.info-generator .generator-upsell{margin:var(--spacing-half) 0 0;color:var(--color-text-soft);text-align:center;font-size:.85rem;line-height:1.5}.info-generator .generator-upsell button{font-family:inherit;font-size:inherit;color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.info-generator .generator-upsell button:hover{color:var(--color-primary-strong);text-decoration:underline}.info-generator .lead{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.info-generator .feature-card{margin-bottom:var(--spacing);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface)}.info-generator .feature-card .feature-head{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing-quarter);display:flex}.info-generator .feature-card .feature-head .feature-icon{border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:2.5rem;height:2.5rem;color:var(--color-primary-strong);justify-content:center;align-items:center;font-size:1.15rem;display:inline-flex}.info-generator .feature-card .feature-head h3{color:var(--color-text);margin:0;font-size:1.1rem;font-weight:700}.info-generator .feature-card .feature-desc{margin:0 0 var(--spacing);color:var(--color-text-muted);font-size:.9rem;line-height:1.5}.info-generator .feature-card .example{align-items:center;gap:var(--spacing-half);margin-top:var(--spacing);padding:var(--spacing-quarter) var(--spacing-half);border-radius:var(--border-radius);color:var(--color-text-soft);background:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-primary) 16%, var(--color-border));font-size:.82rem;display:inline-flex}.info-generator .feature-card .example .example-icon{color:var(--color-primary)}.info-generator .feature-card .example em{color:var(--color-text);font-style:italic}.info-generator .flow{justify-content:center;align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) 0;border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-text) 3%, transparent);flex-wrap:wrap;display:flex}.info-generator .flow-step{align-items:center;gap:var(--spacing-quarter);flex-direction:column;min-width:84px;display:flex}.info-generator .flow-step .flow-icon{background:var(--color-primary-soft);width:2.5rem;height:2.5rem;color:var(--color-primary-strong);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:inline-flex}.info-generator .flow-step .flow-label{text-align:center;color:var(--color-text-soft);font-size:.78rem;font-weight:600}.info-generator .flow-arrow{color:var(--color-text-muted);font-size:1rem}.info-generator .card-tips{margin-top:var(--spacing);padding-top:var(--spacing);border-top:1px solid var(--color-border)}.info-generator .card-tips-title{align-items:center;gap:var(--spacing-quarter);margin:0 0 var(--spacing-half);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-soft);font-size:.8rem;font-weight:700;display:flex}.info-generator .tip-row{gap:var(--spacing-half);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=520px){.info-generator .tip-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.info-generator .tip-pill{align-items:center;gap:var(--spacing-quarter);padding:var(--spacing-half) var(--spacing-quarter);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface));text-align:center;flex-direction:column;display:flex}.info-generator .tip-pill .tip-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}.info-generator .tip-pill span{color:var(--color-text-soft);font-size:.75rem;font-weight:600;line-height:1.3}.info-calories .lead{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.info-calories .formula-card{align-items:flex-start;gap:var(--spacing);margin-bottom:var(--spacing);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface));display:flex}.info-calories .formula-card .formula-icon{border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 14%, transparent);width:2.5rem;height:2.5rem;color:var(--color-primary-strong);flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.info-calories .formula-card .formula-body{min-width:0}.info-calories .formula-card .formula-body .formula-eq{margin:0 0 var(--spacing-quarter);color:var(--color-text);font-family:inherit;font-size:1rem;font-weight:700}.info-calories .formula-card .formula-body p{color:var(--color-text-muted);margin:0;font-size:.85rem;line-height:1.45}.info-calories .visual-grid{gap:var(--spacing-half);margin-bottom:var(--spacing);display:grid}@media (width>=600px){.info-calories .visual-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=480px){.info-calories .visual-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=700px){.info-calories .visual-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.info-calories .info-card{padding:var(--spacing-half) var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface)}.info-calories .info-card .card-icon{margin-bottom:var(--spacing-quarter);color:var(--color-primary-strong);font-size:1rem}.info-calories .info-card h3{margin:0 0 var(--spacing-quarter);color:var(--color-text);font-size:.9rem;font-weight:700}.info-calories .info-card p{margin:0 0 var(--spacing-quarter);color:var(--color-text-muted);font-size:.8rem;line-height:1.4}.info-calories .info-card code,.info-calories .info-card .card-example{color:var(--color-text-soft);font-size:.75rem;font-style:italic;display:block}.info-calories .subsection-label{margin:0 0 var(--spacing-half);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.75rem;font-weight:700}.info-calories .pace-grid{gap:var(--spacing-quarter);margin-bottom:var(--spacing);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=480px){.info-calories .pace-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.info-calories .pace-cell{padding:var(--spacing-half) var(--spacing-quarter);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.info-calories .pace-cell .pace-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:.7rem;font-weight:700}.info-calories .pace-cell .pace-value{color:var(--color-primary-strong);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:700}.info-calories .pace-cell .pace-unit{color:var(--color-text-muted);font-size:.65rem}.info-calories .chip-row{gap:var(--spacing-quarter);margin-bottom:var(--spacing);flex-wrap:wrap;display:flex}.info-calories .chip{background:var(--color-surface-alt);color:var(--color-text-soft);border:1px solid var(--color-border);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600}.info-calories .example-card{margin-bottom:var(--spacing);padding:var(--spacing);border-left:3px solid var(--color-primary);border-radius:0 var(--border-radius) var(--border-radius) 0;background:var(--color-surface)}.info-calories .example-card code{margin-bottom:var(--spacing-quarter);color:var(--color-primary-strong);font-size:.9rem;font-weight:600;display:block}.info-calories .example-card p{color:var(--color-text-soft);margin:0;font-size:.85rem;line-height:1.45}.info-calories .example-card strong{color:var(--color-text)}.info-calories .limit-card{align-items:center;gap:var(--spacing-quarter);padding:var(--spacing-half);text-align:center;border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);flex-direction:column;display:flex}.info-calories .limit-card .limit-icon{color:var(--color-text-muted);font-size:1rem}.info-calories .limit-card span{color:var(--color-text-soft);font-size:.75rem;font-weight:600}.info-calories .note{padding:var(--spacing-half) var(--spacing);color:var(--color-text-muted);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-warning) 8%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-warning) 20%, var(--color-border));margin:0;font-size:.85rem;line-height:1.45}.info-duration .lead{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.info-duration .formula-card{align-items:flex-start;gap:var(--spacing);margin-bottom:var(--spacing);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface));display:flex}.info-duration .formula-card .formula-icon{border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 14%, transparent);width:2.5rem;height:2.5rem;color:var(--color-primary-strong);flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.info-duration .formula-card .formula-body{min-width:0}.info-duration .formula-card .formula-body .formula-eq{margin:0 0 var(--spacing-quarter);color:var(--color-text);font-family:inherit;font-size:1rem;font-weight:700}.info-duration .formula-card .formula-body p{color:var(--color-text-muted);margin:0;font-size:.85rem;line-height:1.45}.info-duration .visual-grid{gap:var(--spacing-half);margin-bottom:var(--spacing);display:grid}@media (width>=600px){.info-duration .visual-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=480px){.info-duration .visual-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=700px){.info-duration .visual-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.info-duration .info-card{padding:var(--spacing-half) var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface)}.info-duration .info-card .card-icon{margin-bottom:var(--spacing-quarter);color:var(--color-primary-strong);font-size:1rem}.info-duration .info-card h3{margin:0 0 var(--spacing-quarter);color:var(--color-text);font-size:.9rem;font-weight:700}.info-duration .info-card p{margin:0 0 var(--spacing-quarter);color:var(--color-text-muted);font-size:.8rem;line-height:1.4}.info-duration .info-card .card-example{color:var(--color-text-soft);font-size:.75rem;font-style:italic;display:block}.info-duration .subsection-label{margin:0 0 var(--spacing-half);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.75rem;font-weight:700}.info-duration .pace-grid{gap:var(--spacing-quarter);margin-bottom:var(--spacing);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=480px){.info-duration .pace-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.info-duration .pace-cell{padding:var(--spacing-half) var(--spacing-quarter);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.info-duration .pace-cell .pace-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:.7rem;font-weight:700}.info-duration .pace-cell .pace-value{color:var(--color-primary-strong);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:700}.info-duration .pace-cell .pace-unit{color:var(--color-text-muted);font-size:.65rem}.info-duration .chip-row{gap:var(--spacing-quarter);margin-bottom:var(--spacing);flex-wrap:wrap;display:flex}.info-duration .chip{background:var(--color-surface-alt);color:var(--color-text-soft);border:1px solid var(--color-border);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600}.info-duration .flow-card{margin-bottom:var(--spacing);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface)}.info-duration .flow-card ol{color:var(--color-text-soft);margin:0;padding-left:1.25rem;font-size:.85rem;line-height:1.5}.info-duration .flow-card ol li+li{margin-top:var(--spacing-half)}.info-duration .flow-card ol strong{color:var(--color-text)}.info-duration .example-card{margin-bottom:var(--spacing);padding:var(--spacing);border-left:3px solid var(--color-primary);border-radius:0 var(--border-radius) var(--border-radius) 0;background:var(--color-surface)}.info-duration .example-card code{margin-bottom:var(--spacing-quarter);color:var(--color-primary-strong);font-size:.9rem;font-weight:600;display:block}.info-duration .example-card p{color:var(--color-text-soft);margin:0;font-size:.85rem;line-height:1.45}.info-duration .example-card strong{color:var(--color-text)}.info-duration .limit-card{align-items:center;gap:var(--spacing-quarter);padding:var(--spacing-half);text-align:center;border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);flex-direction:column;display:flex}.info-duration .limit-card .limit-icon{color:var(--color-text-muted);font-size:1rem}.info-duration .limit-card span{color:var(--color-text-soft);font-size:.75rem;font-weight:600}.info-duration .note{padding:var(--spacing-half) var(--spacing);color:var(--color-text-muted);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-warning) 8%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-warning) 20%, var(--color-border));margin:0;font-size:.85rem;line-height:1.45}.info-drill-library .drill-count{align-items:center;gap:var(--spacing-quarter);margin:0 0 var(--spacing);padding:var(--spacing-quarter) var(--spacing-half);color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-radius:999px;font-size:.8rem;font-weight:600;display:inline-flex}.info-drill-library .drill-status{color:var(--color-text-muted);margin:0;font-size:.95rem}.info-drill-library .drill-status--error{color:var(--color-danger);font-weight:600}.info-drill-library .info-section{margin-bottom:calc(var(--spacing) * 2)}.info-drill-library .info-section .section-title{margin:0 0 var(--spacing);letter-spacing:-.02em;color:var(--color-text);padding-bottom:var(--spacing-half);border-bottom:2px solid var(--color-border);font-size:clamp(1.5rem,3vw,2rem);font-weight:800}.info-drill-library .info-section .section-desc{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.55}.info-drill-library .drill-categories{gap:calc(var(--spacing) * 1.5);flex-direction:column;display:flex}.info-drill-library .drill-category-block{scroll-margin-top:5rem}.info-drill-library .drill-category-block .category-heading{margin:0 0 var(--spacing-half);color:var(--color-text);align-items:center;gap:var(--spacing-half);font-size:1.15rem;font-weight:700;display:flex}.info-drill-library .drill-category-block .category-heading .category-anchor{color:var(--color-text-muted);opacity:.6;border-radius:var(--border-radius);transition:opacity var(--speed) ease, color var(--speed) ease;padding:2px 4px;font-size:.75rem;text-decoration:none}.info-drill-library .drill-category-block .category-heading .category-anchor:hover{opacity:1;color:var(--color-primary)}.info-drill-library .drill-category-block .category-desc{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.9rem;line-height:1.45}.info-drill-library .drill-category-block .drill-list{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);margin:0;padding:0;list-style:none;overflow:hidden}.info-drill-library .drill-category-block .drill-item{padding:var(--spacing) var(--spacing);border-bottom:1px solid var(--color-border);transition:background var(--speed) ease;cursor:pointer;scroll-margin-top:5rem}.info-drill-library .drill-category-block .drill-item:last-child{border-bottom:none}.info-drill-library .drill-category-block .drill-item:hover{background:var(--color-surface-alt)}.info-drill-library .drill-category-block .drill-item:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.info-drill-library .drill-category-block .drill-item .drill-item-head{justify-content:space-between;align-items:center;gap:var(--spacing);display:flex}.info-drill-library .drill-category-block .drill-item .drill-name{color:var(--color-text);font-size:.95rem;font-weight:600}.info-drill-library .drill-category-block .drill-item .drill-links{align-items:center;gap:var(--spacing-quarter);display:flex}.info-drill-library .drill-category-block .drill-item .drill-links .drill-anchor-link,.info-drill-library .drill-category-block .drill-item .drill-links .drill-copy-link{color:var(--color-text-muted);opacity:.7;border-radius:var(--border-radius);transition:opacity var(--speed) ease, color var(--speed) ease;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:.8rem;line-height:1}.info-drill-library .drill-category-block .drill-item .drill-links .drill-anchor-link{text-decoration:none}.info-drill-library .drill-category-block .drill-item .drill-links .drill-anchor-link:hover,.info-drill-library .drill-category-block .drill-item .drill-links .drill-copy-link:hover{opacity:1;color:var(--color-primary)}.info-drill-library .drill-category-block .drill-item .drill-links .drill-copy-link:focus-visible,.info-drill-library .drill-category-block .drill-item .drill-links .drill-anchor-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.info-drill-library .drill-category-block .drill-item .drill-desc{margin:var(--spacing-half) 0 0;color:var(--color-text-soft);font-size:.875rem;line-height:1.5}.info-printing .lead{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.info-printing .step-card{align-items:flex-start;gap:var(--spacing);margin-bottom:var(--spacing);padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);display:flex}.info-printing .step-card .step-icon{background:var(--color-primary-soft);width:2.75rem;height:2.75rem;color:var(--color-primary-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.info-printing .step-card .step-body{min-width:0}.info-printing .step-card .step-body h3{margin:0 0 var(--spacing-quarter);color:var(--color-text);font-size:1rem;font-weight:700}.info-printing .step-card .step-body p{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.5}.info-printing .step-card .step-body .step-tip{align-items:flex-start;gap:var(--spacing-quarter);margin-top:var(--spacing-half);color:var(--color-text-soft);font-size:.8rem;display:flex}.info-printing .step-card .step-body .step-tip .tip-icon{color:var(--color-primary);margin-top:2px}.info-printing .note{padding:var(--spacing-half) var(--spacing);color:var(--color-text-muted);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-primary) 18%, var(--color-border));margin:0;font-size:.85rem;line-height:1.45}.info-help .lead{margin:0 0 var(--spacing);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.info-help .help-panel{max-width:520px;padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface)}.info-help .help-form{gap:var(--spacing);flex-direction:column;display:flex}.info-help .help-textarea{min-height:140px}.info-help .send-btn{justify-content:center;align-items:center;gap:var(--spacing-half);width:100%;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);cursor:pointer;transition:background var(--speed) ease, opacity var(--speed) ease;border:none;display:inline-flex}.info-help .send-btn:hover:not(:disabled){background:var(--color-primary-strong)}.info-help .send-btn:disabled{opacity:.5;cursor:default}.info-help .sent-note{align-items:flex-start;gap:var(--spacing-half);margin:0 0 var(--spacing);padding:var(--spacing-half) var(--spacing);color:var(--color-text-soft);border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-success) 10%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-success) 25%, var(--color-border));font-size:.85rem;line-height:1.45;display:flex}.info-help .sent-note .sent-icon{color:var(--color-success);flex-shrink:0;margin-top:2px}.blog-page{min-height:100%;padding:var(--spacing);box-sizing:border-box;max-width:1100px;margin:0 auto}.blog-page .blog-body{gap:var(--spacing);flex-direction:column;display:flex}@media (width>=768px){.blog-page .blog-body{align-items:flex-start;gap:calc(var(--spacing) * 1.5);flex-direction:row}.blog-page .blog-body:not(.has-subnav){flex-direction:column}}.blog-page .blog-body:not(.has-subnav) .blog-panel{width:100%;max-width:800px;margin:0 auto}.blog-page .blog-panel{min-width:0;padding:calc(var(--spacing) * 1.25);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);box-shadow:0 8px 20px var(--color-shadow-ink);flex:1}@media (width<=600px){.blog-page .blog-panel{padding:var(--spacing)}}.blog-page .blog-subnav{flex-shrink:0;width:100%}@media (width>=768px){.blog-page .blog-subnav{width:220px;top:var(--spacing);position:sticky}}.blog-page .blog-subnav nav{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);box-shadow:0 8px 20px var(--color-shadow-ink);flex-direction:column;gap:2px;display:flex}.blog-page .blog-subnav .nav-heading{margin:var(--spacing-half) 0 var(--spacing-quarter);padding:0 var(--spacing);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-size:.7rem;font-weight:700}.blog-page .blog-subnav .nav-link{padding:var(--spacing-half) var(--spacing);border-radius:calc(var(--border-radius) - 2px);color:var(--color-text-soft);transition:background-color var(--speed) ease, color var(--speed) ease;font-size:.85rem;font-weight:600;line-height:1.35;text-decoration:none;display:block}.blog-page .blog-subnav .nav-link:hover{color:var(--color-text);background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.blog-page .blog-subnav .nav-link.active{color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.blog-page .blog-subnav .nav-link.nav-all{border-bottom:1px solid var(--color-border);border-radius:calc(var(--border-radius) - 2px) calc(var(--border-radius) - 2px) 0 0;padding-bottom:calc(var(--spacing-half) + 2px);margin-bottom:2px}.blog-page .blog-missing h1{margin:0 0 var(--spacing-half);font-size:1.5rem}.blog-page .blog-missing p{margin:0 0 var(--spacing);color:var(--color-text-soft)}.blog-page .blog-missing a{color:var(--color-primary-strong);font-weight:600}.blog-page .blog-index h1{margin:0 0 var(--spacing-half);font-size:1.75rem}.blog-page .blog-index .lead{margin:0 0 calc(var(--spacing) * 1.25);color:var(--color-text-soft);font-size:.95rem;line-height:1.5}.blog-page .blog-index .post-list{gap:var(--spacing);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.blog-page .blog-index .post-card{padding:var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block}.blog-page .blog-index .post-card:hover{border-color:color-mix(in srgb, var(--color-primary) 45%, var(--color-border));box-shadow:0 6px 16px var(--color-shadow-ink)}.blog-page .blog-index .post-card .post-date{margin:0 0 var(--spacing-quarter);color:var(--color-text-soft);font-size:.8rem;font-weight:600}.blog-page .blog-index .post-card h2{margin:0 0 var(--spacing-half);color:var(--color-text);font-size:1.15rem;line-height:1.3}.blog-page .blog-index .post-card p{color:var(--color-text-soft);margin:0;font-size:.9rem;line-height:1.45}.blog-page .blog-article{min-width:0}.blog-page .blog-article .blog-article-header{margin-bottom:calc(var(--spacing) * 1.25)}.blog-page .blog-article .blog-article-title-row{justify-content:space-between;align-items:flex-start;gap:var(--spacing);margin-bottom:var(--spacing-half);display:flex}.blog-page .blog-article .blog-article-header h1{min-width:0;color:var(--color-text);flex:1;margin:0;font-size:1.75rem;line-height:1.25}.blog-page .blog-article .blog-article-date{color:var(--color-text-soft);text-align:right;white-space:nowrap;flex-shrink:0;margin:.2rem 0 0;font-size:.85rem;font-weight:600;line-height:1.3}.blog-page .blog-article .blog-article-lead{color:var(--color-text-soft);margin:0;font-size:1.05rem;line-height:1.55}.blog-page .blog-article .blog-article-body{gap:calc(var(--spacing) * 1.15);flex-direction:column;display:flex}.blog-page .blog-article .blog-article-body>:first-child{margin-top:0}.blog-page .blog-article .blog-article-body>:last-child{margin-bottom:0}.blog-page .blog-article .blog-article-body p{color:var(--color-text);margin:0;font-size:.95rem;line-height:1.6}.blog-page .blog-article .blog-article-body h2{margin:calc(var(--spacing) * .25) 0 0;color:var(--color-text);font-size:1.2rem;line-height:1.3}.blog-page .blog-article .blog-article-body h3{margin:calc(var(--spacing) * .15) 0 0;color:var(--color-text);font-size:1.05rem;line-height:1.35}.blog-page .blog-article .blog-article-body ul,.blog-page .blog-article .blog-article-body ol{color:var(--color-text);margin:0;padding-left:1.25rem;font-size:.95rem;line-height:1.55}.blog-page .blog-article .blog-article-body li+li{margin-top:.35rem}.blog-page .blog-article .blog-article-body a{color:var(--color-primary-strong);font-weight:600}.blog-page .blog-article .blog-article-body .blog-intro{gap:var(--spacing);flex-direction:column;display:flex}.blog-page .blog-article .blog-article-body .blog-intro+.blog-section,.blog-page .blog-article .blog-article-body .blog-section+.blog-section,.blog-page .blog-article .blog-article-body .blog-section+.blog-callout,.blog-page .blog-article .blog-article-body .blog-callout+.blog-section{margin-top:calc(var(--spacing) * .35);padding-top:calc(var(--spacing) * 1.25);position:relative}.blog-page .blog-article .blog-article-body .blog-intro+.blog-section:before,.blog-page .blog-article .blog-article-body .blog-section+.blog-section:before,.blog-page .blog-article .blog-article-body .blog-section+.blog-callout:before,.blog-page .blog-article .blog-article-body .blog-callout+.blog-section:before{content:"";background:linear-gradient(to right, transparent 0%, var(--color-border) 18%, var(--color-border) 82%, transparent 100%);height:1px;position:absolute;top:0;left:0;right:0}.blog-page .blog-article .blog-article-body .blog-section{gap:var(--spacing-half);flex-direction:column;display:flex}.blog-page .blog-article .blog-article-body .blog-section h2{align-items:center;gap:var(--spacing-half);margin:0;font-size:1.15rem;line-height:1.3;display:flex}.blog-page .blog-article .blog-article-body .blog-section .blog-section-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:2rem;height:2rem;color:var(--color-primary-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:inline-flex}.blog-page .blog-article .blog-article-body .blog-takeaway{align-items:flex-start;gap:var(--spacing-half);margin:var(--spacing-quarter) 0 0;padding:var(--spacing-half) 0 var(--spacing-half) var(--spacing);border-left:3px solid var(--color-primary);color:var(--color-text);font-size:.92rem;line-height:1.5;display:flex}.blog-page .blog-article .blog-article-body .blog-takeaway .blog-takeaway-icon{color:var(--color-primary-strong);flex-shrink:0;margin-top:.15rem;font-size:.85rem}.blog-page .blog-article .blog-article-body .blog-takeaway strong{font-weight:700}.blog-page .blog-article .blog-article-body .blog-callout{align-items:flex-start;gap:var(--spacing-half);color:var(--color-text);margin:0;padding:0;font-size:.95rem;line-height:1.55;display:flex}.blog-page .blog-article .blog-article-body .blog-callout .blog-callout-icon{color:var(--color-warning-dark);flex-shrink:0;margin-top:.15rem;font-size:1rem}.blog-page .blog-article .blog-article-body .blog-callout .blog-callout-body{min-width:0}.blog-page .blog-article .blog-article-body .blog-callout p{margin:0}.blog-page .blog-article .blog-article-body .blog-callout p+p{margin-top:var(--spacing-half)}.super-page{min-height:100%;padding:var(--spacing);box-sizing:border-box;max-width:1100px;margin:0 auto}.super-page .super-nav{flex-shrink:0;width:100%}@media (width>=768px){.super-page .super-nav{width:220px;top:var(--spacing);position:sticky}}.super-page .super-nav .page-header{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing);display:flex}.super-page .super-nav .page-header h2{font-size:20px;font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}.super-page .super-nav .page-header .super-badge{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning);border-radius:var(--border-radius);font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em;padding:2px 8px}.super-page .super-nav nav{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);flex-direction:column;gap:2px;display:flex}@media (width<=767px){.super-page .super-nav nav{gap:var(--spacing-quarter);flex-flow:wrap}}.super-page .super-nav .nav-link{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border-radius:calc(var(--border-radius) - 2px);color:var(--color-text-soft);transition:background-color var(--speed) ease, color var(--speed) ease;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.super-page .super-nav .nav-link .nav-icon{text-align:center;opacity:.75;flex-shrink:0;width:1.1rem;font-size:.8rem}.super-page .super-nav .nav-link:hover{color:var(--color-text);background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.super-page .super-nav .nav-link.active{color:var(--color-primary-strong);background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.super-page .super-nav .nav-link.active .nav-icon{opacity:1}.super-page .super-body{gap:var(--spacing);flex-direction:column;display:flex}@media (width>=768px){.super-page .super-body{align-items:flex-start;gap:calc(var(--spacing) * 1.5);flex-direction:row}}.super-page .super-content{flex:1;min-width:0}.super-page .content-fade-enter-active,.super-page .content-fade-leave-active{transition:opacity .2s}.super-page .content-fade-enter-from,.super-page .content-fade-leave-to{opacity:0}.super-page .access-denied{padding:calc(var(--spacing) * 3);text-align:center;color:var(--color-text-muted);font-size:15px}.account-type-badge{border-radius:var(--border-radius);font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;flex-shrink:0;padding:2px 8px;display:inline-block}.account-type-badge.account-type-anonymous{background:var(--color-surface-alt);color:var(--color-text-muted)}.account-type-badge.account-type-swimmer{background:var(--color-primary-soft);color:var(--color-primary-strong)}.account-type-badge.account-type-coach{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.account-type-badge.account-type-super{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.super-stats{gap:var(--spacing-half);flex-direction:column;display:flex}.super-stats .loading-state{padding:calc(var(--spacing) * 2);text-align:center;color:var(--color-text-muted);font-size:14px}.super-stats .section-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 4px;font-size:.72rem;font-weight:700}.super-stats .snapshot-header{justify-content:space-between;align-items:center;gap:var(--spacing-half);flex-wrap:wrap;margin-bottom:4px;display:flex}.super-stats .snapshot-grid{gap:var(--spacing-quarter);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (width<=700px){.super-stats .snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.super-stats .stat-card{text-align:center;padding:6px var(--spacing-half);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);flex-direction:column;align-items:center;gap:1px;display:flex}.super-stats .stat-card .stat-value{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:clamp(1.1rem,2.2vw,1.45rem);font-weight:800;line-height:1.1}.super-stats .stat-card .stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.68rem;font-weight:700}.super-stats .stat-card .stat-note{color:var(--color-text-soft);font-size:.65rem;line-height:1.25}.super-stats .stat-card .stat-delta{font-variant-numeric:tabular-nums;color:var(--color-text-muted);white-space:nowrap;font-size:.65rem;font-weight:600}.super-stats .stat-card .stat-delta.up{color:var(--color-success);font-weight:800}.super-stats .stat-card .stat-delta.down{color:var(--color-text-muted);opacity:.75;font-weight:500}.super-stats .deleted-context{gap:var(--spacing-quarter);color:var(--color-text-muted);flex-wrap:wrap;font-size:.72rem;display:inline-flex}.super-stats .deleted-context span{white-space:nowrap}.super-stats .period-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-half);flex-wrap:wrap;margin-bottom:4px;display:flex}.super-stats .period-toolbar .section-title{margin-bottom:0}.super-stats .period-grid{gap:var(--spacing-quarter);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width>=900px){.super-stats .period-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=520px){.super-stats .period-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.super-stats .chart-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-half)}.super-stats .chart-header{justify-content:space-between;align-items:center;gap:var(--spacing-half);flex-wrap:wrap;display:flex}.super-stats .chart-header .section-title{margin-bottom:0}.super-stats .bar-chart{align-items:flex-end;gap:2px;height:72px;margin-top:4px;padding-bottom:2px;display:flex;overflow-x:auto}.super-stats .bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:2px;min-width:18px;height:100%;display:flex}.super-stats .bar-value{color:var(--color-text-soft);white-space:nowrap;min-height:11px;font-size:9px;font-weight:700}.super-stats .bar-fill{background:var(--color-primary);border-radius:3px 3px 0 0;width:100%;max-width:40px;min-height:0;transition:height .3s}.super-stats .bar-fill.bar-empty{background:var(--color-border);min-height:2px}.super-stats .bar-label{color:var(--color-text-muted);font-size:9px;font-weight:600}.super-stats .panels-row{gap:var(--spacing-half);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=700px){.super-stats .panels-row{grid-template-columns:1fr}}.super-stats .panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-half)}.super-stats .health-metrics{gap:var(--spacing-quarter);margin-bottom:var(--spacing-quarter);flex-wrap:wrap;display:flex}.super-stats .health-metrics .health-stat{min-width:72px;padding:4px var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);text-align:center;flex:1}.super-stats .health-metrics .health-stat .health-value{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800;line-height:1.1;display:block}.super-stats .health-metrics .health-stat .health-label{color:var(--color-text-muted);font-size:.65rem;font-weight:600;display:block}.super-stats .topic-list{gap:4px var(--spacing-half);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.super-stats .topic-row{justify-content:space-between;align-items:center;gap:var(--spacing-quarter);font-size:.78rem;display:flex}.super-stats .topic-badge{border-radius:var(--border-radius);font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;display:inline-block}.super-stats .topic-badge.topic-help{background:var(--color-primary-soft);color:var(--color-primary-strong)}.super-stats .topic-badge.topic-feedback{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.super-stats .topic-badge.topic-bug{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.super-stats .topic-badge.topic-ai{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.super-stats .topic-count{font-variant-numeric:tabular-nums;color:var(--color-text);font-weight:700}.super-stats .support-link{color:var(--color-primary-strong);margin-top:4px;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-block}.super-stats .support-link:hover{text-decoration:underline}.super-stats .breakdown-bars{flex-direction:column;gap:4px;display:flex}.super-stats .breakdown-bars .breakdown-subtitle{color:var(--color-text-soft);margin:2px 0 0;font-size:.68rem;font-weight:600}.super-stats .breakdown-bars--spaced{margin-top:var(--spacing-half)}.super-stats .breakdown-row{align-items:center;gap:var(--spacing-quarter);grid-template-columns:64px 1fr 28px;font-size:.75rem;display:grid}.super-stats .breakdown-label{color:var(--color-text-soft);font-weight:600}.super-stats .breakdown-track{background:var(--color-border);border-radius:4px;height:6px;overflow:hidden}.super-stats .breakdown-fill{border-radius:4px;min-width:2px;height:100%}.super-stats .breakdown-pct{text-align:right;font-variant-numeric:tabular-nums;color:var(--color-text);font-weight:700}.super-stats .recent-grid{gap:var(--spacing-half);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=900px){.super-stats .recent-grid{grid-template-columns:1fr}}.super-stats .recent-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-half)}.super-stats .recent-header{justify-content:space-between;align-items:center;gap:var(--spacing-half);margin-bottom:4px;display:flex}.super-stats .recent-header .section-title{margin-bottom:0}.super-stats .recent-header a{color:var(--color-primary-strong);white-space:nowrap;font-size:.72rem;font-weight:600;text-decoration:none}.super-stats .recent-header a:hover{text-decoration:underline}.super-stats .recent-list{flex-direction:column;gap:4px;display:flex}.super-stats .recent-row{border:1px solid var(--color-border);border-radius:calc(var(--border-radius) - 2px);flex-direction:column;gap:2px;padding:4px 6px;font-size:.78rem;display:flex}.super-stats .recent-row .recent-main{justify-content:space-between;align-items:center;gap:var(--spacing-half);display:flex}.super-stats .recent-row .recent-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;text-decoration:none;overflow:hidden}.super-stats .recent-row .recent-title:hover{color:var(--color-primary-strong)}.super-stats .recent-row .recent-preview{color:var(--color-text-soft);text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.super-stats .recent-row .recent-meta{align-items:center;gap:var(--spacing-quarter);color:var(--color-text-muted);flex-wrap:wrap;font-size:.68rem;display:flex}.super-stats .recent-row .saved-badge{border-radius:var(--border-radius);text-transform:uppercase;background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success);padding:1px 6px;font-size:10px;font-weight:700}.super-stats .empty-recent{color:var(--color-text-muted);margin:0;padding:4px 0;font-size:.78rem}.super-accounts .accounts-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.super-accounts .accounts-section .section-toolbar{align-items:center;gap:var(--spacing-half);padding:var(--spacing);border-bottom:1px solid var(--color-border);display:flex}.super-accounts .accounts-section .section-toolbar h3{font-size:15px;font-weight:var(--font-weight-bold);color:var(--color-text);white-space:nowrap;margin:0}.super-accounts .accounts-section .section-toolbar .search-input{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text);flex:1;min-width:0;font-size:13px}.super-accounts .accounts-section .section-toolbar .search-input:focus{border-color:var(--color-primary)}.super-accounts .accounts-section .section-toolbar .account-count{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.super-accounts .accounts-section .accounts-table{border-collapse:collapse;width:100%;font-size:13px}.super-accounts .accounts-section .accounts-table th{text-align:left;padding:var(--spacing-half) var(--spacing);font-size:11px;font-weight:var(--font-weight-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;background:var(--color-surface-alt);border-bottom:1px solid var(--color-border)}.super-accounts .accounts-section .accounts-table td{padding:var(--spacing-half) var(--spacing);border-bottom:1px solid color-mix(in srgb, var(--color-border) 40%, transparent);color:var(--color-text);vertical-align:middle}.super-accounts .accounts-section .accounts-table tr{cursor:pointer;transition:background var(--speed) ease}.super-accounts .accounts-section .accounts-table tr:hover td{background:var(--color-surface-alt)}.super-accounts .accounts-section .accounts-table tr.deleted td{opacity:.5}.super-accounts .accounts-section .accounts-table .name-cell{font-weight:var(--font-weight-bold)}.super-accounts .accounts-section .accounts-table .name-cell .deleted-tag,.super-accounts .accounts-section .accounts-table .name-cell .custom-tag{font-size:10px;font-weight:var(--font-weight-bold);border-radius:var(--border-radius);vertical-align:middle;margin-left:6px;padding:1px 5px;display:inline-block}.super-accounts .accounts-section .accounts-table .name-cell .deleted-tag{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.super-accounts .accounts-section .accounts-table .name-cell .custom-tag{color:var(--color-primary-strong);background:var(--color-primary-soft)}.super-accounts .accounts-section .accounts-table .type-badge{border-radius:var(--border-radius);font-size:11px;font-weight:var(--font-weight-bold);padding:2px 6px;display:inline-block}.super-accounts .accounts-section .accounts-table .type-badge.badge-swimmer{background:var(--color-primary-soft);color:var(--color-primary-strong)}.super-accounts .accounts-section .accounts-table .type-badge.badge-coach{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.super-accounts .accounts-section .accounts-table .type-badge.badge-super{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.super-accounts .accounts-section .empty-state{padding:calc(var(--spacing) * 2);text-align:center;color:var(--color-text-muted);font-size:14px}.super-accounts .loading-state,.super-account-detail .loading-state,.super-account-detail .not-found{padding:calc(var(--spacing) * 3);text-align:center;color:var(--color-text-muted);font-size:14px}.super-account-detail .detail-nav{margin-bottom:var(--spacing)}.super-account-detail .detail-nav .back-link{font-size:13px;font-weight:var(--font-weight-bold);color:var(--color-text-muted);transition:color var(--speed) ease;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.super-account-detail .detail-nav .back-link:hover{color:var(--color-primary-strong)}.super-account-detail .profile-header{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing);margin-bottom:var(--spacing)}.super-account-detail .profile-header .profile-top{justify-content:space-between;align-items:flex-start;gap:var(--spacing);margin-bottom:var(--spacing);flex-wrap:wrap;display:flex}.super-account-detail .profile-header .profile-top .profile-identity{min-width:0}.super-account-detail .profile-header .profile-top .profile-identity h3{margin:0 0 var(--spacing-quarter);font-size:20px;font-weight:var(--font-weight-bold);color:var(--color-text);word-break:break-word}.super-account-detail .profile-header .profile-top .profile-identity .profile-badges,.super-account-detail .profile-header .profile-top .action-bar{gap:var(--spacing-quarter);flex-wrap:wrap;display:flex}.super-account-detail .profile-header .meta-grid{gap:var(--spacing-half);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.super-account-detail .profile-header .meta-grid .meta-item .meta-label{font-size:11px;font-weight:var(--font-weight-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;display:block}.super-account-detail .profile-header .meta-grid .meta-item .meta-value{color:var(--color-text);word-break:break-all;font-size:14px}.super-account-detail .type-badge,.super-account-detail .status-badge{border-radius:var(--border-radius);font-size:11px;font-weight:var(--font-weight-bold);text-transform:capitalize;padding:2px 8px;display:inline-block}.super-account-detail .type-badge.badge-swimmer{background:var(--color-primary-soft);color:var(--color-primary-strong)}.super-account-detail .type-badge.badge-coach{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.super-account-detail .type-badge.badge-super{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.super-account-detail .status-badge.badge-deleted{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.super-account-detail .status-badge.badge-active{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success)}.super-account-detail .stats-grid{gap:var(--spacing-half);margin-bottom:var(--spacing);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.super-account-detail .stats-grid .stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing);text-align:center}.super-account-detail .stats-grid .stat-card .stat-value{font-size:22px;font-weight:var(--font-weight-bold);color:var(--color-text);line-height:1.2;display:block}.super-account-detail .stats-grid .stat-card .stat-label{color:var(--color-text-muted);margin-top:4px;font-size:11px;display:block}.super-account-detail .stats-grid .stat-card.stat-highlight{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border))}.super-account-detail .stats-grid .stat-card.stat-highlight .stat-value{color:var(--color-primary-strong)}.super-account-detail .panels-grid{gap:var(--spacing);margin-bottom:var(--spacing);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}@media (width<=768px){.super-account-detail .panels-grid{grid-template-columns:1fr}}.super-account-detail .panels-grid .panel{flex-direction:column;display:flex}.super-account-detail .panels-grid .form-field.half{width:50%;min-width:10rem;max-width:100%}.super-account-detail .panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.super-account-detail .panel .panel-header{padding:var(--spacing-half) var(--spacing);border-bottom:1px solid var(--color-border);background:var(--color-surface-alt)}.super-account-detail .panel .panel-header h4{font-size:13px;font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}.super-account-detail .panel .panel-body{padding:var(--spacing);flex-direction:column;flex:auto;min-height:0;display:flex}.super-account-detail .settings-panel .settings-fields{gap:var(--spacing);flex-direction:column;display:flex}.super-account-detail .settings-panel .generations-input-row{align-items:center;gap:var(--spacing-half);display:flex}.super-account-detail .settings-panel .generations-input-row .generations-select{flex:0 0 50%;min-width:10rem;max-width:100%}.super-account-detail .settings-panel .generations-input-row .reset-limit-btn{padding:0 var(--spacing-half);white-space:nowrap;transition:min-width var(--speed) ease, padding var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease;flex:none;font-size:12px}.super-account-detail .settings-panel .generations-input-row .reset-limit-btn.confirming{min-width:7.5rem;padding:0 var(--spacing);border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border));color:var(--color-danger)}.super-account-detail .settings-panel .settings-footer{padding-top:var(--spacing);border-top:1px solid var(--color-border);margin-top:auto}.super-account-detail .settings-panel .settings-footer .save-settings-btn{width:100%}.super-account-detail .swims-panel .panel-toolbar{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border-bottom:1px solid var(--color-border);display:flex}.super-account-detail .swims-panel .panel-toolbar .swim-search{min-height:var(--input-height);padding:0 var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text);box-sizing:border-box;flex:1;min-width:0;font-size:13px}.super-account-detail .swims-panel .panel-toolbar .swim-search:focus{border-color:var(--color-primary)}.super-account-detail .swims-panel .panel-toolbar .swim-count{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.super-account-detail .swims-panel .swims-table{border-collapse:collapse;font-size:13px}.super-account-detail .swims-panel .swims-table th{text-align:left;padding:var(--spacing-half) var(--spacing);font-size:11px;font-weight:var(--font-weight-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;background:var(--color-surface-alt);border-bottom:1px solid var(--color-border)}.super-account-detail .swims-panel .swims-table td{padding:var(--spacing-half) var(--spacing);border-bottom:1px solid color-mix(in srgb, var(--color-border) 40%, transparent);color:var(--color-text);vertical-align:middle}.super-account-detail .swims-panel .swims-table tr{transition:background var(--speed) ease}.super-account-detail .swims-panel .swims-table tr:hover td{background:var(--color-surface-alt)}.super-account-detail .swims-panel .swims-table tr.swim-deleted td{opacity:.55}.super-account-detail .swims-panel .swims-table .col-title{min-width:10rem;max-width:20rem}.super-account-detail .swims-panel .swims-table .swim-link{text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-bold);color:var(--color-text);text-decoration:none;display:block;overflow:hidden}.super-account-detail .swims-panel .swims-table .swim-link:hover{color:var(--color-primary-strong)}.super-account-detail .swims-panel .swims-table .col-distance,.super-account-detail .swims-panel .swims-table .col-updated{white-space:nowrap}.super-account-detail .swims-panel .swims-table .swim-badges{flex-wrap:wrap;gap:4px;display:flex}.super-account-detail .swims-panel .swims-table .swim-status{border-radius:var(--border-radius);font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;padding:1px 6px;display:inline-block}.super-account-detail .swims-panel .swims-table .swim-status.status-public{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.super-account-detail .swims-panel .swims-table .swim-status.status-private{background:var(--color-surface-alt);color:var(--color-text-muted)}.super-account-detail .swims-panel .swims-table .swim-status.status-unlisted{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.super-account-detail .swims-panel .swims-table .swim-status.status-deleted{background:color-mix(in srgb, var(--color-danger) 15%, transparent);color:var(--color-danger)}.super-account-detail .swims-panel .swims-table .swim-status.status-generated{background:color-mix(in srgb, var(--color-primary) 15%, transparent);color:var(--color-primary-strong)}.super-account-detail .swims-panel .empty-swims{padding:calc(var(--spacing) * 2);text-align:center;color:var(--color-text-muted);font-size:14px}.super-account-detail .swims-panel .table-scroll>.swims-table{width:max-content;min-width:100%;max-width:none}.super-support .support-toolbar{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing);display:flex}.super-support .support-toolbar h3{font-size:15px;font-weight:var(--font-weight-bold);color:var(--color-text);white-space:nowrap;margin:0}.super-support .support-toolbar .search-input{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text);flex:1;min-width:0;font-size:13px}.super-support .support-toolbar .search-input:focus{border-color:var(--color-primary)}.super-support .support-toolbar .ticket-count{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.super-support .ticket-list{gap:var(--spacing-half);flex-direction:column;display:flex}.super-support .ticket-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:border-color var(--speed) ease;overflow:hidden}.super-support .ticket-card:hover{border-color:color-mix(in srgb, var(--color-border) 70%, var(--color-primary))}.super-support .ticket-card .ticket-header{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.super-support .ticket-card .ticket-header .topic-badge{border-radius:var(--border-radius);font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;flex-shrink:0;padding:2px 8px}.super-support .ticket-card .ticket-header .topic-badge.topic-help{background:var(--color-primary-soft);color:var(--color-primary-strong)}.super-support .ticket-card .ticket-header .topic-badge.topic-feedback{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.super-support .ticket-card .ticket-header .topic-badge.topic-bug{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.super-support .ticket-card .ticket-header .topic-badge.topic-ai{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary)}.super-support .ticket-card .ticket-header .ticket-preview{min-width:0;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.super-support .ticket-card .ticket-header .ticket-meta{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;font-size:11px}.super-support .ticket-card .ticket-header .expand-icon{color:var(--color-text-muted);flex-shrink:0;font-size:11px;transition:transform .2s}.super-support .ticket-card .ticket-header .expand-icon.open{transform:rotate(180deg)}.super-support .ticket-card .ticket-body{padding:0 var(--spacing) var(--spacing);border-top:1px solid var(--color-border)}.super-support .ticket-card .ticket-body .ticket-message{margin:var(--spacing-half) 0 0;color:var(--color-text);white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.6}.super-support .ticket-card .ticket-body .ticket-detail-row{gap:var(--spacing);margin-top:var(--spacing-half);color:var(--color-text-muted);flex-wrap:wrap;font-size:12px;display:flex}.super-support .ticket-card .ticket-body .ticket-detail-row .swim-link{color:var(--color-primary);text-decoration:none}.super-support .ticket-card .ticket-body .ticket-detail-row .swim-link:hover{text-decoration:underline}.super-support .ticket-card .ticket-body .ticket-detail-row .detail-label{font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.super-support .empty-state,.super-support .loading-state{padding:calc(var(--spacing) * 3);text-align:center;color:var(--color-text-muted);font-size:14px}.super-generations .generations-toolbar{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing);display:flex}.super-generations .generations-toolbar h3{font-size:15px;font-weight:var(--font-weight-bold);color:var(--color-text);white-space:nowrap;margin:0}.super-generations .generations-toolbar .search-input{padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text);flex:1;min-width:0;font-size:13px}.super-generations .generations-toolbar .search-input:focus{border-color:var(--color-primary)}.super-generations .generations-toolbar .generation-count{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.super-generations .generation-list{gap:var(--spacing-half);flex-direction:column;display:flex}.super-generations .generation-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:border-color var(--speed) ease;overflow:hidden}.super-generations .generation-card:hover{border-color:color-mix(in srgb, var(--color-border) 70%, var(--color-primary))}.super-generations .generation-card .generation-header{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.super-generations .generation-card .generation-header .status-badge{border-radius:var(--border-radius);font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;flex-shrink:0;padding:2px 8px}.super-generations .generation-card .generation-header .status-badge.saved{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.super-generations .generation-card .generation-header .status-badge.unsaved{background:var(--color-primary-soft);color:var(--color-primary-strong)}.super-generations .generation-card .generation-header .generation-preview{flex:1;min-width:0}.super-generations .generation-card .generation-header .generation-preview .generation-title{font-size:13px;font-weight:var(--font-weight-bold);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.super-generations .generation-card .generation-header .generation-meta{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;font-size:11px}.super-generations .generation-card .generation-header .expand-icon{color:var(--color-text-muted);flex-shrink:0;font-size:11px;transition:transform .2s}.super-generations .generation-card .generation-header .expand-icon.open{transform:rotate(180deg)}.super-generations .generation-card .generation-body{padding:0 var(--spacing) var(--spacing);border-top:1px solid var(--color-border)}.super-generations .generation-card .generation-body .detail-block{margin-top:var(--spacing-half)}.super-generations .generation-card .generation-body .detail-block.prompt-block .prompt-header{justify-content:space-between;align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing-quarter);display:flex}.super-generations .generation-card .generation-body .detail-block.prompt-block .prompt-header .detail-label{margin-bottom:0}.super-generations .generation-card .generation-body .detail-block.prompt-block .prompt-header .preview-swim-btn{height:28px;min-height:28px;padding:0 var(--spacing-half);flex-shrink:0;font-size:12px}.super-generations .generation-card .generation-body .detail-block.prompt-block .prompt-meta{gap:var(--spacing);margin-top:var(--spacing-half);color:var(--color-text-muted);flex-wrap:wrap;font-size:12px;display:flex}.super-generations .generation-card .generation-body .detail-block .detail-label{font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:var(--spacing-quarter);display:block}.super-generations .generation-card .generation-body .detail-block .detail-text{color:var(--color-text);white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.6}.super-generations .generation-card .generation-body .detail-loading{margin-top:var(--spacing-half);color:var(--color-text-muted);font-size:13px}.super-generations .empty-state,.super-generations .loading-state{padding:calc(var(--spacing) * 3);text-align:center;color:var(--color-text-muted);font-size:14px}.my-results[data-v-25e941ff]{gap:var(--spacing);flex-direction:column;display:flex}.my-results .page-head[data-v-25e941ff],.my-results .page-filters[data-v-25e941ff]{margin-bottom:0}.section-title[data-v-25e941ff]{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--spacing-half);font-size:13px;font-weight:700}.sample-banner[data-v-25e941ff]{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-warning) 40%, var(--color-border));border-radius:var(--border-radius);color:var(--color-text);font-size:13px;font-weight:600;display:flex}.sample-banner svg[data-v-25e941ff]{color:color-mix(in srgb, var(--color-warning) 80%, var(--color-text));flex-shrink:0}.range-controls[data-v-25e941ff]{align-items:center;gap:var(--spacing-half);flex-wrap:wrap;display:flex}@media (width<=600px){.range-controls[data-v-25e941ff]{flex-direction:column;align-items:stretch}}.range-nav[data-v-25e941ff]{align-items:center;gap:var(--spacing-quarter);margin-left:auto;display:flex}@media (width<=600px){.range-nav[data-v-25e941ff]{justify-content:center;margin-left:0}}.range-nav .nav-btn[data-v-25e941ff]{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);width:34px;height:34px;color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;font-size:14px;transition:background .15s;display:flex}.range-nav .nav-btn[data-v-25e941ff]:hover{background:var(--color-surface-alt)}.range-nav .nav-btn[data-v-25e941ff]:disabled{opacity:.4;cursor:not-allowed}.range-nav .range-label[data-v-25e941ff]{color:var(--color-text);text-align:center;white-space:nowrap;min-width:140px;font-size:14px;font-weight:700}.range-nav .today-btn[data-v-25e941ff]{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-primary-strong);cursor:pointer;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:700;transition:background .15s}.range-nav .today-btn[data-v-25e941ff]:hover{background:var(--color-surface-alt)}.range-label-static[data-v-25e941ff]{color:var(--color-text);white-space:nowrap;margin-left:auto;font-size:14px;font-weight:700}@media (width<=600px){.range-label-static[data-v-25e941ff]{text-align:center;width:100%;margin-left:0}}.custom-range[data-v-25e941ff]{align-items:flex-end;gap:var(--spacing);width:100%;padding:var(--spacing-half);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);flex-wrap:wrap;display:flex}.custom-range label[data-v-25e941ff]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:4px;font-size:12px;font-weight:700;display:flex}.custom-range input[type=date][data-v-25e941ff]{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text);min-width:150px;padding:8px 10px;font-family:inherit;font-size:14px;font-weight:600}.achievements-section[data-v-25e941ff]{background:linear-gradient(135deg, color-mix(in srgb, var(--color-warning) 9%, var(--color-surface)) 0%, var(--color-surface) 65%);border:1px solid color-mix(in srgb, var(--color-warning) 25%, var(--color-border));border-radius:var(--border-radius);padding:var(--spacing)}.medal-cards[data-v-25e941ff]{gap:var(--spacing-half);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.medal-card[data-v-25e941ff]{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);background:color-mix(in srgb, var(--color-bg) 55%, transparent);border:1px solid color-mix(in srgb, var(--color-border) 80%, transparent);border-radius:var(--border-radius);display:flex}.medal-card.pb[data-v-25e941ff]{border-color:color-mix(in srgb, var(--color-warning) 55%, var(--color-border));background:color-mix(in srgb, var(--color-warning) 8%, var(--color-surface))}.medal-card .medal-icon[data-v-25e941ff]{background:color-mix(in srgb, var(--color-warning) 18%, var(--color-surface));width:38px;height:38px;color:color-mix(in srgb, var(--color-warning) 80%, var(--color-text));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;display:flex}.medal-card .medal-body[data-v-25e941ff]{min-width:0}.medal-card .medal-value[data-v-25e941ff]{color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;font-size:1.05rem;font-weight:800;line-height:1.2;display:flex}.medal-card .pb-tag[data-v-25e941ff]{background:var(--color-warning);color:var(--btn-color);letter-spacing:.06em;text-transform:uppercase;border-radius:9px;padding:1px 7px;font-size:9px;font-weight:800}.medal-card .medal-label[data-v-25e941ff]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:700}.medal-card .medal-note[data-v-25e941ff]{color:var(--color-text-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;line-height:1.35;overflow:hidden}.stat-grid[data-v-25e941ff]{gap:var(--spacing-half);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=700px){.stat-grid[data-v-25e941ff]{grid-template-columns:1fr}}.stat-card[data-v-25e941ff]{text-align:center;padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);flex-direction:column;align-items:center;gap:2px;display:flex}.stat-card .stat-value[data-v-25e941ff]{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,3.5vw,2rem);font-weight:800;line-height:1.15}.stat-card .stat-label[data-v-25e941ff]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700}.stat-card .stat-delta[data-v-25e941ff]{font-variant-numeric:tabular-nums;color:var(--color-text-muted);font-size:.78rem;font-weight:600}.stat-card .stat-delta.up[data-v-25e941ff]{color:var(--color-success);font-weight:800}.stat-card .stat-delta.down[data-v-25e941ff]{color:var(--color-text-muted);opacity:.75;font-weight:500}.stat-card .stat-delta .delta-note[data-v-25e941ff]{color:var(--color-text-muted);opacity:.9;font-weight:500}.secondary-stats[data-v-25e941ff]{gap:var(--spacing-half);flex-wrap:wrap;display:flex}.secondary-stat[data-v-25e941ff]{align-items:baseline;gap:var(--spacing-quarter);padding:6px var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:.85rem;display:inline-flex}.secondary-stat .secondary-value[data-v-25e941ff]{color:var(--color-text);font-variant-numeric:tabular-nums;font-weight:800}.secondary-stat .secondary-label[data-v-25e941ff]{color:var(--color-text-muted);font-weight:600}.secondary-stat .secondary-delta[data-v-25e941ff]{font-variant-numeric:tabular-nums;color:var(--color-text-muted);font-size:.75rem;font-weight:600}.secondary-stat .secondary-delta.up[data-v-25e941ff]{color:var(--color-success);font-weight:800}.secondary-stat .secondary-delta.down[data-v-25e941ff]{color:var(--color-text-muted);opacity:.75;font-weight:500}.chart-section[data-v-25e941ff]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing)}.chart-header[data-v-25e941ff]{justify-content:space-between;align-items:center;gap:var(--spacing-half);flex-wrap:wrap;display:flex}.chart-header .section-title[data-v-25e941ff]{margin-bottom:0}.bar-chart[data-v-25e941ff]{height:92px;margin-top:var(--spacing-half);align-items:flex-end;gap:3px;padding-bottom:2px;display:flex;overflow-x:auto}.bar-col[data-v-25e941ff]{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:22px;height:100%;display:flex}.bar-value[data-v-25e941ff]{color:var(--color-text-soft);white-space:nowrap;min-height:14px;font-size:10px;font-weight:700}.bar-fill[data-v-25e941ff]{background:var(--color-primary);border-radius:3px 3px 0 0;width:100%;max-width:40px;min-height:0;transition:height .3s}.bar-fill.bar-empty[data-v-25e941ff]{background:var(--color-border);min-height:2px}.bar-label[data-v-25e941ff]{color:var(--color-text-muted);font-size:10px;font-weight:600}.feedback-panel[data-v-25e941ff]{gap:var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing);grid-template-columns:minmax(180px,1fr) 2fr;display:grid}@media (width<=700px){.feedback-panel[data-v-25e941ff]{grid-template-columns:1fr}}.rating-summary[data-v-25e941ff]{text-align:center;border-right:1px solid var(--color-border);padding-right:var(--spacing);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}@media (width<=700px){.rating-summary[data-v-25e941ff]{border-right:none;border-bottom:1px solid var(--color-border);padding-right:0;padding-bottom:var(--spacing-half)}}.rating-summary .section-title[data-v-25e941ff]{margin-bottom:0}.rating-summary .rating-value[data-v-25e941ff]{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:2.35rem;font-weight:800;line-height:1.1}.rating-summary .rating-stars[data-v-25e941ff]{gap:2px;font-size:14px;display:flex}.rating-summary .rating-stars .star[data-v-25e941ff]{color:var(--color-border)}.rating-summary .rating-stars .star.filled[data-v-25e941ff]{color:var(--color-warning)}.rating-summary .rating-note[data-v-25e941ff]{color:var(--color-text-muted);font-size:.78rem;font-weight:600}.breakdown-bars[data-v-25e941ff]{flex-direction:column;justify-content:center;gap:6px;display:flex}.breakdown-row[data-v-25e941ff]{align-items:center;gap:var(--spacing-half);display:flex}.breakdown-label[data-v-25e941ff]{width:90px;color:var(--color-text-soft);text-align:right;flex-shrink:0;font-size:12px;font-weight:600}.breakdown-track[data-v-25e941ff]{background:var(--color-bg);border-radius:7px;flex:1;height:14px;overflow:hidden}.breakdown-fill[data-v-25e941ff]{border-radius:7px;height:100%;transition:width .4s}.breakdown-pct[data-v-25e941ff]{width:36px;color:var(--color-text-muted);text-align:left;flex-shrink:0;font-size:11px;font-weight:700}.results-section[data-v-25e941ff]{gap:var(--spacing-half);flex-direction:column;display:flex}.log-group[data-v-25e941ff]{gap:var(--spacing-quarter);flex-direction:column;display:flex}.log-group-header[data-v-25e941ff]{align-items:center;gap:var(--spacing-half);margin-top:var(--spacing-half);color:var(--color-text-soft);letter-spacing:.02em;font-weight:700;display:flex}.log-group-header[data-v-25e941ff]:after{content:"";background:var(--color-border);flex:1;height:1px}.log-group-header--week[data-v-25e941ff]{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:12px}.log-group-header--month[data-v-25e941ff]{color:var(--color-text);margin-top:var(--spacing);font-size:15px}.result-card[data-v-25e941ff]{align-items:center;gap:var(--spacing);padding:var(--spacing-half) var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);display:flex}.result-actions[data-v-25e941ff]{flex-shrink:0;align-items:center;gap:0;display:flex}.result-action[data-v-25e941ff]{border-radius:var(--border-radius);width:24px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;transition:color .15s,background .15s;display:flex}.result-action--edit[data-v-25e941ff]:hover{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.result-action--delete[data-v-25e941ff]:hover{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.result-action--confirm[data-v-25e941ff]{color:var(--btn-color);background:var(--color-danger)}.result-action--confirm[data-v-25e941ff]:hover{background:var(--color-danger-hover);color:var(--btn-color)}.result-info[data-v-25e941ff]{flex:1;min-width:0}.result-info .result-title[data-v-25e941ff]{max-width:100%;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;font-size:14px;font-weight:700;text-decoration:none;transition:color .15s;display:inline-block;overflow:hidden}.result-info .result-title[data-v-25e941ff]:hover{color:var(--color-primary)}.result-info .result-meta[data-v-25e941ff]{align-items:center;gap:var(--spacing-half);color:var(--color-text-muted);flex-wrap:wrap;margin-top:2px;font-size:12px;display:flex}.result-info .meta-sep[data-v-25e941ff]{color:var(--color-border)}.result-info .result-note[data-v-25e941ff]{color:var(--color-text-soft);margin-top:3px;font-size:12px;font-style:italic;line-height:1.4}.result-right[data-v-25e941ff]{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.result-difficulty[data-v-25e941ff]{background:var(--color-primary-soft);color:var(--color-primary-strong);border-radius:10px;padding:2px 8px;font-size:11px;font-weight:700}.result-stars[data-v-25e941ff]{gap:1px;font-size:11px;display:flex}.result-stars .star[data-v-25e941ff]{color:var(--color-border)}.result-stars .star.filled[data-v-25e941ff]{color:var(--color-warning)}.loading-state[data-v-25e941ff]{font-size:14px}.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-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}.settings{box-sizing:border-box;width:100%}.settings .sections{gap:var(--spacing);display:grid}.settings .section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing)}.settings .section .section-header{align-items:center;gap:var(--spacing-half);margin-bottom:var(--spacing);display:flex}.settings .section .section-header .section-icon{border-radius:var(--border-radius);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;display:flex}.settings .section .section-header h3{font-size:15px;font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}.settings .section .field{gap:var(--spacing-quarter);margin-bottom:var(--spacing);flex-direction:column;display:flex}.settings .section .field:last-child{margin-bottom:0}.settings .section .field label{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft)}.settings .section .field input,.settings .section .field textarea{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-half);min-height:var(--input-height);box-sizing:border-box;font:inherit;color:var(--color-text)}.settings .section .field input:focus,.settings .section .field textarea:focus{border-color:var(--color-primary);background-size:0}.settings .section .field textarea{resize:vertical;min-height:88px;line-height:1.45}.settings .section .field-row{gap:var(--spacing-half);grid-template-columns:1fr 1fr;display:grid}.settings .section .section-footer{align-items:center;gap:var(--spacing-half);margin-top:var(--spacing);display:flex}.settings .section .save-btn{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);cursor:pointer;transition:background var(--speed) ease, opacity var(--speed) ease;border:none;align-items:center;gap:6px;display:inline-flex}.settings .section .save-btn:hover:not(:disabled){background:var(--color-primary-strong)}.settings .section .save-btn:disabled{opacity:.5;cursor:default}.settings .section .field-hint{color:var(--color-text-muted);font-size:12px;line-height:1.4}.settings .section .field-error{color:var(--color-danger);font-size:13px;line-height:1.4}.settings .section.profile .section-icon{background:var(--color-primary-soft);color:var(--color-primary-strong)}.settings .section.profile .profile-link-row{gap:var(--spacing-half);align-items:stretch;display:flex}.settings .section.profile .profile-link-row input{min-width:0;color:var(--color-text-muted);flex:1;font-size:13px}.settings .section.profile .copy-link-btn{padding:var(--spacing-half) var(--spacing);background:var(--color-surface-alt);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:13px;font-weight:var(--font-weight-bold);cursor:pointer;white-space:nowrap;transition:background var(--speed) ease, border-color var(--speed) ease;align-items:center;gap:6px;display:inline-flex}.settings .section.profile .copy-link-btn:hover{background:var(--color-bg-soft);border-color:var(--color-primary-soft)}.settings .section.profile .type-badge{padding:var(--spacing-quarter) var(--spacing-half);background:var(--color-primary-soft);color:var(--color-primary-strong);border-radius:var(--border-radius);font-size:13px;font-weight:var(--font-weight-bold);width:fit-content;display:inline-block}.settings .section.profile .type-badge--super{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.settings .section.profile .type-toggle{gap:var(--spacing-quarter);display:inline-flex}.settings .section.profile .type-toggle button{padding:var(--spacing-quarter) var(--spacing);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text-muted);font-size:13px;font-weight:var(--font-weight-bold);cursor:pointer;height:auto;min-height:auto;transition:background var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease;background:0 0;flex:1}.settings .section.profile .type-toggle button:hover{border-color:var(--color-primary-soft);color:var(--color-text-soft)}.settings .section.profile .type-toggle button.active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong)}.settings .section.profile .focus-pills{flex-wrap:wrap;gap:6px;display:flex}.settings .section.profile .focus-pill{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text-soft);font-size:13px;font-weight:var(--font-weight-bold);cursor:pointer;height:auto;min-height:auto;transition:background var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease;padding:6px 12px}.settings .section.profile .focus-pill:hover{border-color:var(--color-primary-soft);color:var(--color-text)}.settings .section.profile .focus-pill.active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong)}.settings .section.password .section-icon{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.settings .section.password .password-hints{gap:var(--spacing-quarter);margin-top:var(--spacing-half);display:grid}.settings .section.google .section-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary-strong)}.settings .section.google .field-hint{margin:0 0 var(--spacing)}.settings .section.google .google-connected{align-items:flex-start;gap:var(--spacing-half);color:var(--color-text-soft);margin:0;font-size:13px;line-height:1.4;display:flex}.settings .section.google .google-connected .google-connected-icon{color:var(--color-success);flex-shrink:0;margin-top:2px}.settings .section.teams .section-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary-strong)}.settings .section.teams .teams-empty,.settings .section.teams .teams-loading{color:var(--color-text-muted);margin:0;font-size:13px}.settings .section.teams .teams-list{gap:var(--spacing-half);flex-direction:column;display:flex}.settings .section.teams .team-row{justify-content:space-between;align-items:center;gap:var(--spacing);padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);display:flex}.settings .section.teams .team-info{min-width:0}.settings .section.teams .team-info .team-name{font-size:14px;font-weight:var(--font-weight-bold);color:var(--color-text);display:block}.settings .section.teams .team-info .team-meta{color:var(--color-text-muted);margin-top:2px;font-size:12px;display:block}.settings .section.teams .leave-btn{padding:var(--spacing-quarter) var(--spacing-half);color:var(--color-danger);border:1px solid color-mix(in srgb, var(--color-danger) 30%, transparent);border-radius:var(--border-radius);font-size:12px;font-weight:var(--font-weight-bold);cursor:pointer;white-space:nowrap;background:0 0;flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.settings .section.teams .leave-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger) 8%, transparent)}.settings .section.teams .leave-btn:disabled{opacity:.5;cursor:default}.settings .section.teams .leave-confirm{align-items:center;gap:var(--spacing-half);color:var(--color-text-soft);flex-shrink:0;font-size:12px;display:flex}.settings .section.teams .leave-confirm button{padding:var(--spacing-quarter) var(--spacing-half);border-radius:var(--border-radius);font-size:12px;font-weight:var(--font-weight-bold);cursor:pointer}.settings .section.teams .leave-confirm .leave-yes{background:var(--color-danger);color:var(--btn-color);border:none}.settings .section.teams .leave-confirm .leave-no{color:var(--color-text-muted);border:1px solid var(--color-border);background:0 0}.settings .section.danger{border-color:color-mix(in srgb, var(--color-danger) 25%, transparent)}.settings .section.danger .section-icon{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.settings .section.danger .danger-body{gap:var(--spacing);flex-direction:column;display:flex}.settings .section.danger .danger-row{justify-content:space-between;align-items:center;gap:var(--spacing);display:flex}.settings .section.danger .danger-row .danger-info .danger-label{font-size:14px;font-weight:var(--font-weight-bold);color:var(--color-text);line-height:1.3;display:block}.settings .section.danger .danger-row .danger-info .danger-desc{color:var(--color-text-muted);margin-top:2px;font-size:12px;line-height:1.4;display:block}.settings .section.danger .danger-btn{padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);font-size:13px;font-weight:var(--font-weight-bold);cursor:pointer;white-space:nowrap;transition:background var(--speed) ease, border-color var(--speed) ease;flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.settings .section.danger .logout-btn{background:var(--color-surface-alt);color:var(--color-text);border:1px solid var(--color-border)}.settings .section.danger .logout-btn:hover{background:var(--color-bg-soft);border-color:var(--color-text-muted)}.settings .section.danger .delete-btn{color:var(--color-danger);border:1px solid color-mix(in srgb, var(--color-danger) 30%, transparent);background:0 0}.settings .section.danger .delete-btn:hover{background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-color:var(--color-danger)}.settings .section.danger .confirm-delete{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half);background:color-mix(in srgb, var(--color-danger) 6%, transparent);border-radius:var(--border-radius);color:var(--color-text-soft);font-size:13px;animation:.15s confirm-slide-in;display:flex}.settings .section.danger .confirm-delete .confirm-yes{padding:var(--spacing-quarter) var(--spacing-half);background:var(--color-danger);color:var(--btn-color);border-radius:var(--border-radius);font-size:12px;font-weight:var(--font-weight-bold);cursor:pointer;transition:background var(--speed) ease;border:none;margin-left:auto}.settings .section.danger .confirm-delete .confirm-yes:hover{background:color-mix(in srgb, var(--color-danger) 85%, black)}.settings .section.danger .confirm-delete .confirm-yes:disabled{opacity:.5;cursor:default}.settings .section.danger .confirm-delete .confirm-no{padding:var(--spacing-quarter) var(--spacing-half);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;transition:border-color var(--speed) ease;background:0 0;font-size:12px}.settings .section.danger .confirm-delete .confirm-no:hover{border-color:var(--color-text-muted)}.settings .meta-row{align-items:center;gap:var(--spacing-half);color:var(--color-text-muted);padding-top:var(--spacing-half);justify-content:center;font-size:13px;display:flex}.team-tab .group-list{gap:var(--spacing);flex-direction:column;display:flex}.team-tab .group-card{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);transition:border-color var(--speed) ease}.team-tab .group-card.group-drag-ghost{opacity:.4}.team-tab .group-card.group-drag-chosen{box-shadow:0 4px 16px var(--color-shadow-black-lg)}.team-tab .group-header{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing);border-bottom:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--border-radius) var(--border-radius) 0 0;display:flex}.team-tab .group-header .group-drag-handle{cursor:grab;color:var(--color-text-muted);flex-shrink:0;padding:4px;font-size:14px}.team-tab .group-header .group-drag-handle:active{cursor:grabbing}.team-tab .group-header .group-title{font-weight:var(--font-weight-bold);color:var(--color-text);flex:1;min-width:0;font-size:15px}.team-tab .group-header .group-title-default{color:var(--color-text-muted);font-style:italic}.team-tab .group-header .group-settings-btn{border-radius:var(--border-radius);cursor:pointer;width:28px;height:28px;color:var(--color-text-muted);transition:color var(--speed) ease, background var(--speed) ease, border-color var(--speed) ease;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.team-tab .group-header .group-settings-btn:hover{color:var(--color-primary);background:var(--color-primary-soft)}.team-tab .group-assign-btn{height:28px;padding:0 var(--spacing-half);border-radius:var(--border-radius);border:1px solid var(--color-primary-soft);background:var(--color-primary-soft);color:var(--color-primary-strong);font-size:12px;font-weight:var(--font-weight-bold);cursor:pointer;transition:color var(--speed) ease, background var(--speed) ease, border-color var(--speed) ease;flex-shrink:0;justify-content:center;align-items:center;gap:5px;font-family:inherit;display:inline-flex}.team-tab .group-assign-btn:hover{color:var(--btn-color);background:var(--color-primary);border-color:var(--color-primary)}@media (width<=768px){.team-tab .group-assign-btn .group-assign-label{display:none}}.team-tab .group-body{padding:var(--spacing-half);min-height:32px}.team-tab .member-list{gap:var(--spacing-quarter);flex-direction:column;min-height:8px;margin:0;padding:0;list-style:none;display:flex}.team-tab .member-card{align-items:center;gap:var(--spacing-half);padding:var(--spacing-half) var(--spacing-half);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:border-color var(--speed) ease;grid-template-columns:auto 1fr auto;display:grid}@media (width<=768px){.team-tab .member-card{grid-template-columns:1fr auto}}.team-tab .member-card:hover{border-color:var(--color-primary-soft)}.team-tab .member-card.member-drag-ghost{opacity:.4}.team-tab .member-card.member-drag-chosen{box-shadow:0 2px 8px var(--color-shadow-black-md)}.team-tab .member-card .member-handle{cursor:grab;color:var(--color-text-muted);padding:4px;font-size:12px}.team-tab .member-card .member-handle:active{cursor:grabbing}.team-tab .member-card .info{min-width:0}.team-tab .member-card .info .name{font-weight:var(--font-weight-bold);color:var(--color-text);align-items:center;gap:var(--spacing-quarter);flex-wrap:wrap;font-size:14px;display:flex}.team-tab .member-card .info .link-chip{font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;border-radius:10px;align-items:center;gap:3px;padding:1px 6px;display:inline-flex}.team-tab .member-card .info .link-chip--linked{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.team-tab .member-card .info .link-chip--invited{background:var(--color-primary-soft);color:var(--color-primary-strong)}.team-tab .member-card .info .link-chip--declined{background:var(--color-surface-alt);color:var(--color-text-muted)}.team-tab .member-card .info .link-chip--roster{background:var(--color-surface-alt);color:var(--color-text-soft)}.team-tab .member-card .info .email{color:var(--color-text-muted);margin-top:1px;font-size:12px}.team-tab .member-card .actions{align-items:center;gap:var(--spacing-quarter);flex-shrink:0;display:flex}.team-tab .member-card .invite-btn,.team-tab .member-card .member-settings-btn{border-radius:var(--border-radius);cursor:pointer;width:28px;height:28px;transition:color var(--speed) ease, background var(--speed) ease, border-color var(--speed) ease;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.team-tab .member-card .member-settings-btn{color:var(--color-text-muted)}.team-tab .member-card .member-settings-btn:hover{color:var(--color-primary);background:var(--color-primary-soft)}.team-tab .member-card .invite-btn{width:auto;padding:0 var(--spacing-half);color:var(--color-primary-strong);font-size:12px;font-weight:var(--font-weight-bold);border-color:var(--color-primary-soft);background:var(--color-primary-soft);gap:4px}.team-tab .member-card .invite-btn:hover:not(:disabled){color:var(--btn-color);background:var(--color-primary);border-color:var(--color-primary)}.team-tab .member-card .invite-btn:disabled{opacity:.45;cursor:not-allowed}.team-tab .member-card .linked-status{padding:0 var(--spacing-half);height:28px;font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-success);background:color-mix(in srgb, var(--color-success) 14%, transparent);border-radius:var(--border-radius);text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:4px;display:inline-flex}.team-tab .group-empty{text-align:center;padding:var(--spacing) var(--spacing-half);color:var(--color-text-muted);font-size:13px}.team-tab .loading-state{font-size:14px;animation:1.2s infinite pulse-fade}.team-tab .not-coach-hint{text-align:center;padding:calc(var(--spacing) * 2) var(--spacing);color:var(--color-text-muted);font-size:14px;line-height:1.5}@media (width<=768px){.team-tab .desktop-team-action{display:none!important}}.group-modal-form{gap:var(--spacing);flex-direction:column;display:flex}.group-modal-form .group-modal-hint{color:var(--color-text-soft);margin:0;font-size:13px;line-height:1.5}.group-modal-form .form-actions{gap:var(--spacing-half);margin-top:var(--spacing-quarter);flex-wrap:wrap;justify-content:flex-end;display:flex}.group-modal-form .form-actions .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;background:0 0;font-size:14px}.group-modal-form .form-actions .save-btn{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);cursor:pointer;transition:background var(--speed) ease;border:none}.group-modal-form .form-actions .save-btn:hover{background:var(--color-primary-strong)}.group-modal-form .form-actions .delete-btn{padding:var(--spacing-half) var(--spacing);color:var(--color-danger);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;font-weight:var(--font-weight-bold);cursor:pointer;transition:background var(--speed) ease, color var(--speed) ease, border-color var(--speed) ease;background:0 0}.group-modal-form .form-actions .delete-btn:hover{background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-color:var(--color-danger)}.group-modal-form .form-actions .delete-btn.delete-btn--confirm{background:var(--color-danger);color:var(--btn-color);border-color:var(--color-danger)}.member-modal-form{gap:var(--spacing);flex-direction:column;display:flex}.member-modal-form .member-modal-readonly{gap:var(--spacing-half);padding:var(--spacing-half);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt);flex-direction:column;display:flex}.member-modal-form .member-modal-readonly .readonly-field{flex-direction:column;gap:2px;display:flex}.member-modal-form .member-modal-readonly .readonly-label{font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.member-modal-form .member-modal-readonly .readonly-value{color:var(--color-text);font-size:14px}.member-modal-form .member-modal-hint{color:var(--color-text-soft);margin:0;font-size:13px;line-height:1.5}.member-modal-form .form-actions{gap:var(--spacing-half);margin-top:var(--spacing-quarter);flex-wrap:wrap;justify-content:flex-end;display:flex}.member-modal-form .form-actions .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;background:0 0;font-size:14px}.member-modal-form .form-actions .save-btn{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);cursor:pointer;transition:background var(--speed) ease;border:none}.member-modal-form .form-actions .save-btn:hover:not(:disabled){background:var(--color-primary-strong)}.member-modal-form .form-actions .save-btn:disabled{opacity:.5;cursor:default}.member-modal-form .form-actions .delete-btn{padding:var(--spacing-half) var(--spacing);color:var(--color-danger);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;font-weight:var(--font-weight-bold);cursor:pointer;transition:background var(--speed) ease, color var(--speed) ease, border-color var(--speed) ease;background:0 0}.member-modal-form .form-actions .delete-btn:hover{background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-color:var(--color-danger)}.member-modal-form .form-actions .delete-btn.delete-btn--confirm{background:var(--color-danger);color:var(--btn-color);border-color:var(--color-danger)}.add-member-form{gap:var(--spacing);flex-direction:column;display:flex}.add-member-form .add-member-or{align-items:center;gap:var(--spacing-half);color:var(--color-text-muted);font-size:12px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em;display:flex}.add-member-form .add-member-or:before,.add-member-form .add-member-or:after{content:"";background:var(--color-border);flex:1;height:1px}.add-member-form .manual-entry{gap:var(--spacing);flex-direction:column;display:flex}.add-member-form .form-actions{gap:var(--spacing-half);margin-top:var(--spacing-quarter);flex-wrap:wrap;justify-content:flex-end;align-items:stretch;display:flex}.add-member-form .form-actions .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;background:0 0;align-self:center;font-size:14px}.add-member-form .form-actions .action-btn{min-width:132px;padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);font-size:14px;font-weight:var(--font-weight-bold);cursor:pointer;transition:background var(--speed) ease;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.add-member-form .form-actions .action-btn:disabled{opacity:.5;cursor:default}.add-member-form .form-actions .action-btn .action-btn-sub{opacity:.85;font-size:11px;font-weight:400;line-height:1.3}.add-member-form .form-actions .add-btn{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.add-member-form .form-actions .add-btn:hover:not(:disabled){background:var(--color-surface-alt)}.add-member-form .form-actions .invite-action-btn{background:var(--color-primary);color:var(--btn-color);border:none}.add-member-form .form-actions .invite-action-btn:hover:not(:disabled){background:var(--color-primary-strong)}.assigned-tab .assigned-sections{gap:calc(var(--spacing) * 1.5);flex-direction:column;display:flex}.assigned-tab .assigned-section-title{font-size:13px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:0 0 var(--spacing-half)}.assigned-tab .assigned-list{gap:var(--spacing-half);flex-direction:column;display:flex}.assigned-tab .assigned-card{align-items:center;gap:var(--spacing);padding:var(--spacing);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);display:flex}.assigned-tab .assigned-card.completed{opacity:.7}.assigned-tab .assigned-card .a-info{flex:1;min-width:0}.assigned-tab .assigned-card .a-title{font-weight:var(--font-weight-bold);color:var(--color-text);font-size:15px}.assigned-tab .assigned-card .a-meta{color:var(--color-text-muted);gap:var(--spacing-half);flex-wrap:wrap;margin-top:2px;font-size:12px;display:flex}.assigned-tab .assigned-card .a-note{color:var(--color-text-soft);margin-top:4px;font-size:13px;font-style:italic}.assigned-tab .assigned-card .a-practice-date{text-align:right;flex-direction:column;flex-shrink:0;align-self:center;align-items:flex-end;gap:2px;display:flex}.assigned-tab .assigned-card .a-practice-date .a-practice-date-label{font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);line-height:1}.assigned-tab .assigned-card .a-practice-date .a-practice-date-value{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-soft);white-space:nowrap;line-height:1.2}.assigned-tab .assigned-card .a-status{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.assigned-tab .assigned-card .a-completed-date{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-success);white-space:nowrap}.assigned-tab .assigned-card .a-link-chip{font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;background:var(--color-surface-alt);color:var(--color-text-muted);border-radius:8px;padding:1px 6px}.assigned-tab .assigned-card .a-link-chip.linked{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.assigned-tab .assigned-card .a-done-badge{color:var(--color-success);font-size:13px;font-weight:var(--font-weight-bold);align-items:center;gap:4px;display:inline-flex}.assigned-tab .assigned-card .a-actions{justify-content:flex-end;align-items:center;gap:var(--spacing-half);flex-flow:wrap;flex-shrink:0;display:flex}.assigned-tab .assigned-card .a-open-btn,.assigned-tab .assigned-card .a-log-btn{padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);font-size:13px;font-weight:var(--font-weight-bold);cursor:pointer;white-space:nowrap;border:none}.assigned-tab .assigned-card .a-open-btn{background:var(--color-primary);color:var(--btn-color)}.assigned-tab .assigned-card .a-open-btn:hover{background:var(--color-primary-strong)}.assigned-tab .assigned-card .a-log-btn{background:color-mix(in srgb, var(--color-success) 16%, var(--color-surface));color:var(--color-success);border:1px solid color-mix(in srgb, var(--color-success) 35%, transparent)}.assigned-tab .assigned-card .a-log-btn:hover{background:color-mix(in srgb, var(--color-success) 24%, var(--color-surface))}.assigned-tab .loading-state{font-size:14px}.invite-page{max-width:480px;padding:calc(var(--spacing) * 3) var(--spacing);text-align:center;margin:0 auto}.invite-page .invite-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:calc(var(--spacing) * 2)}.invite-page .invite-icon{color:var(--color-primary);margin-bottom:var(--spacing);font-size:40px}.invite-page h1{margin:0 0 var(--spacing-half);font-size:22px}.invite-page .invite-sub{color:var(--color-text-soft);margin:0 0 var(--spacing);font-size:15px;line-height:1.5}.invite-page .invite-name{font-weight:var(--font-weight-bold);color:var(--color-text)}.invite-page .invite-actions{gap:var(--spacing-half);margin-top:var(--spacing);justify-content:center;display:flex}.invite-page .btn-accept{padding:var(--spacing-half) calc(var(--spacing) * 1.5);background:var(--color-primary);color:var(--btn-color);border-radius:var(--border-radius);font-size:15px;font-weight:var(--font-weight-bold);cursor:pointer;border:none}.invite-page .btn-accept:hover:not(:disabled){background:var(--color-primary-strong)}.invite-page .btn-accept:disabled{opacity:.5;cursor:default}.invite-page .btn-decline{padding:var(--spacing-half) var(--spacing);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;background:0 0;font-size:15px}.invite-page .invite-hint{margin-top:var(--spacing);color:var(--color-text-muted);font-size:13px}.profile-page{min-height:100%;padding:var(--spacing);box-sizing:border-box;max-width:1100px;margin:0 auto}.profile-page .message,.profile-page .error{text-align:center;color:var(--color-text-muted);padding:calc(var(--spacing) * 2) var(--spacing)}.profile-page .error{color:var(--color-danger)}.profile-page .profile-hero{justify-content:space-between;align-items:flex-start;gap:var(--spacing);margin-bottom:calc(var(--spacing) * 1.5);padding:calc(var(--spacing) * 1.25);border:1px solid var(--color-border);border-radius:var(--border-radius);background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 8%, var(--color-surface)) 0%, var(--color-surface) 55%);flex-direction:row;display:flex}@media (width<=640px){.profile-page .profile-hero{flex-direction:column;align-items:stretch}}.profile-page .profile-main{gap:var(--spacing-half);flex-direction:column;flex:auto;min-width:0;display:flex}.profile-page .profile-kind{margin:0 0 var(--spacing-quarter);text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary-strong);font-size:.75rem;font-weight:700}.profile-page .profile-name{color:var(--color-text);letter-spacing:-.03em;margin:0;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:800;line-height:1.15}.profile-page .profile-actions{align-items:flex-end;gap:var(--spacing-half);flex-direction:column;flex:none;max-width:240px;display:flex}@media (width<=640px){.profile-page .profile-actions{width:100%;max-width:none;margin-top:var(--spacing-half);padding-top:var(--spacing);border-top:1px solid var(--color-border);align-items:center}}.profile-page .follow-btn,.profile-page .share-btn{width:auto;min-width:160px;height:auto;min-height:44px;padding:var(--spacing-half) var(--spacing);border-radius:var(--border-radius);cursor:pointer;white-space:nowrap;transition:background var(--speed) ease, border-color var(--speed) ease, color var(--speed) ease, opacity var(--speed) ease;justify-content:center;align-items:center;gap:8px;font-size:.95rem;font-weight:700;display:inline-flex;align-self:flex-end!important}@media (width<=640px){.profile-page .follow-btn,.profile-page .share-btn{min-width:200px;align-self:center!important}}.profile-page .follow-btn:disabled,.profile-page .share-btn:disabled{opacity:.6;cursor:default}.profile-page .follow-btn{background:var(--color-primary);color:var(--btn-color);border:none}.profile-page .follow-btn:hover:not(:disabled){background:var(--color-primary-strong)}.profile-page .follow-btn.is-following{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.profile-page .follow-btn.is-following:hover:not(:disabled){background:var(--color-surface-alt)}.profile-page .share-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.profile-page .share-btn:hover{background:var(--color-surface-alt);border-color:var(--color-primary-soft)}.profile-page .follow-hint{color:var(--color-text-muted);text-align:right;max-width:220px;margin:0;font-size:.8rem;line-height:1.4}@media (width<=640px){.profile-page .follow-hint{text-align:center;max-width:16rem}}.profile-page .profile-bio{max-width:38rem;color:var(--color-text);margin:0;font-size:1.05rem;line-height:1.5}.profile-page .profile-focus{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.profile-page .profile-focus-tag{border:1px solid color-mix(in srgb, var(--color-primary) 28%, var(--color-border));border-radius:var(--border-radius);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));color:var(--color-primary-strong);letter-spacing:.01em;align-items:center;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.profile-page .profile-promise{max-width:36rem;color:var(--color-text-soft);margin:0;font-size:1rem;line-height:1.45}.profile-page .profile-meta-row{gap:var(--spacing-half) var(--spacing);color:var(--color-text-muted);flex-wrap:wrap;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.profile-page .profile-meta-row li{align-items:center;gap:6px;display:inline-flex}.profile-page .profile-meta-row .meta-sep{color:var(--color-border)}.profile-page .style-strip{gap:var(--spacing);margin-bottom:calc(var(--spacing) * 1.5);grid-template-columns:1fr 1fr;display:grid}@media (width<=640px){.profile-page .style-strip{grid-template-columns:1fr}}.profile-page .style-card{border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing);background:var(--color-surface)}.profile-page .style-card h2{margin:0 0 var(--spacing-half);color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.profile-page .swims-section .section-header{margin-bottom:var(--spacing);justify-content:space-between;align-items:flex-end;gap:var(--spacing);flex-wrap:wrap;display:flex}.profile-page .swims-section .section-copy{min-width:0}.profile-page .swims-section .section-title{color:var(--color-text);letter-spacing:-.02em;margin:0 0 4px;font-size:1.35rem;font-weight:800}.profile-page .swims-section .section-sub{color:var(--color-text-muted);margin:0;font-size:.9rem}.profile-page .swims-section .search-sort{width:200px}.profile-page .swims-section .results-grid{gap:var(--spacing);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=640px){.profile-page .swims-section .results-grid{grid-template-columns:1fr}}.profile-page .empty-swims{text-align:center;padding:calc(var(--spacing) * 2.5) var(--spacing);border:1px dashed var(--color-border);border-radius:var(--border-radius);background:var(--color-surface-alt)}.profile-page .empty-swims .empty-title{margin:0 0 var(--spacing-quarter);color:var(--color-text);font-size:1.1rem;font-weight:700}.profile-page .empty-swims .empty-body{max-width:28rem;color:var(--color-text-muted);margin:0 auto;font-size:.95rem;line-height:1.5}.account-notifications .message{color:var(--color-text-muted);padding:calc(var(--spacing) * 1.5) 0;line-height:1.5}.account-notifications .list{gap:var(--spacing);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.account-notifications .card{border:1px solid var(--color-border);border-radius:calc(var(--border-radius) * 2);background:var(--color-white);transition:border-color var(--speed) ease, background-color var(--speed) ease, box-shadow var(--speed) ease;overflow:hidden}.account-notifications .card:hover{box-shadow:0 4px 14px var(--color-shadow-ink-soft)}.account-notifications .card.unread{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 5%, var(--color-white));border-left:4px solid var(--color-primary)}.account-notifications .notification-item{padding:calc(var(--spacing) * 1.25) calc(var(--spacing) * 1.5)}.account-notifications .notification-item:hover{background:color-mix(in srgb, var(--color-primary) 4%, var(--color-white))}.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-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}.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 .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-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}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:2px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);width:1.125rem;height:1.125rem;transition:background var(--speed) ease, border-color var(--speed) ease, box-shadow var(--speed) ease;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 12 12'%3E%3Cpath fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2 6l3 3 5-6'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:10px;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{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-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-selectall{cursor:pointer;flex-direction:row;flex:none;display:flex}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall:hover{opacity:.5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall.ss-selected svg path{stroke:var(--ss-error-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall span{text-align:center;padding:0 var(--ss-spacing-s) 0 0;flex:0 auto;justify-content:center;align-items:center;font-size:60%;display:flex}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg{flex:0 auto;width:13px;height:13px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg path{fill:none;stroke:var(--ss-success-color);stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:first-child{stroke-width:5px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:last-child{stroke-width:11px}.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);font-size:14px}.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 .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)}.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)}.roster-modal{gap:var(--spacing);flex-direction:column;display:flex}.roster-modal .roster-note{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.4}.roster-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}.roster-modal .select-all:hover{border-color:var(--color-primary-soft)}.roster-modal .select-all .label{font-weight:var(--font-weight-bold);font-size:14px}.roster-modal .select-all .count{color:var(--color-text-muted);margin-left:auto;font-size:12px}.roster-modal .groups{gap:var(--spacing-half);flex-direction:column;display:flex}.roster-modal .groups .group{border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.roster-modal .groups .group .header{background:var(--color-surface-alt);border-bottom:1px solid var(--color-border);align-items:center;display:flex}.roster-modal .groups .group .header .header-check{padding:var(--spacing-half);cursor:pointer;flex-shrink:0;padding-right:0}.roster-modal .groups .group .header .header-toggle{align-items:center;gap:var(--spacing-half);min-width:0;padding:var(--spacing-half);cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;text-align:left;transition:background var(--speed) ease;background:0 0;border:none;flex:1;display:flex}.roster-modal .groups .group .header .header-toggle:hover{background:var(--color-bg-soft)}.roster-modal .groups .group .header .header-toggle .name{font-weight:var(--font-weight-bold);font-size:13px}.roster-modal .groups .group .header .header-toggle .count{color:var(--color-text-muted);margin-left:auto;font-size:12px}.roster-modal .groups .group .header .header-toggle .caret{color:var(--color-text-muted);flex-shrink:0;font-size:11px;transition:transform .25s}.roster-modal .groups .group .header .header-toggle .caret.open{transform:rotate(180deg)}.roster-modal .groups .group .members{margin:0;padding:0;list-style:none}.roster-modal .groups .group .members .member{border-bottom:1px solid var(--color-border)}.roster-modal .groups .group .members .member:last-child{border-bottom:none}.roster-modal .groups .group .members .member label{padding:var(--spacing-half) var(--spacing-half) var(--spacing-half) var(--spacing);transition:background var(--speed) ease;display:flex}.roster-modal .groups .group .members .member label:hover{background:var(--color-bg-soft)}.roster-modal .groups .group .members .member label .name{font-size:13px}.roster-modal .groups .group .members .member label .email{color:var(--color-text-muted);margin-left:auto;font-size:12px}@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)}
