*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--nn-color-background);color:var(--nn-color-text);font-family:var(--nn-font-sans);font-size:var(--nn-font-body-size);line-height:var(--nn-font-body-line);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}ul,ol{margin:0;padding:0;list-style:none}button,input,textarea,select{font:inherit;color:inherit}img{max-width:100%}:focus-visible{outline:2px solid var(--nn-color-focus-ring);outline-offset:2px}.page{display:flex;flex-direction:column;min-height:100%}.page__body{flex:1;width:100%;max-width:var(--nn-layout-content-max-width);margin:0 auto;padding:var(--nn-space-xl) var(--nn-space-lg) var(--nn-space-xxl)}.page__body--narrow{max-width:var(--nn-layout-narrow-max-width);display:flex;flex-direction:column;justify-content:center}.header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--nn-space-lg);height:var(--nn-layout-header-height);padding:0 var(--nn-space-lg);background:var(--nn-color-surface);border-bottom:1px solid var(--nn-color-border)}.header__spacer{flex:1}.header__account{flex:0 0 auto}.header__user{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size)}@media(max-width:640px){.header__user{display:none}}.logo{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--nn-space-sm);color:var(--nn-color-text);text-decoration:none;white-space:nowrap}.logo__mark{flex:0 0 auto;width:26px;height:26px;object-fit:contain}.logo__word{font-size:var(--nn-font-brand-size);line-height:var(--nn-font-brand-line);font-weight:var(--nn-font-brand-weight)}.logo__word-upper{letter-spacing:.04em;margin-right:-.04em}.logo__word-lower{font-weight:var(--nn-font-label-weight)}.logo__text{display:inline-flex;align-items:baseline;gap:var(--nn-space-sm)}.logo__sub{color:var(--nn-color-text-muted);font-size:var(--nn-font-body-size)}.stack{display:flex;flex-direction:column;gap:var(--nn-space-lg)}.stack--sm{gap:var(--nn-space-sm)}.stack--md{gap:var(--nn-space-md)}.row{display:flex;align-items:center;gap:var(--nn-space-sm)}.row--wrap{flex-wrap:wrap}.row--end{justify-content:flex-end}.row--between{justify-content:space-between}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--nn-space-md)}.page-head__title{flex:1 1 auto;min-width:0}.page-head__actions{flex:0 0 auto;display:flex;align-items:center;gap:var(--nn-space-sm)}.title{font-size:var(--nn-font-title-size);line-height:var(--nn-font-title-line);font-weight:var(--nn-font-title-weight)}.heading{font-size:var(--nn-font-heading-size);line-height:var(--nn-font-heading-line);font-weight:var(--nn-font-heading-weight)}.subheading{font-size:var(--nn-font-subheading-size);line-height:var(--nn-font-subheading-line);font-weight:var(--nn-font-subheading-weight)}.caption{font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line);color:var(--nn-color-text-muted)}.muted{color:var(--nn-color-text-muted)}.danger-text{color:var(--nn-color-negative)}.wrap-anywhere{overflow-wrap:anywhere;white-space:pre-wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--nn-space-xs);padding:var(--nn-space-sm) var(--nn-space-lg);border:1px solid transparent;border-radius:var(--nn-radius-button);background:var(--nn-color-chip-surface);color:var(--nn-color-text);font-size:var(--nn-font-label-size);font-weight:var(--nn-font-label-weight);line-height:var(--nn-font-label-line);white-space:nowrap;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}.btn:hover:not(:disabled){background:var(--nn-color-border)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--nn-color-primary);color:var(--nn-color-text-on-primary);box-shadow:var(--nn-shadow-button-primary)}.btn--primary:hover:not(:disabled){background:var(--nn-color-primary-pressed)}.btn--primary:active:not(:disabled){transform:translateY(2px);box-shadow:var(--nn-shadow-button-primary-active)}.btn--primary:disabled{box-shadow:none}.btn--danger{background:var(--nn-color-negative);color:var(--nn-color-text-on-primary)}.btn--danger:hover:not(:disabled){background:var(--nn-color-negative-pressed)}.btn--outline{background:transparent;border-color:var(--nn-color-border-strong)}.btn--outline:hover:not(:disabled){background:var(--nn-color-chip-surface)}.btn--ghost{background:transparent;padding:var(--nn-space-xs) var(--nn-space-sm);color:var(--nn-color-text-muted)}.btn--ghost:hover:not(:disabled){background:var(--nn-color-chip-surface);color:var(--nn-color-text)}.btn--sm{padding:var(--nn-space-xs) var(--nn-space-md);font-size:var(--nn-font-caption-size)}.btn--icon{flex:0 0 auto;width:36px;height:36px;padding:0}.btn--action .btn__icon{display:none}.btn--action .btn__label{display:inline}@media(max-width:640px){.btn--action{width:44px;height:44px;padding:0}.btn--action .btn__icon{display:inline-flex;align-items:center}.btn--action .btn__label{display:none}}.btn--block{width:100%}.btn--google{background:#fff;border:1.5px solid #747775;color:#1f1f1f}.btn--google:hover:not(:disabled){background:#f2f2f2}[data-theme=dark] .btn--google{background:#131314;border-color:#8e918f;color:#e3e3e3}[data-theme=dark] .btn--google:hover:not(:disabled){background:#1e1f20}.btn--apple{background:#000;border:1.5px solid #000000;color:#fff}.btn--apple:hover:not(:disabled){background:#1a1a1a}[data-theme=dark] .btn--apple{background:#fff;border-color:#fff;color:#000}[data-theme=dark] .btn--apple:hover:not(:disabled){background:#e6e6e6}.divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--nn-space-md);color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size)}.divider:before,.divider:after{content:"";height:1px;background:var(--nn-color-border)}a.btn{text-decoration:none}.btn-link{background:none;border:none;padding:0;color:var(--nn-color-primary);font-size:var(--nn-font-caption-size);text-decoration:underline;cursor:pointer}.field{display:flex;flex-direction:column;gap:var(--nn-space-xs)}.field__label{font-size:var(--nn-font-label-size);font-weight:var(--nn-font-label-weight)}.field__hint{font-size:var(--nn-font-caption-size);color:var(--nn-color-text-muted)}.field__error{font-size:var(--nn-font-caption-size);color:var(--nn-color-negative)}.input,.textarea{width:100%;padding:var(--nn-space-sm) var(--nn-space-md);background:var(--nn-color-surface-input);border:1px solid var(--nn-color-border-strong);border-radius:var(--nn-radius-md);font-size:var(--nn-font-body-size);line-height:var(--nn-font-body-line)}@media(pointer:coarse){.input,.textarea,select{font-size:16px}}.input::placeholder,.textarea::placeholder{color:var(--nn-color-text-muted)}.input:disabled,.textarea:disabled{opacity:.6}.textarea{resize:vertical;min-height:72px;font-family:inherit}.input--invalid,.textarea--invalid{border-color:var(--nn-color-negative)}.input-group{position:relative}.input-group__input{padding-right:calc(var(--nn-space-md) + 28px)}.input-group__toggle{position:absolute;top:50%;right:var(--nn-space-xs);transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:none;border-radius:var(--nn-radius-md);color:var(--nn-color-text-muted);cursor:pointer}.input-group__toggle:hover,.input-group__toggle:focus-visible{color:var(--nn-color-text)}.input-group__toggle:focus-visible{outline-offset:-2px}.input-group__toggle:disabled{opacity:.6;cursor:default}.checkbox-row,.radio-row{display:flex;align-items:center;gap:var(--nn-space-sm);cursor:pointer}.checkbox-row input,.radio-row input{accent-color:var(--nn-color-primary);flex:none}.fieldset{border:none;padding:0;margin:0;min-inline-size:0}.counter{font-size:var(--nn-font-caption-size);color:var(--nn-color-text-muted);text-align:right}.counter--over{color:var(--nn-color-negative);font-weight:700}.card{background:var(--nn-color-surface);border:1px solid var(--nn-color-border);border-radius:var(--nn-radius-card);box-shadow:var(--nn-shadow-card)}.deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--nn-space-lg)}.deck-card{display:flex;align-items:flex-start;gap:var(--nn-space-sm);padding:var(--nn-space-lg)}.deck-card__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--nn-space-xs);background:none;border:none;padding:0;text-align:left;cursor:pointer;color:inherit;text-decoration:none}.deck-card__name{font-size:var(--nn-font-subheading-size);font-weight:var(--nn-font-subheading-weight);overflow-wrap:anywhere}.tag-list{display:flex;flex-wrap:wrap;gap:var(--nn-space-xs)}.tag{display:inline-flex;align-items:center;align-self:flex-start;gap:var(--nn-space-xs);padding:var(--nn-space-xs) var(--nn-space-md);background:var(--nn-color-chip-surface);border-radius:var(--nn-radius-chip);color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);font-weight:var(--nn-font-label-weight)}.deck-card__meta{display:flex;flex-wrap:wrap;gap:var(--nn-space-sm)}.deck-card__progress{display:flex;align-items:center;gap:var(--nn-space-sm)}.deck-card__bar{flex:1;min-width:0;height:6px;background:var(--nn-color-chip-surface);border-radius:var(--nn-radius-pill);overflow:hidden}.deck-card__bar-fill{display:block;height:100%;background:var(--nn-color-primary);border-radius:var(--nn-radius-pill)}.list-controls{display:flex;flex-direction:column;gap:var(--nn-space-md)}.list-controls__row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--nn-space-lg)}.tag-filter{display:flex;flex-wrap:wrap;gap:var(--nn-space-xs)}.tag--button{border:1px solid transparent;cursor:pointer}.tag--button:hover{background:var(--nn-color-surface-elevated);border-color:var(--nn-color-border-strong)}.tag--selected{background:var(--nn-color-primary-subtle);border-color:var(--nn-color-primary);color:var(--nn-color-primary)}.deck-group__title{display:flex;align-items:baseline;gap:var(--nn-space-sm)}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--nn-space-lg);padding:var(--nn-space-xxl) var(--nn-space-lg);text-align:center;color:var(--nn-color-text-muted)}.menu{position:relative}.menu__list{position:absolute;right:0;top:calc(100% + var(--nn-space-xs));z-index:20;min-width:180px;padding:var(--nn-space-xs);background:var(--nn-color-surface-elevated);border:1px solid var(--nn-color-border);border-radius:var(--nn-radius-lg);box-shadow:var(--nn-shadow-dialog)}.menu__item{display:block;width:100%;padding:var(--nn-space-sm) var(--nn-space-md);background:none;border:none;border-radius:var(--nn-radius-sm);text-align:left;font-size:var(--nn-font-label-size);cursor:pointer}.menu__item:hover{background:var(--nn-color-chip-surface)}.menu__item:disabled{opacity:.5;cursor:default}.menu__item--danger{color:var(--nn-color-negative)}.menu__divider{height:1px;margin:var(--nn-space-xs) 0;background:var(--nn-color-border)}.menu__info{padding:var(--nn-space-sm) var(--nn-space-md);color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);overflow-wrap:anywhere}.dialog,.drawer{padding:0;border:none;background:transparent;color:inherit;max-width:none;max-height:none}.dialog::backdrop,.drawer::backdrop{background:var(--nn-color-scrim)}.dialog{width:min(480px,calc(100vw - 2 * var(--nn-space-lg)));margin:auto}.dialog__panel{display:flex;flex-direction:column;gap:var(--nn-space-lg);padding:var(--nn-space-xl);background:var(--nn-color-surface-elevated);border-radius:var(--nn-radius-card);box-shadow:var(--nn-shadow-dialog)}.dialog__title{font-size:var(--nn-font-heading-size);font-weight:var(--nn-font-heading-weight)}.drawer{width:min(var(--nn-layout-drawer-width),100vw);height:100%;max-height:100%;margin:0 0 0 auto}.drawer__panel{display:flex;flex-direction:column;height:100%;background:var(--nn-color-surface-elevated);box-shadow:var(--nn-shadow-drawer)}.drawer__header{display:flex;align-items:center;gap:var(--nn-space-md);padding:var(--nn-space-lg);border-bottom:1px solid var(--nn-color-border)}.drawer__title{flex:1;font-size:var(--nn-font-subheading-size);font-weight:var(--nn-font-subheading-weight)}.drawer__body{flex:1;overflow-y:auto;padding:var(--nn-space-lg);display:flex;flex-direction:column;gap:var(--nn-space-xl)}.drawer__footer{padding:var(--nn-space-md) var(--nn-space-lg);border-top:1px solid var(--nn-color-border)}.quiz-list{display:flex;flex-direction:column;gap:var(--nn-space-md)}.quiz-card{display:flex;align-items:flex-start;gap:var(--nn-space-sm);padding:var(--nn-space-md)}.quiz-card--hidden .quiz-card__body{opacity:.55}.quiz-card__index{flex:0 0 auto;min-width:2.5em;color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);font-variant-numeric:tabular-nums;padding-top:var(--nn-space-sm)}.quiz-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--nn-space-sm);padding-top:var(--nn-space-xs)}.quiz-card__actions{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--nn-space-xs)}.media-row{display:flex;gap:var(--nn-space-sm)}.media-row__label{flex:0 0 auto;width:1.6em;height:1.6em;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--nn-radius-pill);background:var(--nn-color-chip-surface);font-size:var(--nn-font-caption-size);font-weight:700}.media-row__label--answer{color:var(--nn-color-answer-accent)}.media-row__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--nn-space-xs)}.media-image{max-width:50%;max-height:200px;width:auto;object-fit:contain;border-radius:var(--nn-radius-sm);border:1px solid var(--nn-color-border);background:var(--nn-color-chip-surface)}.remark-toggle{width:100%;padding:var(--nn-space-xs);background:none;border:none;border-top:1px solid var(--nn-color-border);color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);cursor:pointer}.remark-toggle:hover{color:var(--nn-color-text)}.media-editor{display:flex;flex-direction:column;gap:var(--nn-space-sm)}.media-editor__item{display:flex;align-items:flex-start;gap:var(--nn-space-sm)}.media-editor__item>:first-child{flex:1;min-width:0}.media-editor__placeholder{padding:var(--nn-space-lg);border:1px dashed var(--nn-color-border-strong);border-radius:var(--nn-radius-md);color:var(--nn-color-text-muted);text-align:center;font-size:var(--nn-font-caption-size)}.toast-region{position:fixed;right:var(--nn-space-lg);bottom:var(--nn-space-lg);z-index:100;display:flex;flex-direction:column;gap:var(--nn-space-sm);max-width:min(420px,calc(100vw - 2 * var(--nn-space-lg)))}.toast{display:flex;align-items:flex-start;gap:var(--nn-space-md);padding:var(--nn-space-md) var(--nn-space-lg);background:var(--nn-color-surface-elevated);border:1px solid var(--nn-color-border);border-left:4px solid var(--nn-color-positive);border-radius:var(--nn-radius-md);box-shadow:var(--nn-shadow-dialog);font-size:var(--nn-font-label-size)}.toast--error{border-left-color:var(--nn-color-negative)}.banner{padding:var(--nn-space-md) var(--nn-space-lg);background:var(--nn-color-negative-subtle);border:1px solid var(--nn-color-negative);border-radius:var(--nn-radius-md);color:var(--nn-color-negative);font-size:var(--nn-font-label-size)}.notice{display:flex;flex-direction:column;gap:var(--nn-space-xs);padding:var(--nn-space-md);background:var(--nn-color-chip-surface);border:1px solid var(--nn-color-border);border-radius:var(--nn-radius-md)}.notice--action{flex-direction:row;align-items:center;gap:var(--nn-space-md);cursor:pointer}.notice__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notice__title{font-size:var(--nn-font-label-size);font-weight:var(--nn-font-label-weight)}.notice__body{display:flex;flex-direction:column;gap:2px;font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line);color:var(--nn-color-text-muted)}.notice__sample{padding-left:var(--nn-space-md);opacity:.8}.stat-row{display:flex;gap:var(--nn-space-md)}.stat{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;padding:var(--nn-space-md);background:var(--nn-color-surface);border:1px solid var(--nn-color-border);border-radius:var(--nn-radius-md)}.stat__value{font-size:var(--nn-font-heading-size);line-height:var(--nn-font-heading-line);font-weight:var(--nn-font-heading-weight)}.import-busy{display:flex;flex-direction:column;align-items:center;gap:var(--nn-space-sm);padding:var(--nn-space-xxl) var(--nn-space-lg);color:var(--nn-color-text-muted)}.center-state{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--nn-color-text-muted)}.spinner{width:18px;height:18px;border:2px solid var(--nn-color-border-strong);border-top-color:var(--nn-color-primary);border-radius:var(--nn-radius-pill);animation:nn-spin .7s linear infinite}@keyframes nn-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2s}*{transition-duration:.01ms!important}}.panel{padding:var(--nn-space-xl)}.tab-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--nn-space-sm)}.tab-card{position:relative;display:flex;flex-direction:column;gap:var(--nn-space-xs);padding:var(--nn-space-md);padding-right:var(--nn-space-xxl);background:var(--nn-color-surface);border:1px solid var(--nn-color-border);border-radius:var(--nn-radius-md);text-align:left;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.tab-card:hover{background:var(--nn-color-chip-surface)}.tab-card--selected{background:var(--nn-color-primary-subtle);border-color:var(--nn-color-primary)}.tab-card__badge{position:absolute;top:var(--nn-space-sm);right:var(--nn-space-sm);padding:0 var(--nn-space-sm);background:var(--nn-color-primary);border-radius:var(--nn-radius-chip);color:var(--nn-color-text-on-primary);font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line);font-weight:var(--nn-font-label-weight)}.tab-card__title{font-size:var(--nn-font-label-size);font-weight:var(--nn-font-label-weight)}.tab-card__desc{font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line);color:var(--nn-color-text-muted)}.steps{display:flex;flex-direction:column;gap:var(--nn-space-md);padding-left:var(--nn-space-xl);list-style:decimal}.steps>li{padding-left:var(--nn-space-xs)}.steps>li::marker{color:var(--nn-color-text-muted);font-weight:var(--nn-font-label-weight)}.code-block{flex:1;min-width:0;margin:0;padding:var(--nn-space-sm) var(--nn-space-md);background:var(--nn-color-chip-surface);border-radius:var(--nn-radius-md);font-family:var(--nn-font-mono);font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line);overflow-x:auto}.code-block--multiline{white-space:pre-wrap;overflow-wrap:anywhere}.code-inline{padding:0 var(--nn-space-xs);background:var(--nn-color-chip-surface);border-radius:var(--nn-radius-sm);font-family:var(--nn-font-mono);font-size:.92em;overflow-wrap:anywhere}.copy-field{display:flex;align-items:flex-start;gap:var(--nn-space-sm);margin-top:var(--nn-space-xs)}.copy-field__button{flex:0 0 auto}.disclosure__summary{cursor:pointer;color:var(--nn-color-text-muted);font-size:var(--nn-font-label-size)}.disclosure__summary:hover{color:var(--nn-color-text)}.disclosure__body{margin-top:var(--nn-space-sm)}.token-list,.passkey-list{display:flex;flex-direction:column;gap:var(--nn-space-sm)}.token-row,.passkey-row{display:flex;align-items:center;gap:var(--nn-space-md);padding:var(--nn-space-md);background:var(--nn-color-surface);border:1px solid var(--nn-color-border);border-radius:var(--nn-radius-md)}.token-row__main,.passkey-row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--nn-space-xs);align-items:flex-start}.token-row__name,.passkey-row__name{font-size:var(--nn-font-label-size);font-weight:var(--nn-font-label-weight);overflow-wrap:anywhere}.passkey-row__actions{display:flex;flex-wrap:wrap;gap:var(--nn-space-sm)}.token-row__prefix{font-family:var(--nn-font-mono);font-size:var(--nn-font-caption-size);color:var(--nn-color-text-muted);overflow-wrap:anywhere}.scope-list{display:flex;flex-direction:column;gap:var(--nn-space-sm);padding:var(--nn-space-md);background:var(--nn-color-chip-surface);border-radius:var(--nn-radius-md)}.scope-list__item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--nn-space-sm);font-size:var(--nn-font-label-size)}.scope-list__item>.code-inline{color:var(--nn-color-text-muted);background:transparent;padding:0}.is-refetching{opacity:.6;transition:opacity .12s ease}.stat-row--wrap{flex-wrap:wrap}.stat-row--wrap>.stat{flex:1 1 168px}.field--inline{flex-direction:row;align-items:center;gap:var(--nn-space-md)}.field--inline .input{width:auto;max-width:320px}.field--inline .input[type=search]{width:100%}.phase-bars{display:flex;flex-direction:column;gap:var(--nn-space-md)}.phase-bars__row{display:grid;grid-template-columns:6.5em 1fr auto;align-items:center;gap:var(--nn-space-md)}.phase-bars__label{font-size:var(--nn-font-label-size);font-weight:var(--nn-font-label-weight)}.phase-bars__track{height:10px;border-radius:var(--nn-radius-sm);background:var(--nn-color-chip-surface);overflow:hidden}.phase-bars__fill{display:block;height:100%;border-radius:0 4px 4px 0}.phase-bars__value{display:flex;align-items:baseline;gap:var(--nn-space-xs);font-size:var(--nn-font-label-size);font-variant-numeric:tabular-nums}.phase-bars__share{min-width:3em;text-align:right;color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size)}.chart__plot{position:relative;height:134px;padding-top:14px}.chart__tick{position:absolute;top:0;left:0;color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);font-variant-numeric:tabular-nums}.chart__gridline{position:absolute;top:14px;left:0;right:0;height:1px;background:var(--nn-color-border)}.chart__bars{display:flex;align-items:flex-end;gap:2px;height:120px;border-bottom:1px solid var(--nn-color-border)}.chart__slot{flex:1 1 0;min-width:0;height:100%;display:flex;justify-content:center}.chart__bar{flex:1;max-width:24px;height:100%;display:flex;align-items:flex-end;padding:0;background:none;border:none;cursor:pointer}.chart__fill{width:100%;background:var(--nn-color-primary);border-radius:4px 4px 0 0;transition:background-color .12s ease}.chart__bar:hover .chart__fill,.chart__bar--active .chart__fill{background:var(--nn-color-primary-pressed)}.chart__axis{display:flex;justify-content:space-between;margin-top:var(--nn-space-xs)}.chart__readout{margin-top:var(--nn-space-sm);font-size:var(--nn-font-label-size);min-height:var(--nn-font-body-line)}.legal{max-width:68ch;line-height:1.9}.legal__list{display:flex;flex-direction:column;gap:var(--nn-space-sm);padding-left:var(--nn-space-xl);list-style:disc}.legal__list>li{display:list-item}.legal a{color:var(--nn-color-primary)}.detail-list{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;gap:var(--nn-space-sm) var(--nn-space-lg);margin:0}.detail-list>dt{margin:0}.detail-list>dd{margin:0}@media(max-width:480px){.detail-list{grid-template-columns:1fr;gap:var(--nn-space-xs)}.detail-list>dd{margin-bottom:var(--nn-space-sm)}}.heatmap{display:flex;flex-direction:column;gap:var(--nn-space-md)}.heatmap__scroll{overflow-x:auto;padding-bottom:var(--nn-space-xs)}.heatmap__grid-wrap{display:inline-flex;flex-direction:column;gap:var(--nn-space-xs);min-width:min-content}.heatmap__months{display:grid;grid-auto-flow:column;grid-auto-columns:14px;margin-left:26px;height:16px}.heatmap__month{color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);line-height:16px;white-space:nowrap}.heatmap__body{display:flex;gap:var(--nn-space-xs)}.heatmap__weekdays{display:flex;flex-direction:column;gap:3px;width:22px}.heatmap__weekday{height:11px;color:var(--nn-color-text-muted);font-size:10px;line-height:11px;text-align:right}.heatmap__grid{display:flex;gap:3px}.heatmap__week{display:flex;flex-direction:column;gap:3px}.heatmap__cell{display:block;width:11px;height:11px;border-radius:2px;box-shadow:inset 0 0 0 1px #0000000f}.heatmap__cell--void{background:transparent;box-shadow:none}.heatmap__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--nn-space-sm)}.heatmap__legend{display:flex;align-items:center;gap:3px}.heatmap__legend .caption{margin:0 var(--nn-space-xs)}.heatmap__cell--button{padding:0;border:0;cursor:pointer}.heatmap__cell--button:hover{outline:1px solid var(--nn-color-border-strong);outline-offset:1px}.heatmap__cell--button.is-selected{outline:2px solid var(--nn-color-text);outline-offset:1px}.heatmap__cell--button:focus-visible{outline:2px solid var(--nn-color-focus-ring);outline-offset:1px}.daily-records__nav{display:flex;align-items:center;justify-content:space-between;gap:var(--nn-space-sm)}.daily-records__month{margin:0;text-align:center}.daily-records__table tbody tr.is-selected{background:var(--nn-color-primary-subtle)}.daily-records__table tfoot th,.daily-records__table tfoot td{border-top:1px solid var(--nn-color-border-strong);border-bottom:0;font-weight:var(--nn-font-label-weight)}.daily-records__table tfoot th{text-align:left}.table-wrap{overflow-x:auto}.data-table{width:100%;min-width:460px;border-collapse:collapse;font-size:var(--nn-font-label-size)}.data-table th,.data-table td{padding:var(--nn-space-sm) var(--nn-space-md);border-bottom:1px solid var(--nn-color-border);white-space:nowrap}.data-table thead th{color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);font-weight:var(--nn-font-label-weight);text-align:left}.data-table tbody th{text-align:left;font-weight:var(--nn-font-label-weight);white-space:normal}.data-table td{text-align:right;font-variant-numeric:tabular-nums}.data-table a{color:var(--nn-color-primary)}.data-table td.wrap-anywhere,.data-table td.data-table__text{text-align:left;font-variant-numeric:normal}.data-table td.wrap-anywhere{white-space:normal}.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}.notice--plain{border-left-color:var(--nn-color-border);color:var(--nn-color-text-muted);font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line)}.deck-icon{flex:0 0 auto;border-radius:var(--nn-radius-sm);background:var(--nn-color-surface);border:1px solid var(--nn-color-border);object-fit:contain}.page-head__with-icon{display:flex;align-items:center;gap:var(--nn-space-md)}.icon-tile{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:var(--nn-radius-md);background:var(--nn-color-surface);border:1px solid var(--nn-color-border);object-fit:contain}.icon-tile--locked{background:var(--nn-color-chip-surface);border-style:dashed;border-color:var(--nn-color-border-strong);color:var(--nn-color-text-muted);font-size:var(--nn-font-heading-size);font-weight:var(--nn-font-heading-weight)}.icon-tile--empty{background:var(--nn-color-background);color:var(--nn-color-text-muted)}.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:var(--nn-space-md);list-style:none}.icon-option{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--nn-space-xs);padding:var(--nn-space-sm);background:none;border:2px solid transparent;border-radius:var(--nn-radius-lg);color:inherit;font:inherit;cursor:pointer}.icon-option:hover:not(:disabled){background:var(--nn-color-surface-elevated)}.icon-option--selected{border-color:var(--nn-color-primary);background:var(--nn-color-primary-subtle)}.icon-option:disabled{cursor:not-allowed;opacity:.7}.icon-option--static{cursor:default}.icon-option__label{max-width:100%;font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line);font-weight:var(--nn-font-label-weight);text-align:center;overflow-wrap:anywhere}.icons-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:var(--nn-space-xl);align-items:start}@media(max-width:900px){.icons-layout{grid-template-columns:minmax(0,1fr)}}.icons-hero__title{display:flex;align-items:flex-start;gap:var(--nn-space-sm)}.icons-hero__text{position:relative;display:inline-block;text-wrap:balance;word-break:auto-phrase}.icons-hero__lead{white-space:pre-line}.icons-hero__wave{position:absolute;left:0;right:0;bottom:-10px;width:100%;height:12px;pointer-events:none}.icons-hero__star{flex:0 0 auto;margin-top:2px}.icon-deck-list{display:flex;flex-direction:column;gap:var(--nn-space-md);list-style:none}.icon-deck-row{padding:0;overflow:hidden}.icon-deck-row__main{width:100%;display:flex;align-items:center;gap:var(--nn-space-md);padding:var(--nn-space-lg);background:none;border:none;text-align:left;color:inherit;font:inherit;cursor:pointer}.icon-deck-row__main:hover{background:var(--nn-color-surface-elevated)}.icon-deck-row__name{flex:1;min-width:0;font-size:var(--nn-font-subheading-size);font-weight:var(--nn-font-subheading-weight)}.icon-deck-row__meta{flex:0 0 auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--nn-space-xs)}.icon-deck-row__chevron{flex:0 0 auto;color:var(--nn-color-text-muted);font-size:var(--nn-font-heading-size);line-height:1}@media(max-width:480px){.icon-deck-row__meta{display:none}}.gacha-panel__price{font-size:var(--nn-font-heading-size);line-height:var(--nn-font-heading-line)}.gacha-panel__odds{white-space:pre-line;font-size:var(--nn-font-label-size);line-height:var(--nn-font-caption-line)}.gacha-panel__terms{white-space:pre-line}.gacha-terms{display:flex;flex-direction:column;gap:var(--nn-space-sm);margin:0}.gacha-terms__row{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:var(--nn-space-md);align-items:baseline}@media(max-width:520px){.gacha-terms__row{grid-template-columns:minmax(0,1fr);gap:2px}}.gacha-terms__label{font-size:var(--nn-font-caption-size);line-height:var(--nn-font-caption-line);font-weight:var(--nn-font-label-weight);color:var(--nn-color-text-muted)}.gacha-terms__value,.gacha-confirm__note{text-wrap:balance;word-break:auto-phrase}.gacha-terms__value{margin:0;font-size:var(--nn-font-label-size);line-height:var(--nn-font-caption-line);overflow-wrap:anywhere}.gacha-result{max-width:560px}.gacha-result p{text-wrap:balance;word-break:auto-phrase}.gacha-reveal{--gacha-capsule-duration: .92s;--gacha-rays-delay: .78s;--gacha-confetti-delay: .8s;--gacha-icon-delay: .86s;--gacha-halo-delay: 1.12s;--gacha-title-delay: 1.38s;--gacha-lead-delay: 1.52s;display:flex;flex-direction:column;align-items:center;gap:var(--nn-space-md);text-align:center}.gacha-reveal__stage{position:relative;display:grid;place-items:center;width:200px;height:200px;margin-top:var(--nn-space-sm)}.gacha-reveal__stage>*{grid-area:1 / 1}.gacha-reveal__capsule,.gacha-reveal__rays,.gacha-reveal__halo,.gacha-reveal__confetti{display:none}.gacha-reveal--playing .gacha-reveal__capsule,.gacha-reveal--playing .gacha-reveal__rays,.gacha-reveal--playing .gacha-reveal__halo,.gacha-reveal--playing .gacha-reveal__confetti{display:block}.gacha-reveal__capsule{width:96px;height:96px;border-radius:var(--nn-radius-pill);border:2px solid var(--nn-color-primary);background:linear-gradient(to bottom,var(--nn-color-primary) 0 50%,var(--nn-color-surface-elevated) 50% 100%);box-shadow:var(--nn-shadow-card)}.gacha-reveal--playing .gacha-reveal__capsule{animation:nn-gacha-capsule var(--gacha-capsule-duration) ease-in-out both}.gacha-reveal__rays{width:200px;height:200px;border-radius:var(--nn-radius-pill);background:repeating-conic-gradient(from 0deg,var(--nn-color-primary) 0deg 3.5deg,transparent 3.5deg 22.5deg);-webkit-mask-image:radial-gradient(closest-side,transparent 30%,#000 46%,#000 76%,transparent 100%);mask-image:radial-gradient(closest-side,transparent 30%,#000 46%,#000 76%,transparent 100%);opacity:0}.gacha-reveal--playing .gacha-reveal__rays{animation:nn-gacha-rays .52s ease-out var(--gacha-rays-delay) both}.gacha-reveal__halo{width:224px;height:224px;border-radius:var(--nn-radius-pill);border:3px solid var(--nn-color-primary);opacity:0}.gacha-reveal--playing .gacha-reveal__halo{animation:nn-gacha-halo .68s ease-out var(--gacha-halo-delay) both}.gacha-reveal__confetti{position:relative;width:0;height:0}.gacha-reveal__piece{position:absolute;left:-4px;top:-6px;width:8px;height:12px;border-radius:2px;opacity:0;animation:nn-gacha-confetti .9s ease-out both;animation-delay:calc(var(--gacha-confetti-delay) + var(--gacha-piece-delay, 0ms))}.gacha-reveal__icon{width:160px;height:160px;border-radius:var(--nn-radius-lg);background:var(--nn-color-surface);border:1px solid var(--nn-color-border);object-fit:contain}.gacha-reveal--playing .gacha-reveal__icon{animation:nn-gacha-icon .7s cubic-bezier(.2,.7,.3,1) var(--gacha-icon-delay) both}.gacha-reveal__title{text-wrap:balance;word-break:auto-phrase}.gacha-reveal--playing .gacha-reveal__title{animation:nn-gacha-rise .44s ease-out var(--gacha-title-delay) both}.gacha-reveal__lead{white-space:pre-line;text-wrap:balance}.gacha-reveal--playing .gacha-reveal__lead{animation:nn-gacha-rise .44s ease-out var(--gacha-lead-delay) both}.gacha-reveal__actions{display:flex;justify-content:center;align-items:center;min-height:34px}.gacha-reveal--playing .gacha-reveal__skip{animation:nn-gacha-skip-out .44s ease-out var(--gacha-title-delay) both}@keyframes nn-gacha-skip-out{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes nn-gacha-capsule{0%{opacity:0;transform:translateY(8px) scale(.86)}12%{opacity:1;transform:translateY(0) scale(1) rotate(0)}26%{transform:rotate(-9deg)}40%{transform:rotate(9deg)}54%{transform:rotate(-7deg)}66%{transform:rotate(7deg) scale(1.04)}80%{opacity:1;transform:rotate(0) scale(1.14)}to{opacity:0;transform:scale(1.7)}}@keyframes nn-gacha-rays{0%{opacity:.85;transform:scale(.35) rotate(0)}to{opacity:0;transform:scale(1.45) rotate(24deg)}}@keyframes nn-gacha-confetti{0%{opacity:0;transform:translate(0) rotate(0) scale(.5)}12%{opacity:1}70%{opacity:1}to{opacity:0;transform:translate(var(--gacha-piece-x),var(--gacha-piece-y)) rotate(var(--gacha-piece-rotate)) scale(1)}}@keyframes nn-gacha-icon{0%{opacity:0;transform:scale(.4)}45%{opacity:1;transform:scale(1.12)}65%{transform:scale(.96)}82%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes nn-gacha-halo{0%{opacity:0;transform:scale(.92)}35%{opacity:.5}to{opacity:0;transform:scale(1.24)}}@keyframes nn-gacha-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes nn-gacha-fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.gacha-reveal--playing .gacha-reveal__capsule,.gacha-reveal--playing .gacha-reveal__rays,.gacha-reveal--playing .gacha-reveal__halo,.gacha-reveal--playing .gacha-reveal__confetti{display:none}.gacha-reveal__icon,.gacha-reveal__title,.gacha-reveal__lead,.gacha-reveal--playing .gacha-reveal__icon,.gacha-reveal--playing .gacha-reveal__title,.gacha-reveal--playing .gacha-reveal__lead{animation:nn-gacha-fade .26s ease both}}
