@layer components{.dialog-backdrop{background:var(--modal-backdrop);z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--surface-panel);border:1px solid var(--border-warm);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:360px;max-height:calc(100vh - (2 * var(--space-4)));flex-direction:column;width:90%;max-width:520px;display:flex;overflow:hidden}.dialog--wide{max-width:64rem}.dialog-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-soft);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.dialog-title{font-family:var(--font-display);font-size:var(--text-base);color:var(--text)}.dialog-close{color:var(--text-faded);cursor:pointer;font-size:var(--text-base);padding:var(--space-1);border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;line-height:1}.dialog-close:hover{color:var(--text);filter:none}.dialog-body{padding:var(--space-4);color:var(--text);font-family:var(--font-ui);font-size:var(--text-base);flex:1;min-height:0;line-height:1.6;overflow-y:auto}.dialog-body p{margin:0;line-height:1.6}.dialog-delete-details{margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);background:var(--color-warning-bg);color:var(--text);font-size:var(--text-sm)}.dialog-delete-details p+p{margin-top:var(--space-2)}.dialog-footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-soft);flex-shrink:0;display:flex}.dialog-cascade-warning{gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3);background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-md);align-items:flex-start;display:flex}.dialog-cascade-icon{width:var(--text-lg);height:var(--text-lg);color:var(--color-warning);margin-top:var(--space-1);flex-shrink:0}.dialog-cascade-body{color:var(--text);font-size:var(--text-base)}.dialog-cascade-hint{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--text-sm)}@media (width<=640px){.dialog-backdrop{padding:var(--space-2)}.dialog{width:100%;min-width:0;max-height:calc(100vh - (2 * var(--space-2)))}}}
