/* Operation-scoped visual choreography; no global click-driven animation. */
:root{--cm-fast:140ms;--cm-control:220ms;--cm-object:320ms;--cm-ease:cubic-bezier(.22,1,.36,1)}
.corner-comfort [data-corner-motion-state]{position:relative;isolation:isolate;overflow:visible;transition:transform var(--cm-control) var(--cm-ease),filter var(--cm-control) ease,background-color var(--cm-control) ease!important}
.corner-comfort [data-corner-motion-state]:disabled{opacity:1!important;cursor:progress}
.corner-comfort [data-corner-motion-state="pending"]{transform:scale(.985)}
.corner-comfort [data-corner-motion-state="processing"]{filter:saturate(.85)}
.corner-comfort [data-corner-motion-state="success"]{transform:translateY(-2px) scale(1.025);box-shadow:0 6px 18px #2e76602b!important}
.corner-comfort [data-corner-motion-state="error"]{outline:2px solid #b93843;outline-offset:2px}
.corner-comfort [data-corner-motion-state="success"][data-corner-motion-kind="archive"]{transform:translateX(12px) scale(.95);opacity:.68}
.corner-comfort [data-corner-motion-state="success"][data-corner-motion-kind="restore"]{transform:translateY(-3px) scale(1.045)}
.corner-comfort [data-corner-motion-state="success"][data-corner-motion-kind="clock"]{background:#f2edff!important;color:#43327d!important}
.corner-comfort [data-corner-motion-state="success"][data-corner-motion-kind="paper"]{background:#e6f5ed!important;color:#1c7043!important}
.corner-comfort [data-corner-motion-state="success"][data-corner-motion-kind="upload"]{background:#e7f2ff!important;color:#165c9c!important}
.corner-comfort [data-corner-motion-state="success"][data-corner-motion-kind="check"]{background:#e4f5ec!important;color:#196d3f!important}
.corner-comfort [data-corner-motion-state="success"][data-corner-motion-kind="ribbon"]{background:#fff1da!important;color:#7b5224!important}
.corner-comfort .corner-motion-visual{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:7px;padding-inline:7px;box-sizing:border-box;z-index:1;opacity:1;pointer-events:none;color:var(--corner-ink,#24201e);font:700 .73rem/1.25 system-ui,sans-serif;white-space:nowrap}
.corner-comfort .corner-motion-visual svg{width:22px;height:22px;flex:none;overflow:visible;stroke:currentColor}
.corner-comfort .corner-motion-copy{max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis}
.corner-comfort [data-corner-motion-state="pending"],.corner-comfort [data-corner-motion-state="processing"],.corner-comfort [data-corner-motion-state="success"]{color:transparent!important}
.corner-comfort [data-corner-motion-state]>.corner-motion-visual{color:#315c60!important}
.corner-comfort [data-corner-motion-state="success"]>.corner-motion-visual{color:#167347!important}
.corner-comfort [data-corner-motion-state="error"]>.corner-motion-visual{color:#ae2d3b!important}
.corner-comfort [data-corner-motion-state="pending"] .corner-motion-visual svg{animation:cm-breathe .85s ease-in-out infinite alternate}
.corner-comfort [data-corner-motion-kind="clock"][data-corner-motion-state="pending"] .cm-hand{transform-origin:12px 12px;animation:cm-clock 1.15s linear infinite}
.corner-comfort [data-corner-motion-kind="upload"][data-corner-motion-state="pending"] .cm-lift{animation:cm-lift .75s var(--cm-ease) infinite alternate}
.corner-comfort [data-corner-motion-kind="paper"][data-corner-motion-state="pending"] .cm-fold{transform-origin:14px 6px;animation:cm-paper .7s ease-in-out infinite alternate}
.corner-comfort [data-corner-motion-state="success"] .cm-mark{stroke-dasharray:30;stroke-dashoffset:30;animation:cm-ink 260ms var(--cm-ease) forwards}
.corner-comfort [data-corner-motion-object="success"]{animation:cm-card-in var(--cm-object) var(--cm-ease) both}
.corner-comfort [data-corner-motion-object="success"][data-corner-motion-visual="exit"]{animation:cm-card-out var(--cm-object) var(--cm-ease) both}
@keyframes cm-ink{to{stroke-dashoffset:0}}
@keyframes cm-breathe{to{opacity:.52;transform:scale(.93)}}
@keyframes cm-clock{to{transform:rotate(360deg)}}
@keyframes cm-lift{to{transform:translateY(-4px)}}
@keyframes cm-paper{to{transform:rotate(-22deg)}}
@keyframes cm-card-out{to{opacity:.25;transform:translateX(14px) scale(.94)}}
@keyframes cm-card-in{from{opacity:.65;transform:translateY(7px) scale(.97)}to{opacity:1;transform:none}}
.corner-comfort .corner-motion-announcer{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;white-space:nowrap!important;clip-path:inset(50%)!important;border:0!important}
@media(max-width:767px){.corner-comfort .admin-comment [data-corner-motion-state] .corner-motion-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.corner-comfort .admin-comment [data-corner-motion-state] .corner-motion-visual svg{width:23px;height:23px}}
@media(prefers-reduced-motion:reduce){.corner-comfort [data-corner-motion-state],.corner-comfort [data-corner-motion-object]{animation:none!important;transition:none!important;transform:none!important;filter:none!important}.corner-comfort [data-corner-motion-state] svg,.corner-comfort [data-corner-motion-state] .cm-fold,.corner-comfort [data-corner-motion-state] .cm-hand,.corner-comfort [data-corner-motion-state] .cm-lift{animation:none!important}.corner-comfort [data-corner-motion-state="success"] .cm-mark{stroke-dashoffset:0;animation:none!important}}

/* Portrait arrival is a confirmed replacement, after avatar API returns 2xx. */
.corner-comfort .account-avatar-visual img{animation:cm-avatar-arrive 310ms var(--cm-ease) both}
@keyframes cm-avatar-arrive{from{opacity:.25;transform:scale(.93)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.corner-comfort .account-avatar-visual img{animation:none!important}}

/* Owner-only Motion Lab previews; live workflows never use synthetic success. */
.corner-comfort .corner-motion-lab{margin-top:26px}
.corner-comfort .corner-motion-lab>header{display:block!important}
.corner-comfort .corner-motion-lab>header p{color:var(--corner-subtext,#6f645e);max-width:60ch}
.corner-comfort .corner-motion-lab-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:11px;margin-top:18px}
.corner-comfort .corner-motion-lab-grid button{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:60px;padding:13px 11px;border:1px solid #ded6cc;border-radius:14px;background:#fffefa;color:#252220;font:700 .82rem/1.2 system-ui,sans-serif;cursor:pointer}
.corner-comfort .corner-motion-lab-grid button:focus-visible{outline:3px solid #365ca7;outline-offset:2px}
.corner-comfort .corner-motion-lab-status{font-size:.78rem;line-height:1.5;margin:12px 0 0;color:var(--corner-subtext,#6f645e)}
@media(max-width:400px){.corner-comfort .corner-motion-lab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Explicitly hide the original button's own text/SVG during choreography.
   Visibility (not color) avoids legacy :is(button) !important color overrides. */
.corner-comfort [data-corner-motion-state]>.corner-motion-original{
 visibility:hidden!important;pointer-events:none!important
}
.corner-comfort .corner-motion-original{display:inline-flex;align-items:center;justify-content:center;gap:6px}
