.nyatu-modal{z-index:20000;width:min(440px,calc(100vw - 32px));max-width:100%;max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid var(--line);border-radius:19px;background:var(--surface);color:var(--text);box-shadow:0 22px 70px rgba(20,18,45,.28)}
.nyatu-modal::backdrop{background:rgba(20,18,38,.48);backdrop-filter:blur(4px)}
.nyatu-modal__heading{display:flex;align-items:center;margin-bottom:14px}
.nyatu-modal__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--brand-gradient-soft);color:var(--brand);font-size:17px}
.nyatu-modal__icon i{background-image:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.nyatu-modal--notice .nyatu-modal__icon{background:#fff2df;color:#c27a1b}
.nyatu-modal--danger .nyatu-modal__icon{background:#fff0f1;color:#c44754}
.nyatu-modal--notice .nyatu-modal__icon i,.nyatu-modal--danger .nyatu-modal__icon i{background:none;color:currentColor;-webkit-text-fill-color:currentColor}
.nyatu-modal__title{margin:0;font-size:19px;letter-spacing:-.2px}
.nyatu-modal__message{margin:10px 0 20px;color:var(--muted);font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.nyatu-modal__actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}
.nyatu-modal__button{display:inline-flex;align-items:center;justify-content:center;min-width:74px;height:42px;margin:0;padding:0 16px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font:inherit;font-size:13px;font-weight:650;white-space:nowrap;cursor:pointer;transition:background .16s,border-color .16s,transform .16s}
.nyatu-modal__button:hover{transform:translateY(-1px)}
.nyatu-modal__button--primary{border-color:transparent;background:var(--brand-gradient);color:#fff;text-shadow:0 1px 3px rgba(38,33,76,.28);box-shadow:0 7px 18px rgba(120,160,255,.22)}
.nyatu-modal__button--primary:hover{filter:brightness(1.05)}
.nyatu-modal__button--primary.is-danger{border-color:#c44754;background:#c44754;box-shadow:0 7px 18px rgba(196,71,84,.18)}
.nyatu-modal__button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 38%,transparent);outline-offset:2px}
.nyatu-modal__form{display:grid;gap:0}
.nyatu-modal__input{display:block;width:100%;min-width:0;min-height:44px;padding:10px 13px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft);color:var(--text);font:inherit;font-size:14px;resize:vertical;appearance:none}
.nyatu-modal__input:focus{outline:2px solid color-mix(in srgb,var(--brand) 22%,transparent);border-color:var(--brand)}
.nyatu-modal__input::placeholder{color:var(--muted)}
.character-rename-action{display:inline-flex;margin:0}
.character-rename-action .character-rename-trigger{display:grid;place-items:center;width:25px;height:25px;margin:0;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:11px;cursor:pointer}
.character-rename-action .character-rename-trigger:hover{border-color:var(--brand);color:var(--brand)}
.topbar-character-create{display:flex;margin:0}
.topbar-character-create .character-button.primary{margin:0}
@media(max-width:520px){.nyatu-modal{padding:19px}.nyatu-modal__actions{gap:8px}}
.nyatu-toast-stack{position:fixed;z-index:20001;top:max(48px,calc(env(safe-area-inset-top) + 48px));left:50%;display:grid;gap:10px;width:min(720px,calc(100vw - 32px));transform:translateX(-50%);pointer-events:none}
.nyatu-toast{display:flex;align-items:center;gap:13px;min-height:72px;padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);box-shadow:0 14px 42px rgba(25,22,55,.17);pointer-events:auto;animation:nyatu-toast-enter .2s ease both}
.nyatu-toast__icon{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border-radius:12px;background:#fff2df;color:#c27a1b;font-size:16px}
.nyatu-toast--success .nyatu-toast__icon{background:#e9f8f1;color:#27815d}
.nyatu-toast--error .nyatu-toast__icon{background:#fff0f1;color:#c44754}
.nyatu-toast__content{display:grid;flex:1 1 auto;gap:2px;min-width:0}
.nyatu-toast__title{font-size:14px;font-weight:700;line-height:1.4}
.nyatu-toast__message{color:var(--muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.nyatu-toast__confirm{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:68px;height:36px;padding:0 13px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--text);font:inherit;font-size:12px;font-weight:650;cursor:pointer;transition:background .16s,border-color .16s,transform .16s}
.nyatu-toast__confirm:hover{border-color:var(--brand);background:var(--brand-soft);transform:translateY(-1px)}
.nyatu-toast.is-dismissing{animation:nyatu-toast-exit .18s ease both}
@keyframes nyatu-toast-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@keyframes nyatu-toast-exit{to{opacity:0;transform:translateY(-6px)}}
@media(max-width:520px){.nyatu-toast{gap:9px;padding:10px;border-radius:13px}.nyatu-toast__icon{width:34px;height:34px}.nyatu-toast__title{font-size:13px}.nyatu-toast__message{font-size:12px}.nyatu-toast__confirm{min-width:58px;padding:0 10px}}
