/* Shared status surfaces; all colors come from the approved CrossVerse tokens. */
.cv-feedback-stack{position:fixed;inset-block-start:max(16px,env(safe-area-inset-top));inset-inline:16px;inline-size:min(520px,calc(100% - 32px));margin-inline:auto;z-index:10000;display:grid;gap:12px;max-block-size:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;pointer-events:none;text-align:start;font-family:var(--cv-font)}
.cv-feedback-stack:empty{display:none}
.account-page .form-error:empty,.account-page .account-alert:empty,.portal-status:empty{display:none}
.cv-feedback-toast{--feedback-color:var(--cv-info);display:grid;grid-template-columns:36px minmax(0,1fr) 44px;gap:12px;align-items:start;padding:16px 12px 16px 18px;background:var(--cv-surface-raised);border:1px solid var(--cv-line);border-inline-start:3px solid var(--feedback-color);border-radius:var(--cv-radius-lg);box-shadow:var(--cv-shadow);pointer-events:auto;color:var(--cv-text);animation:cv-feedback-enter 180ms var(--cv-ease)}
.cv-feedback-toast[data-type=success]{--feedback-color:var(--cv-accent)}
.cv-feedback-toast[data-type=error]{--feedback-color:var(--cv-danger)}
.cv-feedback-toast[data-type=warning]{--feedback-color:var(--cv-warning)}
.cv-feedback-content{min-inline-size:0;padding-block:4px}
.cv-feedback-content strong{font-size:16px;font-weight:600;color:var(--feedback-color)}
.cv-feedback-content p{margin:5px 0 0;font-size:16px;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere;max-block-size:35dvh;overflow:auto;user-select:text;color:var(--cv-text)}
.cv-feedback-close{display:grid;place-items:center;inline-size:44px;block-size:44px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--cv-radius-md);color:var(--cv-muted);font:28px/1 Arial;cursor:pointer}
.cv-feedback-close:hover{background:var(--cv-surface);border-color:var(--cv-line);color:var(--cv-text)}
.cv-feedback-close:focus-visible{outline:2px solid var(--cv-accent);outline-offset:2px}
.cv-feedback-timer{position:relative;display:block;inline-size:36px;block-size:36px;margin-block-start:6px;color:var(--feedback-color)}
.cv-feedback-timer svg{position:absolute;inset:0;inline-size:100%;block-size:100%;transform:rotate(-90deg);fill:none;stroke-width:3.5}
.cv-feedback-track{stroke:var(--cv-muted);stroke-opacity:.5}
.cv-feedback-progress{stroke:currentColor;stroke-linecap:round;stroke-dasharray:10}
.cv-feedback-modal{inline-size:min(480px,calc(100% - 32px));max-block-size:calc(100dvh - 32px);padding:32px;margin:auto;border:1px solid var(--cv-line);border-radius:var(--cv-radius-lg);background:var(--cv-surface);color:var(--cv-text);box-shadow:var(--cv-shadow);text-align:start;overflow:auto;font:18px/1.8 var(--cv-font)}
.cv-feedback-modal::backdrop{background:#030712b8;backdrop-filter:blur(5px)}
.cv-feedback-modal>.cv-feedback-close{position:absolute;inset-inline-end:12px;inset-block-start:12px}
.cv-feedback-mark{display:grid;place-items:center;inline-size:48px;block-size:48px;border:1px solid var(--cv-warning);border-radius:var(--cv-radius-lg);color:var(--cv-warning);font:26px/1 Arial;margin-block-end:24px}
.cv-feedback-modal h2{font-size:26px;line-height:1.6;font-weight:600;margin:0 0 12px;padding:0}
.cv-feedback-modal>p{color:var(--cv-muted);margin:0;white-space:pre-line;overflow-wrap:anywhere;font-size:18px}
.cv-feedback-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block-start:28px}
.cv-feedback-actions .button{flex:1;min-inline-size:120px;white-space:normal}
@keyframes cv-feedback-enter{from{opacity:0;translate:0 -8px}to{opacity:1;translate:0 0}}
@media(max-width:480px){.cv-feedback-stack{inset-inline:12px;inline-size:calc(100% - 24px);gap:8px}.cv-feedback-toast{gap:8px;padding:12px 8px;grid-template-columns:32px minmax(0,1fr) 44px}.cv-feedback-timer{inline-size:32px;block-size:32px}.cv-feedback-modal{padding:26px 22px}.cv-feedback-modal h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.cv-feedback-toast{animation:none}}
