/*
 * FlashFile Design2 icon subset.
 * Font Awesome Pro 7.1.0 — licensed operator-supplied webfonts.
 * Classic Solid + Classic Regular only; no JS runtime or external requests.
 */
@font-face{font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:900;font-display:block;src:url("../webfonts/fa-solid-900.woff2") format("woff2")}
@font-face{font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:400;font-display:block;src:url("../webfonts/fa-regular-400.woff2") format("woff2")}

.ff-icon{--ff-icon:"";width:1.25em;display:inline-block;flex:0 0 auto;font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:900;font-variant:normal;line-height:1;text-align:center;text-rendering:auto;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.ff-icon::before{content:var(--ff-icon)}
.ff-icon--regular{font-weight:400}
.ff-icon--crown{--ff-icon:"\f521"}.ff-icon--handshake{--ff-icon:"\f2b5"}.ff-icon--bullhorn{--ff-icon:"\f0a1"}.ff-icon--life-ring{--ff-icon:"\f1cd"}.ff-icon--login{--ff-icon:"\f2f6"}.ff-icon--register{--ff-icon:"\f234"}
.ff-icon--folder-open{--ff-icon:"\f07c"}.ff-icon--file{--ff-icon:"\f15c"}.ff-icon--key{--ff-icon:"\f084"}.ff-icon--upload-cloud{--ff-icon:"\f0ee"}.ff-icon--wallet{--ff-icon:"\f555"}.ff-icon--chart-line{--ff-icon:"\f201"}.ff-icon--ranking-star{--ff-icon:"\e561"}.ff-icon--gem{--ff-icon:"\f3a5"}.ff-icon--badge-check{--ff-icon:"\f336"}.ff-icon--gear{--ff-icon:"\f013"}.ff-icon--question{--ff-icon:"\f059"}.ff-icon--link{--ff-icon:"\f0c1"}.ff-icon--shield{--ff-icon:"\f3ed"}.ff-icon--scale{--ff-icon:"\f24e"}.ff-icon--contract{--ff-icon:"\f56c"}.ff-icon--privacy{--ff-icon:"\f505"}
.ff-icon--upload{--ff-icon:"\e09a"}.ff-icon--download{--ff-icon:"\f33d"}.ff-icon--file-export{--ff-icon:"\f56e"}.ff-icon--copy{--ff-icon:"\f0c5"}.ff-icon--save{--ff-icon:"\f0c7"}.ff-icon--edit{--ff-icon:"\f304"}.ff-icon--delete{--ff-icon:"\f2ed"}.ff-icon--restore{--ff-icon:"\f2ea"}.ff-icon--search{--ff-icon:"\f002"}.ff-icon--eye{--ff-icon:"\f06e"}.ff-icon--eye-slash{--ff-icon:"\f070"}.ff-icon--external{--ff-icon:"\f08e"}.ff-icon--folder-plus{--ff-icon:"\f65e"}.ff-icon--filter{--ff-icon:"\f0b0"}.ff-icon--chevron{--ff-icon:"\f078"}
.ff-icon--success{--ff-icon:"\f058"}.ff-icon--info{--ff-icon:"\f05a"}.ff-icon--warning{--ff-icon:"\f071"}.ff-icon--danger{--ff-icon:"\f06a"}.ff-icon--pending{--ff-icon:"\f017"}.ff-icon--locked{--ff-icon:"\f023"}.ff-icon--unlock{--ff-icon:"\f09c"}

/* Public navigation: icons improve scanning without changing the 4rem shell. */
.ff-public-nav-link,.ff-public-actions a{gap:.42rem}
.ff-public-nav-link .ff-icon{color:var(--ff-brand-primary);font-size:.78rem}
.ff-public-actions .ff-icon{font-size:.76rem}
.ff-user-chip .ff-icon{color:var(--ff-brand-primary);font-size:.76rem}

/* User-app navigation: a fixed icon rail at every hierarchy level. */
.ff-user-sidebar .ff-icon{width:1.2rem;color:var(--ff-text-muted);font-size:.82rem}
.ff-user-sidebar a:hover .ff-icon,.ff-user-sidebar a[aria-current="page"] .ff-icon{color:currentColor}
.ff-side-uploader summary .ff-icon:first-child{color:var(--ff-brand-primary)}
.ff-side-chevron.ff-icon{width:auto;font-size:.66rem;transition:transform var(--ff-motion-fast)}
.ff-user-sidebar .ff-side-children a{display:grid;grid-template-columns:1.1rem minmax(0,1fr);gap:.55rem}
.ff-user-sidebar .ff-side-children .ff-icon{width:1.1rem;font-size:.7rem}

/* Shared action alignment. */
.ff-btn .ff-icon,.ff-info-primary .ff-icon,.ff-antidebrid-copy .ff-icon{font-size:.88em}
.ff-search-field>.ff-icon[aria-hidden]{position:absolute;z-index:1;left:.7rem;top:50%;transform:translateY(-50%);color:var(--ff-text-muted);font-size:.78rem}
.ff-context-notice>.ff-icon,.ff-policy-notice>.ff-icon,.ff-expiry-help>.ff-icon{margin-top:.08rem}
.ff-antidebrid-danger-icon .ff-icon{width:auto}

/* Shared status surfaces; pseudo-icons are decorative and do not alter copy. */
.ff-core-success,.ff-auth-status,.ff-plan-notice,.ff-core-notice,.ff-info-alert{position:relative;padding-left:2.35rem!important}
.ff-core-success::before,.ff-auth-status::before,.ff-plan-notice::before,.ff-core-notice::before,.ff-info-alert::before{position:absolute;top:.93rem;left:.9rem;font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:900;line-height:1;font-synthesis:none}
.ff-core-success::before{content:"\f058";color:var(--ff-success)}
.ff-auth-status-error::before,.ff-info-alert::before{content:"\f06a";color:var(--ff-danger)}
.ff-auth-status-info::before,.ff-plan-notice--neutral::before{content:"\f05a";color:var(--ff-info)}
.ff-plan-notice--reserve::before{content:"\f05a";color:var(--ff-brand-accent)}
.ff-plan-notice--exhausted::before,.ff-core-notice::before{content:"\f071";color:var(--ff-warning)}

@media(max-width:31rem){.ff-public-nav-link .ff-icon{font-size:.82rem}.ff-public-actions a{gap:.3rem}.ff-user-sidebar .ff-icon{font-size:.8rem}}
