.ds-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-sans);font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--easing-out),border-color var(--duration-fast) var(--easing-out),color var(--duration-fast) var(--easing-out),box-shadow var(--duration-fast) var(--easing-out),transform var(--duration-fast) var(--easing-out);-webkit-user-select:none;user-select:none}.ds-button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--border-focus)}.ds-button:active:not(:disabled){transform:translateY(1px)}.ds-button:disabled{cursor:not-allowed;opacity:.5}.ds-button--block{width:100%}.ds-button--sm{height:24px;padding:0 var(--space-3);font-size:var(--text-xs)}.ds-button--md{height:32px;padding:0 var(--space-4);font-size:var(--text-sm)}.ds-button--lg{height:40px;padding:0 var(--space-5);font-size:var(--text-md)}.ds-button--primary{background:var(--accent-brand);color:var(--text-on-accent);border-color:var(--accent-brand)}.ds-button--primary:hover:not(:disabled){background:var(--accent-brand-hover);border-color:var(--accent-brand-hover)}.ds-button--secondary{background:var(--surface-elevated);color:var(--text-primary);border-color:var(--border-default)}.ds-button--secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.ds-button--ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.ds-button--ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ds-button--danger{background:var(--accent-danger);color:var(--text-on-accent);border-color:var(--accent-danger)}.ds-button--danger:hover:not(:disabled){background:var(--accent-danger);filter:brightness(1.1)}.ds-button-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ds-button-label{display:inline-block;text-align:center;transition:opacity var(--duration-fast) var(--easing-out)}.ds-button--align-start{justify-content:flex-start}.ds-button--align-start .ds-button-label{text-align:start}.ds-button-label--fading{opacity:0}.ds-button-label-reveal{white-space:pre}.ds-button-char{animation:ds-button-char-in 90ms var(--easing-out) both}@keyframes ds-button-char-in{0%{opacity:0}to{opacity:1}}.ds-button-spinner{display:inline-block;width:12px;height:12px;border-radius:var(--radius-pill);border:1.5px solid currentColor;border-top-color:transparent;animation:ds-button-spin .6s linear infinite;flex-shrink:0}.ds-button--lg .ds-button-spinner{width:14px;height:14px}.ds-button--sm .ds-button-spinner{width:10px;height:10px;border-width:1.25px}@keyframes ds-button-spin{to{transform:rotate(360deg)}}.ds-button-split{display:inline-flex;position:relative}.ds-button-split>.ds-button:not(:only-child):first-child{border-top-right-radius:0;border-bottom-right-radius:0;border-right:1px solid rgba(0,0,0,.15)}.ds-button-split>.ds-button:not(:only-child):last-child{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.ds-button-split__trigger.ds-button{padding-left:var(--space-2);padding-right:var(--space-2);min-width:0}.ds-button-split>.ds-button:active:not(:disabled){transform:none}.ds-button-split:has(.ds-button:active:not(:disabled)){transform:translateY(1px)}.ds-icon-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:background-color var(--duration-fast) var(--easing-out),color var(--duration-fast) var(--easing-out)}.ds-icon-button:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ds-icon-button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--border-focus)}.ds-icon-button:disabled{cursor:not-allowed;opacity:.5}.ds-icon-button--sm{width:24px;height:24px}.ds-icon-button--md{width:28px;height:28px}.ds-icon-button--lg{width:32px;height:32px}.ds-icon-button--danger:hover:not(:disabled){background:var(--fill-danger);color:var(--accent-danger)}.ds-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);padding:var(--space-5)}.ds-modal{width:100%;background:var(--surface-panel);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - var(--space-7));overflow:hidden;outline:none}.ds-modal--sm{max-width:360px}.ds-modal--md{max-width:480px}.ds-modal--lg{max-width:720px}.ds-modal--xl{max-width:960px}.ds-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-default);flex-shrink:0}.ds-modal-title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary)}.ds-modal-close{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:transparent;border:0;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast) var(--easing-out),color var(--duration-fast) var(--easing-out)}.ds-modal-close:hover{background:var(--surface-hover);color:var(--text-primary)}.ds-modal-close:focus-visible{outline:none;box-shadow:0 0 0 2px var(--border-focus)}.ds-modal-body{padding:var(--space-5);overflow:auto;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:var(--space-3);color:var(--text-secondary);font-size:var(--text-md);line-height:1.5}.ds-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-default);flex-shrink:0}.ds-field-preview{display:flex;flex-direction:column;gap:var(--space-4)}.ds-field-preview__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.ds-field-preview__row{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle)}.ds-field-preview__row:last-child{border-bottom:0;padding-bottom:0}.ds-field-preview__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.ds-field-preview__name{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);background:var(--surface-inset);padding:1px var(--space-2);border-radius:var(--radius-sm)}.ds-field-preview__value{font-size:var(--text-md);color:var(--text-primary);font-weight:600;text-align:right;word-break:break-word}.ds-field-preview__enables{margin:0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.45}.ds-field-preview__excluded{margin:0;padding:var(--space-3);background:var(--surface-inset);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);line-height:1.45}.ds-field-preview__excluded strong{color:var(--text-primary);font-weight:600}.ds-field-preview__raw{display:flex;flex-direction:column;gap:var(--space-2)}.ds-field-preview__raw-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background:transparent;border:0;padding:0;cursor:pointer;font:inherit;font-size:var(--text-sm);color:var(--text-secondary)}.ds-field-preview__raw-toggle:hover{color:var(--text-primary)}.ds-field-preview__raw-body{margin:0;padding:var(--space-3);background:var(--surface-inset);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5;max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word}.ds-optin__value-exchange{margin:0 0 var(--space-4);font-size:var(--text-md);line-height:1.5;color:var(--text-primary)}.ds-card{border-radius:var(--radius-lg);color:var(--text-primary);transition:background var(--duration-base) var(--easing-out),border-color var(--duration-base) var(--easing-out),box-shadow var(--duration-base) var(--easing-out)}.ds-card--default{background:var(--surface-panel);border:1px solid var(--border-default)}.ds-card--elevated{background:var(--surface-elevated);border:1px solid transparent;box-shadow:var(--shadow-md)}.ds-card--outlined{background:transparent;border:1px solid var(--border-default)}.ds-card--pad-none{padding:0}.ds-card--pad-sm{padding:var(--space-3)}.ds-card--pad-md{padding:var(--space-4)}.ds-card--pad-lg{padding:var(--space-5)}.ds-input-root{display:inline-flex;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-sans);color:var(--text-primary);transition:border-color var(--duration-fast) var(--easing-out),box-shadow var(--duration-fast) var(--easing-out),background var(--duration-fast) var(--easing-out);cursor:text}.ds-input-root--disabled{cursor:not-allowed}.ds-input-root--ghost{background:var(--surface-subtle);border:1px solid transparent}.ds-input-root--ghost:hover:not(.ds-input-root--disabled),.ds-input-root--ghost:focus-within{background:var(--surface-subtle-hover)}.ds-input-root--sm{height:24px;padding:0 var(--space-2);font-size:var(--text-xs)}.ds-input-root--md{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}.ds-input{height:100%;appearance:none;-webkit-appearance:none}.ds-input::-webkit-search-decoration,.ds-input::-webkit-search-cancel-button,.ds-input::-webkit-search-results-button,.ds-input::-webkit-search-results-decoration{display:none}.ds-input-leading,.ds-input-trailing{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted)}.ds-input-trailing{cursor:default}.ds-textarea-root{display:flex;align-items:stretch;cursor:text}.ds-textarea-root--disabled{cursor:not-allowed}.ds-textarea-root--sm{padding:var(--space-2);font-size:var(--text-xs)}.ds-textarea-root--md{padding:var(--space-3);font-size:var(--text-sm)}.ds-textarea{resize:vertical;line-height:1.5}.ds-input-root--default,.ds-textarea-root,.ds-select-root{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);font-family:var(--font-sans);color:var(--text-primary);transition:border-color var(--duration-fast) var(--easing-out),box-shadow var(--duration-fast) var(--easing-out),background var(--duration-fast) var(--easing-out)}.ds-input-root--default:hover:not(.ds-input-root--disabled),.ds-textarea-root:hover:not(.ds-textarea-root--disabled),.ds-select-root:hover:not(.ds-select-root--disabled){border-color:var(--border-strong)}.ds-input-root--default:focus-within,.ds-textarea-root:focus-within,.ds-select-root:focus-within{border-color:var(--border-focus)}.ds-input-root--disabled,.ds-textarea-root--disabled,.ds-select-root--disabled{opacity:.5}.ds-input,.ds-textarea,.ds-select{flex:1;min-width:0;background:transparent;border:none;outline:none;padding:0;margin:0;font:inherit;color:inherit}.ds-input::placeholder,.ds-textarea::placeholder{color:var(--text-muted);opacity:1}.ds-select-root{display:inline-flex;align-items:center;cursor:pointer;position:relative;font-family:inherit;text-align:left;color:inherit}.ds-select-root--disabled{cursor:not-allowed}.ds-select-root--sm{height:24px;padding:0 var(--space-2);font-size:var(--text-xs)}.ds-select-root--md{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}.ds-select-value{flex:1;min-width:0;padding-right:var(--space-5);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ds-select-chevron{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);pointer-events:none;flex-shrink:0;transition:transform var(--duration-fast) var(--easing-out)}.ds-select-root.is-open .ds-select-chevron{transform:translateY(-50%) rotate(180deg)}.ds-select-popover{min-width:180px;max-height:320px;overflow-y:auto;background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-1);z-index:var(--z-popover);display:flex;flex-direction:column;outline:none}.ds-select-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.25;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--duration-fast) var(--easing-out),background-color var(--duration-fast) var(--easing-out)}.ds-select-option.is-active{color:var(--text-primary);background:var(--surface-elevated)}.ds-select-option.is-selected{color:var(--text-primary);font-weight:var(--weight-semibold)}.ds-select-option.is-disabled{color:var(--text-muted);opacity:.55;cursor:not-allowed}.ds-select-option-check{display:inline-flex;align-items:center;justify-content:center;width:12px;flex-shrink:0;color:var(--brand-accent)}.ds-select-option-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ds-select-group+.ds-select-group{border-top:1px solid var(--border-default);margin-top:var(--space-1);padding-top:var(--space-1)}.ds-select-group-label{padding:var(--space-1) var(--space-3) 2px;font-size:10px;font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.ds-toggle{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary)}.ds-toggle--disabled{opacity:.5;cursor:not-allowed}.ds-toggle-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0;margin:0}.ds-toggle-text{font-weight:var(--weight-medium);display:inline-flex;align-items:center;gap:var(--space-1)}.ds-toggle-track{position:relative;display:inline-block;width:32px;height:18px;background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-pill);transition:background var(--duration-fast) var(--easing-out),border-color var(--duration-fast) var(--easing-out);flex-shrink:0}.ds-toggle-thumb{position:absolute;top:1px;left:1px;width:14px;height:14px;background:var(--text-primary);border-radius:var(--radius-pill);transition:transform var(--duration-fast) var(--easing-out),background var(--duration-fast) var(--easing-out)}.ds-toggle-track--on{background:var(--accent-brand);border-color:var(--accent-brand)}.ds-toggle-track--on .ds-toggle-thumb{transform:translate(14px);background:var(--text-on-accent)}.ds-toggle:not(.ds-toggle--disabled):hover .ds-toggle-track:not(.ds-toggle-track--on){border-color:var(--border-strong)}.ds-toggle:focus-within .ds-toggle-track{outline:2px solid var(--border-focus);outline-offset:2px}.ds-toggle--gold .ds-toggle-track--on{background:var(--accent-warning);border-color:var(--accent-warning)}.ds-toggle--gold:focus-within .ds-toggle-track{outline-color:var(--accent-warning)}.ds-tabs{display:flex;min-width:0}.ds-tabs--horizontal{flex-direction:column}.ds-tabs--vertical{flex-direction:row;align-items:stretch}.ds-tabs-list{display:flex;gap:var(--space-1);flex-shrink:0}.ds-tabs--horizontal>.ds-tabs-list{flex-direction:row;border-bottom:1px solid var(--border-default)}.ds-tabs--vertical>.ds-tabs-list{flex-direction:column;border-right:1px solid var(--border-default);padding-right:var(--space-2);margin-right:var(--space-3)}.ds-tabs-trigger{display:inline-flex;align-items:center;gap:var(--space-2);background:transparent;border:none;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color var(--duration-fast) var(--easing-out),background var(--duration-fast) var(--easing-out),border-color var(--duration-fast) var(--easing-out)}.ds-tabs-trigger:hover:not(:disabled):not(.ds-tabs-trigger--active){color:var(--text-secondary)}.ds-tabs-trigger:disabled{opacity:.5;cursor:not-allowed}.ds-tabs-trigger:focus-visible{outline:2px solid var(--border-focus);outline-offset:-2px;border-radius:var(--radius-sm)}.ds-tabs--horizontal .ds-tabs-trigger{padding:var(--space-3) var(--space-4);border-bottom:2px solid transparent;margin-bottom:-1px}.ds-tabs--horizontal .ds-tabs-trigger--active{color:var(--text-primary);border-bottom-color:var(--accent-brand)}.ds-tabs--vertical .ds-tabs-trigger{padding:var(--space-2) var(--space-3);text-align:left;justify-content:flex-start;border-left:2px solid transparent;margin-right:-1px}.ds-tabs--vertical .ds-tabs-trigger--active{color:var(--text-primary);border-left-color:var(--accent-brand);background:var(--surface-hover)}.ds-tabs-panel{flex:1;min-width:0;outline:none}.ds-tabs-panel[hidden]{display:none}.ds-tabs--horizontal>.ds-tabs-panel{padding:var(--space-4)}.ds-spinner{display:inline-block;vertical-align:middle;border-radius:var(--radius-pill);border-style:solid;border-color:color-mix(in srgb,currentColor 25%,transparent);border-top-color:currentColor;animation:ds-spinner-spin .6s linear infinite;flex-shrink:0}.ds-spinner--sm{width:12px;height:12px;border-width:1.5px}.ds-spinner--md{width:14px;height:14px;border-width:1.5px}.ds-spinner--lg{width:20px;height:20px;border-width:2px}@keyframes ds-spinner-spin{to{transform:rotate(360deg)}}.ds-badge{display:inline-flex;align-items:center;gap:var(--space-1);font-family:var(--font-sans);font-weight:var(--weight-medium);letter-spacing:.02em;white-space:nowrap;border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-secondary);flex-shrink:0;user-select:none;-webkit-user-select:none}.ds-badge--sm{font-size:10px;padding:1px var(--space-2);line-height:1.4}.ds-badge--md{font-size:var(--text-xs);padding:2px var(--space-2);line-height:1.4}.ds-badge--pill{border-radius:var(--radius-pill)}.ds-badge--neutral{background:var(--surface-elevated);color:var(--text-secondary)}.ds-badge--success{background:var(--fill-success);color:var(--accent-success)}.ds-badge--warning{background:var(--fill-warning);color:var(--accent-warning)}.ds-badge--danger{background:var(--fill-danger);color:var(--accent-danger)}.ds-badge--info{background:var(--fill-info);color:var(--accent-info)}.ds-progress{position:relative;width:100%;background:var(--surface-elevated);border-radius:999px;overflow:hidden}.ds-progress--sm{height:4px}.ds-progress--md{height:6px}.ds-progress--lg{height:8px}.ds-progress-fill{height:100%;border-radius:inherit;transition:width var(--duration-base) var(--easing-out)}.ds-progress--accent .ds-progress-fill{background:var(--accent-brand)}.ds-progress--neutral .ds-progress-fill{background:var(--text-secondary)}.ds-progress-fill--indeterminate{width:35%;transition:none;animation:ds-progress-indeterminate 1.2s ease-in-out infinite}@keyframes ds-progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(285%)}}@media(prefers-reduced-motion:reduce){.ds-progress-fill{transition:none}.ds-progress-fill--indeterminate{animation:ds-progress-indeterminate-reduced 1.6s ease-in-out infinite;transform:none;width:100%}@keyframes ds-progress-indeterminate-reduced{0%,to{opacity:.5}50%{opacity:1}}}.ds-record-badge{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums;font-weight:600;line-height:1;white-space:nowrap;vertical-align:middle;user-select:none;-webkit-user-select:none}.ds-record-badge--gold{color:var(--medal-gold)}.ds-record-badge--silver{color:var(--medal-silver)}.ds-record-badge--bronze{color:var(--medal-bronze)}.ds-record-badge--muted{color:var(--text-muted)}.ds-record-badge-icon{flex-shrink:0}.ds-turn-badge{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;background:var(--turn-badge-fill);color:var(--turn-badge-text);border:.75px solid var(--turn-badge-text);border-radius:var(--radius-pill);font-family:var(--font-sans);font-weight:700;line-height:normal;font-variant-numeric:tabular-nums;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:box-shadow var(--duration-fast) var(--easing-out)}.ds-turn-badge-label{display:inline-block}.ds-turn-badge--md{min-width:22px;height:22px;font-size:12px}.ds-turn-badge--sm{min-width:18px;height:18px;border-width:.5px;font-size:11px}.ds-turn-badge--pill.ds-turn-badge--md{padding:0 7px}.ds-turn-badge--pill.ds-turn-badge--sm{padding:0 6px}.ds-turn-badge--clickable{cursor:pointer}.ds-turn-badge--clickable:hover{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-brand) 38%,transparent),0 0 7px 1px color-mix(in srgb,var(--accent-brand) 24%,transparent)}.ds-turn-badge--clickable:focus-visible{outline:none;box-shadow:0 0 0 2px var(--border-focus)}.ds-turn-label{display:inline-flex;align-items:center;gap:var(--space-1);min-width:0}.ds-turn-label--md{gap:var(--space-2)}.ds-turn-label-name{color:var(--text-primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ds-turn-label--md .ds-turn-label-name{font-size:var(--text-lg)}.ds-turn-label--sm .ds-turn-label-name{font-size:var(--text-sm)}.ds-turn-label--clickable{background:none;border:0;padding:0;margin:0;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-sm);user-select:none;-webkit-user-select:none}.ds-turn-label--clickable:hover .ds-turn-badge{transform:scale(1.12);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-brand) 30%,transparent)}.ds-turn-label--clickable:hover .ds-turn-label-name{color:var(--accent-brand)}.ds-turn-label-name{transition:color var(--duration-fast) var(--easing-out)}.ds-turn-label--clickable:focus-visible{outline:none;box-shadow:0 0 0 2px var(--border-focus)}.ds-popover{background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5;box-shadow:var(--shadow-md);z-index:var(--z-popover);max-width:min(360px,calc(100vw - 16px))}.ds-tooltip{background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);color:var(--text-primary);font-size:var(--text-xs);line-height:1.4;box-shadow:var(--shadow-sm);z-index:var(--z-tooltip);max-width:240px;pointer-events:none;white-space:normal}.ds-hovercard{padding:var(--space-4);max-width:min(320px,calc(100vw - 16px));color:var(--text-primary);transform-origin:top left;animation:ds-hovercard-pop .18s cubic-bezier(.34,1.56,.64,1) both}@keyframes ds-hovercard-pop{0%{opacity:0;transform:scale(.94) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(prefers-reduced-motion:reduce){.ds-hovercard{animation:none}}.ds-menu{min-width:180px;background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-1);z-index:var(--z-popover);box-shadow:none;display:flex;flex-direction:column}.ds-menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;font-family:inherit;font-size:var(--text-sm);color:var(--text-secondary);background:transparent;border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);cursor:pointer;transition:color var(--duration-fast) var(--easing-out),background-color var(--duration-fast) var(--easing-out);text-decoration:none}.ds-menu-item:hover:not(:disabled){color:var(--text-primary);background:var(--surface-elevated)}.ds-menu-item:focus-visible{outline:none;color:var(--text-primary);background:var(--surface-elevated)}.ds-menu-item:disabled{opacity:.5;cursor:not-allowed}.ds-menu-item-icon{display:inline-flex;align-items:center;flex-shrink:0;color:var(--text-muted)}.ds-menu-item:hover .ds-menu-item-icon{color:inherit}.ds-menu-item-label{flex:1;min-width:0}.ds-menu-item--admin{color:var(--text-muted);font-size:var(--text-xs)}.ds-menu-item--admin:hover:not(:disabled){color:var(--text-primary)}.ds-menu-item--danger:hover:not(:disabled){color:var(--accent-danger)}.ds-menu-divider{height:1px;background:var(--border-default);margin:var(--space-1) 0}.ds-menu-section-label{display:flex;align-items:center;gap:5px;padding:var(--space-1) var(--space-3) 2px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:var(--weight-semibold)}.glossary-term{background:none;border:0;padding:4px 0;margin:-4px 0;font:inherit;cursor:help;color:color-mix(in srgb,var(--brand-accent) 55%,var(--text-muted));transition:color .15s}.glossary-term:hover,.glossary-term:focus-visible{color:var(--brand-accent);outline:none}.glossary-entry{--gc-fg: var(--text-secondary);--gc-accent: var(--text-muted);--gc-tint: rgba(255, 255, 255, .06)}.glossary-entry[data-category=technique],.glossary-entry[data-category=strategy]{--gc-fg: #fbbf24;--gc-accent: #f59e0b;--gc-tint: color-mix(in srgb, var(--yellow) 10%, transparent)}.glossary-entry[data-category=cornering],.glossary-entry[data-category=regulation]{--gc-fg: #fca5a5;--gc-accent: #ef4444;--gc-tint: rgba(239, 68, 68, .1)}.glossary-entry[data-category=tires],.glossary-entry[data-category=etiquette]{--gc-fg: #86efac;--gc-accent: #22c55e;--gc-tint: rgba(34, 197, 94, .1)}.glossary-entry[data-category=dynamics],.glossary-entry[data-category=setup],.glossary-entry[data-category=sim]{--gc-fg: #93c5fd;--gc-accent: #3b82f6;--gc-tint: rgba(59, 130, 246, .1)}.glossary-entry{display:flex;flex-direction:column;min-height:0;background:var(--bg-primary)}.glossary-modal{max-width:min(960px,calc(100vw - 48px));max-height:calc(100dvh - 48px);animation:glossary-pop-in .16s cubic-bezier(.2,.9,.3,1.05)}.glossary-modal>.glossary-entry{flex:1;min-height:0;overflow:hidden}@keyframes glossary-pop-in{0%{transform:translateY(8px) scale(.985);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.glossary-modal-header{display:flex;flex-direction:column;gap:6px;padding:16px 20px 14px;border-bottom:1px solid var(--border)}.glossary-modal-header-top{display:flex;align-items:center;gap:10px}.glossary-modal-header-spacer{flex:1 1 auto;min-width:0}.glossary-modal-kicker{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gc-fg);white-space:nowrap}.glossary-modal-back,.glossary-modal-close{background:none;border:0;padding:6px;border-radius:6px;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.glossary-modal-back:hover,.glossary-modal-close:hover,.glossary-modal-back:focus-visible,.glossary-modal-close:focus-visible{color:var(--text-primary);background:var(--bg-secondary);outline:none}.glossary-modal-title-row{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}.glossary-modal-title-row .glossary-modal-kicker{margin-left:auto}.glossary-modal-title{font-size:24px;font-weight:700;letter-spacing:-.005em;line-height:1.1;color:var(--text-primary);margin:0;flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.glossary-modal-body{flex:1;overflow-y:auto;padding:14px 18px 18px;font-size:12.5px;line-height:1.55;color:var(--text-secondary)}.glossary-blockquote{margin:-14px -18px 14px;padding:12px 18px;border:0;border-bottom:1px solid var(--border);background:#ffffff17}.glossary-blockquote p{margin:0;font-size:13px;font-weight:500;line-height:1.5;letter-spacing:-.003em;color:var(--text-primary)}.glossary-blockquote p+p{margin-top:8px}.glossary-blockquote strong{display:inline-block;margin-right:6px;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted)}.glossary-modal-body em{font-style:normal;font-weight:600}.glossary-h1{display:none}.glossary-h2{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);margin:16px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--border)}.glossary-h3{font-size:12px;font-weight:600;color:var(--text-primary);margin:10px 0 4px}.glossary-p{margin:0 0 8px}.glossary-ul{margin:0 0 10px;padding-left:18px}.glossary-ul li{margin-bottom:3px}.glossary-modal-body code{font-family:var(--font-mono);font-size:.92em;background:var(--bg-secondary);padding:1px 5px;border-radius:3px}.glossary-modal-footer{padding:10px 18px 12px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.glossary-related-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:500}.glossary-related-chips{display:flex;flex-wrap:wrap;gap:6px}.glossary-related-chip{font:inherit;font-size:12px;padding:4px 10px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.glossary-related-chip:hover,.glossary-related-chip:focus-visible{color:var(--gc-fg, var(--text-primary));border-color:var(--gc-accent, var(--border-hover));background:var(--gc-tint, var(--bg-tertiary));outline:none}.glossary-related-inline{background:none;border:0;padding:0;margin:0;font:inherit;color:var(--brand-accent);cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;transition:color .12s}.glossary-related-inline:hover,.glossary-related-inline:focus-visible{color:var(--brand-accent-hover);outline:none}.glossary-external-link{color:var(--brand-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.glossary-external-link:hover{color:var(--brand-accent-hover)}.glossary-route-link{color:var(--brand-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.glossary-route-link:hover{color:var(--brand-accent-hover)}.glossary-figure{margin:14px 0;display:flex;flex-direction:column;gap:6px}.glossary-image{display:block;max-width:100%;height:auto;border-radius:8px;border:1px solid var(--border);background:var(--bg-input)}.glossary-figure-caption{font-size:12px;color:var(--text-muted);line-height:1.4}.glossary-diagram{margin:16px 0;display:flex;flex-direction:column;gap:8px}.glossary-diagram-svg{display:block;width:100%;max-width:480px;height:auto;background:var(--bg-input);border:1px solid var(--border);border-radius:10px;padding:12px;box-sizing:border-box}.glossary-diagram-svg text,.glossary-diagram-svg tspan{font-family:inherit}.glossary-diagram-caption{font-size:12px;color:var(--text-muted);line-height:1.4;max-width:480px}.apex-diagram-track-glow{fill:none;stroke:var(--border);stroke-width:56;stroke-linecap:round;stroke-linejoin:round;opacity:.35}.apex-diagram-track-surface{fill:none;stroke:var(--text-muted);stroke-width:46;stroke-linecap:round;stroke-linejoin:round;opacity:.22}.apex-diagram-curb{fill:none;stroke:var(--text-muted);stroke-width:1.5;stroke-dasharray:4 4;opacity:.55}.apex-diagram-line{fill:none;stroke-linecap:round}.apex-diagram-line--geometric{stroke:var(--text-muted);stroke-width:2;stroke-dasharray:6 5;opacity:.8}.apex-diagram-line--racing{stroke:var(--brand-accent);stroke-width:3}.apex-diagram-point{stroke:var(--bg-input);stroke-width:2}.apex-diagram-point--geometric{fill:var(--text-muted)}.apex-diagram-point--racing{fill:var(--brand-accent)}.apex-diagram-label{font-size:12px;font-weight:500;font-family:inherit}.apex-diagram-label--geometric{fill:var(--text-muted)}.apex-diagram-label--racing{fill:var(--brand-accent);font-weight:600}.apex-diagram-leader{stroke-width:1;stroke-dasharray:2 3;opacity:.7;fill:none}.apex-diagram-leader--geometric{stroke:var(--text-muted)}.apex-diagram-leader--racing{stroke:var(--brand-accent)}.apex-diagram-annotation line{stroke:var(--text-secondary);stroke-width:1.5}.apex-diagram-annotation text{font-size:11px;font-weight:500;fill:var(--text-secondary);font-family:inherit;text-transform:uppercase;letter-spacing:.06em}.glossary-link-card{display:flex;align-items:stretch;gap:14px;margin:14px 0;padding:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--text-primary);transition:border-color .15s,background .15s}.glossary-link-card:hover{border-color:color-mix(in srgb,var(--brand-accent) 35%,var(--border));background:color-mix(in srgb,var(--brand-accent) 4%,var(--bg-secondary))}.glossary-link-card-meta{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;padding:12px 14px;flex:1}.glossary-link-card-provider{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.glossary-link-card-url{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.glossary-link-card--youtube .glossary-link-card-thumb{position:relative;flex:0 0 160px;aspect-ratio:16 / 9;background:#000;overflow:hidden}.glossary-link-card--youtube .glossary-link-card-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.18)}.glossary-link-card-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:30px;color:#fff;background:#00000073;pointer-events:none;transition:background .15s}.glossary-link-card--youtube:hover .glossary-link-card-play{background:#0006}.glossary-link-card-x-icon{flex:0 0 56px;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:800;color:var(--text-primary);background:#000}.glossary-x-embed{margin:16px 0;display:flex;flex-direction:column;align-items:center;gap:0}.glossary-x-embed-mount{width:100%;display:flex;justify-content:center}.glossary-x-embed-mount:empty{display:none}.glossary-x-embed-mount iframe{clip-path:inset(0 round 12px)}@media(max-width:640px){.glossary-modal-backdrop{align-items:flex-end;padding:0}.glossary-modal{max-width:100%;max-height:92dvh;border-radius:16px 16px 0 0}}.glossary-paper{--paper-bg: var(--surface-panel);--paper-bg-deep: var(--surface-elevated);--paper-bg-card: var(--surface-hover);--paper-ink: var(--text-primary);--paper-ink-soft: var(--text-secondary);--paper-muted: var(--text-muted);--paper-rule: var(--border-strong);--paper-rule-soft: var(--border-default);--paper-rule-hair: var(--border-subtle);--paper-accent: var(--accent-brand);--paper-sans: "Inter", system-ui, -apple-system, sans-serif;color:var(--paper-ink);padding:12px}.glossary-paper-poster{position:relative;background:var(--paper-bg);border-radius:10px;overflow:hidden;flex-shrink:0}.glossary-paper-poster-frame{margin:4px;padding:16px 22px 18px;box-shadow:inset 0 0 0 1px var(--paper-rule-soft);border-radius:8px}.glossary-paper-masthead{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid var(--paper-rule);padding-bottom:10px;margin-bottom:10px}.glossary-paper-masthead-title{margin:0;font-family:var(--paper-sans);font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--paper-ink);line-height:1.1}.glossary-paper-toolbar{display:flex;align-items:center;gap:12px;padding:4px 0 8px;border-bottom:1px solid var(--paper-rule-soft);margin-bottom:8px;flex-wrap:wrap}.glossary-paper-count{margin:0 0 6px;font-family:var(--paper-sans);font-size:11px;font-weight:500;color:var(--paper-muted)}.glossary-paper-sections{display:flex;flex-direction:column;gap:14px}.glossary-paper-section-title{margin:0 0 4px;font-family:var(--paper-sans);font-size:14px;font-weight:700;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:var(--paper-ink);border-bottom:1px solid var(--paper-rule);padding:2px 0 4px}.glossary-paper-section-title--category{font-family:var(--paper-sans);font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.glossary-paper-entries{list-style:none;margin:0;padding:0}.glossary-paper-entry{display:block;width:100%;padding:5px 6px;background:none;border:0;border-bottom:1px solid var(--paper-rule-hair);font:inherit;text-align:left;cursor:pointer;transition:background .12s}.glossary-paper-entries li:last-child .glossary-paper-entry{border-bottom:0}.glossary-paper-entry:hover,.glossary-paper-entry:focus-visible{background:var(--paper-bg-card);outline:none}.glossary-paper-entry-title{font-family:var(--paper-sans);font-size:13px;font-weight:700;color:var(--paper-ink);letter-spacing:-.005em;white-space:nowrap}.glossary-paper-empty{margin:24px 0;font-family:var(--paper-sans);font-size:13px;color:var(--paper-muted);text-align:center}.glossary-paper-colophon{margin-top:14px;padding-top:8px;border-top:1px solid var(--paper-rule-soft);text-align:center;font-family:var(--paper-sans);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--paper-muted)}@media(max-width:640px){.glossary-paper-poster-frame{padding:12px 14px}}.hub-page.glossary-page{display:flex;flex-direction:row;gap:6px;align-items:stretch;overflow:hidden;min-height:0;flex:1}.glossary-page-list-pane{flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column}.glossary-page-list-pane.glossary-paper,.glossary-page-list-pane>.glossary-paper{flex:1;min-height:0;display:flex;flex-direction:column;padding:0}.glossary-page-list-pane .glossary-paper-poster{flex:1;flex-shrink:1;min-height:0;width:100%;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px}.glossary-page-list-pane .glossary-paper-poster-frame{flex:1;min-height:0;overflow-y:auto;margin:0;box-shadow:none;border-radius:0}.glossary-page-detail-pane{position:relative;flex:0 0 auto;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;overflow:hidden}.glossary-page-detail-pane>.glossary-entry{flex:1;min-height:0}.glossary-page-detail-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 32px;text-align:center;color:var(--text-muted)}.glossary-page-detail-empty-headline{margin:0;font-size:16px;font-weight:600;color:var(--text-secondary);letter-spacing:-.005em}.glossary-page-detail-empty-body{margin:0;font-size:13px;line-height:1.55;max-width:360px}.glossary-paper-entry.is-selected{background:color-mix(in srgb,var(--paper-accent) 10%,transparent)}.glossary-paper-entry.is-selected .glossary-paper-entry-title{color:var(--paper-accent)}.auth-modal{max-width:380px;position:relative;animation:auth-modal-enter .18s ease-out}.share-modal{max-width:460px;position:relative;animation:auth-modal-enter .18s ease-out}.share-modal-body{padding:var(--space-6) var(--space-5) var(--space-5)}.share-modal-title{margin:0 0 var(--space-1);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary)}.share-modal-subtitle{margin:0 0 var(--space-4);font-size:var(--text-md);color:var(--text-muted);line-height:1.4}.share-modal-url-row{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.share-modal-url{flex:1;min-width:0}.share-modal-url .ds-input{font-family:var(--font-mono);font-size:var(--text-sm)}.share-modal-copy{flex-shrink:0}.share-modal-divider{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-3) 0;color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em}.share-modal-divider:before,.share-modal-divider:after{content:"";flex:1;height:1px;background:var(--border-default)}.share-modal-quick-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}@media(max-width:480px){.share-modal-quick-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.share-modal-quick{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-3) var(--space-2);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--weight-medium);text-decoration:none;cursor:pointer;transition:background var(--duration-fast) var(--easing-out),border-color var(--duration-fast) var(--easing-out)}.share-modal-quick:hover{border-color:var(--border-strong)}.share-modal-quick span{text-align:center;line-height:1.2}.shared-session-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 18px;margin:12px 18px 0;background:color-mix(in srgb,var(--brand-accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--brand-accent) 32%,transparent);border-radius:8px;font-size:13px;color:var(--text-primary)}.shared-session-cta strong{margin-right:6px}@keyframes auth-modal-enter{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.auth-modal-close{position:absolute;top:12px;right:12px;font-size:18px;background:none;border:none;color:var(--text-muted);cursor:pointer;line-height:1;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;transition:color .15s,background .15s}.auth-modal-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.auth-modal-body{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 32px}.auth-modal-logo{width:160px;height:160px;margin-bottom:12px;color:var(--text-primary)}.auth-modal-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 6px}.auth-modal-subtitle{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0 0 20px;max-width:280px}.auth-modal-error{width:100%;margin:0 0 12px;padding:8px 12px;font-size:12px;color:var(--red);background:color-mix(in srgb,var(--red) 8%,transparent);border:1px solid color-mix(in srgb,var(--red) 25%,transparent);border-radius:6px;text-align:left}.auth-modal-providers{display:flex;flex-direction:column;gap:18px;width:100%}.auth-modal-provider-group{display:flex;flex-direction:column;gap:8px}.ds-button.auth-modal-provider-btn{gap:12px;padding:12px 16px;font-size:14px;font-weight:500;height:auto;border-radius:8px}.ds-button.auth-modal-provider-btn:disabled{cursor:wait}.auth-modal-footer{margin-top:16px;font-size:11px;color:var(--text-muted);line-height:1.5}.auth-modal-footer p{margin:0 0 4px}.auth-modal-footer p:last-child{margin-bottom:0}.auth-modal-footer a{color:var(--text-secondary);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:2px;transition:color .15s,text-decoration-color .15s}.auth-modal-footer a:hover{color:var(--text-primary);text-decoration-color:var(--text-primary)}.onboarding-modal-overlay{background:#000000b3}.onboarding-modal{max-width:520px;width:100%;position:relative;animation:auth-modal-enter .18s ease-out;max-height:calc(100vh - 48px);overflow-y:auto}.onboarding-stepper{display:flex;gap:4px;padding:14px 32px 0}.onboarding-stepper-dot{flex:1;height:4px;border-radius:2px;background:var(--border);transition:background .2s,transform .2s}.onboarding-stepper-dot.is-current{background:var(--brand-accent)}.onboarding-stepper-dot.is-done{background:color-mix(in srgb,var(--brand-accent) 55%,transparent)}.onboarding-modal-body{padding:16px 32px 28px}.onboarding-step{display:flex;flex-direction:column;gap:12px}.onboarding-step-title{font-size:22px;font-weight:600;color:var(--text-primary);margin:4px 0 0}.onboarding-step-hint{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0 0 8px}.onboarding-step-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;padding-top:16px;border-top:1px solid var(--border)}.onboarding-plate-preview{display:flex;justify-content:center;padding:8px 0 4px}.onboarding-plate-editor{background:transparent;padding:0;border:none}.onboarding-folders-wrap{margin:0 -8px}.onboarding-folders-wrap .folder-sync-panel{background:transparent;border:none;padding:0}.settings-page{flex:1;min-height:0;overflow-y:auto;width:100%;max-width:1100px;margin:0 auto;padding:24px 24px 64px;display:flex;gap:32px;align-items:flex-start;color:var(--text-primary)}.settings-sidebar{width:220px;flex-shrink:0;position:sticky;top:24px}.settings-title{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:0 0 16px;color:var(--text-primary)}.settings-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.settings-empty{padding:48px 24px;text-align:center;color:var(--text-muted)}.settings-header{margin-bottom:24px}.settings-tabs{display:flex;flex-direction:column;gap:2px}.settings-tab{font-family:inherit;font-size:14px;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;position:relative;font-weight:500;transition:color .15s,background-color .15s;text-align:left;padding:8px 12px 8px 16px}.settings-tab:hover{color:var(--text-primary);background:var(--surface-hover)}.settings-tab.active{color:var(--text-primary);font-weight:600;background:var(--surface-hover)}.settings-tab.active:before{content:"";position:absolute;left:4px;top:50%;transform:translateY(-50%);width:2px;height:60%;background:var(--accent-brand);border-radius:1px}.settings-header h1{margin:0 0 4px;font-size:22px;font-weight:600}.settings-subtitle{margin:0;color:var(--text-muted);font-size:13px}.settings-section{margin-bottom:28px;padding:18px 20px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px}.settings-section-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.settings-section-head h2{margin:0 0 2px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.settings-section-head p{margin:0;font-size:12px;color:var(--text-muted)}.settings-section--flush>.settings-section-title{margin:0 0 6px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.settings-section--flush>.settings-section-prose{margin:0 0 14px;font-size:13px;line-height:1.55;color:var(--text-muted)}.settings-row{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:16px 0;align-items:start}.settings-row+.settings-row{border-top:1px solid var(--border)}.settings-label{font-size:12px;font-weight:500;color:var(--text-secondary);padding-top:9px;text-align:right}.settings-control{min-width:0}.settings-control--full{grid-column:1 / -1}.settings-control--inline{display:inline-flex;align-items:center;gap:10px;line-height:1.4}.settings-hint{margin:8px 0 0;font-size:11px;color:var(--text-muted)}.settings-control--inline .settings-hint{margin:0;font-size:12px}.settings-row:has(.settings-control--inline){align-items:center}.settings-row:has(.settings-control--inline) .settings-label{padding-top:0}.settings-row:has(.settings-control--inline) .settings-provider-tag{padding-top:0}.settings-provider-tag{display:inline-flex;align-items:center;gap:6px;padding-top:9px;font-size:13px;color:var(--text-primary)}.plate-editor{display:flex;flex-direction:column;gap:16px}.plate-editor-fields{display:flex;flex-direction:column;gap:16px;min-width:0}.plate-field{display:flex;flex-direction:column;gap:6px}.plate-field-label{font-size:11px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.plate-field-hint{font-size:11px;color:var(--text-muted);margin:0}.plate-number-input{width:64px;font-weight:600;font-family:var(--font-mono);text-align:center;letter-spacing:.06em}.plate-color-group{display:inline-flex;align-items:stretch;border:1px solid var(--border);border-radius:6px;background:var(--bg-tertiary);overflow:hidden;height:36px}.plate-color-group:focus-within{border-color:var(--brand-accent)}.plate-color-picker{appearance:none;-webkit-appearance:none;border:none;width:56px;height:100%;padding:0;background:transparent;cursor:pointer;flex-shrink:0}.plate-color-picker::-webkit-color-swatch-wrapper{padding:0}.plate-color-picker::-webkit-color-swatch{border:none;border-right:1px solid var(--border);border-radius:0}.plate-color-picker::-moz-color-swatch{border:none;border-right:1px solid var(--border);border-radius:0}.plate-hex-input{width:100px;height:100%;font-family:var(--font-mono);font-size:13px;background:transparent;border:none;color:var(--text-primary);padding:0 12px;letter-spacing:.04em;text-transform:lowercase}.plate-hex-input:focus{outline:none}.plate-font-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:6px}.plate-font-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:var(--bg-tertiary);border:2px solid transparent;border-radius:6px;padding:6px 4px;cursor:pointer;color:var(--text-primary);transition:border-color .15s,background .15s;min-height:50px}.plate-font-tile:hover{background:var(--bg-primary)}.plate-font-tile.is-selected{border-color:var(--brand-accent);background:var(--bg-primary)}.plate-font-tile-sample{font-size:18px;line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums}.plate-font-tile-label{font-size:10px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.plate-preview{display:flex;align-items:center;padding:16px 0 0;margin-top:8px;border-top:1px solid var(--border)}.seg-toggle{display:inline-flex;background:var(--bg-tertiary);border-radius:6px;padding:2px}.seg-toggle-btn{background:transparent;border:none;font-family:inherit;font-size:12px;font-weight:500;color:var(--text-muted);padding:5px 14px;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.seg-toggle-btn:hover{color:var(--text-secondary)}.seg-toggle-btn.is-selected{background:var(--bg-secondary);color:var(--text-primary)}.settings-status-tag{font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary);padding:4px 10px;border-radius:999px}.settings-status-tag.is-ok{color:var(--green);background:color-mix(in srgb,var(--green) 12%,transparent)}.settings-account-row{display:flex;align-items:center;gap:10px;padding:12px 0}.settings-account-row+.settings-account-row{border-top:1px solid var(--border)}.settings-account-logo-mark{height:18px;max-width:38px}.settings-account-logo-mark--cta{height:14px;max-width:24px}.settings-account-status-icon{color:var(--text-muted);flex-shrink:0}.settings-account-status-icon.is-ok{color:var(--green)}.settings-account-attribution{font-size:12px;color:var(--text-secondary)}.settings-footer{display:flex;align-items:center;justify-content:space-between;margin-top:24px;padding-top:16px;border-top:1px solid var(--border);color:var(--text-muted);font-size:12px}.settings-version{font-variant-numeric:tabular-nums}.sim-data-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(min-width:720px){.sim-data-grid{grid-template-columns:repeat(2,1fr)}}.sim-data-card{display:flex;flex-direction:column;gap:var(--space-3);height:100%}.sim-data-card__head{display:flex;align-items:center;gap:var(--space-2)}.sim-data-card__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);background:var(--surface-inset);color:var(--text-secondary)}.sim-data-card__title{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.sim-data-card__enables{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-secondary)}.sim-data-card__status{margin:0;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.sim-data-card__detail{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-muted)}.sim-data-card__actions{margin-top:auto;padding-top:var(--space-2);display:flex;flex-wrap:wrap;gap:var(--space-2)}.folder-sync-panel{display:flex;flex-direction:column;gap:14px}.recorder-cloud-sync-panel{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px}.recorder-cloud-sync-panel__head{display:flex;flex-direction:column;gap:4px}.recorder-cloud-sync-panel__title{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--text-primary)}.recorder-cloud-sync-panel__copy{margin:0;color:var(--text-muted);font-size:.875rem;line-height:1.45}.recorder-cloud-sync-panel__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.recorder-cloud-sync-panel__status{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-muted)}.recorder-cloud-sync-panel__status--ok{color:var(--text-secondary)}.recorder-cloud-sync-panel__status--warn{color:var(--yellow)}.recorder-cloud-sync-panel__status--err{color:var(--red, #f87171)}.recorder-cloud-sync-panel__hint{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-tertiary);border-radius:6px;font-size:.8125rem;color:var(--text-secondary);line-height:1.4}.folder-sync-cards{display:flex;flex-direction:column;gap:10px}.folder-sync-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;transition:border-color .12s,background .12s}.folder-sync-card{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:14px;padding:12px 16px}.folder-sync-card--unconfigured:hover{border-color:color-mix(in srgb,var(--brand-accent) 30%,var(--border))}.folder-sync-card-logo{height:22px;width:auto;max-width:100%;justify-self:center;flex-shrink:0}.folder-sync-card-info{min-width:0;display:flex;flex-direction:column;gap:2px}.folder-sync-card-title{font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-sync-card-path{font-size:12px;color:var(--text-muted);display:flex;align-items:baseline;gap:8px;min-width:0}.folder-sync-card-path code{font-family:var(--font-mono);background:transparent;padding:0;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.folder-sync-card-path-aside{color:var(--text-muted);opacity:.8;font-style:italic;white-space:nowrap}.folder-sync-card-caveat{grid-column:1 / -1;display:flex;align-items:flex-start;gap:6px;margin-top:4px;padding:8px 10px;font-size:11px;line-height:1.5;color:var(--text-secondary);background:var(--bg-input);border-radius:6px}.folder-sync-card-caveat svg{flex-shrink:0;margin-top:2px;color:var(--text-muted)}.folder-sync-card-caveat code{font-family:var(--font-mono);font-size:10px;background:#ffffff0a;padding:1px 4px;border-radius:3px;word-break:break-word}.folder-sync-card-caveat-body{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}.folder-sync-card-actions{display:flex;align-items:center;gap:8px}.folder-sync-card-actions--inline{gap:12px}.folder-sync-card-actions--compact{gap:4px}.folder-sync-card-cta{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.folder-sync-card-skip{font-family:inherit;font-size:12px;color:var(--text-muted);background:none;border:none;padding:4px 6px;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:color .12s,text-decoration-color .12s}.folder-sync-card-skip:hover{color:var(--text-secondary);text-decoration-color:var(--text-muted)}.folder-sync-card--configured .folder-sync-card-info{gap:2px}.folder-sync-card-row1{display:flex;align-items:center;gap:10px;min-width:0}.folder-sync-card-row1>.folder-sync-connected{margin-left:auto}.folder-sync-card-row2{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);min-width:0}.folder-sync-card-row2 svg{flex-shrink:0;color:var(--text-muted)}.folder-picker{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:transparent;border:1px solid transparent;border-radius:4px;font:inherit;font-size:12px;color:var(--text-secondary);cursor:pointer;min-width:0;transition:background .12s,border-color .12s,color .12s}.folder-picker:hover:not(:disabled),.folder-picker:focus-visible:not(:disabled){background:var(--bg-tertiary);border-color:var(--border);color:var(--text-primary);outline:none}.folder-picker:disabled{cursor:not-allowed;opacity:.55}.folder-picker-icon{flex-shrink:0;color:var(--text-muted)}.folder-picker:hover:not(:disabled) .folder-picker-icon,.folder-picker:focus-visible:not(:disabled) .folder-picker-icon{color:var(--text-secondary)}.folder-picker-label{font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.folder-picker--empty{color:var(--text-primary);border-color:color-mix(in srgb,var(--brand-accent) 35%,var(--border))}.folder-picker--empty .folder-picker-icon{color:var(--brand-accent)}.folder-picker--empty .folder-picker-label{font-family:inherit}.folder-picker--empty:hover:not(:disabled),.folder-picker--empty:focus-visible:not(:disabled){border-color:var(--brand-accent);background:color-mix(in srgb,var(--brand-accent) 8%,transparent)}.folder-sync-last{white-space:nowrap;flex-shrink:0}.folder-sync-connected{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;font-size:11px;font-weight:600;color:var(--green, #22c55e);background:color-mix(in srgb,var(--green, #22c55e) 14%,transparent);border-radius:4px;white-space:nowrap}.folder-sync-card--skipped{opacity:.55}.folder-sync-card--skipped:hover{opacity:.85}.folder-sync-card--skipped .folder-sync-card-info{flex-direction:row;align-items:baseline;gap:10px}.folder-sync-card-skipped-label{font-size:11px;color:var(--text-muted);font-style:italic}.folder-sync-footer-wrap{display:flex;flex-direction:column;gap:4px;padding-top:4px}.folder-sync-footer{display:flex;justify-content:flex-start;align-items:center;gap:12px}.folder-sync-info-slot{min-height:18px;display:flex;align-items:center}.folder-sync-info{font-size:12px;color:var(--text-muted);opacity:0;transition:opacity .35s ease}.folder-sync-info.is-visible{opacity:1}.folder-sync-footer .btn{display:inline-flex;align-items:center;gap:8px}.folder-sync-error{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;font-size:12px;color:var(--red);background:color-mix(in srgb,var(--red) 8%,transparent);border:1px solid color-mix(in srgb,var(--red) 25%,transparent);border-radius:6px;line-height:1.4}.folder-sync-panel--unsupported .folder-sync-hint{color:var(--text-secondary)}@keyframes folder-sync-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.folder-sync-spin{animation:folder-sync-spin 1s linear infinite}.sim-logo{display:inline-block;height:14px;width:auto;max-width:76px;object-fit:contain;vertical-align:middle;color:var(--text-secondary)}.sim-logo--mark{height:22px;max-width:38px}.sim-logo--xl{height:28px;max-width:152px}.terminal-command{display:flex;flex-direction:column;gap:6px;margin:0;max-width:720px}.terminal-command-caption{font-size:12px;color:var(--text-muted);letter-spacing:.02em}.terminal-command-surface{position:relative;background:#0d1117;border:1px solid var(--border);border-radius:6px;overflow:hidden}.terminal-command-body{margin:0;padding:12px 44px 12px 14px;font-family:var(--font-mono);font-size:13px;line-height:1.55;overflow-x:auto;white-space:pre}.terminal-command-line{display:flex;align-items:baseline;gap:10px}.terminal-command-prompt{color:#7ee787;-webkit-user-select:none;user-select:none;flex-shrink:0}.terminal-command-text{color:var(--text-primary);font-weight:500}.terminal-command-flag{color:#79c0ff}.terminal-command-string{color:#ffd866}.terminal-command-text-token,.terminal-command-text>.terminal-command-text{color:inherit}.terminal-command-copy{position:absolute;top:6px;right:6px;background:transparent;color:var(--text-muted)}.terminal-command-copy:hover{color:var(--text-primary);background:#ffffff0f}.upload-progress-bar{margin-bottom:var(--space-3)}.upload-progress-status{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.upload-progress-count{font-size:var(--text-xs);color:var(--text-secondary);margin:0 0 4px}.upload-progress-filename{font-size:11px;color:var(--text-primary);margin:0 0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.upload-progress-phase{font-size:11px;color:var(--text-muted);margin:6px 0 0;font-style:italic}.upload-progress-phase--dots:after{display:inline-block;width:1.4em;text-align:left;animation:upload-progress-dots 1.4s steps(4,end) infinite;content:""}@keyframes upload-progress-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.upload-progress-actions{display:flex;justify-content:flex-end;margin-top:var(--space-4)}.upload-progress-errors{margin-top:var(--space-3);padding:8px 12px;background:color-mix(in srgb,var(--red) 10%,transparent);border-radius:var(--radius-md)}.upload-progress-error{font-size:var(--text-xs);color:var(--red);margin:4px 0}.upload-session{display:flex;align-items:center}.upload-summary-footer{justify-content:flex-end}.upload-summary-footer .btn{min-width:120px}.upload-summary-modal{max-width:960px;width:90vw}.upload-summary-header{display:flex;align-items:center;gap:10px}.upload-summary-sim-tag{margin-right:8px;vertical-align:1px}.upload-summary-sim-logo{height:22px;max-width:100%;object-fit:contain;margin-right:8px;vertical-align:middle}.upload-summary-section{margin-top:16px}.upload-summary-section:first-child{margin-top:0}.upload-summary-section-title{margin:0 0 4px;font-size:12px;font-weight:600;color:var(--text-primary)}.upload-summary-muted{color:var(--text-secondary)}.upload-summary-err{color:var(--red, #e25858)}.upload-summary-section-hint{margin:0 0 8px;font-size:11px;color:var(--text-muted)}.upload-summary-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(560px,1fr));gap:6px 8px}.upload-summary-cumulative{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.upload-summary-cumulative li{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.upload-summary-cumulative-name{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 0;min-width:0}.upload-summary-cumulative-arrow{flex:0 0 auto;color:var(--text-muted)}.upload-summary-disclosure{margin-top:4px}.upload-summary-disclosure>summary{cursor:pointer;font-size:12px;color:var(--text-secondary);padding:2px 0;-webkit-user-select:none;user-select:none}.upload-summary-disclosure>summary:hover{color:var(--text-primary)}.upload-summary-disclosure[open]>summary{margin-bottom:6px}.upload-summary-filelist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.upload-summary-filelist li{font-size:12px;color:var(--text-secondary)}.upload-summary-item{display:grid;grid-template-columns:124px minmax(0,280px) 1fr 110px 64px;align-items:center;gap:10px;width:100%;padding:6px 10px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);text-align:left;font-size:12px;cursor:pointer;transition:background-color .12s,border-color .12s}.upload-summary-item>.car-badge{min-width:0;overflow:hidden}.upload-summary-item>.car-badge .car-badge-model{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.upload-summary-track{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.upload-summary-item:hover{background:var(--bg-secondary);border-color:var(--text-muted)}.upload-summary-item--static{cursor:default;opacity:.75}.upload-summary-item--static:hover{background:var(--bg-tertiary);border-color:var(--border)}.upload-summary-anon-hint{padding:4px 10px 0;color:var(--text-muted);font-size:11px}.upload-summary-item-primary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-summary-item-meta,.upload-summary-laps{white-space:nowrap;text-align:right}.upload-summary-sep{color:var(--text-muted);margin:0 4px}.upload-summary-errors{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.upload-summary-errors li{display:flex;gap:8px;padding:4px 0;font-size:11px}.upload-summary-err-file{color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.upload-summary-err-msg{color:var(--text-muted);flex:1;min-width:0}.user-badge,.car-badge{display:inline-flex;align-items:stretch;vertical-align:middle;overflow:hidden;border-radius:var(--radius-sm);background:var(--surface-subtle-strong);font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text-primary);line-height:1.2;min-width:0}.car-badge--link{text-decoration:none;color:inherit;transition:color var(--duration-fast) var(--easing-out)}.car-badge--link:hover{color:var(--brand-accent)}.user-badge .race-plate{border:none!important;border-radius:0!important;box-shadow:none!important}.user-badge-name{display:inline-flex;align-items:center;padding:0 var(--space-3) 0 var(--space-2);min-width:0}.car-badge{height:28px}.car-badge-well{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:56px;padding:0 var(--space-2);background:#1a1a1a}.car-badge-well .manufacturer-logo{width:100%;height:calc(100% - 8px);object-fit:contain;background:transparent;padding:0;border-radius:0;opacity:1;display:block;flex-shrink:0;shape-rendering:geometricPrecision;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.car-badge-text{display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3) 0 var(--space-2);min-width:0}.car-badge-make{color:var(--text-secondary);font-weight:var(--weight-semibold);white-space:nowrap;flex-shrink:0}.car-badge-model{color:var(--text-primary);font-weight:var(--weight-regular);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.car-badge-make:after{content:"·";margin-left:var(--space-2);color:var(--text-muted);font-weight:var(--weight-regular);line-height:1}.car-badge--compact .car-badge-make:after{content:none}.car-badge--compact .car-badge-make{display:none}.manufacturer-badge{display:inline-flex;align-items:center;gap:var(--space-2);vertical-align:middle;font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text-primary);min-width:0}.manufacturer-badge-name{line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.manufacturer-logo{display:inline-block;width:40px;height:24px;object-fit:contain;vertical-align:middle;shape-rendering:geometricPrecision;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;background:#1a1a1a;padding:2px 4px;border-radius:var(--radius-sm);box-sizing:border-box}.manufacturer-logo--empty{background:transparent}.ai-usage-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:color-mix(in srgb,var(--nav-text) 70%,var(--surface-nav));cursor:default}.ai-usage-ring{position:absolute;inset:0;margin:auto;transition:color .2s}.ai-usage-icon{position:relative;z-index:1;color:inherit;opacity:.85}.ai-usage-badge--ok{color:color-mix(in srgb,var(--nav-text) 70%,var(--surface-nav))}.ai-usage-badge--warn{color:var(--yellow)}.ai-usage-badge--at-cap{color:var(--red)}.ai-usage-badge--disabled{color:#64748b;opacity:.5}.ai-usage-badge--active{color:var(--brand-accent)}.ai-usage-badge--active .ai-usage-ring{animation:ai-usage-ring-spin 1.2s linear infinite}.ai-usage-badge--active .ai-usage-icon{animation:ai-usage-icon-pulse 1.2s ease-in-out infinite}@keyframes ai-usage-ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ai-usage-icon-pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.ai-usage-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:100;min-width:180px;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;box-shadow:none;font-size:11px;color:var(--text-primary);pointer-events:none}.ai-usage-popover-title{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px}.ai-usage-popover-figures{display:flex;align-items:baseline;gap:4px;font-variant-numeric:tabular-nums;margin-bottom:6px}.ai-usage-popover-spent{font-size:14px;font-weight:600;color:var(--text-primary)}.ai-usage-popover-of{font-size:11px;color:var(--text-muted)}.ai-usage-popover-cap{font-size:12px;color:var(--text-secondary)}.ai-usage-popover-hint{font-size:10px;color:var(--text-muted);line-height:1.4}.ingest-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);height:28px;max-width:320px;border:0;border-radius:var(--radius-md);background:color-mix(in srgb,var(--nav-text) 8%,var(--surface-nav));color:var(--nav-text);font-size:var(--text-xs);font-weight:500;line-height:1;cursor:pointer;position:relative;overflow:hidden;transition:background-color .12s;user-select:text;-webkit-user-select:text}.ingest-chip:hover{background:color-mix(in srgb,var(--nav-text) 14%,var(--surface-nav))}.ingest-chip:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}.ingest-chip--progress{background:color-mix(in srgb,var(--brand-accent) 14%,var(--surface-nav));color:var(--nav-text)}.ingest-chip--progress:hover{background:color-mix(in srgb,var(--brand-accent) 22%,var(--surface-nav))}.ingest-chip--success{background:color-mix(in srgb,var(--green) 14%,var(--surface-nav));color:var(--nav-text)}.ingest-chip--success:hover{background:color-mix(in srgb,var(--green) 22%,var(--surface-nav))}.ingest-chip--warning{background:color-mix(in srgb,var(--yellow) 18%,var(--surface-nav));color:var(--nav-text)}.ingest-chip--warning:hover{background:color-mix(in srgb,var(--yellow) 26%,var(--surface-nav))}.ingest-chip-label{display:inline-flex;align-items:baseline;gap:var(--space-2);min-width:0}.ingest-chip-count{font-variant-numeric:tabular-nums;font-weight:600;flex:0 0 auto}.ingest-chip-filename{font-family:var(--font-mono);font-size:var(--text-xs);opacity:.75;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ingest-chip-summary{white-space:nowrap;font-weight:500}.ingest-chip-glyph{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:999px;font-size:10px;font-weight:700;line-height:1}.ingest-chip-glyph--success{background:var(--green);color:var(--surface-nav)}.ingest-chip-glyph--warning{background:var(--yellow);color:var(--surface-nav)}.ingest-chip-progress{position:absolute;left:0;right:0;bottom:0;border-radius:0;margin:0}.ingest-chip-popover{width:min(560px,calc(100vw - 24px));max-width:min(560px,calc(100vw - 24px));max-height:70vh;overflow-y:auto;padding:var(--space-4)}.ingest-chip-popover-actions{display:flex;justify-content:flex-end;margin-top:var(--space-3)}.ingest-chip-dismiss{background:transparent;border:0;color:var(--text-secondary);font-size:var(--text-xs);font-weight:500;cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:color .12s,background-color .12s}.ingest-chip-dismiss:hover{color:var(--text-primary);background:var(--surface-subtle)}.lap-count{display:inline-flex;flex-direction:column;gap:var(--space-1);min-width:0}.lap-count-figure-row{display:inline-flex;align-items:baseline;gap:var(--space-2)}.lap-count-figure{font-weight:var(--weight-bold);color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.01em;transition:color .7s var(--easing-out),text-shadow .7s var(--easing-out);transform-origin:left center}.lap-count-unit{color:var(--text-muted);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.04em}.lap-count-delta{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent-success);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.lap-count-delta-icon{width:1em;height:1em;flex-shrink:0}.lap-count--sm .lap-count-figure{font-size:var(--text-lg)}.lap-count--sm .lap-count-unit,.lap-count--sm .lap-count-delta{font-size:var(--text-xs)}.lap-count--md .lap-count-figure{font-size:var(--text-2xl)}.lap-count--md .lap-count-unit{font-size:var(--text-sm)}.lap-count--md .lap-count-delta{font-size:var(--text-xs)}.lap-count--lg .lap-count-figure{font-size:48px}.lap-count--lg .lap-count-unit{font-size:var(--text-md)}.lap-count--lg .lap-count-delta{font-size:var(--text-sm)}.lap-count--celebrate.lap-count--rolling .lap-count-figure{color:var(--accent-success);text-shadow:0 0 18px color-mix(in srgb,var(--accent-success) 45%,transparent)}.lap-count--celebrate.lap-count--landed .lap-count-figure{animation:lap-count-pop .48s var(--easing-out)}@keyframes lap-count-pop{0%{transform:scale(1)}30%{transform:scale(1.1)}to{transform:scale(1)}}.lap-count--celebrate .lap-count-delta{animation:lap-count-delta-in .6s var(--easing-out) .7s both}@keyframes lap-count-delta-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.lap-count-figure,.lap-count--celebrate.lap-count--rolling .lap-count-figure,.lap-count--celebrate.lap-count--landed .lap-count-figure{transition:none;animation:none;text-shadow:none}.lap-count--celebrate .lap-count-delta{animation:none}}.header-lap-count{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:background var(--duration-fast) var(--easing-out)}.header-lap-count:hover{background:var(--surface-subtle)}.header-lap-count .lap-count-figure-row{gap:var(--space-1)}.header-lap-count .lap-count-figure{color:var(--nav-text);font-size:13px;font-weight:var(--weight-semibold);letter-spacing:0}.header-lap-count .lap-count-unit{color:var(--nav-text-muted);font-size:13px;font-weight:var(--weight-medium);text-transform:none;letter-spacing:0}.header-lap-count--enter{transform-origin:center;animation:header-lap-enter 1.4s var(--easing-out) both,header-lap-glow 1.4s var(--easing-out) both}@keyframes header-lap-enter{0%{opacity:0;transform:translateY(-7px) scale(.9)}16%{opacity:1;transform:translateY(0) scale(1)}38%{transform:scale(1.09)}50%{transform:scale(1)}66%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes header-lap-glow{0%,to{background:transparent}35%,65%{background:color-mix(in srgb,var(--accent-success) 16%,transparent)}}.header-lap-count--enter .lap-count--landed .lap-count-figure{animation:none}@media(prefers-reduced-motion:reduce){.header-lap-count--enter{animation:none}}.session-load-progress-track{position:relative;width:100%;height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.session-load-progress-fill{height:100%;background:var(--brand-accent);border-radius:2px}.session-load-progress-fill--indeterminate{width:35%;animation:session-load-indeterminate 1.2s ease-in-out infinite}@keyframes session-load-indeterminate{0%{transform:translate(-100%)}to{transform:translate(285%)}}.app-update-banner{position:fixed;top:0;left:0;right:0;z-index:9999;background:var(--brand-accent);color:var(--bg-primary);padding:var(--space-2) var(--space-4);display:flex;align-items:center;justify-content:center;gap:var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-semibold);box-shadow:var(--shadow-md)}.app-update-banner-reload{background:var(--bg-primary);color:var(--brand-accent);border-color:var(--bg-primary)}.app-update-banner-reload:hover{background:var(--bg-primary);color:var(--brand-accent);filter:brightness(1.15)}.whatsnew-modal{background-color:var(--surface-panel);background-image:radial-gradient(120% 90% at 50% -10%,color-mix(in srgb,var(--brand-accent) 16%,transparent),transparent 62%);max-width:min(960px,calc(100vw - 48px));max-height:calc(100dvh - 48px);animation:glossary-pop-in .16s cubic-bezier(.2,.9,.3,1.05)}.whatsnew-modal-header{display:flex;align-items:center;gap:12px;padding:18px 22px 14px}.whatsnew-modal-title{flex:1;font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);margin:0}.whatsnew-modal-close{background:none;border:0;padding:6px;border-radius:6px;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.whatsnew-modal-close:hover,.whatsnew-modal-close:focus-visible{color:var(--text-primary);background:var(--bg-secondary);outline:none}.whatsnew-modal-body{overflow-y:auto;padding:16px 22px 4px;display:flex;flex-direction:column;gap:28px}.whatsnew-modal-footer{padding:12px 20px 16px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.whatsnew-empty{font-size:13px;color:var(--text-muted);padding:12px 0;margin:0}.whatsnew-release{display:flex;flex-direction:column;gap:14px}.whatsnew-release-header{display:flex;align-items:center;gap:10px}.whatsnew-release-version{display:inline-flex;align-items:center;padding:3px 9px;background:color-mix(in srgb,var(--brand-accent) 22%,var(--bg-secondary));border:1px solid color-mix(in srgb,var(--brand-accent) 40%,var(--border));border-radius:999px;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--brand-accent-hover);font-variant-numeric:tabular-nums;letter-spacing:.02em}.whatsnew-release-date{font-size:11px;color:var(--text-muted);letter-spacing:.02em}.whatsnew-kind{display:flex;flex-direction:column;gap:8px}.whatsnew-kind-label{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.whatsnew-kind--new .whatsnew-kind-label{color:var(--green)}.whatsnew-kind--improved .whatsnew-kind-label{color:var(--yellow)}.whatsnew-kind--fixed .whatsnew-kind-label{color:var(--trace-1)}.whatsnew-list{list-style:none;padding:0 0 0 6px;margin:0;display:flex;flex-direction:column;gap:14px}.whatsnew-item{position:relative;padding-left:18px;display:flex;flex-direction:column;gap:4px}.whatsnew-item:before{content:"";position:absolute;left:4px;top:.55em;width:5px;height:5px;border-radius:50%;background:var(--text-muted)}.whatsnew-item-title{font-size:14px;font-weight:600;color:var(--text-primary);line-height:1.35}.whatsnew-item-body{font-size:13px;line-height:1.55;color:var(--text-secondary)}.upload-drop-zone-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;min-height:100%;gap:16px}.upload-drop-zone{border:2px dashed var(--border-hover);border-radius:16px;padding:48px 40px;text-align:center;max-width:520px;width:100%;transition:border-color .2s,background .2s;cursor:pointer;user-select:none;-webkit-user-select:none}.upload-drop-zone:hover,.upload-drop-zone.active{border-color:var(--text-muted);background:#ffffff05}.upload-drop-zone h2{font-size:20px;font-weight:600;margin:0 0 6px;letter-spacing:-.02em}.upload-drop-zone-subtitle{color:var(--text-secondary);font-size:13px;margin:0 0 18px}.upload-drop-zone-icon{display:block;margin:0 auto 8px;color:var(--brand-accent);opacity:.7}.upload-drop-zone-browse{margin-bottom:12px}.upload-drop-zone-settings-hint{margin:0;font-size:12px;color:var(--text-muted)}.upload-drop-zone-settings-link{color:var(--brand-accent);text-decoration:none;font-weight:500}.upload-drop-zone-settings-link:hover{text-decoration:underline}.upload-drop-zone-notice{width:100%;max-width:520px;background:color-mix(in srgb,var(--yellow) 8%,transparent);border:1px solid color-mix(in srgb,var(--yellow) 30%,transparent);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.upload-drop-zone-notice-body{font-size:12px;color:var(--text-primary);line-height:1.5}.upload-drop-zone-notice-body strong{color:var(--yellow)}.upload-drop-zone-notice-body code{font-family:var(--font-mono);font-size:11px;background:#ffffff0f;border:1px solid var(--border);border-radius:4px;padding:1px 5px}.upload-drop-zone-notice-actions{display:flex;gap:8px}.landing-page{flex:1;display:flex;flex-direction:column;align-items:center;padding:48px 24px 64px;gap:0;overflow-y:auto}.landing-page .drop-zone-container{padding:0}.landing-hero-card-row{width:100%;max-width:1080px;margin-bottom:20px}.landing-setup-cta{--cta-amber: #fbbf24;--cta-amber-tint: color-mix(in srgb, var(--cta-amber) 12%, transparent);--cta-amber-edge: color-mix(in srgb, var(--cta-amber) 40%, transparent);display:flex;align-items:center;gap:16px;width:100%;max-width:1080px;margin-bottom:20px;padding:16px 20px;background:var(--cta-amber-tint);border:1px solid var(--cta-amber-edge);border-radius:10px}.landing-setup-cta-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;background:color-mix(in srgb,var(--cta-amber) 18%,transparent);color:var(--cta-amber)}.landing-setup-cta-icon svg{width:26px;height:26px}.landing-setup-cta-text{flex:1;min-width:0}.landing-setup-cta-title{margin:0 0 3px;font-size:16px;font-weight:700;letter-spacing:-.005em;color:var(--text-primary)}.landing-setup-cta-body{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.45}.landing-setup-cta .landing-setup-cta-action{background:var(--cta-amber);border-color:var(--cta-amber);color:#1a1612;font-weight:600}.landing-setup-cta .landing-setup-cta-action:hover{background:color-mix(in srgb,var(--cta-amber) 88%,#000);border-color:color-mix(in srgb,var(--cta-amber) 88%,#000)}.landing-loaded-cta{display:flex;align-items:center;gap:16px;width:100%;max-width:1080px;margin-bottom:20px;padding:14px 18px;background:color-mix(in srgb,var(--brand-accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--brand-accent) 35%,transparent);border-radius:10px}.landing-loaded-cta-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:color-mix(in srgb,var(--brand-accent) 18%,transparent);color:var(--brand-accent)}.landing-loaded-cta-text{flex:1;min-width:0}.landing-loaded-cta-title{margin:0 0 2px;font-size:15px;font-weight:600;color:var(--text-primary)}.landing-loaded-cta-body{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.4}.landing-loaded-cta-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.landing-outdated-banner{display:flex;align-items:center;gap:16px;width:100%;max-width:1080px;margin-bottom:20px;padding:14px 18px;background:color-mix(in srgb,#f59e0b 10%,transparent);border:1px solid color-mix(in srgb,#f59e0b 35%,transparent);border-radius:10px}.landing-outdated-banner-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:color-mix(in srgb,#f59e0b 20%,transparent);color:#b45309}.landing-outdated-banner-text{flex:1;min-width:0}.landing-outdated-banner-title{margin:0 0 2px;font-size:15px;font-weight:600;color:var(--text-primary)}.landing-outdated-banner-body{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.4}.landing-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1080px;width:100%;margin-bottom:40px}.landing-card{position:relative;overflow:hidden;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;text-decoration:none;color:var(--text-primary);transition:border-color .15s,transform .2s;min-height:220px}.landing-card--hero{min-height:300px}.landing-card:hover{border-color:var(--border-hover)}a.landing-card:hover{transform:translateY(-2px)}.landing-card-art{position:absolute;inset:0;background-size:cover;background-position:center;pointer-events:none;z-index:0}.landing-card--hero .landing-card-art{background-size:100% auto;background-position:top left;background-repeat:no-repeat}.landing-card-art-gradient{position:absolute;inset:0;pointer-events:none;z-index:1}.landing-card-content{position:relative;z-index:2;display:flex;flex-direction:column;padding:20px 22px;gap:8px}.landing-card--hero .landing-card-content{padding:24px 28px}.landing-card-content--compact{gap:14px}.landing-card-content--compact .landing-card-heading{display:flex;flex-direction:column;gap:2px}.landing-card-content--compact .landing-card-desc{font-size:13px;margin:0;max-width:540px}.landing-card--analyze{cursor:default}.landing-card-icon{color:var(--brand-accent);margin-bottom:4px}.landing-card-title{font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);margin:0}.landing-card--hero .landing-card-title{font-size:26px}.landing-card-desc{font-size:14px;color:var(--text-secondary);line-height:1.55;margin:0;max-width:540px}.landing-card-path{display:inline-block;margin-top:4px;padding:3px 8px;font-family:var(--font-mono);font-size:11px;color:var(--text-primary);background:#ffffff0d;border:1px solid var(--border);border-radius:4px;word-break:break-all}.landing-card-acc-howto{display:flex;flex-direction:column;gap:10px;flex:1}.landing-card-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.landing-card-steps li{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--text-secondary);line-height:1.5}.landing-card-step-num{flex-shrink:0;width:20px;height:20px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-primary);font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-top:1px}.landing-card-step-body{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.landing-card-pair{display:flex;flex-direction:column;gap:4px;margin-top:2px;padding:8px 10px;background:#ffffff0a;border:1px solid var(--border);border-radius:6px}.landing-card-pair-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.landing-card-pair-name{font-family:var(--font-mono);font-size:12px;color:var(--text-primary)}.landing-card-pair-name strong{color:var(--brand-accent);font-weight:700}.landing-card-pair-note{font-size:11px;color:var(--text-muted);font-style:italic}.landing-card-step-tip{font-size:11px;color:var(--text-muted);font-style:italic;margin-top:2px}.landing-card-link{font-size:12px;color:var(--brand-accent);margin-top:12px}.landing-card-list{display:flex;flex-direction:column;gap:4px;flex:1}.landing-card-list-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.landing-card-item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.landing-card-item-dots{display:flex;gap:3px}.landing-card-footer{font-size:11px;color:var(--text-muted);margin-top:8px}.landing-card-dropzone{margin-top:0}.landing-card-dropzone .upload-drop-zone-container{padding:0}.landing-card-dropzone .upload-drop-zone{padding:18px 20px;border-radius:10px;background:var(--surface-page);max-width:none}.landing-card-dropzone .upload-drop-zone h2{font-size:14px;font-weight:600;margin:0 0 4px}.landing-card-dropzone .upload-drop-zone-icon{display:none}.landing-card-dropzone .upload-drop-zone-subtitle{font-size:12px;margin:0 0 10px}.landing-card-dropzone .upload-drop-zone-browse{margin-bottom:0}.landing-card-dropzone .upload-drop-zone-settings-hint{display:none}.landing-your-stuff{width:100%;max-width:1080px;display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:40px}.landing-your-stuff-group{display:flex;flex-direction:column;gap:10px}.landing-your-stuff-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0}.landing-your-stuff-list{display:flex;flex-direction:column;gap:6px}.landing-your-stuff-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;text-decoration:none;color:var(--text-primary);font-size:14px;font-weight:500;transition:border-color .15s,background .15s}a.landing-your-stuff-item:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.landing-your-stuff-item-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.landing-your-stuff-item-count{font-size:12px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.landing-your-stuff-item .car-badge{flex:1;min-width:0}.landing-recent{max-width:840px;width:100%;margin-bottom:40px}.landing-recent-title{font-size:13px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px}.landing-recent-list{display:flex;flex-direction:column;gap:4px}.landing-recent-card{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;transition:border-color .15s}.landing-recent-card:hover{border-color:var(--border-hover)}.landing-recent-info{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.landing-recent-track{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.landing-recent-car{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.landing-recent-stats{font-size:12px;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.landing-recent-date{font-size:12px;color:var(--text-muted);white-space:nowrap;min-width:80px;text-align:right}.landing-recent-actions{margin-left:12px}.landing-popular{max-width:840px;width:100%;margin-bottom:40px}.landing-popular-title{font-size:13px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px}.landing-popular-grid{display:flex;flex-wrap:wrap;gap:8px}.landing-popular-chip{font-size:13px;padding:6px 14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);text-decoration:none;transition:all .15s}.landing-popular-chip:hover{border-color:var(--border-hover);color:var(--text-primary)}.landing-card-scan,.pane-upload-scan{display:flex;justify-content:center;margin-bottom:12px}.landing-card-scan--prominent{margin-bottom:0}.landing-card-scan--prominent .scan-folders-chevron{min-height:44px;padding:0 10px}.scan-folders-wrap{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px}.scan-folders-settings-link{color:var(--brand-accent);text-decoration:none;font-size:12px;font-weight:500}.scan-folders-settings-link:hover{text-decoration:underline}@keyframes scan-folders-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scan-folders-spin{animation:scan-folders-spin 1s linear infinite}.scan-folders-split{display:inline-flex;position:relative}.scan-folders-split .scan-folders-main.ds-button{min-width:240px;font-size:14px;font-weight:600;padding:12px 22px;height:44px}.scan-folders-split:has(.scan-folders-chevron) .scan-folders-main.ds-button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:1px solid rgba(0,0,0,.15)}.scan-folders-split .scan-folders-main.ds-button svg{width:16px;height:16px}.scan-folders-split .scan-folders-chevron.ds-button{border-top-left-radius:0;border-bottom-left-radius:0;height:44px;padding-left:8px;padding-right:8px;min-width:0;margin-left:-1px}.scan-folders-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:240px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;box-shadow:none;padding:4px;z-index:20}.scan-folders-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;background:transparent;border:none;border-radius:4px;padding:8px 10px;color:var(--text-primary);text-align:left;cursor:pointer;font-family:inherit}.scan-folders-menu-item:hover{background:var(--bg-tertiary)}.scan-folders-menu-item-label{font-size:13px;font-weight:500}.scan-folders-menu-item-hint{font-size:11px;color:var(--text-muted);line-height:1.3}.awards-tally{display:inline-flex;align-items:center;flex-wrap:wrap}.awards-tally--sm{gap:var(--space-2)}.awards-tally--md{gap:var(--space-3)}.awards-tally--lg{gap:var(--space-4)}.landing-progress{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-4);background:var(--surface-subtle);border-radius:var(--radius-lg)}.landing-progress-greeting{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-secondary)}.landing-progress-metrics{display:flex;align-items:flex-end;flex-wrap:wrap;gap:var(--space-5) var(--space-7)}.landing-progress-awards{display:flex;flex-direction:column;gap:var(--space-2)}.landing-progress-awards-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.site-footer{width:100%;margin-top:var(--space-8);padding:var(--space-6) var(--space-5) var(--space-5);border-top:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--text-md);line-height:1.5}.site-footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);max-width:720px;margin:0 auto}.site-footer-col{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.site-footer-heading{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:var(--space-1)}.site-footer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.site-footer-link{color:var(--text-secondary);text-decoration:none;transition:color .12s}.site-footer-link:hover{color:var(--text-primary);text-decoration:underline}.site-footer-list--socials .site-footer-social{display:inline-flex;align-items:center;gap:var(--space-2)}.site-footer-social img{opacity:.7;transition:opacity .12s}.site-footer-social:hover img{opacity:1}.site-footer-baseline{max-width:1100px;margin:var(--space-5) auto 0;padding-top:var(--space-4);border-top:1px solid var(--border-subtle);font-size:var(--text-xs);color:var(--text-muted);text-align:center}@media(max-width:720px){.site-footer-inner{grid-template-columns:1fr;gap:var(--space-5)}}.route-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:64px 24px;min-height:60vh;text-align:center;color:var(--text-primary);background:var(--surface-page)}.route-error-meatball{display:block;width:96px;height:auto;margin-bottom:4px;border-radius:3px;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.route-error-status{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:2px 8px;border:1px solid var(--border-default);border-radius:3px}.route-error-headline{margin:0;font-size:28px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.route-error-subhead{margin:0;max-width:520px;font-size:15px;line-height:1.5;color:var(--text-secondary)}.route-error-radio{margin-top:4px;width:100%;max-width:560px;text-align:left}.route-error-radio>summary{display:inline-block;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;padding:4px 0;-webkit-user-select:none;user-select:none;list-style:none}.route-error-radio>summary::-webkit-details-marker{display:none}.route-error-radio>summary:before{content:"▸";display:inline-block;margin-right:6px;transition:transform .15s}.route-error-radio[open]>summary:before{transform:rotate(90deg)}.route-error-radio>summary:hover{color:var(--text-secondary)}.route-error-radio>pre{margin:6px 0 0;padding:10px 12px;font-family:var(--font-mono);font-size:12px;line-height:1.45;color:var(--text-secondary);background:#1a16120d;border:1px solid var(--border-default);border-radius:4px;white-space:pre-wrap;word-break:break-word}.route-error-actions{display:flex;gap:10px;margin-top:10px}.route-error .btn-primary{background:var(--text-primary);color:var(--surface-page);border-color:var(--text-primary)}.route-error .btn-primary:hover:not(:disabled){background:var(--text-secondary);border-color:var(--text-secondary)}.route-error--reloading{flex-direction:row;min-height:40vh;color:var(--text-muted);font-size:13px;background:var(--surface-page)}:root{color-scheme:dark;--surface-page: #121215;--surface-panel: #1c1c20;--surface-elevated: #26262a;--surface-hover: #3a3a3d;--surface-input: #000000;--surface-subtle: color-mix(in srgb, var(--text-primary) 8%, transparent);--surface-subtle-hover: color-mix(in srgb, var(--text-primary) 14%, transparent);--surface-subtle-strong: color-mix(in srgb, var(--text-primary) 12%, transparent);--border-subtle: #1f1f23;--border-default: #2a2a2e;--border-strong: #4a4a4e;--border-focus: #7a8a98;--text-primary: #f5f5f4;--text-secondary: #cdccc6;--text-muted: #9c9b94;--text-on-accent: #121215;--text-link: #8e9eac;--accent-brand: #7a8a98;--accent-brand-hover: #8e9eac;--accent-success: #4ade80;--accent-warning: #fbbf24;--accent-danger: #f87171;--accent-info: #22d3ee;--fill-success: color-mix(in srgb, var(--accent-success) 16%, transparent);--fill-warning: color-mix(in srgb, var(--accent-warning) 16%, transparent);--fill-danger: color-mix(in srgb, var(--accent-danger) 16%, transparent);--fill-info: color-mix(in srgb, var(--accent-info) 16%, transparent);--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--surface-nav: var(--surface-panel);--nav-text: var(--text-primary);--nav-text-muted: var(--text-secondary);--nav-accent: var(--accent-brand);--nav-border: var(--border-default);--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 9999px;--text-xs: 11px;--text-sm: 12px;--text-md: 13px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 28px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-serif: "Iowan Old Style", "Palatino", "Georgia", serif;--font-mono: "Source Code Pro", ui-monospace, monospace;--duration-fast: .12s;--duration-base: .18s;--duration-slow: .3s;--easing-out: cubic-bezier(.2, .9, .3, 1);--easing-in-out: cubic-bezier(.4, 0, .2, 1);--z-base: 0;--z-raised: 10;--z-sticky: 100;--z-overlay: 200;--z-popover: 300;--z-toast: 400;--z-tooltip: 500;--trace-1: #818cf8;--trace-2: #fb923c;--trace-3: #4ade80;--trace-4: #f87171;--trace-5: #22d3ee;--trace-6: #fbbf24;--medal-gold: #d4a017;--medal-silver: #c4c4d0;--medal-bronze: #cd7f32;--turn-badge-fill: #1a1612;--turn-badge-text: #ede4d2;--map-paper-bg: #eceae4;--map-paper-bg-deep: #dcd9d0}[data-theme=light]{color-scheme:light;--surface-page: #f9f9f7;--surface-panel: #ffffff;--surface-elevated: #fafaf9;--surface-hover: #ececea;--surface-input: #ffffff;--border-subtle: #e6e6e2;--border-default: #d4d4cf;--border-strong: #b0b0aa;--border-focus: #5a6b7a;--text-primary: #14140f;--text-secondary: #3d3d3a;--text-muted: #5e5e58;--text-on-accent: #ffffff;--text-link: #234157;--accent-brand: #5a6b7a;--accent-brand-hover: #475563;--accent-success: #16a34a;--accent-warning: #ca8a04;--accent-danger: #dc2626;--accent-info: #0891b2;--fill-success: rgba(22, 163, 74, .1);--fill-warning: rgba(202, 138, 4, .12);--fill-danger: rgba(220, 38, 38, .1);--fill-info: rgba(8, 145, 178, .1);--map-paper-bg: #f0ece2;--map-paper-bg-deep: #e2dccd}[data-theme=paper]{color-scheme:light;--surface-page: #ede4d2;--surface-panel: #f5ecd8;--surface-elevated: #fbf5e6;--surface-hover: rgba(26, 22, 18, .06);--surface-input: rgba(255, 255, 255, .85);--border-subtle: rgba(26, 22, 18, .12);--border-default: rgba(26, 22, 18, .26);--border-strong: rgba(26, 22, 18, .46);--border-focus: #b1352e;--text-primary: #14100c;--text-secondary: #3d352c;--text-muted: #5a4f43;--text-on-accent: #ede4d2;--text-link: #8c1f1f;--accent-brand: #b1352e;--accent-brand-hover: #c4453d;--accent-success: #1e6b3a;--accent-warning: #8a4d10;--accent-danger: #8c1f1f;--accent-info: #1c4a8a;--fill-success: color-mix(in srgb, var(--accent-success) 18%, transparent);--fill-warning: color-mix(in srgb, var(--accent-warning) 18%, transparent);--fill-danger: rgba(220, 38, 38, .12);--fill-info: rgba(96, 165, 250, .18);--map-paper-bg: #ede4d2;--map-paper-bg-deep: #ddd2bb}[data-theme=high-contrast]{color-scheme:dark;--surface-page: #000000;--surface-panel: #0a0a0a;--surface-elevated: #1a1a1a;--surface-hover: #2a2a2a;--surface-input: #000000;--border-subtle: #4a4a4a;--border-default: #ffffff;--border-strong: #ffffff;--border-focus: #ffff00;--text-primary: #ffffff;--text-secondary: #ffffff;--text-muted: #cccccc;--text-on-accent: #000000;--text-link: #00ffff;--accent-brand: #00ffff;--accent-brand-hover: #00cccc;--accent-success: #00ff00;--accent-warning: #ffff00;--accent-danger: #ff3030;--accent-info: #00ccff;--fill-success: rgba(0, 255, 0, .16);--fill-warning: rgba(255, 255, 0, .16);--fill-danger: rgba(255, 48, 48, .16);--fill-info: rgba(0, 204, 255, .16);--map-paper-bg: #f7f7f5;--map-paper-bg-deep: #e6e6e2}[data-theme=gasser]{color-scheme:light;--surface-page: #ecf2f7;--surface-panel: #f8fbfd;--surface-elevated: #fcfdfe;--surface-hover: #dde7ee;--surface-input: #ffffff;--border-subtle: #dde7ed;--border-default: #c5d3dd;--border-strong: #97acba;--border-focus: #d96d28;--text-primary: #0f2436;--text-secondary: #36495a;--text-muted: #586a78;--text-on-accent: #ffffff;--text-link: #294a64;--accent-brand: #d96d28;--accent-brand-hover: #e7813b;--accent-success: #166a36;--accent-warning: #b97613;--accent-danger: #b41e35;--accent-info: #3f7fa6;--fill-success: rgba(22, 106, 54, .1);--fill-warning: rgba(185, 118, 19, .12);--fill-danger: rgba(180, 30, 53, .1);--fill-info: rgba(63, 127, 166, .12);--surface-nav: #3a7eb3;--nav-text: #ffffff;--nav-text-muted: rgba(255, 255, 255, .7);--nav-accent: #d96d28;--nav-border: #d96d28;--map-paper-bg: #edf1f4;--map-paper-bg-deep: #dde4ea}[data-theme=stripe]{color-scheme:light;--surface-page: #f6f1e6;--surface-panel: #fdf9ef;--surface-elevated: #ffffff;--surface-hover: #ebe4d4;--surface-input: #ffffff;--border-subtle: #ebe2cc;--border-default: #d4c9af;--border-strong: #a89c80;--border-focus: #1d2d5a;--text-primary: #0f1c41;--text-secondary: #2d3a5e;--text-muted: #5a5546;--text-on-accent: #f6f1e6;--text-link: #8c1224;--accent-brand: #b9162a;--accent-brand-hover: #cb243a;--accent-success: #1a6936;--accent-warning: #ad6f10;--accent-danger: #8c1224;--accent-info: #1d2d5a;--fill-success: rgba(26, 105, 54, .1);--fill-warning: rgba(173, 111, 16, .12);--fill-danger: rgba(140, 18, 36, .1);--fill-info: rgba(29, 45, 90, .1);--surface-nav: #152959;--nav-text: #f6f1e6;--nav-text-muted: rgba(246, 241, 230, .65);--nav-accent: #b9162a;--nav-border: #b9162a;--map-paper-bg: #f2ead9;--map-paper-bg-deep: #e4d9c2}[data-theme=player]{color-scheme:dark;--surface-page: #0a0907;--surface-panel: #14110c;--surface-elevated: #1d1810;--surface-hover: #2a2418;--surface-input: #000000;--border-subtle: rgba(201, 164, 73, .14);--border-default: rgba(201, 164, 73, .28);--border-strong: #6e5a2d;--border-focus: #c9a449;--text-primary: #efe5c9;--text-secondary: #c9b988;--text-muted: #908573;--text-on-accent: #0a0907;--text-link: #d6b25e;--accent-brand: #c9a449;--accent-brand-hover: #d8b660;--accent-success: #6fb380;--accent-warning: #d6b25e;--accent-danger: #d66464;--accent-info: #8aa7c8;--fill-success: rgba(111, 179, 128, .12);--fill-warning: rgba(214, 178, 94, .14);--fill-danger: rgba(214, 100, 100, .14);--fill-info: rgba(138, 167, 200, .12);--surface-nav: #000000;--nav-text: #c9a449;--nav-text-muted: rgba(201, 164, 73, .6);--nav-accent: #c9a449;--nav-border: #c9a449;--map-paper-bg: #f1ebda;--map-paper-bg-deep: #e3dac2}[data-theme=brg]{color-scheme:light;--surface-page: #f3f4f1;--surface-panel: #ffffff;--surface-elevated: #ecede9;--surface-hover: #edefeb;--surface-input: #ffffff;--border-subtle: rgba(13, 19, 16, .06);--border-default: rgba(13, 19, 16, .1);--border-strong: rgba(13, 19, 16, .2);--border-focus: #0d4636;--text-primary: #0d1310;--text-secondary: rgba(13, 19, 16, .62);--text-muted: rgba(13, 19, 16, .4);--text-on-accent: #ffffff;--text-link: #0d4636;--accent-brand: #0d4636;--accent-brand-hover: #155c47;--accent-success: #16613a;--accent-warning: #92400e;--accent-danger: #991b1b;--accent-info: #0e7490;--fill-success: color-mix(in srgb, var(--accent-success) 12%, transparent);--fill-warning: color-mix(in srgb, var(--accent-warning) 12%, transparent);--fill-danger: color-mix(in srgb, var(--accent-danger) 12%, transparent);--fill-info: color-mix(in srgb, var(--accent-info) 12%, transparent);--surface-nav: #082b22;--nav-text: #eef0ec;--nav-text-muted: rgba(238, 240, 236, .58);--nav-accent: #4db88a;--nav-border: transparent;--map-paper-bg: #edf0eb;--map-paper-bg-deep: #dde2da}[data-theme=brg-dark]{color-scheme:dark;--surface-page: #111513;--surface-panel: #191e1b;--surface-elevated: #222823;--surface-hover: #36403a;--surface-input: #000000;--border-subtle: #1c211e;--border-default: #272d29;--border-strong: #46514a;--border-focus: #4db88a;--text-primary: #eef0ec;--text-secondary: #c7cdc6;--text-muted: #96a098;--text-on-accent: #0a120d;--text-link: #8fc7a8;--accent-brand: #4db88a;--accent-brand-hover: #63c79b;--accent-success: #4ade80;--accent-warning: #fbbf24;--accent-danger: #f87171;--accent-info: #22d3ee;--fill-success: color-mix(in srgb, var(--accent-success) 16%, transparent);--fill-warning: color-mix(in srgb, var(--accent-warning) 16%, transparent);--fill-danger: color-mix(in srgb, var(--accent-danger) 16%, transparent);--fill-info: color-mix(in srgb, var(--accent-info) 16%, transparent)}[data-theme=smoker]{color-scheme:light;--surface-page: #f7f4ed;--surface-panel: #ffffff;--surface-elevated: #fdfbf6;--surface-hover: #f0ebde;--surface-input: #ffffff;--border-subtle: #ebe6d8;--border-default: #d4ccba;--border-strong: #a89c80;--border-focus: #b8211f;--text-primary: #1a0f0e;--text-secondary: #3a2a28;--text-muted: #6a554f;--text-on-accent: #ffffff;--text-link: #8a1614;--accent-brand: #b8211f;--accent-brand-hover: #cf2c2a;--accent-success: #1a6936;--accent-warning: #b07010;--accent-danger: #8a1614;--accent-info: #335c8a;--fill-success: rgba(26, 105, 54, .1);--fill-warning: rgba(176, 112, 16, .12);--fill-danger: rgba(184, 33, 31, .1);--fill-info: rgba(51, 92, 138, .1);--surface-nav: #c81f1d;--nav-text: #ffffff;--nav-text-muted: rgba(255, 255, 255, .75);--nav-accent: #ffffff;--nav-border: #ffffff;--map-paper-bg: #f4eee2;--map-paper-bg-deep: #e7dfce}:root,[data-theme=light],[data-theme=paper],[data-theme=high-contrast],[data-theme=gasser],[data-theme=stripe],[data-theme=player],[data-theme=brg],[data-theme=brg-dark],[data-theme=smoker]{--bg-primary: var(--surface-page);--bg-secondary: var(--surface-panel);--bg-tertiary: var(--surface-elevated);--bg-hover: var(--surface-hover);--bg-input: var(--surface-input);--border: var(--border-default);--border-hover: var(--border-strong);--green: var(--accent-success);--red: var(--accent-danger);--yellow: var(--accent-warning);--brand-accent: var(--accent-brand);--brand-accent-hover: var(--accent-brand-hover);--gold: var(--medal-gold)}[data-theme=brg] .sidebar{color-scheme:dark;color:var(--text-primary);--surface-page: #082b22;--surface-panel: #082b22;--surface-elevated: rgba(255, 255, 255, .07);--surface-hover: rgba(255, 255, 255, .11);--surface-input: rgba(0, 0, 0, .25);--surface-subtle: color-mix(in srgb, var(--text-primary) 8%, transparent);--surface-subtle-hover: color-mix(in srgb, var(--text-primary) 14%, transparent);--surface-subtle-strong: color-mix(in srgb, var(--text-primary) 12%, transparent);--border-subtle: rgba(255, 255, 255, .07);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .22);--border-focus: #4db88a;--text-primary: #eef0ec;--text-secondary: rgba(238, 240, 236, .58);--text-muted: rgba(238, 240, 236, .36);--text-on-accent: #082b22;--text-link: #7fd0aa;--accent-brand: #4db88a;--accent-brand-hover: #63c79b;--accent-success: #4db88a;--accent-warning: #d9a44a;--accent-danger: #e57373;--accent-info: #56b8d0;--fill-success: color-mix(in srgb, var(--accent-success) 16%, transparent);--fill-warning: color-mix(in srgb, var(--accent-warning) 16%, transparent);--fill-danger: color-mix(in srgb, var(--accent-danger) 16%, transparent);--fill-info: color-mix(in srgb, var(--accent-info) 16%, transparent);--bg-primary: var(--surface-page);--bg-secondary: var(--surface-panel);--bg-tertiary: var(--surface-elevated);--bg-hover: var(--surface-hover);--bg-input: var(--surface-input);--border: var(--border-default);--border-hover: var(--border-strong);--green: var(--accent-success);--red: var(--accent-danger);--yellow: var(--accent-warning);--brand-accent: var(--accent-brand);--brand-accent-hover: var(--accent-brand-hover)}.ds-stack{display:flex;flex-direction:column;gap:var(--ds-gap, var(--space-3))}.ds-inline{display:flex;flex-direction:row;align-items:center;gap:var(--ds-gap, var(--space-3))}.ds-inline--wrap{flex-wrap:wrap}.ds-grid{display:grid;gap:var(--ds-gap, var(--space-3))}.ds-grid--cols-2{grid-template-columns:repeat(2,1fr)}.ds-grid--cols-3{grid-template-columns:repeat(3,1fr)}.ds-grid--cols-4{grid-template-columns:repeat(4,1fr)}.ds-grid--cols-auto{grid-template-columns:repeat(auto-fill,minmax(var(--ds-grid-min, 240px),1fr))}:root{--brand-red: #dc2626;--brand-dark: #14181c;--page-bg: #ede4d2;--page-text: #1a1612;--page-text-secondary: #4d433a;--page-text-muted: #7a6f63;--page-border: rgba(26, 22, 18, .18);--page-border-hover: rgba(26, 22, 18, .36)}.on-paper{--text-primary: var(--page-text);--text-secondary: var(--page-text-secondary);--text-muted: var(--page-text-muted);--border: var(--page-border);--border-hover: var(--page-border-hover);--bg-input: rgba(255, 255, 255, .85);--bg-secondary: rgba(26, 22, 18, .06);--bg-tertiary: rgba(26, 22, 18, .1);--paper-amber-fg: #8a4d10;--paper-amber-bg: color-mix(in srgb, var(--yellow) 18%, transparent);--paper-amber-border: rgba(138, 77, 16, .5);--paper-red-fg: #8c1f1f;--paper-red-bg: rgba(220, 38, 38, .12);--paper-red-border: rgba(140, 31, 31, .5);--paper-green-fg: #1e6b3a;--paper-green-bg: color-mix(in srgb, var(--green) 18%, transparent);--paper-green-border: rgba(30, 107, 58, .5);--paper-blue-fg: #1c4a8a;--paper-blue-bg: rgba(96, 165, 250, .18);--paper-blue-border: rgba(28, 74, 138, .5);color:var(--text-primary)}.on-paper .btn-primary{background:var(--text-primary);color:var(--page-bg);border-color:var(--text-primary)}.on-paper .btn-primary:hover:not(:disabled){background:var(--text-secondary);border-color:var(--text-secondary)}.on-paper .btn-primary:disabled{opacity:.5}.on-paper .session-filter-select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237a6f63' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>")}.on-paper .filter-chip-popover{background:#fbf8ee;border-color:var(--border-strong);box-shadow:none}.on-paper .filter-chip-option:hover{background:#1a161214}.hub-page--dark,.session-browser--dark{--page-text: var(--text-primary);--page-text-secondary: var(--text-secondary);--page-text-muted: var(--text-muted);--page-border: var(--border);--page-border-hover: var(--border-hover);--page-bg: var(--bg-primary);background:var(--bg-primary);margin:16px;border:1px solid var(--border);border-radius:12px;box-shadow:none}*{margin:0;padding:0;box-sizing:border-box;scrollbar-color:var(--bg-hover) transparent;scrollbar-width:thin}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--surface-page);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01"}code,.mono{font-family:var(--font-mono)}button,[role=button],[role=tab],[role=menuitem],label,summary{user-select:none;-webkit-user-select:none}.no-select{user-select:none;-webkit-user-select:none}img,svg{-webkit-user-drag:none;user-drag:none}#root{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.global-loading-bar{position:fixed;top:0;left:0;right:0;height:2px;background:var(--brand-accent);animation:loading-pulse 1.5s ease-in-out infinite;z-index:9999}@keyframes loading-pulse{0%,to{opacity:.4;transform:scaleX(.3);transform-origin:left}50%{opacity:1;transform:scaleX(1);transform-origin:left}}.skip-to-content{position:absolute;top:-100px;left:12px;z-index:1000;padding:8px 14px;background:var(--brand-accent);color:var(--bg-primary);border-radius:6px;font-size:14px;font-weight:600;text-decoration:none;transition:top .15s ease}.skip-to-content:focus,.skip-to-content:focus-visible{top:12px;outline:2px solid var(--brand-accent);outline-offset:2px}.app-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:10px 24px;user-select:none;-webkit-user-select:none;background:var(--surface-nav);color:var(--nav-text);border-bottom:1px solid var(--nav-border);position:sticky;top:0;z-index:50}.header-logo-link{display:flex;align-items:flex-end;gap:10px;text-decoration:none;color:inherit}.logo-mark{height:28px;width:auto;flex-shrink:0}.app-header h1{font-size:18px;font-weight:600;letter-spacing:-.03em;line-height:1;color:var(--nav-text)}.app-header h1 span{color:var(--nav-text)}.entry-list{display:flex;flex-wrap:wrap;gap:4px 8px;padding:8px 24px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.entry-item{display:flex;align-items:center;gap:6px;padding:3px 10px;border-radius:4px;font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary)}.entry-item.entry-player{background:#ffffff14;color:var(--text-primary);border:1px solid var(--border-hover)}.entry-number{font-family:var(--font-mono);font-weight:600;color:var(--text-primary);min-width:28px}.entry-name{font-weight:500}.entry-car{color:var(--text-muted);font-size:11px}.main-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto}.favorite-btn{background:none;border:none;padding:4px;cursor:pointer;color:var(--text-muted);transition:color .15s,transform .15s;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;flex-shrink:0}.favorite-btn:hover{color:var(--yellow);transform:scale(1.15)}.favorite-btn--active{color:var(--yellow)}.favorite-btn--active:hover{color:#f59e0b}.detail-fav-btn{margin-left:auto}.hub-card-top-row{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}.hub-card-top-row .hub-card-silhouette,.hub-card-top-row .hub-card-car-badge{margin-bottom:0}.hub-card-top-row .favorite-btn{opacity:0;transition:opacity .15s,color .15s,transform .15s}.hub-card:hover .hub-card-top-row .favorite-btn,.hub-card-top-row .favorite-btn--active{opacity:1}.hub-filter-btn--fav{display:inline-flex;align-items:center;gap:4px;margin-right:8px;border-color:color-mix(in srgb,var(--yellow) 30%,transparent)}.hub-filter-btn--fav:hover{border-color:color-mix(in srgb,var(--yellow) 50%,transparent);color:var(--yellow)}.hub-filter-btn--fav.active{background:color-mix(in srgb,var(--yellow) 15%,transparent);color:var(--yellow);border-color:color-mix(in srgb,var(--yellow) 40%,transparent)}.analysis-layout{display:grid;grid-template-columns:240px 1fr;grid-template-rows:minmax(0,1fr);flex:1;min-height:0;overflow:hidden;background:var(--surface-page);gap:6px;padding:6px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.map-overlay-legend{position:absolute;bottom:12px;left:12px;z-index:3;display:flex;align-items:center;gap:8px;padding:6px 10px;background:color-mix(in srgb,var(--surface-panel) 88%,transparent);color:var(--text-primary);border:1px solid var(--border-default);border-radius:6px;font-size:11px;font-family:var(--paper-sans, "Inter", system-ui, sans-serif);pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);max-width:60%;animation:map-overlay-legend-fade-in .25s ease both}@keyframes map-overlay-legend-fade-in{0%{opacity:0}to{opacity:1}}.map-overlay-legend-title{font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:10px;margin-right:4px;white-space:nowrap}.map-overlay-legend-min,.map-overlay-legend-max{font-variant-numeric:tabular-nums;white-space:nowrap;opacity:.85}.map-overlay-legend-bar{display:inline-block;width:110px;height:8px;border-radius:2px}.chart-container--placeholder{min-height:64px}.chart-placeholder-text{margin:0;padding:24px;text-align:center;font-size:13px;color:var(--text-muted)}.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-secondary);font-size:14px}.error-banner{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:color-mix(in srgb,var(--red) 10%,transparent);border:1px solid color-mix(in srgb,var(--red) 30%,transparent);border-radius:6px;margin:8px 16px 0;font-size:13px;color:var(--red)}.notice{display:inline-flex;align-items:center;gap:6px;font-size:inherit;line-height:1.4;min-width:0}.notice-flag{flex-shrink:0;transform:translateY(-.5px)}.notice-text{min-width:0;text-wrap:balance;max-width:62ch}.notice--warning .notice-flag{color:var(--yellow)}.notice--error .notice-flag,.notice--error .notice-text{color:var(--red)}.notice--block{display:flex;align-items:flex-start;width:100%;padding:8px 12px;border-radius:6px}.notice--block .notice-flag{width:28px;height:28px;transform:none;margin-top:1px}.notice--block.notice--warning{background:color-mix(in srgb,var(--yellow) 10%,transparent)}.notice--block.notice--error{background:color-mix(in srgb,var(--red) 10%,transparent)}.header-left{display:flex;align-items:center;gap:16px}.header-center{display:flex;justify-content:center}.header-right{display:flex;align-items:center;justify-content:flex-end;gap:20px}.header-meta{font-size:12px;color:var(--text-muted)}.ds-button.btn-brand--discord{background:#5865f2;border-color:#5865f2;color:#fff;font-weight:600}.ds-button.btn-brand--discord:hover:not(:disabled){background:#4752c4;border-color:#4752c4;color:#fff}.ds-button.btn-brand--discord svg path{fill:currentColor}.ds-button.btn-brand--iracing{background:#e1251b;border-color:#e1251b;color:#fff;font-weight:600}.ds-button.btn-brand--iracing:hover:not(:disabled){background:#b81c13;border-color:#b81c13;color:#fff}.ds-button.btn-brand--windows{background:#0078d4;border-color:#0078d4;color:#fff;font-weight:600}.ds-button.btn-brand--windows:hover:not(:disabled){background:#005a9e;border-color:#005a9e;color:#fff}.view-toggle{display:flex;gap:4px;align-self:stretch;align-items:stretch}.view-toggle-btn{font-family:inherit;font-size:13px;padding:0 14px;display:inline-flex;align-items:center;border:none;background:transparent;color:var(--nav-text-muted);cursor:pointer;position:relative;font-weight:500;transition:color .15s;text-decoration:none}.view-toggle-btn:hover{color:var(--nav-text)}.view-toggle-btn .nav-new-sessions-jewel{margin-left:var(--space-2);transform:translateY(-1px);background:var(--accent-danger);color:var(--text-on-accent)}.view-toggle-btn.active{color:var(--nav-text);font-weight:600}.view-toggle-btn.active:after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--nav-accent);border-radius:1px}@keyframes view-toggle-btn-enter{0%{opacity:0;transform:translateY(-3px) scale(.94);filter:blur(2px);max-width:0;padding-left:0;padding-right:0}40%{opacity:.6;filter:blur(.5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0);max-width:140px;padding-left:14px;padding-right:14px}}@keyframes view-toggle-underline-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.view-toggle-btn--enter{animation:view-toggle-btn-enter .46s cubic-bezier(.16,1,.3,1) both;overflow:hidden;white-space:nowrap}.view-toggle-btn--enter.active:after{transform-origin:center;animation:view-toggle-underline-draw .32s cubic-bezier(.16,1,.3,1) .24s both}@media(prefers-reduced-motion:reduce){.view-toggle-btn--enter{animation:none}.view-toggle-btn--enter.active:after{animation:none}}.view-toggle-btn--icon{padding:0 10px}.view-toggle-btn-glyph{display:block;height:14px;width:auto;opacity:.7;transition:opacity .15s;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.view-toggle-btn--icon:hover .view-toggle-btn-glyph,.view-toggle-btn--icon:focus-visible .view-toggle-btn-glyph{opacity:1}.user-menu-trigger{font-family:inherit;font-size:12px;color:var(--nav-text-muted);background:transparent;border:1px solid transparent;border-radius:999px;padding:0 12px;height:36px;cursor:pointer;transition:background .15s,color .15s,border-color .15s;display:inline-flex;align-items:center;gap:10px;max-width:260px;line-height:1}.user-menu-trigger:hover{color:var(--nav-text);background:color-mix(in srgb,var(--nav-text) 10%,transparent);border-color:color-mix(in srgb,var(--nav-text) 25%,transparent)}.user-menu-trigger>svg{display:block}.user-menu-trigger-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;line-height:1.4}.user-menu-trigger-chevron{color:var(--nav-text-muted);flex-shrink:0;margin-left:6px}.user-menu-version{display:block;padding:4px 12px 6px;font-size:11px;color:var(--text-muted);text-align:center}.game-icon{height:32px;width:auto}.form-field{margin-bottom:14px}.form-field label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:4px}.form-field input,.team-create-form input,.invite-form input{font-family:inherit;font-size:14px;padding:8px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);outline:none;transition:border-color .15s}.form-field input:focus,.team-create-form input:focus,.invite-form input:focus{border-color:var(--brand-accent)}.form-field input,.team-create-form input,.invite-form input{width:100%}.form-error{font-size:13px;color:var(--red);margin-bottom:8px}.section-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:8px}.member-list{display:flex;flex-direction:column;gap:2px}.member-row{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-radius:4px;font-size:13px}.member-row:hover{background:var(--bg-tertiary)}.member-name{color:var(--text-primary)}.member-role{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.invite-form{display:flex;gap:8px;align-items:center}.invite-form input{flex:1}.charts-panel-full{grid-column:1 / -1}.zoombox{fill:none!important;fill-opacity:0!important;stroke:#ffffff80!important;stroke-width:1!important}.zoombox-corners{fill:#fff9!important;stroke:#fff9!important}.profile-chart-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:12px 16px}.profile-chart-container h4{font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:4px}.profile-chart-legend{display:flex;gap:16px;margin-bottom:8px}.profile-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary)}.profile-legend-dot{width:8px;height:8px;border-radius:50%}.personal-bests{display:flex;flex-direction:column;gap:8px}.personal-bests h4{font-size:12px;font-weight:500;color:var(--text-muted)}.personal-bests-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.personal-bests-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.personal-bests-table{width:100%;border-collapse:collapse;font-size:13px}.pb-th{font-size:11px;font-weight:500;color:var(--text-muted);text-align:left;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--bg-secondary);white-space:nowrap}.pb-th.sortable{cursor:pointer;user-select:none;-webkit-user-select:none}.pb-th.sortable:hover{color:var(--text-primary)}.pb-th.mono{font-family:var(--font-mono);text-align:right}.pb-row{transition:background .15s}.pb-row:hover{background:var(--bg-tertiary)}.pb-cell{padding:8px 12px;border-bottom:1px solid var(--border);color:var(--text-primary)}.pb-cell.mono{font-family:var(--font-mono);text-align:right;color:var(--text-secondary)}.pb-cell.muted{color:var(--text-muted)}@media(max-width:768px){.app-header{grid-template-columns:auto 1fr auto;padding:8px 12px;gap:8px}.header-center{overflow-x:auto;justify-content:flex-start}.view-toggle{flex-shrink:0}.view-toggle-btn{padding:4px 10px;font-size:11px}.view-toggle-btn--icon{padding:4px 8px}.view-toggle-btn-glyph{height:12px}.logo-mark{height:22px}.header-left{gap:8px}.header-right{gap:6px}.user-menu-trigger{font-size:11px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-switcher-btn .game-icon{height:24px}.session-bar{padding:6px 12px;gap:8px;font-size:12px}.analysis-layout{grid-template-columns:1fr}.sidebar{grid-column:1 / -1;border-right:none;border-bottom:1px solid var(--border);max-height:150px;padding:8px 0}.channel-selector{padding:8px 12px;gap:4px}.channel-selector-spacer{display:none}.chart-container,.track-map-container{padding:8px 10px}.insights-chip{font-size:10px;padding:1px 6px}.turn-detail{width:240px;padding:8px}.track-map-summary{gap:4px}.session-browser{padding:12px}.session-browser-controls{flex-wrap:wrap}.session-search{width:100%}.session-filter-select{flex:1;min-width:0}.session-table-wrap{overflow-x:auto}.st-col-driver,.st-col-laps,.st-col-date{display:none}.session-row td{padding:7px 8px}.session-table th{padding:8px}.profile-view{padding:12px}.career-summary{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.profile-header,.profile-identity{flex-direction:column;align-items:flex-start}.race-row{flex-wrap:wrap;gap:8px}.race-sof{display:none}.landing-page{padding:24px 12px 48px}.landing-cards{grid-template-columns:1fr;max-width:400px}.landing-recent-info{flex-wrap:wrap;gap:4px 12px}.hub-page{padding:20px 16px 48px}.hub-page--dark,.session-browser--dark{margin:8px;border-radius:8px}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.track-detail{padding:16px 16px 48px}}.signup-banner{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;margin:0 16px 8px}.signup-banner-text{flex:1;font-size:13px;color:var(--text-secondary)}.signup-banner-dismiss{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:0 4px;line-height:1}.signup-banner-dismiss:hover{color:var(--text-primary)}.save-indicator{margin-left:12px;font-size:11px;display:inline-flex;align-items:center;gap:4px}.save-indicator--saving{color:var(--text-muted)}.save-indicator--saved{color:var(--green)}.save-indicator--error{color:var(--red);cursor:help}.auth-gate{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--text-primary)}.auth-gate-card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:480px;padding:44px 40px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;box-shadow:none}.auth-gate-logo{height:48px;width:auto;margin-bottom:20px;color:var(--text-primary)}.auth-gate-headline{margin:0 0 10px;font-size:28px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.auth-gate-subhead{margin:0 0 24px;font-size:15px;line-height:1.5;color:var(--text-secondary);max-width:380px}.auth-gate-features{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-direction:column;gap:10px;width:100%;max-width:380px;text-align:left}.auth-gate-features li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.45;color:var(--text-secondary)}.auth-gate-features li svg{flex-shrink:0;margin-top:2px;color:var(--brand-accent)}.auth-gate-features li strong{color:var(--text-primary);font-weight:600}.auth-gate-footer{margin-top:16px;font-size:11px;color:var(--text-muted);line-height:1.5;max-width:380px}.auth-gate-footer p{margin:0 0 4px}.auth-gate-footer p:last-child{margin-bottom:0}.auth-gate-footer a{color:var(--text-secondary);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:2px;transition:color .15s,text-decoration-color .15s}.auth-gate-footer a:hover{color:var(--text-primary);text-decoration-color:var(--text-primary)}.pane-track-not-catalogued{margin:12px 12px 0;padding:10px 12px;background:var(--bg-tertiary);border-left:3px solid var(--brand-accent);border-radius:4px;font-size:12px;line-height:1.5;color:var(--text-secondary)}.pane-track-not-catalogued strong{color:var(--text-primary)}.acc-section-count{font-size:12px;color:var(--text-muted)}
