/* VERSÃO DO ARQUIVO: 1.0.5 - Cursor de carregamento no body enquanto o overlay estiver ativo */
@property --loading-ring-arc-mid{syntax:'<angle>';inherits:false;initial-value:55deg}
@property --loading-ring-arc-end{syntax:'<angle>';inherits:false;initial-value:110deg}
:root{
--loading-overlay-bg:rgba(5,15,35,0.72);
--loading-panel-gap:18px;
--loading-brand-size:88px;
--loading-icon-size:52px;
--loading-ring-track:rgba(255,255,255,0.14);
--loading-ring-gradient-start:#0072bc;
--loading-ring-gradient-mid:#008f7a;
--loading-ring-gradient-end:#00a651;
--loading-icon-color:#fff;
--loading-icon-glow:rgba(255,255,255,0.18);
--loading-icon-offset-x:1px;
--loading-icon-offset-y:1px;
--loading-message-color:#f8fafc;
--loading-submessage-color:rgba(248,250,252,0.78);
--loading-cancel-bg:rgba(255,255,255,0.08);
--loading-cancel-bg-hover:rgba(255,255,255,0.14);
--loading-cancel-border:rgba(255,255,255,0.18);
--loading-cancel-text:#f8fafc;
--loading-cancel-shadow:0 10px 24px rgba(2,8,20,0.22);
--loading-focus-ring:rgba(90,200,250,0.42);
--loading-variant-info-gradient-start:#0066aa;
--loading-variant-info-gradient-mid:#0088c8;
--loading-variant-info-gradient-end:#00a8e8;
--loading-variant-success-gradient-start:#007a52;
--loading-variant-success-gradient-mid:#00945f;
--loading-variant-success-gradient-end:#00b36b
}
[data-theme="dark"]{
--loading-overlay-bg:rgba(2,6,23,0.82);
--loading-ring-track:rgba(255,255,255,0.1);
--loading-ring-gradient-start:#5ac8fa;
--loading-ring-gradient-mid:#45d4a8;
--loading-ring-gradient-end:#4cd964;
--loading-icon-glow:rgba(255,255,255,0.12);
--loading-message-color:#f8fafc;
--loading-submessage-color:rgba(229,231,235,0.76);
--loading-cancel-bg:rgba(255,255,255,0.06);
--loading-cancel-bg-hover:rgba(255,255,255,0.12);
--loading-cancel-border:rgba(255,255,255,0.14);
--loading-cancel-text:#f8fafc;
--loading-cancel-shadow:0 12px 28px rgba(0,0,0,0.34);
--loading-focus-ring:rgba(90,200,250,0.5);
--loading-variant-info-gradient-start:#64d2ff;
--loading-variant-info-gradient-mid:#7ad8ff;
--loading-variant-info-gradient-end:#90deff;
--loading-variant-success-gradient-start:#3ecf8e;
--loading-variant-success-gradient-mid:#52d99a;
--loading-variant-success-gradient-end:#66e4a6
}
body.fj-loading-cursor-wait{cursor:wait}
body.fj-loading-cursor-wait .fj-loading-cancel{cursor:pointer}
.fj-loading-overlay,.fj-loading-overlay *{box-sizing:border-box}
.fj-loading-overlay{position:fixed;inset:0;z-index:var(--fj-z-loading,10030);display:flex;align-items:center;justify-content:center;padding:24px;background:var(--loading-overlay-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.fj-loading-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.fj-loading-overlay.is-closing{opacity:0;visibility:hidden;pointer-events:none}
.fj-loading-overlay[data-fj-loading-above-all="true"]{z-index:var(--fj-z-loading-above-all,10050)}
.fj-loading-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--loading-panel-gap);width:min(100%,420px);text-align:center}
.fj-loading-brand{position:relative;display:grid;place-items:center;width:var(--loading-brand-size);height:var(--loading-brand-size);isolation:isolate}
.fj-loading-ring{--loading-ring-arc-mid:55deg;--loading-ring-arc-end:110deg;position:absolute;inset:0;width:100%;height:100%;margin:0;border:none;border-radius:999px;background:conic-gradient(from 0deg,var(--loading-ring-gradient-start) 0deg,var(--loading-ring-gradient-mid) var(--loading-ring-arc-mid),var(--loading-ring-gradient-end) var(--loading-ring-arc-end),var(--loading-ring-track) var(--loading-ring-arc-end),var(--loading-ring-track) 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2.5px));animation:fj-loading-ring-spin 1.35s linear infinite,fj-loading-ring-arc-pulse 1.8s ease-in-out infinite}
.fj-loading-icon{position:absolute;top:50%;left:50%;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:var(--loading-icon-size);height:var(--loading-icon-size);color:var(--loading-icon-color);filter:drop-shadow(0 8px 18px var(--loading-icon-glow));transform:translate(calc(-50% + var(--loading-icon-offset-x)),calc(-50% + var(--loading-icon-offset-y)));animation:fj-loading-icon-pulse 1.8s ease-in-out infinite}
.fj-loading-icon svg{display:block;width:100%;height:100%;fill:currentColor}
.fj-loading-message,.fj-loading-submessage{margin:0;max-width:34ch;line-height:1.45}
.fj-loading-message{font-size:1.05rem;font-weight:700;color:var(--loading-message-color)}
.fj-loading-submessage{font-size:.92rem;font-weight:500;color:var(--loading-submessage-color)}
.fj-loading-message:empty,.fj-loading-submessage:empty{display:none}
.fj-loading-actions{display:none;align-items:center;justify-content:center;margin-top:4px}
.fj-loading-actions.is-visible{display:flex}
.fj-loading-cancel{min-height:44px;padding:0 18px;border:1px solid var(--loading-cancel-border);border-radius:999px;background:var(--loading-cancel-bg);color:var(--loading-cancel-text);font:inherit;font-size:.92rem;font-weight:700;cursor:pointer;box-shadow:var(--loading-cancel-shadow);transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.fj-loading-cancel:hover{background:var(--loading-cancel-bg-hover)}
.fj-loading-cancel:focus{outline:none;box-shadow:var(--loading-cancel-shadow),0 0 0 3px var(--loading-focus-ring)}
.fj-loading-cancel:focus:not(:focus-visible){box-shadow:var(--loading-cancel-shadow)}
.fj-loading-cancel:focus-visible{box-shadow:var(--loading-cancel-shadow),0 0 0 3px var(--loading-focus-ring)}
.fj-loading-overlay[data-fj-loading-variant="info"]{--loading-ring-gradient-start:var(--loading-variant-info-gradient-start);--loading-ring-gradient-mid:var(--loading-variant-info-gradient-mid);--loading-ring-gradient-end:var(--loading-variant-info-gradient-end)}
.fj-loading-overlay[data-fj-loading-variant="success"]{--loading-ring-gradient-start:var(--loading-variant-success-gradient-start);--loading-ring-gradient-mid:var(--loading-variant-success-gradient-mid);--loading-ring-gradient-end:var(--loading-variant-success-gradient-end)}
@keyframes fj-loading-ring-spin{
0%{transform:rotate(0deg)}
100%{transform:rotate(360deg)}
}
@keyframes fj-loading-ring-arc-pulse{
0%,100%{--loading-ring-arc-mid:38deg;--loading-ring-arc-end:75deg}
50%{--loading-ring-arc-mid:68deg;--loading-ring-arc-end:135deg}
}
@keyframes fj-loading-icon-pulse{
0%,100%{transform:translate(calc(-50% + var(--loading-icon-offset-x)),calc(-50% + var(--loading-icon-offset-y))) scale(1);opacity:.92}
50%{transform:translate(calc(-50% + var(--loading-icon-offset-x)),calc(-50% + var(--loading-icon-offset-y))) scale(1.06);opacity:1}
}
@media (max-width:640px){
.fj-loading-overlay{padding:18px}
.fj-loading-brand{width:76px;height:76px}
.fj-loading-icon{width:46px;height:46px}
.fj-loading-message{font-size:1rem}
.fj-loading-submessage{font-size:.88rem}
}
@media (prefers-reduced-motion:reduce){
.fj-loading-overlay,.fj-loading-cancel{transition:none}
.fj-loading-ring,.fj-loading-icon{animation:none}
.fj-loading-icon{opacity:1;transform:translate(calc(-50% + var(--loading-icon-offset-x)),calc(-50% + var(--loading-icon-offset-y)))}
.fj-loading-cancel:hover{transform:none}
}
