.cookie-case[data-v-289fb10e]{border:1px solid var(--border);border-radius:var(--r-lg);padding:16px;margin:16px 0 4px;background:var(--surface-raised)}.cookie-case h3[data-v-289fb10e]{margin:0 0 4px;display:flex;align-items:center;gap:8px}.cookie-case pre[data-v-289fb10e]{margin:0 0 12px}.cookie-case .btn[disabled][data-v-289fb10e]{opacity:.6;cursor:progress}:root{color-scheme:dark;--bg: #0d0e12;--surface: #15171d;--surface-raised: #1c1f27;--border: #272b34;--text: #e7e9ef;--text-dim: #8d94a3;--accent: #6d8bfd;--accent-soft: rgba(109, 139, 253, .13);--accent-pill-text: #87a0ff;--on-accent: #0a1122;--danger: #ef7089;--danger-soft: rgba(239, 112, 137, .13);--on-danger: #2a0d13;--safe: #41d393;--safe-soft: rgba(65, 211, 147, .13);--on-safe: #06231a;--warn: #e6b45c;--warn-soft: rgba(230, 180, 92, .14);--code-bg: #0b0c10;--code-text: #cdd4e0;--header-grad-top: #191c24;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .25);--shadow-md: 0 4px 16px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .55);--r-sm: 8px;--r-md: 10px;--r-lg: 12px;--r-xl: 16px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-standard: cubic-bezier(.4, 0, .2, 1);--dur-fast: .12s;--dur: .18s;--dur-slow: .26s;--sans: "IBM Plex Sans Thai", "Noto Sans Thai", "Anuphan", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: "JetBrains Mono", "IBM Plex Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--bg: #f4f6f9;--surface: #ffffff;--surface-raised: #eef1f5;--border: #e0e4ea;--text: #1a1d24;--text-dim: #5c6470;--accent: #4361e0;--accent-soft: rgba(79, 110, 242, .1);--accent-pill-text: #3a55c8;--on-accent: #ffffff;--danger: #c62a48;--danger-soft: rgba(214, 69, 98, .1);--on-danger: #ffffff;--safe: #097049;--safe-soft: rgba(18, 153, 106, .12);--on-safe: #ffffff;--warn: #8a5a00;--warn-soft: rgba(176, 119, 28, .13);--header-grad-top: #ffffff;--shadow-sm: 0 1px 2px rgba(20, 25, 40, .06);--shadow-md: 0 6px 20px rgba(20, 25, 40, .1);--shadow-lg: 0 24px 64px rgba(20, 25, 40, .22)}}:root[data-theme=light]{color-scheme:light;--bg: #f4f6f9;--surface: #ffffff;--surface-raised: #eef1f5;--border: #e0e4ea;--text: #1a1d24;--text-dim: #5c6470;--accent: #4361e0;--accent-soft: rgba(79, 110, 242, .1);--accent-pill-text: #3a55c8;--on-accent: #ffffff;--danger: #c62a48;--danger-soft: rgba(214, 69, 98, .1);--on-danger: #ffffff;--safe: #097049;--safe-soft: rgba(18, 153, 106, .12);--on-safe: #ffffff;--warn: #8a5a00;--warn-soft: rgba(176, 119, 28, .13);--header-grad-top: #ffffff;--shadow-sm: 0 1px 2px rgba(20, 25, 40, .06);--shadow-md: 0 6px 20px rgba(20, 25, 40, .1);--shadow-lg: 0 24px 64px rgba(20, 25, 40, .22)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color var(--dur-slow) var(--ease-out),color var(--dur-slow) var(--ease-out)}h1,h2,h3,h4{line-height:1.3}code{font-family:var(--mono);font-size:.88em;background:var(--accent-soft);color:var(--accent-pill-text);padding:1px 6px;border-radius:6px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app-header{padding:24px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--header-grad-top),var(--bg));transition:background var(--dur-slow) var(--ease-out),border-color var(--dur-slow) var(--ease-out)}.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.app-header h1{margin:0 0 4px;font-size:1.55rem;font-weight:700;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}.app-header .subtitle{color:var(--text-dim);margin:0;font-size:.9rem;max-width:68ch}.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.theme-toggle{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;font-size:1.1rem;transition:background-color var(--dur) var(--ease-standard),border-color var(--dur),transform var(--dur-fast)}.theme-toggle:hover{border-color:var(--accent)}.theme-toggle:active{transform:translateY(1px)}.edu-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--accent);color:var(--accent-pill-text);background:var(--accent-soft);font-size:.78rem;font-weight:600;white-space:nowrap}@media(max-width:600px){.edu-pill{display:none}}.layout{display:grid;grid-template-columns:1fr 340px;gap:24px;max-width:1200px;margin:0 auto;padding:24px}@media(max-width:960px){.layout{grid-template-columns:1fr}.sidebar .card{position:static!important}}@media(max-width:600px){.layout{padding:16px;gap:16px}.app-header{padding:20px 16px}.app-header h1{font-size:1.35rem}}.tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:20px;padding:4px;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--r-lg);transition:background-color var(--dur-slow) var(--ease-out),border-color var(--dur-slow) var(--ease-out)}.tab{flex:1 1 auto;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:var(--r-md);border:none;background:transparent;color:var(--text-dim);cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;white-space:nowrap;transition:color var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);background:var(--surface);box-shadow:var(--shadow-sm);font-weight:600}.tab:focus-visible,.theme-toggle:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:24px;margin-bottom:20px;box-shadow:var(--shadow-sm);transition:background-color var(--dur-slow) var(--ease-out),border-color var(--dur-slow) var(--ease-out)}.card h2{margin:0 0 8px;font-size:1.18rem;font-weight:600;display:flex;align-items:center;gap:10px}.card h3{font-size:1rem;font-weight:600}.chip{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-sm);font-size:.95rem;line-height:1}.chip-accent{background:var(--accent-soft)}.chip-danger{background:var(--danger-soft)}.chip-safe{background:var(--safe-soft)}.chip-warn{background:var(--warn-soft)}.muted{color:var(--text-dim);font-size:.875rem}.btn{padding:10px 18px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;transition:background-color var(--dur) var(--ease-standard),border-color var(--dur) var(--ease-standard),color var(--dur) var(--ease-standard),box-shadow var(--dur) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.btn:hover{box-shadow:var(--shadow-sm);border-color:var(--accent)}.btn:active{transform:translateY(1px) scale(.99)}.btn:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-danger{background:var(--danger);border-color:var(--danger);color:var(--on-danger)}.btn-safe{background:var(--safe);border-color:var(--safe);color:var(--on-safe)}.btn-accent:hover,.btn-danger:hover,.btn-safe:hover{filter:brightness(1.06)}.btn-ghost{background:transparent;color:var(--text-dim)}.btn-ghost:hover{background:var(--surface-raised);color:var(--text)}.btn-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pill{display:inline-flex;align-items:center;gap:7px;padding:4px 11px;border-radius:999px;font-size:.78rem;font-weight:600}.pill:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-safe{background:var(--safe-soft);color:var(--safe)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-accent{background:var(--accent-soft);color:var(--accent-pill-text)}select,input[type=text]{font-family:inherit;background:var(--surface-raised);color:var(--text);border:1px solid var(--border);border-radius:var(--r-md);padding:9px 12px;font-size:.9rem;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),background-color var(--dur-slow) var(--ease-out)}select{padding-right:36px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238d94a3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}@media(prefers-color-scheme:light){:root:not([data-theme=dark]) select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235c6470' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}}:root[data-theme=light] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235c6470' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}select:focus-visible,input[type=text]:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}label.field{display:block;margin:14px 0 6px;font-size:.875rem;color:var(--text-dim)}textarea.payload{width:100%;min-height:160px;font-family:var(--mono);font-size:.82rem;line-height:1.6;background:var(--code-bg);color:var(--code-text);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px 46px 14px 14px;resize:vertical;caret-color:var(--accent);transition:border-color var(--dur) var(--ease-standard),box-shadow var(--dur) var(--ease-standard)}textarea.payload:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea.payload.is-vuln{border-color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger-soft)}textarea.payload.is-vuln:focus-visible{box-shadow:0 0 0 3px var(--danger-soft)}.payload-box{position:relative}.copy-icon{position:absolute;top:10px;right:10px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:#8d94a3;cursor:pointer;opacity:.4;transition:opacity var(--dur) var(--ease-standard),background-color var(--dur) var(--ease-standard),color var(--dur) var(--ease-standard),border-color var(--dur) var(--ease-standard)}.payload-box:hover .copy-icon{opacity:.75}.copy-icon:hover{opacity:1;color:#e7e9ef;background:#ffffff14;border-color:#ffffff24}.copy-icon:focus-visible{opacity:1;outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.copy-icon.is-copied{opacity:1;color:#41d393}.copy-icon svg{width:16px;height:16px}.code,pre{font-family:var(--mono);font-size:.82rem;line-height:1.6;background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px 16px;overflow-x:auto;color:var(--code-text)}pre{white-space:pre-wrap;word-break:break-word}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.mode-banner{padding:12px 14px;border-radius:var(--r-lg);margin:14px 0;font-size:.9rem;font-weight:500}.mode-vuln{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger)}.mode-safe{background:var(--safe-soft);color:var(--safe);border:1px solid var(--safe)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#06070a9e;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:50;overflow-y:auto}.modal{background:#fff;color:#1a1d24;border-radius:var(--r-xl);padding:24px;max-width:440px;width:100%;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal h3{margin:0 0 4px;flex-shrink:0}.modal .render-area{margin-top:14px;padding:14px;border:1px solid #e2e5ea;border-radius:var(--r-lg);background:#f7f8fa;overflow-y:auto;flex:1 1 auto;min-height:0}.modal-close{margin-top:16px;width:100%;flex-shrink:0}@media(max-width:600px){.modal{width:100%;margin:0}}.sidebar .card{position:sticky;top:24px}.auth-box{font-family:var(--mono);font-size:.78rem}.auth-line{display:flex;gap:8px;padding:7px 0;border-bottom:1px solid var(--border)}.auth-line:last-child{border-bottom:none}.auth-line .k{color:var(--text-dim);min-width:92px}.auth-line .v{word-break:break-all}.auth-yes{color:var(--safe)}.auth-no{color:var(--text-dim)}.log{max-height:360px;overflow-y:auto;font-family:var(--mono);font-size:.78rem}.log-entry{position:relative;padding:8px 10px 8px 14px;border-radius:var(--r-md);margin-bottom:5px;background:var(--surface-raised);border-left:3px solid var(--border)}.log-entry .t{color:var(--text-dim);margin-right:6px;font-variant-numeric:tabular-nums}.log-danger{border-left-color:var(--danger)}.log-success{border-left-color:var(--safe)}.log-warn{border-left-color:var(--warn)}.log-info{border-left-color:var(--accent)}.log-empty{color:var(--text-dim);font-style:italic}.banner-wrap{max-width:1200px;margin:0 auto;padding:24px 24px 0}@media(max-width:600px){.banner-wrap{padding:16px 16px 0}}.warn-banner{display:flex;align-items:flex-start;gap:12px;background:var(--warn-soft);border:1px solid var(--warn);color:var(--warn);border-radius:var(--r-lg);padding:14px 16px;font-size:.9rem;margin:0;max-width:none}.warn-banner b{color:var(--warn)}.warn-banner-text{flex:1 1 auto}.warn-banner-close{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--warn);cursor:pointer;font-size:.9rem;line-height:1;transition:background-color var(--dur) var(--ease-standard),border-color var(--dur) var(--ease-standard)}.warn-banner-close:hover{background:var(--warn-soft);border-color:var(--warn)}.warn-banner-close:focus-visible{outline:none;border-color:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}ul.tips{padding-left:20px}ul.tips li{margin-bottom:8px}.fix-block{border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;margin-bottom:16px;background:var(--surface-raised);transition:background-color var(--dur-slow) var(--ease-out),border-color var(--dur-slow) var(--ease-out)}.fix-block h3{margin-top:0;display:flex;align-items:center;gap:10px}.fix-num{flex-shrink:0;background:var(--safe-soft);color:var(--safe);border:1px solid var(--safe);border-radius:var(--r-sm);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem}.modal-enter-active,.modal-leave-active{transition:opacity var(--dur-slow) var(--ease-out)}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-active .modal,.modal-leave-active .modal{transition:transform var(--dur-slow) var(--ease-out)}.modal-enter-from .modal,.modal-leave-to .modal{transform:translateY(10px) scale(.97)}.swap-enter-active,.swap-leave-active{transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}.swap-enter-from{opacity:0;transform:translateY(4px)}.swap-leave-to{opacity:0;transform:translateY(-4px)}.log-enter-active{transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-out);animation:logflash var(--dur-slow) var(--ease-out)}.log-enter-from{opacity:0;transform:translateY(-6px)}.log-move{transition:transform var(--dur) var(--ease-out)}@keyframes logflash{0%{background:var(--accent-soft)}to{background:var(--surface-raised)}}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}.modal-enter-from .modal,.modal-leave-to .modal{transform:none}}
