:root{--color-primary:#4f46e5;--color-primary-hover:#4338ca;--color-primary-active:#3730a3;--color-primary-soft:#4f46e514;--color-primary-ring:#4f46e52e;--color-brand:#6366f1;--color-brand-2:#8b5cf6;--color-brand-3:#a855f7;--gradient-brand:linear-gradient(135deg, #6366f1 0%, #8b5cf6 55%, #a855f7 100%);--color-ink:#0f172a;--color-ink-2:#1e1b4b;--color-text:#111827;--color-text-secondary:#4b5563;--color-text-muted:#6b7280;--color-surface:#fff;--color-bg:#f4f6fb;--color-border:#e5e7eb;--color-border-strong:#d1d5db;--color-fill:#f3f4f6;--color-fill-hover:#e5e7eb;--color-success:#15803d;--color-success-bg:#f0fdf4;--color-danger:#b91c1c;--color-danger-text:#991b1b;--color-danger-bg:#fef2f2;--color-danger-border:#fecaca;--radius-sm:.375rem;--radius:.5rem;--radius-lg:.875rem;--shadow-card:0 1px 2px #1118270d, 0 8px 24px -8px #1118271f;--shadow-button:0 1px 2px #4f46e559;--transition:.15s ease;color:var(--color-text);background-color:var(--color-bg);font-family:system-ui,-apple-system,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.6}*{box-sizing:border-box}html{background:radial-gradient(56rem 36rem at 85% -8%, #a855f740, transparent 62%), radial-gradient(48rem 34rem at -12% 18%, #6366f138, transparent 58%), linear-gradient(#4f46e50e 1px, transparent 1px), linear-gradient(90deg, #4f46e50e 1px, transparent 1px), linear-gradient(180deg, #eceeff 0%, var(--color-bg) 26rem);background-size:auto,auto,2.75rem 2.75rem,2.75rem 2.75rem,auto;background-attachment:fixed}body{-webkit-font-smoothing:antialiased;margin:0}::selection{color:#fff;background:var(--color-primary)}main{background:var(--color-surface);border:1px solid #6366f124;border-radius:1rem;max-width:30rem;margin:4rem auto;padding:2.5rem;box-shadow:0 2px 4px #0f172a0a,0 20px 48px -16px #312e8138}main.auth{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);max-width:54rem;margin:5rem auto;padding:0;display:grid;overflow:hidden}.auth-brand{color:#e0e7ff;background:radial-gradient(24rem 16rem at 110% -10%, #a855f773, transparent 60%), linear-gradient(160deg, var(--color-ink-2) 0%, var(--color-ink) 100%);flex-direction:column;justify-content:center;gap:.875rem;padding:3rem 2.5rem;display:flex}.auth-brand .brand-badge{letter-spacing:.08em;color:#fff;background:#ffffff1f;border:1px solid #ffffff38;border-radius:999px;align-self:flex-start;margin:0;padding:.3rem .8rem;font-size:.78rem;font-weight:600}.auth-brand .brand-title{letter-spacing:-.02em;color:#fff;margin:0;font-size:1.75rem;font-weight:700;line-height:1.25}.auth-brand .brand-tagline{color:#c7d2fe;margin:0;font-size:.95rem}.auth-brand ul.brand-points{color:#a5b4fc;flex-direction:column;gap:.5rem;margin:.75rem 0 0;padding:0;font-size:.88rem;list-style:none;display:flex}.auth-brand ul.brand-points li:before{content:"✦";color:var(--color-brand-3);margin-right:.5rem}.auth-panel{background:var(--color-surface);padding:2.75rem 2.5rem}h1{letter-spacing:-.02em;margin-top:0;margin-bottom:.5rem;font-size:1.5rem;font-weight:700;line-height:1.3}main>p{color:var(--color-text-secondary)}a{color:var(--color-primary);border-radius:var(--radius-sm);transition:color var(--transition);text-decoration:none}a:hover{color:var(--color-primary-hover);text-underline-offset:.15em;text-decoration:underline}nav{flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1.5rem;font-size:.9rem;display:flex}main.home{max-width:62rem;box-shadow:none;background:0 0;border:none;border-radius:0;margin:0 auto;padding:0 1.5rem 4rem}section.hero{border-top:none;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:3rem;margin-top:0;padding:4.5rem 0 3.5rem;display:grid}.hero .eyebrow{letter-spacing:.05em;color:var(--color-primary-active);background:#6366f11a;border:1px solid #6366f147;border-radius:999px;align-items:center;gap:.4rem;margin:0 0 1.125rem;padding:.32rem .85rem;font-size:.8rem;font-weight:600;display:inline-flex}.hero h1{letter-spacing:-.03em;background:var(--gradient-brand);color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:.875rem;font-size:2.75rem;line-height:1.15}.hero p{max-width:30rem;color:var(--color-text-secondary);font-size:1.02rem}.hero p:last-of-type{margin-bottom:0}.hero-visual{min-height:19rem;position:relative}.hero-glow{background:radial-gradient(closest-side,#8b5cf666,#0000 72%);border-radius:50%;position:absolute;inset:12% 8%}.hero-tile{color:var(--color-ink-2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd1;border:1px solid #6366f140;border-radius:.9rem;padding:.7rem 1.1rem;font-size:.9rem;font-weight:600;animation:7s ease-in-out infinite hero-float;position:absolute;box-shadow:0 12px 32px -10px #312e8159}.hero-tile--a{top:8%;left:4%}.hero-tile--b{animation-delay:-2.4s;top:40%;right:2%}.hero-tile--c{animation-delay:-4.8s;bottom:10%;left:16%}@keyframes hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-.65rem)}}section.features{border-top:none;margin-top:1rem;padding-top:0}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1.125rem;margin-top:1.25rem;display:grid}.feature-card{background:var(--color-surface);transition:transform var(--transition), border-color var(--transition), box-shadow var(--transition);border:1px solid #6366f129;border-radius:1rem;padding:1.5rem 1.375rem;box-shadow:0 10px 28px -14px #312e8140}.feature-card:hover{border-color:#6366f173;transform:translateY(-3px);box-shadow:0 18px 40px -14px #312e8166}.feature-card .feature-icon{background:#6366f11f;border-radius:.75rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;margin-bottom:.875rem;font-size:1.25rem;display:inline-flex}.feature-card h3{letter-spacing:-.01em;margin:0 0 .375rem;font-size:1.02rem;font-weight:650}.feature-card p{color:var(--color-text-secondary);margin:0;font-size:.88rem}.cta-row{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}a.btn-primary,a.btn-secondary{text-align:center;border-radius:var(--radius);transition:color var(--transition), background-color var(--transition), border-color var(--transition), box-shadow var(--transition), filter var(--transition), transform var(--transition);padding:.7rem 1.5rem;font-size:.95rem;font-weight:600;display:inline-block}a.btn-primary{color:#fff;background:var(--gradient-brand);box-shadow:0 4px 14px -2px #6366f18c}a.btn-primary:hover{color:#fff;background:var(--gradient-brand);filter:brightness(1.07);text-decoration:none;transform:translateY(-1px);box-shadow:0 8px 22px -4px #6366f199}a.btn-primary:active{box-shadow:none;filter:brightness(.95);transform:translateY(0)}a.btn-secondary{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong)}a.btn-secondary:hover{color:var(--color-text);background:var(--color-fill);border-color:#9ca3af;text-decoration:none}.nav-grid{flex-direction:column;gap:1.25rem;display:flex}.nav-section-title{letter-spacing:.06em;color:var(--color-text-muted);margin:0 0 .625rem;font-size:.75rem;font-weight:600}.nav-pills{flex-wrap:wrap;gap:.5rem;display:flex}.nav-pills a,.nav-pills button[type=button]{color:var(--color-text-secondary);background:var(--color-fill);transition:color var(--transition), background-color var(--transition), border-color var(--transition);border:1px solid #0000;border-radius:999px;padding:.45rem .85rem;font-size:.875rem;font-weight:500;text-decoration:none}.nav-pills a:hover,.nav-pills button[type=button]:hover{color:var(--color-primary);background:var(--color-primary-soft);border-color:var(--color-primary-ring);text-decoration:none}form{flex-direction:column;gap:1.125rem;margin-top:1.5rem;display:flex}label{color:var(--color-text-secondary);flex-direction:column;gap:.375rem;font-size:.875rem;font-weight:500;display:flex}input,textarea{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);transition:border-color var(--transition), box-shadow var(--transition);border-radius:.625rem;padding:.7rem .875rem;font-family:inherit}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--color-brand)}input:focus,textarea:focus{border-color:var(--color-brand);box-shadow:0 0 0 4px var(--color-primary-ring), 0 4px 14px -6px #6366f159;outline:none}input:disabled,textarea:disabled{color:var(--color-text-muted);background:var(--color-fill);cursor:not-allowed}input[type=checkbox],input[type=radio]{width:1rem;height:1rem;accent-color:var(--color-primary);padding:0}button{font:inherit;color:#fff;background:var(--gradient-brand);cursor:pointer;transition:background-color var(--transition), box-shadow var(--transition), filter var(--transition), transform var(--transition);border:none;border-radius:.625rem;padding:.6rem 1.125rem;font-weight:500;box-shadow:0 3px 12px -2px #6366f180}button:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 8px 20px -4px #6366f18c}button:active:not(:disabled){box-shadow:none;filter:brightness(.95);transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.6}button[type=button]{font-weight:inherit;color:var(--color-primary);border-radius:var(--radius-sm);box-shadow:none;cursor:pointer;background:0 0;border:none;padding:0}button[type=button]:hover:not(:disabled){color:var(--color-primary-hover);text-underline-offset:.15em;background:0 0;text-decoration:underline;transform:none}.oauth button[type=button]{text-align:center;width:100%;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius);margin-top:.5rem;padding:.6rem 1rem;font-weight:500;display:block}.oauth button[type=button]:hover:not(:disabled){color:var(--color-text);background:var(--color-fill);border-color:#9ca3af;text-decoration:none}.auth form{gap:1.375rem}.auth form label{gap:.5rem}.auth form button[type=submit]{width:100%;margin-top:.25rem;padding:.7rem 1rem}.auth form .btn-primary{letter-spacing:.02em;padding:.8rem 1rem;font-weight:600}.auth form .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px -2px #4f46e573}.auth form .btn-primary:active:not(:disabled){box-shadow:none;transform:translateY(0)}.auth nav{justify-content:center;font-size:.8rem}.auth nav a{color:var(--color-text-muted);font-weight:400}.auth nav a:hover{color:var(--color-primary)}.error{color:var(--color-danger-text);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius);margin:0;padding:.625rem .75rem;font-size:.875rem}.hint{color:var(--color-text-secondary);background:var(--color-fill);border-radius:var(--radius);padding:.625rem .75rem;font-size:.875rem}.hint[role=status]{color:var(--color-success);background:var(--color-success-bg);border:1px solid #bbf7d0}.status{color:var(--color-text-muted);border:1px solid var(--color-border);background:#ffffffbf;border-radius:999px;align-items:center;gap:.5rem;margin-top:2rem;padding:.4rem .95rem;font-size:.85rem;font-weight:500;display:inline-flex;box-shadow:0 2px 8px -2px #0f172a14}.status:before{content:"";background:#9ca3af;border-radius:50%;flex:none;width:.5rem;height:.5rem}.status--online{color:var(--color-success);background:var(--color-success-bg);border-color:#bbf7d0}.status--online:before{background:#22c55e;box-shadow:0 0 0 3px #22c55e33}.status--offline{color:var(--color-danger);background:var(--color-danger-bg);border-color:var(--color-danger-border)}.status--offline:before{background:#ef4444;box-shadow:0 0 0 3px #ef444433}.signed-in{margin-top:1.5rem;font-size:.95rem}.muted{color:var(--color-text-muted);font-size:.85rem}section{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:1.5rem}section h2{letter-spacing:-.01em;margin-top:0;margin-bottom:.5rem;font-size:1.05rem;font-weight:600}section.oauth>p:first-child{color:var(--color-text-muted);text-align:center;font-size:.85rem}table{border:1px solid var(--color-border);border-collapse:separate;border-spacing:0;border-radius:var(--radius);width:100%;margin-top:.75rem;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--color-border);padding:.625rem .75rem;font-size:.875rem}tr:last-child td{border-bottom:none}thead th{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-fill);font-size:.75rem;font-weight:600}tbody tr{transition:background-color var(--transition)}tbody tr:hover,tr.edit-row td{background:var(--color-primary-soft)}pre.payload,pre.report-body{border:1px solid var(--color-border);border-radius:var(--radius);white-space:pre-wrap;overflow-wrap:anywhere;background:#f8fafc;max-height:20rem;margin:.5rem 0;padding:.75rem .875rem;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,monospace;font-size:.8rem;line-height:1.55;overflow:auto}.button-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}ul.pipeline{margin:.5rem 0;padding-left:1.25rem;font-size:.85rem}form.edit-follow{background:var(--color-fill);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem}@media (width<=52rem){main.auth{grid-template-columns:1fr}.auth-brand{padding:2rem 2.5rem}.auth-brand ul.brand-points{display:none}section.hero{grid-template-columns:1fr;gap:1.5rem;padding:3.25rem 0 2.5rem}.hero-visual{display:none}}@media (width<=36rem){main,main.auth{border-left:none;border-right:none;border-radius:0;margin:0 auto}main.home{padding:0 1.25rem 3rem}.hero h1{font-size:2.1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
