.tone-0{--tone:var(--tone-1)}.tone-1{--tone:var(--tone-2)}.tone-2{--tone:var(--tone-3)}.tone-3{--tone:var(--tone-4)}.topbar{z-index:5;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:12px;max-width:1440px;height:48px;margin:0 auto;padding:0 24px;display:flex}.brand{color:var(--ink);letter-spacing:.01em;align-items:center;gap:9px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{color:var(--accent);display:inline-flex}.nav{gap:2px;display:flex}.nav-link{white-space:nowrap;border-radius:var(--radius-sm);color:var(--muted);padding:6px 10px;font-size:14px;font-weight:550;text-decoration:none}button.nav-link{min-height:0;line-height:inherit;background:0 0;border:0}.nav-link:hover,.nav-link[aria-current=page]{background:var(--surface-2);color:var(--ink)}.page{max-width:1440px;margin:0 auto;padding:22px 24px 64px}.lede{max-width:64ch;color:var(--muted);font-size:14px}.gallery-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin-bottom:18px;display:flex}.gallery-head h1{margin-bottom:4px;font-size:22px}.filter .count{color:var(--faint);font-family:var(--mono);font-size:12px}.cards{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);height:100%;color:var(--ink);flex-direction:column;text-decoration:none;transition:border-color .12s,transform .12s;display:flex;overflow:hidden}.card:hover{border-color:var(--line-strong);transform:translateY(-1px)}.card[aria-current=true]{border-color:color-mix(in srgb, var(--accent) 60%, var(--line))}.art{aspect-ratio:16/10;background:#0d111c;flex:none;position:relative;overflow:hidden}.art svg,.art img{width:100%;height:100%;display:block;position:absolute;inset:0}.art img{object-fit:cover;opacity:0;transition:opacity .2s}.art img.is-loaded{opacity:1}.card-body{align-content:start;gap:6px;padding:10px 12px 12px;display:grid}.card-title-row{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.card-title{flex:1;min-width:0;font-size:15px}.tag{border:1px solid var(--line-strong);color:var(--muted);letter-spacing:.02em;border-radius:3px;flex:none;padding:1px 6px;font-size:11px;font-weight:650}.tag-game{color:#ffd75c;border-color:#ffcc3373}.tag-visual{color:#7de8e8;border-color:#5ce0e073}.tag-tool{color:#5fdcb1;border-color:#38d39f73}.card-blurb{color:var(--muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.chips{flex-wrap:wrap;gap:4px;margin:2px 0 0;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:3px;align-items:center;gap:6px;padding:2px 6px;font-size:11.5px;font-weight:550;display:inline-flex}.chip-kinds{color:var(--faint);align-items:center;gap:3px;display:inline-flex}.glyph{flex:none;display:block}.empty{border:1px dashed var(--line-strong);border-radius:var(--radius);justify-items:start;gap:10px;max-width:520px;padding:28px;display:grid}.config-head{border-bottom:1px solid var(--line);gap:12px;margin-bottom:8px;padding-bottom:18px;display:grid}.back{color:var(--muted);justify-self:start;font-size:13px;text-decoration:none}.back:hover{color:var(--ink)}.config-title{grid-template-columns:128px minmax(0,1fr);align-items:center;gap:16px;display:grid}.config-title .art{border:1px solid var(--line);border-radius:6px}.config-title h1{font-size:21px}.config-title .lede{margin-top:4px}.config-title .hint{margin-top:2px}.config-grid{grid-template-columns:minmax(300px,400px) minmax(0,1fr);align-items:start;gap:32px;display:grid}.config-form{display:grid}.sec{border-top:1px solid var(--line);gap:12px;padding:16px 0;display:grid}.sec:first-child{border-top:0}.sec-title{color:var(--ink);letter-spacing:.01em;font-size:13.5px;font-weight:700}.seg .glyph{color:var(--faint)}.seg input:checked+span .glyph{color:var(--ink)}.switch-row{min-height:var(--control-h);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;display:flex}.slider{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.slider-value{min-width:5ch;color:var(--ink);text-align:right;font-size:13px}.pin-status{color:var(--faint);margin-top:-4px;font-size:13px}.pin-status[data-state=ready]{color:var(--ok)}.pin-status[data-state=error]{color:var(--danger)}.pair-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}details.advanced>summary{cursor:pointer;align-items:center;gap:6px;min-height:24px;list-style:none;display:flex}details.advanced>summary::-webkit-details-marker{display:none}details.advanced>summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;transition:transform .12s;transform:rotate(-45deg)}details.advanced[open]>summary:before{transform:rotate(45deg)}.config-out{gap:14px;min-width:0;padding-top:16px;display:grid}.out-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.out-title{align-items:center;gap:10px;display:flex}.out-title h2{font-size:16px}.badge{border:1px solid var(--line-strong);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600}.badge-on{border-color:color-mix(in srgb, var(--ok) 55%, transparent);color:var(--ok)}.out-errors{border:1px solid color-mix(in srgb, var(--danger) 55%, transparent);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--danger) 9%, transparent);color:#ffb8b2;gap:4px;padding:9px 12px;font-size:13.5px;display:grid}.diagram-wrap{border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(circle at 1px 1px, var(--line) 1px, transparent 0) 0 0 / 14px 14px, var(--surface);justify-items:center;gap:10px;margin:0;padding:16px 14px 12px;display:grid}.diagram-wrap figcaption{text-align:center;justify-self:stretch}.diagram{max-width:100%;height:auto;display:block;overflow:visible}.diagram .f{color:var(--tone);transition:opacity .12s}.diagram .f-body{fill:currentColor;fill-opacity:.1;stroke:currentColor;stroke-width:1.25px}.diagram .f-reach{fill:currentColor;fill-opacity:.2}.diagram .f-adult{stroke:currentColor;stroke-opacity:.8;stroke-width:1px;stroke-dasharray:3 2}.diagram .f-seam{stroke:currentColor;stroke-opacity:.5;stroke-width:1px}.diagram text{fill:var(--ink);font-family:var(--mono);text-anchor:middle;opacity:.85}.diagram text.side{fill:var(--muted);font-family:var(--sans);opacity:1}.diagram text.vs{fill:var(--muted);font-family:var(--sans);font-weight:700}.diagram .fold{stroke:var(--line-strong);stroke-dasharray:4 4}.diagram .is-dim{opacity:.25}.diagram .is-hot .f-body{fill-opacity:.25;stroke-width:2.5px}.urls{gap:10px;margin:0;padding:0;list-style:none;display:grid}.url{border:1px solid var(--line);border-left:3px solid var(--tone);border-radius:var(--radius-sm);background:var(--surface);gap:8px;padding:10px 12px 12px;display:grid}.url-head{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.dot{background:var(--tone);border-radius:50%;flex:none;width:9px;height:9px}.url-what{flex-wrap:wrap;flex:1;align-items:baseline;gap:2px 10px;min-width:0;display:flex}.url-what strong{font-size:14px;font-weight:650}.url-note{color:var(--muted);font-size:13px}.url-text{border-color:var(--line);background:var(--bg);color:#cdd5e3;width:100%;min-height:3.2em;font:12px/1.5 var(--mono);word-break:break-all;resize:none;field-sizing:content;padding:8px 10px}.urls.is-blocked .url-text{opacity:.45}.out-links{flex-wrap:wrap;gap:8px;display:flex}.preview{gap:8px;padding-top:6px;display:grid}.preview-head{justify-content:space-between;align-items:center;display:flex}.preview-box{--ar:1080 / 1920;aspect-ratio:var(--ar);width:min(100%, calc(340px * var(--ar)));border:1px solid var(--line-strong);background:#000;border-radius:6px;overflow:hidden}.preview-box iframe{border:0;width:100%;height:100%;display:block}.preview-box.is-loading iframe{opacity:0}.out-tabs{border-bottom:1px solid var(--line);gap:2px;display:flex}.out-tab{min-height:36px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:0 12px;font-weight:600}.out-tab:hover{color:var(--ink);background:0 0}.out-tab[aria-selected=true]{border-bottom-color:var(--accent);color:var(--ink)}.out-pane{gap:14px;min-width:0;display:grid}.out-pane .preview-head{gap:12px}.sim-box{border:1px solid var(--line-strong);background:#000;border-radius:6px;height:clamp(360px,100dvh - 340px,1400px);overflow:hidden}.sim-box iframe{border:0;width:100%;height:100%;display:block}.sim-box.is-loading iframe{opacity:0}@media (min-width:961px){.config-out.is-sim{position:sticky;top:48px}}@media (max-width:960px){.config-grid{grid-template-columns:minmax(0,1fr);gap:8px}.config-out{border-top:1px solid var(--line)}}@media (max-width:640px){.topbar-inner,.page{padding-left:16px;padding-right:16px}.page{padding-top:16px}.nav-link{padding:6px 8px}.filter{flex-wrap:nowrap;width:100%;display:flex}.filter label{flex:auto}.filter label>span{justify-content:center;width:100%;padding:0 6px}.cards{grid-template-columns:minmax(0,1fr);gap:8px}.card{flex-direction:row}.card .art{aspect-ratio:auto;width:104px;min-height:100%}.card-body{flex:1;min-width:0;padding:9px 10px 10px}.config-title{grid-template-columns:88px minmax(0,1fr);gap:12px}.config-title .lede{font-size:13px}.pair-fields{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.brand-name{display:none}}.apps-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.apps-summary .btn-quiet{min-height:28px;padding:0 8px;font-size:13px}.app-checks{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:2px 12px;margin:0;padding:0;list-style:none;display:grid}.check{min-height:var(--control-h);cursor:pointer;flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:14px;display:flex}.check input{width:16px;height:16px;accent-color:var(--accent);margin:0}.check.is-unsuitable{color:var(--faint);cursor:default}.check .hint{flex-basis:100%;margin:-6px 0 4px 24px;font-size:12px}.check-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 8px;display:flex}.variants-toggle{border-color:var(--line);min-height:26px;color:var(--muted);background:0 0;margin-left:auto;padding:0 7px;font-size:12px;font-weight:550}.variants-toggle.has-ticked{border-color:color-mix(in srgb, var(--accent) 55%, transparent);color:var(--accent)}.variants-toggle[aria-expanded=true]{border-color:var(--line-strong);color:var(--ink)}.variant-checks{border-left:1px solid var(--line);margin:0 0 6px 24px;padding:0 0 0 10px;list-style:none}.variant-checks .check{min-height:30px;font-size:13.5px}.tour-spot{z-index:40;box-shadow:0 0 0 2px var(--accent), 0 0 18px 2px color-mix(in srgb, var(--accent) 35%, transparent), 0 0 0 100vmax #04060b9e;pointer-events:none;border-radius:10px;transition:left .25s,top .25s,width .25s,height .25s;position:fixed}.tour-tip{z-index:41;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-2);gap:8px;width:min(360px,100vw - 24px);padding:14px 16px 12px;transition:left .25s,top .25s;display:grid;position:fixed;box-shadow:0 14px 40px #00000073}.tour-arrow{border:1px solid var(--line-strong);background:var(--surface-2);width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;transform:rotate(45deg)}.tour-arrow[data-side=top]{border-bottom:0;border-right:0;top:0}.tour-arrow[data-side=bottom]{border-top:0;border-left:0;top:100%}.tour-arrow[data-side=left]{border-top:0;border-right:0;left:0}.tour-head{justify-content:space-between;align-items:center;display:flex}.tour-count{color:var(--accent);letter-spacing:.04em;font-size:12px;font-weight:700}.tour-close{width:26px;height:26px;min-height:0;color:var(--muted);background:0 0;border:0;border-radius:50%;padding:0;font-size:18px}.tour-close:hover{background:var(--surface-3);color:var(--ink)}.tour-title{font-size:16px}.tour-text{color:var(--muted);font-size:14px}.tour-foot{align-items:center;gap:8px;padding-top:4px;display:flex}.tour-gap{flex:1}@media (prefers-reduced-motion:reduce){.tour-spot,.tour-tip{transition:none}}
