.ui-btn{--btn-h:44px;min-height:var(--btn-h);border-radius:var(--r-pill);font-family:var(--font-body);font-weight:650;font-size:var(--fs-md);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;line-height:1;text-decoration:none;display:inline-flex}.ui-btn:active:not(:disabled){transform:scale(.97)}.ui-btn:disabled{cursor:not-allowed;opacity:.5}.ui-btn.is-loading{opacity:.85;cursor:progress}.ui-btn__label{text-overflow:ellipsis;overflow:hidden}.ui-btn svg{flex:none}.ui-btn--sm{--btn-h:36px;font-size:var(--fs-sm);padding:0 14px}.ui-btn--lg{--btn-h:52px;font-size:var(--fs-lg);padding:0 24px}.ui-btn--full{width:100%}@media (pointer:coarse){.ui-btn--sm{--btn-h:44px}}.ui-btn--primary{background:var(--brand);color:var(--brand-ink);box-shadow:var(--shadow-1)}.ui-btn--primary:hover:not(:disabled){background:var(--brand-hover)}.ui-btn--secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.ui-btn--secondary:hover:not(:disabled){background:var(--surface-2)}.ui-btn--ghost{color:var(--ink);background:0 0}.ui-btn--ghost:hover:not(:disabled){background:var(--surface-2)}.ui-btn--danger{background:var(--bad);color:var(--surface)}.ui-btn--danger:hover:not(:disabled){background:color-mix(in oklch, var(--bad) 88%, var(--ink))}.ui-btn--specialty{background:var(--sp-strong);color:var(--sp-ink)}.ui-btn--specialty:hover:not(:disabled){background:color-mix(in oklch, var(--sp-strong) 85%, var(--ink))}.ui-btn__spinner{animation:.9s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-iconbtn{--ib:44px;width:var(--ib);height:var(--ib);border-radius:var(--r-pill);color:var(--ink-2);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:1px solid #0000;flex:none;place-items:center;display:inline-grid;position:relative}.ui-iconbtn:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.ui-iconbtn:active:not(:disabled){transform:scale(.94)}.ui-iconbtn:disabled{opacity:.45;cursor:not-allowed}.ui-iconbtn--sm{--ib:36px}.ui-iconbtn--lg{--ib:52px}@media (pointer:coarse){.ui-iconbtn--sm{--ib:44px}}.ui-iconbtn--secondary{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.ui-iconbtn--primary{background:var(--brand);color:var(--brand-ink)}.ui-iconbtn--primary:hover:not(:disabled){background:var(--brand-hover);color:var(--brand-ink)}.ui-iconbtn__dot{border-radius:var(--r-pill);background:var(--sp);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface);position:absolute;top:8px;right:8px}.ui-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1);min-width:0;color:inherit}.ui-card--pad-none{padding:0}.ui-card--pad-sm{padding:12px}.ui-card--pad-md{padding:16px}.ui-card--pad-lg{padding:24px}@media (width>=900px){.ui-card--pad-md{padding:20px}.ui-card--pad-lg{padding:28px}}.ui-card--tinted{background:var(--sp-tint);border-color:var(--sp-line)}.ui-card--link{text-decoration:none;display:block}.ui-card--interactive{cursor:pointer;transition:transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out)}.ui-card--interactive:hover{box-shadow:var(--shadow-2);border-color:var(--line-strong);transform:translateY(-1px)}.ui-card--interactive:active{transform:translateY(0)scale(.995)}.ui-card--link:focus-visible{outline-offset:3px;border-radius:var(--r-md)}.ui-chip{--chip-fg:var(--ink-2);--chip-bg:var(--surface-2);--chip-line:var(--line);border-radius:var(--r-pill);border:1px solid var(--chip-line);background:var(--chip-bg);min-height:28px;color:var(--chip-fg);font-size:var(--fs-sm);white-space:nowrap;vertical-align:middle;align-items:center;gap:6px;padding:0 10px;font-weight:600;line-height:1;display:inline-flex}.ui-chip svg{flex:none;width:16px;height:16px}.ui-chip--sm{min-height:22px;font-size:var(--fs-xs);gap:4px;padding:0 8px}.ui-chip--sm svg{width:14px;height:14px}.ui-chip--sp{--chip-fg:var(--sp-strong);--chip-bg:var(--sp-soft);--chip-line:var(--sp-line)}.ui-chip--gold{--chip-fg:color-mix(in oklch, var(--gold-deep) 70%, var(--ink));--chip-bg:var(--gold-soft);--chip-line:color-mix(in oklch, var(--gold) 45%, transparent)}.ui-chip--good{--chip-fg:color-mix(in oklch, var(--good) 70%, var(--ink));--chip-bg:var(--good-bg);--chip-line:color-mix(in oklch, var(--good) 30%, transparent)}.ui-chip--warn{--chip-fg:color-mix(in oklch, var(--warn) 75%, var(--ink));--chip-bg:var(--warn-bg);--chip-line:color-mix(in oklch, var(--warn) 35%, transparent)}.ui-chip--bad{--chip-fg:color-mix(in oklch, var(--bad) 70%, var(--ink));--chip-bg:var(--bad-bg);--chip-line:color-mix(in oklch, var(--bad) 30%, transparent)}.ui-chip--info{--chip-fg:color-mix(in oklch, var(--info) 70%, var(--ink));--chip-bg:var(--info-bg);--chip-line:color-mix(in oklch, var(--info) 30%, transparent)}.ui-chip--brand{--chip-fg:var(--brand-ink);--chip-bg:var(--brand);--chip-line:var(--brand)}.ui-chip--solid{--chip-bg:var(--chip-fg);color:var(--surface);border-color:#0000}.ui-chip--flag{font-family:var(--font-mono);letter-spacing:.02em}.ui-chip--pop{animation:ui-pop var(--dur-slow) var(--ease-spring) both}.ui-status{--st:var(--status-stable);border-radius:var(--r-pill);background:color-mix(in oklch, var(--st) 14%, var(--surface));border:1px solid color-mix(in oklch, var(--st) 40%, transparent);min-height:30px;color:color-mix(in oklch, var(--st) 70%, var(--ink));font-size:var(--fs-sm);letter-spacing:.01em;white-space:nowrap;transition:background-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);align-items:center;gap:8px;padding:0 12px 0 10px;font-weight:700;display:inline-flex}.ui-status--sm{min-height:24px;font-size:var(--fs-xs);gap:6px;padding:0 10px 0 8px}.ui-status--stable{--st:var(--status-stable)}.ui-status--guarded{--st:var(--status-guarded)}.ui-status--unstable{--st:var(--status-unstable)}.ui-status--critical{--st:var(--status-critical)}.ui-status--improving{--st:var(--status-improving)}.ui-status__dot{border-radius:var(--r-pill);background:var(--st);flex:none;width:8px;height:8px;position:relative}.ui-status__dot--pulse:after{content:"";border-radius:inherit;background:var(--st);animation:ui-status-pulse .9s var(--ease-out) 1;position:absolute;inset:0}.ui-status--critical .ui-status__dot{animation:1.6s ease-in-out infinite ui-status-blink}@keyframes ui-status-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}@keyframes ui-status-blink{50%{opacity:.35}}:root[data-motion=reduced] .ui-status__dot,:root[data-motion=reduced] .ui-status__dot--pulse:after{animation:none}.ui-ring{--ring:var(--sp);flex:none;place-items:center;display:inline-grid;position:relative}.ui-ring svg{position:absolute;inset:0}.ui-ring--gold{--ring:var(--gold)}.ui-ring--brand{--ring:var(--brand)}.ui-ring--good{--ring:var(--good)}.ui-ring__track{stroke:var(--surface-3)}.ui-ring__arc{stroke:var(--ring);transition:stroke-dashoffset .9s var(--ease-out)}.ui-ring__center{text-align:center;font-family:var(--font-display);font-variant-numeric:tabular-nums;place-items:center;font-weight:700;line-height:1;display:grid;position:relative}.ui-mastery__pct{font-size:var(--fs-xs);color:var(--ink-2);font-weight:600}.ui-stages{width:100%;min-width:0}.ui-stages__list{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.ui-stages__seg{flex-direction:column;gap:6px;min-width:0;display:flex}.ui-stages__bar{border-radius:var(--r-pill);background:var(--surface-3);height:6px;display:block;position:relative;overflow:hidden}.ui-stages__bar:after{content:"";border-radius:inherit;background:var(--sp);transform-origin:0;transition:transform var(--dur-slow) var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.is-done .ui-stages__bar:after{transform:scaleX(1)}.is-current .ui-stages__bar:after{transform:scaleX(.5)}.is-current .ui-stages__bar{box-shadow:0 0 0 2px var(--sp-soft)}.is-skipped .ui-stages__bar{background:repeating-linear-gradient(90deg, var(--line) 0 4px, transparent 4px 8px)}.ui-stages__label{font-size:var(--fs-xs);color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:none;overflow:hidden}.ui-stages--labels .is-current .ui-stages__label{color:var(--sp-strong);display:block}.is-skipped .ui-stages__label{opacity:.7;text-decoration:line-through}@media (width>=560px){.ui-stages--labels .ui-stages__label{display:block}.ui-stages--labels .is-done .ui-stages__label{color:var(--ink-2)}}@media (width<=559px){.ui-stages--labels .is-current .ui-stages__label{align-self:center;width:max-content;overflow:visible}.ui-stages--labels .is-current:nth-child(-n+2) .ui-stages__label{align-self:flex-start}.ui-stages--labels .is-current:nth-last-child(-n+2) .ui-stages__label{align-self:flex-end}}.ui-stars{--star:18px;flex:none;align-items:center;gap:2px;display:inline-flex}.ui-stars--sm{--star:14px;gap:1px}.ui-stars--lg{--star:28px;gap:4px}.ui-stars--xl{--star:48px;gap:8px}.ui-star{width:var(--star);height:var(--star);fill:var(--surface-3);stroke:var(--line-strong);stroke-width:1.25px;stroke-linejoin:round}.ui-star.is-on{fill:var(--gold);stroke:var(--gold-deep)}.ui-stars--animate .ui-star.is-on{animation:ui-star-pop .52s var(--ease-spring) both}@keyframes ui-star-pop{0%{opacity:0;transform:scale(.2)rotate(-30deg)}70%{opacity:1;transform:scale(1.18)rotate(6deg)}to{opacity:1;transform:scale(1)rotate(0)}}:root[data-motion=reduced] .ui-stars--animate .ui-star.is-on{animation:.2s both ui-fade-in}.ui-badge{--medal:64px;--tier:var(--gold);--tier-soft:var(--gold-soft);text-align:center;flex-direction:column;align-items:center;gap:8px;min-width:0;margin:0;display:flex}.ui-badge--sm{--medal:44px;gap:6px}.ui-badge--lg{--medal:96px;gap:12px}.ui-badge--gold{--tier:var(--gold);--tier-soft:var(--gold-soft)}.ui-badge--silver{--tier:color-mix(in oklch, var(--ink-3) 70%, var(--surface));--tier-soft:color-mix(in oklch, var(--ink-3) 14%, var(--surface))}.ui-badge--bronze{--tier:color-mix(in oklch, var(--gold-deep) 62%, var(--bad));--tier-soft:color-mix(in oklch, var(--gold-deep) 14%, var(--surface))}.ui-badge--locked{--tier:var(--line-strong);--tier-soft:var(--surface-2)}.ui-badge__medal{width:var(--medal);height:var(--medal);border-radius:var(--r-pill);background:var(--tier-soft);box-shadow:inset 0 0 0 3px var(--tier), inset 0 0 0 6px var(--surface), var(--shadow-1);color:var(--ink);place-items:center;display:grid;position:relative}.ui-badge--gold .ui-badge__medal,.ui-badge--silver .ui-badge__medal,.ui-badge--bronze .ui-badge__medal{color:color-mix(in oklch, var(--tier) 55%, var(--ink))}.ui-badge--domain .ui-badge__glyph{color:var(--sp-strong)}.ui-badge--locked .ui-badge__medal{color:var(--ink-3);box-shadow:inset 0 0 0 2px var(--tier)}.ui-badge--locked .ui-badge__glyph{opacity:.45;filter:grayscale()}.ui-badge__glyph{place-items:center;display:grid}.ui-badge__lock{border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line-strong);width:22px;height:22px;color:var(--ink-2);place-items:center;display:grid;position:absolute;bottom:-2px;right:-2px}.ui-badge__caption{flex-direction:column;gap:2px;min-width:0;max-width:16ch;display:flex}.ui-badge--lg .ui-badge__caption{max-width:28ch}.ui-badge__name{font-weight:650;font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--ink)}.ui-badge--locked .ui-badge__name{color:var(--ink-2)}.ui-badge__tier{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in oklch, var(--tier) 60%, var(--ink));font-weight:700}.ui-badge__desc{font-size:var(--fs-xs);color:var(--ink-3);line-height:var(--lh-snug)}.ui-badge--reveal .ui-badge__medal{animation:ui-badge-flip .9s var(--ease-spring) both}@keyframes ui-badge-flip{0%{opacity:0;transform:perspective(400px)rotateY(-180deg)scale(.6)}60%{opacity:1}to{opacity:1;transform:perspective(400px)rotateY(0)scale(1)}}:root[data-motion=reduced] .ui-badge--reveal .ui-badge__medal{animation:.2s both ui-fade-in}.ui-sheet{z-index:60;position:fixed;inset:0}.ui-sheet__backdrop{background:var(--overlay);animation:ui-fade-in var(--dur) var(--ease-out) both;position:absolute;inset:0}.ui-sheet__panel{background:var(--surface);border-radius:var(--r-lg) var(--r-lg) 0 0;max-height:min(88dvh,88vh);box-shadow:var(--shadow-3);padding-bottom:var(--safe-bottom);animation:ui-sheet-up var(--dur-slow) var(--ease-out) both;outline:none;flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}.ui-sheet__handle{border-radius:var(--r-pill);background:var(--line-strong);flex:none;width:40px;height:5px;margin:8px auto 0}.ui-sheet__header{padding:8px var(--gutter-r) 8px var(--gutter-l);border-bottom:1px solid var(--line);flex:none;align-items:flex-start;gap:12px;display:flex}.ui-sheet__titles{flex:1;min-width:0;padding-top:8px}.ui-sheet__title{font-size:var(--fs-xl)}.ui-sheet__desc{color:var(--ink-2);font-size:var(--fs-sm);overflow-wrap:anywhere;margin-top:4px}.ui-sheet__body{overscroll-behavior:contain;min-height:0;padding:16px var(--gutter-r) 20px var(--gutter-l);flex:auto;overflow-y:auto}.ui-sheet__footer{padding:12px var(--gutter-r) 12px var(--gutter-l);border-top:1px solid var(--line);background:var(--surface);flex:none;justify-content:flex-end;gap:12px;display:flex}@media (width>=900px){.ui-sheet__panel{border-radius:var(--r-lg) 0 0 var(--r-lg);width:min(440px,100vw);max-height:none;padding-bottom:0;animation-name:ui-sheet-in-right;inset:0 0 0 auto}.ui-sheet__panel--lg{width:min(620px,100vw)}.ui-sheet__panel--left{border-radius:0 var(--r-lg) var(--r-lg) 0;animation-name:ui-sheet-in-left;left:0;right:auto}.ui-sheet__handle{display:none}.ui-sheet__header{padding:16px 20px 12px 24px}.ui-sheet__body{padding:20px 24px}.ui-sheet__footer{padding:14px 24px}}@keyframes ui-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes ui-sheet-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes ui-sheet-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}:root[data-motion=reduced] .ui-sheet__panel{animation:.15s both ui-fade-in}.ui-dialog{z-index:70;padding:max(16px, var(--safe-top)) var(--gutter-r) max(16px, var(--safe-bottom)) var(--gutter-l);place-items:center;display:grid;position:fixed;inset:0}.ui-dialog__backdrop{background:var(--overlay);animation:ui-fade-in var(--dur) var(--ease-out) both;position:absolute;inset:0}.ui-dialog__panel{background:var(--surface);border-radius:var(--r-lg);width:100%;max-width:440px;max-height:100%;box-shadow:var(--shadow-3);animation:ui-dialog-in var(--dur) var(--ease-out) both;outline:none;padding:20px;position:relative;overflow-y:auto}.ui-dialog__panel--md{max-width:600px}.ui-dialog__header{align-items:flex-start;gap:12px;display:flex}.ui-dialog__title{min-width:0;font-size:var(--fs-xl);flex:1;padding-top:6px}.ui-dialog__desc{color:var(--ink-2);margin-top:8px}.ui-dialog__body{margin-top:16px}.ui-dialog__actions{flex-direction:column-reverse;gap:10px;margin-top:20px;display:flex}.ui-dialog__actions>*{width:100%}@media (width>=560px){.ui-dialog__panel{padding:24px}.ui-dialog__actions{flex-direction:row;justify-content:flex-end}.ui-dialog__actions>*{width:auto}}@keyframes ui-dialog-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}:root[data-motion=reduced] .ui-dialog__panel{animation:.15s both ui-fade-in}.ui-toaster{z-index:80;top:calc(var(--safe-top) + 12px);left:var(--gutter-l);right:var(--gutter-r);pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed}@media (width>=900px){.ui-toaster{align-items:flex-end;width:400px;top:24px;left:auto;right:24px}}.ui-toast{--tt:var(--ink-2);pointer-events:auto;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--tt);border-radius:var(--r-md);width:100%;max-width:440px;box-shadow:var(--shadow-3);animation:ui-toast-in var(--dur-slow) var(--ease-spring) both;align-items:flex-start;gap:12px;padding:12px 8px 12px 14px;display:flex}.ui-toast--good{--tt:var(--good)}.ui-toast--warn{--tt:var(--warn)}.ui-toast--bad{--tt:var(--bad)}.ui-toast--gold{--tt:var(--gold)}.ui-toast__icon{color:var(--tt);flex:none;padding-top:1px}.ui-toast__text{flex:1;min-width:0}.ui-toast__title{font-weight:650;line-height:var(--lh-snug)}.ui-toast__body{font-size:var(--fs-sm);color:var(--ink-2);margin-top:2px}.ui-toast__action{border-radius:var(--r-pill);min-height:44px;color:var(--ink);align-self:center;padding:0 12px;font-weight:650}.ui-toast__action:hover{background:var(--surface-2)}.ui-toast__close{border-radius:var(--r-pill);width:44px;height:44px;color:var(--ink-3);flex:none;place-items:center;display:grid}.ui-toast__close:hover{background:var(--surface-2);color:var(--ink)}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(-12px)scale(.98)}to{opacity:1;transform:none}}:root[data-motion=reduced] .ui-toast{animation:.15s both ui-fade-in}.ui-pin{flex-direction:column;gap:6px;min-width:0;display:flex}.ui-pin__row{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.ui-pin__text{flex-direction:column;flex:140px;gap:2px;min-width:0;display:flex}.ui-pin__label{font-size:var(--fs-sm);color:var(--ink-2);font-weight:650}.ui-pin__value{font-size:var(--fs-xl);letter-spacing:.12em;color:var(--ink);font-weight:600}.ui-pin__value.is-masked{color:var(--ink-3)}.ui-pin__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ui-pin__note{font-size:var(--fs-sm);color:var(--ink-2);max-width:var(--reading-max)}.ui-tabs{gap:4px;min-width:0;display:flex}.ui-tabs--full .ui-tab{flex:1 1 0;justify-content:center}.ui-tabs--scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;overflow-x:auto}.ui-tabs--scroll::-webkit-scrollbar{display:none}.ui-tab{min-height:44px;color:var(--ink-2);font-weight:600;font-size:var(--fs-md);white-space:nowrap;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);flex:none;align-items:center;gap:6px;padding:0 12px;display:inline-flex;position:relative}.ui-tab:hover:not(:disabled){color:var(--ink)}.ui-tab:disabled{opacity:.45;cursor:not-allowed}.ui-tab svg{width:18px;height:18px}.ui-tabs--underline{border-bottom:1px solid var(--line)}.ui-tabs--underline .ui-tab{border-radius:var(--r-sm) var(--r-sm) 0 0}.ui-tabs--underline .ui-tab:after{content:"";background:var(--sp);height:3px;transition:transform var(--dur) var(--ease-out);border-radius:3px 3px 0 0;position:absolute;bottom:-1px;left:8px;right:8px;transform:scaleX(0)}.ui-tabs--underline .ui-tab.is-selected{color:var(--ink)}.ui-tabs--underline .ui-tab.is-selected:after{transform:scaleX(1)}.ui-tabs--pill{background:var(--surface-2);border-radius:var(--r-pill);padding:4px}.ui-tabs--pill .ui-tab{border-radius:var(--r-pill);min-height:40px}.ui-tabs--pill .ui-tab.is-selected{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}@media (pointer:coarse){.ui-tabs--pill .ui-tab{min-height:44px}}.ui-tab__count{border-radius:var(--r-pill);background:var(--surface-3);min-width:20px;color:var(--ink-2);font-size:var(--fs-xs);padding:2px 6px;line-height:1.2}.ui-tab__dot{border-radius:var(--r-pill);background:var(--sp);width:7px;height:7px;animation:ui-pop var(--dur-slow) var(--ease-spring) both}.ui-tabpanel:focus-visible{outline-offset:4px}.ui-empty{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface);flex-direction:column;align-items:center;gap:10px;padding:40px 20px;display:flex}.ui-empty--compact{gap:6px;padding:24px 16px}.ui-empty__icon{border-radius:var(--r-pill);background:var(--sp-soft);width:56px;height:56px;color:var(--sp-strong);place-items:center;margin-bottom:4px;display:grid}.ui-empty__icon svg{width:28px;height:28px}.ui-empty__title{font-size:var(--fs-lg)}.ui-empty__body{max-width:44ch;color:var(--ink-2)}.ui-empty__action{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.ui-skel{background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface-3) 40%, var(--surface-2) 80%);background-size:300% 100%;max-width:100%;animation:1.4s ease-in-out infinite ui-skel;display:block}.ui-skel--sm{border-radius:var(--r-sm)}.ui-skel--md{border-radius:var(--r-md)}.ui-skel--lg{border-radius:var(--r-lg)}.ui-skel--pill{border-radius:var(--r-pill)}.ui-skel-lines{flex-direction:column;gap:8px;display:flex}@keyframes ui-skel{0%{background-position:100% 0}to{background-position:0 0}}:root[data-motion=reduced] .ui-skel{animation:none}.ui-avatar{border-radius:var(--r-pill);background:var(--sp-soft);color:var(--sp-strong);box-shadow:inset 0 0 0 1px var(--sp-line);font-family:var(--font-display);letter-spacing:.02em;-webkit-user-select:none;user-select:none;flex:none;place-items:center;font-weight:700;line-height:1;display:inline-grid}.ui-stat{--stat:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);min-width:0;box-shadow:var(--shadow-1);flex-direction:column;gap:6px;padding:14px 16px;display:flex}.ui-stat--gold{--stat:var(--gold-deep)}.ui-stat--sp{--stat:var(--sp-strong)}.ui-stat--good{--stat:var(--good)}.ui-stat--bad{--stat:var(--bad)}.ui-stat__top{align-items:center;gap:6px;min-width:0;display:flex}.ui-stat__icon{color:var(--stat);display:grid}.ui-stat__icon svg{width:18px;height:18px}.ui-stat__label{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.ui-stat__value{font-family:var(--font-display);font-weight:700;font-size:var(--fs-2xl);line-height:var(--lh-tight);font-variant-numeric:tabular-nums;color:var(--stat);font-variation-settings:"opsz" 48, "wdth" 92;overflow-wrap:anywhere}.ui-stat__value.mono{font-family:var(--font-mono);font-size:var(--fs-xl)}.ui-stat__hint{font-size:var(--fs-sm);color:var(--ink-2)}@media (width>=900px){.ui-stat__value{font-size:var(--fs-3xl)}}.ui-table-frame{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:100%;max-width:100%;overflow-x:auto}.ui-table-frame--sticky{max-height:70vh;overflow-y:auto}.ui-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.ui-table__caption{caption-side:top;text-align:left;color:var(--ink-2);padding:12px 16px 4px;font-weight:650}.ui-table th{z-index:1;background:var(--surface-2);border-bottom:1px solid var(--line);height:44px;color:var(--ink-2);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;text-align:left;white-space:nowrap;padding:0 12px;font-weight:700;position:sticky;top:0}.ui-table td{border-bottom:1px solid var(--line);vertical-align:middle;color:var(--ink);padding:12px}.ui-table--dense td{padding:8px 12px}.ui-table tbody tr:last-child td{border-bottom:0}.ui-table--clickable tbody tr{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}.ui-table--clickable tbody tr:hover{background:var(--surface-2)}.ui-table--clickable tbody tr:focus-visible{outline:3px solid var(--sp);outline-offset:-3px}.ui-table__sort{min-height:44px;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;align-items:center;gap:4px;display:inline-flex}.ui-table__sort.is-active{color:var(--ink)}.ui-table__sort-idle{opacity:.45}.ui-table__empty{text-align:center;color:var(--ink-3);padding:32px 16px}@media (width<=559px){.ui-hide-below-sm{display:none}}@media (width<=899px){.ui-hide-below-md{display:none}}
