.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Fredoka;src:url(/fonts/Fredoka-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/Nunito-var.woff2)format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans JP;src:local(Noto Sans JP),url(/fonts/NotoSansJP-glyphs.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--paper:#fdf6ea;--paper-2:#fffdf8;--ink:#4a4036;--ink-dim:#736655;--line:#e7dcc8;--tape:#ffcf6b8c;--accent:#a85d1c;--accent-deep:#a85f1a;--gold:#f0b13e;--gold-line:#e9b53e;--gold-bg:#ffd56b;--gold-ink:#5a3f1d;--dash:#d8c8aa;--dot:#ddcfb6;--sh-08:#785f3714;--sh-10:#785f371a;--sh-16:#785f3729;--c0:#ff9a8b;--c1:#ffcf6b;--c2:#97d8b0;--c3:#9cc4f0;--c4:#c4a9e8;--c5:#ffb3c8;--c6:#f0b98a;--radius:12px;--font:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Fredoka", "Nunito", system-ui, sans-serif;--glyph:"Noto Sans JP", "Hiragino Kaku Gothic Pro", "Yu Gothic", system-ui, sans-serif}*{box-sizing:border-box}html{color-scheme:light}html,body{max-width:100%;overflow-x:hidden}body{min-height:100vh;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:#a85d1c24;background-color:var(--paper);background-image:radial-gradient(#7864461a 1.3px,#0000 1.3px);background-position:-8px -8px;background-size:22px 22px;margin:0;font-weight:600}a{color:var(--accent-deep);text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:960px;margin:0 auto;padding:0 16px}.site-header{align-items:center;gap:12px;padding:18px 16px 8px;display:flex}.site-header .brand{font-family:var(--display);letter-spacing:-.5px;color:var(--ink);align-items:baseline;gap:9px;font-size:24px;font-weight:600;display:flex}.site-header .brand .jp{color:var(--accent);letter-spacing:1px;font-size:14px;font-weight:600}.site-header nav{align-items:center;gap:10px;margin-left:auto;display:flex}.site-header nav a{color:var(--ink-dim);background:var(--paper-2);border:1.5px solid var(--line);border-radius:20px;padding:6px 13px;font-size:13px;font-weight:700}.site-header nav a:hover{color:var(--ink);border-color:var(--accent);text-decoration:none}.chrome{align-items:center;gap:8px;display:flex}.chrome-btn{border:1.5px solid var(--line);background:var(--paper-2);color:var(--ink-dim);cursor:pointer;border-radius:20px;align-items:center;gap:5px;padding:6px 13px;font-family:inherit;font-size:13px;font-weight:700;line-height:1;transition:border-color .12s,color .12s,transform .12s;display:inline-flex}.chrome-btn:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-2px)}.chrome-install{border-color:var(--gold-line);color:var(--gold-ink);background:#fff4d6}.dl-button{box-sizing:border-box;border:1.5px solid var(--gold-line);min-height:44px;color:var(--gold-ink);background:#fff4d6;border-radius:12px;padding:12px 20px;font-size:1.05em;font-weight:700;display:inline-block}.dl-button:hover{border-color:var(--accent);color:var(--ink);text-decoration:none}.dl-button:focus-visible{outline:2px solid var(--accent-deep);outline-offset:2px}main{padding:8px 0 36px}.page-head{margin:14px 0 6px}.page-head h1{font-family:var(--display);letter-spacing:-.4px;color:var(--ink);margin:0 0 8px;font-size:clamp(24px,4vw,30px);font-weight:600;line-height:1.12}.page-head .lede{color:var(--ink-dim);max-width:70ch;margin:0 0 4px;font-size:15px;font-weight:600;line-height:1.6}.crumbs{color:var(--ink-dim);margin:4px 0 10px;font-size:13px;font-weight:700}.crumbs a{color:var(--ink-dim)}.section-title,.a-seclabel{white-space:nowrap;font-family:var(--display);color:var(--ink);text-transform:none;letter-spacing:0;opacity:1;align-items:center;gap:10px;margin:26px 0 12px;font-size:17px;font-weight:600;display:flex}.section-title:before{content:"✦";color:var(--gold)}.section-title:after,.a-seclabel:after{content:"";border-top:2px dotted var(--dot);flex:1;height:0}.a-seclabel .star{color:var(--gold)}.chips,.a-cloud{flex-wrap:wrap;gap:9px;margin:12px 0 22px;display:flex}.chips a,.a-chip{color:var(--ink);background:var(--paper-2);border:1.5px solid var(--line);cursor:pointer;border-radius:20px;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;font-weight:700;transition:transform .12s,border-color .12s;display:inline-flex}.chips a:hover,.a-chip:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.chips a .count,.a-chip .n{color:var(--ink-dim);font-weight:700}.chips a .g,.a-chip .g{font-family:var(--glyph);color:var(--ink-dim);font-size:13px}.chips a .ic,.a-chip .ic{font-size:15px}.prose p{color:var(--ink);max-width:70ch;margin:0 0 12px;font-size:15px;font-weight:600;line-height:1.7}.faq details{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--paper-2);max-width:70ch;box-shadow:0 3px 8px var(--sh-08);margin:8px 0;padding:10px 14px}.faq summary{cursor:pointer;color:var(--ink);font-size:14px;font-weight:800}.faq summary::marker{color:var(--gold)}.faq details[open] summary{margin-bottom:8px}.faq details p{color:var(--ink-dim);margin:0;font-size:14px;font-weight:600;line-height:1.6}.site-footer{border-top:2px dotted var(--dot);max-width:960px;color:var(--ink-dim);text-align:center;margin:30px auto 0;padding:16px 16px 28px;font-size:12.5px;font-weight:700}.site-footer a{color:var(--ink-dim);text-decoration:underline}.site-footer a:hover{color:var(--ink)}.site-credit{margin-top:10px;font-size:11px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--paper-2);color:var(--ink);border:1.5px solid var(--gold-line);box-shadow:0 6px 16px var(--sh-16);border-radius:12px;padding:10px 16px;font-size:14px;font-weight:800;transition:top .15s;position:absolute;top:-56px;left:8px}.skip-link:focus{text-decoration:none;top:8px}.chips a:focus-visible,.a-chip:focus-visible,.a-tab:focus-visible,.chrome-btn:focus-visible,.a-clear:focus-visible,.a-star:focus-visible,.site-header nav a:focus-visible,.site-footer a:focus-visible,.crumbs a:focus-visible,.skip-link:focus-visible{outline:2px solid var(--accent-deep);outline-offset:2px;border-radius:10px}.picker{margin:4px 0 8px}.a-hero{background:var(--paper-2);border:1.5px solid var(--line);box-shadow:0 10px 26px var(--sh-10);border-radius:18px;margin:8px 0 10px;padding:20px 26px 24px;position:relative;transform:rotate(-.5deg)}.a-tape{background:var(--tape);width:116px;height:26px;position:absolute;top:-13px;left:50px;transform:rotate(-4deg);box-shadow:0 2px 5px #0000000f}.a-tape:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 9px,#ffffff59 9px 10px);position:absolute;inset:0}.a-book-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.a-book-head>div:first-child{flex-shrink:0}.a-kicker{letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:12px;font-weight:800}.a-book-title{font-family:var(--display);white-space:nowrap;letter-spacing:-.6px;color:var(--ink);margin:0;font-size:29px;font-weight:600;line-height:1}.a-book-actions{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.a-tabs{gap:8px;display:flex}.a-tab{cursor:pointer;color:var(--ink-dim);background:var(--paper);border:1.5px solid var(--line);border-radius:20px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:800;transition:color .12s,background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.a-tab .n{font-weight:700}.a-tab:hover{color:var(--ink)}.a-tab.is-on{color:#5a3f25;border-color:var(--gold-line);box-shadow:0 2px 0 var(--sh-10);background:#fff4d6}.a-clear{color:var(--ink-dim);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:2px 4px;font-family:inherit;font-size:11px;font-weight:700;text-decoration:underline}.a-clear:hover{color:var(--ink)}.a-clear.is-armed{color:#c0392b;text-decoration:none}.a-tray{flex-wrap:wrap;align-content:flex-start;gap:11px;min-height:92px;display:flex}.a-tray-chip{font-family:var(--glyph);color:var(--ink);border:1.5px solid var(--line);cursor:pointer;box-shadow:0 4px 10px var(--sh-10);background:#fff;border-radius:12px;justify-content:center;align-items:center;padding:13px 15px;font-size:15px;line-height:1.3;transition:transform .12s,box-shadow .12s;display:inline-flex;position:relative}.a-tray-chip:hover{box-shadow:0 9px 20px var(--sh-16);transform:translateY(-3px)}.a-tray-chip.is-emoji{font-size:24px}.a-tray-chip.is-copied{background:var(--gold-bg);border-color:var(--gold-line);color:var(--gold-ink);white-space:nowrap;font-weight:800}.a-star{border:1.5px solid var(--line);cursor:pointer;color:#cdbb98;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;padding:0;font-size:11px;line-height:1;transition:transform .12s,color .12s,border-color .12s,background .12s;display:inline-flex;position:absolute;top:-9px;right:-9px;box-shadow:0 2px 5px #785f3724}.a-tray-chip:hover .a-star{transform:scale(1.1)}.a-star.is-fav{color:var(--gold);border-color:var(--gold);background:#fff7e3}.a-empty{align-items:center;gap:16px;width:100%;padding:6px 0;display:flex}.a-empty .hint{color:var(--ink-dim);font-size:14px;font-weight:700;line-height:1.4}.a-empty .slots{gap:9px;display:flex}.a-empty .slot{border:1.5px dashed var(--dash);background:#ffffff73;border-radius:12px;width:60px;height:46px}.a-search-wrap{margin:18px 0 6px;position:relative}.a-search{width:100%;color:var(--ink);background:var(--paper-2);border:2px dashed var(--dash);border-radius:16px;outline:none;padding:15px 18px 15px 46px;font-family:inherit;font-size:16px;font-weight:600}.a-search::placeholder{color:#7d7060}.a-search:focus{border-style:solid;border-color:#e0a45f}.a-search-ic{opacity:.6;pointer-events:none;font-size:17px;position:absolute;top:50%;left:17px;transform:translateY(-50%)}.picker-hint{color:var(--ink-dim);margin:8px 2px 0;font-size:12px;font-weight:700}.picker-hint kbd{border:1.5px solid var(--line);background:var(--paper-2);color:var(--ink);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}@media (pointer:coarse){.picker-hint{display:none}}.browse-intro{color:var(--ink-dim);margin:22px 0 0;font-size:13.5px;font-weight:700}#categories{scroll-margin-top:16px}.picker-status{color:var(--ink-dim);padding:6px 2px;font-size:12px;font-weight:700}.a-grid{flex-wrap:wrap;align-content:flex-start;gap:10px;min-height:220px;margin:12px 0 0;display:flex}.a-cell{font-family:var(--glyph);background:var(--paper-2);color:var(--ink);border:1.5px solid var(--line);cursor:pointer;box-shadow:0 3px 8px var(--sh-08);touch-action:manipulation;border-radius:12px;justify-content:center;align-items:center;min-height:40px;padding:11px 13px;font-size:14px;line-height:1.3;transition:transform .12s,box-shadow .12s,border-color .12s,background .12s;display:inline-flex;position:relative}.a-cell:hover{box-shadow:0 8px 18px var(--sh-16);transform:translateY(-3px)rotate(0)!important}.a-cell:focus-visible{outline:2px solid var(--accent-deep);outline-offset:2px;transform:translateY(-2px)rotate(0)!important}.a-cell.is-emoji{min-width:48px;font-size:24px}.a-cell.is-copied{background:var(--gold-bg);border-color:var(--gold-line);color:var(--gold-ink);white-space:nowrap;font-weight:800;transform:translateY(-2px)rotate(0)!important}.a-gridstar{color:var(--gold);filter:drop-shadow(0 1px 1px #785f3740);pointer-events:none;font-size:12px;line-height:1;position:absolute;top:-7px;right:-6px}.picker-empty{text-align:center;width:100%;color:var(--ink-dim);padding:40px 20px;font-size:14px;font-weight:700;line-height:1.6}@media (width<=560px){.wrap{padding:0 12px}.site-header{padding:14px 12px 6px}.site-header nav{display:none}.site-header .chrome{margin-left:auto}.a-hero{margin:8px 0;padding:16px 16px 18px}.a-tape{left:28px}.a-book-title{font-size:22px}.a-book-head{gap:10px;margin-bottom:12px}.a-kicker{letter-spacing:1.5px}.section-title,.a-seclabel{margin:22px 0 10px;font-size:16px}.site-footer{padding:16px 12px 24px}}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}.a-cell,.a-tray-chip,.a-chip,.a-tab,.chips a,.chrome-btn,.btn,.builder-chip,.builder-more,.a-share,.share-btn{transform:none!important}.a-hero{transform:none}.a-cell:hover,.a-tray-chip:hover,.a-chip:hover,.a-tab:hover,.chips a:hover,.chrome-btn:hover,.btn:hover,.builder-chip:hover,.share-btn:hover,.a-tray-chip:hover .a-share{transform:none!important}}@media (pointer:coarse){.a-cell,.a-tray-chip,.a-tab,.chips a,.a-chip,.chrome-btn,.builder-chip,.btn,.builder-more{min-height:44px}}.a-share{border:1.5px solid var(--line);cursor:pointer;color:#b9a585;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;padding:0;font-size:12px;line-height:1;transition:transform .12s,color .12s,border-color .12s,background .12s;display:inline-flex;position:absolute;top:-9px;left:-9px;box-shadow:0 2px 5px #785f3724}.a-tray-chip:hover .a-share{transform:scale(1.1)}.a-share:hover{color:var(--accent);border-color:var(--accent)}.a-share:focus-visible,.builder-chip:focus-visible,.btn:focus-visible,.builder-more:focus-visible,.share-btn:focus-visible{outline:2px solid var(--accent-deep);outline-offset:2px}.maker{margin:10px 0 8px}.builder-stage{background:var(--paper-2);border:2px dashed var(--dash);border-radius:18px;flex-direction:column;align-items:center;gap:14px;margin:8px 0 18px;padding:22px 16px;display:flex}.builder-preview{font-family:var(--glyph);color:var(--ink);text-align:center;word-break:break-all;min-height:1.6em;padding:8px 18px;font-size:clamp(26px,7vw,40px);line-height:1.3;transform:rotate(-1deg)}.builder-preview.is-copied{color:var(--gold-ink);font-weight:800;transform:rotate(0)}.builder-actions{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.btn{font-family:var(--display);color:var(--ink);border:1.5px solid var(--line);cursor:pointer;box-shadow:0 3px 8px var(--sh-08);background:#fff;border-radius:999px;padding:9px 16px;font-size:14px;font-weight:600;transition:transform .12s,box-shadow .12s,border-color .12s,background .12s}.btn:hover{box-shadow:0 7px 16px var(--sh-16);border-color:var(--accent);transform:translateY(-2px)}.btn.is-fav{color:var(--gold-ink);border-color:var(--gold);background:#fff7e3}.btn-primary{background:var(--accent);color:#fff8ec;border-color:var(--accent-deep)}.btn-primary:hover{background:var(--accent-deep)}.builder-row{align-items:flex-start;gap:10px;margin:0 0 10px;display:flex}.builder-rowhead{font-family:var(--display);color:var(--accent);text-align:right;flex:0 0 64px;padding-top:9px;font-size:13px;font-weight:600}.builder-chips{flex-wrap:wrap;flex:1;gap:7px;display:flex}.builder-chip{font-family:var(--glyph);color:var(--ink);background:var(--paper-2);border:1.5px solid var(--line);cursor:pointer;border-radius:10px;min-width:40px;padding:7px 11px;font-size:15px;line-height:1.2;transition:transform .12s,border-color .12s,background .12s}.builder-chip:hover{border-color:var(--accent);transform:translateY(-2px)}.builder-chip.is-on{background:var(--gold-bg);border-color:var(--gold-line);color:var(--gold-ink);font-weight:700}.builder-chip.is-none{font-family:var(--display);border-style:dashed}.builder-chip.is-none:not(.is-on){color:color-mix(in srgb, var(--ink-dim) 40%, transparent);background:0 0}.builder-more{font-family:var(--display);color:var(--accent-deep);cursor:pointer;background:0 0;border:none;padding:7px 6px;font-size:12px;font-weight:700}.toast{background:var(--ink);color:var(--paper);box-shadow:0 8px 24px var(--sh-16);z-index:50;opacity:0;visibility:hidden;pointer-events:none;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:700;transition:opacity .15s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast.is-shown{opacity:1;visibility:visible}.maker-cta{margin:4px 0 16px}.maker-link{color:var(--ink-dim);margin:14px 0 4px;font-size:14px;font-weight:700}.share-btn{font-family:var(--display);color:var(--ink);border:1.5px solid var(--line);cursor:pointer;box-shadow:0 3px 8px var(--sh-08);background:#fff;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}.share-btn:hover{border-color:var(--accent)}@media (width<=560px){.builder-row{flex-direction:column;gap:4px}.builder-rowhead{text-align:left;flex-basis:auto;padding-top:0}}
