:root{--ink: #14161c;--ink-2: #383d47;--ink-3: #5c626d;--paper: #fbfaf8;--surface: #ffffff;--rule: #dbd6cb;--rule-soft: #eae5db;--rule-strong: #918c81;--accent: #4a3fd4;--accent-ink: #3a30ad;--accent-wash: #eae7fa;--warn: #85520c;--warn-wash: #fbf2e2;--err: #98362a;--err-wash: #fbeae7;--ok: #2d6a49;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--serif: ui-serif, Georgia, "Iowan Old Style", "Times New Roman", serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis-weight:none;-webkit-font-smoothing:antialiased}@media(prefers-color-scheme:dark){:root{--ink: #eceae5;--ink-2: #b4b1aa;--ink-3: #85827b;--paper: #14151a;--surface: #1b1d23;--rule: #2b2e36;--rule-soft: #23262d;--rule-strong: #6a6b74;--accent: #9d95f5;--accent-ink: #b6b0f8;--accent-wash: #232145;--warn: #d9a55f;--warn-wash: #2a2317;--err: #e0897a;--err-wash: #2b1d1a;--ok: #7ab894}}*{box-sizing:border-box}body{margin:0}.app{max-width:46rem;margin:0 auto;padding:3rem 1.25rem 6rem}.app__header{margin-bottom:1.75rem}.app__header-top{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-bottom:.85rem;border-bottom:2px solid var(--ink)}.app__header h1{font-family:var(--serif);font-size:clamp(1.6rem,4vw,2.1rem);font-weight:600;letter-spacing:-.02em;margin:0}.app__hint{font-family:var(--mono);font-size:.68rem;letter-spacing:.04em;color:var(--ink-3);font-variant-numeric:tabular-nums}.engine{margin-top:1.1rem;display:flex;flex-direction:column;gap:.7rem}.engine__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.engine__status{font-size:.78rem;color:var(--ink-2)}.engine__status strong{color:var(--ink)}.engine__modes{display:inline-flex;gap:2px;padding:2px;background:var(--rule-soft);border-radius:7px}.engine__mode{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;font:inherit;font-size:.78rem;color:var(--ink-2);padding:.34rem .72rem;border-radius:5px;cursor:pointer;transition:background .12s,color .12s}.engine__mode:hover:not(.engine__mode--active){color:var(--ink);background:color-mix(in srgb,var(--surface) 70%,transparent)}.engine__mode--active{background:var(--surface);color:var(--accent-ink);font-weight:600;box-shadow:0 1px 2px #00000012}.engine__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:.78rem;padding:.36rem .8rem;border-radius:6px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;transition:background .12s}.engine__button:hover:not(:disabled){background:var(--accent-ink)}.engine__button:disabled{opacity:.62;cursor:default}.engine__note{font-size:.76rem;line-height:1.5;color:var(--ink-3);margin:0}.engine__note--error{color:var(--err)}.engine__note--warn{color:var(--warn);background:var(--warn-wash);padding:.5rem .7rem;border-radius:5px}.engine__progress{display:flex;align-items:center;gap:.6rem}.engine__progress-bar{flex:1;height:3px;background:var(--rule);border-radius:99px;overflow:hidden}.engine__progress-fill{height:100%;background:var(--accent);transition:width .25s}.engine__progress-text{font-family:var(--mono);font-size:.68rem;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.engine__model{display:flex;flex-direction:column;gap:.3rem}.picker{position:relative}.picker__trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;padding:.42rem .6rem;border:1px solid var(--rule-strong);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;transition:border-color .12s}.picker__trigger:hover:not(:disabled){border-color:var(--ink-3)}.picker__trigger:focus-visible,.picker__trigger[aria-expanded=true]{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.picker__trigger:disabled{opacity:.62;cursor:default}.picker__chevron{flex:none;color:var(--ink-3);transition:transform .14s}.picker__trigger[aria-expanded=true] .picker__chevron{transform:rotate(180deg)}.picker__value{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;min-width:0}.picker__list{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;margin:0;padding:3px;list-style:none;max-height:15rem;overflow-y:auto;background:var(--surface);border:1px solid var(--rule-strong);border-radius:8px;box-shadow:0 8px 24px #0000001f}.picker__option{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;padding:.4rem .5rem;border-radius:5px;cursor:pointer}.picker__option[data-active=true]{background:var(--rule-soft)}.picker__option[aria-selected=true] .picker__name{color:var(--accent-ink)}.picker__name{font-size:.82rem;font-weight:600;color:var(--ink)}.picker__weight{font-family:var(--mono);font-size:.7rem;font-variant-numeric:tabular-nums;color:var(--ink-2);white-space:nowrap}.picker__note{font-size:.74rem;color:var(--ink-3);min-width:0}.engine__cloud{display:flex;flex-direction:column;gap:.55rem;padding:.85rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px}.engine__cloud-providers{display:flex;gap:1rem;flex-wrap:wrap}.engine__radio{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--ink-2);cursor:pointer}.engine__radio input{accent-color:var(--accent)}.engine__cloud-key{display:flex;flex-direction:column;gap:.3rem}.engine__field-label{font-family:var(--mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.engine__cloud-input{font:inherit;font-family:var(--mono);font-size:.78rem;padding:.45rem .6rem;border:1px solid var(--rule-strong);border-radius:6px;background:var(--paper);color:var(--ink)}.engine__cloud-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.interests{margin:1.75rem 0 0;display:flex;flex-direction:column;gap:.6rem}.interests__label{font-family:var(--mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3)}.interests__input{font:inherit;font-size:1rem;padding:.6rem 0;border:0;border-bottom:1.5px solid var(--rule-strong);background:transparent;color:var(--ink);width:100%;transition:border-color .15s}.interests__input::placeholder{color:var(--ink-3)}.interests__input:focus{outline:none;border-bottom-color:var(--accent)}.interests__chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:.74rem;padding:.24rem .6rem;border-radius:99px;border:1px solid var(--rule-strong);background:transparent;color:var(--ink-2);cursor:pointer;transition:border-color .12s,color .12s,background .12s}.chip:hover{border-color:var(--accent);color:var(--accent-ink)}.chip--active{background:var(--accent-wash);border-color:transparent;color:var(--accent-ink);font-weight:600}.interests__cold-start{font-size:.76rem;color:var(--ink-3);margin:0;font-style:italic}.rerank{margin-top:1.1rem;display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.rerank__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:.8rem;font-weight:600;padding:.45rem .9rem;border-radius:6px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;transition:opacity .12s}.rerank__button:hover:not(:disabled){opacity:.82}.rerank__button:disabled{opacity:.4;cursor:default}.rerank__note{font-size:.76rem;color:var(--ink-3);margin:0}.sources{margin-top:1.4rem;padding-top:1rem;border-top:1px solid var(--rule-soft);display:flex;flex-direction:column;gap:.4rem}.sources__toggle{display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;color:var(--ink-2);cursor:pointer}.sources__toggle input{accent-color:var(--accent)}.sources__note{font-size:.74rem;line-height:1.55;color:var(--ink-3);margin:0}.sources__note code{font-family:var(--mono);font-size:.92em;background:var(--rule-soft);padding:.05em .28em;border-radius:3px}.app__state{font-size:.85rem;color:var(--ink-3);padding:1.5rem 0}.app__state--error{color:var(--err)}.app__errors{margin-top:1.1rem;background:var(--err-wash);border-radius:7px;padding:.75rem .9rem}.app__errors-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-size:.8rem;color:var(--err)}.app__errors-dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;font:inherit;font-size:.74rem;color:var(--err);text-decoration:underline;cursor:pointer;padding:0}.app__errors-dismiss:hover{opacity:.75}.app__errors-list{margin:.4rem 0 0;padding-left:1.1rem;font-size:.76rem;color:var(--ink-2)}.feed{list-style:none;margin:2rem 0 0;padding:0;display:flex;flex-direction:column}.card{padding:1.6rem 0;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:.5rem}.card:first-child{border-top:0;padding-top:0}.card__title{font-family:var(--serif);font-size:1.22rem;font-weight:600;line-height:1.28;letter-spacing:-.011em;color:var(--ink);text-decoration:none;text-wrap:pretty}.card__title:hover{color:var(--accent-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.card__meta{font-family:var(--mono);font-size:.68rem;letter-spacing:.03em;color:var(--ink-3)}.card__summary{font-size:.92rem;line-height:1.6;color:var(--ink-2);margin:.15rem 0 0;padding-left:.85rem;border-left:2px solid var(--rule)}.card__summary-label{display:block;font-family:var(--mono);font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);margin-bottom:.22rem}.card__full{font-size:.86rem;color:var(--ink-2);margin-top:.2rem}.card__full summary{cursor:pointer;color:var(--ink-3);font-family:var(--mono);font-size:.7rem;letter-spacing:.03em}.card__full summary:hover{color:var(--accent-ink)}.card__full p{line-height:1.65;margin:.6rem 0 0}.card__rank{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-family:var(--mono);font-size:.67rem;color:var(--ink-3);letter-spacing:.02em}.card__rank-why{min-width:0;overflow-wrap:anywhere;display:inline-flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;padding:0;border:0;background:none;font:inherit;color:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.card__rank-toggle{color:var(--accent-ink);border-bottom:1px dotted currentColor;white-space:nowrap}.card__rank-why:hover .card__rank-toggle,.card__rank-why:focus-visible .card__rank-toggle{border-bottom-style:solid}.math{margin:.5rem 0 0;padding:.6rem .7rem;background:var(--accent-wash);border-radius:4px;font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.67rem;color:var(--ink-2);display:flex;flex-direction:column;gap:.28rem}.math__row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.math__label{margin:0}.math__calc{margin:0;display:flex;align-items:baseline;gap:.3rem;font-variant-numeric:tabular-nums;white-space:nowrap}.math__op{color:var(--ink-3)}.math__value{color:var(--ink);min-width:2.6em;text-align:right}.math__row--total{border-top:1px solid var(--rule);padding-top:.28rem;margin-top:.1rem;font-weight:600;color:var(--ink)}.math__note{margin:.15rem 0 0;font-family:var(--sans, system-ui, sans-serif);font-size:.72rem;line-height:1.45;color:var(--ink-3)}.card__rank-score{font-variant-numeric:tabular-nums;color:var(--ink-2);white-space:nowrap}.card__dupes{font-size:.72rem;color:var(--ink-3);font-style:italic}.card__actions{display:flex;gap:.4rem;margin-top:.15rem}.card__vote{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:.85rem;line-height:1;padding:.28rem .5rem;border-radius:5px;border:1px solid var(--rule-strong);background:transparent;cursor:pointer;filter:grayscale(1);opacity:.7;transition:opacity .12s,filter .12s,border-color .12s}.card__vote:hover{opacity:1;filter:none;border-color:var(--ink-3)}.card__vote--up.card__vote--active{opacity:1;filter:none;border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}.card__vote--down.card__vote--active{opacity:1;filter:none;border-color:var(--err);background:var(--err-wash)}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.app__explain{align-self:flex-start;margin-top:.7rem;font-size:.8rem;color:var(--accent-ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 35%,transparent);padding-bottom:1px}.app__explain:hover{border-bottom-color:var(--accent)}
