@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-primary: #07080d;--bg-secondary: rgba(14, 16, 26, .7);--bg-tertiary: rgba(22, 24, 38, .6);--bg-hover: rgba(30, 33, 50, .8);--glass-border: rgba(255, 255, 255, .06);--glass-shine: rgba(255, 255, 255, .03);--glass-blur: 20px;--text-primary: #f0f0f5;--text-secondary: #8b8fa3;--text-muted: #505468;--accent: #7c5cfc;--accent-hover: #8f75ff;--accent-glow: rgba(124, 92, 252, .25);--border: rgba(255, 255, 255, .06);--gradient-primary: linear-gradient(135deg, #6366f1, #8b5cf6, #a78bfa);--gradient-danger: linear-gradient(135deg, #ef4444, #f87171);--gradient-success: linear-gradient(135deg, #10b981, #34d399);--gradient-warning: linear-gradient(135deg, #f59e0b, #fbbf24);--success: #34d399;--danger: #f87171;--warning: #fbbf24;--info: #60a5fa;--radius: 12px;--radius-lg: 16px;--radius-sm: 8px;--shadow: 0 4px 24px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .45);--shadow-glow: 0 0 20px var(--accent-glow)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(170deg,#07080d,#0c0e18 40%,#090b14);background-attachment:fixed;color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;opacity:.015;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px}a{color:var(--accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent-hover)}::selection{background:#7c5cfc4d;color:#fff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#ffffff24}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.08) transparent}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.5}}@keyframes progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes glow-pulse{0%,to{box-shadow:0 0 8px var(--accent-glow)}50%{box-shadow:0 0 20px var(--accent-glow),0 0 40px #7c5cfc1a}}@keyframes border-glow{0%,to{border-color:#7c5cfc4d}50%{border-color:#7c5cfc99}}.app-layout{display:flex;min-height:100vh}.sidebar{width:292px;background:#0a0c14d9;-webkit-backdrop-filter:blur(24px) saturate(1.4);backdrop-filter:blur(24px) saturate(1.4);border-right:1px solid var(--glass-border);padding:1.25rem 0;flex-shrink:0;display:flex;flex-direction:column;position:relative;z-index:10}.sidebar:after{content:"";position:absolute;top:0;right:0;width:1px;height:100%;background:linear-gradient(180deg,transparent 0%,rgba(124,92,252,.15) 30%,rgba(124,92,252,.05) 70%,transparent 100%);pointer-events:none}.sidebar-brand{padding:.75rem 1.25rem 1.2rem;border-bottom:1px solid var(--glass-border);margin-bottom:.75rem}.sidebar-brand span{display:block;font-size:1.08rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.01em}.sidebar-brand small{display:block;margin-top:.25rem;color:var(--text-muted);font-size:.72rem;font-weight:500;letter-spacing:0}.sidebar-section-label{padding:.65rem 1.25rem .35rem;color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sidebar-nav{list-style:none;padding:0 .75rem;margin:0}.sidebar-nav a,.nav-disabled{display:flex;align-items:flex-start;gap:.7rem;padding:.68rem .78rem;color:var(--text-secondary);border-radius:var(--radius-sm);transition:all .2s ease;font-size:.86rem;font-weight:500;position:relative;margin-bottom:3px;min-height:48px}.nav-disabled{color:color-mix(in srgb,var(--text-muted) 70%,transparent);cursor:not-allowed;opacity:.58}.sidebar-nav a:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav a.active{background:#7c5cfc1a;color:var(--text-primary);box-shadow:inset 0 0 0 1px #7c5cfc33}.sidebar-nav a.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;border-radius:0 4px 4px 0;background:var(--gradient-primary)}.sidebar-footer{margin-top:auto;padding:1rem 1.25rem;border-top:1px solid var(--glass-border);display:flex;flex-direction:column;gap:.6rem}.sidebar-user{font-size:.8rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:.3rem 0}.sidebar-logout,.sidebar-login{width:100%;justify-content:center}.main-content{flex:1;padding:2rem 2.5rem;overflow-x:auto;animation:fadeIn .4s ease}.workflow-strip{margin-bottom:1.25rem;padding:1rem;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);background:linear-gradient(135deg,rgba(52,211,153,.08),transparent 28%),#0a0c14b8;box-shadow:var(--shadow)}.workflow-context-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.workflow-context-row strong,.workflow-context-row small,.workflow-eyebrow{display:block}.workflow-eyebrow{color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.workflow-context-row strong{color:var(--text-primary);font-size:.98rem;line-height:1.3}.workflow-context-row small{color:var(--text-secondary);font-size:.78rem}.workflow-ready-pill{flex-shrink:0;padding:.35rem .7rem;border-radius:99px;border:1px solid;font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.workflow-ready-pill.ready{color:var(--success);border-color:#34d39959;background:#34d3991a}.workflow-ready-pill.blocked{color:var(--warning);border-color:#fbbf2452;background:#fbbf2414}.workflow-steps{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:.5rem}.workflow-step{display:grid;grid-template-columns:2.1rem 1fr;gap:.55rem;align-items:start;min-height:104px;padding:.7rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#ffffff06}.workflow-step.complete{border-color:#34d39938}.workflow-step.blocked{border-color:#fbbf242e}.workflow-step-index{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:50%;background:#ffffff0f;color:var(--text-secondary);font-size:.68rem;font-weight:800;line-height:1}.workflow-step.complete .workflow-step-index{color:var(--success);background:#34d3991f}.workflow-step-copy{min-width:0}.workflow-step-copy strong{display:block;font-size:.82rem;color:var(--text-primary);line-height:1.25}.workflow-step-copy small{display:block;min-height:2.4rem;margin-top:.2rem;color:var(--text-muted);font-size:.7rem;line-height:1.35}.workflow-step-action{grid-column:2;align-self:end;width:fit-content;margin-top:.35rem;color:var(--accent);font-size:.72rem;font-weight:700}.workflow-step-action.disabled{color:var(--text-muted)}.workflow-detail-toggle{margin-top:.75rem;padding:0;border:none;background:transparent;color:var(--accent);cursor:pointer;font:inherit;font-size:.78rem;font-weight:700}.workflow-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--glass-border)}.workflow-checklist-group strong{display:block;margin-bottom:.35rem;color:var(--text-primary);font-size:.8rem}.workflow-check{display:grid;grid-template-columns:2.6rem 1fr;gap:.45rem;align-items:start;margin-bottom:.35rem;color:var(--text-secondary);font-size:.74rem}.workflow-check span{color:var(--text-muted);font-size:.62rem;font-weight:800}.workflow-check.met span{color:var(--success)}.workflow-check.missing span{color:var(--warning)}.workflow-check p{margin:0;line-height:1.35}.card{background:var(--bg-secondary);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;will-change:transform;position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 30%,rgba(255,255,255,.06) 70%,transparent 100%);pointer-events:none}.nav-copy{display:flex;flex-direction:column;gap:.13rem;min-width:0}.nav-label{line-height:1.18}.nav-caption{color:var(--text-muted);font-size:.72rem;line-height:1.25;font-weight:450}.sidebar-nav a.active .nav-caption,.sidebar-nav a:hover .nav-caption{color:color-mix(in srgb,var(--text-secondary) 84%,white)}.workflow-nav{position:relative}.workflow-nav:before{content:"";position:absolute;left:1.52rem;top:.95rem;bottom:.95rem;width:1px;background:linear-gradient(180deg,#7c5cfc57,#33c3f024)}.utility-nav{padding-bottom:.6rem}.card:hover{transform:translateY(-1px);border-color:#ffffff1a;box-shadow:var(--shadow),0 0 0 1px #ffffff0a}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}table{width:100%;border-collapse:separate;border-spacing:0}th,td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--glass-border)}th{color:var(--text-muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;background:#ffffff05;position:sticky;top:0;z-index:2}th:first-child{border-radius:var(--radius-sm) 0 0 0}th:last-child{border-radius:0 var(--radius-sm) 0 0}tr{transition:background .15s ease}tr:hover td{background:#ffffff05}td{font-size:.875rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.15rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--bg-tertiary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease;will-change:transform;position:relative;overflow:hidden}.btn:hover{background:var(--bg-hover);border-color:#ffffff1f;transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.98)}.btn-primary{background:var(--gradient-primary);border-color:transparent;color:#fff;font-weight:600;box-shadow:0 2px 12px var(--accent-glow)}.btn-primary:hover{filter:brightness(1.12);box-shadow:0 4px 20px var(--accent-glow);border-color:transparent;transform:translateY(-1px)}.btn-primary:active{filter:brightness(.95);transform:translateY(0) scale(.98)}.btn-danger{background:var(--gradient-danger);border-color:transparent;color:#fff;font-weight:600;box-shadow:0 2px 12px #ef444440}.btn-danger:hover{filter:brightness(1.12);box-shadow:0 4px 20px #ef44444d;border-color:transparent}.btn-sm{padding:.35rem .75rem;font-size:.8rem;border-radius:var(--radius-sm)}.form-group{margin-bottom:1.15rem}.form-group label{display:block;margin-bottom:.4rem;font-size:.8rem;font-weight:500;color:var(--text-secondary);letter-spacing:.01em}input,select,textarea{width:100%;padding:.6rem .85rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#07080d99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-primary);font-size:.875rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow),inset 0 0 0 1px #7c5cfc1a}input::placeholder,textarea::placeholder{color:var(--text-muted)}textarea{resize:vertical;min-height:80px;font-family:Fira Code,Cascadia Code,Consolas,monospace;font-size:.8rem;line-height:1.6}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b8fa3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.form-input{width:100%;padding:.6rem .85rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#07080d99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-primary);font-size:.875rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:99px;font-size:.72rem;font-weight:600;letter-spacing:.02em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid transparent}.badge-fraud{background:#f871711f;color:var(--danger);border-color:#f8717126}.badge-legit{background:#34d3991f;color:var(--success);border-color:#34d39926}.badge-pending{background:#fbbf241f;color:var(--warning);border-color:#fbbf2426}.badge-running{background:#7c5cfc1f;color:var(--accent);border-color:#7c5cfc26;animation:pulse-badge 1.8s ease-in-out infinite}.badge-replaying{background:#a78bfa1f;color:#c4b5fd;border-color:#a78bfa2e;animation:pulse-badge 1.8s ease-in-out infinite}.badge-completed{background:#34d3991f;color:var(--success);border-color:#34d39926}.badge-failed{background:#f871711f;color:var(--danger);border-color:#f8717126}.grid{display:grid;gap:1.25rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.loading{display:flex;justify-content:center;padding:3rem;color:var(--text-muted);font-size:.9rem}.error{background:#f8717114;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(248,113,113,.2);color:var(--danger);padding:1rem 1.25rem;border-radius:var(--radius);margin-bottom:1rem;font-size:.875rem}.mapper-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;height:65vh;min-height:400px}.mapper-scenario-filter{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,420px) auto;align-items:center;gap:.85rem;margin-bottom:1rem;padding:.8rem 1rem;background:#ffffff06;border:1px solid var(--glass-border);border-radius:var(--radius)}.mapper-scenario-filter-copy span{display:block;color:var(--text-primary);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.mapper-scenario-filter-copy small{display:block;margin-top:.18rem;color:var(--text-muted);font-size:.78rem}.mapper-scenario-select{width:100%;min-width:0}.mapper-scenario-badge{justify-self:end;white-space:nowrap;background:#34d39924;color:var(--success);border:1px solid rgba(52,211,153,.22)}.mapper-lint{margin:.75rem 0 1rem;padding:.85rem 1rem;background:#ffffff06;border:1px solid var(--glass-border);border-radius:var(--radius)}.mapper-lint.invalid{border-color:#f8717147}.mapper-lint-header,.mapper-lint-summary,.mapper-lint-list li{display:flex;align-items:center;gap:.75rem}.mapper-lint-header{justify-content:space-between;margin-bottom:.65rem}.mapper-lint-summary{flex-wrap:wrap;color:var(--text-muted);font-size:.82rem}.mapper-lint-list{display:grid;gap:.45rem;margin:.75rem 0 0;padding:0;list-style:none}.mapper-lint-list li{align-items:flex-start;padding-top:.45rem;border-top:1px solid var(--glass-border)}.mapper-lint-list small,.mapper-lint-empty{color:var(--text-muted)}.mapper-panel-scroll{background:var(--bg-secondary);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow);position:relative}.mapper-panel-scroll:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 30%,rgba(255,255,255,.06) 70%,transparent 100%);pointer-events:none;z-index:1}.mapper-panel-header{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.15rem;border-bottom:1px solid var(--glass-border);flex-shrink:0;background:#ffffff05}.mapper-panel-header h3{margin:0;font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.mapper-panel-header .badge{font-size:.68rem;padding:.15rem .55rem;border-radius:99px;background:var(--gradient-primary);color:#fff;font-weight:600;border:none}.mapper-panel-header .badge.mandatory-incomplete{background:#f59e0b29;color:#fbbf24;border:1px solid rgba(245,158,11,.24)}.mapper-panel-header .badge.mandatory-complete{background:#34d39924;color:var(--success);border:1px solid rgba(52,211,153,.22)}.mapper-search-bar{display:flex;align-items:center;gap:.35rem;padding:.6rem .85rem;border-bottom:1px solid var(--glass-border);flex-shrink:0;background:#07080d66}.mapper-search-input{flex:1;padding:.4rem .7rem;background:#16182699;border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.8rem;font-family:Fira Code,Cascadia Code,Consolas,monospace;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.mapper-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.mapper-search-clear{width:24px;height:24px;border-radius:50%;border:none;background:var(--bg-hover);color:var(--text-secondary);font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s ease}.mapper-search-clear:hover{background:var(--danger);color:#fff;transform:scale(1.1)}.mapper-list{overflow-y:auto;flex:1;padding:.6rem}.mapper-canonical-sections{display:flex;flex-direction:column;gap:.9rem}.mapper-field-section{border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);padding:.45rem;background:#ffffff04}.mapper-field-section.mandatory-fields{border-color:#f59e0b47;background:linear-gradient(180deg,#f59e0b13,#f59e0b06);box-shadow:inset 0 0 0 1px #f59e0b0f}.mapper-section-header{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.35rem .45rem .55rem;color:var(--text-primary)}.mapper-section-header span,.mapper-section-header strong{display:block;font-size:.72rem;line-height:1.2;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.mapper-section-header small{display:block;margin-top:.12rem;color:var(--text-muted);font-size:.68rem;font-weight:500;text-transform:none;letter-spacing:0}.mapper-section-header strong{color:#fbbf24;white-space:nowrap}.mapper-section-header.standard strong{color:var(--accent)}.mapper-empty-section{padding:.4rem .45rem;margin:0;font-size:.78rem}.mapper-field-row{display:flex;align-items:center;gap:.6rem;padding:.6rem .85rem;margin:.3rem 0;background:var(--bg-tertiary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.8rem;cursor:grab;transition:all .2s ease;will-change:transform;position:relative}.mapper-field-row:hover{border-color:#7c5cfc4d;background:var(--bg-hover);transform:translateY(-1px);box-shadow:0 2px 12px #0003}.mapper-field-row.mapped{border-color:#34d39940;background:#34d3990a}.mapper-field-row.mapped:hover{border-color:#34d39966;background:#34d39914}.mapper-field-row .field-name{font-family:Fira Code,Cascadia Code,Consolas,monospace;font-weight:500;color:var(--text-primary);flex-shrink:0;font-size:.8rem}.mapper-field-row .field-preview{margin-left:auto;font-size:.7rem;color:var(--text-muted);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Fira Code,Cascadia Code,monospace}.mapper-field-row .mapped-badge{color:var(--success);font-weight:700;flex-shrink:0}.mapper-field-row.drop-zone{cursor:default;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.7rem .85rem;position:relative}.mapper-field-row.drop-zone.mandatory{border-color:#f59e0b38;background:#f59e0b0e}.mapper-field-row.drop-zone.mandatory:hover{border-color:#f59e0b6b;background:#f59e0b17}.mapper-field-row.drop-zone.mandatory.mapped{border-color:#34d39961;background:linear-gradient(180deg,#34d39914,#f59e0b09)}.mapper-field-row.drop-zone .field-info{display:flex;align-items:center;gap:.5rem;width:100%;min-width:0}.mapper-field-row.drop-zone .field-desc{font-size:.7rem;color:var(--text-muted);line-height:1.35}.mapper-field-row.drop-zone .field-info .field-name{min-width:0;overflow-wrap:anywhere;flex:1}.mapper-field-row.drop-zone .field-type-tag{font-size:.6rem;padding:.12rem .4rem;border-radius:4px;background:#ffffff0a;color:var(--text-secondary);text-transform:uppercase;flex-shrink:0;margin-left:auto;letter-spacing:.03em;font-weight:500;border:1px solid var(--glass-border)}.mapper-field-row.drop-zone .field-importance-tag{font-size:.58rem;padding:.12rem .38rem;border-radius:4px;background:#f59e0b24;color:#fbbf24;text-transform:uppercase;flex-shrink:0;letter-spacing:.04em;font-weight:700;border:1px solid rgba(245,158,11,.24)}.mapper-field-row.highlighted{border-color:#7c5cfc80!important;background:#7c5cfc14!important;box-shadow:0 0 0 2px var(--accent-glow),0 4px 16px #7c5cfc26}.mapper-field-row.drop-zone .mapped-sources{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.3rem}.mapped-source-tag{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;padding:.12rem .2rem .12rem .45rem;border-radius:4px;background:#34d3991a;color:var(--success);font-family:Fira Code,Cascadia Code,monospace;font-weight:500;border:1px solid rgba(52,211,153,.15);transition:all .15s ease}.mapped-targets{display:flex;flex-wrap:wrap;gap:.25rem;margin-left:auto}.mapped-target-tag{display:inline-flex;align-items:center;gap:.2rem;font-size:.65rem;padding:.08rem .18rem .08rem .35rem;border-radius:4px;background:#7c5cfc1a;color:var(--accent);font-family:Fira Code,Cascadia Code,monospace;border:1px solid rgba(124,92,252,.15);transition:all .15s ease}.mapped-target-tag.clickable,.mapped-source-tag.clickable{transition:all .15s ease}.mapped-tag-link,.mapped-tag-remove{border:0;background:transparent;color:inherit;font:inherit;line-height:1}.mapped-tag-link{cursor:pointer;padding:.08rem 0;text-align:left}.mapped-tag-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:3px;color:#ffffffc7;cursor:pointer;opacity:.75;transition:background .15s ease,color .15s ease,opacity .15s ease}.mapped-tag-remove:hover{background:#ef44443d;color:#fecaca;opacity:1}.mapped-target-tag.clickable:hover{background:#7c5cfc33;border-color:#7c5cfc66;transform:translateY(-1px)}.mapped-source-tag.clickable:hover{background:#34d39933;border-color:#34d39966;transform:translateY(-1px)}.mapper-field-row.drop-zone .mapped-source{font-size:.75rem;color:var(--success);font-family:Fira Code,Cascadia Code,monospace;font-weight:500}.mapper-field-row.drop-zone .drop-hint{font-size:.7rem;color:var(--text-muted);font-style:italic}.mapper-field-row.drop-zone .drop-hint.active{color:var(--accent);font-weight:500;font-style:normal}.mapper-field-row.drag-over{border-color:#7c5cfc80;background:#7c5cfc14;box-shadow:0 0 0 2px var(--accent-glow),inset 0 0 20px #7c5cfc0d}.unmap-btn{position:absolute;top:.35rem;right:.35rem;width:20px;height:20px;border-radius:50%;border:none;background:var(--gradient-danger);color:#fff;font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s ease;padding:0;line-height:1;box-shadow:0 2px 8px #ef44444d}.unmap-btn:hover{transform:scale(1.15);box-shadow:0 2px 12px #ef444480}.mapper-field-row.drop-zone:hover .unmap-btn,div:hover>.unmap-btn{opacity:1}.drag-overlay-chip{padding:.55rem .85rem;background:var(--gradient-primary);color:#fff;border-radius:var(--radius-sm);font-size:.8rem;font-family:Fira Code,Cascadia Code,monospace;font-weight:500;box-shadow:0 8px 24px #7c5cfc66;pointer-events:none}.field-chip .type-badge{font-size:.65rem;padding:.1rem .3rem;border-radius:4px;background:#07080d99;color:var(--text-muted);border:1px solid var(--glass-border)}.drop-target{border:2px dashed rgba(255,255,255,.08);border-radius:var(--radius);padding:.6rem;min-height:40px;transition:all .2s ease}.drop-target.over{border-color:var(--accent);background:#7c5cfc0d;box-shadow:inset 0 0 20px #7c5cfc0d}.metric{text-align:center;padding:1.5rem 1rem}.metric-value{font-size:2.25rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.metric-label{font-size:.8rem;color:var(--text-muted);margin-top:.4rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.confusion-matrix{display:grid;grid-template-columns:1fr 1fr;gap:3px;max-width:300px;margin:0 auto}.confusion-cell{padding:1.15rem;text-align:center;border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .2s ease;font-weight:600}.confusion-cell:hover{transform:scale(1.03)}.confusion-cell.tp{background:#34d3991f;border:1px solid rgba(52,211,153,.15)}.confusion-cell.fp{background:#f871711f;border:1px solid rgba(248,113,113,.15)}.confusion-cell.fn{background:#fbbf241f;border:1px solid rgba(251,191,36,.15)}.confusion-cell.tn{background:#60a5fa1f;border:1px solid rgba(96,165,250,.15)}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(170deg,#07080d,#0c0e18 40%,#090b14);position:relative}.login-page:before{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(124,92,252,.08) 0%,transparent 70%);border-radius:50%;pointer-events:none}.login-form{background:var(--bg-secondary);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:2.75rem 2.25rem;width:100%;max-width:400px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.login-form:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(124,92,252,.3) 50%,transparent 100%);pointer-events:none}.login-brand{font-size:1.5rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;margin-bottom:.35rem;letter-spacing:-.02em}.login-subtitle{text-align:center;color:var(--text-muted);font-size:.9rem;margin-bottom:1.75rem}.login-btn{width:100%;justify-content:center;margin-top:.75rem;padding:.7rem 1rem;font-size:.9rem}.template-filters{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1.75rem}.filter-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-label{font-size:.8rem;color:var(--text-muted);margin-right:.25rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.template-card{display:flex;flex-direction:column;gap:.85rem}.template-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem}.template-card-header h3{font-size:1rem;font-weight:600;margin:0;letter-spacing:-.01em}.template-description{font-size:.85rem;color:var(--text-secondary);line-height:1.55}.template-meta{display:flex;align-items:center;gap:.6rem}.template-fraud-type{font-size:.8rem;color:var(--text-muted);text-transform:capitalize}.template-tags{display:flex;flex-wrap:wrap;gap:.35rem}.template-actions{display:flex;gap:.5rem;margin-top:.85rem}.badge-difficulty-easy{background:#34d3991a;color:var(--success);border-color:#34d39926}.badge-difficulty-medium{background:#fbbf241a;color:var(--warning);border-color:#fbbf2426}.badge-difficulty-hard{background:#f871711a;color:var(--danger);border-color:#f8717126}.badge-category{background:#7c5cfc1a;color:var(--accent);border-color:#7c5cfc26}.tag-chip{display:inline-block;padding:.15rem .5rem;border-radius:99px;font-size:.7rem;background:#ffffff08;color:var(--text-muted);border:1px solid var(--glass-border);transition:all .15s ease}.tag-chip:hover{border-color:#ffffff1f;color:var(--text-secondary)}.badge-source{font-size:.68rem;padding:.15rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge-source-system{background:#50546826;color:var(--text-muted)}.badge-source-custom{background:#7c5cfc1f;color:var(--accent)}.run-progress{margin-bottom:1.75rem}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.85rem}.progress-title{font-weight:600;font-size:.95rem;letter-spacing:-.01em}.progress-bar-track{width:100%;height:8px;background:#ffffff0a;border-radius:99px;overflow:hidden;margin-bottom:.6rem;border:1px solid var(--glass-border)}.progress-bar-fill{height:100%;border-radius:99px;background:var(--gradient-primary);transition:width .4s cubic-bezier(.4,0,.2,1);position:relative}.progress-bar-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 2s ease infinite}.progress-bar-animated{background:linear-gradient(90deg,#6366f1,#8b5cf6,#a78bfa,#8b5cf6,#6366f1);background-size:300% 100%;animation:progress-shimmer 2s ease infinite}.progress-stats{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary)}.progress-fraud{color:var(--danger);font-weight:500}.progress-status-running{animation:pulse-badge 1.5s ease-in-out infinite}.progress-bar-failed{background:linear-gradient(90deg,#dc2626,#ef4444,#f87171)!important}.replay-live-panel,.replay-control-panel{margin-bottom:1.5rem}.replay-control-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.replay-control-grid{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr)) minmax(220px,auto);gap:.75rem;align-items:end}.replay-control-actions{display:flex;gap:.5rem;justify-content:flex-end;align-items:center;padding-bottom:1.15rem}.replay-live-stats{display:flex;flex-wrap:wrap;gap:.55rem 1rem;color:var(--text-secondary);font-size:.82rem;margin-bottom:.75rem}.replay-live-stats strong{color:var(--text-primary);font-weight:700}.replay-live-empty{padding:.75rem 0;font-size:.85rem}.replay-live-table-wrap{max-height:320px;overflow:auto;border:1px solid var(--glass-border);border-radius:var(--radius-sm)}.replay-live-table{margin:0}.replay-live-table th{position:sticky;top:0;z-index:1}.run-error-box{margin-top:.75rem;padding:.75rem .9rem;border:1px solid rgba(239,68,68,.35);background:#ef444414;border-radius:var(--radius);font-size:.82rem;color:var(--text-primary)}.run-error-header{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.run-error-icon{display:inline-flex;align-items:center;justify-content:center;width:1.4rem;height:1.4rem;min-width:1.4rem;border-radius:50%;background:#ef444440;color:#fca5a5;font-weight:700;font-size:.85rem;flex-shrink:0}.run-error-summary{flex:1;min-width:0;word-break:break-word;font-family:Inter,-apple-system,sans-serif;color:#fecaca}.run-error-toggle{flex-shrink:0;font-size:.72rem!important;padding:.25rem .55rem!important}.run-error-traceback{margin:.6rem 0 0;padding:.75rem;background:#00000059;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm, 4px);font-family:JetBrains Mono,Fira Code,monospace;font-size:.72rem;line-height:1.45;color:#fecaca;max-height:280px;overflow:auto;white-space:pre-wrap;word-break:break-word}.cfb{display:block}.cfb-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:1rem;align-items:stretch;min-height:420px}@media(max-width:900px){.cfb-layout{grid-template-columns:1fr}}.cfb-column{display:flex;flex-direction:column;border:1px solid var(--glass-border);border-radius:var(--radius);background:#0c0e168c;min-height:420px;max-height:720px}.cfb-column-header{padding:.85rem 1rem;border-bottom:1px solid var(--glass-border);background:#ffffff05;flex-shrink:0}.cfb-column-title{margin:0 0 .6rem;font-size:.85rem;font-weight:600;letter-spacing:.02em;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.cfb-count-badge{padding:.1rem .55rem;background:#6366f12e;border:1px solid rgba(99,102,241,.35);color:#c4b5fd;border-radius:99px;font-size:.7rem;font-weight:500}.cfb-empty-hint{margin:0;font-size:.78rem;color:var(--text-muted);line-height:1.5}.cfb-picker-search{width:100%;padding:.45rem .65rem;font-size:.82rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm, 4px);background:#0000004d;color:var(--text-primary);outline:none;font-family:Inter,sans-serif}.cfb-picker-search:focus{border-color:#6366f18c}.cfb-rules-list{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.6rem}.cfb-rule{border:1px solid var(--glass-border);border-radius:var(--radius-sm, 6px);padding:.75rem .85rem;background:#080a108c}.cfb-rule-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.cfb-rule-path{display:flex;align-items:center;gap:.45rem;min-width:0}.cfb-rule-name{font-family:JetBrains Mono,Fira Code,monospace;font-size:.82rem;color:#e9d5ff;font-weight:600;word-break:break-word}.cfb-rule-type{font-size:.66rem;padding:.08rem .4rem;border-radius:99px;background:#7c5cfc26;color:#c4b5fd;text-transform:lowercase;letter-spacing:.02em}.cfb-rule-actions{display:flex;gap:.4rem;align-items:center}.cfb-strategy-select{min-width:120px;padding:.3rem .55rem!important;font-size:.78rem!important}.cfb-rule-remove{width:1.7rem;height:1.7rem;border-radius:50%;border:1px solid rgba(239,68,68,.3);background:#ef444414;color:#fca5a5;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;flex-shrink:0;transition:all .12s ease}.cfb-rule-remove:hover{background:#ef444433;border-color:#ef444480;color:#fff}.cfb-rule-desc{margin-top:.35rem;font-size:.72rem;color:var(--text-muted);line-height:1.4}.cfb-rule-body{margin-top:.6rem}.cfb-strategy-editor{display:flex;flex-direction:column;gap:.35rem}.cfb-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.cfb-grid-3{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:.5rem}.cfb-field-label{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.15rem;display:block}.cfb-strategy-help{font-size:.75rem;color:var(--text-muted);margin:0;font-style:italic}.cfb-picker-groups{flex:1;overflow-y:auto;padding:.5rem .6rem .75rem}.cfb-picker-group{margin-bottom:.75rem}.cfb-picker-group:last-child{margin-bottom:0}.cfb-picker-group-header{display:flex;align-items:center;gap:.5rem;padding:.35rem .25rem;position:sticky;top:0;background:#0c0e16e0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1;border-bottom:1px solid var(--glass-border);margin-bottom:.4rem}.cfb-picker-group-name{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#c4b5fd;font-weight:600}.cfb-picker-group-count{font-size:.68rem;padding:.05rem .45rem;border-radius:99px;background:#ffffff0a;color:var(--text-muted)}.cfb-picker-group-fields{display:flex;flex-direction:column;gap:.25rem}.cfb-picker-chip{display:flex;align-items:center;gap:.5rem;width:100%;padding:.35rem .6rem;font-size:.78rem;background:#6366f10f;border:1px solid rgba(99,102,241,.2);border-radius:6px;cursor:pointer;font-family:JetBrains Mono,Fira Code,monospace;transition:all .12s ease;text-align:left;color:var(--text-primary)}.cfb-picker-chip:hover{background:#6366f12e;border-color:#6366f180;transform:translate(2px)}.cfb-picker-chip-plus{color:#a78bfa;font-weight:700;font-size:.9rem;width:1rem;text-align:center;flex-shrink:0}.cfb-picker-chip-name{flex:1;color:#e9d5ff;word-break:break-all}.cfb-picker-chip-type{font-size:.62rem;padding:.05rem .4rem;border-radius:99px;background:#00000059;color:var(--text-muted);font-family:Inter,sans-serif;flex-shrink:0}.scenario-builder{border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.25rem;background:#07080d66;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sb-section{margin-bottom:1.5rem}.sb-section:last-child{margin-bottom:0}.sb-section-title{font-size:.78rem;font-weight:600;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.85rem;padding-bottom:.5rem;border-bottom:1px solid var(--glass-border)}.sb-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.15rem}.sb-control{margin-bottom:.35rem}.sb-label{display:block;font-size:.78rem;color:var(--text-secondary);margin-bottom:.35rem;font-weight:500}.sb-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.sb-value{font-size:.8rem;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}.sb-suffix{font-size:.78rem;color:var(--text-muted);margin-left:.35rem}.sb-number-row{display:flex;align-items:center;gap:.35rem}.sb-number-input{width:100px;text-align:center;padding:.4rem .5rem;font-variant-numeric:tabular-nums;font-weight:500}.sb-step-btn{min-width:30px;padding:.35rem;font-size:.9rem;font-weight:700;text-align:center;border-radius:var(--radius-sm)}.sb-dice-btn{padding:.35rem .7rem;font-size:.75rem}.sb-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:99px;background:#ffffff0f;border:none;outline:none;cursor:pointer;padding:0;transition:background .2s ease}.sb-slider:hover{background:#ffffff1a}.sb-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--gradient-primary);cursor:pointer;border:2px solid var(--bg-primary);box-shadow:0 0 8px var(--accent-glow);transition:box-shadow .2s ease,transform .15s ease}.sb-slider::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 16px var(--accent-glow)}.sb-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid var(--bg-primary);box-shadow:0 0 8px var(--accent-glow)}.sb-slider::-moz-range-track{height:6px;border-radius:99px;background:#ffffff0f;border:none}.sb-slider:focus{outline:none}.sb-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--accent-glow),0 0 12px var(--accent-glow)}.sb-dual-slider{display:flex;flex-direction:column;gap:.5rem}.sb-checkbox-row label{display:flex;align-items:center;gap:.6rem;cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:color .15s ease}.sb-checkbox-row label:hover{color:var(--text-primary)}.sb-checkbox-row input[type=checkbox]{width:auto;accent-color:var(--accent)}.sb-radio-group{display:flex;gap:.35rem;flex-wrap:wrap}.sb-radio-option{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.8rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sb-radio-option:hover{border-color:#ffffff1f;color:var(--text-primary);background:#ffffff08}.sb-radio-option.active{border-color:#7c5cfc66;color:var(--accent);background:#7c5cfc14;box-shadow:0 0 0 1px #7c5cfc26}.sb-radio-option input[type=radio]{display:none}.sb-country-selector{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.sb-country-chip{display:inline-block;padding:.25rem .55rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-secondary);background:var(--bg-tertiary);cursor:pointer;transition:all .2s ease}.sb-country-chip:hover{border-color:#ffffff1f;color:var(--text-primary)}.sb-country-chip.active{border-color:#7c5cfc66;color:var(--accent);background:#7c5cfc14}.sb-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.sb-toggle-btn{font-size:.75rem;padding:.3rem .7rem}.sb-toggle-btn.active{border-color:#7c5cfc66;color:var(--accent);background:#7c5cfc14}.sb-select{width:100%;padding:.45rem 1.8rem .45rem .7rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#07080d99;color:var(--text-primary);font-size:.85rem;transition:border-color .2s ease,box-shadow .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b8fa3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center}.sb-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.sb-text-input{width:100%;padding:.45rem .7rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#07080d99;color:var(--text-primary);font-size:.85rem;transition:border-color .2s ease,box-shadow .2s ease}.sb-text-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.sb-raw-json{width:100%;padding:.85rem;border:1px solid var(--glass-border);border-radius:var(--radius);background:#07080d99;color:var(--text-primary);font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem;resize:vertical;min-height:200px;line-height:1.6;transition:border-color .2s ease,box-shadow .2s ease}.sb-raw-json:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.sb-help-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1px solid var(--glass-border);background:transparent;color:var(--text-muted);font-size:.7rem;font-weight:700;cursor:pointer;flex-shrink:0;margin-left:.5rem;transition:all .2s ease}.sb-help-btn:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.sb-help-text{font-size:.75rem;color:var(--text-muted);line-height:1.45;margin-top:.4rem;padding:.5rem .7rem;background:#07080d80;border-radius:var(--radius-sm);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sb-info-panel{background:var(--bg-secondary);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow);position:relative;overflow:hidden}.sb-info-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 30%,rgba(255,255,255,.06) 70%,transparent 100%);pointer-events:none}.sb-info-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.6rem}.sb-info-title{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem;letter-spacing:-.01em}.sb-risk-badge{font-size:.72rem;font-weight:700;letter-spacing:.05em;margin-right:.5rem}.sb-mitre-badge{font-size:.7rem;background:#7c5cfc1a;color:var(--accent);padding:.18rem .55rem;border-radius:4px;font-family:Fira Code,Cascadia Code,monospace;border:1px solid rgba(124,92,252,.15)}.sb-info-desc{color:var(--text-secondary);font-size:.875rem;line-height:1.6}.sb-info-expanded{margin-top:1.15rem;border-top:1px solid var(--glass-border);padding-top:1.15rem}.sb-info-section{margin-bottom:1.15rem}.sb-info-section:last-child{margin-bottom:0}.sb-info-section h5{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:.45rem}.sb-info-section p{color:var(--text-secondary);font-size:.8rem;line-height:1.55}.sb-info-section ul{list-style:none;padding-left:0;color:var(--text-secondary);font-size:.8rem}.sb-info-section li{margin-bottom:.3rem;line-height:1.45;padding-left:1rem;position:relative}.sb-info-section li:before{content:"";position:absolute;left:0;top:.55em;width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:.6}tr.diff-improved td{background:#34d3990a;border-left:2px solid rgba(52,211,153,.3)}tr.diff-regressed td{background:#f871710a;border-left:2px solid rgba(248,113,113,.3)}.latency-chart{padding:.75rem 0}.latency-row{display:flex;align-items:center;gap:1rem;margin-bottom:.85rem}.latency-label{width:40px;font-size:.85rem;font-weight:600;color:var(--text-secondary);text-align:right;flex-shrink:0}.latency-bars{flex:1}.latency-bar-pair{display:flex;flex-direction:column;gap:4px}.latency-bar-wrapper{display:flex;align-items:center;gap:.5rem}.latency-bar{height:16px;border-radius:4px;min-width:4px;transition:width .4s cubic-bezier(.4,0,.2,1)}.latency-bar.bar-a{background:var(--gradient-primary)}.latency-bar.bar-b{background:#ffffff1a}.latency-bar.bar-b.improved{background:var(--gradient-success)}.latency-bar.bar-b.regressed{background:var(--gradient-danger)}.latency-bar-value{font-size:.75rem;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.latency-legend{display:flex;gap:1.75rem;justify-content:center;margin-top:.75rem;font-size:.8rem;color:var(--text-secondary)}.latency-legend-item{display:flex;align-items:center;gap:.4rem}.legend-swatch{display:inline-block;width:12px;height:12px;border-radius:3px}.legend-swatch.bar-a{background:var(--gradient-primary)}.legend-swatch.bar-b{background:#ffffff1a}.settings-active-banner{border-left:3px solid transparent;border-image:var(--gradient-primary) 1}.settings-provider-list{display:flex;flex-direction:column;gap:.85rem}.settings-provider-card{padding:0;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.settings-provider-card.settings-provider-active{border-color:#7c5cfc4d;box-shadow:0 0 0 1px #7c5cfc26,0 0 20px #7c5cfc14}.settings-provider-header{display:flex;justify-content:space-between;align-items:center;padding:.95rem 1.15rem;cursor:pointer;transition:background .2s ease}.settings-provider-header:hover{background:#ffffff05}.settings-provider-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);background:#07080d99;border:1px solid var(--glass-border);font-weight:700;font-size:.85rem;color:var(--accent);flex-shrink:0}.settings-key-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 6px #34d39966}.settings-expand-icon{font-size:.65rem;color:var(--text-muted);margin-left:.25rem;transition:transform .2s ease}.settings-provider-body{padding:0 1.15rem 1.15rem;border-top:1px solid var(--glass-border)}.settings-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;padding-top:1.15rem}.settings-provider-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.15rem;padding-top:.85rem;border-top:1px solid var(--glass-border)}.settings-toggle-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary);cursor:pointer;transition:color .15s ease}.settings-toggle-label:hover{color:var(--text-primary)}.settings-toggle-label input[type=checkbox]{width:auto;accent-color:var(--accent)}.settings-test-result{display:flex;align-items:center;gap:.5rem;margin-top:.85rem;padding:.55rem .85rem;border-radius:var(--radius-sm);font-size:.8rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.settings-test-result.success{background:#34d39914;color:var(--success);border:1px solid rgba(52,211,153,.2)}.settings-test-result.failure{background:#f8717114;color:var(--danger);border:1px solid rgba(248,113,113,.2)}.settings-test-icon{font-size:1rem;font-weight:700}.badge-ai-active,.badge-ai-source{background:#7c5cfc1a;color:var(--accent);border-color:#7c5cfc26}.badge-heuristic-source{background:#fbbf241a;color:var(--warning);border-color:#fbbf2426}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .2s ease}.modal-content{background:#0e101aeb;-webkit-backdrop-filter:blur(24px) saturate(1.4);backdrop-filter:blur(24px) saturate(1.4);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.75rem;width:90%;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:0 24px 64px #0009,0 0 0 1px #ffffff0a;position:relative}.modal-content:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(124,92,252,.25) 50%,transparent 100%);pointer-events:none}.modal-content h3{margin-bottom:1.15rem;font-size:1.15rem;font-weight:600;letter-spacing:-.01em}@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.sidebar{background:#0a0c14f7}.card,.mapper-panel-scroll,.sb-info-panel{background:#0e101af2}.login-form,.modal-content{background:#0e101af7}.btn{background:#161826e6}.btn-primary{background:var(--accent)}}@media(max-width:1024px){.template-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.sidebar{width:64px;padding:.75rem 0}.sidebar-brand{font-size:0;padding:.6rem;text-align:center}.sidebar-brand:before{content:"FS";font-size:.85rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.sidebar-nav{padding:0 .4rem}.sidebar-nav a,.nav-disabled{font-size:0;padding:.6rem;justify-content:center;min-height:36px}.nav-copy,.sidebar-section-label,.sidebar-brand small,.workflow-nav:before{display:none}.sidebar-nav a.active:before{display:none}.sidebar-footer{padding:.6rem}.sidebar-user{font-size:0;height:0;padding:0;overflow:hidden}.main-content{padding:1.25rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.mapper-layout{grid-template-columns:1fr;height:auto}.mapper-scenario-filter{grid-template-columns:1fr}.mapper-scenario-badge{justify-self:start}.mapper-panel-scroll{min-height:300px}.template-grid,.sb-grid,.settings-form-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:.75rem}}@media(max-width:480px){.main-content{padding:1rem .75rem}.card{padding:1rem;border-radius:var(--radius)}.modal-content{padding:1.25rem;margin:.5rem;width:calc(100% - 1rem)}}.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:5px;background:#ffffff0a;border:1px solid var(--glass-border);font-size:.65rem;font-weight:700;color:var(--text-muted);flex-shrink:0;transition:all .2s ease}.sidebar-nav a.active .nav-icon{background:#7c5cfc26;border-color:#7c5cfc40;color:var(--accent)}.sidebar-nav a:hover .nav-icon{color:var(--text-secondary);border-color:#ffffff1a}.dashboard{animation:fadeIn .5s ease}.dashboard-hero{text-align:center;padding:3rem 2rem 2.5rem;position:relative;overflow:hidden;margin-bottom:2rem}.dashboard-hero-glow{position:absolute;top:-60px;left:50%;transform:translate(-50%);width:500px;height:300px;background:radial-gradient(ellipse,rgba(124,92,252,.08) 0%,rgba(99,102,241,.04) 40%,transparent 70%);pointer-events:none;z-index:0}.dashboard-hero-title{font-size:2.5rem;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.03em;margin-bottom:.6rem;position:relative;z-index:1}.dashboard-hero-tagline{font-size:1.05rem;color:var(--text-secondary);max-width:520px;margin:0 auto 1.25rem;line-height:1.6;position:relative;z-index:1}.dashboard-health-bar{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;border-radius:99px;background:#ffffff08;border:1px solid var(--glass-border);font-size:.78rem;color:var(--text-muted);position:relative;z-index:1}.health-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.health-dot.ok{background:var(--success);box-shadow:0 0 6px #34d39980}.health-dot.err{background:var(--danger);box-shadow:0 0 6px #f8717180}.health-label{color:var(--text-secondary)}.health-version{color:var(--text-muted);font-family:Fira Code,Cascadia Code,monospace;font-size:.72rem}.dashboard-section-title{font-size:1.15rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.6rem}.dashboard-section-subtitle{font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem}.dashboard-wizard-section{margin-bottom:2.5rem}.wizard-steps{display:flex;flex-direction:column;gap:0;position:relative}.wizard-step{display:flex;gap:1rem;position:relative;padding-bottom:1.5rem}.wizard-step:last-child{padding-bottom:0}.wizard-step-indicator{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.85rem;font-weight:700;background:var(--bg-tertiary);border:2px solid var(--glass-border);color:var(--text-muted);transition:all .3s ease;position:relative;z-index:2}.wizard-step-indicator.done{background:var(--gradient-success);border-color:transparent;color:#fff;box-shadow:0 0 12px #34d3994d}.wizard-connector{position:absolute;left:17px;top:36px;width:2px;bottom:0;background:var(--glass-border);z-index:1}.wizard-step--done .wizard-connector{background:linear-gradient(180deg,var(--success),var(--glass-border))}.wizard-step-body{flex:1;padding-top:.25rem}.wizard-step-title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.wizard-step-desc{font-size:.82rem;color:var(--text-secondary);line-height:1.55;margin-bottom:.5rem}.wizard-step-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;color:var(--accent);transition:gap .2s ease}.wizard-step-link:hover{gap:.6rem;color:var(--accent-hover)}.dashboard-stats-section{margin-bottom:2rem}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.stat-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;transition:transform .2s ease,border-color .25s ease,box-shadow .25s ease}.stat-card:hover{transform:translateY(-2px);border-color:#ffffff1a}.stat-card-icon{width:44px;height:44px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#7c5cfc1a;color:var(--accent)}.stat-card-content{display:flex;flex-direction:column;min-width:0}.stat-card-value{font-size:1.65rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);line-height:1.2;font-variant-numeric:tabular-nums}.stat-card-label{font-size:.78rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-top:.15rem}.stat-card-sub{font-size:.75rem;color:var(--text-muted);margin-top:.2rem}.dashboard-actions{display:flex;gap:.75rem;margin-bottom:2rem;flex-wrap:wrap}.dashboard-actions .btn{gap:.5rem}.dashboard-actions .btn svg{width:16px;height:16px}.dashboard-recent{margin-bottom:2rem}.text-fraud{color:var(--danger);font-weight:500}.text-legit{color:var(--success);font-weight:500}@media(max-width:1024px){.dashboard-stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.dashboard-hero-title{font-size:1.75rem}.dashboard-hero-tagline{font-size:.9rem}.dashboard-stats-grid{grid-template-columns:1fr}.dashboard-actions{flex-direction:column}}@media(max-width:480px){.dashboard-hero{padding:2rem 1rem 1.5rem}}.tb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;z-index:200;overflow-y:auto;padding:2rem 1rem;animation:fadeIn .25s ease}.tb-container{width:100%;max-width:800px;background:#0a0c14f2;-webkit-backdrop-filter:blur(32px) saturate(1.6);backdrop-filter:blur(32px) saturate(1.6);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:0 32px 80px #0009,0 0 0 1px #ffffff0a;position:relative;overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 4rem)}.tb-container:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--gradient-primary);pointer-events:none;z-index:1}.tb-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;border-bottom:1px solid var(--glass-border);flex-shrink:0;background:#ffffff04}.tb-title{font-size:1.15rem;font-weight:700;letter-spacing:-.02em;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.tb-subtitle{font-size:.82rem;color:var(--text-muted);margin:.35rem 0 0}.tb-inline-value{font-family:JetBrains Mono,monospace;font-size:.85rem;color:#c4b5fd;margin-left:.5rem;font-weight:600}.tb-slider-hint{font-size:.72rem;color:var(--text-muted);margin-top:.3rem;line-height:1.4}.tb-field-count-badge{margin-left:.6rem;padding:.15rem .55rem;background:#6366f12e;border:1px solid rgba(99,102,241,.35);color:#c4b5fd;border-radius:99px;font-size:.7rem;font-weight:500;letter-spacing:.02em}.tb-preview-json{margin:0;padding:1rem;background:#00000073;border:1px solid var(--glass-border);border-radius:var(--radius);font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem;line-height:1.55;color:#e9d5ff;max-height:360px;overflow:auto;white-space:pre-wrap}.tb-tags-input{display:flex;flex-wrap:wrap;gap:.35rem;padding:.4rem .5rem;border:1px solid var(--glass-border);border-radius:var(--radius);background:#0c0e168c;align-items:center;min-height:2.3rem}.tb-tags-input input{flex:1;min-width:120px;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:.85rem;padding:.25rem .3rem}.tag-remove{background:none;border:none;color:inherit;cursor:pointer;margin-left:.3rem;font-size:1rem;line-height:1;padding:0;opacity:.6}.tag-remove:hover{opacity:1}.tp-hint-box{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;margin-bottom:1.25rem;background:#6366f114;border:1px solid rgba(99,102,241,.25);border-radius:var(--radius);font-size:.82rem;color:var(--text-secondary)}.tp-hint-icon{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;min-width:1.5rem;background:#6366f140;border-radius:50%;color:#c4b5fd;font-weight:700;font-style:italic;flex-shrink:0}.tp-hint-text{flex:1;line-height:1.55}.tp-hint-text em{font-style:normal;font-weight:600;color:var(--text-primary);padding:0 .2rem}.tp-hint-text strong{color:var(--text-primary)}.tb-legacy-warning{display:flex;align-items:flex-start;gap:.8rem;padding:.85rem 1rem;margin-bottom:1rem;background:#f59e0b14;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius);font-size:.82rem;color:var(--text-primary)}.tb-legacy-icon{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;min-width:1.6rem;background:#f59e0b38;color:#fbbf24;border-radius:50%;font-weight:700;flex-shrink:0}.tb-legacy-text{flex:1;line-height:1.5}.tb-legacy-text code{font-family:JetBrains Mono,monospace;font-size:.78rem;padding:.1rem .35rem;background:#0006;border-radius:4px;color:#fbbf24}.logs-page{display:flex;flex-direction:column;height:calc(100vh - 7rem)}.logs-status-pill{margin-left:.8rem;font-size:.7rem;font-weight:600;letter-spacing:.08em;padding:.18rem .55rem;border-radius:99px;border:1px solid;vertical-align:middle;font-family:JetBrains Mono,monospace}.logs-filter-bar{display:flex;align-items:center;gap:.5rem;padding:.7rem .85rem;background:#0c0e1699;border:1px solid var(--glass-border);border-radius:var(--radius);margin-bottom:.75rem;flex-wrap:wrap}.logs-level-pills{display:flex;gap:.25rem}.logs-level-pill{padding:.28rem .6rem;font-size:.72rem;font-weight:600;letter-spacing:.05em;border-radius:99px;border:1px solid var(--glass-border);background:#ffffff05;color:var(--text-secondary);cursor:pointer;font-family:JetBrains Mono,monospace;transition:all .12s ease}.logs-level-pill:hover{background:#ffffff0d}.logs-level-pill.active{background:#6366f126;border-color:#6366f166;color:var(--text-primary)}.logs-filter-input{flex:1;min-width:150px;padding:.38rem .6rem;font-size:.82rem;border:1px solid var(--glass-border);border-radius:4px;background:#0000004d;color:var(--text-primary);outline:none;font-family:Inter,sans-serif}.logs-filter-input:focus{border-color:#6366f18c}.logs-checkbox{display:flex;align-items:center;gap:.35rem;font-size:.78rem;color:var(--text-secondary);white-space:nowrap;cursor:pointer}.logs-meta{font-size:.75rem;color:var(--text-muted);white-space:nowrap;margin-left:auto}.logs-meta strong{color:var(--text-primary)}.logs-viewer{flex:1;overflow-y:auto;padding:.5rem 0;background:#00000073;border:1px solid var(--glass-border);border-radius:var(--radius);font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.76rem;line-height:1.55;min-height:400px}.logs-empty{padding:2rem;text-align:center;color:var(--text-muted);font-family:Inter,sans-serif}.logs-row{display:grid;grid-template-columns:115px 85px 180px 1fr;gap:.75rem;padding:.2rem .85rem;border-left:3px solid transparent;transition:background 80ms ease}.logs-row:hover{background:#6366f10a;border-left-color:#6366f166}.logs-ts{color:var(--text-muted);white-space:nowrap}.logs-level{font-size:.68rem;font-weight:700;letter-spacing:.06em;padding:.1rem .45rem;border:1px solid;border-radius:4px;text-align:center;align-self:center;width:fit-content;height:fit-content}.logs-logger{color:#a78bfa;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logs-message{color:var(--text-primary);word-break:break-word;white-space:pre-wrap;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.logs-run-hint{font-size:.68rem;padding:.1rem .45rem;background:#6366f11f;color:#c4b5fd;border:1px solid rgba(99,102,241,.3);border-radius:99px;font-family:JetBrains Mono,monospace}.logs-extras-hint{font-size:.68rem;color:var(--text-muted);font-style:italic;margin-left:auto}.logs-extras{grid-column:4;margin:.3rem 0;padding:.55rem .7rem;background:#00000080;border:1px solid var(--glass-border);border-radius:4px;font-size:.72rem;color:#e9d5ff;white-space:pre-wrap;max-height:240px;overflow:auto}.runs-filter-bar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.runs-status-pills{display:flex;gap:.25rem;flex-wrap:wrap}.run-confirm-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,1.4fr);gap:.75rem;margin-bottom:1rem}.run-confirm-grid>div,.run-readiness-panel{padding:.75rem .9rem;border:1px solid var(--glass-border);border-radius:var(--radius);background:#ffffff06}.run-confirm-grid span{display:block;margin-bottom:.25rem;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.run-confirm-grid strong{display:block;color:var(--text-primary);font-size:.86rem;line-height:1.45;word-break:break-word}.run-readiness-panel{margin-bottom:1rem}.run-readiness-panel.ready{border-color:#34d3993d;background:#34d3990f}.run-readiness-panel.blocked{border-color:#fbbf243d;background:#fbbf240f}.run-readiness-panel strong{display:block;margin-bottom:.45rem;color:var(--text-primary)}.run-readiness-panel ul{margin:0;padding-left:1rem;color:var(--text-secondary);font-size:.8rem;line-height:1.45}.tb-close-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--glass-border);background:var(--bg-tertiary);color:var(--text-secondary);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;line-height:1}.tb-close-btn:hover{background:var(--danger);border-color:var(--danger);color:#fff;transform:scale(1.1)}.tb-body{padding:0 1.75rem 1.5rem;overflow-y:auto;flex:1}.tb-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.75rem;border-top:1px solid var(--glass-border);flex-shrink:0;background:#ffffff04}.tb-step{margin-top:1.5rem}.tb-step-header{display:flex;align-items:center;gap:.65rem;margin-bottom:1rem}.tb-step-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--gradient-primary);color:#fff;font-size:.8rem;font-weight:700;flex-shrink:0;box-shadow:0 2px 10px var(--accent-glow)}.tb-step-label{font-size:.95rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.tb-step-content{padding-left:.5rem}.tb-row-2col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.tb-scenario-info{background:#07080d80;border:1px solid var(--glass-border);border-radius:var(--radius);padding:1.15rem 1.25rem;margin-top:1rem;position:relative}.tb-scenario-info:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.04),transparent);pointer-events:none}.tb-scenario-info-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.tb-scenario-info-title{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem;letter-spacing:-.01em}.tb-scenario-info-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.6;margin:0}.tb-scenario-badges{display:flex;gap:.4rem;flex-shrink:0}.tb-scenario-expand{display:inline-block;margin-top:.85rem;background:none;border:none;padding:0;color:var(--accent);font-size:.8rem;font-weight:500;cursor:pointer;transition:color .15s ease;font-family:inherit}.tb-scenario-expand:hover{color:var(--accent-hover)}.tb-scenario-expanded{margin-top:1rem;border-top:1px solid var(--glass-border);padding-top:1rem}.tb-scenario-section{margin-bottom:1rem}.tb-scenario-section:last-child{margin-bottom:0}.tb-scenario-section h5{font-size:.82rem;font-weight:600;color:var(--text-primary);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.03em}.tb-scenario-section p{color:var(--text-secondary);font-size:.82rem;line-height:1.55;margin:0}.tb-scenario-section ul{list-style:none;padding:0;margin:0}.tb-scenario-section li{color:var(--text-secondary);font-size:.8rem;line-height:1.5;padding-left:1rem;margin-bottom:.25rem;position:relative}.tb-scenario-section li:before{content:"";position:absolute;left:0;top:.55em;width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:.6}.tb-param-group{margin-bottom:1.25rem;border:1px solid var(--glass-border);border-radius:var(--radius);overflow:hidden;background:#07080d4d}.tb-param-group-header{display:flex;justify-content:space-between;align-items:center;padding:.65rem 1rem;background:#ffffff05;border-bottom:1px solid var(--glass-border);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.tb-param-group-count{font-size:.7rem;font-weight:500;color:var(--text-muted);text-transform:none;letter-spacing:0}.tb-param-row{padding:.85rem 1rem;border-bottom:1px solid rgba(255,255,255,.03);transition:background .15s ease}.tb-param-row:last-child{border-bottom:none}.tb-param-row:hover{background:#ffffff04}.tb-param-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.45rem}.tb-param-label{font-size:.85rem;font-weight:500;color:var(--text-primary)}.tb-param-control{margin-bottom:0}.tb-param-help{font-size:.78rem;color:var(--text-muted);line-height:1.5;margin-top:.45rem;padding:.55rem .75rem;background:#07080d80;border-radius:var(--radius-sm);border:1px solid var(--glass-border);animation:fadeIn .2s ease}.tb-param-range{display:block;margin-top:.25rem;font-size:.72rem;color:var(--accent);opacity:.7}.tb-slider-wrap{display:flex;align-items:center;gap:.75rem}.tb-slider-wrap .sb-slider{flex:1}.tb-slider-value{font-size:.85rem;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums;min-width:60px;text-align:right;white-space:nowrap}.tb-number-wrap{display:flex;align-items:center;gap:.5rem}.tb-number-input{width:120px;padding:.45rem .7rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#07080d99;color:var(--text-primary);font-size:.85rem;font-variant-numeric:tabular-nums;font-weight:500;transition:border-color .2s ease,box-shadow .2s ease}.tb-number-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.tb-unit-label{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.tb-checkbox-label{display:flex;align-items:center;gap:.6rem;cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:color .15s ease}.tb-checkbox-label:hover{color:var(--text-primary)}.tb-checkbox-label input[type=checkbox]{width:auto;accent-color:var(--accent);cursor:pointer}.tb-preview{background:#07080db3;border:1px solid var(--glass-border);border-radius:var(--radius);padding:1rem 1.15rem;font-family:Fira Code,Cascadia Code,Consolas,monospace;font-size:.78rem;line-height:1.65;color:var(--text-secondary);max-height:250px;overflow-y:auto;white-space:pre-wrap;word-break:break-all;margin:0}.tb-tag-input{display:flex;flex-direction:column;gap:.5rem}.tb-tag-chips{display:flex;flex-wrap:wrap;gap:.35rem}.tb-tag-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:99px;font-size:.75rem;background:#7c5cfc1a;color:var(--accent);border:1px solid rgba(124,92,252,.2)}.tb-tag-remove{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.7rem;padding:0;line-height:1;opacity:.6;transition:opacity .15s ease}.tb-tag-remove:hover{opacity:1;color:var(--danger)}.tb-tag-add{display:flex;gap:.5rem}.tb-tag-add .sb-text-input{flex:1}.tp-search-bar{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.tp-search-input-wrap{position:relative;flex:1}.tp-search-input{width:100%;padding:.6rem 2rem .6rem .85rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#07080d99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-primary);font-size:.875rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.tp-search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.tp-search-input::placeholder{color:var(--text-muted)}.tp-search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;border:none;background:var(--bg-hover);color:var(--text-secondary);font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s ease}.tp-search-clear:hover{background:var(--danger);color:#fff}.tp-sort-wrap{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.tp-sort-label{font-size:.8rem;color:var(--text-muted);font-weight:500}.tp-sort-select{width:140px}.tp-fraud-type-pills{overflow-x:auto;flex-wrap:wrap!important;padding-bottom:.25rem;gap:.35rem!important}.tp-fraud-type-pills::-webkit-scrollbar{height:3px}.tp-result-count{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;font-size:.8rem;color:var(--text-muted)}.tp-clear-filters{background:none;border:none;color:var(--accent);font-size:.78rem;font-weight:500;cursor:pointer;padding:0;font-family:inherit;transition:color .15s ease}.tp-clear-filters:hover{color:var(--accent-hover)}.tp-fraud-type-label{font-size:.78rem;color:var(--text-muted);text-transform:capitalize}.tp-sub-scenario-label{font-size:.72rem;color:var(--text-muted);opacity:.7}.page-subtitle{margin:.25rem 0 0;color:var(--text-muted);font-size:.9rem}.canonical-manager{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(480px,1.55fr);gap:1rem;align-items:start}.canonical-form-panel,.canonical-list-panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow)}.canonical-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.canonical-panel-header h2{margin:0;font-size:1rem}.canonical-panel-header span{display:block;margin-top:.25rem;color:var(--text-muted);font-size:.82rem}.canonical-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.canonical-span-2{grid-column:1 / -1}.canonical-settings-editor{min-height:180px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.82rem;line-height:1.5;resize:vertical}.canonical-form-actions{display:flex;justify-content:flex-end;gap:.5rem}.canonical-error{color:var(--danger);border:1px solid rgba(239,68,68,.35);background:#ef444414;border-radius:var(--radius);padding:.65rem .75rem;font-size:.85rem}.canonical-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 160px 140px;gap:.6rem;margin-bottom:.75rem}.canonical-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:var(--radius)}.canonical-table{margin:0}.canonical-table th,.canonical-table td{vertical-align:top}.canonical-field-name{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.84rem;color:var(--text-primary)}.canonical-field-desc{margin-top:.25rem;color:var(--text-muted);font-size:.78rem;line-height:1.35;max-width:520px}.canonical-pill,.canonical-mutation,.canonical-source{display:inline-flex;align-items:center;min-height:22px;padding:.12rem .48rem;border-radius:999px;font-size:.72rem;line-height:1;border:1px solid var(--border);color:var(--text-secondary);background:#ffffff08}.canonical-mutation{color:#bae6fd;border-color:#0ea5e959;background:#0ea5e91a}.canonical-source-custom{color:#bbf7d0;border-color:#22c55e59;background:#22c55e1a}.canonical-source-system{color:#fde68a;border-color:#f59e0b59;background:#f59e0b1a}.canonical-actions{display:flex;gap:.4rem;flex-wrap:wrap}.canonical-readonly,.canonical-empty{color:var(--text-muted);font-size:.82rem}@media(max-width:768px){.workflow-steps,.run-confirm-grid{grid-template-columns:1fr}.workflow-context-row{align-items:flex-start;flex-direction:column}.tb-overlay{padding:1rem .5rem}.tb-container{max-height:calc(100vh - 2rem)}.tb-header,.tb-body,.tb-footer{padding-left:1rem;padding-right:1rem}.tb-row-2col{grid-template-columns:1fr}.tp-search-bar{flex-direction:column;align-items:stretch}.tp-sort-wrap{justify-content:flex-end}.canonical-manager,.canonical-form-grid,.canonical-toolbar{grid-template-columns:1fr}.canonical-span-2{grid-column:auto}}@media(max-width:480px){.tb-container{border-radius:var(--radius)}}
