.ap-banner{position:fixed;z-index:75;bottom:24px;right:24px;display:flex;gap:16px;width:min(540px,calc(100% - 48px));padding:23px;border:1px solid var(--line);border-radius:20px;background:var(--white);color:var(--ink);box-shadow:0 15px 60px #0002;animation:ap-arrive .35s ease-out}.ap-mark{display:grid;place-items:center;flex:0 0 36px;height:36px;background:var(--soft);border-radius:12px;color:var(--accent)}.ap-mark svg{width:20px;height:20px}.ap-banner strong{font-size:16px;line-height:1.4}.ap-banner p{font-size:12px;line-height:1.7;color:var(--muted);margin:7px 0 15px}.ap-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ap-actions .button{min-height:38px}.ap-actions .plain-button{font-size:11px;color:var(--muted);text-decoration:underline}.ap-dialog{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:28px}.ap-dialog h2{margin:8px 0}.ap-dialog>p,.ap-description{font-size:12px;line-height:1.7;color:var(--muted)}.ap-choice{display:flex;gap:12px;padding:15px;margin:9px 0;border:1px solid var(--line);border-radius:13px;cursor:pointer;transition:background .2s,border-color .2s}.ap-choice:has(input:checked){border-color:var(--accent);background:var(--soft)}.ap-choice input{margin:3px 0 0;accent-color:var(--accent)}.ap-choice strong{font-size:13px}.ap-choice small{display:block;margin-top:5px;font-size:11px;line-height:1.65;color:var(--muted)}.ap-dialog .ap-actions{justify-content:space-between;margin-top:20px}.ap-signal{padding:12px;border-radius:10px;background:var(--soft)}.ap-error{color:#d14e4e!important;font-size:12px;line-height:1.6}.ap-saved{position:fixed;z-index:130;bottom:24px;left:50%;transform:translateX(-50%);padding:13px 20px;background:var(--ink);color:var(--white);font-size:12px;border-radius:50px;box-shadow:0 7px 28px #0003}.ap-banner[hidden],.ap-saved[hidden]{display:none}@keyframes ap-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(max-width:540px){.ap-banner{right:12px;bottom:12px;width:calc(100% - 24px);padding:17px;gap:10px}.ap-banner .ap-mark{display:none}.ap-dialog{padding:20px}.ap-banner .ap-actions{gap:8px}.ap-banner .button{font-size:10px;padding:9px 11px}}@media(prefers-reduced-motion:reduce){.ap-banner{animation:none}.ap-choice{transition:none}}
