:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--background:#f7f7f8;--foreground:#0c0c0d;--card:#fff;--card-foreground:#0c0c0d;--popover:#fff;--secondary:#f1f1f2;--secondary-foreground:#0c0c0d;--muted:#f1f1f2;--muted-foreground:#71717a;--subtle-foreground:#9b9ba4;--border:#e7e7ea;--input:#dededf;--ring:#f4531d59;--primary:#f4531d;--primary-hover:#dd4715;--primary-foreground:#fff;--primary-soft:#f4531d1a;--primary-soft-strong:#f4531d29;--sidebar:#fff;--sidebar-foreground:#0c0c0d;--sidebar-muted:#71717a;--sidebar-accent:#f1f1f2;--sidebar-hover:#f5f5f6;--sidebar-border:#e7e7ea;--success:#16a34a;--success-soft:#16a34a1a;--info:#2563eb;--info-soft:#2563eb1a;--warning:#d97706;--warning-soft:#d977061f;--destructive:#dc2626;--destructive-hover:#b91c1c;--destructive-soft:#dc26261a;--destructive-border:#dc262647;--star:#f5b544;--radius-sm:8px;--radius:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-sm:0 1px 2px #09090b0d;--shadow:0 4px 16px #09090b0f;--shadow-lg:0 20px 50px #09090b24;--shadow-sidebar-item:0 1px 2px #09090b0f;--glass:#ffffffc7;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--sb-w:264px;--sb-w-collapsed:80px;--topbar-h:64px;--bg:var(--background);--surface:var(--card);--surface-2:var(--secondary);--surface-3:var(--muted);--border-2:var(--input);--text:var(--foreground);--text-2:var(--muted-foreground);--text-3:var(--subtle-foreground);--sb:var(--sidebar);--sb-2:var(--sidebar-accent);--sb-hover:var(--sidebar-hover);--sb-active:var(--sidebar-accent);--sb-text:var(--sidebar-muted);--sb-heading:var(--sidebar-foreground);--sb-text-active:var(--primary);--sb-border:var(--sidebar-border);--primary-2:var(--primary-hover);--primary-text:var(--primary-foreground);--accent:var(--primary);--accent-2:var(--primary-hover);--accent-soft:var(--primary-soft);--accent-ring:var(--ring);--danger:var(--destructive);--danger-2:var(--destructive-hover);--danger-soft:var(--destructive-soft);--danger-border:var(--destructive-border);--ok:var(--success);--ok-soft:var(--success-soft)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0a0a0a;--foreground:#fafafa;--card:#131313;--card-foreground:#fafafa;--popover:#171717;--secondary:#1c1c1c;--secondary-foreground:#fafafa;--muted:#1c1c1c;--muted-foreground:#a1a1aa;--subtle-foreground:#7c7c85;--border:#232323;--input:#2c2c2c;--ring:#ff5c2266;--primary:#ff5c22;--primary-hover:#ff7040;--primary-foreground:#fff;--primary-soft:#ff5c221f;--primary-soft-strong:#ff5c2233;--sidebar:#0e0e0e;--sidebar-foreground:#fafafa;--sidebar-muted:#a1a1aa;--sidebar-accent:#1c1c1c;--sidebar-hover:#171717;--sidebar-border:#1f1f1f;--success:#29c46a;--success-soft:#29c46a1f;--info:#4b8bf5;--info-soft:#4b8bf51f;--warning:#f0a13a;--warning-soft:#f0a13a24;--destructive:#f0554e;--destructive-hover:#f47a74;--destructive-soft:#f0554e1f;--destructive-border:#f0554e52;--star:#f5c05c;--shadow-sm:0 1px 2px #0006;--shadow:0 4px 16px #00000073;--shadow-lg:0 24px 56px #0009;--shadow-sidebar-item:0 1px 2px #00000080;--glass:#0a0a0ac7}*{box-sizing:border-box}html,body{margin:0}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}#root{min-height:100svh}::selection{background:var(--primary-soft-strong)}*{scrollbar-width:thin;scrollbar-color:var(--input) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--input);background-clip:padding-box;border:3px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground);background-clip:padding-box}input,select,textarea,button{font-family:inherit}select option{background:var(--popover);color:var(--foreground)}.layout{--w:var(--sb-w);grid-template-columns:var(--w) 1fr;background:var(--background);min-height:100vh;transition:grid-template-columns .22s cubic-bezier(.4,0,.2,1);display:grid}.layout.collapsed{--w:var(--sb-w-collapsed)}.sidebar{background:var(--sidebar);height:100vh;color:var(--sidebar-muted);z-index:40;flex-direction:column;gap:4px;padding:0 12px 8px;display:flex;position:sticky;top:0;overflow:clip}.sb-top{height:var(--topbar-h);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:0 4px;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex;overflow:hidden}.brand-mark{border-radius:var(--radius);background:var(--primary);width:32px;height:32px;color:var(--primary-foreground);flex:none;place-items:center;display:grid}.brand-mark svg{width:17px;height:17px}.brand-name{color:var(--sidebar-foreground);letter-spacing:-.02em;white-space:nowrap;font-size:19px;font-weight:600}.brand-name b{font-weight:700}.sb-collapse{width:38px;height:38px;color:var(--sidebar-muted);border-radius:var(--radius);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;transition:all .15s;display:grid}.sb-collapse:hover{background:var(--sidebar-hover);color:var(--sidebar-foreground)}.collapsed .sb-collapse svg{transform:rotate(180deg)}.nav{flex-direction:column;gap:8px;padding:12px 0;display:flex;overflow:hidden auto}.nav-btn{width:100%;height:48px;color:var(--sidebar-muted);border-radius:var(--radius-md);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;align-items:center;gap:10px;padding:0 12px;font-family:inherit;font-size:15px;font-weight:500;transition:background .15s,color .15s;display:flex;position:relative}.nav-btn:hover{color:var(--sidebar-foreground);background:var(--sidebar-hover)}.nav-btn.active{background:var(--sidebar-accent);color:var(--primary);box-shadow:var(--shadow-sidebar-item);font-weight:600}.nav-ic{flex:none;place-items:center;display:grid}.nav-label{text-overflow:ellipsis;flex:1;overflow:hidden}.nav-dot{background:var(--success);width:8px;height:8px;box-shadow:0 0 0 3px var(--success-soft);border-radius:50%;flex:none;animation:1.3s ease-in-out infinite pulse}.sb-bottom{flex-direction:column;gap:8px;padding-top:8px;display:flex}.sb-intro-card{background:var(--sidebar-accent);border:1px solid var(--sidebar-border);border-radius:var(--radius-lg);color:var(--sidebar-foreground);margin-top:auto;padding:18px 16px}.sb-intro-ic{border-radius:var(--radius-md);background:var(--primary-soft);width:38px;height:38px;color:var(--primary);place-items:center;margin-bottom:12px;display:grid}.sb-intro-title{letter-spacing:-.01em;font-size:15px;font-weight:600}.sb-intro-text{color:var(--sidebar-muted);margin:6px 0 14px;font-size:13px;line-height:1.5}.sb-intro-btn{border-radius:var(--radius);background:var(--primary);width:100%;color:var(--primary-foreground);cursor:pointer;border:none;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.sb-intro-btn:hover{background:var(--primary-hover)}.sb-user{border-top:1px solid var(--sidebar-border);padding-top:8px;position:relative}.user-btn{width:100%;color:var(--sidebar-muted);border-radius:var(--radius-md);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:6px;font-family:inherit;transition:all .15s;display:flex}.user-btn:hover,.user-btn.active{background:var(--sidebar-accent)}.avatar{background:var(--secondary);width:40px;height:40px;color:var(--foreground);border:1px solid var(--border);border-radius:50%;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.avatar.sm{width:34px;height:34px;font-size:13px}.user-meta{flex-direction:column;flex:1;min-width:0;display:flex}.user-email{color:var(--sidebar-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.user-role{color:var(--sidebar-muted);font-size:12.5px}.user-caret{color:var(--sidebar-muted);flex:none}.user-menu{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:9999;padding:6px;animation:.12s ease-out menu-pop;position:fixed}@keyframes menu-pop{0%{opacity:0;transform:translateY(6px)}}.user-menu-head{align-items:center;gap:10px;padding:8px;display:flex}.user-menu-id{min-width:0}.user-menu-label{color:var(--muted-foreground);font-size:12px}.user-menu-email{text-overflow:ellipsis;white-space:nowrap;color:var(--foreground);font-size:14px;font-weight:600;overflow:hidden}.user-menu-sep{background:var(--border);height:1px;margin:4px 0}.user-menu-item{width:100%;color:var(--foreground);border-radius:var(--radius-sm);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:9px 10px;font-family:inherit;font-size:14px;transition:background .12s;display:flex}.user-menu-item:hover{background:var(--secondary)}.user-menu-item.danger{color:var(--destructive)}.user-menu-item.danger:hover{background:var(--destructive-soft)}.user-menu-item svg{flex:none}.collapsed .brand,.collapsed .nav-label,.collapsed .sb-intro-card,.collapsed .user-meta,.collapsed .user-caret{display:none}.collapsed .sb-top{justify-content:center}.collapsed .nav-btn{justify-content:center;width:48px;margin:0 auto;padding:0}.collapsed .nav-dot{position:absolute;top:8px;right:8px}.collapsed .user-btn{justify-content:center;padding:6px 0}.collapsed .sb-user{border-top:none}.nav-scrim{display:none}.content{flex-direction:column;min-width:0;display:flex}.appbar{z-index:30;height:var(--topbar-h);background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:0 24px;display:flex;position:sticky;top:0}.appbar-title{letter-spacing:-.02em;color:var(--foreground);margin:0;font-size:18px;font-weight:600}.appbar-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.icon-btn{border-radius:var(--radius);background:var(--secondary);width:40px;height:40px;color:var(--muted-foreground);cursor:pointer;border:none;place-items:center;transition:all .15s;display:grid}.icon-btn:hover{background:var(--muted);color:var(--foreground)}.only-mobile{display:none}.main{flex:1;min-width:0}.page{width:100%;max-width:1440px;margin:0 auto;padding:28px 24px 72px}.page-lead{color:var(--muted-foreground);margin:-6px 0 26px;font-size:16px}.btn{background:var(--secondary);height:40px;color:var(--foreground);border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:8px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn svg{flex:none}.btn:hover:not(:disabled){background:var(--muted)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--primary);color:var(--primary-foreground)}.btn.primary:hover:not(:disabled){background:var(--primary-hover);color:var(--primary-foreground)}.btn.ghost{color:var(--muted-foreground);background:0 0}.btn.ghost:hover:not(:disabled){background:var(--secondary);color:var(--foreground)}.btn.danger{background:var(--destructive-soft);color:var(--destructive)}.btn.danger:hover:not(:disabled){background:var(--destructive);color:#fff}.btn.lg{border-radius:var(--radius-md);height:48px;padding:0 22px;font-size:15px}.top-search{margin-bottom:20px;position:relative}.top-search svg{color:var(--muted-foreground);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.top-search input{border-radius:var(--radius-md);background:var(--secondary);width:100%;height:46px;color:var(--foreground);border:1px solid #0000;outline:none;padding:0 16px 0 44px;font-family:inherit;font-size:15px;transition:all .15s}.top-search input::placeholder{color:var(--muted-foreground)}.top-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.stats{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:16px;margin-bottom:24px;display:grid}.stat{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:16px;min-height:150px;padding:22px 24px;transition:border-color .15s,background .15s;display:flex}.stat:hover{border-color:var(--input)}.stat-label{color:var(--muted-foreground);margin-bottom:12px;font-size:15px;font-weight:500}.stat-icon{border-radius:var(--radius-md);background:var(--secondary);width:40px;height:40px;color:var(--foreground);flex:none;place-items:center;display:grid}.stat-info{min-width:0}.stat-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--foreground);font-size:38px;font-weight:700;line-height:1}.stat-sub{color:var(--muted-foreground);margin-top:12px;font-size:13px}.stat-donut{flex:none;place-items:center;display:grid;position:relative}.stat-donut svg{width:88px;height:88px}.stat-donut-lbl{color:var(--foreground);font-variant-numeric:tabular-nums;place-items:center;font-size:17px;font-weight:700;display:grid;position:absolute;inset:0}.filterbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.filterbar-count{color:var(--muted-foreground);font-variant-numeric:tabular-nums;margin-left:auto;padding-right:4px;font-size:14px}.filter-anchor{position:relative}.filter-btn{background:var(--secondary);height:40px;color:var(--foreground);cursor:pointer;border-radius:var(--radius);border:none;align-items:center;gap:8px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.filter-btn:hover{background:var(--muted)}.filter-btn.open,.filter-btn.has-rules{color:var(--primary);background:var(--primary-soft)}.filter-badge{border-radius:var(--radius-sm);background:var(--primary);min-width:20px;height:20px;color:var(--primary-foreground);justify-content:center;align-items:center;padding:0 6px;font-size:11.5px;font-weight:700;display:inline-flex}.filter-clear{border-radius:var(--radius);height:40px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;padding:0 14px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.filter-clear:hover{background:var(--destructive-soft);color:var(--destructive)}.filter-scrim{z-index:40;position:fixed;inset:0}.fb-panel{z-index:41;border-radius:var(--radius-lg);background:var(--popover);border:1px solid var(--border);width:max-content;min-width:580px;max-width:min(780px,100vw - 48px);box-shadow:var(--shadow-lg);flex-direction:column;gap:12px;padding:16px;animation:.15s fbIn;display:flex;position:absolute;top:calc(100% + 8px);left:0}@keyframes fbIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.fb-lead{color:var(--muted-foreground);font-size:13.5px;font-weight:500}.fb-body{flex-direction:column;gap:8px;max-height:52vh;display:flex;overflow:auto}.fb-row{align-items:flex-start;gap:8px;display:flex}.fb-join{flex:0 0 78px;padding-top:9px}.fb-join-label{color:var(--foreground);font-size:13.5px;font-weight:600}.fb-join-label.muted{color:var(--muted-foreground);font-weight:500}.fb-join-select{width:100%;padding:0 8px}.fb-cond{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.fb-select,.fb-input{border:1px solid var(--input);border-radius:var(--radius-sm);background:var(--secondary);height:36px;color:var(--foreground);outline:none;padding:0 10px;font-family:inherit;font-size:13.5px;transition:border-color .15s,box-shadow .15s}.fb-select{cursor:pointer}.fb-select:focus,.fb-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.fb-input::placeholder{color:var(--subtle-foreground)}.fb-field{flex:0 0 156px}.fb-op{flex:0 0 146px}.fb-value{flex:170px;min-width:120px;display:flex}.fb-value>*{width:100%}.fb-value-none{display:block}.fb-bool{width:100%}.fb-duration{gap:6px;width:100%;display:flex}.fb-duration .fb-num{flex:70px;min-width:60px}.fb-duration .fb-unit{flex:0 0 108px}.fb-num{font-variant-numeric:tabular-nums}.fb-num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fb-num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fb-num{appearance:textfield}.fb-icon-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;transition:all .15s;display:grid}.fb-icon-btn:hover{background:var(--destructive-soft);color:var(--destructive)}.fb-group{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);flex-direction:column;flex:1;gap:8px;min-width:0;padding:12px;display:flex}.fb-group-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.fb-group-title{color:var(--muted-foreground);font-size:13px;font-weight:500}.fb-group-body{flex-direction:column;gap:8px;display:flex}.fb-group-body .fb-join{flex:0 0 64px}.fb-group-actions{flex-wrap:wrap;gap:6px;display:flex}.fb-add{height:32px;color:var(--primary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:0 10px;font-family:inherit;font-size:13.5px;font-weight:600;transition:all .15s}.fb-add:hover{background:var(--primary-soft)}.fb-add.sm{height:28px;font-size:13px}.fb-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.fb-actions-left,.fb-actions-right{align-items:center;gap:8px;display:flex}.fb-btn{border-radius:var(--radius);background:var(--secondary);height:36px;color:var(--foreground);cursor:pointer;border:none;padding:0 18px;font-family:inherit;font-size:13.5px;font-weight:600;transition:all .15s}.fb-btn:hover{background:var(--muted)}.fb-btn.primary{background:var(--primary);color:var(--primary-foreground)}.fb-btn.primary:hover{background:var(--primary-hover)}.tablewrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);overflow:auto}.pagination{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:10px;padding:14px 18px;display:flex}.pg-btn{border-radius:var(--radius);border:1px solid var(--border);width:36px;height:36px;color:var(--foreground);cursor:pointer;background:0 0;place-items:center;transition:all .15s;display:grid}.pg-btn:hover:not(:disabled){background:var(--secondary)}.pg-btn:disabled{opacity:.35;cursor:default}.pg-info{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}table{border-collapse:collapse;width:100%;min-width:1120px;font-size:14px}tbody td{overflow-wrap:break-word;word-break:normal}thead th{background:var(--secondary);text-align:left;color:var(--foreground);letter-spacing:-.01em;z-index:1;white-space:normal;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;vertical-align:bottom;padding:16px 12px;font-size:14px;font-weight:600;line-height:1.25;position:sticky;top:0}thead th.num{text-align:right}td.num{white-space:nowrap}th.chk,td.chk{width:38px;padding-left:16px;padding-right:4px}.chk input{accent-color:var(--primary);cursor:pointer;width:16px;height:16px;display:block}tbody td{border-bottom:1px solid var(--border);vertical-align:middle;color:var(--muted-foreground);padding:16px 12px;line-height:1.45}tbody tr{cursor:pointer;transition:background .12s}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--secondary)}tbody tr.sel{background:var(--primary-soft)}tbody tr.active-row{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}td.name{color:var(--foreground);vertical-align:middle;font-weight:600}.name-inner{align-items:center;gap:10px;display:flex}.name-avatar{border-radius:var(--radius);background:var(--secondary);width:32px;height:32px;color:var(--foreground);flex:none;place-items:center;font-size:12.5px;font-weight:700;display:grid}tbody tr:hover .name-avatar{background:var(--muted)}.name-txt{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.cat,.addr{color:var(--muted-foreground)}.num{text-align:right;font-variant-numeric:tabular-nums}.num.rv{color:var(--foreground);font-weight:700}.dim{color:var(--subtle-foreground);opacity:.6}.rating{color:var(--foreground);align-items:center;gap:4px;font-weight:600;display:inline-flex}.rating svg{color:var(--star)}.ad{background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-md);vertical-align:middle;white-space:nowrap;align-items:center;margin-left:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}td a{color:var(--primary);white-space:nowrap;font-weight:600;text-decoration:none}td a:hover{text-decoration:underline}.skrow{cursor:default}.skrow td{padding-top:18px;padding-bottom:18px}.skel{background:linear-gradient(90deg, var(--secondary) 25%, var(--input) 40%, var(--secondary) 60%);background-size:300% 100%;border-radius:6px;max-width:100%;height:11px;animation:1.4s infinite shimmer;display:inline-block}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-20% 0}}.empty-state{text-align:center;padding:72px 24px}.empty-ic{border-radius:var(--radius-lg);background:var(--primary-soft);width:60px;height:60px;color:var(--primary);place-items:center;margin:0 auto 18px;display:grid}.empty-title{letter-spacing:-.02em;color:var(--foreground);font-size:18px;font-weight:700}.empty-sub{color:var(--muted-foreground);margin:6px 0 20px;font-size:15px}.error{background:var(--destructive-soft);border:1px solid var(--destructive-border);color:var(--destructive);border-radius:var(--radius-md);align-items:center;gap:10px;margin:0 0 16px;padding:13px 16px;font-size:14px;display:flex}.error span{font-size:15px}.detail-scrim{opacity:0;visibility:hidden;z-index:70;background:#00000080;transition:all .22s;position:fixed;inset:0}.detail-scrim.show{opacity:1;visibility:visible}.detail{background:var(--card);border-left:1px solid var(--border);width:420px;max-width:92vw;height:100vh;box-shadow:var(--shadow-lg);z-index:71;flex-direction:column;transition:transform .26s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.detail.show{transform:translate(0)}.detail-head{justify-content:space-between;align-items:flex-start;padding:20px 22px 0;display:flex}.detail-avatar{border-radius:var(--radius-lg);background:var(--primary);width:56px;height:56px;color:var(--primary-foreground);place-items:center;font-size:24px;font-weight:700;display:grid}.detail-body{flex:1;padding:18px 22px 22px;overflow-y:auto}.detail-title{letter-spacing:-.025em;color:var(--foreground);flex-wrap:wrap;align-items:center;gap:8px;font-size:22px;font-weight:700;display:flex}.detail-sub{color:var(--muted-foreground);margin-top:6px;font-size:14px;line-height:1.5}.detail-badges{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.badge{border-radius:var(--radius-md);background:var(--primary-soft);height:30px;color:var(--primary);align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:600;display:inline-flex}.badge svg{color:var(--star)}.badge.muted{background:var(--secondary);color:var(--muted-foreground)}.detail-facts{flex-direction:column;gap:12px;margin-top:20px;display:flex}.fact{color:var(--foreground);align-items:center;gap:12px;min-width:0;font-size:14px;display:flex}.fact-ic{border-radius:var(--radius);background:var(--secondary);width:36px;height:36px;color:var(--muted-foreground);flex:none;place-items:center;display:grid}.fact a{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-weight:500;text-decoration:none;overflow:hidden}.fact a:hover{text-decoration:underline}.fact span{text-overflow:ellipsis;overflow:hidden}.detail-metrics{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px;display:grid}.metric{background:var(--secondary);border-radius:var(--radius-md);text-align:center;padding:14px 12px}.metric-val{color:var(--foreground);font-size:15px;font-weight:700}.metric-lbl{color:var(--muted-foreground);margin-top:4px;font-size:12px}.detail-section-label{color:var(--muted-foreground);margin:24px 0 10px;font-size:13px;font-weight:600}.detail-tags{flex-wrap:wrap;gap:8px;display:flex}.tag{border-radius:var(--radius-md);background:var(--secondary);color:var(--muted-foreground);padding:5px 12px;font-size:13px;font-weight:500}.badge-verified,.badge-guaranteed{border-radius:var(--radius-md);white-space:nowrap;vertical-align:middle;align-items:center;gap:5px;height:26px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.badge-verified{background:var(--success-soft);color:var(--success)}.badge-verified svg{color:var(--success)}.badge-guaranteed{background:var(--info-soft);color:var(--info)}.badge-guaranteed svg{color:var(--info)}.detail-foot{border-top:1px solid var(--border);gap:10px;padding:16px 22px;display:flex}.detail-foot .btn{flex:1;justify-content:center}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.card-head{border-bottom:1px solid var(--border);padding:20px 24px}.card-head h3{letter-spacing:-.02em;color:var(--foreground);margin:0;font-size:17px;font-weight:600}.card-head p{color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.card-body{padding:24px}.card-body.pad0{padding:4px 24px}.scraper-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.form-grid{gap:16px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field span{color:var(--foreground);font-size:14px;font-weight:500}.field input{background:var(--secondary);border-radius:var(--radius);height:44px;color:var(--foreground);border:1px solid #0000;outline:none;padding:0 14px;font-family:inherit;font-size:15px;transition:all .15s}.field input::placeholder{color:var(--muted-foreground)}.field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.opt-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.opt-row:first-of-type{border-top:1px solid var(--border);margin-top:22px}.opt-label{color:var(--foreground);font-size:15px;font-weight:600}.opt-help{color:var(--muted-foreground);margin-top:3px;font-size:13.5px}.form-cta{margin-top:22px}.form-cta .btn{justify-content:center;width:100%}.run-status{background:var(--secondary);border-radius:var(--radius-md);margin-top:18px;padding:16px}.run-status-top{color:var(--muted-foreground);align-items:center;gap:10px;font-size:14px;display:flex}.run-count{font-variant-numeric:tabular-nums;color:var(--foreground);margin-left:auto;font-weight:600}.status-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dotdone{background:var(--success);border-radius:50%;flex:none;width:9px;height:9px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.bar{background:var(--muted);border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.bar-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .3s;display:block}.scan{border:1px solid var(--border);border-radius:var(--radius-lg);background:radial-gradient(120% 80% at 100% 0, var(--primary-soft), transparent 55%), var(--card);margin-top:20px;padding:22px}.scan-hero{align-items:center;gap:20px;display:flex}.scan-orbit{flex:none;place-items:center;width:92px;height:92px;display:grid;position:relative}.orbit-ring{border:1.5px dashed var(--primary-soft-strong);border-radius:50%;position:absolute}.orbit-ring.o1{animation:9s linear infinite spin;inset:8px}.orbit-ring.o2{border-style:solid;border-color:var(--primary-soft);animation:6s linear infinite reverse spin;inset:22px}.orbit-sweep{background:conic-gradient(from 0deg, transparent 0 250deg, var(--primary-soft-strong) 320deg, transparent 360deg);border-radius:50%;animation:2.4s linear infinite spin;position:absolute;inset:0;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 30px),#000 calc(100% - 29px));mask:radial-gradient(farthest-side,#0000 calc(100% - 30px),#000 calc(100% - 29px))}.orbit-dot{background:var(--primary);width:8px;height:8px;box-shadow:0 0 0 3px var(--primary-soft);border-radius:50%;position:absolute}.orbit-dot.d1{margin-left:-4px;animation:3.2s linear infinite orbit1;top:4px;left:50%}.orbit-dot.d2{background:var(--success);animation:4.6s linear infinite reverse orbit1;bottom:8px;left:12px}.orbit-dot.d3{background:var(--primary-hover);animation:5.4s linear infinite orbit1;top:20px;right:6px}@keyframes orbit1{0%{transform:rotate(0)translateY(-2px)}to{transform:rotate(360deg)translateY(-2px)}}.orbit-core{z-index:1;background:var(--primary);width:54px;height:54px;color:var(--primary-foreground);text-align:center;border-radius:50%;place-items:center;line-height:1;animation:1.8s ease-in-out infinite corepulse;display:grid;position:relative}.orbit-core b{font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.orbit-core small{text-transform:uppercase;letter-spacing:.08em;opacity:.85;margin-top:1px;font-size:9px}@keyframes corepulse{0%,to{transform:scale(1)}50%{transform:scale(.94)}}@keyframes spin{to{transform:rotate(360deg)}}.scan-hero-meta{min-width:0}.scan-title{letter-spacing:-.02em;color:var(--foreground);align-items:center;gap:8px;font-size:17px;font-weight:600;display:flex}.live-dot{background:var(--destructive);border-radius:50%;width:8px;height:8px;animation:1.4s ease-out infinite livepulse}@keyframes livepulse{0%{box-shadow:0 0 0 0 var(--destructive-border)}to{box-shadow:0 0 0 8px #0000}}.scan-current{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:14px;overflow:hidden}.scan-time{color:var(--subtle-foreground);font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-top:8px;font-size:13px;display:inline-flex}.steps{flex-direction:column;margin:22px 0 0;padding:0;list-style:none;display:flex}.step{align-items:center;gap:14px;padding:9px 0 9px 4px;display:flex;position:relative}.step:before{content:"";background:var(--border);width:2px;position:absolute;top:34px;bottom:-9px;left:19px}.step:last-child:before{display:none}.step.done:before{background:var(--primary)}.step-badge{background:var(--secondary);width:32px;height:32px;color:var(--muted-foreground);border:2px solid var(--border);z-index:1;border-radius:50%;flex:none;place-items:center;transition:all .2s;display:grid}.step.active .step-badge{background:var(--primary-soft);color:var(--primary);border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.step.done .step-badge{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.spin{animation:.9s linear infinite spin}.step-text{flex:1;min-width:0}.step-label{color:var(--muted-foreground);font-size:14.5px;font-weight:600}.step.active .step-label,.step.done .step-label{color:var(--foreground)}.step-desc{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:13px;overflow:hidden}.step-tag{color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-md);flex:none;padding:4px 10px;font-size:12px;font-weight:600}.step-tag.live{color:var(--muted-foreground);background:var(--secondary)}.step.pending .step-desc{opacity:.7}.scan-bar{align-items:center;gap:12px;margin-top:18px;display:flex}.scan-bar .bar{flex:1;margin-top:0}.scan-pct{color:var(--muted-foreground);font-variant-numeric:tabular-nums;text-align:right;min-width:36px;font-size:13px;font-weight:600}.bar.indet{margin-top:18px;position:relative}.bar-indet{background:linear-gradient(90deg, transparent, var(--primary), transparent);border-radius:999px;width:32%;height:100%;animation:1.3s ease-in-out infinite indet;position:absolute;top:0;left:0}@keyframes indet{0%{left:-34%}to{left:102%}}.scan-feed{border-top:1px solid var(--border);margin:18px 0 0;padding:16px 0 0;list-style:none}.scan-feed li{align-items:center;gap:10px;padding:8px 2px;font-size:14px;animation:.45s feedin;display:flex}.feed-dot{background:var(--success);width:7px;height:7px;box-shadow:0 0 0 3px var(--success-soft);border-radius:50%;flex:none}.feed-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--foreground);flex:1;font-weight:500;overflow:hidden}.feed-rating{color:var(--muted-foreground);font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:4px;display:inline-flex}.feed-rating svg{color:var(--star)}@keyframes feedin{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.scan-tip{background:var(--primary-soft);border-radius:var(--radius-md);color:var(--primary);align-items:center;gap:10px;margin-top:16px;padding:14px;font-size:13.5px;line-height:1.45;display:flex}.scan-tip svg{color:var(--primary);flex:none}.tip-txt{animation:.4s tipfade}@keyframes tipfade{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.orbit-ring,.orbit-sweep,.orbit-dot,.orbit-core,.spin,.live-dot,.bar-indet,.step.active .step-badge{animation:none}}.feature-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.feature-list li{color:var(--muted-foreground);align-items:flex-start;gap:10px;font-size:14px;display:flex}.feature-list li svg{color:var(--success);flex:none;margin-top:2px}.feature-list em{color:var(--subtle-foreground);font-size:13px;font-style:normal}.aside-note{background:var(--secondary);border-radius:var(--radius-md);color:var(--muted-foreground);gap:10px;margin-top:22px;padding:14px;font-size:13.5px;line-height:1.5;display:flex}.aside-note svg{color:var(--primary);flex:none;margin-top:1px}.settings-stack{flex-direction:column;gap:20px;max-width:820px;display:flex}.set-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:20px 0;display:flex}.set-row:last-child{border-bottom:none}.set-label{color:var(--foreground);font-size:15px;font-weight:600}.set-help{color:var(--muted-foreground);max-width:440px;margin-top:4px;font-size:14px;line-height:1.45}.acct{align-items:center;gap:12px;display:flex}.num-input{text-align:center;border-radius:var(--radius);background:var(--secondary);width:80px;height:44px;color:var(--foreground);font-variant-numeric:tabular-nums;border:1px solid #0000;outline:none;flex:none;font-family:inherit;font-size:16px;font-weight:700;transition:all .15s}.num-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.toggle{background:var(--input);cursor:pointer;border:none;border-radius:999px;flex:none;width:46px;height:26px;transition:background .15s;position:relative}.toggle.on{background:var(--primary)}.toggle .knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0003}.toggle.on .knob{transform:translate(20px)}.dot-badge{align-items:center;gap:7px;font-size:14px;display:inline-flex}.dot{border-radius:50%;flex:none;width:7px;height:7px}.dot.green{background:var(--success)}.dot.yellow{background:var(--warning)}.dot.red{background:var(--destructive)}.dot.gray{background:var(--subtle-foreground)}.dot.blue{background:var(--info)}.rating-cell{color:var(--foreground);align-items:center;gap:7px;font-weight:700;display:inline-flex}.rating-cell .dot{width:8px;height:8px}@media (width<=1180px){.stats{grid-template-columns:1fr 1fr}.scraper-grid{grid-template-columns:1fr}}@media (width<=900px){.layout,.layout.collapsed{--w:0px;grid-template-columns:1fr}.sidebar{width:var(--sb-w);height:100vh;box-shadow:var(--shadow-lg);transition:transform .24s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;transform:translate(-100%)}.layout.collapsed .nav-label,.layout.collapsed .sb-intro-card,.layout.collapsed .user-meta,.layout.collapsed .user-caret{display:revert}.layout.collapsed .brand{display:flex}.layout.collapsed .nav-btn{justify-content:flex-start;width:100%;padding:0 12px}.layout.collapsed .user-btn{justify-content:flex-start;padding:6px}.layout.collapsed .sb-user{border-top:1px solid var(--sidebar-border)}.sb-collapse{display:none}.nav-open .sidebar{transform:translate(0)}.nav-scrim{opacity:0;visibility:hidden;z-index:39;background:#00000080;transition:all .22s;display:block;position:fixed;inset:0}.nav-open .nav-scrim{opacity:1;visibility:visible}.only-mobile{display:grid}}@media (width<=720px){.fb-panel{width:auto;min-width:0;max-width:none;position:fixed;top:84px;left:16px;right:16px}.fb-cond{flex-wrap:wrap}.fb-field,.fb-op{flex:140px}}@media (width<=640px){.page{padding:20px 16px 56px}.appbar{padding:0 16px}.stats{grid-template-columns:1fr 1fr;gap:12px}.stat{padding:16px}.stat-value{font-size:26px}.stat{min-height:132px}.stat-donut svg{width:64px;height:64px}.stat-donut-lbl{font-size:14px}.hide-sm{display:none}.btn{padding:0 12px}}@media (width<=480px){.stats{grid-template-columns:1fr}.stat{min-height:120px}.detail-metrics{grid-template-columns:repeat(2,1fr)}.fb-join{flex:0 0 60px}}.auth{background:var(--background);grid-template-columns:1.05fr 1fr;min-height:100svh;display:grid}.auth-hero{background:var(--sidebar);color:var(--foreground);border-right:1px solid var(--border);flex-direction:column;padding:48px 56px;display:flex;position:relative;overflow:hidden}.auth-hero-glow{background:radial-gradient(680px 340px at 82% 6%, var(--primary-soft-strong), transparent 62%), radial-gradient(520px 320px at 6% 100%, var(--primary-soft), transparent 60%);pointer-events:none;position:absolute;inset:0}.auth-hero-top,.auth-hero-body,.auth-hero-foot{z-index:1;position:relative}.auth-hero-top{align-items:center;gap:12px;font-size:19px;font-weight:600;display:flex}.auth-brandname{letter-spacing:-.02em;color:var(--foreground)}.auth-brandname b{font-weight:700}.auth-logo{border-radius:var(--radius-md);background:var(--primary);width:40px;height:40px;color:var(--primary-foreground);place-items:center;font-size:19px;display:grid}.auth-logo.sm{border-radius:var(--radius);width:32px;height:32px;font-size:16px}.auth-hero-body{max-width:460px;margin:auto 0}.auth-hero-title{letter-spacing:-.035em;color:var(--foreground);margin:0 0 16px;font-size:42px;font-weight:700;line-height:1.1}.auth-hero-text{color:var(--muted-foreground);margin:0 0 32px;font-size:17px;line-height:1.6}.auth-features{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.auth-features li{color:var(--foreground);align-items:center;gap:13px;font-size:15px;display:flex}.feat-tick{border-radius:var(--radius-sm);background:var(--primary-soft);width:28px;height:28px;color:var(--primary);flex:none;place-items:center;display:grid}.auth-hero-foot{color:var(--subtle-foreground);font-size:13px}.auth-form-side{background:var(--background);place-items:center;padding:40px 24px;display:grid}.auth-form-box{width:100%;max-width:400px}.auth-brand-mini{color:var(--foreground);letter-spacing:-.02em;align-items:center;gap:10px;margin-bottom:28px;font-size:18px;font-weight:600;display:none}.auth-brand-mini b{font-weight:700}.auth-tabs{background:var(--secondary);border-radius:var(--radius-md);gap:4px;margin-bottom:28px;padding:4px;display:inline-flex}.auth-tabs button{color:var(--muted-foreground);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:8px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.auth-tabs button:hover{color:var(--foreground)}.auth-tabs button.on{background:var(--card);color:var(--primary);box-shadow:var(--shadow-sidebar-item)}.auth-form-box h1{letter-spacing:-.03em;color:var(--foreground);margin:0 0 8px;font-size:30px;font-weight:700}.auth-sub{color:var(--muted-foreground);margin:0 0 28px;font-size:15px;line-height:1.5}.auth-form{flex-direction:column;gap:18px;display:flex}.auth-form label{flex-direction:column;gap:8px;display:flex}.auth-form label span{color:var(--foreground);font-size:14px;font-weight:500}.auth-form input{background:var(--secondary);border-radius:var(--radius);height:46px;color:var(--foreground);border:1px solid #0000;outline:none;padding:0 14px;font-family:inherit;font-size:15px;transition:all .15s}.auth-form input::placeholder{color:var(--muted-foreground)}.auth-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.auth-error{background:var(--destructive-soft);border:1px solid var(--destructive-border);color:var(--destructive);border-radius:var(--radius);padding:11px 14px;font-size:14px}.auth-btn{background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius);cursor:pointer;border:none;height:48px;margin-top:6px;font-family:inherit;font-size:15px;font-weight:600;transition:all .15s}.auth-btn:hover:not(:disabled){background:var(--primary-hover)}.auth-btn:disabled{opacity:.55;cursor:not-allowed}.auth-switch{text-align:center;color:var(--muted-foreground);margin-top:26px;font-size:14px}.auth-switch button{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:14px;font-weight:600}.auth-switch button:hover{text-decoration:underline}@media (width<=860px){.auth{grid-template-columns:1fr}.auth-hero{display:none}.auth-brand-mini{display:flex}}@media (width<=480px){.auth-form-side{align-items:start;padding:32px 20px}.auth-form-box h1{font-size:26px}}
