.tool-public{overflow:hidden}.tool-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,7vw,100px);min-height:min(730px,90svh);padding-top:150px;padding-bottom:90px;display:grid}.tool-hero-copy{max-width:620px}.tool-eyebrow,.tool-panel-number{font:600 11px/1.4 var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--site-accent)}.tool-hero h1{font:400 clamp(3.2rem, 5vw, 5.8rem)/.98 var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin-top:24px}.tool-hero-sub{max-width:52ch;color:var(--muted-foreground);margin-top:30px;font-size:1.1rem;line-height:1.7}.tool-hero-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:36px;display:flex}.tool-primary,.tool-secondary{border-radius:var(--radius);justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s,opacity .2s;display:inline-flex}.tool-primary{background:var(--site-accent);color:var(--site-accent-ink)}.tool-primary:not(:disabled):hover,.tool-secondary:not(:disabled):hover{transform:translateY(-2px)}.tool-primary:disabled,.tool-secondary:disabled{cursor:not-allowed;opacity:.45}.tool-secondary{border:1px solid var(--line-strong);color:var(--foreground)}.tool-text-link{color:var(--foreground);text-underline-offset:5px;font-size:14px;text-decoration:underline}.tool-hero-fine,.tool-fine{color:var(--dim);margin-top:22px;font-size:12px;line-height:1.6}.tool-art{border:1px solid var(--line-strong);border-radius:calc(var(--radius) + 12px);background:radial-gradient(circle at 70% 15%, color-mix(in oklab, var(--site-accent) 20%, transparent), transparent 50%), var(--site-surface);min-height:410px;padding:22px;box-shadow:0 30px 85px #0005}.tool-art-top{color:var(--dim);font:600 10px var(--font-mono);letter-spacing:.14em;justify-content:space-between;gap:20px;display:flex}.tool-art>p{color:var(--dim);text-align:center;margin-top:22px;font-size:12px}.tool-gift-art,.tool-diagram-art{min-height:300px;color:var(--site-accent);justify-content:center;align-items:center;gap:20px;display:flex}.tool-photo-tile,.tool-mesh-tile{border:1px solid var(--line-strong);color:#284637;background:#e9e5d7;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:18px;width:43%;min-height:240px;display:flex;transform:rotate(-5deg);box-shadow:0 15px 25px #0003}.tool-mesh-tile{color:#e5bb69;background:#243e33;transform:rotate(4deg)}.tool-mesh-tile svg{width:66%;max-height:165px}.tool-photo-tile span,.tool-mesh-tile span{font:600 11px var(--font-mono);text-transform:uppercase;letter-spacing:.1em}.tool-gift-box{background:#dba679;border:7px solid #9f684e;width:85px;height:82px;position:relative;box-shadow:inset 25px 0 #e9b48a}.tool-gift-box:before{content:"";background:#bb805e;height:17px;position:absolute;top:-18px;left:-14px;right:-14px}.tool-gift-box:after{content:"";background:#f4d587;width:11px;position:absolute;top:-18px;bottom:-7px;left:32px}.tool-pixel-card,.tool-node-card{border:2px solid var(--site-accent);text-align:center;font:600 21px var(--font-display);color:#1b414b;background:#e8e4d8;border-radius:14px;padding:35px 22px}.tool-pixel-card span{color:#66818a;font:12px var(--font-mono);margin-top:10px;display:block}.tool-node-card{font:600 16px var(--font-sans);background:#f7f2e7}.tool-node-card span{color:#be9141;margin:0 5px}.tool-example-hero{border:1px solid var(--line-strong);border-radius:calc(var(--radius) + 12px);background:radial-gradient(circle at 70% 12%, color-mix(in oklab, var(--site-accent) 15%, transparent), transparent 55%), var(--site-surface);min-width:0;padding:19px;box-shadow:0 30px 85px #0005}.tool-example-hero-head{color:var(--site-accent);font:600 10px/1.4 var(--font-mono);letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;gap:12px;padding:2px 2px 16px;display:flex}.tool-example-hero-head span:last-child{color:var(--dim);text-align:right}.tool-example-pair{grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);align-items:center;gap:12px;display:grid}.tool-example-arrow{color:var(--site-accent)}.tool-example-image{min-width:0;margin:0}.tool-example-frame{border:1px solid var(--line-strong);border-radius:var(--radius);background:#f5f1e7;overflow:hidden}.tool-example-frame img{object-fit:contain;width:100%;height:100%;display:block}.tool-example-pair .tool-example-frame{aspect-ratio:4/3}.tool-example-image figcaption{flex-direction:column;gap:5px;padding:12px 3px 0;display:flex}.tool-example-image figcaption strong{color:var(--foreground);font:600 12px/1.4 var(--font-mono)}.tool-example-image figcaption span{color:var(--muted-foreground);font-size:12px;line-height:1.5}.tool-example-image figcaption a{width:fit-content;color:var(--site-accent);text-underline-offset:3px;font-size:12px;text-decoration:underline}.tool-showcase{padding-top:clamp(70px,9vw,132px);padding-bottom:clamp(70px,9vw,132px)}.tool-showcase-heading{justify-content:space-between;align-items:end;gap:32px;margin-bottom:30px;display:flex}.tool-showcase-heading>div{max-width:740px}.tool-showcase-heading h2{font:400 clamp(2.4rem, 4vw, 4rem)/1.08 var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin-top:12px}.tool-showcase-heading p:not(.tool-eyebrow){max-width:65ch;color:var(--muted-foreground);margin-top:16px;line-height:1.65}.tool-showcase-film{border:1px solid var(--line-strong);border-radius:calc(var(--radius) + 8px);background:#071411;overflow:hidden}.tool-showcase-film video{aspect-ratio:16/9;object-fit:contain;background:#071411;width:100%;height:auto;display:block}.tool-showcase-film-caption{flex-wrap:wrap;align-items:baseline;gap:8px 20px;padding:18px 22px;display:flex}.tool-showcase-film-caption strong{font-size:14px}.tool-showcase-film-caption span{color:var(--muted-foreground);font-size:13px}.tool-showcase-gallery{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:22px;margin-top:22px;display:grid}.tool-showcase-main .tool-example-frame{aspect-ratio:7/5}.tool-showcase-details{gap:22px;display:grid}.tool-showcase-details .tool-example-frame{aspect-ratio:14/9}.tool-showcase-gallery .tool-example-frame img{object-fit:contain}.tool-proof{border-block:1px solid var(--line);background:color-mix(in oklab, var(--site-surface) 60%, var(--site-bg))}.tool-proof .shell{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 36px;padding-block:25px;display:flex}.tool-proof span{color:var(--site-accent);font:600 11px var(--font-mono);letter-spacing:.13em}.tool-proof strong{font-size:14px;font-weight:500}.tool-workspace-shell{max-width:1420px;margin:auto;padding:24px}.tool-workbench{margin-top:20px}.tool-workbench-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px;display:flex}.tool-workbench-head h1{font:400 clamp(2.1rem, 3vw, 3.3rem)/1.1 var(--font-display);margin-top:8px}.tool-workbench-head p:not(.tool-eyebrow){color:var(--muted-foreground);margin-top:12px;font-size:14px}.tool-workbench-grid{grid-template-columns:minmax(0,390px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.tool-input-panel,.tool-result-panel,.tool-history{border:1px solid var(--line-strong);background:var(--site-surface);border-radius:var(--radius);padding:24px}.tool-upload{border:1px dashed var(--site-accent);border-radius:var(--radius);background:color-mix(in oklab, var(--site-accent) 5%, var(--site-surface));text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:190px;margin-top:22px;padding:20px;display:flex}.tool-upload strong{overflow-wrap:anywhere;max-width:100%;font-size:15px}.tool-upload span{color:var(--muted-foreground);font-size:12px}.tool-input-panel input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.tool-upload-preview{object-fit:contain;border-radius:var(--radius);background:#091512;width:100%;max-height:240px;margin-top:16px}.tool-rights{cursor:pointer;align-items:start;gap:10px;margin-block:20px;font-size:13px;line-height:1.5;display:flex}.tool-rights input{accent-color:var(--site-accent);margin-top:3px}.tool-quote{border-top:1px solid var(--line);justify-content:space-between;gap:10px;padding:18px 0;font-size:13px;display:flex}.tool-quote strong{color:var(--site-accent)}.tool-input-panel>.tool-primary,.tool-input-panel>.tool-secondary{width:100%;margin-top:16px}.tool-alert{border-left:2px solid var(--site-accent);color:var(--foreground);margin-top:14px;padding:4px 0 4px 12px;font-size:13px;line-height:1.5}.tool-alert button,.tool-pending-note button,.tool-history-head button{text-underline-offset:3px;text-decoration:underline}.tool-pending-note{border:1px solid var(--line-strong);border-radius:var(--radius);margin-top:18px;padding:15px;font-size:13px}.tool-pending-note p{color:var(--muted-foreground);margin-block:6px 12px;line-height:1.5}.tool-pending-note button{align-items:center;gap:7px;display:inline-flex}.tool-pending-note button+button{margin-left:14px}.tool-pending-note button:disabled{cursor:not-allowed;opacity:.5}.tool-result-panel{min-height:525px}.tool-empty-result,.tool-result-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:420px;display:flex}.tool-empty-result>div{border:1px solid var(--line-strong);width:96px;height:96px;color:var(--site-accent);font:600 24px var(--font-mono);border-radius:20px;place-items:center;display:grid}.tool-empty-result h2,.tool-result-state strong{font:400 28px var(--font-display)}.tool-empty-result p,.tool-result-state p{max-width:42ch;color:var(--muted-foreground);font-size:14px;line-height:1.6}.tool-result-ready{margin-top:20px}.tool-downloads{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.tool-diagram-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:15px;display:flex}.tool-diagram-heading h2{font:400 25px var(--font-display)}.tool-diagram-heading p{color:var(--dim);font-size:12px}.tool-diagram-scroll{border:1px solid var(--line);border-radius:var(--radius);color:#476974;background:#f6f2e8;width:100%;max-height:520px;overflow:auto}.tool-diagram-scroll svg{width:100%;min-width:320px;height:auto;display:block}.tool-diagram-edges path{fill:none;stroke:currentColor;stroke-width:2px}.tool-diagram-nodes rect,.tool-diagram-nodes polygon,.tool-diagram-nodes ellipse{fill:#fffdfa;stroke:#315466;stroke-width:2px}.tool-diagram-label{color:#173647;text-align:center;overflow-wrap:anywhere;justify-content:center;align-items:center;height:100%;font:600 13px/1.25 Arial,sans-serif;display:flex;overflow:hidden}.tool-diagram-edge-label{box-sizing:border-box;color:#173647;text-overflow:ellipsis;white-space:nowrap;background:#fffdfa;border:1px solid #b5c5c5;border-radius:5px;justify-content:center;align-items:center;width:max-content;max-width:100%;height:24px;margin:3px auto;padding:2px 8px;font:600 11px/1.2 Arial,sans-serif;display:flex;overflow:hidden}.tool-diagram-editor{border-top:1px solid var(--line-strong);margin-top:24px;padding-top:22px}.tool-diagram-editor-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.tool-diagram-editor-head h3{font:400 25px var(--font-display)}.tool-diagram-editor-head span{color:var(--site-accent);font:600 11px var(--font-mono)}.tool-diagram-editor h4{border-bottom:1px solid var(--line);font:600 11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-top:24px;padding-bottom:8px}.tool-edit-field{min-width:0;color:var(--muted-foreground);flex-direction:column;gap:5px;font-size:11px;display:flex}.tool-edit-field input{border:1px solid var(--line-strong);background:var(--site-bg);width:100%;min-height:38px;color:var(--foreground);border-radius:7px;padding:7px 10px;font-size:13px}.tool-diagram-editor>.tool-edit-field{margin-top:18px}.tool-edit-list{flex-direction:column;max-height:350px;display:flex;overflow:auto}.tool-edit-row{border-bottom:1px solid var(--line);grid-template-columns:80px minmax(0,1fr) 75px 75px;align-items:end;gap:10px;padding:10px 0;display:grid}.tool-edit-id{text-overflow:ellipsis;color:var(--dim);font:11px var(--font-mono);align-self:center;overflow:hidden}.tool-edit-relation{color:var(--muted-foreground);align-self:center;font-size:12px}.tool-edit-row:has(.tool-edit-relation){grid-template-columns:80px minmax(0,1fr) minmax(160px,1fr)}.tool-stl-preview canvas{border-radius:var(--radius);touch-action:none;cursor:grab;width:100%;height:430px;display:block}.tool-stl-preview p{color:var(--dim);margin-top:10px;font-size:12px}.tool-history{margin-top:24px}.tool-history-head{justify-content:space-between;align-items:end;gap:20px;display:flex}.tool-history h2{font:400 24px var(--font-display);margin-top:8px}.tool-history ul{border-top:1px solid var(--line);margin-top:16px}.tool-history li{border-bottom:1px solid var(--line)}.tool-history li button{text-align:left;grid-template-columns:1fr auto 90px 16px;align-items:center;gap:20px;width:100%;padding:15px 0;font-size:13px;display:grid}.tool-history li button:hover{color:var(--site-accent)}.tool-history li span{color:var(--muted-foreground)}@media (width<=900px){.tool-hero,.tool-workbench-grid{grid-template-columns:1fr}.tool-hero{padding-top:115px}.tool-art{min-height:350px}.tool-workspace-shell{padding:20px}}@media (width<=520px){.tool-hero{padding-bottom:55px}.tool-art{min-height:270px}.tool-gift-art,.tool-diagram-art{gap:7px;min-height:210px}.tool-photo-tile,.tool-mesh-tile{min-height:160px}.tool-gift-box{transform:scale(.7)}.tool-node-card,.tool-pixel-card{padding:20px 8px;font-size:13px}.tool-history li button{grid-template-columns:1fr auto;gap:7px}.tool-history li button span:nth-of-type(2),.tool-history li button svg{display:none}:is(.tool-edit-row,.tool-edit-row:has(.tool-edit-relation)){grid-template-columns:1fr 1fr}.tool-edit-row .tool-edit-field:not(.tool-edit-coordinate){grid-column:span 2}}@media (width<=900px){.tool-showcase-gallery{grid-template-columns:1fr}.tool-showcase-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.tool-showcase-heading{flex-direction:column;align-items:start}.tool-showcase-details{grid-template-columns:1fr}.tool-example-hero{padding:12px}.tool-example-pair{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr);gap:6px}.tool-example-arrow{width:14px}.tool-example-pair .tool-example-image figcaption span{display:none}.tool-example-pair .tool-example-image figcaption strong{font-size:10px}.tool-showcase-film-caption{padding:14px}}@media (prefers-reduced-motion:reduce){.tool-primary,.tool-secondary{transition:none}.tool-primary:not(:disabled):hover,.tool-secondary:not(:disabled):hover{transform:none}}
