.button{border-radius:var(--orbit-radius-md);background:linear-gradient(135deg, #160a30 0%, var(--orbit-violet-950) 50%, var(--orbit-violet-700) 100%);color:#fff;min-height:44px;transition:transform .16s var(--orbit-ease), box-shadow .16s var(--orbit-ease), opacity .16s var(--orbit-ease);border:0;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:900;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 12px 28px #6d28d947,inset 0 1px #ffffff29}.button:after{content:"";transition:transform .7s var(--orbit-ease);pointer-events:none;background:linear-gradient(115deg,#0000 34%,#ffffff47 50%,#0000 66%);position:absolute;inset:0;transform:translate(-130%)}.button:hover{transform:translateY(-1px);box-shadow:0 16px 34px #6d28d957,inset 0 1px #fff3}.button:hover:not(:disabled):after{transform:translate(130%)}.button:disabled{cursor:not-allowed;opacity:.65;transform:none}.ui-badge{border-radius:var(--orbit-radius-pill);letter-spacing:.02em;white-space:nowrap;align-items:center;height:24px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.ui-badge--success{background:var(--orbit-success-soft);color:var(--orbit-success)}.ui-badge--warning{color:var(--orbit-warning);background:#fef9c3}.ui-badge--danger{background:var(--orbit-danger-soft);color:var(--orbit-danger-strong)}.ui-badge--neutral{background:var(--orbit-surface-muted);color:var(--orbit-muted)}.ui-badge--violet{background:var(--orbit-violet-100);color:var(--orbit-violet-800)}.ui-badge--info{color:#0369a1;background:#e0f2fe}.ui-badge--indigo{color:#3730a3;background:#eef2ff}.ui-badge--teal{color:#0f766e;background:#ccfbf1}.table-controls{background:#fff;border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.table-controls strong{color:var(--orbit-ink);font-size:13px;font-weight:700}.table-controls__pager{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.table-controls__arrow,.table-controls__page{border-radius:var(--orbit-radius-xs);min-width:30px;height:30px;color:var(--orbit-ink-soft);cursor:pointer;background:#fff;border:1px solid #e3e0ee;padding:0 10px;font-size:12px;font-weight:700}.table-controls__page.is-active{color:#fff;background:#071d3a;border-color:#071d3a}.table-controls__arrow:disabled,.table-controls__page:disabled{opacity:.45;cursor:not-allowed}.table-controls__ellipsis{color:var(--orbit-muted-soft);padding:0 2px;font-size:12px}@media (width<=760px){.table-controls{flex-direction:column;align-items:flex-start}.table-controls__pager{justify-content:flex-start}}.empty-state{text-align:center;border:1px dashed var(--orbit-border);border-radius:var(--orbit-radius);background:radial-gradient(80% 100% at 50% 0%, #7c3aed0a, transparent 70%), var(--orbit-surface);flex-direction:column;align-items:center;gap:4px;padding:50px 24px;display:flex;box-shadow:0 16px 32px -30px #2a0a5e6b}.empty-state__icon{border-radius:var(--orbit-radius);background:var(--orbit-violet-50);width:56px;height:56px;color:var(--orbit-violet-700,var(--orbit-violet-700));place-items:center;margin-bottom:8px;font-size:26px;display:grid}.empty-state--error{border-color:var(--orbit-danger-border);background:radial-gradient(80% 100% at 50% 0%, #ef44440e, transparent 70%), var(--orbit-surface)}.empty-state--error .empty-state__icon{color:var(--orbit-danger-strong);background:var(--orbit-danger-surface)}.empty-state__title{color:var(--orbit-ink);margin:0;font-size:16px;font-weight:800}.empty-state__desc{max-width:44ch;color:var(--orbit-muted,var(--orbit-muted));margin:0;font-size:13.5px;line-height:1.5}.empty-state__actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}.empty-state__btn{border-radius:var(--orbit-radius-sm);cursor:pointer;border:1px solid #0000;align-items:center;gap:7px;height:40px;padding:0 16px;font-size:13.5px;font-weight:700;text-decoration:none;transition:transform .12s,filter .12s,background .12s,border-color .12s;display:inline-flex}.empty-state__btn:hover{transform:translateY(-1px)}.empty-state__btn--primary{color:#fff;background:linear-gradient(135deg, var(--orbit-violet-500), var(--orbit-violet-700))}.empty-state__btn--primary:hover{filter:brightness(1.07)}.empty-state__btn--camila{color:var(--orbit-violet-800,var(--orbit-violet-900));background:var(--orbit-violet-50);border-color:var(--orbit-violet-200)}.empty-state__btn--camila:hover{background:var(--orbit-violet-100);border-color:var(--orbit-violet-300)}@media (width<=560px){.empty-state{padding:38px 18px}.empty-state__actions{width:100%}.empty-state__btn{flex:100%;justify-content:center}}.kpi-card{background:var(--orbit-glass-strong);-webkit-backdrop-filter:var(--orbit-glass-blur);backdrop-filter:var(--orbit-glass-blur);border:1px solid var(--orbit-glass-border);border-radius:var(--orbit-radius);box-shadow:var(--orbit-glass-shadow);min-height:104px;transition:transform .18s var(--orbit-ease), box-shadow .18s var(--orbit-ease), border-color .18s var(--orbit-ease);flex-direction:column;gap:6px;padding:18px 18px 16px;display:flex;position:relative;overflow:hidden}.kpi-card:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(140deg,#c4b5fde6,#ffffff1a 46%,#7c3aed66);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.kpi-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#7c3aed12 0%,#0000 65%);width:60%;height:140%;position:absolute;top:-40%;right:-20%}.kpi-card:hover{box-shadow:var(--orbit-glass-shadow), var(--orbit-glow);border-color:var(--orbit-violet-200);transform:translateY(-3px)}.kpi-card__label{letter-spacing:.05em;text-transform:uppercase;color:var(--orbit-muted);font-size:11.5px;font-weight:600}.kpi-card__value{color:var(--orbit-ink);letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;line-height:1.1}.kpi-card__trend{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:11.5px;font-weight:700;display:inline-flex}.kpi-card__trend--good{color:var(--orbit-success)}.kpi-card__trend--bad{color:var(--orbit-danger-strong)}.kpi-card__trend--flat{color:var(--orbit-muted)}.kpi-card__accent{border-radius:var(--orbit-radius-pill);background:linear-gradient(90deg, var(--orbit-violet-700), var(--orbit-violet-400));width:30px;height:3px;margin-top:auto;transition:width .22s}.kpi-card__spark-wrap{margin-top:auto;position:relative}.kpi-card__spark{cursor:crosshair;width:100%;height:26px;display:block;overflow:visible}.kpi-card__spark-hover{fill:#fff;stroke:var(--orbit-violet-600,var(--orbit-violet-600));stroke-width:1.5px}.kpi-card__spark--good .kpi-card__spark-hover{stroke:var(--orbit-success)}.kpi-card__spark--bad .kpi-card__spark-hover{stroke:var(--orbit-danger-strong)}.kpi-card__spark-tip{white-space:nowrap;pointer-events:none;color:#fff;border-radius:var(--orbit-radius-xs);z-index:3;background:#241938;padding:3px 8px;font-size:11px;font-weight:600;position:absolute;bottom:calc(100% + 4px);transform:translate(-50%);box-shadow:0 4px 12px #14082e4d}.kpi-card__spark-tip strong{font-weight:800}.kpi-card__spark-line{fill:none;stroke:var(--orbit-violet-500,var(--orbit-violet-500));stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.kpi-card__spark-area{fill:#8b5cf61f;stroke:none}.kpi-card__spark-dot{fill:var(--orbit-violet-600,var(--orbit-violet-600))}.kpi-card__spark--good .kpi-card__spark-line{stroke:var(--orbit-success)}.kpi-card__spark--good .kpi-card__spark-area{fill:#16a34a1f}.kpi-card__spark--good .kpi-card__spark-dot{fill:var(--orbit-success)}.kpi-card__spark--bad .kpi-card__spark-line{stroke:var(--orbit-danger)}.kpi-card__spark--bad .kpi-card__spark-area{fill:#dc26261a}.kpi-card__spark--bad .kpi-card__spark-dot{fill:var(--orbit-danger-strong)}.kpi-card:hover .kpi-card__accent{width:46px}.kpi-card__hint{color:var(--orbit-muted);font-size:11px;line-height:1.35}.modal-overlay{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a6b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{border-radius:var(--orbit-radius-lg);background:#fff;border:1px solid #e5edf6;max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 30px 70px #0f172a3d}.modal__header{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;display:flex}.modal__title{color:#170a33;margin:0;font-size:20px;font-weight:850}.modal__close{border:1px solid var(--orbit-border);border-radius:var(--orbit-radius-sm);width:36px;height:36px;color:var(--orbit-muted);background:#fff;font-size:18px}.modal__body{padding:24px}@media (width<=480px){.modal-overlay{padding:14px}.modal{border-radius:var(--orbit-radius);max-height:calc(100vh - 28px)}.modal__header{padding:16px 16px 14px}.modal__title{font-size:17px}.modal__body{padding:16px}}.drawer-overlay{z-index:300;opacity:0;pointer-events:none;background:#180a3066;transition:opacity .2s;position:fixed;inset:0}.drawer-overlay--open{opacity:1;pointer-events:auto}.drawer{z-index:301;background:#fff;flex-direction:column;height:100vh;transition:transform .28s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-16px 0 48px #180a3024}.drawer--open{transform:translate(0)}.drawer__header{border-bottom:1px solid var(--orbit-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:24px 28px 20px;display:flex}.drawer__title{color:var(--orbit-ink);margin:0;font-size:17px;font-weight:700}.drawer__close{border:1px solid var(--orbit-border);border-radius:var(--orbit-radius-sm);width:34px;height:34px;color:var(--orbit-muted);cursor:pointer;background:0 0;place-items:center;transition:background .15s,color .15s;display:grid}.drawer__close:hover{background:var(--orbit-surface-muted);color:var(--orbit-ink)}.drawer__body{flex:1;padding:28px;overflow-y:auto}@media (width<=640px){.drawer{width:100%!important}.drawer__header{padding:18px 18px 16px}.drawer__body{padding:18px}}.ui-tooltip__anchor{cursor:help;align-items:center;display:inline-flex}.ui-tooltip__anchor:focus-visible{outline:2px solid var(--orbit-gold);outline-offset:2px;border-radius:var(--orbit-radius-sm,8px)}.ui-tooltip{z-index:4000;border-radius:var(--orbit-radius-sm,8px);background:var(--orbit-navy);color:#fff;text-align:left;max-width:280px;box-shadow:var(--orbit-shadow-lg,0 12px 32px #0f1b2e47);pointer-events:none;white-space:normal;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.45;animation:.12s ease-out ui-tooltip-in;position:fixed;transform:translate(-50%,calc(-100% - 8px))}.ui-tooltip:after{content:"";background:var(--orbit-navy);width:8px;height:8px;margin-top:-4px;position:absolute;top:100%;left:50%;transform:translate(-50%)rotate(45deg)}@keyframes ui-tooltip-in{0%{opacity:0;transform:translate(-50%,calc(-100% - 2px))}to{opacity:1;transform:translate(-50%,calc(-100% - 8px))}}@media (prefers-reduced-motion:reduce){.ui-tooltip{animation:none}}.toast-host{z-index:80;top:calc(var(--topbar-h,58px) + 12px);pointer-events:none;flex-direction:column;gap:10px;width:min(360px,100vw - 40px);display:flex;position:fixed;right:20px}.toast{border-radius:var(--orbit-radius-sm,10px);background:var(--orbit-surface);border:1px solid var(--orbit-border);box-shadow:var(--orbit-shadow-lg,0 20px 40px -10px #1a162640);color:var(--orbit-ink);pointer-events:auto;align-items:flex-start;gap:10px;padding:13px 14px;font-size:13.5px;font-weight:600;line-height:1.4;animation:.2s toast-in;display:flex}.toast span{flex:1}.toast button{border-radius:var(--orbit-radius-xs);width:20px;height:20px;color:inherit;opacity:.5;cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;display:grid}.toast button:hover{opacity:1;background:#0000000f}.toast--success{border-color:var(--orbit-success-border)}.toast--success svg{color:var(--orbit-green,var(--orbit-success));flex-shrink:0}.toast--error{border-color:var(--orbit-danger-border)}.toast--error svg{color:var(--orbit-red,var(--orbit-danger));flex-shrink:0}.toast--info{border-color:var(--orbit-violet-200,var(--orbit-violet-200))}.toast--info svg{color:var(--orbit-violet-600,var(--orbit-violet-600));flex-shrink:0}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.toast-host{width:auto;inset:auto 16px 16px}}.confirm-overlay{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a6b;justify-content:center;align-items:center;padding:24px;animation:.15s confirm-fade-in;display:flex;position:fixed;inset:0}.confirm-dialog{border-radius:var(--orbit-radius,16px);background:var(--orbit-surface);width:min(400px,100%);box-shadow:var(--orbit-shadow-lg,0 30px 70px #0f172a3d);text-align:center;padding:26px;animation:.18s confirm-pop-in}.confirm-dialog__icon{border-radius:var(--orbit-radius-md);background:var(--orbit-violet-100,var(--orbit-violet-100));width:44px;height:44px;color:var(--orbit-violet-700,var(--orbit-violet-700));place-items:center;margin:0 auto 14px;display:grid}.confirm-dialog__icon--danger{background:var(--orbit-danger-soft);color:var(--orbit-danger)}.confirm-dialog h2{color:var(--orbit-ink);margin:0 0 8px;font-size:16px;font-weight:800}.confirm-dialog p{color:var(--orbit-ink-soft);margin:0;font-size:14px;line-height:1.5}.confirm-dialog__actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.confirm-dialog__actions button{border-radius:var(--orbit-radius-sm,10px);cursor:pointer;border:none;flex:1;height:42px;font-size:13.5px;font-weight:700}.confirm-dialog__cancel{background:var(--orbit-surface-sunken);color:var(--orbit-ink);border:1px solid var(--orbit-border)!important}.confirm-dialog__cancel:hover{background:var(--orbit-border-soft)}.confirm-dialog__confirm{background:linear-gradient(135deg, var(--orbit-violet-600), var(--orbit-violet-800));color:#fff}.confirm-dialog__confirm:hover{opacity:.92}.confirm-dialog__confirm--danger{background:linear-gradient(135deg, var(--orbit-danger), var(--orbit-danger-strong))}@keyframes confirm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes confirm-pop-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
