.dome-root{--dome-radius:620px;--dome-circumference:calc(var(--dome-radius) * 3.14159);--dome-rotation:calc(360deg / var(--dome-segments));--dome-item-width:calc(var(--dome-circumference) / var(--dome-segments) * 2);--dome-item-height:calc(var(--dome-circumference) / var(--dome-segments) * 2);--dome-tile:var(--panel);--dome-tile-hover:var(--panel-raised);--dome-tile-ink:var(--text);--dome-tile-rule:var(--panel-border);--dome-tile-rule-hover:var(--text);position:absolute;inset:0;overflow:hidden}.dome-root *{box-sizing:border-box}.dome-main{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.dome-main:active{cursor:grabbing}.dome-stage{contain:layout paint size;width:100%;height:100%;perspective:calc(var(--dome-radius) * 2.05);perspective-origin:50% 51%;place-items:center;display:grid}.dome-sphere,.dome-item,.tool-tile{transform-style:preserve-3d}.dome-sphere{width:1px;height:1px;transform:translateZ(calc(var(--dome-radius) * -1)) rotateX(-1.5deg);will-change:transform;position:relative}.dome-item{width:var(--dome-item-width);height:var(--dome-item-height);backface-visibility:hidden;transform:rotateY(calc(var(--dome-rotation) * var(--dome-x))) rotateX(calc(var(--dome-rotation) * var(--dome-y))) translateZ(var(--dome-radius));margin:auto;position:absolute;inset:-999px}.dome-item:has(.tool-tile.is-selected){z-index:30}.tool-tile{border:1px solid var(--dome-tile-rule);background:var(--dome-tile);width:auto;height:auto;color:var(--dome-tile-ink);cursor:pointer;backface-visibility:hidden;border-radius:10px;flex-direction:column;justify-content:space-between;padding:12px;transition:background-color .18s,border-color .18s,box-shadow .18s,transform .22s;display:flex;position:absolute;inset:2px;overflow:hidden}.tool-tile:hover,.tool-tile:focus-visible{border-color:var(--dome-tile-rule-hover);background-color:var(--dome-tile-hover);outline:none;transform:translateZ(7px)}.tool-tile.is-selected{z-index:2;border-color:color-mix(in srgb, var(--tool-accent) 72%, var(--panel-border));background:var(--panel-raised);box-shadow:0 0 0 2px color-mix(in srgb, var(--tool-accent) 26%, transparent), 0 22px 34px var(--panel-shadow);transform:translateZ(72px)scale(1.08)}.dome-root--entering .tool-tile{opacity:0;animation:dome-tool-card-in .42s cubic-bezier(.16, .84, .28, 1.14) var(--dome-enter-delay) both}.tool-tile__top{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;gap:10px;font:700 .42rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;display:flex}.tool-tile>strong{letter-spacing:-.08em;font:800 clamp(2rem,3.5vw,3.8rem)/.8 Inter,ui-sans-serif,system-ui,sans-serif;display:block}.tool-tile__footer{gap:7px;min-width:0;display:grid}.tool-tile__name{border-top:1px solid var(--dome-tile-rule);color:var(--dome-tile-ink);letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;padding-top:7px;font:700 clamp(.62rem,1vw,.92rem)/1 Inter,ui-sans-serif,system-ui,sans-serif;overflow:hidden}.tool-tile__description{color:var(--text-muted);letter-spacing:-.01em;-webkit-line-clamp:3;-webkit-box-orient:vertical;font:500 clamp(.48rem,.7vw,.68rem)/1.25 Inter,ui-sans-serif,system-ui,sans-serif;display:-webkit-box;overflow:hidden}@keyframes dome-tool-card-in{0%{opacity:0;transform:translateY(18px)scale(.42)}74%{opacity:1;transform:translateY(-2px)scale(1.035)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:700px){.dome-root{--dome-item-width:calc(var(--dome-circumference) / var(--dome-segments) * 2.25);--dome-item-height:calc(var(--dome-circumference) / var(--dome-segments) * 2.25)}.tool-tile{border-radius:8px;padding:9px;inset:1px}.tool-tile__top span:last-child{display:none}}@media (prefers-reduced-motion:reduce){.tool-tile{transition:none;animation:none}.dome-root--entering .tool-tile{opacity:1;animation:none;transform:none}}.tool-tile.is-category-dimmed{filter:grayscale();opacity:.16!important}.tool-tile.is-category-dimmed:focus-visible{opacity:1!important}.tool-tile.is-category-match{border-color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--text) 24%, transparent)}.tool-tile.is-category-match>strong{color:var(--text)!important}.tool-tile.is-category-match.is-selected{border-color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb, var(--text) 20%, transparent), 0 22px 34px var(--panel-shadow)}
.toolkit-shell{background:var(--background);width:100%;max-width:none;min-height:100svh;overflow:hidden}.toolkit-page{isolation:isolate;background:var(--background);height:100svh;min-height:100svh;color:var(--text);position:relative;overflow:hidden}.toolkit-page:after{z-index:5;pointer-events:none;content:"";border:1px solid color-mix(in srgb, var(--text) 8%, transparent);position:absolute;inset:0}.toolkit-header,.toolkit-legend,.toolkit-footer{z-index:10;pointer-events:none;position:absolute;left:clamp(20px,3vw,44px);right:clamp(20px,3vw,44px)}.toolkit-header{justify-content:space-between;align-items:flex-start;gap:32px;display:flex;top:clamp(18px,2.4vw,34px)}.toolkit-header__left{grid-template-columns:auto auto;align-items:center;gap:0 18px;max-width:min(700px,70vw);display:grid}.toolkit-back,.toolkit-route,.toolkit-instructions,.toolkit-legend,.toolkit-footer{letter-spacing:.14em;text-transform:uppercase;font:700 .55rem/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.toolkit-back{color:inherit;pointer-events:auto}.toolkit-back:hover,.toolkit-back:focus-visible,.toolkit-footer a:hover,.toolkit-footer a:focus-visible{text-underline-offset:5px;text-decoration:underline}.toolkit-route{border-left:1px solid var(--panel-border);color:var(--text-muted);padding-left:18px}.toolkit-header h1{color:var(--text);letter-spacing:-.075em;grid-column:1/-1;margin:9px 0 0;font-family:Archivo,Inter,sans-serif;font-size:clamp(2.5rem,5vw,5.5rem);font-weight:300;line-height:.88}.toolkit-header__right{pointer-events:auto;align-items:flex-start;gap:22px;display:flex}.toolkit-instructions{color:var(--text-muted);text-align:right;margin:0}.toolkit-header__right .theme-switcher{margin-top:-4px}.toolkit-legend{color:var(--text-muted);flex-direction:column;align-items:flex-start;gap:10px;display:flex;top:50%;left:clamp(18px,2vw,32px);right:auto;transform:translateY(-50%)}.toolkit-legend span:before{content:"× ";color:var(--text)}.toolkit-footer{color:var(--text-muted);justify-content:space-between;display:flex;bottom:clamp(18px,2.5vw,34px)}.toolkit-footer a{color:var(--text);pointer-events:auto}.toolkit-nav-wrap{z-index:40}.toolkit-nav-wrap .floating-nav{background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}@media (max-width:700px){.toolkit-page{min-height:640px}.toolkit-header{gap:14px}.toolkit-header__left{grid-template-columns:1fr;gap:8px}.toolkit-route{border-left:0;padding-left:0}.toolkit-header h1{margin-top:2px;font-size:clamp(2.25rem,12vw,4rem)}.toolkit-header__right{display:block}.toolkit-instructions{display:none}.toolkit-header__right .theme-switcher{margin-top:0}.toolkit-legend{display:none}.toolkit-footer{bottom:82px}.toolkit-footer span{max-width:135px}.toolkit-footer a{align-self:flex-end}.toolkit-nav-wrap .floating-nav a{padding-left:9px;padding-right:9px;font-size:11px}}@media (prefers-reduced-motion:reduce){.toolkit-page,.toolkit-header,.toolkit-legend,.toolkit-footer{scroll-behavior:auto}}.toolkit-legend button{pointer-events:auto;cursor:pointer;background:color-mix(in srgb, var(--background) 88%, transparent);color:var(--text-muted);font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;border:1px solid #0000;border-radius:5px;padding:10px 12px}.toolkit-legend button:before{content:"×";margin-right:9px}.toolkit-legend button[aria-pressed=true]{color:var(--text);border-color:var(--panel-border);background:var(--panel-raised)}.toolkit-legend button[aria-pressed=true]:before{content:"●"}.toolkit-legend button:hover{color:var(--text)}.toolkit-legend button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.toolkit-legend{gap:3px}@media (max-width:700px){.toolkit-legend{flex-flow:wrap;gap:4px;display:flex;top:160px;left:18px;right:18px;transform:none}.toolkit-legend button{letter-spacing:.06em;min-height:40px;padding:8px;font-size:8px}}
