.np-spinner{opacity:.8;border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;animation:.7s linear infinite np-spin;display:inline-block}@keyframes np-spin{to{transform:rotate(360deg)}}.np-loading{color:var(--text-secondary);font-size:var(--text-sm-size);align-items:center;gap:10px;padding:24px;display:flex}.np-toasts{z-index:1100;flex-direction:column;gap:8px;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:24px;right:24px}.np-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;display:flex}.np-empty__icon{color:var(--navy-300);margin-bottom:4px}.np-empty p{max-width:420px}.np-error-note{background:var(--danger-50);border:1px solid var(--danger-100);color:var(--danger-700);border-radius:var(--radius-sm);font-size:var(--text-sm-size);line-height:var(--text-sm-lh);padding:10px 12px}.np-info-note{background:var(--success-50);border:1px solid var(--success-100);color:var(--success-700);border-radius:var(--radius-sm);font-size:var(--text-sm-size);line-height:var(--text-sm-lh);padding:10px 12px}.np-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.np-page-header__main{flex-direction:column;gap:8px;min-width:0;display:flex}.np-page-header__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.np-page-title{font-size:var(--text-h2-size);line-height:var(--text-h2-lh)}.np-mono-crumbs{font-family:var(--font-mono);font-size:12px}.np-stack{flex-direction:column;gap:16px;display:flex}.np-row{align-items:center;gap:8px;display:flex}.np-spacer{flex:1}.np-pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.np-pager__range{color:var(--text-secondary)}.np-pager__pages{align-items:center;gap:4px;display:flex}.np-pager__btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);min-width:32px;height:32px;color:var(--navy-900);font-family:var(--font-mono);cursor:pointer;place-items:center;padding:0 8px;font-size:13px;display:inline-grid}.np-pager__btn:hover:not(:disabled){border-color:var(--navy-900)}.np-pager__btn[aria-current=page]{background:var(--navy-900);border-color:var(--navy-900);color:var(--hueso)}.np-pager__btn:disabled{opacity:.4;cursor:default}.np-pager__gap{color:var(--text-muted);padding:0 2px}.np-notice{--notice-bg:var(--warning-50);--notice-border:var(--warning-100);--notice-accent:var(--warning-700);--notice-chip:var(--warning-100);background:var(--notice-bg);border:1px solid var(--notice-border);border-radius:var(--radius-sm);font-size:var(--text-sm-size);line-height:var(--text-sm-lh);color:var(--text-primary);align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.np-notice--danger{--notice-bg:var(--danger-50);--notice-border:var(--danger-100);--notice-accent:var(--danger-700);--notice-chip:var(--danger-100)}.np-notice--neutral{--notice-bg:var(--navy-50);--notice-border:var(--navy-100);--notice-accent:var(--navy-800);--notice-chip:var(--navy-100)}.np-notice__icon{border-radius:var(--radius-sm);background:var(--notice-chip);width:32px;height:32px;color:var(--notice-accent);flex:none;justify-content:center;align-items:center;display:inline-flex}.np-notice__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.np-notice__title{font-size:var(--text-body-size);line-height:22px;font-weight:var(--weight-semibold);color:var(--notice-accent);margin:0}.np-notice__body{color:var(--text-primary);margin:0}.np-notice__details{border-top:1px solid var(--notice-border);flex-wrap:wrap;gap:4px 24px;margin:8px 0 0;padding-top:8px;display:flex}.np-notice__details>div{gap:6px;min-width:0;display:flex}.np-notice__details dt{color:var(--text-secondary)}.np-notice__details dd{color:var(--text-strong);font-weight:var(--weight-medium);overflow-wrap:anywhere;margin:0}.np-notice__hint{color:var(--text-secondary);margin:6px 0 0}.np-notice__action{color:var(--text-secondary);flex:none;align-self:center}.np-notice__action a{color:var(--text-strong);font-weight:var(--weight-medium)}@media (width<=640px){.np-notice{flex-wrap:wrap}.np-notice__action{flex-basis:100%;align-self:auto;padding-left:46px}}
