.sphere-root{--radius:520px;--viewer-pad:72px;--circ:calc(var(--radius) * 3.14);--rot-y:calc((360deg / var(--segments-x)) / 2);--rot-x:calc((360deg / var(--segments-y)) / 2);--item-width:calc(var(--circ) / var(--segments-x));--item-height:calc(var(--circ) / var(--segments-y));width:100%;height:100%;position:relative}.sphere-root *{box-sizing:border-box}.sphere,.item,.item__image{transform-style:preserve-3d}main.sphere-main{touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.stage{width:100%;height:100%;perspective:calc(var(--radius) * 2);perspective-origin:50%;contain:layout paint size;place-items:center;display:grid}.sphere{transform:translateZ(calc(var(--radius) * -1));will-change:transform}.overlay,.overlay--blur{z-index:3;pointer-events:none;margin:auto;position:absolute;inset:0}.overlay{background-image:radial-gradient(#ebebeb00 65%, var(--overlay-blur-color,#060010) 100%)}.overlay--blur{-webkit-mask-image:radial-gradient(#ebebeb00 70%, var(--overlay-blur-color,#060010) 90%);-webkit-mask-image:radial-gradient(#ebebeb00 70%, var(--overlay-blur-color,#060010) 90%);mask-image:radial-gradient(#ebebeb00 70%, var(--overlay-blur-color,#060010) 90%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.item{width:calc(var(--item-width) * var(--item-size-x));height:calc(var(--item-height) * var(--item-size-y));transform-origin:50%;backface-visibility:hidden;transform:rotateY(calc(var(--rot-y) * (var(--offset-x) + ((var(--item-size-x) - 1) / 2)) + var(--rot-y-delta,0deg))) rotateX(calc(var(--rot-x) * (var(--offset-y) - ((var(--item-size-y) - 1) / 2)) + var(--rot-x-delta,0deg))) translateZ(var(--radius));margin:auto;transition:transform .3s;position:absolute;inset:-999px}.item__image{border-radius:var(--tile-radius,12px);backface-visibility:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;pointer-events:auto;background:0 0;transition:transform .3s;display:block;position:absolute;inset:10px;overflow:hidden;transform:translateZ(0)}.item__image:focus{outline:none}.item__image img{object-fit:cover;pointer-events:none;backface-visibility:hidden;width:100%;height:100%;filter:var(--image-filter,none)}.viewer{z-index:20;pointer-events:none;padding:var(--viewer-pad);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.viewer .frame{aspect-ratio:1;border-radius:var(--enlarge-radius,32px);height:100%;display:flex}@media (max-aspect-ratio:1){.viewer .frame{width:100%;height:auto}}.viewer .scrim{z-index:10;pointer-events:none;opacity:0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#f5f4f0d9;transition:opacity .5s;position:absolute;inset:0}.sphere-root[data-enlarging=true] .viewer .scrim{opacity:1;pointer-events:all}.viewer .enlarge{z-index:30;border-radius:var(--enlarge-radius,32px);transform-origin:0 0;transition:transform .5s,opacity .5s;position:absolute;overflow:hidden;box-shadow:0 10px 30px #00000059}.viewer .enlarge img{object-fit:cover;filter:none;width:100%;height:100%}.sphere-root .enlarge-closing img{filter:none}.edge-fade{z-index:5;pointer-events:none;background:linear-gradient(to bottom, transparent, var(--overlay-blur-color,#060010));height:120px;position:absolute;left:0;right:0}.edge-fade--top{top:0;transform:rotate(180deg)}.edge-fade--bottom{bottom:0}body.dg-scroll-lock{overflow:hidden}
.cs-overlay{z-index:500;opacity:0;-webkit-overflow-scrolling:touch;background:#00000080;justify-content:center;align-items:center;padding:32px 24px;transition:opacity .25s;display:flex;position:fixed;inset:0;overflow-y:auto}.cs-overlay--visible{opacity:1}.cs-card{opacity:0;background:#fff;border-radius:12px;width:100%;max-width:900px;margin:auto;transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .25s;position:relative;transform:translateY(16px);box-shadow:0 1px #0000000a,0 24px 48px -16px #00000029}.cs-card--visible{opacity:1;transform:translateY(0)}.cs-close{color:#1a1a1a;cursor:pointer;z-index:20;background:#fff;border:1px solid #0000001f;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:20px;line-height:1;transition:background .15s,border-color .15s;display:flex;position:absolute;top:16px;right:16px}.cs-close:hover{background:#f5f5f5;border-color:#0003}.cs-header{border-bottom:1px solid #00000012;justify-content:space-between;align-items:flex-start;gap:20px;padding:32px 32px 24px;display:flex}.cs-header__main{flex:1;align-items:flex-start;gap:14px;min-width:0;display:flex}.cs-logo{color:#fff;width:44px;min-width:44px;height:44px;font-family:var(--font-geist), sans-serif;background:#1a1a1a;border-radius:8px;justify-content:center;align-items:center;font-size:20px;font-weight:500;display:flex}.cs-header__identity{flex-direction:column;gap:5px;min-width:0;display:flex}.cs-header__name-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cs-client-name{font-family:var(--font-geist), sans-serif;letter-spacing:-.02em;color:#1a1a1a;margin:0;font-size:22px;font-weight:500;line-height:1.1}.cs-pills{flex-wrap:wrap;gap:5px;display:flex}.cs-pill{font-family:var(--font-geist-mono), monospace;color:#888;letter-spacing:.02em;border:1px solid #0000001a;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:10px;font-weight:400;display:flex}.cs-pill--live{color:#1a1a1a}.cs-live-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2.4s infinite cs-live-pulse}@keyframes cs-live-pulse{0%,to{opacity:1}50%{opacity:.35}}.cs-description{font-family:var(--font-geist), sans-serif;color:#888;margin:0;font-size:14px;font-weight:400;line-height:1.5}.cs-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;padding-right:32px;display:flex}.cs-meta__item{font-family:var(--font-geist-mono), monospace;color:#aaa;text-align:right;font-size:11px;font-weight:400}.cs-screenshot-wrap{padding:24px 32px}.cs-screenshot-frame{border-radius:8px;position:relative;overflow:visible;box-shadow:0 0 0 1px #00000012,0 4px 20px -4px #00000014}.cs-screenshot-img{aspect-ratio:1400/766;object-fit:cover;z-index:1;border-radius:8px;width:100%;height:auto;display:block;position:relative}.cs-pin{z-index:10;opacity:0;animation:.18s forwards cs-pin-in;animation-delay:var(--pin-delay,.2s);position:absolute;transform:translate(-50%,-50%)}@keyframes cs-pin-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.cs-pin__dot{cursor:pointer;background:#1a1a1a;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;padding:0;transition:transform .12s;display:flex;position:relative;box-shadow:0 1px 4px #0003}.cs-pin__dot:hover,.cs-pin--active .cs-pin__dot{transform:scale(1.18)}.cs-pin__ripple{pointer-events:none;background:#1a1a1a33;border-radius:50%;animation:2s ease-out infinite cs-ripple;position:absolute;inset:-3px}@keyframes cs-ripple{0%{opacity:.4;transform:scale(.8)}to{opacity:0;transform:scale(2.2)}}.cs-pin__tooltip{pointer-events:none;opacity:0;white-space:normal;z-index:20;background:#fff;border-radius:6px;width:200px;padding:10px 12px;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateY(5px);box-shadow:0 0 0 1px #00000014,0 4px 16px #0000001a}.cs-pin__tooltip--left{left:auto;right:50%}.cs-pin__tooltip--below{top:calc(100% + 12px);bottom:auto;transform:translateY(-5px)}@media (hover:hover){.cs-pin:hover .cs-pin__tooltip{opacity:1;transform:translateY(0)}.cs-pin:hover .cs-pin__tooltip--below{transform:translateY(0)}}.cs-pin--active .cs-pin__tooltip{opacity:1;pointer-events:auto;transform:translateY(0)!important}.cs-pin__label{font-family:var(--font-geist-mono), monospace;color:#aaa;letter-spacing:.04em;margin-bottom:5px;font-size:10px;font-weight:400;display:block}.cs-pin__body{font-family:var(--font-geist), sans-serif;color:#1a1a1a;margin:0;font-size:12px;font-weight:400;line-height:1.55}.cs-pin__body em{font-style:italic;font-weight:400}.cs-breakdown{border-top:1px solid #0000001a;border-bottom:1px solid #0000001a;grid-template-columns:1fr 1fr 1fr;display:grid}.cs-breakdown__col{flex-direction:column;gap:8px;padding:22px 28px;display:flex}.cs-breakdown__col+.cs-breakdown__col{border-left:1px solid #0000001a}.cs-breakdown__label{font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;color:#aaa;align-items:center;gap:8px;font-size:10px;font-weight:400;display:flex}.cs-breakdown__label:before{content:"";background:currentColor;flex-shrink:0;width:14px;height:1px;display:block}.cs-breakdown__col p{font-family:var(--font-geist), sans-serif;color:#1a1a1a;margin:0;font-size:13px;font-weight:400;line-height:1.6}.cs-breakdown__col p .hl{background:#f0f0f0;border-radius:2px;padding:0 3px}.cs-stat{align-items:baseline;gap:5px;margin-bottom:2px;display:flex}.cs-stat__value{font-family:var(--font-geist), sans-serif;letter-spacing:-.03em;color:#1a1a1a;align-items:baseline;gap:2px;font-size:36px;font-weight:500;line-height:1;display:flex}.cs-stat__arrow{color:#22c55e;font-size:20px;font-style:normal;line-height:1}.cs-stat__arrow--down{color:#ef4444}.cs-stat__descriptor{font-family:var(--font-geist-mono), monospace;color:#aaa;letter-spacing:.04em;align-self:flex-end;padding-bottom:2px;font-size:11px;font-weight:400}.cs-quote-block{background:#fff;border-top:1px solid #0000000f;margin:0;padding:32px 32px 28px;position:relative}.cs-quote-glyph{font-family:var(--font-geist), sans-serif;color:#00000014;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;font-size:84px;line-height:1;position:absolute;top:18px;left:26px}.cs-quote-text{font-family:var(--font-geist), sans-serif;color:#1a1a1a;z-index:1;max-width:720px;margin:0 0 22px;font-size:20px;font-weight:400;line-height:1.55;position:relative}.cs-quote-attribution{z-index:1;align-items:center;gap:10px;display:flex;position:relative}.cs-avatar{color:#fff;width:28px;height:28px;font-family:var(--font-geist), sans-serif;letter-spacing:0;background:#1a1a1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:500;display:flex}.cs-attribution-details{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.cs-author-name{font-family:var(--font-geist), sans-serif;color:#1a1a1a;font-size:13px;font-weight:500}.cs-author-sep{font-family:var(--font-geist-mono), monospace;color:#ccc;font-size:10px}.cs-author-role{font-family:var(--font-geist-mono), monospace;color:#aaa;font-size:11px}.cs-footer{border-top:1px solid #0000001a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:18px 32px;display:flex}.cs-footer__deeper{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cs-go-deeper{font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;color:#ccc;font-size:10px;font-weight:400}.cs-chips{flex-wrap:wrap;gap:6px;display:flex}.cs-chip{font-family:var(--font-geist), sans-serif;color:#1a1a1a;background:#fff;border:1px solid #0000001a;border-radius:999px;align-items:center;gap:4px;padding:4px 12px;font-size:12px;font-weight:400;text-decoration:none;transition:border-color .14s,color .14s;display:inline-flex}.cs-chip:hover{color:#555;border-color:#00000040}.cs-chip__arrow{color:#888;font-size:11px;transition:transform .14s;display:inline-block}.cs-chip:hover .cs-chip__arrow{transform:translate(1px,-1px)}.cs-cta{font-family:var(--font-geist), sans-serif;color:#fff;white-space:nowrap;background:#1a1a1a;border-radius:999px;padding:7px 18px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s}.cs-cta:hover{background:#333}@media (max-width:760px){.cs-overlay{align-items:flex-start;padding:12px}.cs-card{border-radius:12px 12px 0 0;min-height:60vh;margin:auto 0 0}.cs-header{flex-direction:column;gap:14px;padding:24px 20px 18px}.cs-meta{flex-flow:wrap;align-items:flex-start;gap:0;padding-right:0}.cs-meta__item+.cs-meta__item:before{content:"·";opacity:.35;margin:0 6px}.cs-screenshot-wrap{padding:16px 20px}.cs-breakdown{grid-template-columns:1fr}.cs-breakdown__col+.cs-breakdown__col{border-top:1px solid #0000001a;border-left:none}.cs-breakdown__col{padding:18px 20px}.cs-quote-block{padding:26px 20px 24px}.cs-quote-text{font-size:17px}.cs-quote-glyph{font-size:60px;top:14px;left:14px}.cs-pin__tooltip{width:150px}.cs-footer{flex-direction:column;align-items:flex-start;gap:12px;padding:16px 20px}}
