.g3d{background:var(--paper);flex-direction:column;height:100%;min-height:0;display:flex}.g3d-head{align-items:center;gap:10px;padding:0 0 10px;display:flex}.g3d-where{flex:1;gap:2px;min-width:0;margin:0;display:grid}.g3d-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--cyan-ink);font-size:.74rem;font-weight:800}.g3d-title{font-size:1.02rem;font-weight:700;line-height:1.25}.g3d-collapse{font:inherit;border:2px solid var(--ink);border-radius:var(--radius);background:var(--paper);color:var(--ink);cursor:pointer;flex:none;padding:.35em .7em;font-size:.8rem;font-weight:700;display:none}.g3d-body{flex-direction:column;flex:1;min-height:0;display:flex}.g3d-stage-wrap{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex:1;min-height:0;position:relative;overflow:hidden}.g3d-stage{position:absolute;inset:0;overflow:hidden}.g3d-stage:focus{outline:none}.g3d-stage:focus-visible{outline:3px solid var(--cyan);outline-offset:-3px}.g3d-stage.is-active{box-shadow:inset 0 0 0 2px #00a8e859}.g3d-canvas{cursor:grab;display:block;width:100%!important;height:100%!important}.g3d-canvas:active{cursor:grabbing}.g3d-loading{color:var(--muted);background:var(--paper-2);place-items:center;font-size:.9rem;display:grid;position:absolute;inset:0}.g3d-labels{pointer-events:none;opacity:0;transition:opacity .35s;position:absolute;inset:0}.g3d-labels.is-on{opacity:1;transition-delay:.45s}.g3d-pile-label{white-space:nowrap;border:1px solid var(--cyan);color:var(--ink-2);background:#ffffffe6;border-radius:999px;margin-top:-4px;padding:.12em .45em;font-size:.74rem;line-height:1.2;position:absolute;top:0;left:0}.g3d-pile-label b{color:var(--cyan-deep)}.g3d-tip{pointer-events:none;background:var(--ink);color:#fff;border-radius:var(--radius);max-width:min(260px,80%);box-shadow:var(--shadow);z-index:2;padding:.35em .6em;font-size:.8rem;line-height:1.3;position:absolute;top:0;left:0}.g3d-tip[hidden]{display:none}.g3d-tip b{color:#7fd6f7}.g3d-tip-note{color:#cfcfcf;font-size:.74rem;display:block}.g3d-hint{color:#fff;pointer-events:none;white-space:nowrap;background:#111111d1;border-radius:999px;padding:.35em .8em;font-size:.8rem;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.g3d-hint[hidden]{display:none}.g3d-tools{flex-wrap:wrap;gap:6px;padding-top:10px;display:flex}.g3d-btn{border:2px solid var(--ink);border-radius:var(--radius);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;white-space:nowrap;align-items:center;gap:.4em;padding:.42em .7em;font-size:.82rem;font-weight:700;line-height:1.15;display:inline-flex}.g3d-btn svg{flex:none;width:1.05em;height:1.05em}.g3d-btn:hover:not([disabled]){background:var(--paper-2)}.g3d-btn[aria-pressed=true]{background:var(--cyan);border-color:var(--cyan);color:var(--ink)}.g3d-btn[disabled]{opacity:.45;cursor:default}.g3d-help{color:var(--muted);margin:8px 0 0;font-size:.8rem;line-height:1.35}.g3d-help-touch{display:none}@media (pointer:coarse){.g3d-help-mouse{display:none}.g3d-help-touch{display:block}}@media (width<=999.98px){.g3d-head{padding:8px 0}.g3d-title{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;overflow:hidden}.g3d-collapse{display:inline-block}.g3d.is-collapsed .g3d-body,.g3d-help-mouse{display:none}.g3d-body{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid}.g3d-stage-wrap{grid-area:1/1}.g3d-tools{z-index:1;pointer-events:none;grid-area:1/1;align-self:end;gap:4px;margin:0 6px 6px;padding:0;position:relative}.g3d-help{grid-row:2}.g3d-hint{bottom:64px}.g3d-tools .g3d-btn{pointer-events:auto;background:#ffffffeb;border-width:1.5px;padding:.38em .55em;font-size:.76rem}.g3d-tools .g3d-btn[aria-pressed=true]{background:var(--cyan)}.g3d-stage-wrap{border-left:0;border-right:0;border-radius:0}}@media (pointer:coarse){.g3d-btn{min-width:44px;min-height:44px}}@media (width<=999.98px) and (pointer:coarse){.g3d-tools{gap:8px}.g3d-tools .g3d-btn{min-width:44px;min-height:44px;padding:.5em .7em;font-size:.88rem}}@media (width<=699.98px){.g3d-tools{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.g3d-tools .g3d-btn{white-space:normal;text-align:center;overflow-wrap:anywhere;flex-direction:column;justify-content:center;gap:2px;min-width:0;padding:.35em .25em;font-size:.72rem;line-height:1.1}}@media (width>=700px){.g3d-short{display:none}}@media (width<=699.98px){.g3d-long{display:none}}@media print{.g3d{display:none!important}}
