:root{--bg:#f6f7fb;--panel:#fff;--panel-2:#eef1f7;--text:#0f172a;--muted:#5b6577;--border:#dfe3ec;--accent:#22446e;--accent-hover:#1a3556;--accent-soft:#e2ebf5;--on-accent:#fff;--gold:#f1b516;--gold-soft:#fdf1cf;--danger:#b91c1c;--danger-soft:#fee2e2;--ok:#15803d;--shadow:0 1px 2px rgba(15,23,42,.06),0 8px 24px rgba(15,23,42,.06);--radius:14px;--border-strong:#78859e;--focus-ring:var(--accent);--focus-ring-width:3px;--focus-ring-offset:2px;--header-h:64px;--sidebar-w:248px;--topbar-h:60px;--measure:720px;--page-max:1120px;--fs-2xs:12px;--fs-xs:13px;--fs-sm:14px;--fs-base:16px;--fs-lg:18px;--fs-xl:22px;--fs-2xl:28px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--z-suggest:30;--z-topbar:50;--z-backdrop:60;--z-drawer:70;--z-toast:80}.dark{--bg:#0b0f17;--panel:#121a28;--panel-2:#0f1622;--text:#e6ebf5;--muted:#97a3b6;--border:#223047;--accent:#77bdee;--accent-hover:#a6d6f7;--accent-soft:#143350;--on-accent:#07111f;--gold:#f1b516;--gold-soft:#3b3117;--danger:#f87171;--danger-soft:#3f1d1d;--ok:#4ade80;--shadow:0 1px 2px rgba(0,0,0,.4),0 12px 32px rgba(0,0,0,.35);--border-strong:#5b6f92}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--fs-base);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::selection{background:color-mix(in srgb,var(--gold) 45%,transparent)}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.shell{min-height:100vh;display:flex;flex-direction:column}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-topbar);height:var(--header-h);background:var(--panel);border-bottom:1px solid var(--border)}.header-inner{height:100%;max-width:var(--page-max);margin:0 auto;padding-inline:var(--sp-5)}.header-inner,.site-header--home{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.site-header--home{position:static;height:auto;background:transparent;border-bottom:0;padding:16px 20px}.header-logo{display:block;height:26px;width:auto}.dark .header-logo{filter:brightness(1.5) saturate(1.1)}.brand{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:44px;color:var(--text);font-size:var(--fs-base);font-weight:650;letter-spacing:-.1px}.brand:hover{text-decoration:none}.brand-logo{display:block;width:28px;height:28px;border-radius:8px;flex:0 0 auto}.brand-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-actions{gap:var(--sp-2)}.header-actions,.site-nav{display:flex;align-items:center}.site-nav{gap:var(--sp-1)}.site-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--sp-3);border-radius:10px;color:var(--text);font-size:var(--fs-sm);font-weight:550}.site-nav a:hover{background:var(--panel-2);text-decoration:none}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.theme-toggle:hover{background:var(--panel-2)}main{flex:1 1;width:100%}.home{display:flex;flex-direction:column;align-items:center;padding:clamp(var(--sp-6),9vh,96px) var(--sp-5) var(--sp-7)}.hero{width:100%;max-width:640px;text-align:center}.hero-title{margin:0 0 var(--sp-2);display:flex;justify-content:center}.hero-wordmark{width:clamp(200px,44vw,300px);height:auto;display:block}.dark .hero-wordmark{filter:brightness(1.5) saturate(1.1)}.hero-subtitle{margin:var(--sp-3) 0 var(--sp-5);color:var(--muted);font-size:var(--fs-base)}.search-compact-wrap,.search-home{position:relative;width:100%}.search-compact-wrap{max-width:640px;margin:0 auto}.search-form{display:flex;align-items:center;gap:var(--sp-2);width:100%;min-height:56px;padding:0 6px 0 var(--sp-4);border:1px solid var(--border-strong);border-radius:999px;background:var(--panel);box-shadow:var(--shadow);transition:border-color .12s ease,box-shadow .12s ease}.search-form:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.search-form .icon{flex:0 0 auto;color:var(--muted)}.search-input{flex:1 1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:var(--fs-base);padding:var(--sp-2) 0}.search-input::placeholder{color:var(--muted)}.search-icon-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:0;background:var(--accent);color:var(--on-accent);cursor:pointer}.search-icon-button:hover{background:var(--accent-hover)}.search-button{flex:0 0 auto;min-height:40px;border:0;border-radius:999px;background:var(--accent);color:var(--on-accent);padding:var(--sp-2) var(--sp-4);font-size:var(--fs-sm);font-weight:600;cursor:pointer}.search-button:hover{background:var(--accent-hover)}.search-form.compact{max-width:640px;margin:0 auto}.suggest{position:absolute;top:calc(100% + 6px);left:0;right:0;list-style:none;margin:0;padding:var(--sp-1) 0;max-height:320px;overflow-y:auto;overscroll-behavior:contain;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);z-index:var(--z-suggest)}.suggest-option{display:block;width:100%;min-height:40px;padding:var(--sp-2) var(--sp-3);border:0;background:none;color:var(--text);font:inherit;font-size:var(--fs-sm);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.suggest-option.active,.suggest-option:hover{background:var(--panel-2)}.suggest-option.active{outline:2px solid var(--accent);outline-offset:-2px}.page{width:100%;max-width:calc(var(--measure) + 40px);margin:0 auto;padding:var(--sp-6) var(--sp-5) var(--sp-7)}.page h1{font-size:clamp(var(--fs-xl),3.4vw,var(--fs-2xl));letter-spacing:-.3px;margin:0 0 var(--sp-1)}.page .lead{color:var(--muted);margin:0 0 var(--sp-5)}.prose p{margin:0 0 var(--sp-4);white-space:pre-line}.results{list-style:none;padding:0;margin:var(--sp-5) 0 0;display:flex;flex-direction:column;gap:var(--sp-3)}.result{padding:var(--sp-4);transition:border-color .12s ease,box-shadow .12s ease}.result:hover{border-color:var(--accent);box-shadow:var(--shadow)}.result-head{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.result-domain{color:var(--muted);font-size:var(--fs-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-title{display:block;margin:var(--sp-1) 0 var(--sp-1);font-size:var(--fs-lg);font-weight:650;letter-spacing:-.1px;color:var(--accent);word-break:break-word}.result-desc{margin:0}.result-desc,.toolbar{color:var(--muted);font-size:var(--fs-sm)}.toolbar{display:flex;justify-content:space-between;flex-wrap:wrap;margin-top:var(--sp-4)}.pagination,.toolbar{align-items:center;gap:var(--sp-3)}.pagination{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:var(--sp-3);margin-top:var(--sp-5)}.pagination>:last-child{justify-self:end}.pagination-page{color:var(--muted);font-size:var(--fs-sm);white-space:nowrap}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.shortcuts{width:100%;max-width:640px;margin-top:var(--sp-7)}.shortcut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--sp-2);gap:var(--sp-2)}@media (min-width:560px){.shortcut-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.shortcut{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);min-height:76px;padding:var(--sp-3) var(--sp-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.shortcut:hover{text-decoration:none;border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow)}.shortcut-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--panel-2);overflow:hidden}.shortcut-icon img{width:24px;height:24px;object-fit:contain}.shortcut .badge{width:36px;height:36px;font-size:var(--fs-sm)}.shortcut .label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-2xs);color:var(--muted)}.badge{width:24px;height:24px;border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:var(--fs-2xs);font-weight:800;flex:0 0 auto}.badge,.button,button.button{display:inline-flex;align-items:center;justify-content:center}.button,button.button{gap:6px;min-height:44px;padding:var(--sp-2) var(--sp-4);border-radius:10px;border:1px solid var(--border);background:var(--panel);color:var(--text);font:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer;text-decoration:none;transition:background-color .12s ease,border-color .12s ease}.button:hover,button.button:hover{text-decoration:none;background:var(--panel-2)}.button:active,button.button:active{transform:translateY(1px)}.button.primary,button.button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.button.primary:hover,button.button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button.ghost{border-color:transparent;background:transparent}.button.danger{color:var(--danger);border-color:var(--border)}.button[disabled]{opacity:.55;cursor:not-allowed}.notice{display:flex;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);margin:var(--sp-4) 0 0;border-radius:12px;background:var(--panel);border:1px solid var(--border);color:var(--muted);font-size:var(--fs-sm)}.notice.error{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:var(--danger-soft);color:var(--danger)}.notice.info{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-7) 0;text-align:center;color:var(--muted)}.empty-icon{color:var(--muted);flex:0 0 auto}.empty h1,.empty h2{margin:0;color:var(--text);font-size:var(--fs-xl);letter-spacing:-.2px}.empty p{margin:0;max-width:46ch;font-size:var(--fs-base)}.site-footer{border-top:1px solid var(--border);padding:var(--sp-5) var(--sp-5) var(--sp-6);text-align:center}.footer-links{display:flex;justify-content:center;gap:var(--sp-4);margin-bottom:var(--sp-2);font-size:var(--fs-sm)}.footer-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--sp-1)}.muted{color:var(--muted)}.small{font-size:var(--fs-2xs);margin:var(--sp-1) 0}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.status{font-size:var(--fs-xs);color:var(--muted)}.status.error{color:var(--danger)}.install-banner{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:var(--sp-3);display:flex;justify-content:center}.install-card{width:100%;max-width:460px;background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:var(--sp-4);display:flex;gap:var(--sp-3);align-items:flex-start}.install-card img{width:40px;height:40px;border-radius:10px}.install-card .grow{flex:1 1;min-width:0}.install-card strong{display:block;font-size:var(--fs-sm)}.install-card p{margin:2px 0 var(--sp-3);color:var(--muted);font-size:var(--fs-xs)}.install-actions{display:flex;gap:var(--sp-2)}.install-actions .button{min-height:36px;padding:var(--sp-1) var(--sp-3);font-size:var(--fs-xs)}@media (max-width:639px){.site-nav{display:none}.header-inner{padding-inline:var(--sp-4)}.home{padding-top:clamp(var(--sp-5),7vh,64px)}.page{padding-inline:var(--sp-4)}.result-desc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}}