@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=JetBrains+Mono:wght@400;500&display=swap";.iv-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:600;white-space:nowrap;cursor:pointer;border:1px solid transparent;transition:filter var(--dur-instant) var(--ease-standard),background var(--dur-instant) var(--ease-standard),border-color var(--dur-instant) var(--ease-standard),box-shadow var(--dur-instant) var(--ease-standard),transform var(--dur-instant) var(--ease-standard);-webkit-user-select:none;-moz-user-select:none;user-select:none}.iv-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.iv-btn:disabled,.iv-btn[aria-disabled=true]{opacity:var(--op-disabled);cursor:not-allowed;box-shadow:none;pointer-events:none}.iv-btn:active:not(:disabled){transform:translateY(0);box-shadow:none}.iv-btn--md{padding:11px 18px;font-size:14px;border-radius:var(--r-md)}.iv-btn--sm{padding:8px 13px;font-size:13px;border-radius:var(--r-sm)}.iv-btn--primary{background:var(--accent-grad);color:var(--on-accent);box-shadow:var(--shadow-accent)}.iv-btn--primary:hover:not(:disabled){filter:brightness(1.04)}.iv-btn--secondary{background:var(--surface-3);color:var(--text-body);border-color:var(--border-strong)}.iv-btn--secondary:hover:not(:disabled){background:color-mix(in srgb,var(--surface-3) 100%,white 4%)}.iv-btn--ghost{background:transparent;color:var(--text-mid)}.iv-btn--ghost:hover:not(:disabled){background:var(--hover-tint);color:var(--text-hi)}.iv-btn--accent-bright{background:var(--accent-bright);color:var(--on-accent)}.iv-btn--accent-bright:hover:not(:disabled){filter:brightness(1.04)}.iv-btn--full{width:100%}.iv-field{display:flex;flex-direction:column;gap:var(--space-2)}.iv-field__label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-low)}.iv-input,.iv-textarea{width:100%;font-family:var(--font-sans);font-size:14px;color:var(--text-hi);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:10px 12px;transition:border-color var(--dur-instant) var(--ease-standard),box-shadow var(--dur-instant) var(--ease-standard)}.iv-textarea{resize:vertical;min-height:96px;line-height:1.55}.iv-input::-moz-placeholder,.iv-textarea::-moz-placeholder{color:var(--text-faint)}.iv-input::placeholder,.iv-textarea::placeholder{color:var(--text-faint)}.iv-input:hover:not(:disabled),.iv-textarea:hover:not(:disabled){border-color:var(--border-strong)}.iv-input:focus-visible,.iv-textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.iv-input:disabled,.iv-textarea:disabled{opacity:var(--op-disabled);cursor:not-allowed}.iv-input--error,.iv-textarea--error{border-color:var(--error)}.iv-field__help{font-size:12px;color:var(--text-low)}.iv-field__help--error{color:var(--error)}.iv-search{position:relative;display:flex;align-items:center}.iv-search__glyph{position:absolute;left:12px;display:flex;pointer-events:none;color:var(--text-faint)}.iv-search .iv-input{padding-left:34px}.iv-search__kbd{position:absolute;right:10px;font-family:var(--font-mono);font-size:11px;color:var(--text-mid);border:1px solid var(--border);border-radius:var(--r-xs);padding:2px 6px;pointer-events:none}.iv-card{background:var(--surface-card-grad);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.iv-card--pad{padding:20px}.iv-card--clickable{cursor:pointer;transition:background var(--dur-instant) var(--ease-standard),transform var(--dur-instant) var(--ease-standard)}.iv-card--clickable:hover{background-color:var(--hover-tint);transform:translateY(-1px)}.iv-card--clickable:focus-visible{outline:none;box-shadow:var(--focus-ring)}.iv-card--hero{position:relative;border-radius:var(--r-xl);border-color:#ebd9b836;box-shadow:var(--shadow-hero);overflow:hidden}.iv-card--category{border-left-width:3px}.iv-card--selected{border-color:var(--accent)}.iv-metric{display:flex;flex-direction:column;gap:var(--space-1)}.iv-metric__label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-low)}.iv-metric__value{font-family:var(--font-mono);font-weight:600;font-size:26px;line-height:1;color:var(--text-hi);letter-spacing:-.02em}.iv-metric__row{display:flex;align-items:baseline;gap:var(--space-2)}.iv-metric__delta{font-family:var(--font-mono);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:3px}.iv-metric__delta--up{color:var(--success)}.iv-metric__delta--down{color:var(--error)}.iv-metric__delta--flat{color:var(--text-low)}.iv-metric__sub{font-size:12px;color:var(--text-mid)}.iv-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-sans);font-size:11px;font-weight:600;padding:3px 8px;border-radius:var(--r-xs);border:1px solid var(--border);color:var(--text-mid);background:var(--surface-2)}.iv-badge--high{color:var(--error);background:color-mix(in srgb,var(--error) 11%,transparent);border-color:color-mix(in srgb,var(--error) 30%,transparent)}.iv-badge--medium{color:var(--warning);background:color-mix(in srgb,var(--warning) 11%,transparent);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}.iv-badge--low{color:var(--text-mid)}.iv-chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:12px;font-weight:600;padding:5px 10px;border-radius:var(--r-xs);border:1px solid var(--border);color:var(--text-mid);background:var(--surface-2)}.iv-chip__dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.iv-chip__san{font-family:var(--font-mono)}.iv-chip--mq{color:var(--mq-color);background:color-mix(in srgb,var(--mq-color) 11%,transparent);border-color:color-mix(in srgb,var(--mq-color) 30%,transparent)}.iv-chip--mq.iv-chip--emph .iv-chip__dot{box-shadow:0 0 12px color-mix(in srgb,var(--mq-color) 55%,transparent)}.iv-seg{display:inline-flex;gap:2px;padding:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm)}.iv-seg__item{font-family:var(--font-sans);font-size:12px;font-weight:600;padding:5px 12px;border:none;border-radius:var(--r-xs);background:transparent;color:var(--text-mid);cursor:pointer;transition:background var(--dur-standard) var(--ease-standard),color var(--dur-standard) var(--ease-standard)}.iv-seg__item:hover:not([aria-checked=true]){color:var(--text-hi)}.iv-seg__item[aria-checked=true]{background:var(--accent);color:var(--on-accent)}.iv-seg__item:focus-visible{outline:none;box-shadow:var(--focus-ring)}.iv-tabs{display:flex;gap:var(--space-5);border-bottom:1px solid var(--hairline)}.iv-tab{font-family:var(--font-sans);font-size:14px;font-weight:600;padding:10px 2px;background:none;border:none;cursor:pointer;color:var(--text-low);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--dur-standard) var(--ease-standard),border-color var(--dur-standard) var(--ease-standard)}.iv-tab:hover{color:var(--text-mid)}.iv-tab[aria-selected=true]{color:var(--text-hi);border-bottom-color:var(--accent)}.iv-tab:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-xs)}.iv-dropdown{position:relative;display:inline-block}.iv-dropdown__menu{position:absolute;z-index:60;min-width:180px;margin-top:6px;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:6px;display:flex;flex-direction:column;gap:2px}.iv-dropdown__item{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--font-sans);font-size:13px;color:var(--text-body);padding:8px 10px;border:none;background:transparent;border-radius:var(--r-xs);cursor:pointer;text-align:left;width:100%}.iv-dropdown__item:hover{background:var(--hover-tint)}.iv-dropdown__item:focus-visible{outline:none;box-shadow:var(--focus-ring)}.iv-dropdown__item--selected{color:var(--accent)}.iv-toggle{position:relative;width:40px;height:24px;border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--border);cursor:pointer;padding:0;transition:background var(--dur-standard) var(--ease-standard);flex-shrink:0}.iv-toggle[aria-checked=true]{background:var(--accent)}.iv-toggle:focus-visible{outline:none;box-shadow:var(--focus-ring)}.iv-toggle__knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--text-hi);transition:transform var(--dur-standard) var(--ease-standard)}.iv-toggle[aria-checked=true] .iv-toggle__knob{transform:translate(16px);background:var(--on-accent)}.iv-toggle:disabled{opacity:var(--op-disabled);cursor:not-allowed}.iv-scrim{position:fixed;inset:0;z-index:100;background:#0009;display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.iv-dialog{width:100%;max-width:520px;max-height:90vh;overflow:auto;background:var(--surface-card-grad);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-pop);padding:var(--space-6)}.iv-scrim--sheet{align-items:flex-end;padding:0}.iv-sheet{width:100%;max-height:88vh;overflow:auto;background:var(--surface-card-grad);border-top:1px solid var(--border);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:var(--shadow-pop);padding:var(--space-5) var(--space-5) var(--space-6)}.iv-sheet__handle{width:36px;height:4px;border-radius:2px;background:var(--border-strong);margin:0 auto var(--space-4)}.iv-toast-region{position:fixed;z-index:200;bottom:20px;right:20px;display:flex;flex-direction:column;gap:10px;max-width:380px}.iv-toast{display:flex;align-items:flex-start;gap:10px;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:12px 14px;color:var(--text-body);font-size:13px;animation:ivPageIn var(--dur-standard) var(--ease-out)}.iv-toast__dot{width:8px;height:8px;border-radius:50%;margin-top:5px;flex-shrink:0}.iv-toast--success .iv-toast__dot{background:var(--success)}.iv-toast--error .iv-toast__dot{background:var(--error)}.iv-toast--info .iv-toast__dot{background:var(--info)}.iv-progress{width:100%;height:6px;background:var(--progress-track);border-radius:var(--r-pill);overflow:hidden}.iv-progress__fill{display:block;height:100%;border-radius:var(--r-pill);background:var(--accent);transition:width var(--dur-emphasis) var(--ease-out)}.iv-progress--success .iv-progress__fill{background:var(--success)}.iv-progress--glow .iv-progress__fill{box-shadow:0 0 12px color-mix(in srgb,var(--accent) 55%,transparent)}.iv-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-elev);color:var(--text-mid);font-family:var(--font-sans);font-weight:600;overflow:hidden;border:1px solid var(--border)}.iv-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.iv-spinner{display:inline-block;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 30%,transparent);border-top-color:var(--accent);animation:ivSpin .8s linear infinite}@keyframes ivSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.iv-spinner{animation-duration:2s}}.iv-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-3);padding:var(--space-10) var(--space-5)}.iv-state__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--r-lg);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}.iv-state--error .iv-state__icon{background:color-mix(in srgb,var(--error) 12%,transparent);color:var(--error);border-color:color-mix(in srgb,var(--error) 28%,transparent)}.iv-state__title{font-size:16px;font-weight:600;color:var(--text-hi)}.iv-state__body{font-size:13px;color:var(--text-mid);max-width:380px;line-height:1.55}@media(pointer:coarse){.iv-btn,.iv-seg__item,.iv-tab,.iv-dropdown__item{min-height:44px}}.ivs-shell{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-14: 56px;min-height:100vh;background:var(--bg-grad),var(--bg);color:var(--text-body);font-family:var(--font-sans)}.ivs-shell__body{display:flex;min-height:100vh}.ivs-shell__content{flex:1;min-width:0;overflow-x:hidden}.ivs-sidebar{width:232px;flex-shrink:0;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--surface-1);border-right:1px solid var(--hairline);padding:var(--space-4) var(--space-3)}.ivs-sidebar--collapsed{width:72px}.ivs-brand{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-4)}.ivs-brand__mark{font-size:20px;line-height:1;color:var(--accent)}.ivs-brand__name{font-weight:700;font-size:16px;color:var(--text-hi);letter-spacing:-.01em}.ivs-sidebar--collapsed .ivs-brand__name{display:none}.ivs-nav{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-2)}.ivs-nav__group-label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-low);padding:var(--space-4) var(--space-2) var(--space-2)}.ivs-navitem{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:9px 10px;border-radius:var(--r-md);border:1px solid transparent;color:var(--text-mid);font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;background:none;text-align:left;transition:background var(--dur-instant) var(--ease-standard),color var(--dur-instant) var(--ease-standard)}.ivs-navitem:hover{background:var(--hover-tint);color:var(--text-hi)}.ivs-navitem:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ivs-navitem[aria-current=page]{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 24%,transparent);color:var(--text-hi)}.ivs-navitem__glyph{width:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ivs-navitem__badge{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--on-accent);background:var(--accent);border-radius:var(--r-pill);padding:0 6px}.ivs-sidebar--collapsed .ivs-navitem__label,.ivs-sidebar--collapsed .ivs-navitem__badge,.ivs-sidebar--collapsed .ivs-nav__group-label{display:none}.ivs-sidebar--collapsed .ivs-navitem{justify-content:center}.ivs-sidebar__search{margin:var(--space-2) 0}.ivs-sidebar__spacer{flex:1}.ivs-usermenu{position:relative}.ivs-usermenu--block{width:100%}.ivs-userblock{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;text-align:left;font:inherit;color:inherit}.ivs-userblock:hover{background:var(--surface-3)}.ivs-userblock:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ivs-userblock__meta{min-width:0}.ivs-userblock__name{font-size:13px;font-weight:600;color:var(--text-hi);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ivs-userblock__sub{font-size:11px;color:var(--text-low);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ivs-sidebar--collapsed .ivs-userblock__meta{display:none}.ivs-usermenu__pop{position:absolute;bottom:calc(100% + 6px);left:0;right:0;z-index:70;display:flex;flex-direction:column;gap:2px;padding:6px;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-pop)}.ivs-usermenu--icon .ivs-usermenu__pop{left:auto;right:0;min-width:180px;top:calc(100% + 6px);bottom:auto}.ivs-usermenu__item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:9px 10px;border:none;background:none;border-radius:var(--r-xs);color:var(--text-body);font-family:var(--font-sans);font-size:13px;cursor:pointer;text-align:left;text-decoration:none}.ivs-usermenu__item:hover{background:var(--hover-tint);color:var(--text-hi)}.ivs-usermenu__item:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ivs-sidebar__collapse{width:100%;margin-bottom:var(--space-2)}.ivs-sidebar__themetoggle{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:9px 10px;margin-bottom:var(--space-2);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-mid);font-family:var(--font-sans);font-size:14px;font-weight:500;cursor:pointer;text-align:left;transition:background var(--dur-instant) var(--ease-standard),color var(--dur-instant) var(--ease-standard)}.ivs-sidebar__themetoggle:hover{background:var(--surface-3);color:var(--text-hi)}.ivs-sidebar__themetoggle:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ivs-sidebar--collapsed .ivs-sidebar__themetoggle{justify-content:center}.ivs-themetoggle__label{min-width:0}.ivs-skiplink{position:absolute;left:8px;top:-48px;z-index:300;background:var(--accent);color:var(--on-accent);font-family:var(--font-sans);font-size:13px;font-weight:600;padding:9px 14px;border-radius:var(--r-md);text-decoration:none;transition:top var(--dur-standard) var(--ease-standard)}.ivs-skiplink:focus{top:8px;outline:none;box-shadow:var(--focus-ring)}.ivs-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:var(--space-3);height:56px;padding:0 var(--space-4);background:var(--surface-1);border-bottom:1px solid var(--hairline)}.ivs-topbar__brand{display:flex;align-items:center;gap:var(--space-2);margin-right:auto}.ivs-iconbtn{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border);color:var(--text-mid);cursor:pointer}.ivs-iconbtn:focus-visible{outline:none;box-shadow:var(--focus-ring)}@media(pointer:coarse){.ivs-iconbtn{min-width:44px;min-height:44px}.ivs-navitem,.ivs-userblock,.ivs-usermenu__item,.ivs-cmdk__item{min-height:44px}}.ivs-bottombar{position:fixed;bottom:0;left:0;right:0;z-index:60;display:flex;height:64px;background:var(--surface-1);border-top:1px solid var(--hairline)}.ivs-bottombar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text-low);text-decoration:none;font-size:11px;font-weight:600;background:none;border:none;cursor:pointer}.ivs-bottombar__item[aria-current=page]{color:var(--text-hi)}.ivs-bottombar__item[aria-current=page] .ivs-bottombar__glyph{color:var(--accent)}.ivs-bottombar__glyph{display:inline-flex;align-items:center;justify-content:center;line-height:1}.ivs-shell__content--mobile{padding-bottom:80px}.ivs-cmdk-scrim{position:fixed;inset:0;z-index:150;background:#0009;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.ivs-cmdk{width:100%;max-width:560px;background:var(--surface-card-grad);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-pop);overflow:hidden}.ivs-cmdk__input{width:100%;border:none;background:transparent;color:var(--text-hi);font-family:var(--font-sans);font-size:16px;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--hairline)}.ivs-cmdk__input:focus{outline:none}.ivs-cmdk__list{max-height:50vh;overflow:auto;padding:var(--space-2)}.ivs-cmdk__group{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-low);padding:var(--space-3) var(--space-3) var(--space-2)}.ivs-cmdk__item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:10px 12px;border-radius:var(--r-md);border:none;background:none;color:var(--text-body);font-size:14px;cursor:pointer;text-align:left}.ivs-cmdk__item[aria-selected=true],.ivs-cmdk__item:hover{background:var(--hover-tint);color:var(--text-hi)}.ivs-cmdk__glyph{width:20px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-low);flex-shrink:0}.ivs-cmdk__empty{padding:var(--space-6);text-align:center;color:var(--text-low);font-size:13px}:root{--font-sans: "Onest", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--fs-display: 44px;--fw-display: 700;--lh-display: 1.08;--tr-display: -.03em;--fs-h1: 34px;--fw-h1: 700;--lh-h1: 1;--tr-h1: -.02em;--fs-h2: 24px;--fw-h2: 700;--lh-h2: 1;--tr-h2: -.02em;--fs-h3: 18px;--fw-h3: 600;--lh-h3: 1.25;--tr-h3: -.01em;--fs-title: 16px;--fw-title: 600;--lh-title: 1.2;--tr-title: -.01em;--fs-body: 14px;--fw-body: 400;--lh-body: 1.55;--tr-body: 0;--fs-body-sm: 13px;--lh-body-sm: 1.5;--fs-label: 11px;--fw-label: 600;--lh-label: 1;--tr-label: .12em;--fs-caption: 12px;--fw-caption: 500;--lh-caption: 1.4;--fs-data: 13px;--fw-data: 600;--lh-data: 1;--tr-data: -.02em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-14: 56px;--r-xs: 6px;--r-sm: 7px;--r-md: 10px;--r-lg: 13px;--r-xl: 17px;--r-pill: 999px;--dur-instant: .12s;--dur-standard: .2s;--dur-emphasis: .32s;--ease-standard: cubic-bezier(.2, .7, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--op-disabled: .45;--op-hairline-fill: .018;--hover-tint: rgba(255, 255, 255, .04);--content-max: 1120px}:root,[data-theme=dark]{--bg: #0C0B0A;--bg-grad: radial-gradient(1100px 620px at 50% -8%, #16110c, #0C0B0A 58%);--surface-1: #131110;--surface-2: #161412;--surface-3: #1D1A17;--surface-elev: #242019;--surface-card-grad: linear-gradient(180deg, #1d1714, #131110);--hairline: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .12);--text-hi: #F6F3EE;--text-body: #E9E3D9;--text-mid: #B0A89D;--text-low: #8F877B;--text-faint: #726B61;--mq-brilliant: #6FBE85;--mq-best: #4FB6A8;--mq-good: #B4AB9C;--mq-inaccuracy:#E0AE45;--mq-mistake: #DD8442;--mq-blunder: #D85B4A;--success: #6FBE85;--warning: #E0AE45;--error: #D85B4A;--info: #7BA6C4;--piece-white: #FAF6EE;--piece-black: #2A251E;--board-lastmove: rgba(224, 178, 90, .3);--shadow-card: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 32px -18px rgba(0,0,0,.75);--shadow-hero: inset 0 1px 0 rgba(255,255,255,.06), 0 18px 40px -22px rgba(0,0,0,.8);--shadow-pop: 0 20px 50px -12px rgba(0,0,0,.75);--shadow-accent: 0 6px 18px -8px var(--accent-glow);--board-shadow: 0 12px 40px -14px rgba(0,0,0,.6);--halo-cool-1: rgba(74, 150, 200, .11);--halo-cool-2: rgba(79, 182, 168, .08);--progress-track: #211d18}[data-theme=light]{--bg: #F4F1EA;--bg-grad: radial-gradient(1100px 620px at 50% -8%, #FBF9F4, #F4F1EA 58%);--surface-1: #FBF9F4;--surface-2: #EDE8DD;--surface-3: #E4DCCB;--surface-elev: #EDE8DD;--surface-card-grad: linear-gradient(180deg, #FBF9F4, #F4F1EA);--hairline: rgba(28, 24, 18, .07);--border: rgba(28, 24, 18, .1);--border-strong: rgba(28, 24, 18, .16);--text-hi: #211D17;--text-body: #2E2920;--text-mid: #5A5347;--text-low: #6E665A;--text-faint: #8A8275;--primary-deep: #3A332A;--shadow-card: inset 0 1px 0 rgba(255,255,255,.5), 0 10px 28px -18px rgba(28,24,18,.3);--shadow-hero: inset 0 1px 0 rgba(255,255,255,.6), 0 16px 36px -22px rgba(28,24,18,.34);--shadow-pop: 0 18px 44px -14px rgba(28,24,18,.28);--board-shadow: 0 10px 34px -16px rgba(28,24,18,.28);--piece-white: #FAF6EE;--piece-black: #2A251E;--progress-track: #E4DCCB}:root,[data-accent=ivory]{--accent: #EBD9B8;--accent-bright: #F6F3EE;--on-accent: #1A1814;--accent-grad: linear-gradient(135deg, #F6F3EE, #EBD9B8);--accent-glow: rgba(224, 178, 110, .12)}[data-accent=periwinkle]{--accent: #C7CCFF;--accent-bright: #F2F3FF;--on-accent: #16161E;--accent-grad: linear-gradient(135deg, #F2F3FF, #C7CCFF);--accent-glow: rgba(150, 158, 255, .12)}[data-accent=sage]{--accent: #BBD0B0;--accent-bright: #EEF4EA;--on-accent: #161A14;--accent-grad: linear-gradient(135deg, #EEF4EA, #BBD0B0);--accent-glow: rgba(140, 184, 124, .12)}[data-accent=clay]{--accent: #E3B79A;--accent-bright: #F7E9DF;--on-accent: #1C1611;--accent-grad: linear-gradient(135deg, #F7E9DF, #E3B79A);--accent-glow: rgba(214, 142, 102, .12)}[data-theme=light][data-accent=ivory]{--accent: #9E6F14;--accent-bright: #7F5A0F;--on-accent: #FBF9F4;--accent-grad: linear-gradient(135deg, #B0801F, #9E6F14);--accent-glow: rgba(158, 111, 20, .14)}[data-theme=light][data-accent=periwinkle]{--accent: #4B54C4;--accent-bright: #3D45AD;--on-accent: #FBF9F4;--accent-grad: linear-gradient(135deg, #5A63D6, #4B54C4);--accent-glow: rgba(75, 84, 196, .14)}[data-theme=light][data-accent=sage]{--accent: #4E7A3E;--accent-bright: #3F6631;--on-accent: #FBF9F4;--accent-grad: linear-gradient(135deg, #5C8C4A, #4E7A3E);--accent-glow: rgba(78, 122, 62, .14)}[data-theme=light][data-accent=clay]{--accent: #B0602C;--accent-bright: #994F22;--on-accent: #FBF9F4;--accent-grad: linear-gradient(135deg, #C26E36, #B0602C);--accent-glow: rgba(176, 96, 44, .14)}:root,[data-board=wood]{--board-light: #E7DDC8;--board-dark: #8A7C66}[data-board=slate]{--board-light: #D5D9DF;--board-dark: #6E7682}[data-board=tournament]{--board-light: #ECECD2;--board-dark: #6E8A5A}[data-density=cozy]{--content-max: 960px}:root,[data-density=comfortable]{--content-max: 1120px}[data-density=spacious]{--content-max: 1280px}:root{--focus-ring: 0 0 0 3px rgba(235, 217, 184, .12)}@media(prefers-reduced-motion:reduce){:root{--dur-instant: 0ms;--dur-standard: 0ms;--dur-emphasis: 0ms}}.iv-display{font-family:var(--font-sans);font-size:var(--fs-display);font-weight:var(--fw-display);line-height:var(--lh-display);letter-spacing:var(--tr-display)}.iv-h1{font-family:var(--font-sans);font-size:var(--fs-h1);font-weight:var(--fw-h1);line-height:var(--lh-h1);letter-spacing:var(--tr-h1)}.iv-h2{font-family:var(--font-sans);font-size:var(--fs-h2);font-weight:var(--fw-h2);line-height:var(--lh-h2);letter-spacing:var(--tr-h2)}.iv-h3{font-family:var(--font-sans);font-size:var(--fs-h3);font-weight:var(--fw-h3);line-height:var(--lh-h3);letter-spacing:var(--tr-h3)}.iv-title{font-family:var(--font-sans);font-size:var(--fs-title);font-weight:var(--fw-title);line-height:var(--lh-title);letter-spacing:var(--tr-title)}.iv-body{font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-body);line-height:var(--lh-body)}.iv-body-sm{font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-body);line-height:var(--lh-body-sm)}.iv-label{font-family:var(--font-sans);font-size:var(--fs-label);font-weight:var(--fw-label);line-height:var(--lh-label);letter-spacing:var(--tr-label);text-transform:uppercase}.iv-caption{font-family:var(--font-sans);font-size:var(--fs-caption);font-weight:var(--fw-caption);line-height:var(--lh-caption)}.iv-data{font-family:var(--font-mono);font-size:var(--fs-data);font-weight:var(--fw-data);line-height:var(--lh-data);letter-spacing:var(--tr-data)}.iv-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes cmGlow{0%,to{opacity:.5}50%{opacity:.85}}@keyframes ivShimmer{0%{background-position:-150% 0}to{background-position:250% 0}}@keyframes ivPageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.iv-halo{position:absolute;pointer-events:none;background:radial-gradient(ellipse,var(--accent-glow),transparent 68%);animation:cmGlow 9s var(--ease-standard) infinite}.iv-headline-grad{background:linear-gradient(118deg,#FFFFFF 18%,#F4E7CF 52%,var(--accent) 96%);-webkit-background-clip:text;background-clip:text;color:transparent}.iv-skeleton{background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-3) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:ivShimmer 1.2s linear infinite;border-radius:var(--r-md)}.iv-page-enter{animation:ivPageIn var(--dur-emphasis) var(--ease-out)}@media(prefers-reduced-motion:reduce){.iv-halo,.iv-skeleton,.iv-page-enter{animation:none}}.ivory-scope{--cm-bg-base: var(--bg);--cm-bg-surface: var(--surface-1);--cm-bg-elevated: var(--surface-2);--cm-bg-hover: var(--hover-tint);--cm-text-primary: var(--text-hi);--cm-text-secondary: var(--text-mid);--cm-text-muted: var(--text-low);--cm-text-inverse: var(--on-accent);--cm-border-subtle: var(--border);--cm-border-default: var(--border);--cm-border-strong: var(--border-strong);--cm-accent: var(--accent);--cm-accent-bright: var(--accent-bright);--cm-accent-strong: var(--accent-bright);--cm-accent-dim: var(--accent-glow);--cm-accent-ring: var(--accent-glow);--cm-success: var(--success);--cm-success-dim: rgba(111, 190, 133, .16);--cm-warning: var(--warning);--cm-warning-dim: rgba(224, 174, 69, .16);--cm-error: var(--error);--cm-error-bright: var(--error);--cm-error-dim: rgba(216, 91, 74, .16);--cm-board-light: var(--board-light);--cm-board-dark: var(--board-dark);--font-family-mono: var(--font-mono);background:var(--bg-grad);color:var(--text-body);font-family:var(--font-sans)}:root{--cm-bg-base: #0C0E12;--cm-bg-surface: #13161C;--cm-bg-elevated: #1A1D24;--cm-bg-hover: #20242D;--cm-bg-active: #262B35;--cm-border-subtle: #252830;--cm-border-default: #32363F;--cm-border-strong: #454A56;--cm-text-primary: #F1F3F6;--cm-text-secondary: #9499A5;--cm-text-muted: #828799;--cm-text-inverse: #FFFFFF;--cm-accent: #7B6CF6;--cm-accent-hover: #6A5BF0;--cm-accent-bright: #9385FB;--cm-accent-strong: #6A5BF0;--cm-accent-dim: rgba(123,108,246,.14);--cm-accent-ring: rgba(123,108,246,.42);--cm-secondary: #F2A93B;--cm-secondary-hover:#E89A2A;--cm-secondary-dim: rgba(242,169,59,.14);--cm-success: #3DB87A;--cm-success-dim: rgba(61,184,122,.12);--cm-error: #E8554A;--cm-error-dim: rgba(232,85,74,.12);--cm-error-bright: #F2685D;--cm-info: #4A90E2;--cm-info-dim: rgba(74,144,226,.12);--cm-warning: #F0A840;--cm-warning-dim: rgba(240,168,64,.12);--cm-board-light: #F0D9B5;--cm-board-dark: #B58863;--color-background: var(--cm-bg-base);--color-surface: var(--cm-bg-surface);--color-text: var(--cm-text-primary);--color-text-secondary: var(--cm-text-secondary);--color-primary: var(--cm-accent);--color-primary-hover: var(--cm-accent-hover);--color-primary-active: var(--cm-accent-hover);--color-secondary: var(--cm-bg-elevated);--color-secondary-hover: var(--cm-bg-hover);--color-secondary-active: var(--cm-bg-active);--color-border: var(--cm-border-default);--color-btn-primary-text: var(--cm-text-inverse);--color-card-border: var(--cm-border-subtle);--color-card-border-inner:var(--cm-border-subtle);--color-error: var(--cm-error);--color-success: var(--cm-success);--color-warning: var(--cm-warning);--color-info: var(--cm-info);--color-focus-ring: var(--cm-accent-ring);--color-brown-600: #B58863;--color-charcoal-700: var(--cm-bg-base);--color-charcoal-800: var(--cm-bg-surface);--color-gray-200: var(--cm-text-primary);--color-teal-300: var(--cm-accent);--color-teal-400: var(--cm-accent-hover);--color-teal-500: var(--cm-accent);--color-teal-600: var(--cm-accent-hover);--color-teal-700: var(--cm-accent-hover);--color-teal-800: var(--cm-accent);--color-bg-1: var(--cm-bg-elevated);--color-bg-2: var(--cm-bg-hover);--color-bg-3: var(--cm-success-dim);--color-bg-4: var(--cm-error-dim);--color-success-rgb: 61,184,122;--color-error-rgb: 232,85,74;--color-warning-rgb: 240,168,64;--color-info-rgb: 74,144,226;--color-teal-300-rgb: 123,108,246;--color-red-400-rgb: 232,85,74;--color-orange-400-rgb:240,168,64;--focus-ring: 0 0 0 3px var(--cm-accent-ring);--focus-outline: 2px solid var(--cm-accent);--status-bg-opacity: .15;--status-border-opacity: .25;--border-radius: 8px;--select-caret-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23F1F3F6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");--select-caret-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23F1F3F6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");--font-family-base: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "Berkeley Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-size-4xl: 30px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 550;--font-weight-bold: 600;--line-height-tight: 1.2;--line-height-normal: 1.5;--letter-spacing-tight: -.01em;--space-0: 0;--space-1: 1px;--space-2: 2px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-32: 32px;--space-48: 48px;--radius-sm: 6px;--radius-base: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0,0,0,.12);--shadow-sm: 0 1px 3px rgba(0,0,0,.2), 0 1px 2px rgba(0,0,0,.1);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.25), 0 2px 4px -1px rgba(0,0,0,.15);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.3), 0 4px 6px -2px rgba(0,0,0,.15);--shadow-inset-sm: inset 0 1px 0 rgba(255,255,255,.06), inset 0 -1px 0 rgba(0,0,0,.15);--elevation-1: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.32);--elevation-2: 0 24px 60px rgba(0,0,0,.5);--shadow-primary-glow: 0 6px 16px rgba(123,108,246,.4);--radius-xl: 16px;--radius-2xl: 22px;--duration-fast: .15s;--duration-normal: .25s;--ease-standard: cubic-bezier(.16, 1, .3, 1);--dur-micro: .12s;--dur-base: .18s;--dur-panel: .24s;--dur-celebrate: .4s;--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px}[data-color-scheme=dark]{--cm-bg-base: #0C0E12;--cm-bg-surface: #13161C;--cm-bg-elevated: #1A1D24;--cm-bg-hover: #20242D;--cm-bg-active: #262B35;--cm-border-subtle: #252830;--cm-border-default: #32363F;--cm-border-strong: #454A56;--cm-text-primary: #F1F3F6;--cm-text-secondary: #9499A5;--cm-text-muted: #828799;--cm-text-inverse: #FFFFFF;--cm-accent: #7B6CF6;--cm-accent-hover: #6A5BF0;--cm-accent-bright: #9385FB;--cm-accent-strong: #6A5BF0;--cm-accent-dim: rgba(123,108,246,.14);--cm-accent-ring: rgba(123,108,246,.42);--cm-secondary: #F2A93B;--cm-secondary-hover:#E89A2A;--cm-secondary-dim: rgba(242,169,59,.14);--cm-success: #3DB87A;--cm-success-dim: rgba(61,184,122,.12);--cm-error: #E8554A;--cm-error-dim: rgba(232,85,74,.12);--cm-error-bright: #F2685D;--cm-info: #4A90E2;--cm-info-dim: rgba(74,144,226,.12);--color-background: var(--cm-bg-base);--color-surface: var(--cm-bg-surface);--color-text: var(--cm-text-primary);--color-text-secondary: var(--cm-text-secondary);--color-primary: var(--cm-accent);--color-primary-hover: var(--cm-accent-hover);--color-primary-active: var(--cm-accent-hover);--color-secondary: var(--cm-bg-elevated);--color-secondary-hover: var(--cm-bg-hover);--color-secondary-active: var(--cm-bg-active);--color-border: var(--cm-border-default);--color-btn-primary-text: var(--cm-text-inverse);--color-card-border: var(--cm-border-subtle);--color-card-border-inner: var(--cm-border-subtle);--color-error: var(--cm-error);--color-success: var(--cm-success);--color-warning: var(--cm-warning);--color-info: var(--cm-info);--color-focus-ring: var(--cm-accent-ring);--color-bg-1: var(--cm-bg-elevated);--color-bg-2: var(--cm-bg-hover);--color-bg-3: var(--cm-success-dim);--color-bg-4: var(--cm-error-dim);--color-success-rgb: 61,184,122;--color-error-rgb: 232,85,74;--color-warning-rgb: 240,168,64;--color-teal-300-rgb: 123,108,246;--shadow-inset-sm: inset 0 1px 0 rgba(255,255,255,.06), inset 0 -1px 0 rgba(0,0,0,.15)}[data-color-scheme=light]{--cm-bg-base: #F5F6F8;--cm-bg-surface: #FFFFFF;--cm-bg-elevated: #FFFFFF;--cm-bg-hover: #F0F1F4;--cm-bg-active: #E8EAF0;--cm-border-subtle: #E4E6EA;--cm-border-default: #D0D3DA;--cm-border-strong: #B8BCC5;--cm-text-primary: #0C0E12;--cm-text-secondary: #4A4F5C;--cm-text-muted: #6A6E78;--cm-text-inverse: #FFFFFF;--cm-accent: #5B54E8;--cm-accent-hover: #4A43DC;--cm-accent-bright: #5B54E8;--cm-accent-strong: #5B54E8;--cm-accent-dim: rgba(91,84,232,.1);--cm-accent-ring: rgba(91,84,232,.32);--cm-secondary: #E0922E;--cm-secondary-hover:#C87E22;--cm-secondary-dim: rgba(224,146,46,.12);--cm-success: #27A363;--cm-success-dim: rgba(39,163,99,.1);--cm-error: #D63B30;--cm-error-dim: rgba(214,59,48,.1);--cm-error-bright: #C0372B;--cm-info: #2B76D4;--cm-info-dim: rgba(43,118,212,.1);--cm-warning: #D4920A;--cm-warning-dim: rgba(212,146,10,.1);--color-background: var(--cm-bg-base);--color-surface: var(--cm-bg-surface);--color-text: var(--cm-text-primary);--color-text-secondary: var(--cm-text-secondary);--color-primary: var(--cm-accent);--color-primary-hover: var(--cm-accent-hover);--color-primary-active: var(--cm-accent-hover);--color-secondary: var(--cm-bg-hover);--color-secondary-hover: var(--cm-bg-active);--color-secondary-active: var(--cm-bg-active);--color-border: var(--cm-border-default);--color-btn-primary-text: var(--cm-text-inverse);--color-card-border: var(--cm-border-subtle);--color-card-border-inner: var(--cm-border-subtle);--color-error: var(--cm-error);--color-success: var(--cm-success);--color-warning: var(--cm-warning);--color-info: var(--cm-info);--color-focus-ring: var(--cm-accent-ring);--color-brown-600: #B58863;--color-charcoal-700: var(--cm-bg-base);--color-charcoal-800: var(--cm-bg-surface);--color-bg-1: var(--cm-bg-elevated);--color-bg-2: var(--cm-bg-hover);--color-bg-3: var(--cm-success-dim);--color-bg-4: var(--cm-error-dim);--color-success-rgb: 39,163,99;--color-error-rgb: 214,59,48;--color-warning-rgb: 212,146,10;--color-teal-300-rgb: 91,84,232;--shadow-inset-sm: inset 0 1px 0 rgba(255,255,255,.8), inset 0 -1px 0 rgba(0,0,0,.04);--select-caret-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230C0E12' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");--select-caret-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230C0E12' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}html{font-size:var(--font-size-base);font-family:var(--font-family-base);line-height:var(--line-height-normal);color:var(--cm-text-primary);background-color:var(--cm-bg-base);-webkit-font-smoothing:antialiased;box-sizing:border-box}body{margin:0;padding:0}*,*:before,*:after{box-sizing:inherit}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--cm-text-primary);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-md)}p{margin:0 0 var(--space-16) 0}a{color:var(--cm-accent);text-decoration:none;transition:color var(--duration-fast) var(--ease-standard)}a:hover{color:var(--cm-accent-hover)}code,pre{font-family:var(--font-family-mono);font-size:calc(var(--font-size-base) * .95);background-color:var(--cm-bg-elevated);border-radius:var(--radius-sm)}code{padding:var(--space-1) var(--space-4)}pre{padding:var(--space-16);margin:var(--space-16) 0;overflow:auto;border:1px solid var(--cm-border-default)}pre code{background:none;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-16);border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:500;line-height:1.5;cursor:pointer;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),transform 80ms ease;border:none;text-decoration:none;position:relative;gap:var(--space-6)}.btn:active:not(:disabled){transform:scale(.97)}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn--primary{background:var(--cm-accent-strong);color:var(--cm-text-inverse);border:1px solid transparent}.btn--primary:hover{background:var(--cm-accent-strong);filter:brightness(.92)}.btn--primary:active{background:var(--cm-accent-strong);filter:brightness(.85)}.btn--secondary{background:var(--cm-bg-elevated);color:var(--cm-text-primary);border:1px solid var(--cm-border-default)}.btn--secondary:hover{background:var(--cm-bg-hover);border-color:var(--cm-border-strong)}.btn--secondary:active{background:var(--cm-bg-active)}.btn--outline{background:transparent;color:var(--cm-text-primary);border:1px solid var(--cm-border-default)}.btn--outline:hover{background:var(--cm-bg-hover);border-color:var(--cm-border-strong)}.btn--ghost{background:transparent;color:var(--cm-text-secondary);border:1px solid transparent}.btn--ghost:hover{background:var(--cm-bg-hover);color:var(--cm-text-primary)}.btn--danger{background:var(--cm-error);color:#fff;border:1px solid transparent}.btn--danger:hover{filter:brightness(1.1)}.btn--sm{padding:var(--space-4) var(--space-12);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn--lg{padding:var(--space-10) var(--space-20);font-size:var(--font-size-lg);border-radius:var(--radius-md)}.btn--full-width{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed}.form-control{display:block;width:100%;padding:var(--space-8) var(--space-12);font-size:var(--font-size-md);line-height:1.5;color:var(--cm-text-primary);background-color:var(--cm-bg-surface);border:1px solid var(--cm-border-default);border-radius:var(--radius-base);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard);outline:none}textarea.form-control{font-family:var(--font-family-base);font-size:var(--font-size-base)}select.form-control{padding:var(--space-8) var(--space-12);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:var(--select-caret-dark);background-repeat:no-repeat;background-position:right var(--space-12) center;background-size:16px;padding-right:var(--space-32)}[data-color-scheme=light] select.form-control{background-image:var(--select-caret-light)}.form-control:focus{border-color:var(--cm-accent);box-shadow:0 0 0 3px var(--cm-accent-ring)}.form-control::-moz-placeholder{color:var(--cm-text-muted)}.form-control::placeholder{color:var(--cm-text-muted)}.form-label{display:block;margin-bottom:var(--space-8);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);color:var(--cm-text-secondary);text-transform:uppercase;letter-spacing:.4px}.form-group{margin-bottom:var(--space-16)}.card{background-color:var(--cm-bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--cm-border-subtle);box-shadow:var(--shadow-sm),inset 0 1px #ffffff0a;overflow:hidden;transition:box-shadow var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard)}.card:hover{box-shadow:var(--shadow-md),inset 0 1px #ffffff0a;border-color:var(--cm-border-default)}.card__body{padding:var(--space-16)}.card__header,.card__footer{padding:var(--space-16);border-bottom:1px solid var(--cm-border-subtle)}.status{display:inline-flex;align-items:center;padding:var(--space-4) var(--space-8);border-radius:var(--radius-full);font-weight:var(--font-weight-medium);font-size:var(--font-size-xs)}.status--success{background:var(--cm-success-dim);color:var(--cm-success);border:1px solid rgba(61,184,122,.25)}.status--error{background:var(--cm-error-dim);color:var(--cm-error);border:1px solid rgba(232,85,74,.25)}.status--warning{background:var(--cm-warning-dim);color:var(--cm-warning);border:1px solid rgba(240,168,64,.25)}.status--info{background:var(--cm-info-dim);color:var(--cm-info);border:1px solid rgba(74,144,226,.25)}.badge{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-8);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.badge--success{background:var(--cm-success-dim);color:var(--cm-success)}.badge--error{background:var(--cm-error-dim);color:var(--cm-error)}.badge--neutral{background:var(--cm-bg-elevated);color:var(--cm-text-secondary);border:1px solid var(--cm-border-subtle)}.spinner{width:20px;height:20px;border:2px solid var(--cm-border-default);border-top-color:var(--cm-accent);border-radius:50%;animation:spin .7s linear infinite}.toast{position:fixed;bottom:24px;right:24px;z-index:10000;min-width:300px;max-width:420px;background:var(--cm-bg-elevated);border:1px solid var(--cm-border-default);border-radius:var(--radius-lg);padding:12px 16px;box-shadow:0 8px 24px #0000004d;display:flex;align-items:center;gap:10px;animation:slideInUp .25s ease-out}.toast--success{border-left:3px solid var(--cm-success)}.toast--error{border-left:3px solid var(--cm-error)}.eval-gauge{width:28px;border-radius:var(--radius-sm);border:1px solid var(--cm-border-default);overflow:hidden;position:relative}.move-history{font-family:var(--font-family-mono);font-size:13px}.move-btn{background:transparent;border:none;padding:2px 5px;border-radius:3px;cursor:pointer;color:var(--cm-text-primary);font-family:var(--font-family-mono);font-size:13px;transition:background var(--duration-fast),color var(--duration-fast)}.move-btn:hover{background:var(--cm-bg-hover)}.move-btn--active{background:var(--cm-accent-dim);color:var(--cm-accent);font-weight:600}.stat-card{background:var(--cm-bg-elevated);border:1px solid var(--cm-border-subtle);border-radius:var(--radius-md);padding:16px}.stat-value{display:block;font-size:28px;font-weight:700;color:var(--cm-text-primary);line-height:1.2}.stat-label{font-size:11px;font-weight:500;color:var(--cm-text-muted);text-transform:uppercase;letter-spacing:.4px}.app-header{height:56px;background:color-mix(in srgb,var(--cm-bg-surface) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--cm-border-subtle);display:flex;align-items:center;padding:0 20px;position:sticky;top:0;z-index:100;gap:8px}.app-sidebar{width:300px;flex-shrink:0;background:var(--cm-bg-surface);border-right:1px solid var(--cm-border-subtle);overflow-y:auto;height:100%}.app-main{flex:1;overflow:auto}.game-item{padding:10px 12px;border-radius:var(--radius-base);cursor:pointer;margin-bottom:2px;border:1px solid transparent;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);position:relative}.game-item:hover{background:var(--cm-bg-hover)}.game-item:hover .game-delete-btn{opacity:1!important}@media(hover:none){.game-delete-btn{opacity:.55!important}}.game-item--active{background:var(--cm-bg-active)!important;border-color:var(--cm-border-default)!important}.game-item--active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:var(--cm-accent-strong);border-radius:0 2px 2px 0}.sq-light{background:var(--cm-board-light)}.sq-dark{background:var(--cm-board-dark)}.chat-container{display:flex;flex-direction:column;height:100%;background:var(--cm-bg-base)}.chat-header{padding:14px 20px;border-bottom:1px solid var(--cm-border-subtle);background:var(--cm-bg-surface)}.chat-messages{flex:1;padding:16px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.chat-input-area{padding:12px 16px;border-top:1px solid var(--cm-border-subtle);background:var(--cm-bg-surface)}.message{display:flex;gap:8px}.message.user{justify-content:flex-end}.message-content{padding:10px 14px;border-radius:8px;font-size:14px;line-height:1.6;max-width:80%}.message.user .message-content{background:var(--cm-accent-strong);color:var(--cm-text-inverse);border-radius:12px 12px 2px;max-width:75%}.message.ai .message-content{background:var(--cm-bg-elevated);border:1px solid var(--cm-border-subtle);color:var(--cm-text-primary);border-radius:2px 12px 12px}.message-avatar{width:28px;height:28px;background:var(--cm-bg-elevated);border:1px solid var(--cm-border-default);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;margin-top:2px}.input-group{display:flex;gap:var(--space-8)}.input-group .form-control{flex:1}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:var(--space-16);padding-left:var(--space-16)}@media(min-width:640px){.container{max-width:var(--container-sm)}}@media(min-width:768px){.container{max-width:var(--container-md)}}@media(min-width:1024px){.container{max-width:var(--container-lg)}}@media(min-width:1280px){.container{max-width:var(--container-xl)}}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:var(--space-4)}.gap-8{gap:var(--space-8)}.gap-16{gap:var(--space-16)}.m-0{margin:0}.mt-8{margin-top:var(--space-8)}.mb-8{margin-bottom:var(--space-8)}.p-0{padding:0}.min-h-screen{min-height:100vh}:focus-visible{outline:var(--focus-outline);outline-offset:2px}.loading{display:inline-block;width:18px;height:18px;border:2px solid var(--cm-border-default);border-radius:var(--radius-full);border-top-color:var(--cm-accent);animation:spin .7s linear infinite}.progress-bar{flex:1;height:6px;background:var(--cm-bg-elevated);border-radius:var(--radius-full);overflow:hidden;border:1px solid var(--cm-border-subtle)}.progress-fill{height:100%;background:var(--cm-accent-strong);border-radius:var(--radius-full);transition:width var(--duration-normal) var(--ease-standard)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideInUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,var(--cm-bg-elevated) 25%,var(--cm-bg-hover) 50%,var(--cm-bg-elevated) 75%);background-size:800px 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-text{height:12px;width:100%;border-radius:var(--radius-sm)}.skeleton-title{height:14px;width:70%;border-radius:var(--radius-sm)}.skeleton-game-item{padding:10px 12px;border-radius:var(--radius-base);display:flex;flex-direction:column;gap:6px}.fade-up{animation:fadeInUp var(--duration-normal) var(--ease-standard) both}.fade-up-delay-1{animation-delay:60ms}.fade-up-delay-2{animation-delay:.12s}.fade-up-delay-3{animation-delay:.18s}.fade-up-delay-4{animation-delay:.24s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-3px);opacity:1}}.typing-indicator{display:flex;align-items:center;gap:3px;padding:10px 14px;background:var(--cm-bg-elevated);border:1px solid var(--cm-border-subtle);border-radius:2px 12px 12px;width:-moz-fit-content;width:fit-content}.typing-dot{width:5px;height:5px;border-radius:50%;background:var(--cm-text-muted);animation:typingBounce 1.2s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.18s}.typing-dot:nth-child(3){animation-delay:.36s}.app-container{min-height:100vh;background:var(--cm-bg-base);display:flex;flex-direction:column}.header-content{max-width:1400px;margin:0 auto;padding:0 var(--space-24);display:flex;justify-content:space-between;align-items:center}.logo h1{color:var(--cm-accent);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0}.main-nav{display:flex;gap:var(--space-8)}.nav-btn{padding:var(--space-6) var(--space-12);border:1px solid var(--cm-border-default);background:transparent;color:var(--cm-text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard)}.nav-btn:hover{border-color:var(--cm-border-strong);color:var(--cm-text-primary)}.nav-btn.active{background:var(--cm-accent-strong);color:var(--cm-text-inverse);border-color:transparent}@media(max-width:560px){.chess-board-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}}.chess-board{width:480px;height:480px;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);border:1px solid var(--cm-border-subtle);border-radius:var(--radius-sm);overflow:hidden;box-shadow:0 0 0 3px var(--cm-bg-surface),0 0 0 4px var(--cm-border-subtle),0 16px 48px #0006,0 4px 12px #0003}.square{display:flex;align-items:center;justify-content:center;font-size:32px;cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);position:relative}.square.light{background:var(--cm-board-light)}.square.dark{background:var(--cm-board-dark)}.square.selected{outline:3px solid var(--cm-accent);outline-offset:-3px}.square.move-highlight{outline:2px solid rgba(240,168,64,.6);outline-offset:-2px}.piece{-webkit-user-select:none;-moz-user-select:none;user-select:none}.game-list{margin:var(--space-8) 0}.game-info h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-md)}.game-meta{color:var(--cm-text-secondary);font-size:var(--font-size-sm)}.result-win{color:var(--cm-success);font-weight:var(--font-weight-bold)}.result-loss{color:var(--cm-error);font-weight:var(--font-weight-bold)}.result-draw{color:var(--cm-warning);font-weight:var(--font-weight-bold)}.move-item{display:inline-block;padding:var(--space-2) var(--space-6);margin:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard);font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.move-item:hover{background:var(--cm-bg-hover)}.move-item.active{background:var(--cm-accent-dim);color:var(--cm-accent);font-weight:600}.analysis-panel{background:var(--cm-bg-surface);padding:var(--space-20);border-radius:var(--radius-lg);border:1px solid var(--cm-border-subtle);max-height:600px;overflow-y:auto}.tooltip{position:relative;display:inline-block}.tooltip .tooltiptext{visibility:hidden;width:200px;background-color:var(--cm-bg-elevated);color:var(--cm-text-primary);border:1px solid var(--cm-border-default);text-align:center;border-radius:var(--radius-base);padding:var(--space-8);position:absolute;z-index:1;bottom:125%;left:50%;margin-left:-100px;opacity:0;transition:opacity var(--duration-fast);font-size:var(--font-size-sm)}.tooltip:hover .tooltiptext{visibility:visible;opacity:1}.piece.white.king:before{content:"♔"}.piece.white.queen:before{content:"♕"}.piece.white.rook:before{content:"♖"}.piece.white.bishop:before{content:"♗"}.piece.white.knight:before{content:"♘"}.piece.white.pawn:before{content:"♙"}.piece.black.king:before{content:"♚"}.piece.black.queen:before{content:"♛"}.piece.black.rook:before{content:"♜"}.piece.black.bishop:before{content:"♝"}.piece.black.knight:before{content:"♞"}.piece.black.pawn:before{content:"♟"}@media(max-width:768px){.app-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--cm-border-subtle)}.chess-board{width:320px;height:320px}.square{font-size:20px}}.cm-panel{background:var(--cm-bg-elevated);border:1px solid var(--cm-border-subtle);border-radius:8px;padding:12px}.cm-section-label{font-size:11px;font-weight:600;color:var(--cm-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.cm-pill{padding:3px 9px;border-radius:5px;border:1px solid var(--cm-border-default);background:transparent;color:var(--cm-text-secondary);font-size:12px;cursor:pointer;transition:all .12s}.cm-pill:hover{border-color:var(--cm-border-strong);color:var(--cm-text-primary)}.cm-pill--active{border-color:var(--cm-accent);background:var(--cm-accent-dim);color:var(--cm-accent);font-weight:600}.cm-toggle-track{width:34px;height:18px;border-radius:9px;background:var(--cm-bg-hover);border:1px solid var(--cm-border-default);cursor:pointer;position:relative;transition:background .2s;flex-shrink:0}.cm-toggle-track--on{background:var(--cm-accent-strong)}.cm-toggle-thumb{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:left .2s;box-shadow:0 1px 3px #0000004d}.cm-toggle-thumb--on{left:16px}.cm-nav-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid var(--cm-border-default);border-radius:6px;color:var(--cm-text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap;font-family:inherit}.cm-nav-btn:hover{border-color:var(--cm-border-strong);color:var(--cm-text-primary)}.cm-btn-primary{padding:8px 14px;background:var(--cm-accent-strong);border:1px solid transparent;border-radius:7px;color:var(--cm-text-inverse);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:6px;font-family:inherit}.cm-btn-primary:hover{background:var(--cm-accent-hover)}.cm-btn-primary:disabled{background:var(--cm-bg-elevated);color:var(--cm-text-muted);cursor:not-allowed}.cm-btn-ghost{padding:6px 12px;background:var(--cm-bg-elevated);border:1px solid var(--cm-border-default);border-radius:7px;color:var(--cm-text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.cm-btn-ghost:hover{border-color:var(--cm-border-strong);color:var(--cm-text-primary)}.cm-icon-btn{padding:6px 8px;background:var(--cm-bg-hover);border:1px solid var(--cm-border-default);border-radius:6px;cursor:pointer;color:var(--cm-text-secondary);display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.cm-icon-btn:hover{color:var(--cm-text-primary);border-color:var(--cm-border-strong)}.cm-icon-btn:disabled{opacity:.35;cursor:not-allowed}.cm-eval-positive{color:#4ade80}.cm-eval-negative{color:#ef4444}.cm-eval-equal{color:var(--cm-text-primary)}.cm-eval-mate{color:var(--cm-warning)}.cm-text-input{width:100%;padding:7px 11px;background:var(--cm-bg-base);border:1px solid var(--cm-border-default);border-radius:7px;color:var(--cm-text-primary);font-size:13px;outline:none;font-family:inherit;transition:border-color .15s;box-sizing:border-box}.cm-text-input:focus{border-color:var(--cm-accent)}.cm-text-input::-moz-placeholder{color:var(--cm-text-muted)}.cm-text-input::placeholder{color:var(--cm-text-muted)}.cm-move-row{display:flex;gap:2px;align-items:center;margin-bottom:1px}.cm-move-num{color:var(--cm-text-muted);width:26px;font-size:11px;flex-shrink:0}.gv-layout{display:flex;flex-direction:column}.gv-board-row{display:flex;gap:16px;padding:16px 20px;overflow:auto;flex-wrap:wrap;align-items:flex-start}.gv-right-panel{flex:1;min-width:240px;max-width:320px;display:flex;flex-direction:column;gap:10px}.gv-tabs,.gv-eval-bar{display:none}@media(max-width:700px){.app-main-body{height:auto!important;min-height:calc(100vh - 56px);overflow-y:auto}.gv-board-row{flex-direction:column;padding:12px 12px 0;gap:0;flex-wrap:nowrap;align-items:center;overflow:visible}.gv-gauge-col{display:none!important}.gv-board-wrap{display:flex;justify-content:center;width:100%;padding-bottom:10px}.gv-eval-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--cm-bg-elevated);border-top:1px solid var(--cm-border-subtle);border-bottom:1px solid var(--cm-border-subtle);width:100%;box-sizing:border-box}.gv-right-panel{display:none!important}.gv-tabs{display:flex;width:100%;border-bottom:1px solid var(--cm-border-subtle);background:var(--cm-bg-surface);position:sticky;top:56px;z-index:10}.gv-tab-btn{flex:1;padding:10px 4px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--cm-text-muted);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:4px;font-family:inherit}.gv-tab-btn--active{color:var(--cm-accent);border-bottom-color:var(--cm-accent)}.gv-tab-content{display:flex;flex-direction:column;gap:8px;padding:12px;width:100%}.gv-movelist-grid{display:grid;grid-template-columns:auto 1fr 1fr;gap:1px 4px;font-family:var(--font-family-mono);font-size:13px}.gv-nav-row{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--cm-bg-elevated);border-top:1px solid var(--cm-border-subtle);border-bottom:1px solid var(--cm-border-subtle);position:sticky;bottom:0;z-index:10}.toast{bottom:72px}}@media(max-width:700px){.analyze-layout{flex-direction:column!important}.analyze-sidebar{width:100%!important;max-height:200px!important;border-right:none!important;border-bottom:1px solid var(--cm-border-subtle)!important}.analyze-board-area{padding:10px!important}}@media(max-width:640px){.stats-grid{grid-template-columns:repeat(2,1fr)!important}.stats-bottom-row{flex-direction:column!important}}@media(max-width:700px){.app-header{padding:0 12px}}@media(max-width:700px){.cm-modal-fullscreen{position:fixed!important;inset:0!important;margin:0!important;border-radius:0!important;max-width:100vw!important;max-height:100dvh!important;height:100dvh!important;overflow:auto}}@supports (padding-bottom: env(safe-area-inset-bottom)){.gv-nav-row{padding-bottom:calc(10px + env(safe-area-inset-bottom))}.app-header{padding-top:env(safe-area-inset-top)}}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--cm-border-default);border-radius:999px;border:2px solid var(--cm-bg-base)}*::-webkit-scrollbar-thumb:hover{background:var(--cm-border-strong)}::-moz-selection{background:var(--cm-accent-dim);color:var(--cm-text-primary)}::selection{background:var(--cm-accent-dim);color:var(--cm-text-primary)}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid var(--cm-accent);outline-offset:2px;border-radius:6px}@media(prefers-reduced-motion:reduce){.fade-up,.fade-up-delay-1,.fade-up-delay-2,.fade-up-delay-3,.fade-up-delay-4{animation:none!important}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.inline-grid{display:inline-grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.pb-4{padding-bottom:1rem}.pt-4{padding-top:1rem}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:border-gray-700:is([data-color-scheme=dark] *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:bg-gray-800:is([data-color-scheme=dark] *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}
