@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-cyrillic-wght-normal.Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-greek-wght-normal.DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-vietnamese-wght-normal.usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-ext-wght-normal.Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-wght-normal.DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/atkinson-hyperlegible-next-latin-ext-wght-normal.C6vrW8VD.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/atkinson-hyperlegible-next-latin-wght-normal.BcXVPD7q.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #ffffff;--panel: #f1f4f7;--surface: #fff;--line: #cbd3dc;--ink: #1a1f26;--sub: #4b5563;--on-ink: #f1f4f7;--focus: #b4440f;color-scheme:light}:root{--pick: #c9dcf5;--pick-ink: #1d4f91;--grid: #b9c3ce;--frame: #9aa6b4;--state-related: #eef3fa;--state-error: #b42318}:root{--shadow-pop: 0 8px 24px rgb(0 0 0 / .08)}:root{--ui-font: "Manrope Variable", system-ui, -apple-system, "Segoe UI", "Hiragino Sans", "PingFang SC", "Apple SD Gothic Neo", "Noto Sans CJK JP", "Noto Sans CJK SC", "Microsoft YaHei", sans-serif;--digit-font: "Atkinson Hyperlegible Next Variable", var(--ui-font)}:root:lang(ja){--ui-font: "Manrope Variable", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Noto Sans CJK JP", "Meiryo", system-ui, sans-serif}:root:lang(zh-Hans){--ui-font: "Manrope Variable", "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", system-ui, sans-serif}:root:lang(zh-Hant){--ui-font: "Manrope Variable", "PingFang TC", "Noto Sans CJK TC", "Microsoft JhengHei", system-ui, sans-serif}:root:lang(ko){--ui-font: "Manrope Variable", "Apple SD Gothic Neo", "Noto Sans CJK KR", "Malgun Gothic", system-ui, sans-serif}:root{--fs-2xs: 12px;--fs-xs: 13px;--fs-sm: 14px;--fs-md: 15px;--fs-base: 16px;--fs-lg: 17px;--fs-xl: 18px;--fs-2xl: 20px;--fs-3xl: 24px;--fs-4xl: 30px}:root{--lh-tight: 1.25;--lh-ui: 1.4;--lh-body: 1.6;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px}:root:lang(zh),:root:lang(ja),:root:lang(ko){--lh-body: 1.75}:root{--radius-xs: 6px;--radius-sm: 8px;--radius-md: 10px;--radius: 14px;--radius-full: 999px;--target: 44px;--page: 936px}:root{--settle: cubic-bezier(.25, 1.1, .4, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--ui-font);font-size:var(--fs-base);line-height:1.5;transition:background-color .2s ease;min-height:100vh;display:flex;flex-direction:column}main{flex:1}a{color:inherit}a:hover{opacity:.75}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.container{max-width:var(--page);margin:0 auto;padding:0 24px}.muted{color:var(--sub);font-size:var(--fs-sm)}.site-header{border-bottom:1px solid var(--line);overflow-x:clip}.site-header .container{display:flex;flex-wrap:nowrap;align-items:center;padding-top:8px;padding-bottom:8px}.logo{text-decoration:none;font-size:var(--fs-2xl);font-weight:800;line-height:var(--lh-tight);white-space:nowrap}.main-nav{display:flex;align-items:center;gap:22px;margin-left:48px;font-size:var(--fs-base);font-weight:600}.main-nav a,.phone-menu a{text-decoration:none}.main-nav a[aria-current=page],.phone-menu a[aria-current=page]{font-weight:800}.phone-menu{display:none;position:relative;margin-left:-15px}.phone-menu summary{list-style:none;width:var(--target);height:var(--target);display:flex;align-items:center;justify-content:center;padding:6px;background-clip:content-box;border-radius:14px;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent}.phone-menu summary::-webkit-details-marker{display:none}.phone-menu[open] summary{background-color:var(--panel)}.phone-menu nav{position:absolute;left:15px;top:48px;z-index:10;min-width:200px;display:flex;flex-direction:column;gap:4px;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop);font-weight:600}.phone-menu nav a{padding:10px 12px;border-radius:var(--radius-sm)}.phone-menu nav a:hover{background:var(--panel);opacity:1}.site-footer{border-top:1px solid var(--line);margin-top:48px;font-size:var(--fs-sm);color:var(--sub)}.site-footer .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;padding-bottom:18px}.site-footer a{text-decoration:none}.site-footer nav{display:flex;gap:20px}.footer-left{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}.lang-switch{margin-left:auto}.lang-switch select{height:32px;padding:0 28px 0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%234b5563' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 9px center;appearance:none;-webkit-appearance:none;color:var(--sub);font:inherit;font-size:var(--fs-sm);cursor:pointer}.play{padding-top:20px;min-height:calc(100svh - var(--header-h, 55px))}.level-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-bottom:14px}.level-label{margin-right:-8px;font-size:var(--fs-lg);font-weight:500;color:var(--sub)}.difficulty-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;font-size:var(--fs-lg)}.difficulty-tabs a{text-decoration:none;padding:10px 0;color:var(--sub);font-weight:500}.difficulty-tabs a[aria-current=page]{color:var(--ink);font-weight:800}.game{display:grid;grid-template-columns:minmax(0,1fr) 300px;column-gap:48px;row-gap:16px;align-items:start}.board-wrap{position:relative;max-width:480px}.slide-board{--gap: 6px;position:relative;aspect-ratio:1;background:var(--line);border:2px solid var(--frame);border-radius:var(--radius);touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.tile{position:absolute;left:var(--gap);top:var(--gap);width:calc((100% - (var(--n) + 1) * var(--gap)) / var(--n));aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;background:var(--surface);border:1px solid var(--grid);border-radius:var(--radius-md);color:var(--ink);font-family:var(--digit-font);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;font-size:min(calc(132px / var(--n)),calc((100vw - 32px) / var(--n) * .36));transform:translate(calc(var(--c) * (100% + var(--gap))),calc(var(--r) * (100% + var(--gap))));transition:transform .13s var(--settle),background-color .2s ease,scale 90ms ease-out;-webkit-tap-highlight-color:transparent}@media(prefers-reduced-motion:no-preference){.tile:active:not(:disabled){scale:.95}}.tile:disabled{opacity:1;cursor:default}.tile:hover{opacity:1}.tile--home{background:var(--pick);border-color:var(--pick)}.tile--hint{background:var(--pick);border-color:var(--pick-ink);box-shadow:0 0 0 2px var(--pick-ink);z-index:1}.end-panel{position:absolute;inset:2px;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:24px;text-align:center;background:#fffffff0;border-radius:var(--radius);animation:end-in .32s cubic-bezier(.2,.8,.2,1) both}@keyframes end-in{0%{opacity:0;translate:0 10px}}.end-title{margin:0;font-size:var(--fs-4xl);font-weight:800}.end-line{margin:0;font-size:var(--fs-xl)}.end-sub{margin:0;color:var(--sub)}.end-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px}.side{display:flex;flex-direction:column;gap:16px}.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat{display:flex;flex-direction:column;padding:10px 14px;background:var(--panel);border-radius:var(--radius)}.stat-label{font-size:var(--fs-md);color:var(--sub)}.stat-value{font-size:var(--fs-3xl);font-weight:800;font-variant-numeric:tabular-nums}.stat-value--quiet{font-size:var(--fs-2xl);font-weight:600;color:var(--sub)}.tools{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tool{position:relative;height:72px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--ink);font:inherit;cursor:pointer}.tool:disabled{opacity:.45;cursor:default}.tool-icon{flex:none;width:32px;height:32px}.count{position:absolute;top:-8px;right:-8px;min-width:28px;height:28px;padding:0 6px;display:grid;place-items:center;border-radius:var(--radius);background:var(--ink);color:var(--on-ink);font-size:var(--fs-md);font-weight:800;font-variant-numeric:tabular-nums}.message{min-height:3em;margin:0;font-size:var(--fs-lg);color:var(--ink)}.confirm-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.btn{height:52px;padding:0 22px;border-radius:var(--radius);font:inherit;font-size:var(--fs-base);font-weight:800;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer}.btn--primary{background:var(--ink);color:var(--on-ink)}.btn--block{width:100%}.stats{display:flex;flex-direction:column;gap:20px;max-width:720px}.stats .stat-row{max-width:420px}.table-wrap{overflow-x:auto}.stats-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.stats-table th,.stats-table td{padding:8px 10px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}.stats-table th[scope=row],.stats-table thead th:first-child{text-align:left}.stats-table thead th{font-size:var(--fs-xs);color:var(--sub);font-weight:700}.stats-note{color:var(--sub);margin:0}.stats-empty{margin:0;font-weight:600}.how{margin-top:48px;padding-bottom:48px}.page{padding-top:32px;padding-bottom:48px}.prose{max-width:720px}.prose h1{font-size:var(--fs-4xl);line-height:1.2}.prose h2{font-size:var(--fs-3xl)}.prose h3{font-size:var(--fs-xl);margin-bottom:4px}.prose p,.prose li{color:var(--sub)}.prose p{margin-top:6px}.prose table{border-collapse:collapse;margin:12px 0;font-variant-numeric:tabular-nums}.prose th,.prose td{padding:6px 16px 6px 0;text-align:left;border-bottom:1px solid var(--line);color:var(--sub)}.prose th{color:var(--ink);font-weight:700}.prose a{color:var(--ink)}.prose ul,.prose ol{padding-left:1.1em}@media(max-width:760px){.container{padding:0 14px}.play.container{padding-left:8px;padding-right:8px}.play .level-bar,.play .side{padding-left:6px;padding-right:6px}.main-nav{display:none}.phone-menu{display:block}.logo{margin-left:-2px}.play{padding-top:14px}.game{grid-template-columns:minmax(0,1fr)}.board-wrap{max-width:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.calendar{padding:14px 16px 16px;background:var(--panel);border-radius:var(--radius)}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-title{font-weight:800}.cal-nav{width:36px;height:36px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-md);background:transparent}@media(hover:hover){.cal-nav:not(:disabled):hover{background:var(--bg)}}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-weekday{font-size:var(--fs-2xs);font-weight:700;color:var(--sub);padding-bottom:4px}.cal-day{position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:transparent;color:var(--ink);font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums}@media(hover:hover){.cal-day:not(:disabled):hover{background:var(--bg)}}.cal-day--off:disabled{color:var(--sub);opacity:.45;font-weight:500}.cal-day--today{box-shadow:inset 0 0 0 1.5px var(--ink)}.cal-day--current,.cal-day--current:not(:disabled):hover{background:color-mix(in srgb,var(--ink) 14%,var(--panel))}.cal-day--solved,.cal-day--solved:not(:disabled):hover{background:var(--ink);color:var(--on-ink)}@media(hover:hover){.cal-day--solved:not(:disabled):hover{opacity:.85}}.cal-day--solved.cal-day--current{box-shadow:0 0 0 2px var(--panel),0 0 0 3.5px var(--ink)}.cal-day--started:after{content:"";position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:var(--focus)}.cal-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:12px 0 0;font-size:var(--fs-xs);color:var(--sub)}.cal-key{display:inline-block;width:12px;height:12px;border-radius:50%;margin-left:8px}.cal-key:first-child{margin-left:0}.cal-key--solved{background:var(--ink)}.cal-key--started{width:6px;height:6px;background:var(--focus)}.end-stars{margin:0;font-size:var(--fs-4xl);line-height:1;letter-spacing:4px}.star{color:var(--line)}.star{display:inline-block}.star--on{color:var(--ink);animation:star-in .38s cubic-bezier(.3,1.3,.5,1) both;animation-delay:calc(.26s + var(--i, 0) * .15s)}@keyframes star-in{0%{scale:.3;color:var(--line)}60%{scale:1.1}to{scale:1}}.tab-button{padding:10px 0;border:0;background:none;font:inherit;color:var(--sub);font-weight:500;cursor:pointer}.tab-button[aria-pressed=true]{color:var(--ink);font-weight:800}.solver-grid{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:6px;padding:6px;aspect-ratio:1;background:var(--line);border:2px solid var(--frame);border-radius:var(--radius)}.solver-cell{min-width:0;width:100%;height:100%;padding:0;text-align:center;background:var(--surface);border:1px solid var(--grid);border-radius:var(--radius-md);color:var(--ink);font-family:var(--digit-font);font-weight:700;font-size:min(calc(132px / var(--n)),calc((100vw - 32px) / var(--n) * .36))}.solver-cell--empty{background:transparent}.solver-cell:focus{outline:2px solid var(--focus);outline-offset:1px}.solver .side{display:flex;flex-direction:column;gap:12px}.solver-result{margin:0;font-size:var(--fs-2xl);font-weight:800}.solver-step{margin:0;color:var(--sub);font-variant-numeric:tabular-nums}.solver-error{margin:0;color:var(--focus);font-weight:600}.btn--link{display:flex;align-items:center;justify-content:center;text-decoration:none}.btn:disabled{opacity:.45;cursor:default}.page-title{margin:0 0 6px;font-size:26px;font-weight:800;letter-spacing:-.3px}.solver .confirm-row .btn{padding:0 10px}.slide-board--photo{overflow:hidden}.slide-board--photo .tile.piece{background-color:var(--panel);background-repeat:no-repeat;border:0;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px #1a1f2614;transition:transform .13s var(--settle),scale 90ms ease-out,left .4s ease,top .4s ease,width .4s ease,border-radius .4s ease,opacity .4s ease}.piece-num{position:absolute;top:4px;left:4px;min-width:26px;height:26px;padding:0 6px;display:none;place-items:center;border-radius:7px;background:#ffffffe6;color:var(--ink);font-size:var(--fs-md);line-height:1}.slide-board--nums .piece-num{display:grid}.slide-board--photo .tile--home:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 3px var(--pick);opacity:0}.slide-board--nums .tile--home:after{opacity:1}.slide-board--photo .tile.piece.tile--hint{box-shadow:inset 0 0 0 3px #0000008c,inset 0 0 0 7px var(--surface);z-index:1;animation:hint-pulse .6s ease-in-out 3 alternate}@keyframes hint-pulse{to{box-shadow:inset 0 0 0 3px #0000008c,inset 0 0 0 12px var(--surface)}}.piece--last{opacity:0;pointer-events:none}.slide-board--whole{--gap: 0px}.slide-board--whole .tile.piece{border-radius:0;box-shadow:none}.slide-board--whole .piece--last{opacity:1}.slide-board--whole .piece-num,.slide-board--whole .tile--home:after{display:none}.board-wrap--drop .slide-board{outline:3px dashed var(--focus);outline-offset:4px}.peek{position:absolute;inset:2px;z-index:3;border-radius:calc(var(--radius) - 2px);background-size:cover;opacity:0;pointer-events:none;transition:opacity .15s}.board-wrap--peek .peek{opacity:1}.board-wrap--whole .peek{opacity:1;transition:opacity .2s .4s}.photo-result{display:flex;flex-direction:column;gap:8px;padding:20px;background:var(--panel);border-radius:var(--radius);animation:result-in .3s ease-out}.photo-result .end-title{font-size:26px;line-height:1.2}.photo-result-art{margin:4px 0 0;color:var(--sub)}.photo-result-name{display:block;color:var(--ink);font-weight:700}.photo-result .end-actions{justify-content:flex-start;margin-top:8px}@media(max-width:760px){.photo-main .photo-pictures{max-width:none}.photo-main .photo-pictures .strip-head,.photo-main .photo-pictures .photo-credit{padding:0 6px}.photo-main .picture-grid{grid-template-columns:repeat(5,1fr);gap:8px}}@keyframes result-in{0%{opacity:0;transform:translateY(6px)}}.btn--label{display:flex;align-items:center;justify-content:center}.photo-upload{padding-bottom:16px;border-bottom:1px solid var(--line)}.strip-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 16px;margin-bottom:4px}.strip-head .side-label{margin-bottom:0}.strip-head .switch-row{min-height:var(--target);font-size:var(--fs-md)}.photo-main .photo-pictures{margin-top:16px;max-width:480px}.photo-privacy,.photo-credit{margin:8px 0 0;font-size:var(--fs-md);color:var(--sub)}.side-label{display:block;margin-bottom:8px;font-size:var(--fs-md);font-weight:600;color:var(--sub)}.picture-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}.picture-pick{-webkit-touch-callout:none;aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:var(--radius-sm);background-color:var(--panel);background-size:cover;background-position:center}.picture-pick[aria-pressed=true]{border-color:var(--ink)}.switch-row{display:flex;align-items:center;gap:10px;min-height:var(--target);cursor:pointer}.switch-row{gap:7px}.switch-row input{flex:none;width:15px;height:15px;margin:0;border-radius:2px;accent-color:var(--ink)}.card-dialog{width:min(440px,calc(100vw - 32px));padding:20px;border:0;border-radius:var(--radius);background:var(--bg);color:var(--ink)}.card-dialog::backdrop{background:#1a1f2680}.card-title{margin:0 0 12px;font-size:var(--fs-2xl);font-weight:800}.card-image{display:block;width:100%;height:auto;border-radius:var(--radius-md)}.card-note{margin:12px 0;font-size:var(--fs-md);color:var(--sub)}.card-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.family-switch[data-astro-cid-k2d3akw5]{position:relative;margin-left:auto}summary[data-astro-cid-k2d3akw5]{list-style:none;width:var(--target);height:var(--target);margin-right:-15px;display:flex;align-items:center;justify-content:center;padding:6px;background-clip:content-box;border-radius:14px;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent}summary[data-astro-cid-k2d3akw5]::-webkit-details-marker{display:none}.family-switch[data-astro-cid-k2d3akw5][open] summary[data-astro-cid-k2d3akw5]{background-color:var(--panel)}.family-panel[data-astro-cid-k2d3akw5]{position:absolute;right:0;top:48px;z-index:10;padding:14px 12px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop)}.family-title[data-astro-cid-k2d3akw5]{margin:0 0 6px;padding:0 4px;font-size:var(--fs-sm);font-weight:800;color:var(--sub);line-height:1.4}.family-grid[data-astro-cid-k2d3akw5]{display:grid;grid-template-columns:repeat(3,120px);gap:4px}.family-grid[data-astro-cid-k2d3akw5] a[data-astro-cid-k2d3akw5]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 4px 10px;border-radius:var(--radius-md);text-decoration:none;color:var(--ink);font-size:var(--fs-md);font-weight:600;text-align:center;line-height:1.25}.family-grid[data-astro-cid-k2d3akw5] a[data-astro-cid-k2d3akw5]:hover{background:var(--panel);opacity:1}.family-icon[data-astro-cid-k2d3akw5]{display:block;width:40px;height:40px}.family-icon[data-astro-cid-k2d3akw5] svg{display:block;width:100%;height:100%}@media(max-width:760px){.family-panel[data-astro-cid-k2d3akw5]{position:fixed;left:14px;right:14px;top:60px}.family-grid[data-astro-cid-k2d3akw5]{grid-template-columns:repeat(3,minmax(0,1fr))}.family-grid[data-astro-cid-k2d3akw5] a[data-astro-cid-k2d3akw5]{font-size:var(--fs-sm)}}
