/* Lightweight local icon set: no external font/CDN dependency. */
.ph, .ph-fill {
    display: inline-block;
    width: 1em;
    height: 1em;
    line-height: 1;
    text-align: center;
    font-style: normal;
    font-weight: 700;
    font-family: system-ui, -apple-system, "Segoe UI Symbol", sans-serif;
    vertical-align: -0.08em;
}
.ph::before, .ph-fill::before { content: "•"; }
.ph-paper-plane-tilt::before { content: "➤"; }
.ph-warning-circle::before { content: "⚠"; }
.ph-warning::before { content: "⚠"; }
.ph-user::before { content: "●"; }
.ph-lock::before { content: "▣"; }
.ph-sign-in::before { content: "↪"; }
.ph-sign-out::before { content: "↩"; }
.ph-at::before { content: "@"; }
.ph-users-three::before { content: "♟"; }
.ph-arrows-clockwise::before { content: "↻"; }
.ph-list::before { content: "☰"; }
.ph-x::before { content: "×"; }
.ph-magnifying-glass::before { content: "⌕"; }
.ph-key::before { content: "⌘"; }
.ph-bell-ringing::before { content: "♢"; }
.ph-arrow-left::before { content: "←"; }
.ph-copy::before { content: "⧉"; }
.ph-check::before { content: "✓"; }
.ph-check-circle::before { content: "✓"; }
.ph-envelope-simple-open::before { content: "✉"; }
.ph-plus::before { content: "+"; }
.ph-trash::before { content: "⌫"; }
.ph-spin { animation: ph-local-spin 0.8s linear infinite; }
@keyframes ph-local-spin { to { transform: rotate(360deg); } }
