.home-hero{padding:72px 0 84px;text-align:center}.home-hero-title{font-size:38px;font-weight:700;line-height:1.35;color:#ffffff}.home-hero-sub{margin-top:12px;margin-bottom:32px;font-size:17px;color:var(--lav)}.home-hero-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 10px;margin-top:26px}.home-chip-label{align-self:center;font-size:13px;color:var(--lav-soft)}.home-chip{display:inline-block;padding:5px 14px;border-radius:999px;border:1px solid rgba(233,200,107,.35);background:rgba(255,255,255,.06);color:var(--moon-soft);font-size:14px;font-weight:500;transition:background .15s ease,border-color .15s ease,color .15s ease}.home-chip:hover{background:rgba(233,200,107,.16);border-color:var(--moon);color:var(--moon)}.home-section{margin-top:64px}.home-section-title{font-size:26px;font-weight:700;color:var(--ink)}.home-section-sub{margin-top:6px;margin-bottom:24px;font-size:15px;color:var(--muted)}.home-cat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.home-cat-card{display:flex;flex-direction:column;gap:6px;padding:22px 20px 20px;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.home-cat-card:hover{border-color:var(--lav);box-shadow:0 2px 6px rgba(23,18,51,.07),0 10px 24px rgba(23,18,51,.08);transform:translateY(-2px)}.home-cat-emoji{font-size:34px;line-height:1}.home-cat-name{margin-top:6px;font-size:19px;font-weight:700;color:var(--ink)}.home-cat-desc{font-size:13.5px;line-height:1.6;color:var(--muted);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.home-top-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 14px;gap:12px 14px}.home-top-list>li{min-width:0}.home-top-row{display:flex;align-items:center;gap:16px;padding:14px 18px;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.home-top-row:hover{border-color:var(--lav);box-shadow:0 2px 6px rgba(23,18,51,.07),0 10px 24px rgba(23,18,51,.08);transform:translateY(-2px)}.home-top-rank{flex-shrink:0;width:34px;font-size:30px;font-weight:700;line-height:1;text-align:center;color:var(--moon)}.home-top-emoji{flex-shrink:0;font-size:24px;line-height:1}.home-top-body{display:block;min-width:0;flex:1 1}.home-top-title{display:block;font-size:17px;font-weight:700;color:var(--ink)}.home-top-intro{display:block;font-size:13.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-top-row .badge{flex-shrink:0}.home-notice{margin-top:64px;padding:28px 30px;text-align:center}.home-notice-title{font-size:20px;font-weight:700;color:var(--ink)}.home-notice-text{max-width:620px;margin:10px auto 18px;font-size:15px;color:var(--muted)}@media (max-width:640px){.home-hero{padding:52px 0 60px}.home-hero-title{font-size:27px}.home-hero-sub{font-size:15px;margin-bottom:26px}.home-section{margin-top:48px}.home-section-title{font-size:22px}.home-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-cat-card{padding:18px 16px 16px}.home-cat-emoji{font-size:28px}.home-cat-name{font-size:17px}.home-top-list{grid-template-columns:1fr;gap:10px}.home-top-rank{width:28px;font-size:24px}.home-notice{margin-top:48px;padding:24px 20px}}.searchbox{position:relative;width:100%;max-width:560px;margin:0 auto}.searchbox-input{width:100%;padding:15px 24px;border:2px solid transparent;border-radius:999px;background:#ffffff;color:var(--ink);font-size:16px;outline:none;box-shadow:0 8px 28px rgba(10,6,30,.28);transition:border-color .15s ease,box-shadow .15s ease;-moz-appearance:none;appearance:none;-webkit-appearance:none}.searchbox-input::placeholder{color:var(--muted)}.searchbox-input:focus{border-color:var(--moon);box-shadow:0 8px 28px rgba(10,6,30,.34)}.searchbox-list{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:40;padding:6px;background:#ffffff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 14px 36px rgba(23,18,51,.18);list-style:none;margin:0}.searchbox-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:8px;color:var(--ink)}.searchbox-list a:hover{background:var(--paper);color:var(--night-2)}.sb-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-cat{flex-shrink:0;font-size:12px;color:var(--muted)}@media (max-width:640px){.searchbox-input{padding:13px 20px;font-size:15px}}