:root{color-scheme:light;--bg:#ffffff;--fg:#1d2433;--muted:#667085;--card:#fff;--line:#e4e7ec;--accent:#2f5fd0;--accent-fg:#fff;--chip:#eef2fb}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--accent)}
.topbar{max-width:860px;margin:0 auto;padding:14px 16px;font-size:14px;color:var(--muted)}
.topbar a{color:var(--muted);text-decoration:none}.topbar a:hover{text-decoration:underline}
.hero{max-width:760px;margin:0 auto;padding:28px 16px 8px;text-align:center;position:relative}
h1{font-size:clamp(28px,5vw,42px);margin:0 0 8px;line-height:1.15}
.sub{color:var(--muted);margin:0 0 24px}
form{display:flex;gap:8px}
input{flex:1;min-width:0;padding:14px 16px;font-size:18px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--fg)}
input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
button{cursor:pointer;border:0;border-radius:10px;font:inherit}
form button{padding:0 22px;background:var(--accent);color:var(--accent-fg);font-weight:600}
.suggest{position:absolute;left:16px;right:16px;z-index:5;margin-top:6px;background:var(--card);border:1px solid var(--line);border-radius:10px;text-align:left;box-shadow:0 8px 24px rgba(0,0,0,.12);overflow:hidden}
.suggest button{display:block;width:100%;text-align:left;padding:10px 16px;background:none;color:var(--fg);border-radius:0}
.suggest button:hover,.suggest button.on{background:var(--chip)}
main{max-width:760px;margin:0 auto;padding:8px 16px 32px}
h2{font-size:18px;margin:28px 0 12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{padding:8px 14px;background:var(--chip);color:var(--fg);border-radius:999px;font-size:15px}
.chip:hover{outline:1px solid var(--accent)}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin:16px 0}
.card h3{margin:0 0 4px;font-size:17px;line-height:1.3}
.meta{color:var(--muted);font-size:14px;margin:0 0 12px}
.tools{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}
.tools button{padding:6px 12px;background:var(--chip);color:var(--fg);font-size:14px}
.tools button.on{background:var(--accent);color:var(--accent-fg)}
.card h4{margin:20px 0 8px;font-size:15px}
ul.ph{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
ul.ph li{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:8px}
ul.ph li span{flex:1}
ul.ph button{padding:6px 12px;background:none;border:1px solid var(--line);color:var(--muted);font-size:13px}
ul.ph button.done,.more.done{color:var(--accent);border-color:var(--accent)}
.more{margin-top:10px;padding:8px 14px;background:none;border:1px solid var(--line);color:var(--fg)}
.more+.more{margin-left:8px}
.note{padding:16px;background:var(--chip);border-radius:10px}
.ad-wrap{margin:20px 0;text-align:center;min-height:100px;max-width:100%;overflow:hidden}
.ad-wrap small{display:block;color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}
.ad-wrap:has(ins[data-ad-status="unfilled"]){display:none}
.about{max-width:760px;margin:0 auto;padding:0 16px 24px;color:var(--fg)}
.about h2{margin-top:32px}
.about p,.about li{color:var(--muted)}
details{border-bottom:1px solid var(--line);padding:10px 0}
summary{cursor:pointer;font-weight:600}
.browse{columns:2 240px;column-gap:24px;padding:0;list-style:none;font-size:15px}
.browse li{break-inside:avoid;margin:0 0 6px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px}
.tile{display:block;padding:18px;background:var(--card);border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--fg)}
.tile:hover{border-color:var(--accent)}
.tile strong{display:block;margin-bottom:4px}
.tile span{color:var(--muted);font-size:14px}
.tile.soon{opacity:.6;pointer-events:none}
footer{text-align:center;color:var(--muted);padding:24px 16px;font-size:14px}
footer a{color:var(--muted)}
.result-title{margin:24px 0 8px;font-size:22px}
.ad-rail{display:none;position:fixed;top:96px;width:160px;height:600px;z-index:1}
.ad-rail.left{left:calc(50% - 380px - 176px)}
.ad-rail.right{left:calc(50% + 380px + 16px)}
@media (min-width:1200px){.ad-rail{display:block}}
ul.ph li.ad-li{display:block;border:0;padding:0;margin:6px 0}
ul.ph li{min-width:0}
ul.ph li span{overflow-wrap:anywhere}
ul.ph li.ad-li{max-width:100%;overflow:hidden}
ul.ph li span em{display:block;margin-top:2px;font-size:14px;color:var(--muted)}
