*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh}body{background:#e8e6e1;font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button,input,select,textarea{font-family:inherit}.fp{--brand: #16A34A;--brand-600: #15803D;--brand-700: #166534;--brand-50: #DCFCE7;--brand-100: #BBF7D0;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Plus Jakarta Sans", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--ink: #0B1A12;--ink-2: #475467;--ink-3: #667085;--ink-4: #98A2B3;--line: #E7E9E5;--line-soft: #F0F1EE;--surface: #FFFFFF;--surface-2: #F6F8F5;--surface-3: #EDF1EB;--danger: #DC2626;--danger-50: #FEE2E2;--warning: #D97706;--warning-50: #FEF3C7;min-height:100vh;background:var(--surface-2);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}.fp *{box-sizing:border-box}.fp h1,.fp h2,.fp h3{font-family:var(--font-display);margin:0;letter-spacing:-.025em}.fp p{margin:0}.fp a{color:inherit;text-decoration:none}.fp-top{background:var(--surface);border-bottom:1px solid var(--line);height:64px;display:flex;align-items:center}.fp-top-in{max-width:1080px;margin:0 auto;width:100%;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.fp-logo{display:flex;align-items:center;gap:10px}.fp-logo-mark{width:38px;height:38px;flex-shrink:0;display:block}.fp-logo b{font-family:var(--font-display);font-weight:900;font-size:18px;letter-spacing:-.03em}.fp-logo b sup{font-size:8px;color:var(--ink-3)}.fp-logo span{display:block;font-size:11px;color:var(--ink-3);font-weight:600;margin-top:-2px}.fp-top-help{display:flex;align-items:center;gap:18px;font-size:13.5px;color:var(--ink-2);font-weight:500}.fp-top-help a{display:inline-flex;align-items:center;gap:6px}.fp-top-help a:hover{color:var(--ink)}@media (max-width: 600px){.fp-top-help .hide-sm{display:none}}.fp-hero{background:linear-gradient(180deg,var(--surface),var(--surface-2));padding:48px 24px 0;text-align:center}.fp-hero-in{max-width:720px;margin:0 auto}.fp-badge{display:inline-flex;align-items:center;gap:7px;background:var(--brand-50);color:var(--brand-700);font-size:12.5px;font-weight:700;padding:6px 13px;border-radius:999px;margin-bottom:18px}.fp-hero h1{font-size:38px;font-weight:800;line-height:1.1}.fp-hero p{font-size:17px;color:var(--ink-2);line-height:1.6;margin-top:14px}@media (max-width: 600px){.fp-hero h1{font-size:28px}.fp-hero p{font-size:15px}}.fp-steps{display:flex;align-items:center;justify-content:center;gap:0;margin:32px auto 0;max-width:560px}.fp-step{display:flex;align-items:center;gap:10px;flex:1}.fp-step:last-child{flex:0 0 auto}.fp-step-dot{width:32px;height:32px;border-radius:50%;background:var(--surface-3);color:var(--ink-3);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0;border:2px solid transparent;transition:all .25s}.fp-step-lbl{font-size:13px;font-weight:600;color:var(--ink-3);white-space:nowrap;transition:color .25s}.fp-step-bar{flex:1;height:2px;background:var(--line);margin:0 12px;border-radius:2px;transition:background .25s}.fp-step[data-on] .fp-step-dot{background:var(--brand);color:#fff}.fp-step[data-on] .fp-step-lbl{color:var(--ink)}.fp-step[data-done] .fp-step-dot{background:var(--brand-50);color:var(--brand-600);border-color:var(--brand-100)}.fp-step[data-done] .fp-step-bar,.fp-step[data-done]+.fp-step .fp-step-bar{background:var(--brand)}@media (max-width: 600px){.fp-step-lbl{display:none}.fp-steps{max-width:220px}}.fp-main{max-width:720px;margin:0 auto;padding:36px 24px 80px}.fp-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 40px #0b1a120f;overflow:hidden}.fp-card-pad{padding:32px}@media (max-width: 600px){.fp-card-pad{padding:22px}}.fp-card-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:24px}.fp-card-head-ic{width:46px;height:46px;border-radius:13px;background:var(--brand-50);color:var(--brand-600);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fp-card-head h2{font-size:21px;font-weight:700}.fp-card-head p{font-size:14px;color:var(--ink-2);margin-top:4px;line-height:1.5}.fp-field{margin-bottom:18px}.fp-label{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:7px}.fp-label .opt{color:var(--ink-4);font-weight:500}.fp-input,.fp-select{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:13px 15px;font-size:15px;font-family:inherit;color:var(--ink);background:var(--surface);transition:border-color .15s,box-shadow .15s}.fp-input::placeholder{color:var(--ink-4)}.fp-input:focus,.fp-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3.5px var(--brand-50)}.fp-input.err,.fp-select.err{border-color:var(--danger);box-shadow:0 0 0 3.5px var(--danger-50)}.fp-hint{font-size:12.5px;color:var(--ink-3);margin-top:6px;display:flex;align-items:center;gap:6px}.fp-err-msg{font-size:12.5px;color:var(--danger);margin-top:6px;display:none;align-items:center;gap:6px}.fp-err-msg[data-show]{display:flex}.fp-input-mono{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em}.fp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 540px){.fp-grid2{grid-template-columns:1fr;gap:0}}.fp-note{display:flex;gap:11px;padding:13px 15px;border-radius:13px;background:var(--brand-50);margin-bottom:22px}.fp-note svg{color:var(--brand-600);flex-shrink:0;margin-top:1px}.fp-note p{font-size:13px;color:var(--brand-700);line-height:1.5}.fp-note.warn{background:var(--warning-50)}.fp-note.warn svg{color:var(--warning)}.fp-note.warn p{color:#92400e}.fp-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--font-sans);font-weight:600;font-size:15px;padding:14px 24px;border-radius:13px;cursor:pointer;border:none;transition:background .15s,transform .12s,box-shadow .15s}.fp-btn:active{transform:translateY(1px)}.fp-btn-primary{background:var(--brand);color:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--brand) 30%,transparent)}.fp-btn-primary:hover{background:var(--brand-600)}.fp-btn-ghost{background:var(--surface-2);color:var(--ink)}.fp-btn-ghost:hover{background:var(--surface-3)}.fp-btn-block{width:100%}.fp-btn:disabled{opacity:.5;cursor:not-allowed}.fp-actions{display:flex;gap:12px;margin-top:8px}.fp-btn:focus-visible,.fp-chip:focus-visible,.fp-faq-q:focus-visible,.fp-prefill-btn:focus-visible{outline:2.5px solid var(--brand);outline-offset:2px}.fp-examples{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;align-items:center}.fp-examples span{font-size:12px;color:var(--ink-3)}.fp-chip{font-family:var(--font-mono);font-size:12px;font-weight:600;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2);padding:5px 11px;border-radius:8px;cursor:pointer;transition:all .15s}.fp-chip:hover{border-color:var(--brand);color:var(--brand-600);background:var(--brand-50)}.fp-order{border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:24px}.fp-order-top{background:var(--surface-2);padding:16px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.fp-order-top .fp-folio{font-family:var(--font-display);font-weight:700;font-size:16px}.fp-order-top .fp-date{font-size:12.5px;color:var(--ink-3);margin-top:2px}.fp-pill{font-size:11.5px;font-weight:700;padding:5px 11px;border-radius:999px;background:var(--brand-50);color:var(--brand-600);display:inline-flex;align-items:center;gap:5px}.fp-order-items{padding:6px 18px}.fp-order-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line-soft)}.fp-order-row:last-child{border-bottom:none}.fp-order-thumb{width:36px;height:36px;border-radius:9px;background:var(--surface-3);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--ink-4)}.fp-order-row .nm{flex:1}.fp-order-row .nm b{display:block;font-size:13.5px;font-weight:600}.fp-order-row .nm span{font-size:11.5px;color:var(--ink-3)}.fp-order-row .amt{font-weight:600;font-size:13.5px;font-variant-numeric:tabular-nums}.fp-order-tot{padding:16px 18px;background:var(--surface-2);border-top:1px solid var(--line)}.fp-order-tot .ln{display:flex;justify-content:space-between;font-size:13px;color:var(--ink-2);margin-bottom:7px}.fp-order-tot .ln.grand{margin:10px 0 0;padding-top:12px;border-top:1px solid var(--line)}.fp-order-tot .ln.grand b{font-family:var(--font-display);font-size:21px;color:var(--ink)}.fp-order-tot .ln.grand span{font-weight:700;align-self:center}.fp-order-emisor{display:flex;align-items:center;gap:8px;padding:11px 18px;background:var(--brand-50);border-top:1px solid var(--brand-100)}.fp-order-emisor svg{color:var(--brand-600)}.fp-order-emisor span{font-size:12.5px;color:var(--brand-700);font-weight:600}.fp-prefill{display:flex;align-items:center;justify-content:space-between}.fp-prefill-in{display:flex;gap:11px;align-items:flex-start}.fp-prefill-btn{flex-shrink:0;background:none;border:none;color:var(--brand-700);font-weight:700;font-size:12.5px;cursor:pointer;text-decoration:underline;white-space:nowrap;margin-left:10px}.fp-loading{padding:70px 32px;text-align:center}.fp-spin{width:64px;height:64px;margin:0 auto 22px;position:relative}.fp-spin .ring{position:absolute;inset:0;border-radius:50%;border:4px solid var(--brand-50);border-top-color:var(--brand);animation:fpspin .9s linear infinite}.fp-spin .mk{position:absolute;inset:14px;border-radius:12px;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:16px}@keyframes fpspin{to{transform:rotate(360deg)}}.fp-loading h2{font-size:20px;font-weight:700}.fp-loading p{font-size:14px;color:var(--ink-2);margin-top:8px}.fp-load-steps{max-width:280px;margin:24px auto 0;display:flex;flex-direction:column;gap:10px;text-align:left}.fp-load-step{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-3);transition:color .3s}.fp-load-step[data-done]{color:var(--ink)}.fp-load-step .ck{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .3s}.fp-load-step[data-done] .ck{background:var(--brand);border-color:var(--brand);color:#fff}.fp-success{text-align:center;padding:44px 32px 36px}.fp-success-ic{width:76px;height:76px;border-radius:50%;background:var(--brand-50);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;animation:fpPop .5s cubic-bezier(.34,1.56,.64,1) both}.fp-success-ic svg{color:var(--brand-600)}@keyframes fpPop{0%{transform:scale(.4)}60%{transform:scale(1.08)}to{transform:scale(1)}}.fp-success h2{font-size:24px;font-weight:800}.fp-success>p{font-size:15px;color:var(--ink-2);margin-top:10px;line-height:1.55}.fp-uuid{margin:24px 0;padding:16px;border:1px dashed var(--brand-100);border-radius:14px;background:var(--brand-50)}.fp-uuid .lbl{font-size:11px;font-weight:700;color:var(--brand-700);text-transform:uppercase;letter-spacing:.06em}.fp-uuid .val{font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--ink);margin-top:5px;word-break:break-all}.fp-dl{display:flex;gap:12px}@media (max-width: 480px){.fp-dl{flex-direction:column}}.fp-success-meta{margin-top:22px;font-size:13px;color:var(--ink-3);display:flex;align-items:center;justify-content:center;gap:7px}.fp-error{text-align:center;padding:44px 32px}.fp-error-ic{width:72px;height:72px;border-radius:50%;background:var(--danger-50);color:var(--danger);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.fp-error.warn .fp-error-ic{background:var(--warning-50);color:var(--warning)}.fp-error h2{font-size:21px;font-weight:700}.fp-error p{font-size:14.5px;color:var(--ink-2);margin-top:10px;line-height:1.6;max-width:420px;margin-left:auto;margin-right:auto}.fp-trust{max-width:720px;margin:0 auto;padding:0 24px 24px;display:flex;flex-wrap:wrap;gap:14px 28px;justify-content:center}.fp-trust span{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-3);font-weight:500}.fp-trust svg{color:var(--brand)}.fp-faq{max-width:720px;margin:0 auto;padding:8px 24px 60px}.fp-faq h3{text-align:center;font-size:18px;font-weight:700;margin-bottom:18px}.fp-faq-item{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:10px;overflow:hidden}.fp-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-sans);font-size:14.5px;font-weight:600;color:var(--ink)}.fp-faq-q i{font-style:normal;font-size:22px;line-height:1;color:var(--ink-4);transition:transform .25s;flex-shrink:0}.fp-faq-item[data-open] .fp-faq-q i{transform:rotate(45deg);color:var(--brand)}.fp-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.fp-faq-item[data-open] .fp-faq-a{grid-template-rows:1fr}.fp-faq-a>div{overflow:hidden}.fp-faq-a p{font-size:13.5px;color:var(--ink-2);line-height:1.6;padding:0 20px 18px}.fp-foot{background:var(--ink);color:#9ba89e;padding:48px 24px 56px;text-align:center;font-size:12.5px;line-height:1.7}.fp-foot p{max-width:720px;margin:0 auto}.fp-foot p+p{margin-top:10px}.fp-foot a{color:var(--brand-100)}.fp-foot a:hover{color:#fff;text-decoration:underline}.fp-foot .em{color:#fff;font-weight:600}@media (min-width: 720px){.fp-foot{padding:56px 24px 64px}}.fp-pane{display:none}.fp-pane[data-active]{display:block;animation:fpFade .3s ease}@keyframes fpFade{0%{transform:translateY(8px)}to{transform:none}}.fp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fp-alert{display:none;gap:11px;padding:13px 15px;border-radius:13px;background:var(--danger-50);border:1px solid #FCC8C8;margin-bottom:18px;align-items:flex-start}.fp-alert[data-show]{display:flex;animation:fpAlert .28s cubic-bezier(.34,1.4,.6,1)}@keyframes fpAlert{0%{transform:translateY(-6px)}to{transform:none}}.fp-alert svg{color:var(--danger);flex-shrink:0;margin-top:1px}.fp-alert b{display:block;font-size:13.5px;color:#991b1b;font-weight:700}.fp-alert p{font-size:12.5px;color:#b91c1c;line-height:1.45;margin-top:2px}.fp-modal-scrim{position:fixed;inset:0;z-index:300;background:#0b1a1280;backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;padding:24px}.fp-modal-scrim[data-show]{display:flex;animation:fpScrim .2s ease}@keyframes fpScrim{0%{transform:translateZ(0)}to{transform:none}}.fp-modal{background:var(--surface);border-radius:22px;max-width:420px;width:100%;box-shadow:0 30px 80px #0b1a124d;overflow:hidden;animation:fpModalIn .32s cubic-bezier(.34,1.4,.6,1)}@keyframes fpModalIn{0%{transform:translateY(16px) scale(.96)}to{transform:none}}.fp-modal-body{padding:32px 28px 26px;text-align:center}.fp-modal-ic{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;background:var(--warning-50);color:var(--warning)}.fp-modal-ic.danger{background:var(--danger-50);color:var(--danger)}.fp-modal h2{font-size:20px;font-weight:700}.fp-modal p{font-size:14px;color:var(--ink-2);line-height:1.6;margin-top:10px}.fp-modal-extra{margin-top:16px;padding:12px 14px;border-radius:12px;background:var(--surface-2);font-size:12.5px;color:var(--ink-2);display:flex;align-items:center;gap:9px;justify-content:center}.fp-modal-extra svg{color:var(--brand-600);flex-shrink:0}.fp-modal-foot{padding:0 28px 26px;display:flex;gap:10px}.fp-modal-foot .fp-btn{flex:1}.fp #empresa-area{display:block}.fp.emp .fp-hero,.fp.emp .fp-main,.fp.emp .fp-trust,.fp.emp .fp-faq{display:none}.fp .emp-login{max-width:940px;margin:28px auto;padding:0 24px}.fp .emp-login-card{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 16px 50px #0b1a1214;min-height:520px}.fp .emp-brand{background:linear-gradient(155deg,var(--brand-600),var(--brand-700));color:#fff;padding:40px 38px;display:flex;flex-direction:column;position:relative;overflow:hidden}.fp .emp-brand .deco1{position:absolute;right:-70px;top:-50px;width:240px;height:240px;border-radius:50%;background:#ffffff14}.fp .emp-brand h2{font-size:28px;line-height:1.15;margin-top:auto;position:relative;color:#fff}.fp .emp-brand p{font-size:14.5px;opacity:.9;margin-top:12px;line-height:1.55;position:relative}.fp .emp-brand .feats{margin-top:22px;display:flex;flex-direction:column;gap:10px;position:relative}.fp .emp-brand .feats span{display:flex;align-items:center;gap:9px;font-size:13.5px}.fp .emp-form{padding:44px 40px;display:flex;flex-direction:column;justify-content:center}.fp .emp-form h3{font-size:23px;font-weight:700;font-family:var(--font-display);letter-spacing:-.025em;margin:0}.fp .emp-form .sub{font-size:14px;color:var(--ink-2);margin:6px 0 24px}.fp .emp-sso{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.fp .emp-sso button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);font-family:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}.fp .emp-sso button:hover{background:var(--surface-2)}.fp .emp-divider{display:flex;align-items:center;gap:12px;color:var(--ink-4);font-size:12px;margin:6px 0 18px}.fp .emp-divider:before,.fp .emp-divider:after{content:"";flex:1;height:1px;background:var(--line)}@media (max-width: 720px){.fp .emp-login-card{grid-template-columns:1fr}.fp .emp-brand{display:none}}.fp .emp-dash{max-width:1080px;margin:0 auto 24px;padding:24px 24px 72px}.fp #empresa-area+.fp-foot,.fp .emp-dash+.fp-foot{box-shadow:inset 0 1px #ffffff0a}.fp .emp-dash-top{display:flex;align-items:center;gap:14px;margin-bottom:22px;flex-wrap:wrap}.fp .emp-avatar{width:46px;height:46px;border-radius:13px;background:var(--brand-50);color:var(--brand-700);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;flex-shrink:0}.fp .emp-dash-top h2{font-size:22px;font-weight:700}.fp .emp-dash-top .meta{font-size:13px;color:var(--ink-3)}.fp .emp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.fp .emp-kpi{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 18px}.fp .emp-kpi .lbl{font-size:12px;color:var(--ink-3);font-weight:600}.fp .emp-kpi .val{font-family:var(--font-display);font-size:24px;margin-top:6px;letter-spacing:-.02em}.fp .emp-kpi .val.green{color:var(--brand-600)}.fp .emp-kpi .val.amber{color:var(--warning)}.fp .emp-kpi .val.red{color:var(--danger)}@media (max-width: 720px){.fp .emp-kpis{grid-template-columns:1fr 1fr}}.fp .emp-bento{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:14px;margin-bottom:22px}@media (max-width: 820px){.fp .emp-bento{grid-template-columns:1fr 1fr}}@media (max-width: 560px){.fp .emp-bento{grid-template-columns:1fr}}.fp .bento{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;position:relative;overflow:hidden}.fp .bento .blbl{font-size:12.5px;color:var(--ink-3);font-weight:600}.fp .bento .bval{font-family:var(--font-display);font-size:30px;letter-spacing:-.03em;margin-top:8px;line-height:1}.fp .bento .bdelta{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;margin-top:10px}.fp .bento .bdelta.up{color:var(--brand-600)}.fp .bento .bdelta.down{color:var(--danger)}.fp .bento-feat{background:linear-gradient(165deg,var(--brand-600),var(--brand-700));color:#fff;border:none}.fp .bento-feat .blbl{color:#ffffffd9}.fp .bento-feat .bval{font-size:38px;color:#fff}.fp .bento-feat .deco{position:absolute;right:-50px;top:-50px;width:170px;height:170px;border-radius:50%;background:#ffffff14}.fp .bento-bars{display:flex;align-items:flex-end;gap:7px;height:56px;margin-top:18px;position:relative}.fp .bento-bars i{flex:1;background:#ffffff47;border-radius:4px 4px 0 0;display:block;transition:height .4s}.fp .bento-bars i.hot{background:#fff}.fp .bento-bars span{position:absolute;bottom:-18px;font-size:9.5px;color:#ffffffb3}.fp .bento-ring{display:flex;align-items:center;gap:16px}.fp .bento-ring .ring{--p: 50;width:92px;height:92px;border-radius:50%;flex-shrink:0;background:conic-gradient(var(--brand) calc(var(--p) * 1%),var(--surface-3) 0);display:flex;align-items:center;justify-content:center;position:relative}.fp .bento-ring .ring:after{content:"";width:68px;height:68px;border-radius:50%;background:var(--surface);position:absolute}.fp .bento-ring .ring b{position:relative;font-family:var(--font-display);font-size:19px;letter-spacing:-.02em}.fp .bento-donut{display:flex;align-items:center;gap:16px}.fp .bento-donut .donut{width:92px;height:92px;border-radius:50%;flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center}.fp .bento-donut .donut:after{content:"";width:58px;height:58px;border-radius:50%;background:var(--surface);position:absolute}.fp .bento-donut .donut b{position:relative;font-family:var(--font-display);font-size:17px}.fp .dleg{display:flex;flex-direction:column;gap:7px}.fp .dleg span{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-2)}.fp .dleg span i{width:9px;height:9px;border-radius:3px;display:block}.fp .dleg span b{margin-left:auto;font-size:12px;color:var(--ink);font-variant-numeric:tabular-nums}.fp .emp-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.fp .emp-tabs{display:inline-flex;background:var(--surface-2);border-radius:11px;padding:3px}.fp .emp-tabs button{border:none;background:transparent;cursor:pointer;padding:8px 14px;border-radius:9px;font-size:13px;font-weight:600;color:var(--ink-3);font-family:inherit}.fp .emp-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #0000000f}.fp .emp-search{margin-left:auto;display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:9px 13px;font-size:13px;color:var(--ink-3);min-width:220px}.fp .emp-search input{border:none;outline:none;background:transparent;flex:1;font-family:inherit;font-size:13px;color:var(--ink);padding:0}.fp .emp-search input::placeholder{color:var(--ink-4)}.fp .emp-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden}.fp .emp-table{width:100%;border-collapse:collapse}.fp .emp-table thead th{text-align:left;font-size:11px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;padding:13px 16px;border-bottom:1px solid var(--line);white-space:nowrap}.fp .emp-table td{padding:14px 16px;font-size:13.5px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.fp .emp-table tbody tr:last-child td{border-bottom:none}.fp .emp-table tbody tr:hover{background:var(--surface-2)}.fp .emp-table .num{font-variant-numeric:tabular-nums;text-align:right}.fp .emp-badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px}.fp .emp-badge.ok{background:var(--brand-50);color:var(--brand-700)}.fp .emp-badge.warn{background:var(--warning-50);color:#92400e}.fp .emp-badge.err{background:var(--danger-50);color:#991b1b}.fp .emp-badge.gray{background:var(--surface-3);color:var(--ink-2)}.fp .emp-rowbtn{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:6px 8px;cursor:pointer;color:var(--ink-2);display:inline-flex}.fp .emp-rowbtn:hover{background:var(--surface-2)}.fp .emp-rowbtn.danger:hover{background:var(--danger-50);color:var(--danger);border-color:#fcc8c8}.fp .emp-empty{padding:50px;text-align:center;color:var(--ink-3);font-size:14px}.fp .emp-form .fp-input{font-size:14.5px}.fp .emp-error{color:var(--danger);font-size:13px;margin-top:10px}.fp .emp-toast{background:var(--brand-50);color:var(--brand-700);border:1px solid var(--brand-100);padding:10px 14px;border-radius:10px;font-size:13px;margin-bottom:14px}.fp .emp-toast.warn{background:var(--warning-50);color:#92400e;border-color:#fcd34d}.fp .emp-toast.err{background:var(--danger-50);color:#991b1b;border-color:#fca5a5}.fp .emp-2fa-input{width:100%;text-align:center;letter-spacing:.42em;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:24px;font-weight:700;padding:14px 12px;border-radius:12px;border:1.5px solid var(--line);outline:none;background:var(--surface);color:var(--ink)}.fp .emp-2fa-input:focus{border-color:var(--brand-600)}.fp .emp-conflict-info{background:var(--warning-50);border:1px solid #FCD34D;border-radius:12px;padding:14px;font-size:13px;color:#92400e;margin-bottom:14px}.fp .emp-conflict-info b{color:#78350f}.fp .emp-link-btn{background:none;border:none;color:var(--ink-3);font-size:13px;cursor:pointer;padding:6px;text-decoration:underline;font-family:inherit}.fp .emp-link-btn:hover{color:var(--brand-700)}
