.ct-shell{max-width:1080px;padding:var(--space-xl,32px) var(--space-lg,24px) var(--space-3xl,96px);margin:0 auto}.ct-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ct-back{margin-bottom:var(--space-md,16px);font-size:var(--text-sm,13px);color:var(--ink-dim,#ffffff8c);transition:color var(--duration-fast) var(--ease-standard);text-decoration:none;display:inline-block}.ct-back:hover,.ct-back:focus-visible{color:var(--ink-bright,#fff)}.ct-kicker{align-items:center;gap:var(--space-2,8px);margin:0 0 var(--space-sm,12px);font-family:var(--font-mono);font-size:var(--text-2xs,11px);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim,#ffffff8c);display:inline-flex}.ct-dot{border-radius:var(--radius-pill,999px);background:var(--success,#4ade80);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in srgb, var(--success,#4ade80) 22%, transparent)}.ct-dot--pending{background:var(--warn,#fbbf24);box-shadow:0 0 0 3px color-mix(in srgb, var(--warn,#fbbf24) 22%, transparent)}.ct-title{margin:0 0 var(--space-xs,6px);font-family:var(--font-display);font-size:var(--text-2xl,42px);line-height:var(--leading-tight,1.15);letter-spacing:-.02em;font-weight:var(--weight-bold,700);color:var(--ink-bright,#fff)}.ct-sub{margin:0 0 var(--space-lg,24px);color:var(--ink-dim,#ffffff9e);font-size:var(--text-md,15px);max-width:62ch}.ct-grid{gap:var(--space-xl,32px);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=900px){.ct-grid{grid-template-columns:minmax(0,1fr)}}.ct-card{border:1px solid var(--stroke,#ffffff14);border-radius:var(--radius-lg,16px);background:var(--surface-1,#ffffff08);padding:var(--space-lg,24px);margin-bottom:var(--space-lg,24px)}.ct-card h2{margin:0 0 var(--space-md,16px);font-size:var(--text-xs,12px);letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-mono);color:var(--ink-dim,#ffffff8c);font-weight:var(--weight-medium,500)}.ct-stage{margin-bottom:var(--space-lg,24px);border:1px solid var(--stroke,#ffffff14);border-radius:var(--radius-lg,16px);background:var(--surface-2,#ffffff0d);aspect-ratio:4/3;position:relative;overflow:hidden}.ct-stage model-viewer,.ct-stage img{object-fit:cover;--poster-color:transparent;width:100%;height:100%;display:block}.ct-stage-empty{height:100%;padding:var(--space-lg,24px);text-align:center;color:var(--ink-dim,#ffffff8c);font-size:var(--text-sm,13px);justify-content:center;align-items:center;display:flex}.ct-edition{top:var(--space-sm,12px);left:var(--space-sm,12px);border-radius:var(--radius-pill,999px);background:color-mix(in srgb, var(--bg,#0a0a0a) 78%, transparent);border:1px solid var(--stroke,#ffffff24);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-mono);font-size:var(--text-xs,12px);color:var(--ink-bright,#fff);letter-spacing:.02em;align-items:baseline;gap:6px;padding:6px 12px;display:inline-flex;position:absolute}.ct-edition strong{font-size:var(--text-md,15px);font-weight:var(--weight-bold,700)}.ct-facts{gap:var(--space-md,16px);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.ct-fact dt{font-family:var(--font-mono);font-size:var(--text-2xs,11px);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim,#ffffff80);margin:0 0 4px}.ct-fact dd{color:var(--ink,#ffffffe0);font-size:var(--text-md,15px);overflow-wrap:anywhere;margin:0}.ct-proof-state{align-items:center;gap:var(--space-2,8px);margin-bottom:var(--space-md,16px);font-size:var(--text-sm,13px);color:var(--ink,#ffffffe0);display:inline-flex}.ct-code{margin:0 0 var(--space-sm,12px);padding:var(--space-sm,12px);border:1px solid var(--stroke,#ffffff14);border-radius:var(--radius-md,10px);background:var(--surface-2,#ffffff0d);font-family:var(--font-mono);font-size:var(--text-xs,12px);color:var(--ink,#ffffffe0);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;line-height:1.6;display:block}.ct-actions{gap:var(--space-2,8px);flex-wrap:wrap;display:flex}.ct-btn{border-radius:var(--radius-pill,999px);border:1px solid var(--stroke,#ffffff24);color:var(--ink,#ffffffe0);font:inherit;font-size:var(--text-sm,13px);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), transform var(--duration-instant) var(--ease-standard);background:0 0;align-items:center;gap:6px;padding:9px 14px;text-decoration:none;display:inline-flex}.ct-btn:hover{background:var(--surface-2,#ffffff0f);border-color:var(--stroke-strong,#ffffff3d)}.ct-btn:active{transform:translateY(1px)}.ct-btn:focus-visible{outline:2px solid var(--accent,#7c9cff);outline-offset:2px}.ct-btn--primary{background:var(--ink-bright,#fff);color:var(--bg,#0a0a0a);font-weight:var(--weight-medium,500);border-color:#0000}.ct-btn--primary:hover{background:var(--ink,#ffffffe0)}.ct-steps{color:var(--ink-dim,#ffffff9e);font-size:var(--text-sm,13px);margin:0;padding-left:1.2em;line-height:1.7}.ct-steps li+li{margin-top:var(--space-2,8px)}.ct-steps code{font-family:var(--font-mono);font-size:var(--text-xs,12px);border-radius:var(--radius-sm,6px);background:var(--surface-2,#ffffff0f);overflow-wrap:anywhere;padding:1px 5px}.ct-qr{border-radius:var(--radius-md,10px);background:#fff;width:132px;height:132px;padding:8px;display:block}.ct-note{margin:var(--space-sm,12px) 0 0;font-size:var(--text-xs,12px);color:var(--ink-dim,#ffffff80);line-height:1.6}.ct-lookup{gap:var(--space-2,8px);margin-top:var(--space-md,16px);flex-wrap:wrap;display:flex}.ct-input{border-radius:var(--radius-pill,999px);border:1px solid var(--stroke,#ffffff24);background:var(--surface-2,#ffffff0d);min-width:0;color:var(--ink-bright,#fff);font-family:var(--font-mono);font-size:var(--text-sm,13px);flex:240px;padding:10px 14px}.ct-input:focus-visible{outline:2px solid var(--accent,#7c9cff);outline-offset:1px}.ct-message{margin:var(--space-sm,12px) 0 0;font-size:var(--text-sm,13px);color:var(--danger,#f87171);min-height:1.2em}.ct-skeleton{border-radius:var(--radius-lg,16px);background:linear-gradient(90deg, var(--surface-1,#ffffff0a) 25%, var(--surface-2,#ffffff14) 37%, var(--surface-1,#ffffff0a) 63%);background-size:400% 100%;animation:1.4s infinite ct-shimmer}.ct-skeleton--stage{aspect-ratio:4/3}.ct-skeleton--copy{height:220px;margin-top:var(--space-lg,24px)}@keyframes ct-shimmer{0%{background-position:100%}to{background-position:0}}@media (prefers-reduced-motion:reduce){.ct-skeleton{animation:none}}
