.gallery-page{--wall: var(--color-canvas);--wall-2: var(--color-code-bg);--panel: var(--color-surface);--ink: var(--color-ink);--ink-soft: var(--color-ink-muted);--ink-mut: var(--color-ink-muted);--ink-faint: var(--color-ink-faint);--line: var(--color-border-faint);--line-2: var(--color-border);--sig: var(--color-accent);--sig-deep: var(--color-accent-dim);--serif: var(--font-display);--mono: var(--font-mono)}*{box-sizing:border-box}.gallery-page{color:var(--ink);font-family:var(--serif);font-size:17px;line-height:1.6;padding-bottom:40px}.gallery-page:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(1200px 600px at 70% -10%,color-mix(in oklab,var(--sig) 11%,transparent),transparent 70%)}.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(18px,4vw,48px)}.mono{font-family:var(--mono)}.label{font-family:var(--mono);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mut)}.sig,.gallery-page a{color:var(--sig)}.hero{padding:clamp(40px,7vw,90px) 0 clamp(28px,4vw,48px)}.hero .label{color:var(--sig)}.hero h1{font-family:var(--serif);font-weight:600;letter-spacing:-.025em;font-size:clamp(2.6rem,7vw,5.4rem);line-height:1.02;margin:16px 0 0;max-width:15ch;text-wrap:balance}.hero h1 em{font-style:italic;color:var(--sig)}.hero .lede{margin:24px 0 0;max-width:56ch;font-size:clamp(1.05rem,1.6vw,1.28rem);color:var(--ink-soft);line-height:1.62;text-wrap:pretty}.hero .lede b{color:var(--ink);font-weight:600}.stage{margin-top:clamp(28px,4vw,44px)}.stage-frame{border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--panel);box-shadow:0 30px 80px -30px #0009}.stage-plate{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;padding:14px 20px;border-top:1px solid var(--line)}.stage-plate .nm{font-family:var(--serif);font-size:1.1rem;font-weight:600}.stage-plate .md{font-family:var(--mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;padding:2px 8px;border-radius:999px;border:1px solid var(--line-2);color:var(--ink-mut)}.stage-plate .ds{color:var(--ink-mut);font-style:italic;font-size:.95rem}.dash{display:grid;grid-template-columns:168px 1fr;background:var(--d-bg);color:var(--d-ink);font-family:var(--serif);min-height:320px}.dash.mini{min-height:240px;grid-template-columns:128px 1fr}.dash-side{background:var(--d-card);border-right:1px solid var(--d-border);padding:14px 10px;display:flex;flex-direction:column;gap:12px}.dash-brand{font-size:.82rem;font-weight:600;color:var(--d-ink)}.dash.mini .dash-brand{font-size:.72rem}.dash-brand i{color:var(--d-accent);font-style:italic}.dash-brand span{font-family:var(--mono);font-size:.5rem;letter-spacing:.16em;text-transform:uppercase;color:var(--d-mut);margin-left:6px}.dash-nav{display:flex;flex-direction:column;gap:2px}.dash-nav a{font-size:.8rem;color:var(--d-ink);padding:7px 10px;border-radius:7px;text-decoration:none;opacity:.85}.dash.mini .dash-nav a{font-size:.7rem;padding:5px 8px}.dash-nav a.on{background:var(--d-accent);color:var(--d-accent-fg);opacity:1;font-weight:600}.dash-body{padding:16px 18px;display:flex;flex-direction:column;gap:14px;min-width:0}.dash.mini .dash-body{padding:12px 13px;gap:10px}.dash-top .dash-h{margin:0;font-family:var(--mono);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;color:var(--d-ink)}.dash.mini .dash-top .dash-h{font-size:.82rem}.dash-top .dash-h i{color:var(--d-accent);font-style:normal}.dash-top .sub{font-size:.75rem;color:var(--d-mut);margin-top:2px}.dash.mini .dash-top .sub{font-size:.64rem}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dash.mini .dash-grid{gap:8px}.dc{background:var(--d-card);border:1px solid var(--d-border);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:8px}.dash.mini .dc{padding:9px;gap:6px;border-radius:8px}.dc .k{font-family:var(--mono);font-size:.54rem;letter-spacing:.12em;text-transform:uppercase;color:var(--d-mut)}.dc .v{font-family:var(--mono);font-size:1.5rem;font-weight:700;color:var(--d-ink);line-height:1;letter-spacing:-.02em}.dash.mini .dc .v{font-size:1.1rem}.spark{display:flex;align-items:flex-end;gap:3px;height:34px}.dash.mini .spark{height:24px}.spark i{flex:1;background:var(--d-accent);border-radius:2px 2px 0 0;opacity:.55}.spark i:last-child{opacity:1}.rows{display:flex;flex-direction:column;gap:6px}.row{display:flex;align-items:center;gap:8px;font-size:.72rem;color:var(--d-ink)}.dash.mini .row{font-size:.62rem;gap:6px}.row .rd{width:7px;height:7px;border-radius:999px;flex:none}.row .rn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .rt{font-family:var(--mono);font-size:.6rem;color:var(--d-mut)}.gallery{padding:clamp(48px,7vw,84px) 0 24px}.gallery-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--line-2);padding-bottom:14px;margin-bottom:26px}.gallery-head h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.02em;margin:0}.grid5{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}figure.spec{margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--panel);transition:transform .25s cubic-bezier(.2,0,.2,1),border-color .25s}figure.spec:hover{transform:translateY(-4px);border-color:var(--line-2)}figure.spec .frame{overflow:hidden}figcaption{padding:13px 16px 15px;border-top:1px solid var(--line)}.cap-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.cap-nm{font-family:var(--serif);font-size:1.05rem;font-weight:600}.cap-md{font-family:var(--mono);font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mut);border:1px solid var(--line-2);border-radius:999px;padding:2px 8px}.cap-ds{font-style:italic;color:var(--ink-mut);font-size:.9rem;margin-top:3px}.sw{display:flex;gap:5px;margin-top:11px}.sw i{width:20px;height:20px;border-radius:5px;border:1px solid rgba(0,0,0,.15)}.install{padding:clamp(44px,6vw,72px) 0;border-top:1px solid var(--line-2);margin-top:40px}.install-grid{display:grid;grid-template-columns:1fr;gap:28px 48px}.install-grid>*{min-width:0}@media(min-width:820px){.install-grid{grid-template-columns:.9fr 1.1fr;align-items:start}}.install h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,3vw,2.1rem);letter-spacing:-.02em;margin:0 0 12px}.install p{color:var(--ink-soft);margin:0 0 12px;max-width:46ch}.codewrap{position:relative}pre{margin:0;background:var(--wall-2);border:1px solid var(--line-2);border-radius:12px;padding:18px 20px;overflow-x:auto;font-family:var(--mono);font-size:.82rem;line-height:1.75;color:var(--ink-soft)}pre .c{color:var(--ink-faint)}.copybtn{position:absolute;top:12px;right:12px;z-index:1;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mut);background:var(--panel);border:1px solid var(--line-2);border-radius:7px;padding:6px 11px;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.copybtn:hover{color:var(--ink);border-color:var(--ink-mut)}.copybtn.copied{color:var(--sig);border-color:var(--sig)}pre .a{color:var(--sig)}.steps{list-style:none;counter-reset:s;margin:0;padding:0}.steps li{counter-increment:s;display:grid;grid-template-columns:26px 1fr;column-gap:12px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line)}.steps li:before{content:counter(s,decimal-leading-zero);grid-column:1;grid-row:1 / span 2;font-family:var(--mono);font-size:.7rem;color:var(--sig);padding-top:3px}.steps b{grid-column:2;color:var(--ink)}.steps span{grid-column:2;color:var(--ink-mut)}.arrival{padding:clamp(48px,7vw,90px) 0 clamp(60px,8vw,100px);text-align:center}.invite{padding:clamp(44px,6vw,72px) 0;border-top:1px solid var(--line-2)}.invite-inner{max-width:640px}.invite-h{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,3.2vw,2.2rem);letter-spacing:-.02em;line-height:1.1;margin:10px 0 0;text-wrap:balance}.invite-p{color:var(--ink-soft);font-size:1.05rem;line-height:1.6;margin:16px 0 0;max-width:52ch}.invite-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.btn-gh,.btn-ghost{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:12px 20px;border-radius:10px;transition:transform .14s,background .16s,border-color .16s,color .16s}.gallery-page a.btn-gh{background:var(--sig);color:var(--cy-on-accent)}.btn-gh:hover{background:var(--sig-deep)}.btn-ghost{border:1px solid var(--line-2);color:var(--ink)}.btn-ghost:hover{border-color:var(--ink-mut)}.btn-gh:active,.btn-ghost:active{transform:translateY(1px)}.arrival blockquote{margin:0 auto;max-width:24ch;font-family:var(--serif);font-style:italic;font-size:clamp(1.8rem,4.5vw,3rem);line-height:1.15;letter-spacing:-.02em;text-wrap:balance}.arrival blockquote em{color:var(--sig);font-style:normal}.arrival .sign{margin-top:26px;font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mut)}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}:focus-visible{outline:2px solid var(--sig);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;transform:translateY(14px);animation:rise .7s cubic-bezier(.2,0,.2,1) forwards}@keyframes rise{to{opacity:1;transform:none}}}
