@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Syne:wght@600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=Outfit:wght@400;500;600;700&display=swap";.design-system-icon{display:inline-block;flex-shrink:0}.info-block{display:flex;align-items:center;justify-content:flex-start;width:max-content;min-width:0;max-width:100%;height:24px;min-height:24px;max-height:24px;overflow:visible;color:var(--color-brand)}.info-block__item{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-family:Inter,sans-serif;font-weight:400;font-size:var(--font-size-lg);line-height:1;color:var(--color-brand);white-space:nowrap}.info-block__item--price{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.info-block__item--capacity{flex:0 0 auto;height:24px}.info-block__item--capacity .design-system-icon{display:block;flex-shrink:0}.info-block__person{-webkit-mask-size:100% 100%!important;mask-size:100% 100%!important;-webkit-mask-position:0 0!important;mask-position:0 0!important}.info-block__count{display:block;line-height:1}.info-block__divider{display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;min-width:0;height:19px;padding-inline:clamp(0px,2cqi,var(--spacing-xs));overflow:hidden;opacity:.08;color:var(--color-brand)}.info-block__multiply{margin:0 -4px;opacity:.24}.info-block__level{position:relative;flex:0 0 44px;width:44px;min-width:44px;max-width:44px;overflow:visible;justify-content:center;cursor:help;z-index:1}.info-block__level:hover,.info-block__level:focus-visible{z-index:5}.info-block__level-icon{width:44px!important;height:24px!important;max-width:none}.info-block__level-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%) translateY(4px);padding:6px 10px;border-radius:var(--radius-md);border:1px solid var(--color-neutral-border);background:var(--color-surface);box-shadow:var(--shadow-sm);color:var(--color-text);font-size:var(--font-size-xs);line-height:1.3;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,transform .15s ease,visibility .15s ease;z-index:6}.info-block__level:hover .info-block__level-tooltip,.info-block__level:focus-visible .info-block__level-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}@container info-block (max-width: 160px){.info-block__divider{padding-inline:0}}@container info-block (max-width: 120px){.info-block__item--price{flex-basis:0}}.card-mini-action{width:43px;height:43px;padding:0;border-radius:50%;border:1px solid var(--color-dark-coffee);background-color:transparent;color:var(--color-dark-coffee);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;overflow-anchor:none}.card-mini-action:disabled{cursor:default}.card-mini-action--selected{border-style:solid;background-color:color-mix(in srgb,var(--color-yellow) 32%,var(--color-white));color:var(--color-dark-coffee)}.card-mini-action--selected.card-mini-action--RESERVE{border-style:dashed}.card-mini-action--offer.card-mini-action--MAIN{border-style:solid;background-color:transparent}.card-mini-action--offer.card-mini-action--RESERVE{border-style:dashed;background-color:transparent}.card-mini-action--PENDING{border-style:solid;background-color:var(--color-yellow);color:var(--color-dark-coffee)}.card-mini-action--APPROVED.card-mini-action--MAIN{border-style:solid;border-color:var(--color-dark-coffee);background-color:var(--color-dark-coffee);color:var(--color-white)}.card-mini-action--APPROVED.card-mini-action--RESERVE{border-style:dashed;border-color:var(--color-blue);background-color:color-mix(in srgb,var(--color-blue) 40%,transparent);color:var(--color-dark-coffee)}.card-mini-action--DRAFT,.card-mini-action--CANCELLED,.card-mini-action--COMPLETED,.card-mini-action--locked{border-style:solid;border-color:var(--color-bg);background-color:transparent;color:var(--color-bg)}.card-mini{--card-mini-height: 116px;--card-mini-time-col-width: 96px;--card-mini-expand-duration: .35s;--card-mini-expand-ease: cubic-bezier(.4, 0, .2, 1);position:relative;display:flex;flex-direction:column;width:100%;max-width:386px;min-height:var(--card-mini-height);flex-shrink:0;background-color:var(--color-surface-card);border:none;border-radius:var(--border-radius-lg);overflow:visible;padding:0;text-align:left;color:var(--color-brand);cursor:default;transition:background-color var(--card-mini-expand-duration) var(--card-mini-expand-ease)}.card-mini--interactive{cursor:pointer}.card-mini--expanded{background-color:var(--color-on-primary);overflow:hidden}.card-mini__surface{position:absolute;top:0;left:0;z-index:0;width:var(--card-mini-time-col-width);height:100%;background-color:var(--color-on-primary);border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg);transition:width var(--card-mini-expand-duration) var(--card-mini-expand-ease),border-radius var(--card-mini-expand-duration) var(--card-mini-expand-ease);pointer-events:none}.card-mini--expanded .card-mini__surface{width:100%;border-radius:var(--border-radius-lg)}.card-mini__header{position:relative;z-index:1;display:flex;align-items:stretch;min-height:var(--card-mini-height);width:100%}.card-mini__time-col{width:var(--card-mini-time-col-width);flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding:20px 8px 0;transition:width var(--card-mini-expand-duration) var(--card-mini-expand-ease),align-items var(--card-mini-expand-duration) var(--card-mini-expand-ease),padding var(--card-mini-expand-duration) var(--card-mini-expand-ease)}.card-mini--expanded .card-mini__time-col{width:calc(100% - 75px);max-width:280px;align-items:flex-start;padding:20px var(--spacing-md) 0}.card-mini__time{display:inline-flex;align-items:baseline;font-family:Inter,sans-serif;font-weight:400;font-size:var(--font-size-xl);line-height:1;letter-spacing:0;text-align:center;color:var(--color-brand);white-space:nowrap}.card-mini--expanded .card-mini__time{text-align:left}.card-mini__time-end{display:inline-block;max-width:0;opacity:0;overflow:hidden;white-space:nowrap;vertical-align:baseline;transition:max-width var(--card-mini-expand-duration) var(--card-mini-expand-ease),opacity .25s var(--card-mini-expand-ease)}.card-mini--expanded .card-mini__time-end{max-width:8em;opacity:1}.card-mini__time-sep{display:inline-block;margin:0 .35em}.card-mini__divider{width:64px;height:1px;margin:14px 0;background-color:color-mix(in srgb,var(--color-brand) 8%,transparent);transition:width var(--card-mini-expand-duration) var(--card-mini-expand-ease)}.card-mini--expanded .card-mini__divider{width:120px}.card-mini__status{font-family:Inter,sans-serif;font-weight:400;font-size:var(--font-size-xs);line-height:1.2;letter-spacing:0;text-align:center;color:var(--color-brand);padding:2px var(--spacing-xs);max-width:100%;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;border-radius:4px;border:1px solid transparent;background-color:transparent;background-image:none;transition:max-width var(--card-mini-expand-duration) var(--card-mini-expand-ease),padding var(--card-mini-expand-duration) var(--card-mini-expand-ease),background-color var(--card-mini-expand-duration) var(--card-mini-expand-ease),background-image var(--card-mini-expand-duration) var(--card-mini-expand-ease),border-color var(--card-mini-expand-duration) var(--card-mini-expand-ease),color var(--card-mini-expand-duration) var(--card-mini-expand-ease),text-align var(--card-mini-expand-duration) var(--card-mini-expand-ease)}.card-mini--expanded .card-mini__status{display:block;max-width:100%;padding:4px 10px;text-align:left;white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset;line-clamp:unset;background-color:color-mix(in srgb,var(--color-bege) 70%,#eee9ff)}.card-mini--expanded .card-mini__status--closed{color:#ff3460}.card-mini--expanded .card-mini__status--pending{background-color:transparent;background-image:linear-gradient(89.29deg,color-mix(in srgb,var(--color-white) 20%,transparent) .15%,color-mix(in srgb,var(--color-yellow) 20%,transparent));border-color:color-mix(in srgb,var(--color-yellow) 20%,transparent)}.card-mini--expanded .card-mini__status--reserve{background-color:transparent;background-image:linear-gradient(88.11deg,color-mix(in srgb,var(--color-white) 20%,transparent),color-mix(in srgb,var(--color-blue) 20%,transparent));border-color:color-mix(in srgb,var(--color-blue) 20%,transparent)}.card-mini--expanded .card-mini__status--reserve-open{color:var(--color-blue)}.card-mini__collapsed-main{flex:1;min-width:0;display:flex;flex-direction:column;padding:0 var(--spacing-sm) 0 var(--spacing-md);overflow:visible;opacity:1;transform:translate(0);transition:opacity .2s var(--card-mini-expand-ease),transform .25s var(--card-mini-expand-ease)}.card-mini--expanded .card-mini__collapsed-main{opacity:0;transform:translate(8px);pointer-events:none;width:0;padding:0;overflow:hidden}.card-mini__location{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.card-mini:not(.card-mini--expanded) .card-mini__collapsed-main .card-mini__location,.card-mini:not(.card-mini--expanded) .card-mini__collapsed-main .card-mini__meta{padding-right:59px}.card-mini__location-icon{flex-shrink:0}.card-mini__location-name{font-family:Inter,sans-serif;font-weight:400;font-size:var(--font-size-lg);line-height:1;color:var(--color-brand);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.card-mini__coach{margin-left:auto;flex-shrink:1;max-width:42%;font-family:Inter,sans-serif;font-weight:400;font-size:var(--font-size-sm);line-height:1.2;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.card-mini__meta{flex:1;min-width:0;width:100%;display:flex;align-items:center;justify-content:flex-start;overflow:visible;container-type:inline-size;container-name:info-block}.card-mini__action{position:absolute;top:50%;right:var(--spacing-md);z-index:2;display:flex;align-items:center;transform:translateY(-50%);pointer-events:auto;transition:top var(--card-mini-expand-duration) var(--card-mini-expand-ease)}.card-mini--expanded .card-mini__action{top:calc(var(--card-mini-height) / 2)}.card-mini__expand-panel{position:relative;z-index:1;display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--card-mini-expand-duration) var(--card-mini-expand-ease)}.card-mini--expanded .card-mini__expand-panel{grid-template-rows:1fr}.card-mini__expand-panel-inner{min-height:0;overflow:hidden}.card-mini__details{display:flex;flex-direction:column;gap:var(--spacing-md);margin:0;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);opacity:0;transform:translateY(-6px);transition:opacity .2s var(--card-mini-expand-ease),transform .25s var(--card-mini-expand-ease);transition-delay:0s}.card-mini--expanded .card-mini__details{opacity:1;transform:translateY(0);transition-delay:.12s}.card-mini__detail-row{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:var(--spacing-sm);min-height:24px}.card-mini__detail-label{margin:0;font-family:Inter,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:.04em;text-transform:uppercase;color:var(--color-coffee-milk)}.card-mini__detail-value{display:inline-flex;align-items:center;gap:var(--spacing-sm);margin:0;min-width:0;font-family:Inter,sans-serif;font-size:var(--font-size-md);font-weight:400;line-height:1.2;color:var(--color-brand)}.card-mini__detail-value span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-mini__detail-level-icon{flex-shrink:0;width:44px!important;height:24px!important}.card-mini__detail-value--capacity{gap:0}.card-mini__detail-person{display:block;flex-shrink:0;-webkit-mask-size:100% 100%!important;mask-size:100% 100%!important;-webkit-mask-position:0 0!important;mask-position:0 0!important}.card-mini__detail-multiply{margin:0 -4px;opacity:.24}.card-mini__expanded-content{padding:0 var(--spacing-md) var(--spacing-md);opacity:0;transform:translateY(-6px);transition:opacity .2s var(--card-mini-expand-ease),transform .25s var(--card-mini-expand-ease);transition-delay:0s}.card-mini--expanded .card-mini__expanded-content{opacity:1;transform:translateY(0);transition-delay:.16s}.btn{height:48px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:none;border-radius:var(--radius-lg);cursor:pointer;font-weight:700;font-size:1em;transition:var(--transition-smooth);gap:10px;padding:0 var(--spacing-lg);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{--btn-color: var(--color-primary);--btn-color-hover: var(--color-primary-hover);--btn-text: var(--color-on-primary)}.btn--secondary{--btn-color: var(--color-neutral);--btn-color-hover: var(--color-text);--btn-text: white}.btn--tertiary{--btn-color: var(--color-tertiary);--btn-color-hover: var(--color-tertiary-hover);--btn-text: var(--color-heading)}.btn--success{--btn-color: var(--color-success-button);--btn-color-hover: var(--color-success-button-hover);--btn-text: white}.btn--error{--btn-color: var(--color-error-button);--btn-color-hover: var(--color-error-button-hover);--btn-text: white}.btn--telegram{--btn-color: var(--color-telegram);--btn-color-hover: var(--color-telegram-hover);--btn-text: white}.btn--vk{--btn-color: var(--color-vk);--btn-color-hover: var(--color-vk-hover);--btn-text: white}.btn--filled{background-color:var(--btn-color);color:var(--btn-text);box-shadow:0 4px 6px #00000014}.btn--filled:hover:not(:disabled){background-color:var(--btn-color-hover)}.btn--outlined{background-color:transparent;color:var(--btn-color);border:2px solid var(--btn-color)}.btn--outlined:hover:not(:disabled){background-color:var(--btn-color);color:#fff}.btn--text{background-color:transparent;color:var(--btn-color);box-shadow:none;padding:0 var(--spacing-md)}.btn--text:hover:not(:disabled){background-color:var(--color-neutral-bg)}.btn--small{height:36px;padding:0 var(--spacing-md);font-size:.85rem}.btn--large{height:56px;padding:0 var(--spacing-xl);font-size:1.1rem}.btn__spinner{box-sizing:border-box;flex-shrink:0;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}.round-action-button{width:44px;height:44px;padding:0;border:1px solid var(--color-text);border-radius:50%;background-color:var(--color-on-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:28px;line-height:1;color:var(--color-text)}.round-action-button:disabled{opacity:.4;cursor:not-allowed}.round-action-button--cancel{font-size:32px;font-weight:300}.tournament-card-block{position:relative;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.tournament-card-block--past{opacity:.62}.tournament-card-block__edit{position:absolute;top:8px;right:8px;z-index:3;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background:transparent;cursor:pointer}.tournament-card-block__edit:hover{background-color:color-mix(in srgb,var(--color-text) 6%,transparent)}.tournament-card{--tournament-card-height: 116px;--tournament-card-side-width: 112px;position:relative;display:flex;flex-direction:column;width:100%;min-height:var(--tournament-card-height);flex-shrink:0;background-color:var(--color-surface-card);border:none;border-radius:var(--border-radius-lg);overflow:visible;padding:0;text-align:left;color:var(--color-brand);cursor:pointer;font:inherit}.tournament-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tournament-card__surface{position:absolute;top:0;left:0;z-index:0;width:var(--tournament-card-side-width);height:100%;background-color:var(--color-on-primary);border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg);pointer-events:none}.tournament-card__header{position:relative;z-index:1;display:flex;align-items:stretch;min-height:var(--tournament-card-height);width:100%}.tournament-card__side{width:var(--tournament-card-side-width);flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding:16px 4px 10px}.tournament-card__day{font-size:var(--font-size-xl);font-weight:400;line-height:1.1;text-align:center;color:var(--color-brand);white-space:nowrap}.tournament-card__time{display:inline-flex;align-items:baseline;margin-top:4px;font-size:var(--font-size-sm);line-height:1;white-space:nowrap;color:var(--color-brand)}.tournament-card__time-start{opacity:.85}.tournament-card__divider{width:64px;height:1px;margin:10px 0;background-color:color-mix(in srgb,var(--color-brand) 8%,transparent)}.tournament-card__status{font-family:Inter,sans-serif;font-weight:400;font-size:var(--font-size-xs);line-height:1.2;letter-spacing:0;text-align:center;color:var(--color-brand);padding:2px 4px;max-width:100%;overflow:hidden;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;border-radius:4px;border:1px solid transparent;background-color:transparent;background-image:none}.tournament-card__body{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:8px;padding:10px 12px 10px 0}.tournament-card__collapsed-main{flex:1 1 12rem;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:0 0 0 14px}.tournament-card-block:has(.tournament-card-block__edit):not(:has(.tournament-card__actions)) .tournament-card__collapsed-main{padding-right:28px}.tournament-card__actions{flex:0 0 auto;display:flex;align-items:center;margin-left:auto;padding-left:0}.tournament-card__actions button{pointer-events:auto}.tournament-card__title{margin:0;font-size:1.05rem;font-weight:700;line-height:1.25;color:var(--color-heading);overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.tournament-card__location{display:flex;align-items:center;gap:6px;min-width:0;font-size:.9rem;color:var(--color-brand)}.tournament-card__location-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tournament-card__meta{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;width:max-content;max-width:100%;font-size:.85rem;opacity:.85}.toast-viewport{position:fixed;left:50%;bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom));transform:translate(-50%);z-index:1100;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);width:min(386px,calc(100vw - 2 * var(--spacing-md)));pointer-events:none}.toast{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;padding:14px 18px 14px 16px;border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-md);font-weight:600;line-height:1.35;letter-spacing:-.01em;text-align:left;box-sizing:border-box;pointer-events:auto;animation:toast-in .28s cubic-bezier(.4,0,.2,1)}.toast__mark{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:50%}.toast--leaving{animation:toast-out .22s cubic-bezier(.4,0,.2,1) forwards}.toast--success{background-color:var(--color-brand);color:var(--color-bege);box-shadow:0 14px 32px color-mix(in srgb,var(--color-dark-coffee) 22%,transparent)}.toast--success .toast__mark{background-color:var(--color-yellow);color:var(--color-dark-coffee)}.toast--error{background-color:color-mix(in srgb,var(--color-dark-coffee) 48%,var(--color-error-button));color:var(--color-bege);box-shadow:0 14px 32px color-mix(in srgb,var(--color-dark-coffee) 22%,transparent)}.toast--error .toast__mark{background-color:var(--color-yellow);color:var(--color-dark-coffee)}.toast--info{background-color:var(--color-surface-card);color:var(--color-heading);box-shadow:0 14px 32px color-mix(in srgb,var(--color-dark-coffee) 12%,transparent)}.toast--info .toast__mark{width:8px;height:8px;background-color:var(--color-blue)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@media (min-width: 769px){.toast-viewport{bottom:var(--spacing-xl)}}[data-theme=dark] .toast--success{color:var(--color-bg)}.design-system-view{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:start;gap:var(--spacing-xl);max-width:1120px;margin:0 auto;padding:var(--spacing-xl) 24px calc(var(--spacing-xl) + env(safe-area-inset-bottom));min-height:100vh}.design-system-nav{position:sticky;top:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm)}.design-system-nav__kicker{margin:0;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-coffee-milk)}.design-system-nav__title{margin:0 0 var(--spacing-xs);font-size:var(--font-size-lg);font-weight:700;color:var(--color-heading)}.design-system-nav__list{display:flex;flex-direction:column;gap:2px}.design-system-nav__item{display:block;width:100%;padding:8px 12px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text);font:inherit;font-size:var(--font-size-sm);font-weight:600;text-align:left;cursor:pointer}.design-system-nav__item:hover{background:color-mix(in srgb,var(--color-brand) 8%,transparent)}.design-system-nav__item.is-active{background:color-mix(in srgb,var(--color-brand) 12%,transparent);color:var(--color-heading)}.design-system-main{min-width:0}.design-system-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.design-system-section__header{display:flex;flex-direction:column;gap:var(--spacing-xs)}.design-system-section__title{margin:0;font-size:var(--font-size-xl);font-weight:700;color:var(--color-heading)}.design-system-section__description{margin:0;font-size:var(--font-size-md);color:var(--color-text-muted)}.design-system-section__canvas{display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--color-bg);border-radius:var(--border-radius-lg)}.design-system-section__canvas--stack{flex-direction:column;align-items:flex-start}.design-system-buttons{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.design-system-buttons__row{display:flex;flex-direction:column;gap:var(--spacing-sm)}.design-system-buttons__label{margin:0;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-coffee-milk)}.design-system-buttons__samples{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm)}.design-system-section__canvas--actions{align-items:center}.design-system-toast-samples{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);width:100%}.design-system-toast-samples .toast{animation:none}.design-system-card-mini-expanded-demo{display:flex;flex-direction:column;gap:var(--spacing-md);color:var(--color-brand);font-size:var(--font-size-md)}.design-system-card-mini-expanded-demo__row{display:grid;grid-template-columns:96px 1fr;gap:var(--spacing-sm);align-items:start}.design-system-card-mini-expanded-demo__label{font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-coffee-milk)}.design-system-card-mini-expanded-demo ul{margin:0;padding:0;list-style:none}.design-system-card-mini-expanded-demo__hint{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.design-system-section__feedback{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.design-system-tournament-card{width:100%;max-width:386px}@media (max-width: 768px){.design-system-view{grid-template-columns:1fr;gap:var(--spacing-lg)}.design-system-nav{position:static}.design-system-nav__list{flex-direction:row;flex-wrap:wrap;gap:6px}.design-system-nav__item{width:auto;white-space:nowrap}}.design-system-alert{padding:12px 16px;border-radius:var(--radius-md);font-size:.95em;font-weight:500;text-align:center;width:100%;box-sizing:border-box}.design-system-alert--danger{background-color:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}.design-system-alert--success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.design-system-alert--warning{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.design-system-alert--info{background-color:var(--color-neutral-bg);color:var(--color-text);border:1px solid var(--color-neutral-border)}.consent-checks{display:flex;flex-direction:column;gap:10px;text-align:left;margin:0 0 var(--spacing-lg)}.consent-checks__row{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.86em;line-height:1.45;color:var(--color-text)}.consent-checks__box{width:18px;height:18px;margin-top:2px;flex-shrink:0;cursor:pointer;accent-color:var(--color-primary)}.consent-checks__row a{color:var(--color-primary);font-weight:700;text-decoration:underline;text-underline-offset:2px}.consent-checks__row a:hover{opacity:.85}.telegram-open-buttons{display:flex;flex-direction:column;gap:12px;width:100%}.telegram-open-buttons .btn{width:100%}.auth-modal{text-align:center}.auth-modal__title{font-size:1.8em;font-weight:800;color:var(--color-heading);margin-bottom:var(--spacing-md)}.auth-modal__description{color:var(--color-text-muted);font-size:1em;line-height:1.6;margin-bottom:var(--spacing-lg)}.auth-modal__form{display:flex;flex-direction:column;gap:var(--spacing-md);text-align:left}.auth-modal__label{font-weight:700;font-size:.9em;color:var(--color-text)}.auth-modal__input{padding:16px;border:2px solid var(--color-neutral-border);border-radius:var(--radius-md);font-size:1.5em;font-weight:800;letter-spacing:.3em;text-align:center;color:var(--color-heading);transition:var(--transition-smooth)}.auth-modal__input:focus{outline:none;border-color:var(--color-primary);background-color:color-mix(in srgb,var(--color-heading) 6%,var(--color-surface))}.auth-modal__error{color:var(--color-error);font-size:.9em;font-weight:600;margin:0}.auth-modal__telegram-link{text-decoration:none;font-weight:700}.auth-modal__providers{display:flex;flex-direction:column;gap:12px;width:100%}.auth-modal .telegram-open-buttons{margin-bottom:var(--spacing-lg)}.auth-modal .consent-checks{margin-bottom:var(--spacing-md)}.time-wheel-picker{--time-wheel-item-height: 40px;--time-wheel-visible-items: 5;position:relative;height:calc(var(--time-wheel-item-height) * var(--time-wheel-visible-items));border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);overflow:hidden;-webkit-user-select:none;user-select:none}.time-wheel-picker__highlight{pointer-events:none;position:absolute;left:8px;right:8px;top:50%;height:var(--time-wheel-item-height);transform:translateY(-50%);border-radius:var(--border-radius-sm);background-color:color-mix(in srgb,var(--color-text) 6%,transparent);z-index:1}.time-wheel-picker__wheels{display:flex;align-items:stretch;height:100%;position:relative;z-index:2;mask-image:linear-gradient(to bottom,transparent 0%,black 28%,black 72%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 28%,black 72%,transparent 100%)}.time-wheel-picker__column{flex:1;min-width:0;height:100%}.time-wheel-picker__list{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none}.time-wheel-picker__list::-webkit-scrollbar{display:none}.time-wheel-picker__spacer{height:calc(var(--time-wheel-item-height) * ((var(--time-wheel-visible-items) - 1) / 2));flex-shrink:0}.time-wheel-picker__item{height:var(--time-wheel-item-height);display:flex;align-items:center;justify-content:center;scroll-snap-align:center;font-family:Inter,sans-serif;font-size:var(--font-size-lg);font-weight:400;color:var(--color-text-secondary);transition:color .15s ease,font-size .15s ease;cursor:pointer}.time-wheel-picker__item--selected{color:var(--color-text);font-size:var(--font-size-xl);font-weight:500}.time-wheel-picker__separator{display:flex;align-items:center;justify-content:center;width:16px;flex-shrink:0;font-size:var(--font-size-xl);font-weight:500;color:var(--color-text);pointer-events:none}.time-input{position:relative}.time-input--disabled .time-input__field{opacity:.6;cursor:not-allowed;background-color:var(--color-surface)}.time-input--disabled .time-input__control,.time-input--disabled .time-input__toggle{cursor:not-allowed}.time-input__field{display:flex;align-items:stretch;border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);overflow:hidden;transition:border-color var(--transition-fast)}.time-input__field:focus-within{border-color:var(--color-primary)}.time-input__control{flex:1;min-width:0;border:none;outline:none;background:transparent;padding:var(--spacing-md);padding-right:var(--spacing-sm);color:var(--color-text-primary);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em}.time-input__toggle{display:flex;align-items:center;justify-content:center;width:44px;flex-shrink:0;border:none;border-left:1px solid var(--color-neutral-border);background:transparent;color:var(--color-text-secondary);cursor:pointer}.time-input__toggle:hover,.time-input__toggle--open{color:var(--color-text);background-color:color-mix(in srgb,var(--color-text) 4%,transparent)}.time-input__popover{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;padding:8px;border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);box-shadow:var(--shadow-md)}.time-input__popover .time-wheel-picker{border:none;border-radius:0;background:transparent}.modal-content.training-modal__dialog{max-width:min(600px,calc(100vw - 32px));width:100%;max-height:min(90dvh,920px);padding:28px 30px;display:flex;flex-direction:column;overflow:hidden}.training-modal{display:flex;flex-direction:column;min-height:0;flex:1}.training-modal__title{flex-shrink:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xl);padding-right:36px}.training-modal__form{display:flex;flex-direction:column;min-height:0;flex:1}.training-modal__body{display:flex;flex-direction:column;gap:var(--spacing-md);min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.training-modal__group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.training-modal__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.training-modal__input,.training-modal__select{padding:var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-sm);outline:none;transition:border-color var(--transition-fast)}.training-modal__input:focus,.training-modal__select:focus{border-color:var(--color-primary)}.training-modal__input:disabled{background-color:var(--color-neutral-bg);color:var(--color-text-muted);cursor:not-allowed}.training-modal__input[type=number]{-moz-appearance:textfield}.training-modal__input[type=number]::-webkit-outer-spin-button,.training-modal__input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.training-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.training-modal__checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary)}.training-modal__checkbox-label input{width:18px;height:18px;cursor:pointer}.training-modal__error{color:var(--color-danger);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-md);background-color:var(--color-danger-light);border-radius:var(--border-radius-md)}.training-modal__actions{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-border);padding-top:var(--spacing-lg)}.training-modal__actions-right{display:flex;gap:10px;margin-left:auto}@media (max-width: 500px){.modal-content.training-modal__dialog{max-width:none;max-height:calc(100dvh - 24px);padding:20px 16px 16px;border-radius:20px}.training-modal__title{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.training-modal__row{grid-template-columns:1fr}.training-modal__actions{flex-direction:column-reverse;align-items:stretch}.training-modal__actions-right{margin-left:0;width:100%}.training-modal__actions-right>*{flex:1}}.schedule-item-block{position:relative;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.schedule-item-block .schedule-item__card-mini{max-width:none}.schedule-item-block .schedule-item__edit-btn{position:absolute;top:8px;right:8px;z-index:3;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background:transparent;cursor:pointer}.schedule-item-block .schedule-item__edit-btn:hover{background-color:color-mix(in srgb,var(--color-text) 6%,transparent)}.schedule-item-block--expanded .schedule-item__edit-btn{right:64px}.day-selector-wrapper{width:100%;max-width:650px;min-width:0;overflow-x:clip}.day-selector-header{display:flex;justify-content:space-between;align-items:center;padding-left:8px;padding-right:8px}.day-selector-month{font-size:14px;font-weight:400;color:var(--color-text)}.day-selector-today-btn{background-color:var(--color-surface);border:1px solid var(--color-neutral-border);border-radius:20px;padding:6px 14px;font-size:.85rem;font-weight:700;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.day-selector-today-btn:hover:not(:disabled){background-color:var(--color-neutral-bg);border-color:var(--color-primary);color:var(--color-primary)}.day-selector-today-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.day-selector-container{position:relative;width:100%;max-width:100%;min-width:0;-webkit-user-select:none;user-select:none;margin-bottom:var(--spacing-sm)}.day-selector-days{display:flex;width:100%;min-width:0;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;cursor:grab;scrollbar-width:none}.day-selector-days--free{scroll-snap-type:none;gap:0}.day-selector-days::-webkit-scrollbar{display:none}.day-selector-days:active{cursor:grabbing}.day-selector-days.is-dragging{cursor:grabbing;scroll-behavior:auto;-webkit-user-select:none;user-select:none}.day-selector-days.is-dragging .day-item{pointer-events:none}.day-selector-week{display:flex;flex:0 0 100%;width:100%;min-width:100%;align-items:center;justify-content:space-between;gap:0;scroll-snap-align:start;scroll-snap-stop:always}.day-selector-container.is-week-scroll.has-fade-left.has-fade-right .day-selector-days{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 11.5%,#000 88.5%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 11.5%,#000 88.5%,transparent 100%)}.day-selector-container.is-free-scroll.has-fade-left:not(.has-fade-right) .day-selector-days{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 64px,#000 100%);mask-image:linear-gradient(to right,transparent 0%,#000 64px,#000 100%)}.day-selector-container.is-free-scroll.has-fade-right:not(.has-fade-left) .day-selector-days{-webkit-mask-image:linear-gradient(to right,#000 0%,#000 calc(100% - 64px),transparent 100%);mask-image:linear-gradient(to right,#000 0%,#000 calc(100% - 64px),transparent 100%)}.day-selector-container.is-free-scroll.has-fade-left.has-fade-right .day-selector-days{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 64px,#000 calc(100% - 64px),transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 64px,#000 calc(100% - 64px),transparent 100%)}.day-item,.day-item-spacer{flex:1 1 64px;min-width:64px;height:72px}.day-selector-days--free .day-item{flex:0 0 64px;width:64px;min-width:64px}.day-item-spacer{pointer-events:none}.day-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent;border:0;border-radius:18px;cursor:pointer;transition:background-color var(--transition-fast)}.day-item-number{font-size:24px;font-weight:400;color:var(--color-text);line-height:100%}.day-item-name{font-size:12px;font-weight:400;color:var(--color-text-secondary);text-transform:lowercase;letter-spacing:0%;margin-top:2px}.day-item:hover:not(.day-item--active){background-color:color-mix(in srgb,var(--color-text) 5%,transparent)}.day-item--active{background-color:var(--color-surface)}.day-item--active .day-item-number,.day-item--active .day-item-name{color:var(--color-text)}[data-theme=dark] .day-item--active{background-color:var(--color-surface)}[data-theme=dark] .day-item--active .day-item-number,[data-theme=dark] .day-item--active .day-item-name{color:var(--color-text)}.day-item--past{opacity:.45}.day-item--past:hover{opacity:.7}.day-item-today-dot{position:absolute;bottom:6px;width:4px;height:4px;background-color:#10b981;border-radius:50%}@media (max-width: 480px){.day-selector-wrapper{margin-bottom:var(--spacing-lg)}.day-selector-month{font-size:1rem}.day-selector-today-btn{padding:4px 10px;font-size:.75rem}.day-item,.day-item-spacer{height:68px}.day-item{border-radius:16px}}.filter-all-option{display:flex;align-items:center;justify-content:center;width:100%;min-height:43px;padding:10px 16px;border:1px solid var(--filters-option-border, var(--color-coffee-milk));border-radius:var(--radius-md);background:var(--filters-option-bg, transparent);color:var(--color-brand);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.filter-all-option:hover,.filter-all-option--active{background:var(--filters-option-bg-active, #f6f4f2)}[data-theme=dark] .filter-all-option{color:var(--color-text)}.filter-section{display:flex;flex-direction:column;gap:0}.filter-section__header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;border:none;background:transparent;cursor:pointer;color:var(--color-brand)}.filter-section__title{font-size:var(--font-size-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-brand)}.filter-section__chevron{flex-shrink:0;transform:rotate(0);transition:transform .3s cubic-bezier(.22,1,.36,1)}.filter-section__chevron--open{transform:rotate(180deg)}.filter-section__collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.22,1,.36,1)}.filter-section__collapse:not(.filter-section__collapse--open){pointer-events:none}.filter-section__collapse--open{grid-template-rows:1fr}.filter-section__collapse-inner{overflow:hidden;min-height:0;padding-top:10px;opacity:0;transition:opacity .22s ease}.filter-section__collapse--open .filter-section__collapse-inner{opacity:1;transition-delay:.04s}.filter-section__hint{margin:0 0 8px;font-size:var(--font-size-sm);font-style:italic;font-weight:400;line-height:1.35;color:var(--color-brand)}.filter-section__body{display:flex;flex-direction:column;gap:8px}[data-theme=dark] .filter-section__title,[data-theme=dark] .filter-section__hint,[data-theme=dark] .filter-section__header{color:var(--color-text)}.filter-summary-block{display:flex;flex-direction:column;gap:12px}.filter-summary-block__title{margin:0;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-brand)}.filter-summary-block__text{margin:0;font-size:var(--font-size-md);font-style:italic;font-weight:400;line-height:1.4;color:var(--color-brand)}.filter-summary-block__reset{display:flex;align-items:center;justify-content:center;width:100%;min-height:43px;padding:10px 16px;border:1px solid var(--filters-option-border, var(--color-coffee-milk));border-radius:var(--radius-md);background:var(--filters-option-bg-active, #f6f4f2);color:var(--color-brand);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.filter-summary-block__reset:hover{border-color:var(--color-brand)}[data-theme=dark] .filter-summary-block__title,[data-theme=dark] .filter-summary-block__text,[data-theme=dark] .filter-summary-block__reset{color:var(--color-text)}.group-filter-item{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--filters-option-border, var(--color-coffee-milk));border-radius:var(--radius-md);background:var(--filters-option-bg, transparent);color:var(--color-brand);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.group-filter-item:hover,.group-filter-item--active{background:var(--filters-option-bg-active, #f6f4f2)}.group-filter-item__label{font-size:var(--font-size-sm);font-weight:500;line-height:1;color:var(--color-brand)}[data-theme=dark] .group-filter-item,[data-theme=dark] .group-filter-item__label{color:var(--color-text)}.level-filter-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;min-height:67px;padding:10px 8px;border:1px solid var(--filters-option-border, var(--color-coffee-milk));border-radius:var(--radius-md);background:var(--filters-option-bg, transparent);color:var(--color-brand);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.level-filter-item:hover,.level-filter-item--active{background:var(--filters-option-bg-active, #f6f4f2)}.level-filter-item__name{font-size:var(--font-size-sm);font-weight:500;line-height:1.2;color:var(--color-brand);text-align:center}[data-theme=dark] .level-filter-item,[data-theme=dark] .level-filter-item__name{color:var(--color-text)}.location-filter-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;width:100%;min-height:70px;padding:12px 16px;border:1px solid var(--filters-option-border, var(--color-coffee-milk));border-radius:var(--radius-md);background:var(--filters-option-bg, transparent);color:var(--color-brand);text-align:left;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.location-filter-item:hover,.location-filter-item--active{background:var(--filters-option-bg-active, #f6f4f2)}.location-filter-item__name{font-size:var(--font-size-md);font-weight:600;line-height:1.25;color:var(--color-brand)}.location-filter-item__address{font-size:var(--font-size-xs);font-weight:400;line-height:1.3;color:var(--color-text-muted)}[data-theme=dark] .location-filter-item,[data-theme=dark] .location-filter-item__name{color:var(--color-text)}.filters-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#35091c47;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:filters-popup-fade-in .2s ease-out}.filters-popup{--filters-bg: #ebe8e6;--filters-option-bg: transparent;--filters-option-bg-active: #f6f4f2;--filters-option-border: var(--color-coffee-milk);width:100%;max-width:402px;margin:8px auto 40px;padding:20px 24px 28px;border-radius:var(--radius-lg);background:var(--filters-bg);box-shadow:0 16px 40px #35091c29;color:var(--color-brand);animation:filters-popup-rise .22s ease-out}.filters-popup__header{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;margin-bottom:28px}.filters-popup__close{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;cursor:pointer;color:var(--color-brand)}.filters-popup__close:hover{opacity:.7}.filters-popup__title{margin:0;text-align:center;font-size:var(--font-size-xl);font-weight:600;line-height:1.25;color:var(--color-heading)}.filters-popup__content{display:flex;flex-direction:column;gap:28px}.filters-popup__level-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filters-popup__group-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@keyframes filters-popup-fade-in{0%{opacity:0}to{opacity:1}}@keyframes filters-popup-rise{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .filters-popup-overlay{background:#0000008c}[data-theme=dark] .filters-popup{--filters-bg: var(--color-surface-card);--filters-option-bg: transparent;--filters-option-bg-active: var(--color-surface);--filters-option-border: var(--color-neutral-border);background:var(--filters-bg);color:var(--color-text);box-shadow:0 16px 40px #00000073}[data-theme=dark] .filters-popup__title,[data-theme=dark] .filters-popup__close{color:var(--color-heading)}@media (max-width: 480px){.filters-popup-overlay{padding:12px 10px}.filters-popup{padding:16px 16px 24px}}.filters-bar{width:100%;margin-bottom:var(--spacing-xl);min-width:0}.filters-bar__panel{display:flex;align-items:center;gap:12px;width:100%;min-height:72px;padding:12px 16px;box-sizing:border-box;border-radius:12px;background:#e5e0de;color:var(--color-brand)}.filters-bar__open{display:flex;align-items:center;gap:14px;flex:1;min-width:0;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer}.filters-bar__open:hover{opacity:.85}.filters-bar__icon{flex-shrink:0}.filters-bar__summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-width:0;flex:1;font-size:var(--font-size-md);font-weight:400;line-height:1.35;color:inherit;overflow-wrap:anywhere}.filters-bar__reset{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0;border:none;border-radius:8px;background:transparent;color:inherit;cursor:pointer}.filters-bar__reset:hover:not(:disabled){background:#36081d14}.filters-bar__reset:disabled{opacity:.35;cursor:default}[data-theme=dark] .filters-bar__panel{background:var(--color-surface);color:var(--color-text)}[data-theme=dark] .filters-bar__reset:hover:not(:disabled){background:#f5f2f01a}@media (max-width: 768px){.filters-bar{margin-bottom:var(--spacing-lg)}.filters-bar__panel{min-height:64px;padding:10px 12px}}.avatar-stack{position:relative;flex-shrink:0;display:inline-flex;align-items:center}.avatar-stack--md{--avatar-stack-size: 32px;--avatar-stack-overlap: 12px;--avatar-stack-font: 11px}.avatar-stack--sm{--avatar-stack-size: 28px;--avatar-stack-overlap: 10px;--avatar-stack-font: 10px}.avatar-stack--pair{width:calc(var(--avatar-stack-size) + var(--avatar-stack-size) - var(--avatar-stack-overlap));height:var(--avatar-stack-size)}.avatar-stack:not(.avatar-stack--pair){width:var(--avatar-stack-size);height:var(--avatar-stack-size)}.avatar-stack__face{width:var(--avatar-stack-size);height:var(--avatar-stack-size);border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-text) 8%,var(--color-surface, #fff));color:var(--color-text-secondary, var(--color-text));border:2px solid var(--color-surface, #fff);box-sizing:border-box}.avatar-stack--pair .avatar-stack__face--front{position:relative;z-index:2}.avatar-stack--pair .avatar-stack__face--back{position:absolute;left:calc(var(--avatar-stack-size) - var(--avatar-stack-overlap));top:0;z-index:1}.avatar-stack__img{width:100%;height:100%;object-fit:cover;display:block}.avatar-stack__initials{font-size:var(--avatar-stack-font);font-weight:600;letter-spacing:.02em;line-height:1}.reg-player-item{position:relative;display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid color-mix(in srgb,var(--color-text) 6%,transparent)}.reg-player-item:last-child{border-bottom:none}.reg-player-item--busy{opacity:.55;pointer-events:none}.reg-player-item__avatar-stack{flex-shrink:0}.reg-player-item__body{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;padding-right:4px}.reg-player-item__name{font-size:var(--font-size-md);font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reg-player-item__status{font-size:12px;font-weight:500;color:color-mix(in srgb,#b8860b 80%,var(--color-text-secondary))}.reg-player-item__meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;color:var(--color-text-secondary)}.reg-player-item__meta-dot{opacity:.5}.reg-player-item__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}.reg-player-item__overflow{display:none}.reg-player-item--icons .reg-player-item__actions{gap:12px;opacity:0;pointer-events:none;transition:opacity .15s ease}.reg-player-item--icons.reg-player-item--manageable:hover .reg-player-item__actions,.reg-player-item--icons.reg-player-item--manageable:focus-within .reg-player-item__actions{opacity:1;pointer-events:auto}@media (hover: none){.reg-player-item--icons.reg-player-item--manageable .reg-player-item__actions{opacity:1;pointer-events:auto}}.reg-player-item__action{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0;border:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);border-radius:8px;background:color-mix(in srgb,var(--color-text) 4%,transparent);color:var(--color-text);font-size:15px;font-weight:500;line-height:1;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.reg-player-item--icons .reg-player-item__action{width:40px;height:40px;font-size:17px}.reg-player-item--labeled .reg-player-item__action,.reg-player-item__overflow-panel .reg-player-item__action{min-height:34px;padding:0 12px;border-radius:999px;font-size:13px;width:auto;height:auto}.reg-player-item__action-icon{line-height:1;opacity:.9}.reg-player-item__action-label{line-height:1}.reg-player-item__action:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 8%,transparent);border-color:color-mix(in srgb,var(--color-text) 20%,transparent)}.reg-player-item__action:disabled{opacity:.45;cursor:default}.reg-player-item__action--ok{color:#2f6b4f;border-color:color-mix(in srgb,#2f6b4f 28%,transparent);background:color-mix(in srgb,#2f6b4f 10%,transparent)}.reg-player-item__action--ok:hover:not(:disabled){background:color-mix(in srgb,#2f6b4f 16%,transparent)}.reg-player-item__action--no{color:#8b3a3a;border-color:color-mix(in srgb,#8b3a3a 28%,transparent);background:color-mix(in srgb,#8b3a3a 8%,transparent)}.reg-player-item__action--no:hover:not(:disabled){background:color-mix(in srgb,#8b3a3a 14%,transparent)}@media (max-width: 640px){.reg-player-item--labeled{flex-wrap:wrap}.reg-player-item--labeled .reg-player-item__actions{width:100%;justify-content:flex-start;gap:8px;margin-top:4px}.reg-player-item--labeled .reg-player-item__action{min-height:40px;padding:0 12px;font-size:13px}.reg-player-item--icons.reg-player-item--manageable .reg-player-item__actions{display:none}.reg-player-item--icons.reg-player-item--manageable .reg-player-item__overflow{display:block;position:relative;flex-shrink:0;z-index:2}.reg-player-item__overflow-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:0;border:none;border-radius:10px;background:transparent;color:color-mix(in srgb,var(--color-text-secondary) 72%,transparent);font-size:18px;font-weight:600;letter-spacing:.08em;line-height:1;cursor:pointer;transition:color .15s ease,background-color .15s ease}.reg-player-item__overflow-toggle:hover:not(:disabled),.reg-player-item--actions-open .reg-player-item__overflow-toggle{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 5%,transparent)}.reg-player-item__overflow-toggle:disabled{opacity:.45;cursor:default}.reg-player-item__overflow-measure{position:fixed;top:0;left:0;display:flex;flex-wrap:nowrap;align-items:center;gap:6px;width:max-content;padding:6px 8px;visibility:hidden;pointer-events:none;white-space:nowrap;z-index:-1}.reg-player-item--icons .reg-player-item__overflow-measure .reg-player-item__action{flex-shrink:0;min-height:40px;width:auto;height:auto;padding:0 12px;border-radius:999px;font-size:13px}.reg-player-item__overflow-panel{display:none}.reg-player-item--icons.reg-player-item--manageable .reg-player-item__overflow-panel{position:absolute;top:50%;right:48px;transform:translateY(-50%);display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:6px;width:max-content;box-sizing:border-box;padding:6px 8px;border-radius:12px;background:color-mix(in srgb,var(--color-bg, #fff) 92%,var(--color-text) 8%);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-text) 8%,transparent),0 8px 24px color-mix(in srgb,var(--color-text) 12%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:3}.reg-player-item__overflow-panel[hidden]{display:none!important}.reg-player-item--icons .reg-player-item__overflow-panel .reg-player-item__action{flex-shrink:0;min-height:40px;width:auto;height:auto;padding:0 12px;border-radius:999px;font-size:13px}.reg-player-item--icons .reg-player-item__overflow-panel--icons .reg-player-item__action{width:44px;height:44px;min-height:44px;padding:0;border-radius:10px;font-size:18px}.reg-player-item--actions-open .reg-player-item__body{opacity:.28}}.reg-player-item__trailing{flex-shrink:0;display:flex;align-items:center}.reg-player-item__trailing select{min-width:120px;max-width:160px;border:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);border-radius:999px;background:color-mix(in srgb,var(--color-text) 4%,transparent);color:var(--color-text);padding:7px 12px;font:inherit;font-size:13px}@media (max-width: 640px){.reg-player-item--labeled .reg-player-item__trailing{width:100%;order:3}}.design-system-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;overflow-y:auto;overscroll-behavior:contain;z-index:1000;animation:fadeIn .3s ease-out}.design-system-modal-content{position:relative;width:90%;max-width:420px;background:var(--color-surface);padding:32px 24px 24px;border-radius:24px;box-shadow:0 20px 50px #0003}.design-system-modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;border-radius:50%;background:var(--color-bg);color:var(--color-text-muted);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.design-system-modal-close:hover{background-color:var(--color-error-bg);color:var(--color-error)}.participant-picker{max-width:440px;width:min(440px,calc(100vw - 32px));max-height:min(80dvh,640px);display:flex;flex-direction:column;overflow:hidden}.participant-picker__title{margin:0 36px 8px 0;font-size:var(--font-size-lg);font-weight:700;color:var(--color-text)}.participant-picker__hint{margin:0 0 12px;font-size:13px;line-height:1.4;color:var(--color-text-secondary)}.participant-picker__search{width:100%;box-sizing:border-box;margin-bottom:12px;padding:10px 12px;border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);outline:none}.participant-picker__search:focus{border-color:var(--color-primary)}.participant-picker__guest{flex-shrink:0;margin:-6px 0 10px}.participant-picker__guest-warn{margin:0 0 6px;font-size:12px;line-height:1.4;color:color-mix(in srgb,#b8860b 80%,var(--color-text-secondary))}.participant-picker__guest-offer{max-width:100%}.participant-picker__error{margin:0 0 8px;font-size:13px;color:#8b3a3a}.participant-picker__muted{padding:16px 0;font-size:13px;color:var(--color-text-secondary)}.participant-picker__list{list-style:none;margin:0 -8px;padding:0;overflow-y:auto;min-height:0;flex:1}.participant-picker__chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 10px;padding:0;max-height:72px;overflow-y:auto;flex-shrink:0}.participant-picker__chip{display:inline-flex;align-items:center;gap:2px;max-width:100%;padding:4px 6px 4px 10px;border:1px solid color-mix(in srgb,var(--color-brand) 16%,transparent);border-radius:999px;background:color-mix(in srgb,var(--color-brand) 5%,transparent);color:var(--color-text);font:inherit;font-size:13px;line-height:1.2;cursor:pointer}.participant-picker__chip:hover:not(:disabled){background:color-mix(in srgb,var(--color-brand) 9%,transparent)}.participant-picker__chip:disabled{opacity:.55;cursor:wait}.participant-picker__chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12em}.participant-picker__chip--guest{border-style:dashed;border-color:color-mix(in srgb,#b8860b 40%,var(--color-neutral-border));background:color-mix(in srgb,#b8860b 8%,transparent)}.participant-picker__chip--guest:hover:not(:disabled){background:color-mix(in srgb,#b8860b 13%,transparent)}.participant-picker__chip-tag{flex-shrink:0;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb,#b8860b 85%,var(--color-text-secondary))}.participant-picker__chip-remove{flex-shrink:0;opacity:.5}.participant-picker__row{display:flex;align-items:center;gap:8px;width:100%;padding:10px 8px;border:none;border-radius:10px;background:transparent;color:inherit;text-align:left;cursor:pointer}.participant-picker__row:hover:not(:disabled){background:color-mix(in srgb,var(--color-brand) 8%,transparent)}.participant-picker__row:disabled{opacity:.55;cursor:wait}.participant-picker__row--occupied{cursor:default;opacity:.85;flex-wrap:wrap}.participant-picker__row--occupied:hover{background:transparent}.participant-picker__row--selected{background:color-mix(in srgb,var(--color-brand) 5%,transparent);box-shadow:inset 2px 0 color-mix(in srgb,var(--color-brand) 28%,transparent)}.participant-picker__row--selected:hover:not(:disabled){background:color-mix(in srgb,var(--color-brand) 8%,transparent)}.participant-picker__check{margin-left:auto;width:16px;height:16px;flex-shrink:0;background-color:color-mix(in srgb,var(--color-brand) 55%,var(--color-text-secondary));-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.participant-picker__badge{margin-left:auto;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:color-mix(in srgb,#b8860b 80%,var(--color-text-secondary))}.participant-picker__name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.participant-picker__username{font-size:12px;color:var(--color-text-secondary)}.participant-picker__field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.participant-picker__field-label{font-size:13px;font-weight:600;color:var(--color-text)}.participant-picker__select{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);outline:none}.participant-picker__select:focus{border-color:var(--color-primary)}.participant-picker__footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex-shrink:0;margin-top:12px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--color-text) 8%,transparent)}.schedule-item-roster{margin:0;padding:4px 0 8px;background:transparent;border:none;border-top:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);border-radius:0}.schedule-item-roster--muted,.schedule-item-roster--error{color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:12px 20px 16px}.schedule-item-roster--error{color:#8b3a3a}.schedule-item-roster__summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 8px;font-size:12px;font-weight:500;letter-spacing:.01em;color:var(--color-text-secondary);text-transform:uppercase}.schedule-item-roster__add{margin-left:auto;text-transform:none;letter-spacing:0}.schedule-item-roster__summary-sep{opacity:.45}.schedule-item-roster__columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.schedule-item-roster__section-title{margin:0 0 4px;font-size:13px;font-weight:600;color:var(--color-text)}.schedule-item-roster__empty{margin:8px 0 0;font-size:13px;color:var(--color-text-secondary)}.schedule-item-roster__attendance-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 12px}.schedule-item-roster__attendance-hint{margin:0;flex:1 1 220px;font-size:13px;line-height:1.35;color:var(--color-text-secondary)}.schedule-item-roster__attend{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:12px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.schedule-item-roster__attend input{width:16px;height:16px;margin:0;accent-color:var(--color-brand);cursor:pointer}.schedule-item-roster__player--absent{opacity:.55}@media (max-width: 720px){.schedule-item-roster__columns{grid-template-columns:1fr;gap:12px}}.schedule-selection-bar{position:fixed;left:50%;bottom:calc(var(--spacing-md) + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:900;box-sizing:border-box;display:flex;align-items:center;gap:8px;width:min(386px,calc(100vw - 2 * var(--spacing-md)));padding:8px 8px 8px 10px;background:var(--color-surface-card);color:var(--color-heading);border-radius:var(--border-radius-lg);border:1px solid color-mix(in srgb,var(--color-dark-coffee) 12%,transparent);box-shadow:0 1px 2px color-mix(in srgb,var(--color-dark-coffee) 10%,transparent),0 8px 20px color-mix(in srgb,var(--color-dark-coffee) 16%,transparent),0 18px 40px color-mix(in srgb,var(--color-dark-coffee) 18%,transparent);cursor:pointer}.schedule-selection-bar--hidden{opacity:0;visibility:hidden;pointer-events:none}.schedule-selection-bar--busy{cursor:default}.schedule-selection-bar__clear{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--color-heading);cursor:pointer}.schedule-selection-bar__clear:hover{background:color-mix(in srgb,var(--color-brand) 8%,transparent)}.schedule-selection-bar__count{flex:1;min-width:0;margin:0;font-size:var(--font-size-md);font-weight:650;letter-spacing:-.01em;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.schedule-selection-bar__submit{flex-shrink:0;cursor:pointer}.schedule-selection-bar:not(.schedule-selection-bar--hidden){animation:schedule-selection-bar-in .28s cubic-bezier(.4,0,.2,1)}@keyframes schedule-selection-bar-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (min-width: 769px){.schedule-selection-bar{bottom:var(--spacing-xl);padding:10px 10px 10px 12px}}@media (prefers-reduced-motion: reduce){.schedule-selection-bar{animation:none}}[data-theme=dark] .schedule-selection-bar{border-color:color-mix(in srgb,var(--color-heading) 16%,transparent);box-shadow:0 1px 2px #00000059,0 10px 24px #0006,0 22px 44px #00000059}.schedule-selection-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;padding:0;background:#35091c47;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:schedule-selection-sheet-fade .2s ease-out}.schedule-selection-sheet{display:flex;flex-direction:column;width:100%;max-width:402px;max-height:min(88vh,720px);padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-bg);color:var(--color-brand);box-shadow:0 16px 40px #35091c29;animation:schedule-selection-sheet-rise .24s cubic-bezier(.4,0,.2,1)}.schedule-selection-sheet__header{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;margin-bottom:12px}.schedule-selection-sheet__close,.schedule-selection-sheet__remove{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--color-brand);cursor:pointer}.schedule-selection-sheet__close{width:24px;height:24px}.schedule-selection-sheet__close:hover,.schedule-selection-sheet__remove:hover{opacity:.7}.schedule-selection-sheet__close:disabled,.schedule-selection-sheet__remove:disabled{opacity:.4;cursor:default}.schedule-selection-sheet__title{margin:0;text-align:center;font-size:var(--font-size-xl);font-weight:600;line-height:1.25;color:var(--color-heading)}.schedule-selection-sheet__body{min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:16px;padding-bottom:8px}.schedule-selection-sheet__hint{margin:0;font-size:var(--font-size-sm);line-height:1.4;color:var(--color-text-muted)}.schedule-selection-sheet__warning{padding:12px 14px;border-radius:var(--border-radius-md);background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning)}.schedule-selection-sheet__warning-title{margin:0 0 6px;font-size:var(--font-size-sm);font-weight:650}.schedule-selection-sheet__warning ul{margin:0;padding-left:1.1em;font-size:var(--font-size-sm);line-height:1.4}.schedule-selection-sheet__day-title{margin:0 0 8px;font-size:var(--font-size-md);font-weight:700;color:var(--color-heading)}.schedule-selection-sheet__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.schedule-selection-sheet__row{display:flex;align-items:center;gap:8px;padding:12px 12px 12px 14px;border-radius:var(--border-radius-md);background:var(--color-surface-card)}.schedule-selection-sheet__row-main{flex:1;min-width:0}.schedule-selection-sheet__time{margin:0;font-size:var(--font-size-md);font-weight:700;color:var(--color-heading)}.schedule-selection-sheet__place,.schedule-selection-sheet__slot{margin:2px 0 0;font-size:var(--font-size-sm);line-height:1.3;color:var(--color-text-muted)}.schedule-selection-sheet__slot--reserve{color:var(--color-heading)}.schedule-selection-sheet__slot--none{color:var(--color-error)}.schedule-selection-sheet__failure{margin:4px 0 0;font-size:var(--font-size-sm);line-height:1.3;color:var(--color-error)}.schedule-selection-sheet__remove{width:36px;height:36px;flex-shrink:0;border-radius:50%}.schedule-selection-sheet__footer{padding-top:12px}.schedule-selection-sheet__submit{width:100%}@keyframes schedule-selection-sheet-fade{0%{opacity:0}to{opacity:1}}@keyframes schedule-selection-sheet-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (min-width: 769px){.schedule-selection-sheet-overlay{align-items:flex-end;padding:0 24px 24px}.schedule-selection-sheet{max-height:min(80vh,640px);padding:20px 24px;border-radius:var(--radius-lg)}}@media (prefers-reduced-motion: reduce){.schedule-selection-sheet-overlay,.schedule-selection-sheet{animation:none}}[data-theme=dark] .schedule-selection-sheet-overlay{background:#0000008c}[data-theme=dark] .schedule-selection-sheet{background:var(--color-surface-card);color:var(--color-text);box-shadow:0 16px 40px #00000073}[data-theme=dark] .schedule-selection-sheet__title,[data-theme=dark] .schedule-selection-sheet__close,[data-theme=dark] .schedule-selection-sheet__remove{color:var(--color-heading)}.schedule-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.schedule-header__main{min-width:0;flex:1 1 16rem}.schedule-attendance-due{margin:0 0 var(--spacing-lg);padding:14px 16px 12px;background:color-mix(in srgb,var(--color-warning-bg, #fff7ed) 85%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-warning-border, #fdba74) 65%,var(--color-neutral-border));border-radius:var(--border-radius-lg)}.schedule-attendance-due__title{margin:0;font-size:14px;font-weight:650;color:var(--color-text)}.schedule-attendance-due__hint{margin:4px 0 10px;font-size:13px;line-height:1.35;color:var(--color-text-secondary)}.schedule-attendance-due__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.schedule-attendance-due__item{background:var(--color-surface);border:1px solid var(--color-neutral-border);border-radius:12px;overflow:hidden}.schedule-attendance-due__toggle{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;width:100%;padding:10px 12px;border:none;background:transparent;text-align:left;cursor:pointer;color:inherit}.schedule-attendance-due__when{font-size:12px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.schedule-attendance-due__name{font-size:14px;font-weight:600}.schedule-attendance-due__place{font-size:12px;color:var(--color-text-secondary)}.schedule-attendance-due__action{margin-left:auto;font-size:13px;font-weight:600;color:var(--color-brand)}.schedule-attendance-due__item .schedule-item-roster{padding:0 12px 8px;border-top-color:var(--color-neutral-border)}.schedule-loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-3xl) var(--spacing-xl)}.schedule-day-panel{animation:schedule-day-fade-in .18s ease}.schedule-day-panel--refreshing{opacity:.72;transition:opacity .16s ease;pointer-events:none}@keyframes schedule-day-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.schedule-day-panel{animation:none}.schedule-day-panel--refreshing{transition:none}}.schedule-skeleton-card{--schedule-skeleton-height: 116px;--schedule-skeleton-time-col: 96px;position:relative;display:flex;align-items:stretch;min-height:var(--schedule-skeleton-height);background-color:var(--color-surface-card);border-radius:var(--border-radius-lg);overflow:hidden}.schedule-skeleton-card__surface{position:absolute;top:0;left:0;width:var(--schedule-skeleton-time-col);height:100%;background-color:var(--color-on-primary);border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg);pointer-events:none}.schedule-skeleton-card__time-col{position:relative;z-index:1;width:var(--schedule-skeleton-time-col);flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding:20px 8px 0}.schedule-skeleton-card__main{position:relative;z-index:1;flex:1;min-width:0;display:flex;flex-direction:column;padding:0 67px 0 var(--spacing-md)}.schedule-skeleton-card__location,.schedule-skeleton-card__meta{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.schedule-skeleton-card__bone{display:block;flex-shrink:0;border-radius:6px;background:linear-gradient(110deg,var(--color-skeleton-start) 25%,var(--color-skeleton-end) 45%,var(--color-skeleton-start) 65%);background-size:200% 100%;animation:schedule-skeleton-shimmer 1.2s ease-in-out infinite}.schedule-skeleton-card__time{width:52px;height:22px}.schedule-skeleton-card__divider{width:64px;height:1px;margin:14px 0;background-color:color-mix(in srgb,var(--color-brand) 8%,transparent)}.schedule-skeleton-card__status{width:56px;height:12px}.schedule-skeleton-card__pin{width:16px;height:16px;border-radius:4px}.schedule-skeleton-card__location-name{flex:1 1 auto;min-width:0;max-width:180px;height:18px}.schedule-skeleton-card__chip--price{width:48px;height:16px}.schedule-skeleton-card__chip--level{width:44px;height:24px}.schedule-skeleton-card__chip--capacity{width:36px;height:16px}.schedule-skeleton-card__action{position:absolute;top:50%;right:var(--spacing-md);z-index:2;width:43px;height:43px;border-radius:50%;transform:translateY(-50%)}@keyframes schedule-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion: reduce){.schedule-skeleton-card__bone{animation:none}}.schedule-empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);text-align:center;padding:var(--spacing-lg) var(--spacing-xl);margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);background-color:var(--color-surface);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-lg)}.schedule-empty-state h3{margin:0}.schedule-empty-state p{margin:0;max-width:360px}.schedule-empty-state>.btn{margin-top:var(--spacing-sm)}.timeline-day-section{margin-bottom:var(--spacing-3xl)}.timeline-day-title{font-size:1.4rem!important;font-weight:700!important;color:var(--color-text)!important;margin-top:var(--spacing-xl)!important;margin-bottom:var(--spacing-md)!important;padding-bottom:var(--spacing-xs)!important;border-bottom:2px solid var(--color-text)!important;letter-spacing:-.01em!important;text-transform:capitalize}.timeline-location-title{font-size:1.05rem;font-weight:700;color:var(--color-text-primary);margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.timeline-location-address{font-weight:400;font-size:.85rem;color:var(--color-text-muted)}.schedule-list{display:flex;flex-direction:column;gap:10px}.schedule-view{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}@media (min-width: 769px){.schedule-view{padding-bottom:calc(88px + var(--spacing-md))}}@media (max-width: 768px){.schedule-filters{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.timeline-day-title{font-size:1.15rem!important;margin-top:var(--spacing-lg)!important;border-bottom-width:2px!important}}.landing{--landing-ink: var(--color-dark-coffee, #36081d);--landing-heading: var(--color-heading, #35091c);--landing-ink-soft: color-mix(in srgb, var(--landing-ink) 72%, var(--color-coffee-milk, #b5a7a6));--landing-milk: var(--color-coffee-milk, #b5a7a6);--landing-paper: var(--color-bege, #eee8e2);--landing-paper-deep: var(--color-bg, #ebe8e6);--landing-surface: var(--color-surface-card, #f6f4f2);--landing-tertiary: var(--color-tertiary, #e0dbd8);--landing-accent: var(--landing-milk);--landing-accent-ink: var(--landing-ink);--landing-mist: color-mix(in srgb, var(--landing-paper) 82%, transparent);min-height:100vh;background:var(--landing-paper-deep);color:var(--landing-ink);font-family:Manrope,system-ui,sans-serif;overflow-x:hidden}.landing a{color:inherit;text-decoration:none}.landing a.landing-btn--primary,.landing a.landing-nav__cta{color:var(--landing-ink)}.landing a.landing-btn--ghost{color:var(--landing-paper)}.landing-nav{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;gap:24px;padding:max(16px,env(safe-area-inset-top)) 28px 16px;color:var(--landing-paper)}.landing-nav__brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.landing-nav__mark{width:36px;height:36px;object-fit:contain;filter:brightness(0) invert(1)}.landing-nav__logo{height:22px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}.landing-nav__links{display:none;gap:22px;margin-left:auto;font-size:.95rem;font-weight:500}.landing-nav__links a{opacity:.86;transition:opacity .25s ease}.landing-nav__links a:hover{opacity:1}.landing-nav__cta{margin-left:auto;padding:10px 18px;border-radius:999px;background:var(--landing-paper);color:var(--landing-ink);font-weight:700;font-size:.9rem;transition:transform .25s ease,background .25s ease}.landing-nav__cta:hover{transform:translateY(-1px);background:var(--landing-surface)}@media (min-width: 820px){.landing-nav__links{display:flex}.landing-nav__cta{margin-left:0}}.landing-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:var(--landing-paper)}.landing-hero__media{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.landing-hero__img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transform:scale(1.06);filter:sepia(.28) saturate(.8) brightness(.92);animation:landing-hero-drift 18s ease-in-out infinite alternate}.landing-hero__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,color-mix(in srgb,var(--landing-ink) 55%,transparent),color-mix(in srgb,var(--landing-ink) 28%,transparent) 38%,color-mix(in srgb,var(--landing-ink) 88%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--landing-ink) 62%,transparent) 0%,transparent 58%)}.landing-hero__content{position:relative;z-index:1;width:min(720px,100%);padding:0 28px max(48px,env(safe-area-inset-bottom));animation:landing-rise .9s cubic-bezier(.22,1,.36,1) both}.landing-hero__brand{display:block;height:clamp(42px,8vw,72px);width:auto;margin-bottom:22px;filter:brightness(0) invert(1);animation:landing-rise .9s .05s cubic-bezier(.22,1,.36,1) both}.landing-hero__headline{font-family:Syne,Manrope,sans-serif;font-weight:800;font-size:clamp(2.6rem,8vw,5.2rem);line-height:.95;letter-spacing:-.04em;margin:0 0 16px;max-width:10ch;animation:landing-rise .9s .12s cubic-bezier(.22,1,.36,1) both}.landing-hero__lead{margin:0 0 28px;max-width:34ch;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.45;color:var(--landing-mist);animation:landing-rise .9s .2s cubic-bezier(.22,1,.36,1) both}.landing-hero__actions{display:flex;flex-wrap:wrap;gap:12px;animation:landing-rise .9s .28s cubic-bezier(.22,1,.36,1) both}.landing-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:700;font-size:.98rem;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease}.landing-btn--primary{background:var(--landing-paper);color:var(--landing-ink)}.landing-btn--primary:hover{transform:translateY(-2px);background:var(--landing-surface)}.landing-btn--ghost{border:1.5px solid color-mix(in srgb,var(--landing-milk) 65%,transparent);color:var(--landing-paper);background:transparent}.landing-btn--ghost:hover{border-color:var(--landing-milk);background:color-mix(in srgb,var(--landing-milk) 16%,transparent)}.landing-btn--lg{min-height:56px;padding:0 28px;font-size:1.05rem}.landing-section{padding:clamp(56px,10vw,104px) 28px}.landing-section__intro{max-width:560px;margin-bottom:clamp(28px,5vw,48px)}.landing-section__title{font-family:Syne,Manrope,sans-serif;font-weight:700;font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:-.03em;line-height:1.1;margin:0 0 12px;color:var(--landing-heading)}.landing-section__text{margin:0;color:var(--landing-ink-soft);font-size:1.05rem;line-height:1.5}.landing-atmosphere{background:radial-gradient(ellipse 70% 55% at 8% 0%,color-mix(in srgb,var(--landing-milk) 28%,transparent),transparent 55%),linear-gradient(180deg,var(--landing-paper) 0%,var(--landing-paper-deep) 100%)}.landing-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,28vw);gap:14px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.landing-strip__item{margin:0;scroll-snap-align:start;overflow:hidden;border-radius:4px;aspect-ratio:3 / 4;background:var(--landing-tertiary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--landing-ink) 6%,transparent);animation:landing-rise .8s cubic-bezier(.22,1,.36,1) both}.landing-strip__item:nth-child(2){animation-delay:.06s}.landing-strip__item:nth-child(3){animation-delay:.12s}.landing-strip__item:nth-child(4){animation-delay:.18s}.landing-strip__item:nth-child(5){animation-delay:.24s}.landing-strip__item:nth-child(6){animation-delay:.3s}.landing-strip__item img{width:100%;height:100%;object-fit:cover;filter:sepia(.22) saturate(.85) contrast(1.02);transition:transform .7s cubic-bezier(.22,1,.36,1),filter .4s ease}.landing-strip__item:hover img{transform:scale(1.06);filter:sepia(.12) saturate(.95) contrast(1.04)}.landing-strip__item:nth-child(2n){aspect-ratio:4 / 5;margin-top:28px}@media (min-width: 1100px){.landing-strip{grid-auto-flow:unset;grid-template-columns:repeat(6,1fr);overflow:visible}}.landing-how{background:var(--landing-ink);color:var(--landing-paper)}.landing-how .landing-section__title{color:var(--landing-paper)}.landing-how .landing-section__text{color:color-mix(in srgb,var(--landing-milk) 88%,var(--landing-paper))}.landing-steps{list-style:none;margin:0;padding:0;display:grid;gap:28px}@media (min-width: 860px){.landing-steps{grid-template-columns:repeat(3,1fr);gap:40px}}.landing-steps__item{border-top:1px solid color-mix(in srgb,var(--landing-milk) 35%,transparent);padding-top:20px}.landing-steps__n{display:block;font-family:Syne,Manrope,sans-serif;font-weight:700;font-size:.85rem;letter-spacing:.08em;color:var(--landing-milk);margin-bottom:14px}.landing-steps__title{font-family:Syne,Manrope,sans-serif;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin:0 0 10px}.landing-steps__text{margin:0;color:color-mix(in srgb,var(--landing-milk) 75%,var(--landing-paper));line-height:1.5;font-size:.98rem}.landing-schedule{scroll-margin-top:24px;background:linear-gradient(180deg,var(--landing-paper) 0%,var(--landing-paper-deep) 40%,var(--landing-surface) 100%)}.landing-schedule .content-body{max-width:920px;margin:0 auto}.landing-schedule .content-title{color:var(--landing-heading);font-family:Syne,Manrope,sans-serif}.landing-schedule .content-subtitle{color:var(--landing-ink-soft)}.landing-footer{display:grid;gap:18px;padding:32px 28px calc(32px + env(safe-area-inset-bottom));background:var(--landing-ink);color:color-mix(in srgb,var(--landing-milk) 70%,var(--landing-paper));font-size:.92rem}.landing-footer__brand{display:inline-flex;align-items:center;gap:10px;color:var(--landing-paper);font-family:Syne,Manrope,sans-serif;font-weight:700}.landing-footer__brand img{filter:brightness(0) invert(1)}.landing-footer__links{display:flex;flex-wrap:wrap;gap:16px 22px}.landing-footer__links a:hover{color:var(--landing-paper)}.landing-footer__legal{display:flex;flex-wrap:wrap;gap:12px 18px;grid-column:1 / -1}.landing-footer__legal a:hover{color:var(--landing-paper)}.landing-footer .legal-footer-meta,.landing-footer__copy{margin:0;opacity:.55;font-size:.85rem;grid-column:1 / -1}@media (min-width: 720px){.landing-footer{grid-template-columns:1fr auto;align-items:center}}@keyframes landing-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-hero-drift{0%{transform:scale(1.06) translateZ(0)}to{transform:scale(1.12) translate3d(-1.5%,-1%,0)}}@media (prefers-reduced-motion: reduce){.landing-hero__img,.landing-hero__content,.landing-hero__brand,.landing-hero__headline,.landing-hero__lead,.landing-hero__actions,.landing-strip__item{animation:none!important}.landing-strip__item img{transition:none}}.modal-content.template-modal__dialog{max-width:min(600px,calc(100vw - 32px));width:100%;max-height:min(90dvh,920px);padding:28px 30px;display:flex;flex-direction:column;overflow:hidden}.template-modal{display:flex;flex-direction:column;min-height:0;flex:1}.template-modal__title{flex-shrink:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xl);padding-right:36px}.template-modal__form{display:flex;flex-direction:column;min-height:0;flex:1}.template-modal__body{display:flex;flex-direction:column;gap:var(--spacing-md);min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.template-modal__group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.template-modal__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.template-modal__input,.template-modal__select{padding:var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-sm);outline:none;transition:border-color var(--transition-fast)}.template-modal__input:focus,.template-modal__select:focus{border-color:var(--color-primary)}.template-modal__input:disabled,.template-modal__select:disabled{background-color:var(--color-neutral-bg);color:var(--color-text-muted);cursor:not-allowed}.template-modal__input[type=number]{-moz-appearance:textfield}.template-modal__input[type=number]::-webkit-outer-spin-button,.template-modal__input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.template-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.checkbox-group{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-md)}.template-modal__checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary)}.template-modal__checkbox-label input{width:18px;height:18px;cursor:pointer}.template-modal__error{color:var(--color-danger);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-md);background-color:var(--color-danger-light);border-radius:var(--border-radius-md)}.template-modal__actions{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-border);padding-top:var(--spacing-lg)}.template-modal__actions-right{display:flex;gap:10px;margin-left:auto}@media (max-width: 500px){.modal-content.template-modal__dialog{max-width:none;max-height:calc(100dvh - 24px);padding:20px 16px 16px;border-radius:20px}.template-modal__title{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.template-modal__row{grid-template-columns:1fr}.template-modal__actions{flex-direction:column-reverse;align-items:stretch}.template-modal__actions-right{margin-left:0;width:100%}.template-modal__actions-right>*{flex:1}}.publish-training-row{display:flex;align-items:flex-start;gap:12px;width:100%;padding:10px 12px;border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background:var(--color-bg);color:var(--color-text-primary);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.publish-training-row:hover{border-color:var(--color-primary-light)}.publish-training-row--selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-bg))}.publish-training-row__check{flex-shrink:0;width:20px;height:20px;margin-top:2px;border:2px solid var(--color-neutral-border);border-radius:5px;background:var(--color-surface);transition:border-color .15s,background-color .15s}.publish-training-row__check--checked{border-color:var(--color-primary);background-color:var(--color-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' d='M1 5l3.5 3.5L11 1'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:11px 9px}.publish-training-row__content{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.publish-training-row__top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.publish-training-row__time{display:inline-flex;align-items:baseline;gap:6px;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.publish-training-row__duration{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.publish-training-row__aside{display:inline-flex;align-items:baseline;gap:8px;flex-shrink:0}.publish-training-row__capacity{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.publish-training-row__price{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.publish-training-row__meta,.publish-training-row__place{font-size:var(--font-size-xs);line-height:1.35;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.publish-training-row__meta{color:var(--color-text-primary)}.modal-content.publish-modal__dialog{max-width:min(960px,calc(100vw - 32px));width:100%;max-height:min(90dvh,920px);padding:28px 30px;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg)}.publish-modal{display:flex;flex-direction:column;min-height:0;flex:1;gap:var(--spacing-md)}.publish-modal__header{display:flex;flex-direction:column;gap:var(--spacing-md);flex-shrink:0}.publish-modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;padding-right:36px}.publish-modal__header .filter-section__header,.publish-modal__header .filter-section__title{color:var(--color-text-primary)}.publish-modal__header .filter-section__title{text-transform:none;letter-spacing:normal;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.35;text-align:left}.publish-modal__week-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--spacing-sm)}.week-btn{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-neutral-border);border-radius:var(--border-radius-lg);background-color:var(--color-surface);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);text-align:center}.week-btn:hover{border-color:var(--color-primary-light)}.week-btn--active{border-color:var(--color-primary);background-color:var(--color-primary-light);color:var(--color-primary)}.week-dates{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.publish-modal__loading,.publish-modal__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:140px;padding:var(--spacing-xl);background-color:var(--color-surface);border-radius:var(--border-radius-lg);text-align:center}.publish-modal__empty h4{font-size:var(--font-size-md);margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs)}.publish-modal__empty p{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.publish-modal__preview-section{display:flex;flex-direction:column;min-height:0;flex:1;gap:var(--spacing-sm);overflow:hidden}.publish-modal__bulk-actions{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.publish-modal__bulk-btns{display:flex;gap:10px;flex-shrink:0}.bulk-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:0}.bulk-btn:hover{text-decoration:underline}.publish-modal__list{display:flex;flex-direction:column;gap:var(--spacing-md);min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:var(--spacing-sm);background-color:var(--color-surface);border-radius:var(--border-radius-lg)}.publish-modal__day-section{display:flex;flex-direction:column;gap:6px}.publish-modal__day-title{display:flex;align-items:baseline;gap:var(--spacing-sm);margin:0;padding:0 2px;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-transform:capitalize}.publish-modal__day-date{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);text-transform:none}.publish-modal__day-count{margin-left:auto;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-transform:none}.publish-modal__day-list{display:flex;flex-direction:column;gap:6px}.publish-modal__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--spacing-md);flex-shrink:0;border-top:1px solid var(--color-neutral-border);padding-top:var(--spacing-md)}@media (max-width: 600px){.modal-content.publish-modal__dialog{max-width:none;max-height:calc(100dvh - 24px);padding:20px 16px 16px;border-radius:20px}.publish-modal__title{font-size:var(--font-size-md)}.publish-modal__week-selector{grid-template-columns:1fr 1fr}.publish-modal__bulk-actions{flex-wrap:wrap}.publish-modal__list{padding:6px}.publish-modal__actions{flex-direction:column-reverse;align-items:stretch}.publish-modal__actions>*{width:100%}}.template-item-block{position:relative}.template-item-block .template-item__card-mini{max-width:none}.template-item-block--inactive .template-item__card-mini{opacity:.72}.template-item__edit-btn{position:absolute;top:6px;right:6px;z-index:3;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background:transparent;cursor:pointer}.template-item__edit-btn:hover{background-color:color-mix(in srgb,var(--color-text) 6%,transparent)}.template-item__switch{position:relative;display:inline-block;width:44px;height:24px}.template-item__switch input{opacity:0;width:0;height:0}.template-item__slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:var(--color-neutral-border);transition:.3s;border-radius:24px}.template-item__slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.template-item__switch input:checked+.template-item__slider{background-color:var(--color-success)}.template-item__switch input:checked+.template-item__slider:before{transform:translate(20px)}.templates-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.templates-header__main{min-width:0;flex:1 1 16rem}.templates-header-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.templates-filters{display:flex;flex-wrap:wrap;gap:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--color-surface);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-xl);align-items:center}.filter-group{display:flex;align-items:center;gap:var(--spacing-md)}.filter-label{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.filter-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-sm);outline:none;cursor:pointer}.filter-select:focus{border-color:var(--color-primary)}.days-filter-buttons{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.day-filter-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.day-filter-btn:hover{border-color:var(--color-primary-light);color:var(--color-primary)}.day-filter-btn--active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.day-filter-btn--active:hover{color:#fff}.templates-empty-state{text-align:center;padding:var(--spacing-3xl) var(--spacing-xl);background-color:var(--color-surface);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-lg)}.empty-state-icon{font-size:3.5rem;display:block;margin-bottom:var(--spacing-md)}.templates-empty-state h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs)}.templates-empty-state p{color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);max-width:400px;margin-left:auto;margin-right:auto}.timeline-day-section{margin-bottom:var(--spacing-2xl)}.timeline-day-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-neutral-border)}.timeline-day-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.timeline-location-group{display:flex;flex-direction:column;gap:var(--spacing-md)}.timeline-location-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.timeline-location-address{font-weight:var(--font-weight-normal);font-size:var(--font-size-sm);color:var(--color-text-muted)}.templates-list{display:flex;flex-direction:column;gap:10px}@media (max-width: 768px){.templates-filters{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.filter-group{width:100%;justify-content:space-between}}.design-system-card{background-color:var(--color-surface);border:1px solid var(--color-neutral-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);display:flex;flex-direction:column;gap:var(--spacing-md)}.design-system-card--hoverable:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--color-primary) 15%,transparent)}.design-system-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.8em;font-weight:600;text-transform:uppercase;letter-spacing:.5px;text-align:center}.design-system-badge--neutral{background-color:var(--color-neutral-bg);color:var(--color-text-muted);border:1px solid var(--color-neutral-border)}.design-system-badge--success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.design-system-badge--danger{background-color:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}.design-system-badge--warning{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.location-item-card{position:relative;overflow:hidden;padding:0;gap:0;min-height:100%}.location-item-image-container{width:100%;height:160px;overflow:hidden}.location-item-image{width:100%;height:100%;object-fit:cover}.location-item-no-photo{width:100%;height:160px;display:flex;align-items:center;justify-content:center;background-color:var(--color-neutral-bg);color:var(--color-text-muted);font-size:.9em;font-weight:500;border-bottom:1px solid var(--color-neutral-border)}.location-item-content{padding:20px;display:flex;flex-direction:column;gap:12px;flex:1}.location-item-badge-container{position:absolute;top:15px;right:15px;z-index:1}.location-item-badge-text{font-size:.7em}.location-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.location-item-title{margin-top:0;margin-bottom:0;flex:1;min-width:0;overflow-wrap:break-word}.location-item-courts-badge{flex-shrink:0;white-space:nowrap}.location-item-description{overflow:visible;overflow-wrap:break-word}.location-item-meta{margin-top:auto;margin-bottom:12px;min-width:0;flex-wrap:wrap}.location-item-address{display:block;min-width:0;line-height:1.4;overflow-wrap:break-word}.location-item-actions{display:flex;gap:10px;margin-top:auto}.empty-locations-stub{text-align:center;padding:60px 20px;grid-column:1 / -1;background-color:color-mix(in srgb,var(--color-primary) 2%,transparent);border-style:dashed;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-locations-stub-icon{font-size:4em;margin-bottom:20px}.empty-locations-stub-text{max-width:400px;margin:0 auto 24px}.location-modal{padding:var(--spacing-md)}.location-modal__title{color:var(--color-heading);margin-bottom:var(--spacing-lg);font-size:1.5rem;font-weight:700}.location-modal__form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.location-modal__section{background:var(--color-neutral-bg);border-radius:var(--radius-lg);padding:var(--spacing-md);border:1px solid var(--color-neutral-border)}.location-modal__section-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-border)}.location-modal__section-title{font-size:1.1rem;font-weight:700;color:var(--color-heading);display:flex;align-items:center;gap:8px}.location-modal__section-content{display:flex;flex-direction:column;gap:var(--spacing-md)}.location-modal__group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.location-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.location-modal__label{font-size:.9rem;font-weight:600;color:var(--color-text)}.location-modal__input,.location-modal__textarea{padding:12px 16px;border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);font-size:1rem;transition:var(--transition-smooth);background:#fff}.location-modal__input:focus,.location-modal__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1a237e1a}.location-modal__textarea{min-height:100px;resize:vertical}.location-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.location-modal__error{color:var(--color-error);background:var(--color-error-bg);padding:12px;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;border:1px solid var(--color-error-border)}.location-modal__photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-top:10px}.location-modal__photo-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:2px solid transparent;background-color:var(--color-neutral-bg)}.location-modal__photo-item--primary{border-color:var(--color-primary)}.location-modal__photo-item img{width:100%;height:100%;object-fit:cover}.location-modal__photo-actions{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;justify-content:center;align-items:center;gap:8px;opacity:0;transition:opacity .2s}.location-modal__photo-item:hover .location-modal__photo-actions{opacity:1}.location-modal__photo-action{background:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:transform .2s}.location-modal__photo-action:hover{transform:scale(1.1)}.location-modal__photo-action--remove{color:var(--color-error)}.location-modal__photo-add{aspect-ratio:1;border:2px dashed var(--color-neutral-border);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;color:var(--color-neutral-text-secondary);transition:all .2s}.location-modal__photo-add:hover{border-color:var(--color-primary);color:var(--color-primary);background-color:#1a237e05}.locations-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.locations-header__main{min-width:0;flex:1 1 16rem}.coach-modal-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.coach-modal-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.coach-modal-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.coach-modal-input,.coach-modal-select,.coach-modal-textarea{padding:var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-md);transition:var(--transition-smooth)}.coach-modal-input:focus,.coach-modal-select:focus,.coach-modal-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 15%,transparent)}.coach-modal-textarea{min-height:100px;resize:vertical}.coach-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media (max-width: 600px){.coach-modal-row{grid-template-columns:1fr}}.coach-modal-photo-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);border:2px dashed var(--color-neutral-border);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-smooth);text-align:center;background-color:var(--color-neutral-bg)}.coach-modal-photo-upload:hover{border-color:var(--color-primary);background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.coach-modal-photo-preview{position:relative;width:100%;height:200px;border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--spacing-md)}.coach-modal-photo-preview img{width:100%;height:100%;object-fit:cover}.coach-modal-photo-remove{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background-color:var(--color-error);color:#fff;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--font-size-sm);transition:var(--transition-smooth)}.coach-modal-photo-remove:hover{background-color:color-mix(in srgb,var(--color-error) 80%,black);transform:scale(1.1)}.coaches-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.coaches-header__main{min-width:0;flex:1 1 16rem}.coaches-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.coach-card{position:relative;overflow:hidden;display:flex;flex-direction:column;height:100%;transition:var(--transition-smooth)}.coach-card--editable:hover{border-color:var(--color-primary)}.coach-image-container{position:relative;width:100%;height:260px;border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-neutral-bg)}.coach-image{width:100%;height:100%;object-fit:cover;transition:var(--transition-smooth)}.coach-card:hover .coach-image{transform:scale(1.05)}.coach-info{display:flex;flex-direction:column;gap:var(--spacing-sm);flex-grow:1;margin-top:var(--spacing-xs)}.coach-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.coach-experience{font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--spacing-xs)}.coach-description{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5;margin:0;flex-grow:1}.coach-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-border)}.coach-price{font-weight:var(--font-weight-bold);color:var(--color-primary)}.my-registrations-timeline .timeline-day-title{text-transform:none!important}.pending-registrations-list{display:flex;flex-direction:column;gap:var(--spacing-xl)}.pending-registrations-day__title{margin:0 0 var(--spacing-md);font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);text-transform:none}.pending-registrations-day__card{background:var(--color-surface);border-radius:16px;padding:4px var(--spacing-lg) 8px}.design-system-hint{position:relative;width:20px;height:20px;border-radius:50%;border:1px solid var(--color-neutral-border);color:var(--color-text-muted);font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:help;-webkit-user-select:none;user-select:none}.design-system-hint:focus-visible{outline:2px solid color-mix(in srgb,var(--color-primary) 20%,white);outline-offset:2px}.design-system-hint-tooltip{position:absolute;right:0;top:calc(100% + 10px);min-width:250px;max-width:320px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--color-neutral-border);background:var(--color-surface);box-shadow:var(--shadow-md);color:var(--color-text);font-size:.82rem;line-height:1.35;opacity:0;visibility:hidden;transform:translateY(4px);transition:var(--transition-smooth);z-index:4}.design-system-hint:hover .design-system-hint-tooltip,.design-system-hint:focus-visible .design-system-hint-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.design-system-provider-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:12px;background-color:var(--color-surface);transition:var(--transition-smooth)}.design-system-provider-info{display:flex;align-items:center;gap:10px;min-width:0}.design-system-provider-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.design-system-provider-name{font-size:.95rem;font-weight:600;color:inherit}.design-system-provider-row--idle{color:var(--color-text-muted)}.design-system-provider-row--linked{color:var(--color-text)}.linked-provider-row--telegram.design-system-provider-row--linked .design-system-provider-icon{color:#24a1de}.linked-provider-row--vk.design-system-provider-row--linked .design-system-provider-icon{color:#07f}.design-system-provider-state{width:30px;height:30px;flex-shrink:0;margin-left:auto;padding:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;line-height:1;font-family:inherit;border-radius:50%;border:1px solid var(--color-neutral-border);display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700}.design-system-provider-state--action{background:transparent;color:var(--color-text-muted);cursor:pointer;transition:var(--transition-smooth)}.design-system-provider-state--action:hover:not(:disabled){background:var(--color-neutral-bg);color:var(--color-text)}.design-system-provider-state--action:disabled{cursor:not-allowed;opacity:.5}.design-system-provider-state--success{background:color-mix(in srgb,var(--color-success-button) 14%,white);border-color:color-mix(in srgb,var(--color-success-button) 35%,white);color:var(--color-success-button)}.design-system-provider-state--unlink{background:transparent;color:var(--color-text-muted);cursor:pointer;transition:var(--transition-smooth)}.design-system-provider-state--unlink:hover:not(:disabled){background:color-mix(in srgb,var(--color-error) 10%,white);border-color:color-mix(in srgb,var(--color-error) 35%,white);color:var(--color-error)}.design-system-provider-state--unlink:disabled{cursor:not-allowed;opacity:.5}@media (max-width: 560px){.design-system-provider-state{width:44px;height:44px;font-size:1.25rem}}.profile-account-menu{position:relative;flex-shrink:0;margin-top:4px}.profile-account-menu__trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:40px;height:40px;padding:0;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-neutral-border) 80%,white);background:var(--color-surface);color:var(--color-heading);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.profile-account-menu__trigger:hover,.profile-account-menu__trigger[aria-expanded=true]{background:color-mix(in srgb,var(--color-heading) 6%,var(--color-surface))}.profile-account-menu__dots{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.profile-account-menu__dots span{width:4px;height:4px;border-radius:50%;background:currentColor}.profile-account-menu__list{position:fixed;z-index:80;min-width:220px;max-width:min(280px,calc(100vw - 16px));padding:6px;border-radius:12px;background:var(--color-surface-card, var(--color-surface));border:1px solid color-mix(in srgb,var(--color-heading) 10%,transparent)}.profile-account-menu__item{display:block;width:100%;border:none;background:transparent;color:var(--color-heading);text-align:left;border-radius:8px;padding:10px 12px;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer}.profile-account-menu__item:hover{background:color-mix(in srgb,var(--color-heading) 6%,transparent)}.profile-account-menu__item--danger{color:var(--color-text-muted);font-weight:500}.profile-account-menu__item--danger:hover{color:var(--color-error);background:var(--color-error-bg)}.profile-view{animation:fadeIn .35s ease-out}.profile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.profile-header-main{min-width:0;flex:1}.profile-alert{margin:0 0 var(--spacing-lg) 0}.profile-content{max-width:none;width:100%;display:flex;flex-direction:column;gap:var(--spacing-md)}.profile-block{width:100%;box-sizing:border-box;gap:var(--spacing-md);border-color:color-mix(in srgb,var(--color-neutral-border) 80%,white)}.profile-identity-card--split{display:flex;flex-direction:column;align-items:stretch;gap:var(--spacing-md);padding:0;background:transparent;border:none;box-shadow:none}.profile-identity-hero,.profile-identity-season{width:100%;min-width:0;box-sizing:border-box}.profile-identity-card--split .profile-identity-hero,.profile-identity-card--split .profile-identity-season{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-neutral-border) 80%,white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}@media (min-width: 680px){.profile-content:has(.profile-identity-card--split){max-width:760px}.profile-identity-card--split{display:grid;grid-template-columns:148px minmax(0,1fr);column-gap:32px;row-gap:18px;align-items:start;padding:var(--spacing-lg);background-color:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-neutral-border) 80%,white);box-shadow:var(--shadow-sm)}.profile-identity-card--split .profile-identity-hero,.profile-identity-card--split .profile-identity-season{width:auto;background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}.profile-identity-card--split .profile-identity-season{display:contents}.profile-identity-card--split .profile-hero-top{flex-direction:column;align-items:center;gap:12px}.profile-identity-card--split .profile-hero-main{align-items:center;text-align:center;width:100%}.profile-identity-card--split .profile-hero-name{font-size:1.08rem}.profile-identity-card--split .profile-season-title{font-size:1.05rem}.profile-identity-card--split .profile-season-month{grid-column:1 / -1;padding-top:16px;border-top:1px solid var(--color-neutral-border)}.profile-identity-card--split .profile-season-bars{gap:8px}.profile-identity-card--split .profile-season-bar-fill{max-width:22px}}.profile-hero-card,.profile-connections-card{display:flex;flex-direction:column;gap:var(--spacing-md)}.profile-hero-top{display:flex;align-items:center;gap:var(--spacing-md)}.profile-avatar-button{position:relative;display:block;padding:0;border:none;background:transparent;cursor:pointer;flex-shrink:0;border-radius:50%}.profile-avatar-button:focus-visible{outline:2px solid var(--color-heading);outline-offset:3px}.profile-avatar-edit{position:absolute;right:0;bottom:0;width:26px;height:26px;border-radius:50%;background:var(--color-bege);color:var(--color-dark-coffee);display:flex;align-items:center;justify-content:center;border:2px solid var(--color-surface-card)}.profile-avatar-button:hover .profile-avatar-edit{background:var(--color-coffee-milk)}.profile-avatar,.profile-avatar-fallback{pointer-events:none;width:88px;height:88px;border-radius:50%}.profile-avatar{object-fit:cover;border:2px solid var(--color-bg);box-shadow:var(--shadow-sm);display:block}.profile-avatar-fallback{display:flex;align-items:center;justify-content:center;font-size:1.35rem;font-weight:700;background:color-mix(in srgb,var(--color-primary) 7%,white);border:1px solid var(--color-neutral-border);color:var(--color-heading)}.avatar-picker-modal{max-width:420px;width:min(92vw,420px);padding:32px 24px 24px}.avatar-picker-header{margin-bottom:20px}.avatar-picker-title{margin:0;color:var(--color-heading);font-size:1.2rem;font-weight:800}.avatar-picker-lead{margin:6px 0 0;font-size:.9rem;color:var(--color-text-muted)}.avatar-picker-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.avatar-slot{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 4px 4px;border:none;background:transparent;cursor:pointer;color:inherit}.avatar-slot:disabled{cursor:default;opacity:.45}.avatar-slot-face{width:76px;height:76px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-heading) 6%,white);border:2px solid var(--color-neutral-border);color:var(--color-text-muted)}.avatar-slot--selected .avatar-slot-face{border-color:var(--color-heading);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-heading) 18%,transparent)}.avatar-slot--empty .avatar-slot-face{border-style:dashed}.avatar-slot-face img{width:100%;height:100%;object-fit:cover}.avatar-slot-placeholder{font-weight:700;font-size:1.1rem}.avatar-slot-label{font-size:.82rem;font-weight:700;color:var(--color-heading)}.avatar-slot-caption{font-size:.72rem;color:var(--color-text-muted)}.avatar-picker-actions{display:flex;justify-content:center;gap:8px;margin-top:16px}.avatar-picker-error{margin:12px 0 0;color:var(--color-error);font-size:.85rem;text-align:center}.avatar-crop-viewport{width:240px;height:240px;margin:0 auto 16px;border-radius:50%;overflow:hidden;background:var(--color-bege);border:2px solid var(--color-neutral-border);touch-action:none;cursor:grab;position:relative}.avatar-crop-viewport img{position:absolute;left:50%;top:50%;max-width:none;transform-origin:center center;-webkit-user-select:none;user-select:none;pointer-events:none}.avatar-crop-zoom{display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--color-text-muted)}.avatar-crop-zoom input{width:100%}.avatar-picker-crop-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.profile-hero-main{display:flex;flex-direction:column;gap:6px;min-width:0}.profile-hero-name{font-size:1.2rem;font-weight:800;color:var(--color-primary);line-height:1.15;overflow-wrap:anywhere}.profile-hero-username{color:var(--color-text-muted);font-size:.9rem;overflow-wrap:anywhere}.profile-season{display:flex;flex-direction:column;gap:14px}.profile-season-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.profile-season-title{margin:0}.profile-season-range{margin:0;font-size:.78rem;color:var(--color-text-muted)}.profile-season-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-season-stat-value{font-size:1.85rem;font-weight:800;line-height:1;color:var(--color-heading);letter-spacing:-.03em}.profile-season-stat-label{margin-top:6px;font-size:.88rem;color:var(--color-text-muted)}.profile-season-last{margin:0;font-size:.88rem;line-height:1.4;color:var(--color-text-muted)}.profile-season-bars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;align-items:end;min-height:64px}.profile-season-bar{display:flex;flex-direction:column;align-items:center;gap:6px;padding:0;border:none;background:transparent;cursor:pointer;color:var(--color-coffee-milk);min-width:0}.profile-season-bar--empty .profile-season-bar-fill{opacity:.4}.profile-season-bar--selected.profile-season-bar--empty .profile-season-bar-fill{opacity:1}.profile-season-bar-fill{width:100%;max-width:18px;border-radius:6px 6px 3px 3px;background:var(--color-coffee-milk)}.profile-season-bar--selected .profile-season-bar-fill{background:var(--color-heading)}.profile-season-bar--selected{color:var(--color-heading)}.profile-season-bar-label{font-size:.68rem;letter-spacing:.01em;text-transform:lowercase;overflow:hidden;text-overflow:ellipsis;max-width:100%}.profile-season-month{padding-top:4px}.profile-season-month-title{font-size:.82rem;font-weight:700;color:var(--color-heading);margin-bottom:8px}.profile-season-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.profile-season-item{display:grid;grid-template-columns:92px 1fr;gap:10px;align-items:start}.profile-season-item-date{font-size:.82rem;color:var(--color-coffee-milk);padding-top:1px}.profile-season-item-body{display:flex;flex-direction:column;gap:2px;font-size:.9rem;font-weight:600;color:var(--color-heading)}.profile-season-item-meta{font-size:.78rem;font-weight:400;color:var(--color-text-muted)}.profile-season-empty{margin:0;font-size:.9rem;color:var(--color-text-muted)}.profile-season-item--tournament{padding-left:8px;border-left:2px solid var(--color-yellow)}.profile-season-item--tournament .profile-season-item-date{color:var(--color-heading)}.profile-connections-header{margin-bottom:4px}.profile-connections-title{display:inline-flex;align-items:center;gap:8px;margin:0}.profile-connections-title .design-system-hint{flex-shrink:0}.profile-providers-list{display:flex;flex-direction:column;border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);overflow:hidden}.design-system-provider-row+.design-system-provider-row{border-top:1px solid var(--color-neutral-border)}.telegram-link-panel{display:flex;flex-direction:column;gap:var(--spacing-md)}.telegram-link-modal{max-width:460px;width:min(92vw,460px);padding:32px 28px 24px}.telegram-link-modal-header{margin-bottom:12px}.telegram-link-modal-title{margin:0;color:var(--color-primary);font-size:1.2rem;font-weight:800}.telegram-link-steps{display:flex;flex-direction:column;gap:6px}.telegram-link-panel .telegram-open-buttons{gap:8px}.telegram-link-step{font-size:.88rem;color:var(--color-text-muted)}.telegram-link-form{display:flex;flex-direction:column;gap:8px}.telegram-link-form-row{display:flex;align-items:center;gap:8px}.telegram-link-code-input{width:132px;border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);padding:8px 10px;text-align:center;font-size:1rem;letter-spacing:2px}.telegram-link-code-input:focus{outline:2px solid color-mix(in srgb,var(--color-primary) 20%,white);outline-offset:1px}.telegram-link-error{color:var(--color-error);font-size:.85rem}.account-merge-modal{max-width:560px;width:min(92vw,560px);padding:32px 28px 24px}.account-merge-header{margin-bottom:8px}.account-merge-title{margin:0;color:var(--color-primary);font-size:1.2rem;font-weight:800}.account-merge-lead{margin:0 0 16px;font-size:.92rem;color:var(--color-text-muted);line-height:1.4}.account-merge-sides{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-merge-side{border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);padding:12px;display:flex;flex-direction:column;gap:4px}.account-merge-side-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.account-merge-side-name{font-weight:700;color:var(--color-primary)}.account-merge-side-meta{font-size:.82rem;color:var(--color-text-muted)}.account-merge-warnings{margin:14px 0 0;padding-left:18px;font-size:.85rem;color:var(--color-text-muted)}.account-merge-error{margin-top:12px;color:var(--color-error);font-size:.85rem}.account-merge-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}@media (max-width: 560px){.profile-view .content-header{margin-bottom:var(--spacing-md)}.profile-view .content-title{font-size:1.45rem;line-height:1.2}.profile-view .content-subtitle{font-size:.92rem}.profile-block{padding:var(--spacing-md);gap:var(--spacing-sm)}.profile-identity-card.profile-block{padding:0;gap:var(--spacing-md)}.profile-identity-hero,.profile-identity-season,.profile-identity-card--split .profile-identity-hero,.profile-identity-card--split .profile-identity-season{padding:var(--spacing-md)}.profile-hero-top{align-items:center;gap:var(--spacing-sm)}.profile-avatar,.profile-avatar-fallback{width:64px;height:64px}.profile-avatar-fallback{font-size:1.5rem}.profile-hero-name,.profile-identity-card--split .profile-hero-name{font-size:1.05rem}.profile-season-item{grid-template-columns:1fr;gap:2px}.profile-season-stat-value{font-size:1.6rem}.profile-connections-title .design-system-hint-tooltip{right:auto;left:0;min-width:0;width:min(280px,calc(100vw - 48px))}.telegram-link-modal,.account-merge-modal,.avatar-picker-modal{padding:24px 16px 16px}.avatar-slot-face{width:64px;height:64px}.profile-avatar-edit{width:22px;height:22px}.telegram-link-form-row{flex-direction:column;align-items:stretch}.telegram-link-code-input{width:100%}.account-merge-sides{grid-template-columns:1fr}.account-merge-actions{flex-direction:column-reverse;align-items:stretch}}.album-card{position:relative;width:100%;border-radius:var(--border-radius-lg);overflow:hidden;background:var(--color-surface-card);border:1px solid var(--color-neutral-border);transition:transform .25s ease,box-shadow .25s ease}.album-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.album-card__hit{display:block;width:100%;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.album-card__cover{aspect-ratio:4 / 3;background:var(--color-tertiary);overflow:hidden}.album-card__cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.album-card:hover .album-card__cover img{transform:scale(1.04)}.album-card__cover-empty{width:100%;height:100%;display:grid;place-items:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.album-card__meta{padding:12px 14px 14px}.album-card__title{margin:0 0 4px;font-size:var(--font-size-lg);font-weight:700;color:var(--color-heading);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.album-card__count{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.album-card__edit{position:absolute;top:8px;right:8px;z-index:2;display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:50%;background:color-mix(in srgb,var(--color-surface) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;opacity:0;transform:scale(.92);transition:opacity .2s ease,transform .2s ease,background .2s ease}.album-card:hover .album-card__edit,.album-card:focus-within .album-card__edit{opacity:1;transform:scale(1)}.album-card__edit:hover{background:var(--color-surface)}@media (hover: none){.album-card__edit{opacity:1;transform:none}}.album-modal__dialog{max-width:440px;width:92%}.album-modal__title{margin:0 0 var(--spacing-lg);font-size:var(--font-size-2xl);font-weight:800;color:var(--color-heading);letter-spacing:-.02em;padding-right:28px}.album-modal__form{display:flex;flex-direction:column;gap:var(--spacing-md)}.album-modal__group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.album-modal__label{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text)}.album-modal__input,.album-modal__textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--font-size-md);transition:var(--transition-smooth)}.album-modal__textarea{min-height:88px;resize:vertical}.album-modal__input:focus,.album-modal__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 15%,transparent)}.album-modal__cover-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:140px;padding:var(--spacing-lg);border:2px dashed var(--color-neutral-border);border-radius:var(--radius-md);background:var(--color-neutral-bg);cursor:pointer;text-align:center;transition:var(--transition-smooth)}.album-modal__cover-upload:hover{border-color:var(--color-brand);background:color-mix(in srgb,var(--color-brand) 6%,var(--color-neutral-bg))}.album-modal__cover-upload-title{font-size:var(--font-size-sm);font-weight:700}.album-modal__cover-upload-hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.album-modal__cover-preview{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;border-radius:var(--radius-md);background:var(--color-tertiary)}.album-modal__cover-preview img{width:100%;height:100%;object-fit:cover;display:block}.album-modal__cover-remove{position:absolute;top:8px;right:8px;width:32px;height:32px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:20px;line-height:1;cursor:pointer}.album-modal__cover-replace{font-size:var(--font-size-sm);font-weight:600;color:var(--color-brand);cursor:pointer;width:fit-content}.album-modal__error{color:var(--color-error);font-size:var(--font-size-sm)}.album-modal__actions{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.album-modal__actions-right{display:flex;gap:10px;margin-left:auto}.media-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;width:100%;max-width:100%;overflow:hidden;align-items:stretch;justify-items:stretch;gap:0;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);background:#08060aeb;color:#f7f2ea;overscroll-behavior:none;touch-action:none;animation:media-lightbox-in .22s ease both}.media-lightbox__top{grid-column:1 / -1;grid-row:1;width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;box-sizing:border-box}.media-lightbox__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.media-lightbox__counter{font-size:.85rem;font-weight:700;letter-spacing:.04em;opacity:.8}.media-lightbox__title{font-size:1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-lightbox__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.media-lightbox__icon-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;border-radius:50%;background:#ffffff1f;color:inherit;text-decoration:none;line-height:0;cursor:pointer}.media-lightbox__icon-btn:hover{background:#fff3}.media-lightbox__close{flex:0 0 auto;width:44px;height:44px;border:none;border-radius:50%;background:#ffffff1f;color:inherit;font-size:1.8rem;line-height:1;cursor:pointer}.media-lightbox__close:hover{background:#fff3}.media-lightbox__stage{position:relative;grid-column:1;grid-row:2;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:8px 56px 12px;box-sizing:border-box;touch-action:none}.media-lightbox__media{max-width:min(100%,1100px);max-height:calc(100dvh - 220px);min-width:0;width:auto;height:auto;object-fit:contain;border-radius:8px;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;animation:media-lightbox-media-in .2s ease both}.media-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0;padding:0;border:none;border-radius:50%;background:#ffffff1f;color:inherit;line-height:0;cursor:pointer;transition:background .2s ease,opacity .2s ease}.media-lightbox__nav svg{display:block;flex:0 0 auto}.media-lightbox__nav:hover:not(:disabled){background:#ffffff38}.media-lightbox__nav:disabled{opacity:.25;cursor:default}.media-lightbox__nav--prev{left:10px}.media-lightbox__nav--next{right:10px}.media-lightbox__thumbs{grid-column:1;grid-row:3;width:100%;min-width:0;display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.35) transparent;padding:10px 16px calc(12px + env(safe-area-inset-bottom,0));box-sizing:border-box;background:linear-gradient(180deg,transparent,rgba(0,0,0,.35))}.media-lightbox__thumb{flex:0 0 auto;width:64px;height:64px;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:#ffffff14;cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease}.media-lightbox__thumb img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.media-lightbox__thumb:hover{opacity:1}.media-lightbox__thumb--active{opacity:1;border-color:#f7f2ea;transform:translateY(-2px)}.media-lightbox__thumb-video{position:relative;display:block;width:100%;height:100%}.media-lightbox__thumb-badge{position:absolute;inset:auto 4px 4px auto;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#0000008c;color:#fff;font-size:.55rem;line-height:1}@keyframes media-lightbox-in{0%{opacity:0}to{opacity:1}}@keyframes media-lightbox-media-in{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@media (max-width: 720px){.media-lightbox__stage{padding:4px 8px 8px}.media-lightbox__nav{width:44px;height:44px}.media-lightbox__nav--prev{left:6px}.media-lightbox__nav--next{right:6px}.media-lightbox__media{max-height:calc(100dvh - 240px)}}.media-lightbox__icon-btn:focus-visible,.media-lightbox__close:focus-visible,.media-lightbox__nav:focus-visible{outline:2px solid #f7f2ea;outline-offset:2px}@media (prefers-reduced-motion: reduce){.media-lightbox,.media-lightbox__media,.media-lightbox__thumb{animation:none;transition:none}}.media-view{width:100%;max-width:100%;min-width:0;overflow-x:clip}.media-view__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);min-width:0}.media-view__header-main{min-width:0;flex:1 1 16rem}.media-view__header-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex-shrink:0}.media-view__back{display:inline-flex;align-items:center;min-height:44px;margin:0 0 8px;padding:8px 14px;border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);background:var(--color-surface-card);color:var(--color-heading);font:inherit;font-size:var(--font-size-md);font-weight:700;cursor:pointer;transition:background .2s ease,border-color .2s ease}.media-view__back:hover{background:var(--color-surface);border-color:color-mix(in srgb,var(--color-brand) 35%,var(--color-neutral-border))}.media-view__muted{color:var(--color-text-muted)}.media-view__albums-scroller{width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:4px}.media-view__albums-row{display:flex;gap:14px;width:max-content;max-width:none;scroll-snap-type:x mandatory}.media-view__album-item{flex:0 0 auto;scroll-snap-align:start;width:220px}@media (min-width: 769px){.media-view__albums-scroller{overflow:visible;padding-bottom:0}.media-view__albums-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));width:100%;gap:16px;scroll-snap-type:none}.media-view__album-item{width:auto}}.media-view__upload-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-weight:700;font-size:.85rem;cursor:pointer}.media-view__upload-btn input{display:none}.media-view__upload-btn:has(input:disabled){opacity:.55;cursor:not-allowed}.media-view__queue{margin:0 0 16px;padding:12px 14px;border:1px solid var(--color-neutral-border);border-radius:var(--radius-md, 12px);background:var(--color-surface-card, var(--color-surface));min-width:0}.media-view__queue-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.media-view__queue-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0}.media-view__queue-summary strong{font-size:1.05rem}.media-view__queue-summary span{color:var(--color-text-muted);font-size:.9rem}.media-view__queue-actions{display:flex;flex-wrap:wrap;gap:8px}.media-view__queue-toggle,.media-view__queue-cancel-all,.media-view__queue-row-btn{min-height:34px;padding:0 12px;border-radius:999px;border:1px solid var(--color-neutral-border);background:var(--color-surface);color:var(--color-heading);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.media-view__queue-cancel-all{border-color:color-mix(in srgb,var(--color-error, #c0392b) 45%,var(--color-neutral-border));color:var(--color-error, #c0392b)}.media-view__queue-bar{margin-top:10px;height:6px;border-radius:999px;background:color-mix(in srgb,var(--color-neutral-border) 70%,transparent);overflow:hidden}.media-view__queue-bar-fill{height:100%;border-radius:inherit;background:var(--color-primary, #c45c26);transition:width .2s linear}.media-view__queue-meta{margin-top:6px;color:var(--color-text-muted);font-size:.8rem}.media-view__queue-list{list-style:none;margin:12px 0 0;padding:0;max-height:280px;overflow:auto;display:flex;flex-direction:column;gap:6px}.media-view__queue-row{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:6px 8px;border-radius:10px;background:color-mix(in srgb,var(--color-surface) 65%,var(--color-neutral-border))}.media-view__queue-thumb{width:40px;height:40px;border-radius:8px;object-fit:cover;background:var(--color-tertiary);display:block}.media-view__queue-thumb--empty{background:linear-gradient(110deg,var(--color-skeleton-start, #ddd) 25%,var(--color-skeleton-end, #eee) 45%,var(--color-skeleton-start, #ddd) 65%);background-size:200% 100%;animation:media-view-shimmer 1.2s ease-in-out infinite}.media-view__queue-file{min-width:0;display:flex;flex-direction:column;gap:2px}.media-view__queue-name{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-view__queue-status{font-size:.75rem;color:var(--color-text-muted)}.media-view__queue-row-btn{min-height:30px;padding:0 10px;font-size:.75rem}.media-view__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;min-width:0}.media-view__tile{position:relative;margin:0;aspect-ratio:1;overflow:hidden;border-radius:var(--border-radius-md);background:var(--color-tertiary)}.media-view__tile-open{display:block;width:100%;height:100%;margin:0;padding:0;border:none;background:transparent;cursor:zoom-in}.media-view__tile img,.media-view__tile video,.media-view__tile-open img,.media-view__tile-open video{width:100%;height:100%;object-fit:cover;display:block}.media-view__tile-open:focus-visible{outline:2px solid var(--color-brand, #c45c26);outline-offset:-2px}.media-view__tile-remove{position:absolute;top:6px;right:6px;width:28px;height:28px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:18px;line-height:1;cursor:pointer}.media-view__tile--upload{background:linear-gradient(110deg,var(--color-skeleton-start) 25%,var(--color-skeleton-end) 45%,var(--color-skeleton-start) 65%);background-size:200% 100%;animation:media-view-shimmer 1.2s ease-in-out infinite}.media-view__tile--error{animation:none;outline:1px solid color-mix(in srgb,var(--color-error) 55%,transparent)}.media-view__tile-preview{opacity:.45}.media-view__upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:10px;background:linear-gradient(180deg,transparent 30%,rgba(20,12,16,.62) 100%)}.media-view__upload-bar{height:4px;border-radius:999px;background:#ffffff47;overflow:hidden}.media-view__upload-bar-fill{height:100%;border-radius:inherit;background:var(--color-bege, #eee8e2);transition:width .15s linear}.media-view__upload-meta{display:flex;justify-content:space-between;gap:8px;color:#fff;font-size:11px;font-weight:600;line-height:1.2}.media-view__upload-cancel{align-self:flex-start;min-height:28px;padding:0 10px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:#00000059;color:#fff;font:inherit;font-size:12px;font-weight:700;cursor:pointer}@keyframes media-view-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.modal-content.tournament-entry-modal__dialog{max-width:min(440px,calc(100vw - 32px));width:100%;padding:28px 30px}.tournament-entry-modal__title{margin:0 36px 6px 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.tournament-entry-modal__subtitle{margin:0 0 var(--spacing-xl);font-size:.95rem;color:var(--color-brand);opacity:.75}.tournament-entry-modal__note{margin:0 0 var(--spacing-md);font-size:.95rem;line-height:1.45;opacity:.8}.tournament-entry-modal__form{display:flex;flex-direction:column;gap:var(--spacing-md)}.tournament-entry-modal__label{display:flex;flex-direction:column;gap:8px;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-coffee-milk, #a89890)}.tournament-entry-modal__select{width:100%;border:1px solid color-mix(in srgb,var(--color-brand) 16%,transparent);border-radius:8px;background:var(--color-surface, #fff);color:var(--color-text);padding:12px 14px;font:inherit;font-size:1rem;text-transform:none;letter-spacing:normal}.tournament-entry-modal__hint{margin:0;font-size:.9rem;line-height:1.4;opacity:.7}.tournament-entry-modal__mode{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:10px;background:color-mix(in srgb,var(--color-brand) 8%,transparent)}.tournament-entry-modal__mode-btn{border:0;border-radius:8px;padding:10px 8px;font:inherit;font-size:.9rem;font-weight:500;color:var(--color-text);background:transparent;cursor:pointer;opacity:.75}.tournament-entry-modal__mode-btn--active{background:var(--color-surface, #fff);color:var(--color-heading, var(--color-brand));opacity:1;box-shadow:0 1px 2px color-mix(in srgb,var(--color-text) 10%,transparent)}.tournament-entry-modal__mode-btn:disabled{cursor:not-allowed;opacity:.5}.tournament-entry-modal__invite{display:flex;flex-direction:column;gap:10px;margin:0 0 var(--spacing-xl);padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.tournament-entry-modal__invite-link{display:block;padding:10px 12px;border-radius:8px;background:var(--color-surface, #fff);font-size:.82rem;word-break:break-all;color:var(--color-brand)}.tournament-entry-modal__facts{display:flex;flex-direction:column;gap:12px;margin:0 0 var(--spacing-xl);padding:0}.tournament-entry-modal__facts>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px 16px}.tournament-entry-modal__facts dt{margin:0;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-coffee-milk, #a89890)}.tournament-entry-modal__facts dd{margin:0;font-size:1.05rem;font-weight:500;color:var(--color-heading, var(--color-brand))}.tournament-entry-modal__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px}.tournament-entry-modal__error{margin:0;color:var(--color-error, #c62828);font-size:.9rem}@media (max-width: 480px){.tournament-entry-modal__facts>div{grid-template-columns:1fr;gap:4px}.tournament-entry-modal__actions{flex-direction:column-reverse}.tournament-entry-modal__actions>*{width:100%}}.modal-content.tournament-modal__dialog{max-width:min(600px,calc(100vw - 32px));width:100%;max-height:min(90dvh,920px);padding:28px 30px;display:flex;flex-direction:column;overflow:hidden}.tournament-modal{display:flex;flex-direction:column;min-height:0;flex:1}.tournament-modal__title{flex-shrink:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xl);padding-right:36px}.tournament-modal__form{display:flex;flex-direction:column;min-height:0;flex:1}.tournament-modal__body{display:flex;flex-direction:column;gap:var(--spacing-md);min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.tournament-modal__group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.tournament-modal__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.tournament-modal__input,.tournament-modal__select,.tournament-modal__textarea{padding:var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-sm);outline:none;transition:border-color var(--transition-fast);width:100%;font:inherit}.tournament-modal__textarea{min-height:80px;resize:vertical}.tournament-modal__input:focus,.tournament-modal__select:focus,.tournament-modal__textarea:focus{border-color:var(--color-primary)}.tournament-modal__input[type=number]{-moz-appearance:textfield}.tournament-modal__input[type=number]::-webkit-outer-spin-button,.tournament-modal__input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tournament-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.tournament-modal__slug-row{display:flex;align-items:stretch;gap:0;border:1px solid var(--color-neutral-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);overflow:hidden}.tournament-modal__slug-prefix{flex-shrink:0;display:flex;align-items:center;padding:0 var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);background:color-mix(in srgb,var(--color-neutral-border) 35%,transparent);border-right:1px solid var(--color-neutral-border);white-space:nowrap}.tournament-modal__slug-row .tournament-modal__input{border:none;border-radius:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.tournament-modal__slug-row:focus-within{border-color:var(--color-primary)}.tournament-modal__slug-row--disabled{opacity:.55;pointer-events:none}.tournament-modal__slug-row--disabled .tournament-modal__input{background:transparent}.tournament-modal__hint{font-size:.8rem;color:var(--color-text-secondary);line-height:1.4}.tournament-modal__hint code{font-size:inherit;word-break:break-all}.tournament-modal__error{color:var(--color-danger);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-md);background-color:var(--color-danger-light);border-radius:var(--border-radius-md)}.tournament-modal__actions{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-border);padding-top:var(--spacing-lg)}.tournament-modal__actions-right{display:flex;gap:10px;margin-left:auto}@media (max-width: 500px){.modal-content.tournament-modal__dialog{max-width:none;max-height:calc(100dvh - 24px);padding:20px 16px 16px;border-radius:20px}.tournament-modal__title{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.tournament-modal__row{grid-template-columns:1fr}.tournament-modal__actions{flex-direction:column-reverse;align-items:stretch}.tournament-modal__actions-right{margin-left:0;width:100%}.tournament-modal__actions-right>*{flex:1}}.tournament-invites-section{margin-bottom:var(--spacing-xl, 24px)}.tournament-invites-section__frame{background:var(--color-surface, #fff);border:1px solid color-mix(in srgb,var(--color-text, #2a2420) 14%,transparent);border-radius:16px;padding:16px 18px 12px;box-shadow:0 1px color-mix(in srgb,var(--color-text, #2a2420) 4%,transparent)}.tournament-invites-section__title{margin:0;font-size:var(--font-size-lg, 1.125rem);font-weight:600;color:var(--color-text)}.tournament-invites-section__subtitle{margin:4px 0 14px;font-size:.92rem;line-height:1.35;color:var(--color-text-secondary, var(--color-text));opacity:.8}.tournament-invites-section__list{display:flex;flex-direction:column;gap:18px}.tournament-invites-section__group-title{display:inline-flex;align-items:center;gap:8px;margin:0 0 6px;padding:0;border:0;background:none;font:inherit;font-size:.98rem;font-weight:600;color:var(--color-text);text-align:left;cursor:pointer}.tournament-invites-section__group-title:hover{color:var(--color-brand, var(--color-text))}.tournament-invites-section__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.4em;height:1.4em;padding:0 6px;border-radius:999px;font-size:.75rem;font-weight:600;line-height:1;color:var(--color-text-secondary, var(--color-text));background:color-mix(in srgb,var(--color-text) 8%,transparent)}.tournament-invites-section__rows{display:flex;flex-direction:column;gap:8px}.tournament-invites-section__rows .reg-player-item{margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--color-text, #2a2420) 12%,transparent);border-radius:12px;background:color-mix(in srgb,var(--color-bg, #f7f4ef) 70%,var(--color-surface, #fff))}.tournament-invites-section__rows .reg-player-item:last-child{border-bottom:1px solid color-mix(in srgb,var(--color-text, #2a2420) 12%,transparent)}.tournaments-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.tournaments-header__main{min-width:0;flex:1 1 16rem}.tournaments-view__groups{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-top:var(--spacing-md)}.tournaments-view__list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.tournaments-view__empty{margin-top:var(--spacing-md);opacity:.75}.tournaments-view__section-title{display:flex;align-items:baseline;gap:8px;margin:0;font-size:.95rem;font-weight:600;color:var(--color-heading, var(--color-brand))}.tournaments-view__section-title--muted,.tournaments-view__archive-toggle{color:var(--color-coffee-milk, #b5a7a6)}.tournaments-view__section-count,.tournaments-view__archive-count{font-size:.85rem;font-weight:500;opacity:.7}.tournaments-view__archive-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:none;background:transparent;cursor:pointer;font:inherit}.tournaments-view__archive-title{font-size:.95rem;font-weight:600;letter-spacing:.01em}.tournaments-view__archive-chevron{margin-left:auto;flex-shrink:0;transform:rotate(0);transition:transform .3s cubic-bezier(.22,1,.36,1)}.tournaments-view__archive-chevron--open{transform:rotate(180deg)}.tournaments-view__archive-collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.22,1,.36,1)}.tournaments-view__archive-collapse:not(.tournaments-view__archive-collapse--open){pointer-events:none}.tournaments-view__archive-collapse--open{grid-template-rows:1fr}.tournaments-view__archive-inner{overflow:hidden;min-height:0}.club-rating__empty{margin-top:var(--spacing-md);opacity:.75}.club-rating__scroll{margin-top:var(--spacing-md);overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent);border-radius:var(--border-radius-md, 12px);background:var(--color-surface, #fff)}.club-rating__table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm, .9rem)}.club-rating__table th,.club-rating__table td{padding:10px 12px;text-align:center;border-bottom:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent)}.club-rating__table th{font-weight:600;font-size:.8rem;letter-spacing:.02em;color:color-mix(in srgb,var(--color-text) 75%,transparent);background:color-mix(in srgb,var(--color-brand) 4%,var(--color-surface, #fff))}.club-rating__table tbody tr.club-rating__row{cursor:pointer;transition:background .12s ease}.club-rating__table tbody tr.club-rating__row:hover td{background:color-mix(in srgb,var(--color-brand) 8%,var(--color-surface, #fff))}.club-rating__table tbody tr.club-rating__row--open td,.club-rating__table tbody tr.club-rating__row--me td{background:color-mix(in srgb,var(--color-brand) 12%,var(--color-surface, #fff))}.club-rating__table tbody tr:last-child td{border-bottom:0}.club-rating__num{width:44px;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.club-rating__name{text-align:left!important;font-weight:500;min-width:140px}.club-rating__me-badge{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;font-size:.72rem;font-weight:600;color:color-mix(in srgb,var(--color-brand) 85%,#000);background:color-mix(in srgb,var(--color-brand) 16%,transparent)}.club-rating__points{font-weight:700;font-variant-numeric:tabular-nums}.club-rating__history-row td{padding:0 12px 12px;text-align:left!important;background:color-mix(in srgb,var(--color-brand) 4%,var(--color-surface, #fff))}.club-rating__history{list-style:none;margin:0;padding:4px 0 0;display:flex;flex-direction:column;gap:8px}.club-rating__history-item{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:var(--color-surface, #fff);border:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.club-rating__history-link{border:0;background:none;padding:0;text-align:left;font:inherit;font-weight:600;color:var(--color-brand);cursor:pointer}.club-rating__history-link:hover{text-decoration:underline}.club-rating__history-meta{font-size:.82rem;color:color-mix(in srgb,var(--color-text) 65%,transparent)}.club-rating__history-note,.club-rating__history-error{margin:8px 0 0;font-size:.85rem}.club-rating__history-error{color:var(--color-danger, #b00020)}.stats-view{min-width:0}.stats-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:var(--spacing-lg)}.stats-chips{display:flex;flex-wrap:wrap;gap:6px}.stats-chip{padding:8px 12px;border:1px solid var(--color-neutral-border);border-radius:10px;background:var(--color-surface-card, #f6f4f2);color:var(--color-text-muted);font:inherit;font-size:var(--font-size-sm);font-weight:600;cursor:pointer}.stats-chip:hover{border-color:color-mix(in srgb,var(--color-brand) 35%,var(--color-neutral-border));color:var(--color-brand)}.stats-chip--active{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-white)}.stats-chip--active:hover{color:var(--color-white)}.stats-check{display:inline-flex;align-items:center;gap:8px;font-size:var(--font-size-sm);color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.stats-check input{width:16px;height:16px;accent-color:var(--color-brand)}.stats-empty{margin:var(--spacing-md) 0 0;color:var(--color-text-muted)}.stats-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:var(--spacing-lg)}.stats-card{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;border-radius:12px;background:var(--color-surface-card, #f6f4f2);border:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.stats-card__label,.stats-card__hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.stats-card__value{font-size:1.35rem;font-weight:800;letter-spacing:-.03em;color:var(--color-heading);font-variant-numeric:tabular-nums}.stats-section{margin-bottom:var(--spacing-xl)}.stats-section__title{margin:0 0 12px;font-size:var(--font-size-lg);font-weight:700;color:var(--color-heading)}.stats-heatmap-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.stats-heatmap{width:100%;min-width:420px;border-collapse:separate;border-spacing:4px;font-size:var(--font-size-xs)}.stats-heatmap th{font-weight:600;color:var(--color-text-muted);text-align:center}.stats-heatmap__time{text-align:left!important;padding-right:8px;white-space:nowrap;font-variant-numeric:tabular-nums}.stats-heatmap__cell--none{height:42px}.stats-heatmap__swatch{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:48px;height:42px;padding:3px 2px;border-radius:8px;font-weight:700;font-size:.72rem;line-height:1.1;font-variant-numeric:tabular-nums}.stats-heatmap__swatch-sub{font-size:.62rem;font-weight:600;opacity:.78}.stats-heatmap__swatch--empty,.stats-slot__fill--empty{background:color-mix(in srgb,var(--color-brand) 8%,var(--color-bege));color:var(--color-text-muted)}.stats-heatmap__swatch--low,.stats-slot__fill--low{background:color-mix(in srgb,var(--color-coffee-milk) 70%,var(--color-bege));color:var(--color-brand)}.stats-heatmap__swatch--mid,.stats-slot__fill--mid{background:var(--color-yellow);color:var(--color-brand)}.stats-heatmap__swatch--high,.stats-slot__fill--high{background:color-mix(in srgb,var(--color-blue) 55%,var(--color-bege));color:var(--color-dark-coffee)}.stats-heatmap__swatch--full,.stats-slot__fill--full{background:var(--color-brand);color:var(--color-white)}.stats-legend{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}.stats-legend .stats-heatmap__swatch{flex-direction:row;min-width:58px;height:24px;font-size:.7rem}.stats-legend-note{margin:8px 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.stats-slots{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.stats-slot{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px 14px;border-radius:12px;background:var(--color-surface-card, #f6f4f2);border:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.stats-slot--thin{opacity:.7}.stats-slot--reserve{border-color:color-mix(in srgb,var(--color-yellow) 55%,var(--color-brand) 12%)}.stats-slot__rank{padding-top:2px;color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-weight:600}.stats-slot__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.stats-slot__title{font-size:var(--font-size-md);color:var(--color-heading)}.stats-slot__percent{font-weight:800;font-variant-numeric:tabular-nums;color:var(--color-heading);text-align:right;white-space:nowrap}.stats-slot__percent-sub{font-weight:600;color:var(--color-text-muted)}.stats-slot__bar{margin-top:8px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--color-brand) 8%,var(--color-bege));overflow:hidden}.stats-slot__fill{display:block;height:100%;border-radius:inherit}.stats-slot__meta,.stats-slot__demand{margin:8px 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.stats-slot__demand{color:var(--color-brand);font-weight:600}@media (max-width: 900px){.stats-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.stats-summary{grid-template-columns:1fr}}.attendance-search{min-width:180px;flex:1;max-width:280px;padding:8px 12px;border:1px solid var(--color-neutral-border);border-radius:10px;background:var(--color-surface-card, #f6f4f2);color:var(--color-heading);font:inherit;font-size:var(--font-size-sm)}.attendance-search:focus{outline:2px solid color-mix(in srgb,var(--color-brand) 35%,transparent);outline-offset:1px}.attendance-sheet{max-height:min(70vh,720px);overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent);border-radius:12px;background:var(--color-surface, #fff)}.attendance-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-sm)}.attendance-table th,.attendance-table td{padding:0;border-bottom:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent);border-right:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;background:var(--color-surface, #fff)}.attendance-table thead th{position:sticky;top:0;z-index:3;background:color-mix(in srgb,var(--color-brand) 6%,var(--color-surface, #fff));box-shadow:0 1px color-mix(in srgb,var(--color-brand) 12%,transparent)}.attendance-name{position:sticky;left:0;z-index:2;min-width:180px;max-width:240px;text-align:left!important;font-weight:600;overflow:hidden;text-overflow:ellipsis;box-shadow:1px 0 color-mix(in srgb,var(--color-brand) 12%,transparent)}.attendance-table thead .attendance-name{z-index:5;padding:0}.attendance-table tbody .attendance-name{padding:0}.attendance-table tfoot .attendance-name{padding:8px 12px}.attendance-total{position:sticky;right:0;z-index:2;min-width:72px;font-weight:800;background:color-mix(in srgb,var(--color-brand) 8%,var(--color-surface, #fff))!important;box-shadow:-1px 0 color-mix(in srgb,var(--color-brand) 12%,transparent)}.attendance-table thead .attendance-total{z-index:5}.attendance-table tfoot th,.attendance-table tfoot td{position:sticky;bottom:0;z-index:3;background:color-mix(in srgb,var(--color-brand) 8%,var(--color-surface, #fff))!important;font-weight:800;box-shadow:0 -1px color-mix(in srgb,var(--color-brand) 12%,transparent)}.attendance-table tfoot .attendance-name,.attendance-table tfoot .attendance-total{z-index:6}.attendance-total-cell,.attendance-cell{min-width:64px;padding:8px 10px}.attendance-table tbody .attendance-cell,.attendance-table tbody .attendance-total{padding:0}.attendance-sort{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:36px;padding:8px 10px;border:none;background:transparent;color:inherit;font:inherit;font-weight:700;font-size:.78rem;letter-spacing:.01em;cursor:pointer}.attendance-sort:hover{color:var(--color-brand)}.attendance-sort__mark{min-width:.7em;font-size:.85em}.attendance-row--stripe .attendance-name,.attendance-row--stripe .attendance-cell,.attendance-row--stripe .attendance-total{background:color-mix(in srgb,var(--color-brand) 4%,var(--color-surface, #fff))}.attendance-row:hover .attendance-name,.attendance-row:hover .attendance-total,.attendance-row:hover .attendance-cell--zero{background:color-mix(in srgb,var(--color-yellow) 35%,var(--color-surface, #fff))}.attendance-cell--zero{color:transparent}.attendance-row .attendance-cell--low{background:color-mix(in srgb,var(--color-coffee-milk) 55%,var(--color-surface, #fff));color:var(--color-brand);font-weight:600}.attendance-row .attendance-cell--mid{background:var(--color-yellow);color:var(--color-brand);font-weight:700}.attendance-row .attendance-cell--high{background:var(--color-brand);color:var(--color-white);font-weight:800}.attendance-empty{padding:24px 12px!important;text-align:center!important;color:var(--color-text-muted)}.attendance-hint{color:var(--color-text-muted);font-size:var(--font-size-xs)}.attendance-dates{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.attendance-dates label{display:inline-flex;align-items:center;gap:8px;font-size:var(--font-size-sm);color:var(--color-text-muted)}.attendance-dates input{padding:7px 10px;border:1px solid var(--color-neutral-border);border-radius:10px;background:var(--color-surface-card, #f6f4f2);color:var(--color-heading);font:inherit;font-size:var(--font-size-sm)}.attendance-name-btn,.attendance-cell-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;width:100%;min-height:36px;padding:8px 10px;border:none;background:transparent;color:inherit;font:inherit;font-weight:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.attendance-name-btn{justify-content:flex-start;padding-left:12px;padding-right:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-cell-btn{justify-content:center}.attendance-name-btn:hover,.attendance-cell-btn:hover{text-decoration:underline}.design-system-modal-content.attendance-detail-modal{max-width:560px;max-height:min(88vh,840px);overflow:auto;padding:28px 22px 22px}.attendance-detail__head{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px;padding-right:28px}.attendance-detail__avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0;background:color-mix(in srgb,var(--color-brand) 12%,var(--color-surface-card, #f6f4f2))}.attendance-detail__avatar--fallback{display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--color-brand)}.attendance-detail__name{margin:0;font-size:1.25rem;color:var(--color-heading)}.attendance-detail__meta,.attendance-detail__period,.attendance-detail__empty,.attendance-detail__favorite{margin:4px 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.attendance-detail__error{margin:0 0 12px;color:var(--color-error, #b00020)}.attendance-detail__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.attendance-detail__stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:var(--color-surface-card, #f6f4f2)}.attendance-detail__stat span{font-size:var(--font-size-xs);color:var(--color-text-muted)}.attendance-detail__stat strong{font-variant-numeric:tabular-nums;color:var(--color-heading)}.attendance-detail__favorite{margin-bottom:12px;color:var(--color-brand);font-weight:600}.attendance-detail__breaks{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:14px}.attendance-break h5{margin:0 0 8px;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.attendance-break ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.attendance-break li{display:grid;grid-template-columns:minmax(0,1fr) minmax(48px,1.4fr) 1.5em;gap:8px;align-items:center;font-size:var(--font-size-xs)}.attendance-break__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-break__bar{display:block;height:6px;border-radius:999px;background:color-mix(in srgb,var(--color-brand) 10%,var(--color-bege, #f6f4f2));overflow:hidden}.attendance-break__bar span{display:block;height:100%;border-radius:inherit;background:var(--color-brand)}.attendance-break__count{font-variant-numeric:tabular-nums;font-weight:700;text-align:right}.attendance-detail__all{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0 0 12px;padding:0;border:none;background:none;color:var(--color-brand);font:inherit;font-weight:600;cursor:pointer}.attendance-detail__all:hover{text-decoration:underline}.attendance-detail__list-title{margin:0 0 8px;font-size:var(--font-size-sm);color:var(--color-heading)}.attendance-detail__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.attendance-detail__list li{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:var(--color-surface-card, #f6f4f2)}.attendance-detail__list strong{font-size:var(--font-size-sm);color:var(--color-heading)}.attendance-detail__list span{font-size:var(--font-size-xs);color:var(--color-text-muted)}@media (max-width: 640px){.attendance-detail__breaks,.attendance-detail__stats{grid-template-columns:1fr}}.sponsor-modal__title{margin:0 0 var(--spacing-lg);font-size:var(--font-size-xl, 1.4rem)}.sponsor-modal-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.sponsor-modal-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sponsor-modal-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.sponsor-modal-input,.sponsor-modal-textarea{padding:var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);background:var(--color-surface);font:inherit}.sponsor-modal-textarea{min-height:88px;resize:vertical}.sponsor-modal-photo-upload{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--spacing-lg);border:2px dashed var(--color-neutral-border);border-radius:var(--radius-md);cursor:pointer}.sponsor-modal-hint{font-size:.75rem;color:var(--color-text-muted)}.sponsor-modal-photo-preview{position:relative;height:140px;border-radius:var(--radius-md);overflow:hidden;background:var(--color-neutral-bg)}.sponsor-modal-photo-preview img{width:100%;height:100%;object-fit:contain}.sponsor-modal-photo-remove{position:absolute;top:8px;right:8px;width:32px;height:32px;border:none;border-radius:50%;background:var(--color-error);color:#fff;cursor:pointer}.sponsor-modal-check{display:flex;align-items:center;gap:8px;font-size:.9rem}.sponsor-modal-error{color:var(--color-error);font-size:var(--font-size-sm)}.sponsor-modal-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm)}.sponsors-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.sponsors-header__main{min-width:0;flex:1 1 16rem}.sponsors-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.sponsors-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface, #fff);border:1px solid var(--color-neutral-border, rgba(15, 23, 42, .08));border-radius:var(--radius-md, 16px)}.sponsors-card__image{width:96px;height:96px;object-fit:contain;border-radius:12px;background:var(--color-neutral-bg, #f6f7f9)}.sponsors-card__image--empty{display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--color-text-muted);text-align:center;padding:8px}.sponsors-card__body{min-width:0;display:flex;flex-direction:column;gap:6px}.sponsors-card__meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sponsors-card__tag{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary)}.sponsors-card__name{margin:0;font-size:1.05rem}.sponsors-card__blurb,.sponsors-card__url{margin:0;font-size:.85rem;color:var(--color-text-muted);overflow-wrap:anywhere}.sponsors-card__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.sponsors-empty{text-align:center;padding:var(--spacing-2xl);display:flex;flex-direction:column;align-items:center;gap:16px}@media (max-width: 640px){.sponsors-card{grid-template-columns:1fr}.sponsors-card__image,.sponsors-card__image--empty{width:100%;height:120px}}.staff-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:var(--spacing-md)}.staff-header__main{min-width:0;flex:1 1 16rem}.staff-search{display:flex;flex-direction:column;gap:6px;min-width:16rem;flex:1 1 16rem}.staff-search__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.staff-search__input{padding:var(--spacing-md);border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font:inherit}.staff-search-results{display:flex;flex-direction:column;gap:4px;margin-bottom:var(--spacing-lg);padding:var(--spacing-sm);border:1px solid var(--color-neutral-border);border-radius:var(--radius-md);background:var(--color-surface)}.staff-search-results__item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.staff-search-results__item:hover{background:var(--color-neutral-bg, #f6f7f9)}.staff-search-results__item strong,.staff-search-results__item span{display:block}.staff-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.staff-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface, #fff);border:1px solid var(--color-neutral-border, rgba(15, 23, 42, .08));border-radius:var(--radius-md, 16px)}.staff-card__avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--color-neutral-bg, #f6f7f9);font-weight:700;color:var(--color-text-secondary)}.staff-card__avatar--sm{width:40px;height:40px;font-size:.85rem;flex-shrink:0}.staff-card__avatar img{width:100%;height:100%;object-fit:cover}.staff-card__body{min-width:0;display:flex;flex-direction:column;gap:6px}.staff-card__name{margin:0;font-size:1.05rem}.staff-card__providers{margin:0;font-size:.85rem;color:var(--color-text-muted)}.staff-card__badges{display:flex;flex-wrap:wrap;gap:6px}.staff-card__actions{margin-top:4px}.staff-empty,.staff-muted{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-muted)}.staff-muted{padding:var(--spacing-md)}.staff-rights-modal__head{display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.staff-rights-modal__title{margin:0 0 4px;font-size:var(--font-size-xl, 1.4rem)}.staff-rights-modal__name{margin:0 0 4px;font-weight:700}.staff-rights-modal__roles,.staff-extras{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.staff-check{display:flex;align-items:flex-start;gap:10px;font-size:.95rem}.staff-check__hint{display:block;font-size:.8rem;color:var(--color-text-muted);font-weight:400}.staff-extras__toggle{align-self:flex-start;border:none;background:none;padding:0;color:var(--color-primary);font:inherit;font-weight:700;cursor:pointer}.staff-extras__group{display:flex;flex-direction:column;gap:8px}.staff-extras__title{margin:8px 0 0;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary)}.staff-rights-modal__summary{margin:var(--spacing-md) 0;font-size:.9rem;color:var(--color-text-secondary)}.staff-rights-modal__error{color:var(--color-error);font-size:var(--font-size-sm)}.staff-rights-modal__footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:var(--spacing-sm)}@media (max-width: 640px){.staff-card,.staff-rights-modal__head{grid-template-columns:1fr}}.landing2{--l2-ink: #36081d;--l2-ink-deep: #240512;--l2-ink-soft: #6b5560;--l2-paper: #eee8e2;--l2-app-bg: var(--color-bg, #ebe8e6);--l2-surface: var(--color-surface-card, #f6f4f2);--l2-milk: var(--color-coffee-milk, #b5a7a6);--l2-line: color-mix(in srgb, var(--l2-paper) 55%, transparent);--l2-mist: color-mix(in srgb, var(--l2-paper) 78%, transparent);--l2-mid-1: #4a1c2c;--l2-mid-2: #6b3d45;--l2-mid-3: #8f6a68;--l2-mid-4: #b59a93;--l2-mid-5: #d4c6bc;--l2-mid-6: #e3dbd4;--l2-radius-sm: 10px;--l2-radius-md: 14px;--l2-radius-lg: 18px;--l2-radius-xl: 22px;--safe-area-top: env(safe-area-inset-top, 0px);width:100%;max-width:100%;min-height:100vh;color:var(--l2-ink);font-family:Outfit,system-ui,sans-serif;overflow-x:clip;background:var(--l2-app-bg)}html:has(.landing2){overflow-x:clip;max-width:100%}body:has(.landing2){max-width:100%}.landing2 a{color:inherit;text-decoration:none}.landing2 a.landing2-btn--solid,.landing2 button.landing2-btn--solid{color:var(--l2-ink)}.landing2 a.landing2-btn--line,.landing2 button.landing2-btn--line,.landing2 a.landing2-nav__cta,.landing2 button.landing2-nav__cta{color:var(--l2-paper)}.landing2-nav{position:absolute;inset:0 0 auto;z-index:30;display:flex;align-items:center;gap:20px;padding:max(16px,env(safe-area-inset-top)) 24px 16px;color:var(--l2-paper);transition:opacity .35s ease,transform .35s ease}.landing2--app-docked .landing2-nav{opacity:0;pointer-events:none;transform:translateY(-8px)}.landing2-nav__brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.landing2-nav__mark{width:34px;height:34px;object-fit:contain;filter:brightness(0) invert(1)}.landing2-nav__logo{height:20px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}.landing2-nav__links{display:none;gap:22px;margin-left:auto;font-size:.92rem;font-weight:500}.landing2-nav__links a,.landing2-nav__text-btn{opacity:.82;transition:opacity .25s ease;background:none;border:none;padding:0;font:inherit;font-weight:500;color:inherit;cursor:pointer}.landing2-nav__links a:hover,.landing2-nav__text-btn:hover{opacity:1}.landing2-nav__account{margin-left:auto;position:relative;flex-shrink:0}.landing2-nav__cta{padding:10px 18px;border:1.5px solid var(--l2-line);border-radius:14px;background:transparent;color:var(--l2-paper);font:inherit;font-weight:600;font-size:.88rem;cursor:pointer;transition:background .25s ease,border-color .25s ease,transform .25s ease}.landing2-nav__cta:hover{background:color-mix(in srgb,var(--l2-paper) 12%,transparent);border-color:var(--l2-paper);transform:translateY(-1px)}.landing2-nav__skeleton{width:88px;height:38px;border-radius:14px;background:color-mix(in srgb,var(--l2-paper) 16%,transparent)}.landing2-account{position:relative}.landing2-account__trigger{display:inline-flex;align-items:center;gap:10px;padding:4px 10px 4px 4px;border:1.5px solid var(--l2-line);border-radius:14px;background:color-mix(in srgb,var(--l2-ink) 28%,transparent);color:var(--l2-paper);font:inherit;font-weight:600;font-size:.88rem;cursor:pointer}.landing2-account__avatar{display:grid;place-items:center;width:30px;height:30px;overflow:hidden;border-radius:10px;background:color-mix(in srgb,var(--l2-milk) 40%,var(--l2-ink));font-size:.8rem;font-weight:700}.landing2-account__avatar img{width:100%;height:100%;object-fit:cover}.landing2-account__name{max-width:9ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing2-account__menu{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;padding:8px;border-radius:18px;background:var(--l2-paper);color:var(--l2-ink);box-shadow:0 16px 40px color-mix(in srgb,var(--l2-ink) 28%,transparent);z-index:40}.landing2-account__menu a,.landing2-account__menu button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:transparent;text-align:left;font:inherit;font-size:.92rem;font-weight:500;color:var(--l2-ink);cursor:pointer}.landing2-account__menu a:hover,.landing2-account__menu button:hover{background:color-mix(in srgb,var(--l2-milk) 28%,var(--l2-surface))}@media (min-width: 820px){.landing2-nav__links{display:flex}}.landing2-hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;text-align:center;color:var(--l2-paper);background:var(--l2-ink-deep);overflow:hidden}.landing2-hero__media{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.landing2-hero__img{width:100%;height:100%;object-fit:cover;object-position:center 28%;transform:scale(1.08);filter:saturate(.7) contrast(1.05) brightness(.72) sepia(.22);animation:landing2-ken 22s ease-in-out infinite alternate}.landing2-hero__veil{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 55% at 50% 32%,color-mix(in srgb,var(--l2-ink) 18%,transparent),color-mix(in srgb,var(--l2-ink) 68%,transparent) 68%,color-mix(in srgb,var(--l2-ink-deep) 92%,transparent)),linear-gradient(180deg,color-mix(in srgb,var(--l2-ink) 48%,transparent) 0%,transparent 38%,color-mix(in srgb,var(--l2-ink-deep) 55%,transparent) 72%,var(--l2-ink-deep) 100%)}.landing2-hero__content{position:relative;z-index:1;width:min(720px,100%);margin:0 auto;padding:clamp(88px,12vh,120px) 24px clamp(20px,3vh,32px);display:flex;flex-direction:column;align-items:center;flex-shrink:0}.landing2-hero__brand{display:block;height:clamp(44px,8vw,72px);width:auto;margin-bottom:20px;filter:brightness(0) invert(1);animation:landing2-rise 1s cubic-bezier(.22,1,.36,1) both}.landing2-hero__headline{font-family:Bricolage Grotesque,Outfit,sans-serif;font-weight:800;font-size:clamp(2.1rem,6.2vw,3.8rem);line-height:.98;letter-spacing:-.035em;margin:0 0 12px;max-width:12ch;animation:landing2-rise 1s .1s cubic-bezier(.22,1,.36,1) both}.landing2-hero__lead{margin:0 0 22px;max-width:36ch;font-size:clamp(.95rem,2vw,1.1rem);line-height:1.45;color:var(--l2-mist);animation:landing2-rise 1s .18s cubic-bezier(.22,1,.36,1) both}.landing2-hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;animation:landing2-rise 1s .26s cubic-bezier(.22,1,.36,1) both}.landing2-hero__feed{position:relative;z-index:1;width:100%;margin-top:auto;padding:8px 0 clamp(20px,4vh,36px);scroll-margin-top:16px;animation:landing2-rise 1s .32s cubic-bezier(.22,1,.36,1) both}.landing2-hero__feed:empty{display:none}.landing2-hero__more{display:flex;justify-content:center;padding:18px 24px 8px;background:var(--l2-ink-deep)}.landing2-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:none;border-radius:14px;font:inherit;font-weight:700;font-size:.98rem;cursor:pointer;transition:transform .25s ease,background .25s ease,border-color .25s ease}.landing2-btn--solid{background:var(--l2-paper);color:var(--l2-ink)}.landing2-btn--solid:hover{transform:translateY(-2px);background:#fff}.landing2-btn--line{border:1.5px solid var(--l2-line);color:var(--l2-paper);background:transparent}.landing2-btn--line:hover{border-color:var(--l2-paper);background:color-mix(in srgb,var(--l2-paper) 10%,transparent)}.landing2-gallery__viewport{overflow:hidden}.landing2-gallery__track{display:flex;width:max-content;animation:landing2-marquee 48s linear infinite}.landing2-gallery__track--paused,.landing2-gallery__viewport:hover .landing2-gallery__track{animation-play-state:paused}.landing2-gallery__shot--skeleton{background:color-mix(in srgb,var(--l2-paper) 12%,transparent);animation:landing2-pulse 1.2s ease-in-out infinite}.landing2-gallery__group{display:flex;align-items:flex-start;gap:12px;padding-right:12px;padding-top:4px;padding-bottom:8px}.landing2-gallery__shot{margin:0;flex:0 0 auto;width:min(168px,42vw);overflow:hidden;border-radius:18px;aspect-ratio:3 / 4;background:color-mix(in srgb,var(--l2-ink) 40%,transparent)}.landing2-gallery__shot-btn{display:block;width:100%;height:100%;margin:0;padding:0;border:none;background:transparent;cursor:pointer;color:inherit}.landing2-gallery__shot-btn:focus-visible{outline:2px solid var(--l2-paper);outline-offset:-3px}.landing2-gallery__shot--offset{aspect-ratio:4 / 5;margin-top:18px}.landing2-gallery__shot img{width:100%;height:100%;object-fit:cover;filter:sepia(.18) saturate(.85);transition:transform .7s cubic-bezier(.22,1,.36,1),filter .35s ease;pointer-events:none}.landing2-gallery__shot:hover img{transform:scale(1.05);filter:sepia(.08) saturate(.95)}@media (min-width: 760px){.landing2-gallery__shot{width:min(200px,22vw)}.landing2-gallery__shot--offset{margin-top:22px}}@media (min-width: 1100px){.landing2-gallery__shot{width:220px}}.landing2-bridge{margin-top:-1px;max-width:100%;overflow-x:clip;height:clamp(72px,12vw,140px);background:linear-gradient(in oklab,var(--l2-ink-deep) 0%,var(--l2-ink) 14%,var(--l2-mid-1) 28%,var(--l2-mid-2) 42%,var(--l2-mid-3) 56%,var(--l2-mid-4) 70%,var(--l2-mid-5) 82%,var(--l2-mid-6) 92%,var(--l2-app-bg) 100%);scroll-margin-top:16px}@supports not (background: linear-gradient(in oklab,red,blue)){.landing2-bridge{background:linear-gradient(180deg,var(--l2-ink-deep) 0%,var(--l2-ink) 12%,var(--l2-mid-1) 24%,var(--l2-mid-2) 36%,var(--l2-mid-3) 48%,var(--l2-mid-4) 60%,var(--l2-mid-5) 72%,var(--l2-mid-6) 84%,color-mix(in srgb,var(--l2-mid-6) 40%,var(--l2-app-bg)) 92%,var(--l2-app-bg) 100%)}}.landing2-app{--landing2-app-bar-content: 54px;position:relative;scroll-margin-top:0;margin-top:-1px;min-height:100svh;max-width:100%;background:var(--l2-app-bg);color:var(--l2-ink);padding-bottom:32px}.landing2-app__bar{position:sticky;top:0;z-index:25;display:flex;align-items:center;gap:12px;min-height:calc(var(--landing2-app-bar-content) + 12px);padding:12px 14px;background:var(--l2-app-bg);border-bottom:1px solid color-mix(in srgb,var(--l2-ink) 8%,transparent)}.landing2--app-docked .landing2-app{padding-top:calc(var(--landing2-app-bar-content) + max(12px,env(safe-area-inset-top,0px)))}.landing2--app-docked .landing2-app__bar{position:fixed;top:0;left:0;right:0;width:100%;max-width:100%;box-sizing:border-box;height:calc(var(--landing2-app-bar-content) + max(12px,env(safe-area-inset-top,0px)));padding-top:max(12px,env(safe-area-inset-top,0px));padding-bottom:12px;padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}.landing2-app__burger{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;flex-shrink:0;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--l2-ink) 12%,transparent);border-radius:var(--l2-radius-md);background:var(--l2-surface);display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer;transition:border-color .2s ease,background .2s ease}.landing2-app__burger:hover{border-color:color-mix(in srgb,var(--l2-ink) 28%,transparent)}.landing2-app__burger>span:not(.landing2-app__count-badge){display:block;width:18px;height:1.5px;background:var(--l2-ink)}.landing2-app__current{flex:1;min-width:0;margin:0;font-family:Bricolage Grotesque,Outfit,sans-serif;font-weight:700;font-size:1rem;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .22s ease,transform .22s ease}.landing2-app__current--visible{opacity:1;transform:translateY(0);pointer-events:auto}.landing2-app__menu-measure{position:fixed;top:0;left:-9999px;display:flex;gap:4px;width:max-content;visibility:hidden;pointer-events:none;z-index:-1}.landing2-app__menu{display:none;align-items:center;gap:4px;flex:1;min-width:0;overflow:visible}.landing2-app__menu-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;flex-shrink:0;border:none;border-radius:var(--l2-radius-sm);background:transparent;color:var(--l2-ink-soft);font:inherit;font-weight:600;font-size:.92rem;padding:10px 14px;cursor:pointer;position:relative;transition:color .2s ease,background .2s ease;white-space:nowrap}.landing2-app__menu-btn:hover,.landing2-app__menu-btn--active{color:var(--l2-ink)}.landing2-app__menu-btn--active:after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;background:var(--l2-ink)}.landing2-app__count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 5px;border-radius:999px;background:#e11d48;color:#fff;font-size:.7rem;font-weight:800;line-height:1;letter-spacing:0;box-shadow:0 0 0 2px var(--l2-app-bg)}.landing2-app__burger .landing2-app__count-badge{position:absolute;top:-5px;right:-5px}.landing2-app__more{position:relative;flex-shrink:0}.landing2-app__more-btn{display:inline-flex;align-items:center;gap:6px}.landing2-app__more-chevron{font-size:.7rem;line-height:1;opacity:.65;transform:translateY(-.5px);transition:transform .2s ease}.landing2-app__more-btn--open .landing2-app__more-chevron{transform:translateY(-.5px) rotate(180deg)}.landing2-app__more-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:30;min-width:200px;padding:8px;border-radius:var(--l2-radius-lg);background:var(--l2-surface);border:1px solid color-mix(in srgb,var(--l2-ink) 10%,transparent);box-shadow:0 14px 36px color-mix(in srgb,var(--l2-ink) 14%,transparent)}.landing2-app__more-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px;border:none;border-radius:var(--l2-radius-sm);background:transparent;color:var(--l2-ink);font:inherit;font-size:.95rem;font-weight:500;text-align:left;cursor:pointer}.landing2-app__more-item:hover{background:color-mix(in srgb,var(--l2-ink) 5%,transparent)}.landing2-app__more-item--active{font-weight:700;background:color-mix(in srgb,var(--l2-ink) 7%,transparent)}.landing2-app__bar-actions{flex-shrink:0;margin-left:auto}.landing2-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:color-mix(in srgb,var(--l2-ink-deep) 45%,transparent);opacity:0;pointer-events:none;transition:opacity .28s ease}.landing2-drawer-backdrop--open{opacity:1;pointer-events:auto}.landing2-drawer{position:fixed;top:0;left:0;bottom:0;z-index:70;width:min(320px,86vw);display:flex;flex-direction:column;border-radius:0 var(--l2-radius-xl) var(--l2-radius-xl) 0;background:var(--l2-surface);color:var(--l2-ink);box-shadow:16px 0 48px color-mix(in srgb,var(--l2-ink-deep) 22%,transparent);transform:translate(-104%);transition:transform .32s cubic-bezier(.22,1,.36,1);padding:max(16px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom))}.landing2-drawer--open{transform:translate(0)}.landing2-drawer__head{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid color-mix(in srgb,var(--l2-ink) 8%,transparent)}.landing2-drawer__logo{height:28px;width:auto;object-fit:contain}.landing2-drawer__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-left:auto;width:40px;height:40px;border:none;border-radius:var(--l2-radius-sm);background:transparent;color:var(--l2-ink);font-size:1.6rem;line-height:1;cursor:pointer}.landing2-drawer__group{display:flex;flex-direction:column;gap:2px;padding:6px 0 4px}.landing2-drawer__group-label{margin:0;padding:8px 12px 4px;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--l2-ink-soft)}.landing2-drawer__link--nested{padding-left:22px;font-weight:500;font-size:.98rem}.landing2-drawer__nav{display:flex;flex-direction:column;gap:4px;padding:18px 0;flex:1;overflow-y:auto}.landing2-drawer__link{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:space-between;gap:10px;border:none;border-radius:var(--l2-radius-md);background:transparent;text-align:left;font:inherit;font-weight:600;font-size:1.02rem;letter-spacing:-.01em;color:var(--l2-ink-soft);padding:14px 12px;cursor:pointer;transition:background .2s ease,color .2s ease}.landing2-drawer__link:hover{color:var(--l2-ink);background:color-mix(in srgb,var(--l2-ink) 5%,transparent)}.landing2-drawer__link--active{color:var(--l2-ink);background:color-mix(in srgb,var(--l2-ink) 7%,transparent);box-shadow:inset 3px 0 0 var(--l2-ink)}.landing2-drawer__footer{padding-top:14px;border-top:1px solid color-mix(in srgb,var(--l2-ink) 8%,transparent)}.landing2-drawer__profile{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:12px;width:100%;padding:10px 8px;border:none;border-radius:var(--l2-radius-md);background:transparent;font:inherit;font-weight:600;color:var(--l2-ink);text-align:left;cursor:pointer}.landing2-drawer__login{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:none;border-radius:var(--l2-radius-md);background:var(--l2-ink);color:var(--l2-paper);font:inherit;font-weight:700;font-size:.95rem;padding:14px 16px;cursor:pointer}@media (min-width: 521px){.landing2-app__burger,.landing2-app__current{display:none}.landing2-app__menu{display:flex}.landing2-drawer,.landing2-drawer-backdrop{display:none}}.landing2-app__profile-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in srgb,var(--l2-ink) 14%,transparent);border-radius:14px;background:var(--l2-surface);color:var(--l2-ink);font:inherit;font-weight:600;font-size:.88rem;padding:8px 14px;cursor:pointer}.landing2-app__profile-link:hover{border-color:color-mix(in srgb,var(--l2-ink) 28%,transparent)}.landing2-app__user{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:10px;max-width:min(220px,42vw);padding:4px 12px 4px 4px;border:1px solid color-mix(in srgb,var(--l2-ink) 12%,transparent);border-radius:14px;background:var(--l2-surface);color:var(--l2-ink);font:inherit;cursor:pointer;text-align:left}.landing2-app__user:hover{border-color:color-mix(in srgb,var(--l2-ink) 28%,transparent)}.landing2-app__user-avatar{display:grid;place-items:center;width:32px;height:32px;overflow:hidden;flex-shrink:0;border-radius:10px;background:color-mix(in srgb,var(--l2-ink) 12%,var(--l2-surface));font-size:.8rem;font-weight:700}.landing2-app__user-avatar img{width:100%;height:100%;object-fit:cover}.landing2-app__user-name{font-size:.88rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 719px){.landing2-app__user-name{display:none}.landing2-app__user{gap:0;max-width:none;width:40px;height:40px;padding:0;border-radius:12px;align-items:center;justify-content:center}}.landing2-app__body{display:grid;gap:20px;padding:20px 16px 8px;max-width:1180px;width:100%;margin:0 auto;min-width:0;overflow-x:clip}@media (min-width: 960px){.landing2-app__body{grid-template-columns:244px minmax(0,1fr);gap:28px;padding:28px 24px 16px;align-items:start}}.landing2-sponsors{order:2;min-width:0}@media (min-width: 960px){.landing2-sponsors{order:0;position:sticky;top:72px}}@media (max-width: 959px){.landing2-sponsors--empty{display:none}}.landing2-sponsors__brand{display:none;margin-bottom:36px;padding:0 2px}@media (min-width: 960px){.landing2-sponsors__brand{display:block;margin-bottom:36px}}.landing2-sponsors__logo{display:block;width:100%;height:auto;object-fit:contain}.landing2-sponsors__title{font-family:Bricolage Grotesque,Outfit,sans-serif;font-size:1.2rem;font-weight:600;letter-spacing:-.03em;line-height:1.2;margin:0 0 12px;color:var(--l2-ink-soft)}@media (min-width: 960px){.landing2-sponsors__title{font-size:1.05rem;margin:0 0 10px}}.landing2-sponsors__stage{position:relative;min-height:108px}.landing2-sponsors__item{display:flex;flex-direction:row;align-items:center;gap:12px;padding:14px 14px 16px;background:var(--l2-surface);border:1px solid color-mix(in srgb,var(--l2-ink) 7%,transparent);opacity:0;pointer-events:none;transition:opacity .45s ease}@media (min-width: 960px){.landing2-sponsors__item{flex-direction:column;align-items:stretch;gap:4px}}.landing2-sponsors__item--active{opacity:1;pointer-events:auto}a.landing2-sponsors__item{text-decoration:none;color:inherit}.landing2-sponsors__image{display:block;width:auto;height:112px;max-width:none;flex-shrink:0;object-fit:contain}@media (min-width: 960px){.landing2-sponsors__image{width:calc(100% + 28px);max-width:none;height:auto;margin:-14px -14px 10px}}.landing2-sponsors__copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.landing2-sponsors__stage .landing2-sponsors__item:not(.landing2-sponsors__item--active){position:absolute;top:0;right:0;bottom:0;left:0}.landing2-sponsors__tag{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--l2-ink) 55%,var(--l2-milk))}.landing2-sponsors__name{font-family:Bricolage Grotesque,Outfit,sans-serif;font-size:.98rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.landing2-sponsors__blurb{font-size:.8rem;line-height:1.35;color:var(--l2-ink-soft)}.landing2-app__content{min-width:0;order:1}.landing2-app__stack{display:block}.landing2-app__panel{display:none}.landing2-app__panel--active{display:block;min-width:0;max-width:100%;overflow-x:clip;overflow-y:clip;overflow-anchor:none}.landing2-app .content-body{max-width:none;margin:0;min-width:0}.landing2-app .content-header,.landing2-app .content-body{animation:none}.landing2-app .content-title{color:var(--color-heading, var(--l2-ink));font-family:Bricolage Grotesque,Outfit,sans-serif}.landing2-app .content-subtitle{color:var(--l2-ink-soft)}.landing2-footer{display:grid;gap:18px;padding:32px 24px calc(32px + env(safe-area-inset-bottom));background:var(--l2-ink-deep);color:color-mix(in srgb,var(--l2-paper) 65%,var(--l2-milk));font-size:.92rem}.landing2-footer__brand{display:inline-flex;align-items:center;gap:10px;color:var(--l2-paper);font-family:Bricolage Grotesque,Outfit,sans-serif;font-weight:700}.landing2-footer__brand img{filter:brightness(0) invert(1)}.landing2-footer__links{display:flex;flex-wrap:wrap;gap:16px 22px}.landing2-footer__links a,.landing2-footer__links button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:0;font:inherit;color:inherit;cursor:pointer}.landing2-footer__links a:hover,.landing2-footer__links button:hover{color:var(--l2-paper)}.landing2-footer__legal{display:flex;flex-wrap:wrap;gap:12px 18px;grid-column:1 / -1}.landing2-footer__legal a{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:none}.landing2-footer__legal a:hover{color:var(--l2-paper)}.landing2-footer .legal-footer-meta,.landing2-footer__copy{margin:0;opacity:.55;font-size:.85rem}@media (min-width: 720px){.landing2-footer{grid-template-columns:1fr auto;align-items:center}}@keyframes landing2-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes landing2-marquee{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}@keyframes landing2-pulse{0%,to{opacity:.45}50%{opacity:.85}}@keyframes landing2-ken{0%{transform:scale(1.08) translateZ(0)}to{transform:scale(1.14) translate3d(1.2%,-1.2%,0)}}@media (prefers-reduced-motion: reduce){.landing2-hero__img,.landing2-hero__brand,.landing2-hero__headline,.landing2-hero__lead,.landing2-hero__actions,.landing2-hero__feed,.landing2-gallery__track{animation:none!important}.landing2-gallery__shot img{transition:none}}.tournament-admin-nav__backdrop,.tournament-admin-nav__close{display:none}.tournament-admin-nav__head{display:contents}.tournament-admin-nav__page-links{display:none}.tournament-admin-nav{display:flex;flex-direction:column;gap:12px;width:200px;flex-shrink:0;padding:4px 0}.tournament-admin-nav--guest{display:none}.tournament-admin-nav__label{margin:0 10px 2px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-coffee-milk, #a89890)}.tournament-admin-nav__list{display:flex;flex-direction:column;gap:4px}.tournament-admin-nav__item{width:100%;text-align:left;border:none;background:transparent;color:var(--color-brand);border-radius:10px;padding:10px 12px;font:inherit;font-size:.95rem;cursor:pointer;transition:background-color .15s ease}.tournament-admin-nav__item:hover{background:color-mix(in srgb,var(--color-brand) 6%,transparent)}.tournament-admin-nav__item--active{background:color-mix(in srgb,var(--color-primary) 14%,transparent);font-weight:600}@media (max-width: 860px){.tournament-admin-nav__backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:color-mix(in srgb,var(--color-brand) 35%,transparent);opacity:0;pointer-events:none;transition:opacity .28s ease}.tournament-admin-nav__backdrop--open{opacity:1;pointer-events:auto}.tournament-admin-nav__head{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.tournament-admin-nav__label{margin:0;flex:1}.tournament-admin-nav__close{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin:0;border:none;border-radius:10px;background:transparent;color:var(--color-brand);font-size:1.6rem;line-height:1;cursor:pointer}.tournament-admin-nav,.tournament-admin-nav--guest{display:flex;position:fixed;top:0;left:0;bottom:0;z-index:70;width:min(300px,86vw);padding:max(16px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom));background:var(--color-surface, var(--color-bg, #fff));box-shadow:16px 0 48px color-mix(in srgb,var(--color-brand) 18%,transparent);transform:translate(-104%);transition:transform .32s cubic-bezier(.22,1,.36,1);overflow-y:auto}.tournament-admin-nav--open{transform:translate(0)}.tournament-admin-nav__list{padding:14px 0 0}.tournament-admin-nav__item{padding:12px}.tournament-admin-nav__page-links{display:flex;flex-direction:column;gap:4px;margin-top:auto;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.tournament-admin-nav--guest .tournament-admin-nav__page-links{margin-top:8px;padding-top:0;border-top:none}.tournament-admin-nav__page-link{width:100%;text-align:left;border:none;background:transparent;color:var(--color-brand);border-radius:10px;padding:12px;font:inherit;font-size:.95rem;cursor:pointer}.tournament-admin-nav__page-link:hover{background:color-mix(in srgb,var(--color-brand) 6%,transparent)}}.tournament-divisions-editor{width:100%;display:flex;flex-direction:column;gap:14px;padding:4px 0 8px;border-bottom:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.tournament-divisions-editor__hint{margin:0;font-size:.95rem;line-height:1.4;opacity:.72}.tournament-divisions-editor__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tournament-divisions-editor__row,.tournament-divisions-editor__add{display:flex;align-items:center;gap:8px}.tournament-divisions-editor__input{flex:1;min-width:0;border:1px solid color-mix(in srgb,var(--color-brand) 16%,transparent);background:var(--color-surface, #fff);color:var(--color-text);border-radius:8px;padding:10px 12px;font:inherit;font-size:.95rem}.tournament-divisions-editor__input:focus{outline:2px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:1px}.tournament-divisions-editor__actions{display:inline-flex;gap:4px;flex-shrink:0}.tournament-divisions-editor__icon-btn{width:34px;height:34px;border:1px solid color-mix(in srgb,var(--color-brand) 14%,transparent);border-radius:8px;background:transparent;color:var(--color-brand);font:inherit;font-size:1rem;line-height:1;cursor:pointer}.tournament-divisions-editor__icon-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-brand) 6%,transparent)}.tournament-divisions-editor__icon-btn:disabled{opacity:.35;cursor:default}.tournament-divisions-editor__icon-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-error, #c62828) 12%,transparent);color:var(--color-error, #c62828)}.tournament-divisions-editor__error{margin:0;color:var(--color-error, #c62828);font-size:.9rem}@media (max-width: 640px){.tournament-divisions-editor__add{flex-direction:column;align-items:stretch}.tournament-divisions-editor__add button{width:100%}}.tournament-move-menu__trigger{min-height:34px;padding:0 12px;border-radius:999px;font-size:13px;width:auto;height:auto}.tournament-move-menu{position:fixed;z-index:80;min-width:200px;max-width:min(280px,calc(100vw - 16px));padding:6px;border-radius:12px;background:color-mix(in srgb,var(--color-bg, #fff) 94%,var(--color-text) 6%);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-text) 8%,transparent),0 10px 28px color-mix(in srgb,var(--color-text) 14%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tournament-move-menu__item{display:flex;align-items:center;gap:8px;width:100%;border:none;background:transparent;color:var(--color-text);text-align:left;border-radius:8px;padding:10px;font:inherit;font-size:.95rem;cursor:pointer}.tournament-move-menu__item:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 6%,transparent)}.tournament-move-menu__item--selected{font-weight:600;cursor:default}.tournament-move-menu__check{width:18px;height:18px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--color-brand)}.tournament-entries-mod{display:flex;flex-direction:column;gap:var(--spacing-xl, 24px)}.tournament-entries-mod__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.tournament-entries-mod__toolbar-note{margin:0;flex:1 1 220px;font-size:.92rem;line-height:1.4;opacity:.75}.tournament-entries-mod__section,.tournament-entries-mod__division{display:flex;flex-direction:column;gap:10px}.tournament-entries-mod__section-title,.tournament-entries-mod__division-title{margin:0;font-size:var(--font-size-lg, 1.1rem);font-weight:600;color:var(--color-text)}.tournament-entries-mod__division-title{display:flex;align-items:baseline;gap:10px;font-size:1.05rem}.tournament-entries-mod__division-count{font-size:.85rem;font-weight:500;opacity:.55}.tournament-entries-mod__note{margin:0;font-size:.95rem;line-height:1.4;opacity:.7}.tournament-entries-mod__card{background:var(--color-surface);border-radius:16px;padding:4px var(--spacing-lg, 20px) 8px}.tournament-entries-mod__rosters{display:flex;flex-direction:column;gap:20px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.tournament-entries-mod__section-head{display:flex;flex-direction:column;gap:10px}.tournament-entries-mod__glue-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tournament-entries-mod__glue-hint{flex:1 1 200px;font-size:.88rem;line-height:1.35;opacity:.75}.tournament-entries-mod__glue-pick{border:1px solid color-mix(in srgb,var(--color-brand) 22%,transparent);border-radius:8px;background:transparent;color:var(--color-text);font:inherit;font-size:.82rem;padding:6px 10px;cursor:pointer;white-space:nowrap}.tournament-entries-mod__glue-pick--on{background:color-mix(in srgb,var(--color-primary) 14%,transparent);border-color:color-mix(in srgb,var(--color-primary) 40%,transparent);font-weight:600}.tournament-entries-mod__glue-pick:disabled{opacity:.5;cursor:not-allowed}.tournament-lfp-section{margin:0 0 var(--spacing-xl, 24px)}.tournament-lfp-section__frame{background:var(--color-surface, #fff);border:1px solid color-mix(in srgb,var(--color-text, #2a2420) 14%,transparent);border-radius:16px;padding:16px 18px 12px;box-shadow:0 1px color-mix(in srgb,var(--color-text, #2a2420) 4%,transparent)}.tournament-lfp-section__title{margin:0;font-size:var(--font-size-lg, 1.125rem);font-weight:600;color:var(--color-text)}.tournament-lfp-section__subtitle{margin:4px 0 14px;font-size:.92rem;line-height:1.35;color:var(--color-text-secondary, var(--color-text));opacity:.8}.tournament-lfp-section__list{display:flex;flex-direction:column;gap:4px}.tournament-lfp-section__note{margin:0 0 8px;font-size:.92rem;opacity:.75}.tournament-lifecycle{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px}@media (max-width: 720px){.tournament-lifecycle{justify-content:stretch;width:100%}.tournament-lifecycle>*{flex:1 1 auto}}.tournament-start-blocked-modal{max-width:440px}.tournament-start-blocked-modal__title{margin:0 28px 10px 0;font-size:1.25rem;font-weight:700;line-height:1.3;color:var(--color-heading, var(--color-brand))}.tournament-start-blocked-modal__lead{margin:0 0 12px;font-size:.95rem;line-height:1.45;color:var(--color-text-muted, #667)}.tournament-start-blocked-modal__list{margin:0 0 22px;padding-left:1.2em;display:flex;flex-direction:column;gap:8px;font-size:.95rem;line-height:1.4;color:var(--color-heading, var(--color-brand))}.tournament-start-blocked-modal__actions{display:flex;flex-wrap:wrap;gap:10px}.tournament-start-blocked-modal__actions>*{flex:1 1 auto}.rr-matrix{display:flex;flex-direction:column;gap:12px}.rr-matrix--reloading{opacity:.55;pointer-events:none}.rr-matrix__hint{margin:0;font-size:.92rem;line-height:1.4;opacity:.75}.rr-matrix__note{margin:0;font-size:.95rem;opacity:.7}.rr-matrix__scroll{overflow:auto;max-width:100%;border-radius:14px;border:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);background:var(--color-surface, #fff)}.rr-matrix__table{border-collapse:separate;border-spacing:0;min-width:100%;font-size:.88rem}.rr-matrix__table--roster{min-width:240px;width:min(420px,100%)}.rr-matrix__table--roster .rr-matrix__row-head{display:flex;align-items:center;max-width:none}.rr-matrix__table--roster .rr-matrix__head-name{display:inline;overflow:visible;text-overflow:unset}.rr-matrix__corner,.rr-matrix__head,.rr-matrix__row-head{position:sticky;background:var(--color-surface, #fff);z-index:1;transition:background .12s ease}.rr-matrix__corner{left:0;z-index:3;min-width:140px;padding:10px 12px;text-align:left;font-weight:600;border-bottom:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent);border-right:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent)}.rr-matrix__head{top:0;z-index:2;min-width:88px;max-width:120px;padding:8px;text-align:center;font-weight:500;border-bottom:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent);border-right:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);vertical-align:bottom}.rr-matrix__head--hover,.rr-matrix__row-head--hover{background:color-mix(in srgb,var(--color-brand) 12%,var(--color-surface, #fff))}.rr-matrix__row-head--focus{background:color-mix(in srgb,var(--color-brand) 18%,var(--color-surface, #fff));box-shadow:inset 3px 0 color-mix(in srgb,var(--color-brand) 70%,transparent);cursor:default}.rr-matrix__row-head{left:0;z-index:2;min-width:140px;max-width:220px;padding:10px 12px;text-align:left;font-weight:500;border-right:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);vertical-align:middle}.rr-matrix__head-index{display:inline-block;min-width:1.5em;margin-right:8px;opacity:.45;font-variant-numeric:tabular-nums}.rr-matrix__head-name{display:block;line-height:1.25;overflow:hidden;text-overflow:ellipsis}.rr-matrix__form{display:flex;flex-wrap:wrap;gap:3px;margin-top:5px;justify-content:flex-start}.rr-matrix__head .rr-matrix__form{justify-content:center}.rr-matrix__dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.rr-matrix__dot--win{background:#2e7d32}.rr-matrix__dot--loss{background:#c62828}.rr-matrix__dot--pending{background:color-mix(in srgb,var(--color-text) 28%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-text) 18%,transparent)}.rr-matrix__dot--live{background:#e8a317;box-shadow:0 0 0 1px color-mix(in srgb,#e8a317 40%,transparent)}.rr-matrix__head .rr-matrix__dot{width:7px;height:7px}.rr-matrix__cell{min-width:88px;height:56px;padding:0;text-align:center;border-right:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);vertical-align:middle;transition:background .12s ease,box-shadow .12s ease}.rr-matrix__cell--diag,.rr-matrix__cell--disabled{background:color-mix(in srgb,var(--color-text) 6%,transparent)}.rr-matrix__cell--disabled{pointer-events:none}.rr-matrix__cell--cross{background:color-mix(in srgb,var(--color-brand) 6%,transparent)}.rr-matrix__cell--hover{background:color-mix(in srgb,var(--color-brand) 22%,transparent);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--color-brand) 45%,transparent)}.rr-matrix__cell--player{background:color-mix(in srgb,var(--color-brand) 20%,transparent);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--color-brand) 50%,transparent)}.rr-matrix__cell--player-win{background:color-mix(in srgb,#7fae8c 28%,var(--color-surface, #fff));box-shadow:inset 0 0 0 2px color-mix(in srgb,#6a9a78 42%,transparent)}.rr-matrix__cell--player-loss{background:color-mix(in srgb,#c49a9a 26%,var(--color-surface, #fff));box-shadow:inset 0 0 0 2px color-mix(in srgb,#b07f7f 40%,transparent)}.rr-matrix__cell--dim{opacity:.28;transition:opacity .12s ease}.rr-matrix__cell--live{background:color-mix(in srgb,#e8a317 18%,transparent);font-weight:700}.rr-matrix__cell--live.rr-matrix__cell--cross,.rr-matrix__cell--live.rr-matrix__cell--hover,.rr-matrix__cell--live.rr-matrix__cell--player{background:color-mix(in srgb,#e8a317 32%,transparent)}.rr-matrix__cell--tech .rr-matrix__cell-text,.rr-matrix__cell--tech .rr-matrix__cell-btn{text-decoration:underline;text-decoration-style:dotted}.rr-matrix__cell--busy{opacity:.45}.rr-matrix__cell--clickable .rr-matrix__cell-btn{cursor:pointer}.rr-matrix__cell--clickable:hover .rr-matrix__cell-plus{opacity:1;transform:scale(1.08)}.rr-matrix__cell-plus{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1px dashed color-mix(in srgb,var(--color-brand) 35%,transparent);color:color-mix(in srgb,var(--color-brand) 80%,transparent);font-size:1.1rem;font-weight:500;line-height:1;opacity:.55;transition:opacity .12s ease,transform .12s ease}.rr-matrix__cell-muted{font-size:.72rem;letter-spacing:.02em;text-transform:lowercase;opacity:.7}.rr-matrix__cell-btn,.rr-matrix__cell-text{display:flex;align-items:center;justify-content:center;width:100%;height:56px;padding:6px;border:0;background:transparent;font:inherit;color:inherit;line-height:1.2;white-space:pre-line}.rr-matrix__cell-btn:disabled{opacity:.5;cursor:not-allowed}.rr-matrix__dialog{max-width:min(420px,calc(100vw - 32px));width:100%;padding:24px 26px}.rr-matrix__dialog--score{max-width:min(480px,calc(100vw - 32px))}.rr-matrix__dialog-title{margin:0 0 8px;font-size:1.15rem}.rr-matrix__dialog-copy{margin:0 0 12px;font-size:1.05rem;font-weight:500}.rr-matrix__court-badge{display:inline-block;margin:0 0 12px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,#e8a317 22%,transparent);font-size:.85rem;font-weight:600}.rr-matrix__sides{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-bottom:14px}.rr-matrix__side{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--color-brand) 8%,transparent)}.rr-matrix__side--b{text-align:right;background:color-mix(in srgb,var(--color-text) 6%,transparent)}.rr-matrix__side-name{font-size:.98rem;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis}.rr-matrix__vs{opacity:.45;font-weight:400}.rr-matrix__dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px}.rr-matrix__check{display:flex;align-items:flex-start;gap:8px;margin:0 0 12px;font-size:.95rem;line-height:1.35}.rr-matrix__label{display:flex;flex-direction:column;gap:8px;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-coffee-milk, #a89890);margin-bottom:12px}.rr-matrix__select{width:100%;border:1px solid color-mix(in srgb,var(--color-brand) 16%,transparent);border-radius:8px;padding:10px 12px;font:inherit;font-size:1rem;text-transform:none;letter-spacing:normal;box-sizing:border-box}.rr-matrix__scoreboard{display:flex;flex-direction:column;gap:8px}.rr-matrix__scoreboard-head,.rr-matrix__scoreboard-row{display:grid;grid-template-columns:64px 1fr 16px 1fr;gap:8px;align-items:center}.rr-matrix__scoreboard-set{font-size:.85rem;opacity:.7}.rr-matrix__scoreboard-col{font-size:.82rem;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.rr-matrix__scoreboard-gap{width:16px}.rr-matrix__score-input{width:100%;max-width:88px;justify-self:center;border:1px solid color-mix(in srgb,var(--color-brand) 16%,transparent);border-radius:8px;padding:10px 8px;font:inherit;font-size:1.15rem;font-variant-numeric:tabular-nums;text-align:center}.rr-matrix__score-input--invalid{border-color:var(--color-error, #c62828);background:color-mix(in srgb,var(--color-error, #c62828) 8%,transparent);outline:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-error, #c62828) 35%,transparent)}.rr-matrix__scoreboard-row-wrap{display:flex;flex-direction:column;gap:4px}.rr-matrix__score-row-error{margin:0 0 2px;padding-left:calc(2.2rem + 4px);font-size:.78rem;line-height:1.35;color:var(--color-error, #c62828)}.rr-standings{display:flex;flex-direction:column;gap:10px;margin-top:4px}.rr-standings__title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rr-standings__title{margin:0;font-size:1.05rem;font-weight:600}.rr-standings__manual-badge{font-size:.78rem;font-weight:600;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--color-brand) 12%,transparent)}.rr-standings__ready-hint{margin:0;padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-brand) 18%,transparent);background:color-mix(in srgb,var(--color-brand) 8%,transparent);font-size:.92rem;line-height:1.45}.rr-standings__finalize-dialog{max-width:min(520px,calc(100vw - 32px));width:100%}.rr-standings__finalize-list{display:flex;flex-direction:column;gap:0;max-height:min(40vh,320px);overflow:auto;border:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);border-radius:12px;margin:4px 0 8px}.rr-standings__finalize-head,.rr-standings__finalize-row{display:grid;grid-template-columns:52px 1fr 56px;gap:8px;padding:8px 12px;align-items:center}.rr-standings__finalize-head{position:sticky;top:0;font-size:.78rem;font-weight:600;color:color-mix(in srgb,var(--color-text) 70%,transparent);background:color-mix(in srgb,var(--color-brand) 5%,var(--color-surface, #fff));border-bottom:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.rr-standings__finalize-row{border-bottom:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);font-size:.92rem}.rr-standings__finalize-row:last-child{border-bottom:0}.rr-standings__finalize-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rr-standings__finalize-points{font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.rr-standings__actions{width:72px;white-space:nowrap}.rr-standings__move{border:1px solid color-mix(in srgb,var(--color-brand) 18%,transparent);background:transparent;border-radius:6px;width:28px;height:28px;margin:0 2px;cursor:pointer;font:inherit;line-height:1}.rr-standings__move:disabled{opacity:.35;cursor:not-allowed}.rr-standings__public-note{margin:0;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--color-brand) 8%,transparent);font-size:.92rem;line-height:1.4}.rr-standings__public-note-label{font-weight:600}.rr-standings__admin-bar{display:flex;flex-direction:column;gap:10px}.rr-standings__admin-actions{display:flex;flex-wrap:wrap;gap:8px}.rr-standings__save-box{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-brand) 14%,transparent)}.rr-standings__save-label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:500}.rr-standings__save-note{width:100%;box-sizing:border-box;border:1px solid color-mix(in srgb,var(--color-brand) 16%,transparent);border-radius:8px;padding:10px 12px;font:inherit;resize:vertical}.rr-standings__scroll{overflow:auto;max-width:100%;border-radius:14px;border:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);background:var(--color-surface, #fff)}.rr-standings__table{--rr-standings-num-w: 44px;width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:.92rem;font-variant-numeric:tabular-nums}.rr-standings__table th,.rr-standings__table td{padding:10px 12px;text-align:center;border-bottom:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);background:var(--color-surface, #fff)}.rr-standings__table th{font-weight:600;font-size:.8rem;letter-spacing:.02em;color:color-mix(in srgb,var(--color-text) 75%,transparent);background:color-mix(in srgb,var(--color-brand) 4%,var(--color-surface, #fff))}.rr-standings__table th:not(.rr-standings__num):not(.rr-standings__name),.rr-standings__table td:not(.rr-standings__num):not(.rr-standings__name){min-width:3.25rem}.rr-standings__table tbody tr:last-child td{border-bottom:0}.rr-standings__table tbody tr.rr-standings__row--group-break td{border-top:2px solid color-mix(in srgb,var(--color-text) 18%,transparent)}.rr-standings__table tbody tr.rr-standings__row--tie-group td{background:color-mix(in srgb,var(--color-brand) 6%,var(--color-surface, #fff))}.rr-standings__table tbody tr.rr-standings__row--tie-start td{box-shadow:inset 0 2px color-mix(in srgb,var(--color-brand) 22%,transparent)}.rr-standings__table tbody tr.rr-standings__row--tie-end td{box-shadow:inset 0 -2px color-mix(in srgb,var(--color-brand) 22%,transparent)}.rr-standings__table tbody tr.rr-standings__row--tie-start.rr-standings__row--tie-end td{box-shadow:inset 0 2px color-mix(in srgb,var(--color-brand) 22%,transparent),inset 0 -2px color-mix(in srgb,var(--color-brand) 22%,transparent)}.rr-standings__table tbody tr.rr-standings__row--highlight td{background:color-mix(in srgb,var(--color-brand) 16%,var(--color-surface, #fff));transition:background .12s ease}.rr-standings__table tbody tr.rr-standings__row--highlight.rr-standings__row--tie-group td{background:color-mix(in srgb,var(--color-brand) 20%,var(--color-surface, #fff))}.rr-standings__table tbody tr.rr-standings__row--highlight td.rr-standings__name{box-shadow:inset 3px 0 color-mix(in srgb,var(--color-brand) 65%,transparent)}.rr-standings__num,.rr-standings__name{position:sticky;z-index:2}.rr-standings__table thead .rr-standings__num,.rr-standings__table thead .rr-standings__name{z-index:3}.rr-standings__num{left:0;width:var(--rr-standings-num-w);min-width:var(--rr-standings-num-w);max-width:var(--rr-standings-num-w);box-sizing:border-box}.rr-standings__table tbody .rr-standings__num{color:color-mix(in srgb,var(--color-text) 55%,transparent)}.rr-standings__name{left:var(--rr-standings-num-w);text-align:left!important;font-weight:500;min-width:140px;max-width:200px;border-right:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rr-standings__table tbody tr:nth-child(-n+3) .rr-standings__num{font-weight:600;color:color-mix(in srgb,var(--color-brand) 85%,#000)}.rr-standings__abbr{position:relative}.rr-standings__abbr-label{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:help;border-bottom:1px dotted color-mix(in srgb,var(--color-text) 35%,transparent)}.rr-standings__abbr-tip{position:fixed;transform:translate(-50%);padding:6px 10px;border-radius:8px;background:var(--color-brand, #2c2416);color:#fff;font-size:.78rem;font-weight:500;letter-spacing:normal;text-transform:none;white-space:nowrap;pointer-events:none;z-index:10000;box-shadow:0 4px 12px color-mix(in srgb,#000 18%,transparent)}.rr-standings__note-marks{margin-left:2px;font-size:.7em;font-weight:600;color:color-mix(in srgb,var(--color-brand) 80%,#000)}.rr-standings__points{font-weight:600}.rr-standings__footnotes{margin:0;padding:0 0 0 1.25em;font-size:.85rem;line-height:1.45;opacity:.85}.rr-standings__footnotes li{margin:0 0 6px}.rr-standings__footnotes li::marker{font-weight:600}.rr-standings__legend{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px 28px;margin:0;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--color-brand) 4%,transparent);font-size:.85rem}.rr-standings__legend-item{display:grid;grid-template-columns:3.5em 1fr;column-gap:10px;align-items:baseline;margin:0}.rr-standings__legend-abbr{margin:0;font-weight:700;font-variant-numeric:tabular-nums;text-align:right;color:color-mix(in srgb,var(--color-text) 88%,transparent)}.rr-standings__legend-full{margin:0;color:color-mix(in srgb,var(--color-text) 72%,transparent);line-height:1.35}.tournament-public-ws{display:flex;flex-direction:column;gap:16px}.tournament-public-ws__divisions{display:flex;flex-wrap:wrap;gap:8px}.tournament-public-ws__chip{border:1px solid color-mix(in srgb,var(--color-brand) 14%,transparent);background:color-mix(in srgb,var(--color-surface, #fff) 70%,transparent);color:var(--color-brand);border-radius:999px;padding:8px 14px;font:inherit;font-size:.92rem;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.tournament-public-ws__chip:hover{background:color-mix(in srgb,var(--color-brand) 6%,transparent)}.tournament-public-ws__chip--active{background:color-mix(in srgb,var(--color-primary) 14%,transparent);border-color:color-mix(in srgb,var(--color-primary) 40%,transparent);font-weight:600}.tournament-public-ws__tabs{display:flex;gap:2px;padding:3px;border-radius:12px;background:color-mix(in srgb,var(--color-brand) 6%,transparent);width:fit-content;max-width:100%;overflow-x:auto}.tournament-public-ws__tab{border:none;background:transparent;color:var(--color-brand);opacity:.7;padding:8px 14px;border-radius:10px;font:inherit;font-size:.92rem;cursor:pointer;white-space:nowrap}.tournament-public-ws__tab:hover{opacity:.95}.tournament-public-ws__tab--active{opacity:1;font-weight:600;background:var(--color-surface, #fff);box-shadow:0 1px 2px color-mix(in srgb,var(--color-brand) 10%,transparent)}.tournament-public-ws__panel{min-height:120px;padding:8px 2px 0}.tournament-public-ws__stub{margin:0;font-size:1.05rem;line-height:1.55;color:var(--color-text);opacity:.72}.tournament-public-ws__complete{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:14px 0 4px;border-top:1px solid color-mix(in srgb,var(--color-brand) 10%,transparent)}.tournament-public-ws__complete-note{margin:0;font-size:.92rem;line-height:1.45;color:var(--color-text);opacity:.75}.tournament-detail{display:flex;flex-direction:column;gap:22px}.tournament-detail--admin{flex-direction:row;align-items:flex-start;gap:28px}.tournament-detail__content{min-width:0;flex:1;display:flex;flex-direction:column;gap:22px}.tournament-detail__loading{margin:24px 0;opacity:.7}.tournament-detail__entry{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.tournament-detail__entry-status{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--color-primary) 28%,transparent);background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-heading, var(--color-brand));border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600;line-height:1.3;text-align:right}.tournament-detail__entry-cancel{border:none;background:transparent;padding:0 4px;font:inherit;font-size:.82rem;color:var(--color-brand);opacity:.55;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.tournament-detail__entry-cancel:hover{opacity:.9}.tournament-detail__hero{display:flex;flex-direction:column;gap:8px;padding:4px 0 2px}.tournament-detail__hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px 20px}.tournament-detail__hero-copy{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}.tournament-detail__hero-actions{flex-shrink:0;padding-top:2px;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.tournament-detail__hero-title{margin:0;font-size:clamp(1.35rem,2vw,1.65rem);font-weight:700;line-height:1.25;color:var(--color-heading, var(--color-brand))}.tournament-detail__hero-support{margin:0;max-width:46ch;font-size:1.02rem;line-height:1.5;opacity:.75}.tournament-detail__countdown{margin:4px 0 0;font-size:1.35rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-heading, var(--color-brand))}.tournament-detail__countdown--closed{opacity:.65;font-weight:500;font-size:1.1rem}.tournament-detail__meta-block{display:flex;flex-direction:column;gap:10px}.tournament-detail__edit{display:inline-flex;align-items:center;align-self:flex-end;gap:8px;border:none;background:transparent;color:var(--color-brand);opacity:.75;padding:6px 8px;font:inherit;font-size:.9rem;cursor:pointer;border-radius:8px}.tournament-detail__edit:hover{opacity:1;background:color-mix(in srgb,var(--color-brand) 5%,transparent)}.tournament-detail__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:14px 0;border-top:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent)}.tournament-detail__meta-item{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:.98rem;color:var(--color-heading, var(--color-brand))}.tournament-detail__meta-value{display:inline-flex;align-items:center;gap:8px;min-width:0}.tournament-detail__meta-label{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-coffee-milk, #a89890)}.tournament-detail__description{margin:0;white-space:pre-wrap;color:var(--color-text);font-size:1.02rem;line-height:1.55;opacity:.88}.tournament-detail__tool{display:flex;flex-direction:column;gap:14px}.tournament-detail__tool-title{margin:0;font-size:clamp(1.35rem,2vw,1.65rem);font-weight:700;color:var(--color-heading, var(--color-brand))}.tournament-detail__tool-note{margin:-4px 0 0;font-size:.98rem;line-height:1.45;opacity:.7;max-width:48ch}@media (min-width: 720px){.tournament-detail__meta{grid-template-columns:1.4fr repeat(3,minmax(0,1fr));align-items:end}}@media (max-width: 860px){.tournament-detail--admin{flex-direction:column;gap:18px}.tournament-detail__hero-top{flex-direction:column;align-items:stretch;gap:12px}.tournament-detail__hero-actions{padding-top:0;align-self:stretch;align-items:stretch}.tournament-detail__entry{align-items:flex-start}.tournament-detail__entry-status{text-align:left}}.tournament-page{--tournament-page-nav-height: 64px;min-height:100vh;background:radial-gradient(1200px 480px at 10% -10%,color-mix(in srgb,var(--color-primary) 10%,transparent),transparent 60%),var(--color-bg, #f7f4ef);color:var(--color-text)}.tournament-page__nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;min-height:var(--tournament-page-nav-height);padding:10px 20px;background:color-mix(in srgb,var(--color-bg, #f7f4ef) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb,var(--color-brand) 8%,transparent)}.tournament-page__menu{display:none}.tournament-page__brand{display:inline-flex;align-items:center;flex-shrink:0;text-decoration:none}.tournament-page__logo{display:block;height:28px;width:auto;object-fit:contain}.tournament-page__mark{display:none;width:28px;height:28px;object-fit:contain}.tournament-page__tournament{display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:0;flex:1}.tournament-page__title{margin:0;font-size:1.05rem;font-weight:700;line-height:1.2;color:var(--color-heading, var(--color-brand));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-page__discipline{font-size:.82rem;line-height:1.2;color:var(--color-brand);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-page__links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 16px;flex-shrink:0;margin-left:auto}.tournament-page__link{border:none;background:transparent;padding:6px 0;font:inherit;font-size:.95rem;color:var(--color-brand);cursor:pointer}.tournament-page__link:hover{opacity:.75}.tournament-page__main{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:28px 0 56px}@media (max-width: 860px){.tournament-page__menu{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:1px solid color-mix(in srgb,var(--color-brand) 12%,transparent);border-radius:12px;background:color-mix(in srgb,var(--color-brand) 4%,transparent);color:var(--color-brand);cursor:pointer}.tournament-page__menu-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:.68rem;font-weight:700;line-height:18px;text-align:center}.tournament-page__links{display:none}}@media (max-width: 640px){.tournament-page__nav{padding:10px 14px;gap:10px}.tournament-page__logo{display:none}.tournament-page__mark{display:block}.tournament-page__title{font-size:.98rem}.tournament-page__links{gap:6px 10px}.tournament-page__link{font-size:.88rem}.tournament-page__main{width:min(100% - 24px,720px);padding-top:16px}}.tournament-page__legal{display:flex;flex-wrap:wrap;gap:10px 16px;padding:18px 20px calc(18px + env(safe-area-inset-bottom));color:var(--color-text-muted);font-size:.85rem}.tournament-page__legal a{color:inherit;text-decoration:none}.tournament-page__legal a:hover{color:var(--color-heading)}.tournament-page__legal .legal-footer-meta{width:100%;margin:0}.tournament-partner-invite{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(900px 360px at 20% -10%,color-mix(in srgb,var(--color-primary) 12%,transparent),transparent 60%),var(--color-bg, #f7f4ef)}.tournament-partner-invite__card{width:min(440px,100%);display:flex;flex-direction:column;gap:14px;padding:28px 26px;border-radius:18px;background:var(--color-surface, #fff);box-shadow:0 18px 48px color-mix(in srgb,var(--color-brand) 10%,transparent)}.tournament-partner-invite__eyebrow{margin:0;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-coffee-milk, #a89890)}.tournament-partner-invite__title{margin:0;font-size:1.45rem;line-height:1.25;color:var(--color-heading, var(--color-brand))}.tournament-partner-invite__note{margin:0;font-size:.98rem;line-height:1.45;opacity:.8}.tournament-partner-invite__link{color:var(--color-brand);font-size:.95rem}.dev-auth-switcher{position:fixed;bottom:20px;right:20px;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:0 10px 30px #0003;z-index:9999;display:flex;flex-direction:column;gap:var(--spacing-sm);width:200px}.dev-auth-switcher__title{font-size:.8rem;font-weight:800;color:var(--color-primary);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;display:flex;justify-content:space-between}.dev-auth-switcher__btn{width:100%;text-align:left;padding:8px 12px;border-radius:var(--radius-md);border:1px solid var(--color-neutral-border);background:var(--color-bg);cursor:pointer;font-size:.85rem;font-weight:600;transition:var(--transition-smooth)}.dev-auth-switcher__btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.dev-auth-switcher__btn--active{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.legal-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg, #ebe8e6);color:var(--color-text, #000)}.legal-page__nav,.legal-page__footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:18px 24px}.legal-page__nav{border-bottom:1px solid color-mix(in srgb,var(--color-heading, #35091c) 10%,transparent);background:var(--color-surface-card, #f6f4f2)}.legal-page__brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;color:var(--color-heading, #35091c);text-decoration:none}.legal-page__nav-links,.legal-page__footer-links{display:flex;flex-wrap:wrap;gap:10px 16px}.legal-page__nav-links a,.legal-page__footer-links a{color:var(--color-text-muted, #6b6560);text-decoration:none;font-size:.92rem}.legal-page__nav-links a:hover,.legal-page__footer-links a:hover{color:var(--color-heading, #35091c)}.legal-page__main{flex:1;width:min(760px,calc(100% - 40px));margin:0 auto;padding:32px 0 48px}.legal-page__kicker{margin:0 0 8px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted, #6b6560)}.legal-page__title{margin:0 0 8px;font-size:1.8rem;line-height:1.2;color:var(--color-heading, #35091c)}.legal-page__version{margin:0 0 28px;color:var(--color-text-muted, #6b6560);font-size:.9rem}.legal-page__section+.legal-page__section{margin-top:22px}.legal-page__section h2{margin:0 0 8px;font-size:1.05rem;color:var(--color-heading, #35091c)}.legal-page__section p{margin:0;line-height:1.65;color:var(--color-text-muted, #4a4541)}.legal-page__footer{background:#240512;color:color-mix(in srgb,#eee8e2 70%,#b5a7a6)}.legal-page__footer a{color:inherit}.legal-page__footer .legal-footer-meta{margin:0;width:100%;opacity:.7;font-size:.85rem}.legal-footer-meta{margin:0;font-size:.85rem;opacity:.7}.privacy-consent{text-align:center}.privacy-consent__title{font-size:1.8em;font-weight:800;color:var(--color-heading);margin-bottom:var(--spacing-md)}.privacy-consent__description{color:var(--color-text-muted);font-size:1em;line-height:1.6;margin-bottom:var(--spacing-lg)}.privacy-consent__error{color:var(--color-error);font-size:.9em;font-weight:600;margin:0}.privacy-consent__actions{display:flex;flex-direction:column;gap:12px;width:100%}.privacy-consent__checkbox-label{display:flex;align-items:flex-start;gap:var(--spacing-sm);text-align:left;margin-bottom:var(--spacing-lg);cursor:pointer}.privacy-consent__checkbox{width:18px;height:18px;margin-top:2px;flex-shrink:0;cursor:pointer;accent-color:var(--color-primary)}.privacy-consent__checkbox-text{font-size:.9em;line-height:1.45;color:var(--color-text)}.privacy-consent__link{display:inline;padding:0;border:none;background:none;color:var(--color-primary);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.privacy-consent__link:hover{opacity:.85}.privacy-consent__step--policy{text-align:left}.privacy-consent__step--policy .privacy-consent__title{font-size:1.35em;text-align:center}.privacy-consent__policy-version{margin:calc(-1 * var(--spacing-sm)) 0 var(--spacing-md);text-align:center;font-size:.8em;color:var(--color-text-muted)}.privacy-consent__policy{max-height:min(60vh,480px);overflow-y:auto;padding-right:4px;margin-bottom:var(--spacing-sm)}.privacy-consent__policy-section+.privacy-consent__policy-section{margin-top:var(--spacing-md)}.privacy-consent__policy-heading{margin:0 0 6px;font-size:.95em;font-weight:700;color:var(--color-heading)}.privacy-consent__policy-body{margin:0;font-size:.85em;line-height:1.55;color:var(--color-text-muted)}.privacy-consent .modal-content--wide,.modal-content--wide{max-width:560px}:root{--color-dark-coffee: #36081d;--color-bege: #eee8e2;--color-coffee-milk: #b5a7a6;--color-blue: #528ff5;--color-yellow: #f1e66f;--color-white: #ffffff;--color-primary: #000000;--color-primary-hover: #2a2a2a;--color-on-primary: var(--color-white);--color-heading: #35091c;--color-brand: var(--color-dark-coffee);--color-bg: #ebe8e6;--color-surface: #f1f1f1;--color-surface-card: #f6f4f2;--color-text: #000000;--color-text-secondary: #00000066;--color-text-muted: #6b6560;--color-success: #2e7d32;--color-success-bg: #e8f5e9;--color-success-border: #c8e6c9;--color-success-button: #2e7d32;--color-success-button-hover: #1b5e20;--color-error: #c62828;--color-error-bg: #ffebee;--color-error-border: #ffcdd2;--color-error-button: #d32f2f;--color-error-button-hover: #b71c1c;--color-warning: #856404;--color-warning-bg: #fff3cd;--color-warning-border: #ffeeba;--color-tertiary: #e0dbd8;--color-tertiary-hover: #d0cac6;--color-skeleton-start: #e8e4e2;--color-skeleton-end: #d8d3d0;--color-telegram: #24A1DE;--color-telegram-hover: #2196D3;--color-vk: #0077FF;--color-vk-hover: #0066DD;--color-neutral: #555555;--color-neutral-bg: #f1f1f1;--color-neutral-border: #ddd9d6;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-md: .875rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.25rem;--font-size-3xl: 1.5rem;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-sm-md: 12px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 30px;--radius-lg: 16px;--radius-md: 8px;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-sm-md: 12px;--border-radius-lg: 16px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .04);--shadow-md: 0 10px 25px rgba(53, 9, 28, .06);--transition-smooth: all .4s cubic-bezier(.4, 0, .2, 1)}@media (min-width: 769px){:root{--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem}}[data-theme=dark]{--color-primary: #ffffff;--color-primary-hover: #e8e4e2;--color-on-primary: #161412;--color-heading: #e8b8c4;--color-brand: #f0c4d0;--color-bg: #161412;--color-surface: #24201e;--color-surface-card: #2e2a28;--color-text: #f5f2f0;--color-text-secondary: #f5f2f066;--color-text-muted: #a39e9a;--color-success: #4caf50;--color-success-bg: rgba(76, 175, 80, .15);--color-success-border: rgba(76, 175, 80, .3);--color-success-button: #4caf50;--color-success-button-hover: #66bb6a;--color-error: #f44336;--color-error-bg: rgba(244, 67, 54, .15);--color-error-border: rgba(244, 67, 54, .3);--color-error-button: #f44336;--color-error-button-hover: #ef5350;--color-warning: #ffb74d;--color-warning-bg: rgba(255, 183, 77, .15);--color-warning-border: rgba(255, 183, 77, .3);--color-tertiary: #2e2a28;--color-tertiary-hover: #3a3532;--color-skeleton-start: #24201e;--color-skeleton-end: #2e2a28;--color-neutral: #a39e9a;--color-neutral-bg: #2e2a28;--color-neutral-border: #3a3532;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .25);--shadow-md: 0 10px 25px rgba(0, 0, 0, .4)}body,.modal-content,.card{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}html{scrollbar-gutter:stable}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172ab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));z-index:1000;animation:fadeIn .3s ease-out}.modal-content{background:var(--color-surface);padding:40px;border-radius:24px;width:90%;max-width:420px;position:relative;box-shadow:0 20px 50px #0003;margin-top:auto;margin-bottom:auto;flex-shrink:0}.modal-close{position:absolute;top:20px;right:20px;background:var(--color-bg);border:none;width:32px;height:32px;border-radius:50%;font-size:20px;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.modal-close:hover{background-color:var(--color-error-bg);color:var(--color-error)}.content-header{margin-bottom:var(--spacing-xl);animation:fadeIn .4s ease-out}.content-title{font-size:2.2em;font-weight:800;color:var(--color-heading);margin-bottom:var(--spacing-sm);letter-spacing:-.5px}.content-subtitle{color:var(--color-text-muted);font-size:1.1em}.content-body{animation:fadeIn .4s ease-out;flex:1}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.card-icon{font-size:2.5em;line-height:1}.card-title{font-size:1.3em;font-weight:700;color:var(--color-heading)}.card-text{font-size:.95em;color:var(--color-text);line-height:1.5;flex:1}.card-meta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--color-neutral-border);padding-top:var(--spacing-md);margin-top:auto;font-size:.85em;color:var(--color-text-muted)}@media (max-width: 768px){.content-header{margin-bottom:var(--spacing-lg)}.content-title{font-size:1.8em}.content-subtitle{font-size:1em}.content-grid{gap:var(--spacing-md)}.modal-overlay{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.modal-content{width:100%;padding:24px var(--spacing-md);border-radius:20px}}
