:root{--bg: #fbfbfa;--surface: #ffffff;--surface-2: #f4f4f2;--surface-3: #ebebe8;--line: #e2e2dd;--line-strong: #868686;--ink: #17171a;--ink-soft: #68686e;--ink-faint: #737379;--primary: #0b57d0;--primary-soft: #e8f0fe;--on-primary: #ffffff;--ok: #189150;--ok-soft: #e5f6ec;--bad: #cf3a3f;--bad-soft: #fbeaea;--warn: #9a6d0c;--warn-soft: #f9f0d9;--focus: #0b57d0;--ease: cubic-bezier(.2, 0, 0, 1);--radius-xl: 28px;--radius-lg: 16px;--radius: 12px;--radius-sm: 8px;--elevation-1: 0 1px 2px rgb(0 0 0 / .3), 0 1px 3px 1px rgb(0 0 0 / .15);--elevation-2: 0 1px 2px rgb(0 0 0 / .3), 0 2px 6px 2px rgb(0 0 0 / .15);--elevation-3: 0 1px 3px rgb(0 0 0 / .3), 0 4px 8px 3px rgb(0 0 0 / .15);--hero-bg: radial-gradient(1200px 480px at 50% -10%, rgb(66 133 244 / .2), transparent 70%), linear-gradient(155deg, #e7f0fe 0%, #e5f6ec 45%, var(--bg) 100%);--chip-ok-bg: #146c2e;--chip-ok-fg: #ffffff;--chip-bad-bg: #d93025;--chip-bad-fg: #ffffff;--chip-warn-bg: #f9ab00;--chip-warn-fg: #202124;color-scheme:light}[data-theme=dark]{--bg: #0b0b0d;--surface: #17171b;--surface-2: #1e1e23;--surface-3: #26262c;--line: rgb(255 255 255 / .12);--line-strong: rgb(255 255 255 / .38);--ink: #f2f2f4;--ink-soft: #96969e;--ink-faint: #86868d;--primary: #a8c7fa;--primary-soft: rgb(168 199 250 / .1);--on-primary: #062e6f;--ok: #30d873;--ok-soft: rgb(48 216 115 / .08);--bad: #f0555f;--bad-soft: rgb(240 85 95 / .08);--warn: #e2b13a;--warn-soft: rgb(226 177 58 / .08);--focus: #a8c7fa;--elevation-1: 0 1px 0 rgb(255 255 255 / .04) inset, 0 1px 3px rgb(0 0 0 / .5);--elevation-2: 0 1px 0 rgb(255 255 255 / .04) inset, 0 2px 8px rgb(0 0 0 / .55);--elevation-3: 0 1px 0 rgb(255 255 255 / .04) inset, 0 6px 18px rgb(0 0 0 / .6);--hero-bg: radial-gradient(1200px 480px at 50% -10%, rgb(168 199 250 / .22), transparent 70%), linear-gradient(155deg, #142238 0%, #102a1c 45%, var(--bg) 100%);color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Roboto,-apple-system,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;transition:background .2s var(--ease),color .2s var(--ease)}svg.icon{width:18px;height:18px;flex:none;display:block}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}::view-transition-old(root){animation:none}::view-transition-new(root){animation:theme-reveal .5s var(--ease);transform-origin:var(--vt-x, 50%) var(--vt-y, 50%)}@keyframes theme-reveal{0%{clip-path:circle(0% at var(--vt-x, 50%) var(--vt-y, 50%))}to{clip-path:circle(140% at var(--vt-x, 50%) var(--vt-y, 50%))}}@keyframes row-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){::view-transition-new(root){animation:none}*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.topnav{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;padding:18px clamp(20px,4vw,56px);border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4)}.brand-mark{width:28px;height:28px;border-radius:8px;flex:none;background:linear-gradient(155deg,#34a853,#4285f4);display:flex;align-items:center;justify-content:center;color:#fff}.brand-name{font-weight:500;font-size:17px;letter-spacing:0;white-space:nowrap;flex:none}.brand-tag{font-size:13px;font-weight:500;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line);padding:3px 10px;border-radius:999px;flex:none}.run-label{color:var(--ink-faint);font-size:13.5px;font-variant-numeric:tabular-nums;margin-left:8px;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-actions{margin-left:auto;display:flex;gap:4px;flex:none}@media (max-width: 640px){.brand-tag,.run-label{display:none}}.icon-btn{background:transparent;border:1px solid transparent;color:var(--ink-soft);width:40px;height:40px;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center;box-shadow:none}.icon-btn:hover{background:var(--surface-2);color:var(--ink);box-shadow:none;transform:none}.shell{width:min(1920px,96vw);margin-inline:auto;padding:72px 0 160px;display:flex;flex-direction:column;gap:28px}.hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(72px,12vw,136px) clamp(20px,4vw,56px) clamp(96px,10vw,132px);background:var(--hero-bg);border-bottom:1px solid var(--line)}.hero-copy{width:100%;max-width:760px}.hero-copy h1{font-size:clamp(40px,6vw,64px);margin:0 0 22px;font-weight:700;letter-spacing:-.01em;line-height:1.08;color:var(--ink)}.hero-copy p{color:var(--ink-soft);margin:0 auto 22px;font-size:18.5px;line-height:1.7;max-width:56ch}.hero-copy .hero-tagline{color:var(--ink);font-weight:600;font-size:16.5px;letter-spacing:.01em;margin:0 auto 40px;max-width:none}.idea-card{width:100%;max-width:640px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 26px;box-shadow:var(--elevation-1);margin-bottom:20px;transition:box-shadow .2s var(--ease),border-color .2s var(--ease)}.idea-card:focus-within{box-shadow:var(--elevation-2);border-color:var(--primary)}.idea-label{display:block;font-size:14.5px;font-weight:600;color:var(--ink);margin-bottom:8px}.idea-input{width:100%;resize:none;border:none;background:transparent;color:var(--ink);font-family:inherit;font-size:16px;line-height:1.55;padding:0}.idea-input:focus{outline:none}.idea-input::placeholder{color:var(--ink-faint)}.idea-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:10px}.idea-styles{display:flex;flex-wrap:wrap;gap:6px}.idea-chip{border:1px solid var(--line-strong);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:13.5px;font-weight:500;padding:6px 13px;border-radius:999px;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.idea-chip:hover{background:var(--surface-2)}.idea-chip.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.idea-detected{font-size:13.5px;color:var(--ink-soft);font-weight:500;white-space:nowrap}.idea-hint{margin:12px 0 0;font-size:13px;color:var(--ink-faint)}.search-bar{position:relative;width:100%;max-width:640px;display:flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);padding:8px 8px 8px 24px;box-shadow:var(--elevation-1);transition:box-shadow .2s var(--ease),border-color .2s var(--ease)}.search-bar:focus-within{box-shadow:var(--elevation-2);border-color:var(--primary)}.search-field{display:flex;align-items:center;gap:8px;padding:6px 8px}.search-field label{font-size:14px;color:var(--ink-soft);font-weight:500;white-space:nowrap}.search-field input[type=number]{width:76px;border:none;background:transparent;color:var(--ink);font-family:inherit;font-size:15px;padding:0;font-variant-numeric:tabular-nums}.search-field input[type=number]:focus{outline:none}.search-field .icon-btn{width:32px;height:32px}.search-divider{width:1px;height:28px;background:var(--line);flex:none}.generate-btn{margin-left:auto;background:var(--primary);color:var(--on-primary);border:none;padding:13px 26px;border-radius:999px;font-size:15px;cursor:pointer;font-weight:500;display:inline-flex;align-items:center;gap:8px;font-family:inherit;white-space:nowrap;transition:box-shadow .15s var(--ease),filter .15s var(--ease)}.generate-btn:hover:not(:disabled){box-shadow:var(--elevation-1);filter:brightness(1.06)}.generate-btn:disabled{opacity:.45;cursor:default}.search-actions{display:flex;justify-content:center;margin-top:20px}.text-button{background:transparent;border:none;color:var(--primary);padding:10px 16px;border-radius:999px;font-size:14.5px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-family:inherit}.text-button:hover{background:var(--primary-soft)}.trust-row{list-style:none;margin:64px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:32px}.trust-row li{display:flex;align-items:center;gap:8px;font-size:14.5px;color:var(--ink-faint);font-weight:500}.trust-row li svg{color:var(--ink-faint);width:16px;height:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--elevation-1)}button{background:var(--surface-2);color:var(--ink);border:1px solid var(--line-strong);padding:12px 22px;border-radius:999px;font-size:14.5px;cursor:pointer;font-weight:500;display:inline-flex;align-items:center;gap:8px;font-family:inherit;transition:background .15s var(--ease)}button.secondary:hover:not(:disabled){background:var(--surface-3)}button:disabled{opacity:.45;cursor:default}.progress-card{padding:24px 28px}.progress-bar-bg{height:4px;background:var(--surface-2);border-radius:999px;overflow:hidden}.progress-bar-fg{height:100%;width:100%;background:var(--primary);border-radius:999px;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.progress-text{font-size:14.5px;color:var(--ink-soft);margin-top:14px;display:flex;justify-content:space-between;gap:12px;font-variant-numeric:tabular-nums}.progress-text .label{color:var(--ink);font-weight:500;font-variant-numeric:normal}.results-card-head{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:28px 32px;border-bottom:1px solid var(--line)}.results-card-head h2{font-size:20px;margin:0;font-weight:500;letter-spacing:0}.mini-stats{display:flex;gap:14px;font-size:14.5px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.mini-stats span{display:inline-flex;align-items:center;gap:5px}.mini-stats .dot{width:6px;height:6px;border-radius:50%}.mini-stats .dot.ok{background:var(--ok)}.mini-stats .dot.bad{background:var(--bad)}.mini-stats .dot.warn{background:var(--warn)}.filters{display:flex;gap:16px;align-items:center;margin-left:auto;flex-wrap:wrap;font-size:15px}.filter-input-wrap{position:relative;display:flex;align-items:center}.filter-input-wrap svg{position:absolute;left:10px;color:var(--ink-faint);pointer-events:none;width:15px;height:15px}.filters input[type=text]{padding:9px 10px 9px 32px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:190px;font-size:14.5px;background:var(--surface);color:var(--ink);font-family:inherit;transition:border-color .15s var(--ease)}.filters input[type=text]:focus{border-color:var(--primary);outline:none}.filters label{display:flex;gap:6px;align-items:center;color:var(--ink-soft);font-size:14.5px}.table-wrap{container-type:inline-size;max-height:62vh;overflow:auto}table{width:100%;border-collapse:collapse;font-size:15.5px}th,td{padding:17px 22px;text-align:left}th{background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;position:sticky;top:0;white-space:nowrap;font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:700;border-bottom:1px solid var(--line);transition:color .12s var(--ease)}th:hover{color:var(--ink-soft)}td{border-bottom:1px solid var(--line)}tr:last-child td{border-bottom:none}tr.clean td{background:var(--ok-soft)}tr:hover td{background:var(--surface-2)}tbody tr.row-enter{animation:row-enter .3s var(--ease) both}td.name{font-weight:500}td.score,td.origin,td.idx{color:var(--ink-soft);font-size:14.5px;font-variant-numeric:tabular-nums}td.name-cell{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-inline{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;padding:4px 10px 4px 7px;border-radius:999px;font-weight:600}.stat-inline svg{width:13px;height:13px;flex:none}.stat-inline.ok{background:var(--chip-ok-bg);color:var(--chip-ok-fg)}.stat-inline.ok svg{color:var(--chip-ok-fg)}.stat-inline.taken{background:var(--chip-bad-bg);color:var(--chip-bad-fg)}.stat-inline.taken svg{color:var(--chip-bad-fg)}.stat-inline.warn{background:var(--chip-warn-bg);color:var(--chip-warn-fg)}.stat-inline.warn svg{color:var(--chip-warn-fg)}.error-banner{background:var(--chip-bad-bg);color:var(--chip-bad-fg);padding:12px 16px;font-weight:600}.empty-state{padding:96px 24px;text-align:center;color:var(--ink-soft);font-size:15px}.empty-state .glyph{color:var(--ink-faint);margin-bottom:18px;display:flex;justify-content:center}.empty-state .glyph svg{width:36px;height:36px}.empty-state strong{display:block;font-size:18px;color:var(--ink);margin-bottom:8px;font-weight:500}@container (max-width: 680px){thead{display:none}table,tbody,tr,td{display:block;width:100%}tr{border:1px solid var(--line);border-radius:var(--radius);margin:12px;padding:6px 4px}td{border-bottom:none;padding:6px 12px;display:flex;justify-content:space-between;gap:10px}td:before{content:attr(data-label);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint)}td.name-cell{white-space:normal}}@media (max-width: 640px){.search-bar{flex-wrap:wrap;border-radius:var(--radius-lg);padding:16px}.search-field{padding:6px 0}.search-divider{display:none}.generate-btn{margin-left:0;width:100%;justify-content:center}}dialog.drawer{margin:0 0 0 auto;height:100vh;max-height:100vh;width:min(440px,92vw);border:none;border-left:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--ink);padding:32px}dialog.drawer::backdrop{background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.drawer-head h2{font-size:20px;margin:0;font-weight:500}.drawer-entry{display:flex;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:14.5px;flex-wrap:wrap}.drawer-entry .ts{color:var(--ink-soft);flex:1 1 auto;font-size:13.5px}.drawer-entry .clean-count{color:var(--ok);font-weight:700;font-size:14px}.settings-body{display:flex;flex-direction:column;gap:22px}.settings-field{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:500}.settings-field select,.settings-field input[type=number]{padding:10px 13px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-size:15.5px;background:var(--surface-2);color:var(--ink);font-family:inherit}.settings-field-checkbox{flex-direction:row;align-items:center;gap:10px}.consent-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;padding:20px;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.consent-banner{width:min(560px,100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--elevation-3);padding:32px;margin-bottom:20px}.consent-banner h2{font-size:20px;margin:0 0 12px;font-weight:500}.consent-banner p{font-size:16px;color:var(--ink-soft);line-height:1.65;margin:0 0 22px}.consent-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.ad-slot{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--elevation-1);padding:22px;text-align:center}.ad-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);font-weight:700;margin-bottom:14px}.ad-placeholder{width:100%;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:15.5px;font-weight:500;line-height:1.5;padding:12px;background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:var(--radius);font-family:inherit;cursor:pointer;transition:background .15s var(--ease)}.ad-placeholder:hover{background:var(--surface-3)}.ad-slot-rectangle{max-width:336px;margin-inline:auto}.ad-slot-rectangle .ad-placeholder{min-height:280px}.ad-slot-banner{margin-inline:auto;max-width:970px}.ad-slot-banner .ad-placeholder{min-height:90px}
