.legal-page{min-height:100vh;background:var(--canvas);font-family:Pretendard Variable,Pretendard,system-ui,sans-serif;color:var(--ink)}.legal-header{display:flex;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid rgba(24,23,19,.08);background:#f7f4edf5;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.legal-header h1{font-size:1.1rem;font-weight:700;margin:0}.legal-back{border:none;background:transparent;color:var(--ink-muted);font-size:.9rem;cursor:pointer;padding:4px 8px;border-radius:6px}.legal-back:hover{background:#1817130f}.legal-content{max-width:720px;margin:0 auto;padding:32px 24px 80px;line-height:1.8}.legal-content section{margin-bottom:32px}.legal-content h2{font-size:1.05rem;font-weight:700;margin:0 0 10px;color:var(--ink)}.legal-content p{font-size:.92rem;margin:0 0 8px;color:#2c2b25}.legal-content ul{margin:0 0 8px;padding:0 0 0 20px}.legal-content li{font-size:.92rem;margin-bottom:6px;color:#2c2b25}.legal-content strong{font-weight:700;color:var(--ink)}.legal-content a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}@media(max-width:600px){.legal-content{padding:24px 16px 60px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }:root{--inherit: inherit;--current: currentColor;--transparent: transparent;--black: #000;--white: #fff;--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--slate-400: #94a3b8;--slate-500: #64748b;--slate-600: #475569;--slate-700: #334155;--slate-800: #1e293b;--slate-900: #0f172a;--slate-950: #020617;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--gray-950: #030712;--zinc-50: #fafafa;--zinc-100: #f4f4f5;--zinc-200: #e4e4e7;--zinc-300: #d4d4d8;--zinc-400: #a1a1aa;--zinc-500: #71717a;--zinc-600: #52525b;--zinc-700: #3f3f46;--zinc-800: #27272a;--zinc-900: #18181b;--zinc-950: #09090b;--neutral-50: #fafafa;--neutral-100: #f5f5f5;--neutral-200: #e5e5e5;--neutral-300: #d4d4d4;--neutral-400: #a3a3a3;--neutral-500: #737373;--neutral-600: #525252;--neutral-700: #404040;--neutral-800: #262626;--neutral-900: #171717;--neutral-950: #0a0a0a;--stone-50: #fafaf9;--stone-100: #f5f5f4;--stone-200: #e7e5e4;--stone-300: #d6d3d1;--stone-400: #a8a29e;--stone-500: #78716c;--stone-600: #57534e;--stone-700: #44403c;--stone-800: #292524;--stone-900: #1c1917;--stone-950: #0c0a09;--red-50: #fef2f2;--red-100: #fee2e2;--red-200: #fecaca;--red-300: #fca5a5;--red-400: #f87171;--red-500: #ef4444;--red-600: #dc2626;--red-700: #b91c1c;--red-800: #991b1b;--red-900: #7f1d1d;--red-950: #450a0a;--orange-50: #fff7ed;--orange-100: #ffedd5;--orange-200: #fed7aa;--orange-300: #fdba74;--orange-400: #fb923c;--orange-500: #f97316;--orange-600: #ea580c;--orange-700: #c2410c;--orange-800: #9a3412;--orange-900: #7c2d12;--orange-950: #431407;--amber-50: #fffbeb;--amber-100: #fef3c7;--amber-200: #fde68a;--amber-300: #fcd34d;--amber-400: #fbbf24;--amber-500: #f59e0b;--amber-600: #d97706;--amber-700: #b45309;--amber-800: #92400e;--amber-900: #78350f;--amber-950: #451a03;--yellow-50: #fefce8;--yellow-100: #fef9c3;--yellow-200: #fef08a;--yellow-300: #fde047;--yellow-400: #facc15;--yellow-500: #eab308;--yellow-600: #ca8a04;--yellow-700: #a16207;--yellow-800: #854d0e;--yellow-900: #713f12;--yellow-950: #422006;--lime-50: #f7fee7;--lime-100: #ecfccb;--lime-200: #d9f99d;--lime-300: #bef264;--lime-400: #a3e635;--lime-500: #84cc16;--lime-600: #65a30d;--lime-700: #4d7c0f;--lime-800: #3f6212;--lime-900: #365314;--lime-950: #1a2e05;--green-50: #f0fdf4;--green-100: #dcfce7;--green-200: #bbf7d0;--green-300: #86efac;--green-400: #4ade80;--green-500: #22c55e;--green-600: #16a34a;--green-700: #15803d;--green-800: #166534;--green-900: #14532d;--green-950: #052e16;--emerald-50: #ecfdf5;--emerald-100: #d1fae5;--emerald-200: #a7f3d0;--emerald-300: #6ee7b7;--emerald-400: #34d399;--emerald-500: #10b981;--emerald-600: #059669;--emerald-700: #047857;--emerald-800: #065f46;--emerald-900: #064e3b;--emerald-950: #022c22;--teal-50: #f0fdfa;--teal-100: #ccfbf1;--teal-200: #99f6e4;--teal-300: #5eead4;--teal-400: #2dd4bf;--teal-500: #14b8a6;--teal-600: #0d9488;--teal-700: #0f766e;--teal-800: #115e59;--teal-900: #134e4a;--teal-950: #042f2e;--cyan-50: #ecfeff;--cyan-100: #cffafe;--cyan-200: #a5f3fc;--cyan-300: #67e8f9;--cyan-400: #22d3ee;--cyan-500: #06b6d4;--cyan-600: #0891b2;--cyan-700: #0e7490;--cyan-800: #155e75;--cyan-900: #164e63;--cyan-950: #083344;--sky-50: #f0f9ff;--sky-100: #e0f2fe;--sky-200: #bae6fd;--sky-300: #7dd3fc;--sky-400: #38bdf8;--sky-500: #0ea5e9;--sky-600: #0284c7;--sky-700: #0369a1;--sky-800: #075985;--sky-900: #0c4a6e;--sky-950: #082f49;--blue-50: #eff6ff;--blue-100: #dbeafe;--blue-200: #bfdbfe;--blue-300: #93c5fd;--blue-400: #60a5fa;--blue-500: #3b82f6;--blue-600: #2563eb;--blue-700: #1d4ed8;--blue-800: #1e40af;--blue-900: #1e3a8a;--blue-950: #172554;--indigo-50: #eef2ff;--indigo-100: #e0e7ff;--indigo-200: #c7d2fe;--indigo-300: #a5b4fc;--indigo-400: #818cf8;--indigo-500: #6366f1;--indigo-600: #4f46e5;--indigo-700: #4338ca;--indigo-800: #3730a3;--indigo-900: #312e81;--indigo-950: #1e1b4b;--violet-50: #f5f3ff;--violet-100: #ede9fe;--violet-200: #ddd6fe;--violet-300: #c4b5fd;--violet-400: #a78bfa;--violet-500: #8b5cf6;--violet-600: #7c3aed;--violet-700: #6d28d9;--violet-800: #5b21b6;--violet-900: #4c1d95;--violet-950: #2e1065;--purple-50: #faf5ff;--purple-100: #f3e8ff;--purple-200: #e9d5ff;--purple-300: #d8b4fe;--purple-400: #c084fc;--purple-500: #a855f7;--purple-600: #9333ea;--purple-700: #7e22ce;--purple-800: #6b21a8;--purple-900: #581c87;--purple-950: #3b0764;--fuchsia-50: #fdf4ff;--fuchsia-100: #fae8ff;--fuchsia-200: #f5d0fe;--fuchsia-300: #f0abfc;--fuchsia-400: #e879f9;--fuchsia-500: #d946ef;--fuchsia-600: #c026d3;--fuchsia-700: #a21caf;--fuchsia-800: #86198f;--fuchsia-900: #701a75;--fuchsia-950: #4a044e;--pink-50: #fdf2f8;--pink-100: #fce7f3;--pink-200: #fbcfe8;--pink-300: #f9a8d4;--pink-400: #f472b6;--pink-500: #ec4899;--pink-600: #db2777;--pink-700: #be185d;--pink-800: #9d174d;--pink-900: #831843;--pink-950: #500724;--rose-50: #fff1f2;--rose-100: #ffe4e6;--rose-200: #fecdd3;--rose-300: #fda4af;--rose-400: #fb7185;--rose-500: #f43f5e;--rose-600: #e11d48;--rose-700: #be123c;--rose-800: #9f1239;--rose-900: #881337;--rose-950: #4c0519}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.isolate{isolation:isolate}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.inline-grid{display:inline-grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.border{border-width:1px}.uppercase{text-transform:uppercase}.\!italic{font-style:italic!important}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:Pretendard Variable,Pretendard,system-ui,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif;font-weight:400;line-height:1.5;--font-mono: "SF Mono", ui-monospace, Menlo, Consolas, monospace;--text-xs: .78rem;--text-sm: .88rem;--text-base: 1rem;--text-lg: 1.1rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.8rem;--text-4xl: 2.4rem;--ink: #181713;--ink-muted: #6a6258;--ink-faint: rgba(24, 23, 19, .5);--canvas: white;--canvas-soft: #fcfbf8;--surface: #ffffff;--surface-translucent: rgba(255, 255, 255, .72);--surface-strong: rgba(255, 255, 255, .92);--border: rgba(24, 23, 19, .08);--border-strong: rgba(24, 23, 19, .16);--accent: #111111;--accent-strong: #000000;--accent-soft: #f3f4f6;--accent-fg: white;--accent-badge: #111111;--danger: #eb1c24;--danger-soft: #ef7d72;--danger-bg: rgba(235, 28, 36, .08);--danger-bg-strong: rgba(235, 28, 36, .12);--warning: #f0c96c;--warning-bg: rgba(240, 201, 108, .14);--success-bg: rgba(17, 17, 17, .08);--roas-pos: #1a7f37;--roas-mid: #b08900;--roas-neg: #eb1c24;--platform-tiktok: #e0364f;--platform-meta: #4156d6;--platform-kakao: #8a6d00;--platform-google: #1a7f37;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--shadow-sm: 0 2px 8px rgba(24, 23, 19, .06);--shadow-md: 0 12px 32px rgba(24, 23, 19, .08);--shadow-lg: 0 24px 80px rgba(73, 43, 24, .12);--transition-fast: .12s ease;--transition-base: .15s ease;--z-sticky: 100;--z-modal: 1000;--z-toast: 2000;color:var(--ink);background:var(--canvas);color-scheme:light}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top left,rgba(17,17,17,.04),transparent 30%),radial-gradient(circle at bottom right,rgba(240,201,108,.12),transparent 28%),var(--canvas);color:var(--ink)}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.02em;margin:0}p{margin:0}code{font-family:var(--font-mono);font-size:.9em;background:#1817130f;padding:2px 6px;border-radius:var(--radius-sm)}.hero-shell{min-height:100vh;display:grid;place-items:center;padding:var(--space-6)}.narrow-shell{width:min(520px,calc(100vw - 32px));margin:0 auto;padding:var(--space-7) 0 var(--space-8)}.login-shell{min-height:100vh;display:flex;flex-direction:column;justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;border-radius:12px;border:0;font-weight:600;font-size:var(--text-base);transition:background var(--transition-base),transform 50ms ease,color var(--transition-base),border-color var(--transition-base);text-decoration:none;white-space:nowrap;line-height:1}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-strong);color:#fff;text-decoration:none}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--border-strong)}.btn-ghost:hover:not(:disabled){background:#1817130a;text-decoration:none}.btn-sm{padding:10px 16px;font-size:.92rem;border-radius:10px}.btn-link{background:transparent;color:var(--ink-muted);border:0;padding:8px 12px;font-size:var(--text-sm);font-weight:500;border-radius:var(--radius-sm)}.btn-link:hover:not(:disabled){color:var(--ink);background:#1817130a;text-decoration:none}.btn-danger-solid{background:var(--danger);color:#fff}.btn-danger-solid:hover:not(:disabled){filter:brightness(.92)}.btn-danger-ghost{background:transparent;color:var(--ink-muted);border:1px solid var(--border);padding:7px 12px;font-size:var(--text-sm);border-radius:var(--radius-sm);font-weight:500}.btn-danger-ghost:hover:not(:disabled){color:var(--danger);border-color:#eb1c244d;background:var(--danger-bg)}.btn-oauth{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:12px;font-weight:600;font-size:var(--text-base);width:100%;text-decoration:none;transition:background var(--transition-base),transform 50ms ease;border:0}.btn-oauth:active{transform:scale(.99)}.btn-oauth:hover{text-decoration:none}.btn-oauth.kakao{background:#fee500;color:#191919}.btn-oauth.kakao:hover{background:#fdd835}.btn-oauth.google{background:#fff;color:#3c4043;border:1px solid #dadce0}.btn-oauth.google:hover{background:#f8f9fa}.badge{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--ink);font-weight:500;font-size:var(--text-sm);line-height:1;white-space:nowrap}.badge--sm{padding:5px 11px;gap:4px;font-size:var(--text-xs);font-weight:600;line-height:1.2}.badge--success{background:var(--roas-pos);color:#fff}.badge--warning{background:var(--warning-bg);color:#8a5a00}.badge--danger{background:var(--danger);color:var(--accent-fg)}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.spinner-row{display:inline-flex;align-items:center;gap:6px;color:var(--ink-muted)}.loading-bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--accent-soft);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:var(--text-base);font-weight:600;color:var(--ink)}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:#0000004d;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.modal-box{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-5);max-width:100%;box-shadow:var(--shadow-lg)}.modal-title{margin:0 0 var(--space-4);font-size:var(--text-lg)}.select{padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font-size:var(--text-base);line-height:1.5;cursor:pointer;transition:border-color .12s,box-shadow .12s}.select:hover:not(:disabled){border-color:var(--border-strong)}.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #1111111f}.select:disabled{opacity:.6;cursor:not-allowed}.select--sm{padding:6px 10px;border-radius:var(--radius-sm);font-size:var(--text-sm);line-height:1.4}.tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-5);border-bottom:1px solid var(--border)}.tab{padding:var(--space-2) var(--space-4);border:none;background:transparent;cursor:pointer;font-size:var(--text-base);font-weight:600;color:var(--ink-muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tab:hover{color:var(--ink)}.tab.is-active{color:var(--ink);border-bottom-color:var(--accent)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.segmented__btn{padding:6px 12px;border:none;cursor:pointer;font-size:var(--text-sm);font-weight:600;background:var(--surface);color:var(--ink)}.segmented__btn.is-active{background:var(--accent);color:var(--accent-fg)}.page-header{margin-bottom:var(--space-4)}.page-header__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.page-header h1{font-size:var(--text-xl)}.page-header__actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.page-header__subtitle{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--ink-faint)}.card{background:#fffc;border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4);border:1px solid var(--border)}.card.highlight{background:var(--accent-soft);border-color:#1111111f}.card h2{font-size:var(--text-lg);font-weight:700;letter-spacing:-.01em;margin-bottom:var(--space-3)}.banner{padding:14px 18px;border-radius:var(--radius-md);font-size:.92rem;margin-bottom:var(--space-5);background:var(--accent-soft);color:#111;line-height:1.5}.banner.error{background:var(--danger-bg);color:#6f1015}.banner.success{background:var(--success-bg);color:#111}.banner.warning{background:var(--warning-bg);color:#6b4c00}.banner strong{font-weight:700}.banner p{margin-top:6px;color:#18171399;font-size:var(--text-sm)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field-label{font-size:var(--text-sm);font-weight:600;color:var(--ink-muted);letter-spacing:.02em}.field-hint{font-size:var(--text-xs);color:var(--ink-muted)}.field-error{font-size:var(--text-xs);color:var(--danger)}.input,.textarea{width:100%;padding:10px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font-size:var(--text-base);line-height:1.5;transition:border-color var(--transition-base),box-shadow var(--transition-base);outline:none}.input:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1111111f}.input:disabled,.textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--canvas)}.input--sm{padding:6px 10px;border-radius:var(--radius-sm);font-size:var(--text-sm);line-height:1.4}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.textarea{min-height:140px;resize:vertical;font-family:inherit}.data-list{list-style:none;padding:0;margin:0}.data-list__item{display:flex;gap:var(--space-3);padding:14px 0;border-bottom:1px solid var(--border);align-items:flex-start;justify-content:space-between}.data-list__item:last-child{border-bottom:0}.data-list__item--center{align-items:center}.data-list__item{flex-wrap:wrap}.data-list__item>*{min-width:0}.data-list__main{flex:1;min-width:0}.muted{color:var(--ink-muted)}.hint{color:var(--ink-muted);font-size:var(--text-sm)}.small{font-size:var(--text-xs)}.field-label{font-size:var(--text-xs);color:var(--ink-muted);margin-bottom:var(--space-1)}.card-subtitle{font-size:var(--text-xs);color:var(--ink-muted);font-weight:400}.delete-x{border:none;background:none;cursor:pointer;color:var(--danger);font-size:var(--text-sm)}.toggle{position:relative;display:inline-flex;align-items:center;justify-content:flex-end;min-width:72px;height:34px;padding:0 12px 0 36px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--ink-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:0;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.toggle.is-on{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);justify-content:flex-start;padding:0 36px 0 12px}.toggle__knob{position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:999px;background:var(--canvas);box-shadow:var(--shadow-sm);transition:transform .16s ease}.toggle.is-on .toggle__knob{transform:translate(38px)}.toggle__text{line-height:1}.toggle:disabled{opacity:.5;cursor:not-allowed}.apps-page__provider-icon,.apps-page__item-icon{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--canvas-soft)}.apps-page__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.apps-page__item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:8px;background:var(--surface)}.apps-page__item-main{min-width:0;display:flex;align-items:center;gap:var(--space-3)}.apps-page__item-main div{min-width:0;display:grid;gap:2px}.apps-page__item-main strong,.apps-page__item-main span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apps-page__item-icon{width:40px;height:40px}.apps-page__item-actions{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-3)}.apps-page__status{min-height:26px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;font-size:var(--text-xs);font-weight:700;background:var(--accent-soft);color:var(--ink)}.apps-page__status--disconnected{background:var(--danger-bg);color:var(--danger)}@media(max-width:720px){.apps-page__hero,.apps-page__item{grid-template-columns:1fr}.apps-page__item{align-items:stretch;flex-direction:column}.apps-page__item-actions{justify-content:space-between}}.help-page{max-width:780px;margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-9);display:flex;flex-direction:column;gap:var(--space-6)}.help-head h1{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em}.help-sub{margin-top:var(--space-1);color:var(--ink-muted);font-size:var(--text-sm)}.help-legend{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-4)}.help-legend-item{display:inline-flex;align-items:center;gap:var(--space-2)}.help-legend-hint{color:var(--ink-faint);font-size:var(--text-xs)}.help-group{display:flex;flex-direction:column;gap:var(--space-2)}.help-group h2{margin-bottom:var(--space-1);color:var(--ink);font-size:var(--text-base);font-weight:700}.help-item{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.help-item[open]{border-color:var(--border-strong)}.help-item>summary{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;list-style:none;font-weight:600;font-size:var(--text-sm)}.help-item>summary::-webkit-details-marker{display:none}.help-item>summary:after{content:"＋";color:var(--ink-faint);font-weight:400}.help-item[open]>summary:after{content:"－"}.help-q{flex:1}.help-tags{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-1);flex-shrink:0}.help-body{display:flex;flex-direction:column;gap:var(--space-3);padding:0 var(--space-4) var(--space-4);color:var(--ink);font-size:var(--text-sm)}.help-body p{line-height:1.6}.help-steps,.help-list{display:flex;flex-direction:column;gap:var(--space-2);padding-left:var(--space-5);line-height:1.55}.help-steps{list-style:decimal}.help-list{list-style:disc}.help-body code{padding:0 var(--space-1);border-radius:var(--radius-sm);background:var(--accent-soft);font-size:.92em}.help-warn,.help-ok{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-xs)}.help-warn{background:var(--warning-bg)}.help-ok{background:var(--success-bg)}.help-shot{width:100%;border:1px solid var(--border);border-radius:var(--radius-md)}.help-shot--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:120px;padding:var(--space-3);border-style:dashed;color:var(--ink-faint);font-size:var(--text-xs);text-align:center}.help-steps .help-shot{margin:var(--space-2) 0 var(--space-3)}.help-shot-alt{color:var(--ink-muted)}.help-shot-file{font-family:var(--font-mono)}.alert-settings__intro{font-size:var(--text-sm);margin:0 0 var(--space-4)}.alert-settings__cards{display:grid;gap:var(--space-4)}.alert-settings__nested{padding-left:var(--space-4);border-left:2px solid var(--border)}@media(max-width:720px){.alert-settings__nested{padding-left:var(--space-2)}}.alert-card{display:grid;gap:var(--space-3)}.rule-conds{display:flex;gap:var(--space-5);flex-wrap:wrap;align-items:flex-start}.rule-conds__col{display:grid;gap:var(--space-1);align-content:start;min-width:0}.rule-conds__head{font-size:var(--text-sm);font-weight:600;margin:0 0 var(--space-1)}.rule-conds__hint{margin:var(--space-1) 0 0;font-size:var(--text-xs)}.cond-group{display:grid;gap:var(--space-1)}.cond-row{display:flex;align-items:center;gap:6px}.cond-row__metric{width:176px;flex:none}.cond-row__op{width:62px;flex:none;text-align:center}.cond-row__value{width:108px;flex:none;text-align:right;font-variant-numeric:tabular-nums}.cond-row__unit{font-size:var(--text-sm);color:var(--ink-muted);width:16px}.cond-or{display:flex;align-items:center;gap:var(--space-2);color:var(--ink-faint);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;margin:var(--space-1) 0}.cond-or:before,.cond-or:after{content:"";flex:1;height:1px;background:var(--border)}.inc-chips{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.inc-chip{display:inline-flex;align-items:center;gap:4px}.inc-chip__value{width:64px;text-align:right;font-variant-numeric:tabular-nums}.inc-chip__unit{font-size:var(--text-sm);color:var(--ink-muted)}.alert-card__meta{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:start}.alert-card__meta label{display:grid;gap:4px;min-width:200px;align-content:start}.alert-card__label{font-size:var(--text-xs);font-weight:600}.alert-card__note{font-size:var(--text-sm)}.alert-card__actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.budget-times{display:grid;grid-template-columns:max-content max-content;gap:var(--space-2) var(--space-3);align-items:center}.budget-times__chip{justify-self:start;display:inline-flex;align-items:center;gap:var(--space-1);background:var(--accent-soft);border-radius:var(--radius-pill);padding:4px 6px 4px 12px;font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-weight:600}.budget-times__add{grid-column:1 / -1;display:flex;gap:var(--space-2);align-items:center}.budget-times__pct{display:inline-flex;align-items:center;gap:6px}.budget-times__pct .input{width:108px;text-align:right;font-variant-numeric:tabular-nums}@media(max-width:560px){.budget-times__pct .input{width:80px}}.alert-card__tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-right:auto}@media(max-width:760px){.cond-row__metric{width:148px}.cond-row__value{width:88px}}@media(max-width:560px){.rule-conds{gap:var(--space-3)}.rule-conds__col{overflow-x:auto;padding-bottom:4px}.cond-group{min-width:-moz-max-content;min-width:max-content}.cond-row__metric{width:136px}.cond-row__value{width:80px}.alert-card__meta label{min-width:0;width:100%}.alert-card__meta{gap:var(--space-3)}}.alert-card__fields{border:none;padding:0;margin:0;min-width:0;display:grid;gap:var(--space-3)}.alert-card__fields:disabled{opacity:.72}@media(max-width:640px){.plat-2x2{grid-template-columns:minmax(0,1fr)!important}.plat-2x2>*:not(:first-child) .plat-thead{display:none!important}}.alert-preview{margin-top:var(--space-3)}.alert-preview summary{cursor:pointer;font-size:var(--text-xs);color:var(--ink-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.alert-preview summary:hover{color:var(--ink)}.alert-preview__msg{background:var(--canvas-soft);border:1px solid var(--border);border-radius:var(--radius-md);padding:9px 12px}.alert-preview__btns{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.alert-preview__btn{font-size:var(--text-xs);font-weight:700;padding:5px 12px;border-radius:4px;border:1px solid var(--border-strong);background:var(--surface);color:var(--ink)}.alert-preview__btn.is-primary{background:#007a5a;border-color:#007a5a;color:#fff}.alert-preview pre{margin:0;font-size:var(--text-xs);line-height:1.65;font-family:var(--font-sans, inherit);white-space:pre-wrap;word-break:keep-all;color:var(--ink)}.help-doc h2{font-size:var(--text-xl);margin:0 0 var(--space-3)}.help-doc h3{font-size:var(--text-base);font-weight:700;margin:var(--space-5) 0 var(--space-2)}.help-doc p{font-size:var(--text-sm);line-height:1.75}.help-doc-table{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);margin:var(--space-3) 0}.help-doc-table table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.help-doc-table th{text-align:left;font-weight:600;color:var(--ink-muted);font-size:var(--text-xs);padding:8px 12px;border-bottom:1px solid var(--border-strong);background:var(--canvas-soft);white-space:nowrap}.help-doc-table td{padding:8px 12px;border-bottom:1px solid var(--border);vertical-align:top;line-height:1.6}.help-doc-table tr:last-child td{border-bottom:none}.help-cause{background:var(--warning-bg);border-radius:var(--radius-sm);padding:8px 12px;font-size:var(--text-sm)}.help-part-title{font-size:var(--text-xl);margin:0 0 var(--space-1)}.console-shell{display:flex;min-height:100vh}.console-sidebar{width:220px;flex-shrink:0;padding:var(--space-5) var(--space-3);border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;align-self:flex-start}.console-brand{font-weight:700;font-size:var(--text-base);padding:0 var(--space-2) var(--space-4)}.console-sidebar-top{display:flex;align-items:center;justify-content:space-between}.console-hamburger{display:none;width:34px;height:34px;padding:0;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);font-size:18px;line-height:1;cursor:pointer;color:var(--ink);align-items:center;justify-content:center}.console-logout{margin-top:auto;align-self:flex-end;margin-right:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:transparent;color:var(--ink-muted);font-size:var(--text-sm);cursor:pointer;transition:background .15s,color .15s}.console-logout:hover{background:var(--canvas-soft);color:var(--ink)}.console-nav{display:flex;flex-direction:column;gap:var(--space-1)}.console-nav-link{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);text-decoration:none;color:var(--ink)}.console-nav-link:hover{background:var(--canvas-soft)}.console-nav-link.is-active{background:var(--accent);color:var(--accent-fg)}.console-nav-link__soon{font-size:var(--text-xs);color:var(--ink-muted)}.console-main{flex:1;min-width:0}@media(max-width:720px){.console-shell{flex-direction:column}.console-sidebar{width:auto;flex-direction:column;border-right:none;border-bottom:1px solid var(--border);padding:var(--space-3) var(--space-4);position:sticky;top:0;z-index:20;height:auto;align-self:stretch}.console-brand{padding:0}.console-hamburger{display:inline-flex}.console-nav{max-height:0;overflow:hidden;transition:max-height .28s ease}.console-sidebar.is-open .console-nav{max-height:340px;margin-top:var(--space-3)}.console-logout{display:none;margin:var(--space-2) 0 0;align-self:stretch;width:100%;text-align:center}.console-sidebar.is-open .console-logout{display:block}}.console-page{max-width:1100px;margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-9);overflow-x:clip}.console-page .card{max-width:100%;box-sizing:border-box;overflow-wrap:break-word}.ax-studio{width:100%}.ax-studio-head{position:sticky;top:0;z-index:55;background:var(--canvas)}.ax-studio-tabs{display:flex;gap:var(--space-2);padding:var(--space-5) var(--space-5) 0;border-bottom:1px solid var(--border)}.ax-studio-tab{display:inline-flex;align-items:center;gap:var(--space-2);background:none;border:none;cursor:pointer;padding:10px 14px;font-size:var(--text-md);font-weight:600;color:var(--ink-muted);border-bottom:2px solid transparent}.ax-studio-tab:hover{color:var(--ink)}.ax-studio-tab.is-active{color:var(--ink);border-bottom-color:var(--accent)}.ax-studio-tab__n{width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;background:var(--canvas-soft);color:var(--ink-muted)}.ax-studio-tab.is-active .ax-studio-tab__n{background:var(--accent);color:var(--accent-fg)}.ax-studio .console-page,.ax-studio .narrow-shell{max-width:100%}.ax-studio-body{width:100%}.ax-studio-body.is-capped>*{max-width:1140px;margin-left:auto;margin-right:auto}.ax-session-bar{display:flex;align-items:center;gap:var(--space-3);padding:10px var(--space-5);border-bottom:1px solid var(--border);background:var(--surface, #fff);flex-wrap:wrap}.ax-session-bar__dot{width:8px;height:8px;border-radius:999px;background:var(--accent, #8b5cf6);flex-shrink:0}.ax-session-bar__soje{font-size:var(--text-lg);font-weight:800;letter-spacing:-.01em}.ax-session-bar__meta{font-size:var(--text-sm);color:var(--ink-muted)}.ax-session-bar__stages{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.ax-session-bar__arrow{color:var(--ink-faint);font-size:var(--text-xs)}.ax-chip{display:inline-flex;align-items:center;gap:2px;border:1px solid;border-radius:999px;padding:3px 10px;font-size:var(--text-xs);font-weight:600;position:relative;overflow:hidden;background:var(--surface, #fff)}.ax-chip__bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--border)}.ax-chip__bar>span{display:block;height:100%;transition:width .4s ease}.ax-session-bar__end{background:none;border:1px solid var(--border);border-radius:8px;padding:4px 10px;font-size:var(--text-xs);color:var(--ink-muted);cursor:pointer}.ax-session-bar__end:hover{color:var(--danger);border-color:var(--danger)}.ax-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000047;z-index:60}.ax-drawer{position:fixed;top:0;right:0;bottom:0;width:min(480px,94vw);background:var(--surface, #fff);border-left:1px solid var(--border);z-index:61;display:flex;flex-direction:column;box-shadow:-8px 0 32px #0000001f}.ax-drawer__head{display:flex;align-items:center;gap:var(--space-2);padding:14px 16px;border-bottom:1px solid var(--border)}.ax-drawer__head>b{font-size:var(--text-md)}.ax-drawer__head>button{margin-left:auto}.ax-drawer__body{overflow-y:auto;padding:12px 16px 24px;display:flex;flex-direction:column;gap:10px}.ax-drawer__row{border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;display:grid;gap:8px}.ax-drawer__row-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.ax-drawer__row-stages{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ax-drawer__row-actions{display:flex;gap:6px}.ax-drawer__row-actions .ax-session-bar__end:hover{color:var(--accent, #8b5cf6);border-color:var(--accent, #8b5cf6)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-3)}.camp-cols{container-type:inline-size}@container (max-width: 787px){.camp-cols>:nth-child(n+2) .camp-thead{display:none}}.date-trigger{padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);color:var(--ink);font-size:var(--text-base);line-height:1.5;cursor:pointer;transition:border-color .12s}.date-trigger:hover{border-color:var(--border-strong)}.console-page input[type=checkbox],.console-page input[type=radio]{accent-color:var(--accent);width:15px;height:15px;margin:0;cursor:pointer;vertical-align:middle}.console-page input[type=checkbox]:disabled,.console-page input[type=radio]:disabled{cursor:not-allowed;opacity:.5}.console-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.console-table th{text-align:left;padding:5px 10px;font-weight:600;color:var(--ink-muted);border-bottom:1px solid var(--border)}.console-table td{padding:5px 10px;vertical-align:top;border-top:1px solid var(--border)}.console-table--mono td{font-family:var(--font-mono)}.settings-shell{display:flex;gap:var(--space-5)}.settings-shell__nav{width:190px;flex-shrink:0}.settings-shell__body{flex:1;min-width:0;max-width:1040px}@media(max-width:720px){.settings-shell{flex-direction:column;gap:var(--space-3)}.settings-shell__nav{width:auto;display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:4px}.settings-shell__nav>div{display:flex;align-items:center;gap:var(--space-1)}.settings-shell__nav>div>div:first-child{display:none}.settings-shell__nav>div>div{white-space:nowrap;margin-bottom:0}.settings-shell__body{max-width:100%}}.ai-frame-wrap{height:100vh}.ai-frame{display:block;width:100%;height:100%;border:0}@media(max-width:720px){.ai-frame-wrap{height:calc(100vh - 68px)}}
