.sidebar-toggle{display:none;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:9px 12px;margin:12px 0;font:inherit;cursor:pointer}.sidebar-close{display:none;border:1px solid var(--line);border-radius:8px;background:transparent;padding:7px 10px;cursor:pointer}.sidebar{min-width:0}.sidebar-filters{display:grid;gap:2px}.sidebar-item{display:flex;align-items:center;justify-content:space-between;border:1px solid transparent;background:transparent;border-radius:10px;color:var(--muted);padding:10px 12px;font:inherit;text-align:left;cursor:pointer}.sidebar-item.is-active{background:var(--navy);color:var(--mint)}.sidebar-item span:last-child{font-size:.75rem;color:inherit;opacity:.72}.sidebar-heading h2,.subcategory-row h3{font-size:1rem;margin:0}.subcategory-row h3{font-weight:750}.sidebar-backdrop[hidden]{display:none}@media(min-width:701px){.library-layout{grid-template-columns:190px minmax(0,1fr) 280px}.sidebar{position:sticky;top:96px;align-self:start}.sidebar .subcategory-row{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.sidebar .subcategory-filters{display:grid;max-height:60vh;overflow:auto;overscroll-behavior:contain}.sidebar .subcategory-chip{border-radius:8px;text-align:left}.sidebar .filter-reset{margin-top:8px;width:100%}}@media(max-width:700px){.sidebar-toggle{display:block}.sidebar{position:fixed;inset:0 auto 0 0;z-index:24;width:min(86vw,340px);max-width:100%;padding:20px 16px;background:var(--surface);box-shadow:18px 0 40px rgba(17,27,47,.2);overflow-y:auto;overscroll-behavior:contain;transform:translateX(-105%);transition:transform .2s ease}.sidebar.is-open{transform:translateX(0)}.sidebar-backdrop{position:fixed;inset:0;z-index:23;background:rgba(17,27,47,.55)}.sidebar-close{display:block}.sidebar-heading{display:flex;justify-content:space-between;align-items:center}.sidebar-heading h2{margin:0}.sidebar-filters{margin-top:18px}.sidebar-item{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:12px 4px;color:var(--ink)}.sidebar-item.is-active{background:transparent;color:var(--ink)}.sidebar .subcategory-row{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.sidebar .subcategory-filters{display:grid;gap:2px}.sidebar .subcategory-chip{text-align:left;padding:10px 4px;border:0;border-bottom:1px solid var(--line);background:transparent}.sidebar .filter-reset{width:100%;margin-top:12px}}
:root{--emoji-font:'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji','Noto Emoji',sans-serif;--text-font:ui-monospace,'SFMono-Regular','Cascadia Mono','Noto Sans Mono',monospace}.hero{max-width:100%;padding:14px 0 16px}.hero-copy{margin:0;color:var(--muted);font-size:.92rem}.character-value,.preview-value{font-family:var(--emoji-font);font-variant-emoji:emoji;text-rendering:optimizeLegibility;white-space:pre-wrap;overflow-wrap:normal;word-break:keep-all;line-break:strict;max-width:100%}.emoji-glyph{display:block;width:min(100%,2.8rem);height:auto;max-height:3rem;object-fit:contain;margin:auto}.preview-value .emoji-glyph{width:min(100%,5rem);max-height:5rem}.character-value[data-presentation=symbol],.preview-value[data-presentation=symbol]{font-family:var(--text-font);font-variant-emoji:text;font-size:2.6rem;line-height:1.1;white-space:pre-wrap;overflow:hidden;overflow-wrap:anywhere;word-break:break-word;text-align:center}.character-card:has(.character-value[data-presentation=symbol]){align-items:center}.character-card:has(.character-value[data-presentation=symbol]) .character-value{font-size:2.6rem}.character-value[data-presentation=normal],.preview-value[data-presentation=normal]{font-variant-emoji:normal;white-space:pre;overflow:hidden;overflow-wrap:normal;word-break:normal;line-break:auto}.scroll-sentinel{height:1px;margin-top:16px}.legal-modal{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:20px;background:rgba(17,27,47,.62)}.legal-modal[hidden]{display:none!important}.legal-panel{position:relative;width:min(620px,100%);max-height:min(80vh,720px);overflow:auto;background:var(--surface);color:var(--ink);border-radius:18px;padding:28px;box-shadow:var(--shadow)}.legal-panel button{float:right;border:1px solid var(--line);border-radius:8px;background:transparent;padding:7px 10px;cursor:pointer}.legal-panel h2{margin:0 0 20px}.legal-panel p{color:var(--muted);line-height:1.75}.modal-open{overflow:hidden}.subcategory-row{display:flex;align-items:center;gap:10px;margin-top:10px;min-width:0}.subcategory-filters{display:flex;gap:7px;overflow-x:auto;scrollbar-width:thin;min-width:0;padding-bottom:2px}.subcategory-chip,.filter-reset{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:6px 10px;white-space:nowrap;cursor:pointer;font:inherit;font-size:.78rem}.subcategory-chip span{font-size:.7rem}.subcategory-chip.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.filter-reset{margin-left:auto;flex:none}.grid-heading strong{color:var(--ink)}@media(max-width:700px){.hero{max-width:100%;padding:10px 0 12px}.hero h1{margin:10px 0 14px}.hero-copy{margin-bottom:0}.library{margin-top:24px}.preview-value{max-width:100%;font-size:2rem}.legal-panel{padding:22px}.subcategory-row{align-items:flex-start}.filter-reset{padding:6px 8px}.character-value[data-presentation=normal]{font-size:.9rem}}

/* Sidebar information and floating scroll-top geometry. */
.shell{padding-bottom:60px;}
.subcategory-row{display:block;min-width:0;}.subcategory-heading-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;}.subcategory-heading-bar h3{display:flex;align-items:center;min-width:0;min-height:33px;margin:0;line-height:1;}.subcategory-heading-bar .filter-reset{flex:0 0 auto;margin:0;width:auto;white-space:nowrap;}.subcategory-filters{min-width:0;}.sidebar-info{border-top:1px solid var(--line);margin-top:18px;padding-top:14px;color:var(--muted);font-size:.75rem;min-width:0;}.sidebar-info h3{color:var(--ink);font-size:.85rem;margin:0 0 5px;}.sidebar-info p{margin:0 0 9px;font-size:.68rem;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:clip;letter-spacing:-.02em;}.sidebar-info nav{display:grid;gap:6px;}.sidebar-info a{color:var(--ink);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;}
.scroll-top-button{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,calc(18px + env(safe-area-inset-bottom)));z-index:22;border:1px solid var(--navy);border-radius:999px;background:var(--navy);color:var(--mint);padding:10px 14px;box-shadow:0 10px 24px rgba(17,27,47,.2);font:inherit;font-size:.82rem;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;}
.scroll-top-button.is-visible{opacity:1;visibility:visible;transform:none;}
.scroll-top-button[hidden]{display:block;}
.search-status{min-height:1.25em;color:var(--muted);font-size:.72rem;}
.mobile-tray{padding-bottom:calc(10px + env(safe-area-inset-bottom));}
@media(min-width:701px){.sidebar{top:var(--desktop-sidebar-sticky-top,152px);}.sidebar .subcategory-filters{max-height:34vh;gap:4px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;}.sidebar .subcategory-chip{padding:7px 10px;}.sidebar .subcategory-row{display:block;}.grid-region,.character-grid{min-width:0;}.sidebar-info{margin-bottom:8px;}}
@media(max-width:700px){.shell{padding-left:16px;padding-right:16px;padding-bottom:60px;}.sidebar{padding-bottom:calc(24px + env(safe-area-inset-bottom));}.scroll-top-button{right:max(16px,env(safe-area-inset-right));bottom:calc(76px + env(safe-area-inset-bottom));}.mobile-tray{bottom:0;}}
@media(max-width:700px){.library-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;min-width:0;}.library-toolbar .sidebar-toggle{display:block;grid-column:1;grid-row:1;margin:0;white-space:nowrap;}.library-toolbar .search-box{grid-column:2;grid-row:1;min-width:0;width:100%;}.library-toolbar .search-status{grid-column:1 / -1;grid-row:2;min-width:0;overflow-wrap:anywhere;}}
@media(prefers-reduced-motion:reduce){.scroll-top-button{transition:none;}}
@media(max-width:360px){.sidebar-info p{white-space:normal;overflow-wrap:anywhere;font-size:.7rem;}}
.content-guide,.faq-section{max-width:1120px;margin:56px auto 0;padding:0 4px}.content-guide h2,.faq-section h2{font-size:1.45rem;margin:0 0 14px;color:var(--ink)}.content-guide>p{max-width:820px;color:var(--muted);line-height:1.8;margin:0}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}.guide-grid article{border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--surface)}.guide-grid h3{margin:0 0 8px;font-size:1rem}.guide-grid p,.faq-section p{color:var(--muted);line-height:1.75;margin:0}.content-guide a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.faq-section{margin-top:42px;margin-bottom:72px}.faq-section details{border-top:1px solid var(--line);padding:16px 0}.faq-section details:last-child{border-bottom:1px solid var(--line)}.faq-section summary{cursor:pointer;font-weight:700;color:var(--ink)}.faq-section details p{padding:12px 24px 0 0}@media(max-width:700px){.content-guide,.faq-section{margin-top:38px;padding:0}.guide-grid{grid-template-columns:1fr;gap:10px}.guide-grid article{padding:15px}.faq-section{margin-bottom:48px}}
/* Mobile-only horizontal sticky ad; deliberately not a square or vignette unit. */
.mobile-sticky-ad{display:none;}
@media(max-width:700px){.mobile-sticky-ad{position:fixed;display:block;left:0;right:0;bottom:calc(64px + env(safe-area-inset-bottom));z-index:11;min-height:58px;max-height:64px;padding:4px 12px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);box-shadow:0 -4px 14px rgba(30,40,70,.08);overflow:hidden;text-align:center;}.mobile-sticky-ad .adsbygoogle{display:inline-block!important;width:320px!important;height:50px!important;max-width:100%;max-height:50px;}}