:root{--bg: #fafaf9;--surface: #ffffff;--surface-2: #f5f5f4;--surface-3: #efefee;--border: #e7e6e3;--border-strong: #d6d5d2;--text: #1c1b1a;--text-2: #57544f;--text-3: #8a8781;--text-4: #b5b2ac;--accent: oklch(.58 .1 200);--accent-soft: oklch(.96 .02 200);--accent-border: oklch(.88 .05 200);--success: oklch(.62 .13 155);--success-soft: oklch(.96 .03 155);--danger: oklch(.58 .18 28);--danger-soft: oklch(.96 .03 28);--warn: oklch(.72 .13 75);--warn-soft: oklch(.96 .04 75);--shadow-sm: 0 1px 2px rgba(22, 22, 20, .04), 0 0 0 1px rgba(22, 22, 20, .03);--shadow-md: 0 4px 14px -4px rgba(22, 22, 20, .08), 0 0 0 1px rgba(22, 22, 20, .04);--shadow-lg: 0 18px 40px -12px rgba(22, 22, 20, .18), 0 0 0 1px rgba(22, 22, 20, .06);--radius: 8px;--radius-sm: 6px;--radius-lg: 10px;--radius-xl: 14px;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, monospace}:root[data-theme=dark]{--bg: #0e0e0d;--surface: #161615;--surface-2: #1d1d1b;--surface-3: #26251f;--border: #2a2a28;--border-strong: #3a3a37;--text: #f3f2ef;--text-2: #b8b5af;--text-3: #85827c;--text-4: #57544f;--accent: oklch(.72 .11 200);--accent-soft: oklch(.28 .05 200);--accent-border: oklch(.38 .07 200);--success: oklch(.72 .13 155);--success-soft: oklch(.25 .05 155);--danger: oklch(.7 .16 28);--danger-soft: oklch(.25 .06 28);--warn: oklch(.78 .13 75);--warn-soft: oklch(.25 .06 75);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 0 0 1px rgba(255, 255, 255, .03);--shadow-md: 0 4px 14px -4px rgba(0, 0, 0, .5), 0 0 0 1px rgba(255, 255, 255, .04);--shadow-lg: 0 18px 40px -12px rgba(0, 0, 0, .6), 0 0 0 1px rgba(255, 255, 255, .05)}*{box-sizing:border-box}svg{flex-shrink:0}.icon{width:14px;height:14px;display:inline-block;vertical-align:middle}.icon-sm{width:12px;height:12px}.icon-lg{width:18px;height:18px}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font-ui);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font-family:inherit;cursor:pointer;border:0;background:transparent;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}a{color:inherit;text-decoration:none}.app{display:flex;height:100vh;overflow:hidden;background:var(--app-backdrop);position:relative;--sidebar-w: 244px}:root[data-collapsed] .app{--sidebar-w: 72px}:root{--app-backdrop: #fafafa;--sidebar-hover: rgba(20, 20, 18, .05);--sidebar-active: #ffffff}:root[data-theme=dark]{--app-backdrop: #090909;--sidebar-hover: rgba(255, 255, 255, .05);--sidebar-active: #1d1d1b}.sidebar{background:transparent;border:0;padding:12px 12px 14px;display:flex;flex-direction:column;height:100vh;width:var(--sidebar-w);flex-shrink:0;min-width:0;overflow:visible;transition:width .24s cubic-bezier(.4,0,.2,1),padding .24s cubic-bezier(.4,0,.2,1)}.brand{display:flex;align-items:center;gap:8px;padding:6px 8px 16px;min-height:44px}.brand-logo{height:auto;width:130px;max-width:100%;display:none}.brand-badge{width:30px;height:30px;border-radius:50%;display:none;flex-shrink:0}.brand-logo-light{display:block}:root[data-theme=dark] .brand-logo-light{display:none}:root[data-theme=dark] .brand-logo-dark{display:block}.brand-collapse{margin-left:auto;flex-shrink:0;width:28px;height:28px;border-radius:7px;display:grid;place-items:center;color:var(--text-3);opacity:0;transition:background .1s,color .1s,opacity .12s}.sidebar:hover .brand-collapse{opacity:1}.app:has(.edge-reveal:hover) .brand-collapse{opacity:1}.brand-collapse:hover{background:var(--sidebar-hover);color:var(--text)}.edge-reveal{position:absolute;top:0;left:calc(var(--sidebar-w) - 4px);width:16px;height:100%;z-index:5;transition:left .24s cubic-bezier(.4,0,.2,1);cursor:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3E%3Cg%20stroke='white'%20stroke-width='3'%20stroke-linejoin='round'%3E%3Cpath%20fill='white'%20d='M10%206L4%2012l6%206z'/%3E%3Cpath%20fill='white'%20d='M14%206l6%206-6%206z'/%3E%3C/g%3E%3Cpath%20fill='black'%20d='M10%206L4%2012l6%206z'/%3E%3Cpath%20fill='black'%20fill-opacity='0.3'%20d='M14%206l6%206-6%206z'/%3E%3C/svg%3E") 12 12,ew-resize}:root[data-collapsed] .edge-reveal{cursor:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3E%3Cg%20stroke='white'%20stroke-width='3'%20stroke-linejoin='round'%3E%3Cpath%20fill='white'%20d='M10%206L4%2012l6%206z'/%3E%3Cpath%20fill='white'%20d='M14%206l6%206-6%206z'/%3E%3C/g%3E%3Cpath%20fill='black'%20fill-opacity='0.3'%20d='M10%206L4%2012l6%206z'/%3E%3Cpath%20fill='black'%20d='M14%206l6%206-6%206z'/%3E%3C/svg%3E") 12 12,ew-resize}.brand-mark{width:30px;height:30px;border-radius:8px;background:var(--text);display:grid;place-items:center;color:var(--bg);font-family:var(--font-mono);font-weight:600;font-size:13px;letter-spacing:-.02em;flex-shrink:0}.brand-name{font-weight:600;font-size:13.5px;letter-spacing:-.01em}.brand-org{font-size:11px;color:var(--text-3);margin-left:auto;font-family:var(--font-mono)}:root[data-collapsed] .sidebar{padding:12px 10px 14px;align-items:stretch}:root[data-collapsed] .brand{justify-content:center;padding:6px 0 16px;position:relative}:root[data-collapsed] .brand-logo{display:none!important}:root[data-collapsed] .brand-badge-light{display:block}:root[data-theme=dark][data-collapsed] .brand-badge-light{display:none}:root[data-theme=dark][data-collapsed] .brand-badge-dark{display:block}:root[data-collapsed] .brand-collapse{opacity:0;position:absolute;inset:6px 0 auto 0;margin:0 auto;width:30px;height:30px;pointer-events:none}:root[data-collapsed] .brand:hover .brand-badge{opacity:0}:root[data-collapsed] .brand:hover .brand-collapse,:root[data-collapsed] .app:has(.edge-reveal:hover) .brand-collapse{opacity:1;pointer-events:auto;background:var(--sidebar-hover);color:var(--text)}:root[data-collapsed] .app:has(.edge-reveal:hover) .brand-badge{opacity:0}:root[data-collapsed] .brand-badge{transition:opacity .12s}:root[data-collapsed] .nav-section-label,:root[data-collapsed] .nav-item span,:root[data-collapsed] .nav-item .nav-badge,:root[data-collapsed] .sidebar-bottom .user-chip span,:root[data-collapsed] .sidebar-bottom .user-chip .user-name,:root[data-collapsed] .sidebar-bottom .user-chip .user-email,:root[data-collapsed] .sidebar-bottom .user-chip>div:not(.user-avatar),:root[data-collapsed] .brand-switch-label,:root[data-collapsed] .brand-switch-chevron,:root[data-collapsed] .getting-started-chip>*:not(.gs-icon){display:none}:root[data-collapsed] .nav-item{justify-content:center;padding:9px 0;gap:0}:root[data-collapsed] .nav-section{margin-top:2px}:root[data-collapsed] .nav-section-label{padding:8px 0 2px}:root[data-collapsed] .user-chip{justify-content:center;padding:8px 0}:root[data-collapsed] .getting-started-chip{justify-content:center;padding:9px 0}.nav-section{margin-top:10px}.nav-section:first-of-type{margin-top:2px}.nav-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);padding:6px 10px;font-weight:600}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;margin-bottom:1px;border-radius:8px;color:var(--text-2);font-size:13.5px;font-weight:450;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s,color .12s,box-shadow .12s;white-space:nowrap}.nav-item:hover{background:var(--sidebar-hover);color:var(--text)}.nav-item:active{transform:translateY(.5px)}.nav-item.active{background:var(--sidebar-active);color:var(--text);font-weight:550;box-shadow:var(--shadow-sm)}.nav-icon{width:17px;height:17px;flex-shrink:0}.nav-item .nav-icon,.nav-item .icon{width:17px;height:17px;color:var(--text-3);flex-shrink:0}.nav-item:hover .nav-icon,.nav-item:hover .icon{color:var(--text-2)}.nav-item.active .nav-icon,.nav-item.active .icon{color:#3883ff}.nav-item .nav-badge{margin-left:auto;font-size:11px;color:var(--text-3);font-family:var(--font-mono)}.sidebar-bottom{margin-top:auto;padding-top:12px;overflow:visible}:root[data-collapsed] .sidebar-bottom .getting-started-chip{margin-bottom:6px}.getting-started-chip{display:flex;align-items:center;gap:10px;padding:9px 10px;margin-bottom:8px;border-radius:var(--radius-sm);cursor:pointer;background:linear-gradient(180deg,#e8f3ffb3,#ddedff80);background:linear-gradient(180deg,color(xyz 0.833 0.887 1.132 / 0.702),color(xyz 0.779 0.833 1.124 / 0.502));border:1px solid oklch(.88 .06 250 / .6);transition:transform .12s ease,box-shadow .12s ease}[data-theme=dark] .getting-started-chip{background:linear-gradient(180deg,#192a3c99,#0b1c2c66);border-color:#2e4a6780}.getting-started-chip:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.getting-started-chip .gs-icon{width:26px;height:26px;border-radius:7px;background:#3093ec;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.getting-started-chip .gs-icon svg{color:#fff}.getting-started-chip .gs-title{font-size:13px;font-weight:550;color:var(--text);line-height:1.2}.getting-started-chip .gs-sub{font-size:11px;color:var(--text-3);margin-top:1px;line-height:1.2}.getting-started-chip>svg:last-child{color:var(--text-3);flex-shrink:0}.user-chip{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer}.user-chip:hover{background:var(--surface-2)}.user-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#d4a27a,#c5776a);display:grid;place-items:center;color:#fff;font-weight:600;font-size:11px}.user-name{font-size:13px;font-weight:500}.user-email{font-size:11px;color:var(--text-3)}.user-menu-wrap{position:relative}.user-chip--account{width:100%;border:none;background:transparent;text-align:left;font:inherit;color:inherit}.user-menu-popover{position:absolute;left:calc(100% + 8px);bottom:0;min-width:168px;padding:4px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:50}.user-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:6px;background:transparent;font-size:13px;color:var(--text-2);cursor:pointer;text-align:left}.user-menu-item:hover{background:var(--surface-2);color:var(--text)}.user-menu-item:disabled{opacity:.6;cursor:wait}.user-menu-item--danger{color:#ba2b2e}.user-menu-item--danger:hover{background:#dc463c14;color:#a30018;color:oklch(.45 .2 25)}.brand-switch-wrap{position:relative}.brand-switch-chip{width:100%;border:none;background:transparent;text-align:left;font:inherit;color:inherit}.brand-switch-label{font-size:13px;font-weight:500;flex:1;min-width:0;text-transform:capitalize}.brand-switch-popover{position:absolute;left:0;right:0;bottom:calc(100% + 6px);padding:4px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:50}.brand-switch-list{max-height:240px;overflow-y:auto}.brand-switch-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:6px;background:transparent;font-size:13px;color:var(--text-2);cursor:pointer;text-align:left;text-transform:capitalize}.brand-switch-item span{flex:1;min-width:0}.brand-switch-item:hover{background:var(--surface-2);color:var(--text)}.brand-switch-item.active{background:var(--surface-2);color:var(--text);font-weight:500}.main{min-width:0;min-height:0;flex:1 1 auto;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;margin:10px 10px 10px 0;overflow-y:auto;overflow-x:hidden;box-shadow:var(--shadow-sm)}.main,.table-scroll{scrollbar-width:thin;scrollbar-color:transparent transparent}.main::-webkit-scrollbar,.table-scroll::-webkit-scrollbar{width:9px;height:9px}.main::-webkit-scrollbar-thumb,.table-scroll::-webkit-scrollbar-thumb{background:transparent;border-radius:8px;border:2px solid transparent;background-clip:padding-box}.main:hover::-webkit-scrollbar-thumb,.table-scroll:hover::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:padding-box}.main:hover,.table-scroll:hover{scrollbar-color:var(--border-strong) transparent}.main:has(.analytics-page){scrollbar-width:none}.main:has(.analytics-page)::-webkit-scrollbar{display:none;width:0;height:0}.topbar{height:52px;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;background:var(--bg);position:sticky;top:0;z-index:10}.topbar-title{font-size:14px;font-weight:550;letter-spacing:-.005em}.topbar-crumbs{color:var(--text-3);font-size:13px;display:flex;align-items:center;gap:6px}.topbar-crumbs .sep{color:var(--text-4)}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.page{padding:28px 32px;max-width:1240px;width:100%;margin-left:auto;margin-right:auto;flex:1;min-height:0;display:flex;flex-direction:column}.page.page-fill{flex:1;min-height:0}.page-panel{flex:1;min-height:0;display:flex;flex-direction:column}.page.wide{max-width:none}.page-header{margin-bottom:24px}.page-title{font-size:22px;font-weight:600;letter-spacing:-.015em;margin:0 0 4px}.page-desc{color:var(--text-3);font-size:13.5px;margin:0}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;background:var(--surface);border:1px solid var(--border-strong);color:var(--text);transition:all .1s;white-space:nowrap}.btn:hover{background:var(--surface-2)}.btn svg{width:14px;height:14px}.btn.primary{background:var(--text);color:var(--bg);border-color:var(--text)}.btn.primary:hover{background:var(--text-2);border-color:var(--text-2)}.btn.ghost{border-color:transparent;background:transparent;color:var(--text-2)}.btn.ghost:hover{background:var(--surface-2);color:var(--text)}.btn.sm{padding:4px 8px;font-size:12px}.btn.danger{color:var(--danger);border-color:var(--border)}.btn.danger:hover{background:var(--danger-soft);border-color:var(--danger)}.input,.select,.textarea{width:100%;height:32px;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);font-size:13px;color:var(--text);transition:border-color .1s,box-shadow .1s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--text-2);box-shadow:0 0 0 3px var(--surface-2)}.textarea{font-family:inherit;resize:vertical;min-height:80px;line-height:1.55}.textarea.mono{font-family:var(--font-mono);font-size:12.5px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:12.5px;font-weight:500;color:var(--text-2)}.field-hint{font-size:11.5px;color:var(--text-3)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.card-table{display:flex;flex-direction:column;flex:1;min-height:0}.card-table .card-header,.card-table .card-toolbar,.card-table .pagination{flex-shrink:0}.card-table .table-scroll{flex:1;min-height:0;overflow:auto}.card-table .tbl thead th{position:sticky;top:0;z-index:1;background:var(--surface);box-shadow:inset 0 -1px 0 var(--border)}.card-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.card-header{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px}.card-title{font-size:14px;font-weight:550;letter-spacing:-.005em}.card-desc{font-size:12.5px;color:var(--text-3);margin-top:2px}.card-body{padding:18px}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 7px;font-size:11.5px;font-weight:500;border-radius:999px;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);white-space:nowrap}.badge.dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge.success{color:var(--success);background:var(--success-soft);border-color:transparent}.badge.danger{color:var(--danger);background:var(--danger-soft);border-color:transparent}.badge.warn{color:var(--warn);background:var(--warn-soft);border-color:transparent}.badge.accent{color:var(--accent);background:var(--accent-soft);border-color:transparent}.badge.mono{font-family:var(--font-mono);font-size:11px}.kbd{font-family:var(--font-mono);font-size:11px;padding:1px 5px;border-radius:4px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-2)}.divider{height:1px;background:var(--border)}.spinner{width:12px;height:12px;border-radius:50%;border:1.5px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.test-row-running{animation:pulse 1.2s ease-in-out infinite}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tool-card{transition:transform .12s,border-color .12s,box-shadow .12s}.tool-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.shimmer{background:linear-gradient(90deg,transparent,var(--accent-soft) 30%,var(--accent-soft) 70%,transparent);background-size:800px 100%;animation:shimmer 1.3s ease-in-out infinite}@keyframes slideInResult{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.result-in{animation:slideInResult .35s ease-out both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .25s ease-out both}.sync-progress{height:8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);overflow:hidden;position:relative}.sync-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 60%,var(--text)));border-radius:999px;transition:width .4s ease;position:relative;overflow:hidden}.sync-progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translate(-100%);animation:syncShimmer 1.4s ease-in-out infinite}.sync-progress-fill.done{background:var(--success, #2ea043)}.sync-progress-fill.failed{background:var(--danger, #d3493e)}.sync-progress-fill.done:after,.sync-progress-fill.failed:after{animation:none}@keyframes syncShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.sync-icon-busy{animation:syncBuzz 1.2s ease-in-out infinite;color:var(--accent)}@keyframes syncBuzz{0%,to{transform:rotate(-4deg);opacity:.8}50%{transform:rotate(6deg);opacity:1}}.sync-icon-done{color:var(--success, #2ea043)}.magic-burst{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;z-index:5}.magic-burst-core{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 35%,transparent),transparent 70%);color:var(--accent);animation:magicPop 1.6s cubic-bezier(.2,.8,.2,1) both}.magic-burst-core .icon{width:38px;height:38px;stroke-width:2;filter:drop-shadow(0 0 12px color-mix(in srgb,var(--accent) 70%,transparent));animation:magicSpin 1.4s cubic-bezier(.2,.8,.2,1) both}.magic-spark{position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px color-mix(in srgb,var(--accent) 70%,transparent);transform:translate(-50%,-50%);animation:magicSpark 1.4s ease-out var(--delay, 0ms) both}@keyframes magicPop{0%{transform:scale(.3);opacity:0}35%{transform:scale(1.15);opacity:1}70%{transform:scale(1);opacity:1}to{transform:scale(1);opacity:0}}@keyframes magicSpin{0%{transform:rotate(-30deg) scale(.6)}50%{transform:rotate(15deg) scale(1.1)}to{transform:rotate(0) scale(1)}}@keyframes magicSpark{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translate(0)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translate(120px)}}.tbl{width:100%;border-collapse:collapse}.tbl th,.tbl td{text-align:left;padding:11px 14px}.tbl th{font-size:11.5px;font-weight:500;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.tbl tbody tr{border-bottom:1px solid var(--border)}.tbl tbody tr:last-child{border-bottom:0}.tbl tbody tr:hover{background:var(--surface-2)}.tbl td{font-size:13px}.tbl .mono{font-family:var(--font-mono);font-size:12px}.toggle{width:28px;height:16px;border-radius:999px;background:var(--border-strong);position:relative;cursor:pointer;transition:background .15s}.toggle:after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:0 1px 2px #0003}.toggle.on{background:var(--text)}.toggle.on:after{left:14px;background:var(--border-strong)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:20px}.tab{padding:9px 12px;font-size:13px;color:var(--text-3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:500}.tab:hover{color:var(--text-2)}.tab.active{color:var(--text);border-bottom-color:var(--text)}.pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-top:1px solid var(--border);font-size:12.5px;color:var(--text-3)}.pagination-pages{display:flex;gap:2px}.pagination-pages button{min-width:26px;height:26px;border-radius:5px;font-size:12px;color:var(--text-2);padding:0 6px}.pagination-pages button:hover{background:var(--surface-2)}.pagination-pages button.active{background:var(--text);color:var(--bg)}.pagination-pages button:disabled{opacity:.35;cursor:not-allowed}.pagination-ellipsis{min-width:26px;height:26px;display:grid;place-items:center;font-size:12px;color:var(--text-3);padding:0 4px;-webkit-user-select:none;user-select:none}.empty{padding:40px 20px;text-align:center;color:var(--text-3);font-size:13px}.empty-title{color:var(--text-2);font-size:14px;font-weight:500;margin-bottom:4px}.row{display:flex;align-items:center;gap:10px}.col{display:flex;flex-direction:column;gap:10px}.spacer{flex:1}.mono{font-family:var(--font-mono)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.truncate-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tbl tr.row-hover:hover td{background:var(--surface-2)}.input-error,.textarea.input-error,.select.input-error{border-color:#dd503f!important;box-shadow:0 0 0 3px #dd503f1f!important}.field-error{margin-top:6px;font-size:11.5px;color:#cc2a1b;display:flex;align-items:center;gap:4px}.field-error:before{content:"⚠";font-size:12px}.personality-card{text-align:left;border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:12px;cursor:pointer;transition:border-color .12s ease,background .12s ease;font-family:inherit;color:inherit}.personality-card:hover{border-color:var(--border-strong);background:var(--surface)}.personality-card:focus-visible{outline:2px solid var(--text);outline-offset:2px}.radio-dot{width:15px;height:15px;border-radius:50%;border:1.5px solid var(--border-strong);flex-shrink:0;position:relative;transition:border-color .12s}.radio-dot.on{border-color:#3883ff}.radio-dot.on:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:#3883ff}.personality-card.selected{border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text);background:var(--surface)}.chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:16px;padding:0 5px;margin-left:6px;border-radius:999px;font-size:10.5px;font-weight:600;font-family:var(--font-mono);background:color-mix(in srgb,currentColor 16%,transparent);color:inherit}.slideout-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;display:flex;justify-content:flex-end;animation:fadeIn .2s ease-out both}.slideout-panel{width:640px;max-width:100vw;height:100%;background:var(--bg);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slideInRight .26s cubic-bezier(.32,.72,0,1) both}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.slideout-body>*{flex-shrink:0}.kb-detail-heading{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--text-3);margin-bottom:10px}.kb-detail-grid{display:grid;grid-template-columns:1fr 1fr;background-color:var(--border);border:1px solid var(--border);border-radius:8px;overflow:hidden;gap:1px}.kb-detail-cell{background:var(--bg);display:flex;align-items:baseline;gap:12px;padding:10px 14px;font-size:12.5px;color:var(--text-2)}.kb-detail-key{color:var(--text-3);min-width:130px;flex-shrink:0}.date-range-trigger{display:inline-flex;align-items:center;gap:8px;padding:0 14px;height:36px;font-size:13px}.date-range-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:30;background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);display:grid;grid-template-columns:160px 1fr;overflow:hidden}.date-range-presets{background:var(--surface);border-right:1px solid var(--border);padding:12px 8px;display:flex;flex-direction:column;gap:2px;min-width:160px}.date-range-section-title{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:600;padding:6px 8px}.date-range-preset{text-align:left;background:transparent;border:none;border-radius:6px;padding:8px 10px;font-size:13px;color:var(--text-2);cursor:pointer;font-family:inherit}.date-range-preset:hover{background:var(--surface-2);color:var(--text)}.date-range-preset.active{background:var(--text);color:var(--bg);font-weight:500}.date-range-cal{padding:14px 16px 12px;display:flex;flex-direction:column;min-width:540px}.cal-header{display:flex;align-items:center;margin-bottom:6px}.cal-nav{width:28px;height:28px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit}.cal-nav:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.cal-nav:disabled{opacity:.35;cursor:not-allowed}.cal-months{display:grid;grid-template-columns:1fr 1fr;gap:22px}.cal-month-title{text-align:center;font-size:13px;font-weight:600;margin-bottom:8px;color:var(--text)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-weekdays{margin-bottom:4px}.cal-weekday{text-align:center;font-size:10.5px;color:var(--text-3);font-weight:600;padding:4px 0}.cal-day{background:transparent;border:none;font-family:inherit;font-size:12px;color:var(--text-2);padding:0;height:30px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;border-radius:0}.cal-day span{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background .08s ease,color .08s ease}.cal-day:hover:not(:disabled):not(.is-disabled) span{background:var(--surface-2);color:var(--text)}.cal-day.is-other-month{color:var(--text-4);opacity:.55}.cal-day.is-disabled{color:var(--text-4);cursor:not-allowed;opacity:.4}.cal-day.is-today span{box-shadow:inset 0 0 0 1px var(--border-strong);font-weight:600;color:var(--text)}.cal-day.in-range{background:#35b9c029}.cal-day.in-range.is-start{background:linear-gradient(to right,transparent 50%,oklch(.72 .11 200 / .16) 50%)}.cal-day.in-range.is-end{background:linear-gradient(to right,oklch(.72 .11 200 / .16) 50%,transparent 50%)}.cal-day.is-single{background:transparent}.cal-day.is-start span,.cal-day.is-end span{background:#00999f;background:oklch(.62 .13 200);color:#fff;font-weight:600}.cal-day.in-range:hover:not(.is-start):not(.is-end) span{background:#35b9c047;color:var(--text)}.cal-footer{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);display:flex;align-items:center;gap:8px}.cal-footer-range{flex:1;font-size:12.5px;color:var(--text);font-weight:500}.typing-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--text-3);animation:typing-bounce 1.1s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.api-toast-stack{position:fixed;right:18px;bottom:18px;z-index:200;display:flex;flex-direction:column;gap:8px;pointer-events:none}.api-toast{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px 14px;font-size:12.5px;color:var(--text);box-shadow:var(--shadow-lg);max-width:360px;animation:api-toast-in .22s ease both;pointer-events:auto}.api-toast.out{animation:api-toast-out .22s ease both}.api-toast-error{border-left:3px solid oklch(.62 .18 30)}.api-toast-success{border-left:3px solid oklch(.68 .12 160)}@keyframes api-toast-in{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes api-toast-out{to{transform:translateY(10px);opacity:0}}@keyframes wip-pulse{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}@media(max-width:1280px){.grid-5{grid-template-columns:repeat(3,1fr)}}.seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:2px;gap:2px}.seg-btn{background:transparent;border:0;padding:5px 11px;font-size:12px;color:var(--text-2);border-radius:6px;cursor:pointer;font-family:inherit}.seg-btn:hover{color:var(--text)}.seg-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font-weight:550}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--text-4)}.onb-shell{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:280px 1fr;background:var(--bg);z-index:1000}.onb-rail{border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;padding:18px 16px}.onb-brand{display:flex;align-items:center;gap:10px;padding:4px 6px 18px;border-bottom:1px solid var(--border);margin-bottom:14px}.brand-mark{width:32px;height:32px;border-radius:8px;background:var(--text);color:var(--bg);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;letter-spacing:-.02em}.onb-step{display:flex;align-items:flex-start;gap:11px;padding:10px 8px;border-radius:8px;cursor:default;position:relative;transition:background .1s}.onb-step.done{cursor:pointer}.onb-step.done:hover,.onb-step.active{background:var(--surface-2)}.onb-step:not(:last-child):after{content:"";position:absolute;left:21px;top:36px;bottom:-4px;width:1px;background:var(--border)}.onb-step-num{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:600;background:var(--surface-2);color:var(--text-3);border:1px solid var(--border);position:relative;z-index:1}.onb-step.active .onb-step-num{background:var(--text);color:var(--bg);border-color:var(--text)}.onb-step.done .onb-step-num{background:var(--success);color:#fff;border-color:var(--success)}.onb-step.done .onb-step-num svg{width:12px;height:12px}.onb-step-label{font-size:13px;font-weight:500;color:var(--text-2);line-height:1.3}.onb-step.active .onb-step-label{color:var(--text)}.onb-step-meta{font-size:11px;color:var(--text-3);margin-top:2px}.onb-rail-foot{padding-top:14px;border-top:1px solid var(--border)}.onb-main{display:flex;flex-direction:column;overflow:hidden}.onb-content{flex:1;overflow-y:auto;padding:56px 64px 40px;max-width:720px;width:100%;margin:0 auto}.onb-progress{height:3px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:24px}.onb-progress-bar{height:100%;background:var(--text);transition:width .3s ease}.onb-title{font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--text);line-height:1.2;margin:0 0 8px}.onb-desc{font-size:14px;color:var(--text-3);line-height:1.55;margin:0 0 28px;max-width:580px}.onb-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px;display:flex;flex-direction:column;gap:16px}.onb-required-banner{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--surface-2);border-radius:8px;font-size:12px;color:var(--text-2);margin:-4px 0 4px}.onb-required-banner svg{width:14px;height:14px;flex-shrink:0}.onb-radio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.onb-radio{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;cursor:pointer;background:var(--surface);transition:border-color .1s,background .1s}.onb-radio:hover{border-color:var(--text-3)}.onb-radio.selected{border-color:var(--text);background:var(--surface-2);box-shadow:0 0 0 1px var(--text)}.onb-radio input{margin-top:2px;accent-color:var(--text)}.onb-radio.big{padding:16px;flex:1}.onb-toggle-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.onb-tool{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer;transition:border-color .1s,background .1s}.onb-tool:hover{border-color:var(--text-3)}.onb-tool.attached{border-color:var(--text);background:var(--surface-2)}.onb-tool-check{flex-shrink:0;width:18px;height:18px;border-radius:5px;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;margin-top:1px;background:var(--bg)}.onb-tool.attached .onb-tool-check{background:var(--text);border-color:var(--text);color:var(--bg)}.onb-tool.attached .onb-tool-check svg{width:12px;height:12px}.onb-pick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.onb-pick{border:1px solid var(--border);border-radius:12px;padding:22px 18px;background:var(--surface);cursor:pointer;transition:border-color .1s,transform .1s}.onb-pick:hover{border-color:var(--text);transform:translateY(-1px)}.onb-pick-icon{width:36px;height:36px;border-radius:8px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;margin-bottom:12px}.onb-pick-icon svg{width:18px;height:18px;color:var(--text-2)}.onb-metric{display:flex;align-items:flex-start;gap:14px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.onb-metric.enabled{background:var(--surface)}.onb-finish-banner{margin-top:18px;padding:18px 20px;border-radius:12px;background:linear-gradient(135deg,var(--surface-2),var(--surface));border:1px solid var(--border);display:flex;align-items:center;gap:16px}.onb-finish-banner svg{width:32px;height:32px;color:var(--text-2);flex-shrink:0}.onb-footer{border-top:1px solid var(--border);background:var(--surface);padding:14px 64px;display:flex;align-items:center;gap:10px}.dev-onb-btn{position:fixed;bottom:16px;right:16px;z-index:999;display:flex;align-items:center;gap:8px;padding:7px 11px 7px 9px;border-radius:999px;background:var(--text);color:var(--bg);border:1px solid var(--text);font-family:inherit;font-size:11.5px;font-weight:500;letter-spacing:.02em;cursor:pointer;box-shadow:0 4px 14px #0000001f,0 0 0 4px var(--bg);opacity:.55;transition:opacity .15s,transform .15s,padding .15s}.dev-onb-btn:hover{opacity:1;transform:translateY(-1px)}.dev-onb-btn svg{width:13px;height:13px}.dev-onb-label{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.08em}.dev-onb-btn:hover .dev-onb-label{text-transform:none;letter-spacing:.01em;font-size:11.5px;font-weight:500}.dev-onb-kbd{display:none;align-items:center;gap:2px;padding-left:6px;margin-left:2px;border-left:1px solid rgba(255,255,255,.2)}.dev-onb-btn:hover .dev-onb-kbd{display:inline-flex}.dev-onb-btn .kbd{background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:var(--bg);padding:1px 4px;font-size:10px;border-radius:3px;font-family:var(--font-mono)}.ob-root *,.ob-root *:before,.ob-root *:after{box-sizing:border-box;margin:0;padding:0}.ob-root{height:100vh;width:100%;overflow:hidden;font-family:Inter,sans-serif}.ob-root button,.ob-root input,.ob-root textarea,.ob-root select{font-family:Inter,sans-serif}.ob-root button{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;box-sizing:border-box}.ob-root ::-webkit-scrollbar{display:none}.ob-root{--ob-bg: #fafaf9;--ob-bg-white: #ffffff;--ob-border: #e7e6e3;--ob-text-1: #1c1b1a;--ob-text-2: #57544f;--ob-text-3: #8a8781;--ob-active-bg: #f5f5f4}@keyframes ob-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes ob-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ob-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes ob-msg-right{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes ob-msg-left{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes ob-typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}@keyframes ob-drift{0%{opacity:0;transform:translateY(0)}8%{opacity:.55}85%{opacity:.5}to{opacity:0;transform:translateY(-960px)}}@keyframes ob-live-dot{0%,to{box-shadow:0 0 #4ade8099}50%{box-shadow:0 0 0 5px #4ade8000}}@keyframes ob-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ob-btn-next{padding:0 16px;height:40px;min-width:123px;border:none;border-radius:8px;background:#1c1b1a;color:#fff;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:opacity .15s;font-family:Inter,sans-serif}.ob-btn-next:hover{opacity:.84}.ob-btn-next:disabled{background:#e7e8e9;color:#9fa2a6;cursor:not-allowed;opacity:1}.ob-btn-prev{padding:0;height:40px;border:none;background:none;color:#57544f;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:color .15s;font-family:Inter,sans-serif}.ob-btn-prev:hover{color:#1c1b1a}.ob-input-error{border-color:#d32f2f!important;box-shadow:0 0 0 2px #d32f2f14!important}.ob-error-msg{font-size:11px;color:#d32f2f;margin-top:4px;font-family:Inter,sans-serif}.ob-input{width:100%;height:40px;border:1px solid #cfd0d2;border-radius:8px;font-size:14px;color:#101720;background:#fff;outline:none;padding:0 12px;line-height:20px;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .12s}.ob-input::placeholder{color:#9fa2a6}.ob-input:focus{border-color:#101720;box-shadow:0 0 0 2px #10172012}.ob-textarea{width:100%;border:1px solid #cfd0d2;border-radius:8px;font-size:14px;color:#101720;background:#fff;outline:none;padding:8px 12px;line-height:20px;resize:none;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .12s}.ob-textarea::placeholder{color:#9fa2a6}.ob-textarea:focus{border-color:#101720;box-shadow:0 0 0 2px #10172012}.ob-label{font-size:12px;font-weight:500;color:#282e36;display:flex;align-items:center;gap:4px;margin-bottom:6px;font-family:Inter,sans-serif}.ob-tone-card{flex:1;padding:14px 14px 12px;border-radius:12px;cursor:pointer;font-family:Inter,sans-serif;background:#fff;border:1.5px solid #e7e8e9;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;min-height:96px;transition:border-color .15s,background .15s}.ob-tone-card.active{border-color:#3883ff;background:#ebf3ff}.ob-tone-card:hover:not(.active){border-color:#b8b5b0;background:#fafaf9}.ob-item-row{display:flex;align-items:center;gap:16px;padding:16px;border-radius:8px;border:1px solid #e7e8e9;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.ob-item-row.checked{border-color:#1c1b1a;background:#f5f5f4}.ob-item-row:hover:not(.checked){border-color:#b0b0b0}.ob-shopify-row{display:flex;align-items:center;gap:16px;padding:16px;border-radius:12px;border:1px solid #e7e8e9;background:#fff}.ob-shopify-row.connected{border-color:#1c1b1a;background:#f5f5f4}.ob-btn-connect{padding:0 16px;height:36px;border:none;border-radius:8px;background:#0b8452;color:#fff;font-size:14px;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;white-space:nowrap;transition:opacity .15s;flex-shrink:0}.ob-btn-connect:hover{opacity:.88}.ob-btn-connect.connected{background:#8a8781;cursor:default;opacity:1}.ob-connected-pill{display:inline-flex;align-items:center;gap:7px;padding:0 12px;height:32px;border-radius:999px;background:#ecfdf5;border:1px solid #c2e8d4;color:#047857;font-size:13px;font-weight:500;font-family:Inter,sans-serif;flex-shrink:0}.ob-connected-dot{width:8px;height:8px;border-radius:50%;background:#10b981;box-shadow:0 0 #10b98180;animation:ob-pulse-dot 1.8s ease-out infinite}@keyframes ob-pulse-dot{0%{box-shadow:0 0 #10b98173}70%{box-shadow:0 0 0 6px #10b98100}to{box-shadow:0 0 #10b98100}}.ob-kb-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;border:1px solid #e7e8e9;background:#fff;cursor:pointer;transition:border-color .15s,background .15s;width:100%}.ob-kb-card.active{border-color:#1c1b1a;background:#f5f5f4}.ob-kb-card:hover:not(.active){border-color:#b0b0b0}.ob-tab-btn{padding:6px 12px 8px;border:none;border-bottom:2px solid transparent;background:none;font-size:14px;font-weight:500;color:#57544f;cursor:pointer;font-family:Inter,sans-serif;transition:color .15s;margin-bottom:-1px}.ob-tab-btn.active{color:#1c1b1a;border-bottom-color:#1c1b1a}.ob-tab-btn:hover:not(.active){color:#282e36}.ob-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1b1a6b;z-index:200;display:flex;align-items:center;justify-content:center;animation:ob-fade-in .15s ease}.ob-modal-card{background:#fff;border-radius:16px;width:min(520px,calc(100vw - 32px));max-height:88vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000029,0 4px 16px #00000014;animation:ob-scale-in .18s ease}.ob-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #f3f4f5;flex-shrink:0}.ob-modal-body{padding:20px 24px;overflow-y:auto;flex:1}.ob-modal-footer{padding:14px 24px;border-top:1px solid #f3f4f5;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0}.ob-modal-close{width:28px;height:28px;border-radius:6px;border:none;background:#f5f5f4;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.ob-modal-close:hover{background:#e7e6e3}.ob-modal-sec-btn{height:36px;padding:0 16px;border-radius:8px;border:1px solid #e7e8e9;background:#fff;color:#57544f;font-size:14px;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.ob-modal-sec-btn:hover{background:#f5f5f4}.ob-upload-zone{border:1.5px dashed #cfd0d2;border-radius:12px;padding:28px 20px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:#fafaf9}.ob-upload-zone:hover,.ob-upload-zone.dragging{border-color:#1c1b1a;background:#f5f5f4}.ob-file-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e7e8e9;border-radius:8px;background:#fafaf9}.ob-file-progress{height:3px;border-radius:2px;background:#e7e8e9;margin-top:5px;overflow:hidden}.ob-file-progress-bar{height:100%;border-radius:2px;transition:width .35s ease}.ob-added-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #e7e8e9;border-radius:8px;background:#fafaf9;transition:border-color .15s}.ob-added-item:hover{border-color:#c8c7c4}.ob-added-item-del{width:22px;height:22px;border-radius:4px;border:none;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#8a8781;font-size:16px;transition:background .12s;flex-shrink:0}.ob-added-item-del:hover{background:#f0f0ef;color:#1c1b1a}.ob-form-anim{animation:ob-card-in .2s ease both}.ob-intro-wrap{display:flex;align-items:stretch;height:100vh;width:100%;overflow:hidden;position:relative}.ob-intro-left{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 48px 60px 72px;position:relative;z-index:1}.ob-intro-right{width:530px;flex-shrink:0;display:flex;align-items:center;justify-content:flex-start;padding:60px 56px 60px 16px;position:relative;z-index:1}@media(max-width:900px){.ob-intro-right{display:none}.ob-intro-left{padding:80px 40px 48px;justify-content:flex-start;align-items:flex-start}}@media(max-width:480px){.ob-intro-left{padding:64px 24px 40px}.ob-intro-h1{font-size:26px!important;line-height:36px!important}.ob-intro-cta{flex-direction:column!important;align-items:stretch!important}}@media(max-width:520px){.ob-step1-grid{grid-template-columns:1fr!important}.ob-tone-row{flex-wrap:wrap!important}.ob-tone-row .ob-tone-card{flex:0 0 calc(50% - 5px)!important;min-width:0}}.app-error-fallback{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:32px 24px;text-align:center;background:var(--bg)}.app-error-title{margin:0 0 10px;font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--text-1)}.app-error-sub{margin:0 0 20px;max-width:360px;font-size:14px;line-height:1.5;color:var(--text-3)}.app-error-detail{margin:0 0 20px;padding:10px 12px;max-width:480px;width:100%;max-height:120px;overflow:auto;font-family:var(--font-mono);font-size:11px;line-height:1.45;text-align:left;color:var(--text-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);white-space:pre-wrap;word-break:break-word}.app-error-reload{min-width:140px}.lg-page{--lg-blue: #3883ff;--lg-blue-hover: #1b60ce;--lg-dark: #1c1b1a;--lg-text-1: #1c1b1a;--lg-text-2: #57544f;--lg-text-3: #8a8781;--lg-border: #e7e6e3;--lg-border-2: #d0cfc9;--lg-error: #d32f2f;--lg-success: #0e8c3a;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:#f0f2f5;font-family:Inter,sans-serif;opacity:0;transition:opacity .38s ease;box-sizing:border-box}.lg-page *,.lg-page *:before,.lg-page *:after{box-sizing:border-box}.lg-page.ready{opacity:1}@keyframes lg-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes lg-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lg-spin{to{transform:rotate(360deg)}}.lg-wrap{display:flex;width:100%;max-width:1060px;height:calc(100vh - 64px);max-height:900px;min-height:560px;background:#fff;border-radius:24px;overflow:hidden;position:relative;box-shadow:5.127px 5.127px 51.27px #aeaec04d,0 2.051px .2px #6176ff1a}.lg-wrap-inset{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:24px;pointer-events:none;z-index:999;box-shadow:inset 0 0 6.152px #0000001a,inset -2.051px -2.051px 4.102px #0000001a,inset 2.051px 4.102px 4.102px #ffffffb3}.lg-left{flex:1;min-width:0;position:relative;overflow:hidden;background:#0e0e0d}.lg-left-bg-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.lg-left-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(to bottom,#2d2d2d5e,#000000eb)}.lg-left-content{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-start;padding:44px 48px;color:#fff}.lg-left-headline{font-family:Poppins,sans-serif;font-size:38px;font-weight:700;line-height:1.15;letter-spacing:-.6px;color:#fff;margin:0}.lg-left-quote{font-family:Poppins,sans-serif;font-size:14px;color:#ffffff8c;line-height:22px;max-width:440px;margin:10px 0 0}.lg-right{width:440px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;overflow-y:auto;background:#fff}.lg-right-inner{width:100%;max-width:360px;flex-shrink:0;margin:auto 0;padding:44px 0;animation:lg-fade-up .35s ease both}.lg-right-logo{display:none;align-items:center;gap:9px;margin-bottom:28px}.lg-right-logomark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,#3883ff,#1ca3a0);display:flex;align-items:center;justify-content:center}.lg-heading{font-size:22px;font-weight:700;color:var(--lg-text-1);letter-spacing:-.3px;margin:0 0 4px}.lg-subhead{font-size:13.5px;color:var(--lg-text-3);line-height:21px;margin:0 0 24px}.lg-alert{display:flex;align-items:flex-start;gap:8px;background:#fff1f1;border:1px solid #f2b8b8;border-radius:8px;padding:10px 12px;font-size:13px;color:var(--lg-error);margin-bottom:18px;animation:lg-fade-in .2s ease}.lg-field{margin-bottom:16px}.lg-field-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.lg-label{font-size:13px;font-weight:500;color:#282e36;display:block;margin-bottom:6px}.lg-forgot{font-size:12px;color:var(--lg-blue);background:none;border:none;cursor:pointer;font-family:Inter,sans-serif;padding:0;transition:color .15s}.lg-forgot:hover{color:var(--lg-blue-hover)}.lg-input-wrap{position:relative}.lg-input{width:100%;height:46px;border:1.5px solid var(--lg-border-2);border-radius:10px;font-size:14px;color:var(--lg-text-1);background:#fff;outline:none;padding:0 14px;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .15s;user-select:text;-webkit-user-select:text}.lg-input::placeholder{color:#b0ada8}.lg-input:focus{border-color:var(--lg-blue);box-shadow:0 0 0 3px #3883ff1a,0 2px 6px #3883ff14}.lg-input.error{border-color:var(--lg-error);box-shadow:0 0 0 3px #d32f2f14}.lg-input.has-icon{padding-right:42px}.lg-error-msg{font-size:11.5px;color:var(--lg-error);margin-top:5px}.lg-pw-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--lg-text-3);display:flex;align-items:center;padding:2px;transition:color .15s}.lg-pw-eye:hover{color:var(--lg-text-1)}.lg-remember{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--lg-text-2);cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:20px;width:fit-content}.lg-checkbox{width:16px;height:16px;border-radius:4px;flex-shrink:0;border:1.5px solid var(--lg-border-2);background:#fff;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}.lg-checkbox.on{background:var(--lg-dark);border-color:var(--lg-dark)}.lg-submit{width:100%;height:46px;border-radius:10px;border:none;background:var(--lg-dark);color:#fff;font-size:15px;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .15s;margin-bottom:0}.lg-submit:hover:not(:disabled){opacity:.86}.lg-submit:disabled{background:#e7e8e9;color:#9fa2a6;cursor:not-allowed}.lg-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;animation:lg-spin .7s linear infinite}.lg-divider{display:flex;align-items:center;gap:12px;margin:20px 0}.lg-divider-line{flex:1;height:1px;background:var(--lg-border)}.lg-divider-text{font-size:11.5px;color:var(--lg-text-3);white-space:nowrap;font-weight:500}.lg-sso-row{display:flex;gap:12px;margin-bottom:24px}.lg-sso-btn{flex:1;height:46px;border-radius:10px;border:1.5px solid var(--lg-border);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;position:relative;text-decoration:none;color:inherit}.lg-sso-btn:hover{border-color:#b8b5b0;box-shadow:0 2px 8px #00000012}.lg-sso-btn:active{background:#fafaf9}.lg-sso-btn[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}.lg-sso-spinner{width:14px;height:14px;border-radius:50%;border:2px solid #e0e0e0;border-top-color:#8a8781;animation:lg-spin .7s linear infinite}.lg-sso-btn:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);background:var(--lg-dark);color:#fff;font-size:11px;font-weight:500;font-family:Inter,sans-serif;white-space:nowrap;padding:4px 9px;border-radius:5px;opacity:0;pointer-events:none;transition:opacity .15s}.lg-sso-btn:hover:after{opacity:1}.lg-footer{text-align:center;font-size:12px;color:var(--lg-text-3);line-height:19px;margin:0}.lg-footer strong,.lg-footer-em{color:var(--lg-text-2);font-weight:600}.lg-footer a{color:var(--lg-text-2);text-decoration:none;font-weight:500}.lg-footer a:hover{color:var(--lg-text-1)}.lg-view-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:18px;flex-shrink:0;background:#10172012;border:1px solid rgba(16,23,32,.1)}.lg-secondary-btn{width:100%;height:46px;border-radius:10px;border:1.5px solid var(--lg-border-2);background:#fff;color:var(--lg-text-2);font-size:14px;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;display:flex;align-items:center;justify-content:center;gap:6px;transition:border-color .15s,color .15s,background .15s;margin-top:10px}.lg-secondary-btn:hover{border-color:#b8b5b0;color:var(--lg-text-1);background:#fafaf9}.lg-text-btn{background:none;border:none;color:var(--lg-blue);font-size:13px;font-family:Inter,sans-serif;cursor:pointer;padding:0;transition:color .15s}.lg-text-btn:hover{color:var(--lg-blue-hover)}.lg-banner{display:flex;align-items:flex-start;gap:9px;border-radius:8px;padding:10px 12px;font-size:12.5px;line-height:18px;margin-bottom:18px;animation:lg-fade-in .25s ease}.lg-banner.info{background:#3883ff12;border:1px solid rgba(56,131,255,.22);color:#1a3f8f}.lg-banner.expired{background:#fff1f1;border:1px solid #f2b8b8;color:var(--lg-error)}.lg-banner.success{background:#1017200a;border:1px solid rgba(16,23,32,.12);color:var(--lg-text-2)}.lg-pw-reqs{display:flex;flex-direction:column;gap:5px;margin:8px 0 16px}.lg-req{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--lg-text-3);transition:color .18s}.lg-req.met{color:var(--lg-text-1)}.lg-req-dot{width:15px;height:15px;border-radius:50%;flex-shrink:0;border:1.5px solid var(--lg-border-2);background:#fff;display:flex;align-items:center;justify-content:center;transition:background .18s,border-color .18s}.lg-req.met .lg-req-dot{background:var(--lg-dark);border-color:var(--lg-dark)}.lg-otp-row{display:flex;gap:8px;justify-content:center}.lg-otp-input{width:46px;height:54px;padding:0;text-align:center;font-size:20px;font-weight:700;letter-spacing:0;flex-shrink:0}@media(max-width:480px){.lg-otp-input{width:42px;height:48px;font-size:17px}.lg-otp-row{gap:6px}}.lg-resend-row{text-align:center;font-size:13px;color:var(--lg-text-3);margin:8px 0 14px}.lg-redirect-row{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 0 22px}.lg-redirect-spinner{width:32px;height:32px;border-radius:50%;border:2.5px solid rgba(16,23,32,.12);border-top-color:var(--lg-dark);animation:lg-spin .9s linear infinite}.lg-redirect-text{font-size:12.5px;color:var(--lg-text-3);text-align:center;line-height:20px;margin:0}.lg-account-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.lg-account-btn{width:100%;height:46px;border-radius:10px;border:1.5px solid var(--lg-border);background:#fff;color:var(--lg-text-1);font-size:14px;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:border-color .15s,background .15s;text-align:left;padding:0 14px}.lg-account-btn:hover{border-color:#b8b5b0;background:#fafaf9}@media(max-width:820px){.lg-page{padding:0;align-items:stretch}.lg-wrap{border-radius:0;max-height:none;height:auto;min-height:100vh;flex-direction:column;box-shadow:none}.lg-left{display:none}.lg-right{width:100%;flex:1}.lg-right-inner{margin:0 32px;padding:72px 0 48px}.lg-right-logo{display:flex}}@media(max-width:480px){.lg-right-inner{margin:0 20px;padding:56px 0 40px}.lg-heading{font-size:20px}}
