.cube-view{width:100%;height:100%}.cube-view canvas{width:100%;height:100%;display:block}
.stage-page{background:var(--paper);width:100%;height:100dvh;color:var(--ink);position:relative;overflow:hidden}.stage-header{z-index:2;inset:var(--space-8) var(--gutter) auto;justify-content:space-between;align-items:center;display:flex;position:absolute}.stage-title{min-height:var(--space-12);font-family:var(--font-serif), Georgia, serif;font-size:var(--type-title);letter-spacing:-.02em;align-items:center;font-weight:400;line-height:1.15;display:inline-flex}.stage-maker{--leomark-dot:var(--mark);color:var(--ink)}.stage-maker circle{fill:var(--leomark-dot)}.stage-object{aspect-ratio:1;width:min(124vw,84dvh);position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.stage-unavailable{padding:var(--space-8);text-align:center;font-size:var(--type-body);color:var(--text-body);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.stage-rail{inset:auto var(--gutter) var(--space-6);min-height:var(--space-20);align-items:center;gap:var(--space-4);border-top:1px solid var(--line);grid-template-columns:1fr auto 1fr;display:grid;position:absolute}.stage-rail-start,.stage-rail-end{align-items:center;min-width:0;display:flex}.stage-rail-end{justify-content:flex-end}.stage-status{font-size:var(--type-label);color:var(--muted)}.stage-controls{justify-content:center;align-items:center;gap:var(--space-4);display:flex}.stage-action{min-width:var(--space-12);min-height:var(--space-12);justify-content:center;align-items:center;gap:var(--space-3);padding-inline:var(--space-4);font-size:var(--type-label);white-space:nowrap;border-radius:var(--radius-still);color:var(--text-body);background:0 0;border:0;font-weight:400;display:inline-flex}.stage-action:hover{color:var(--ink)}.stage-action:disabled{color:var(--muted)}.stage-primary,.stage-primary:hover,.stage-primary:active{background:var(--primary);color:var(--primary-foreground)}.stage-primary{padding-inline:var(--space-6)}.stage-primary:disabled{background:var(--panel);color:var(--text-body)}.stage-fact{font-family:var(--font-mono), monospace;font-size:var(--text-s6);font-weight:400}.stage-progress{white-space:nowrap}.stage-playback-status{margin-left:var(--space-4);color:var(--muted)}.stage-page[data-mode=thinking] .stage-status,.stage-page[data-mode=error] .stage-status{max-width:24ch}@media (max-width:767px){.stage-header{top:var(--space-6)}.stage-rail{bottom:var(--space-4);gap:var(--space-2);grid-template-columns:auto 1fr auto}.stage-controls{gap:var(--space-1)}.stage-action{padding-inline:var(--space-3);gap:var(--space-2)}.stage-primary{padding-inline:var(--space-4)}.stage-scramble span,.stage-controls .stage-step svg{display:none}.stage-playback-status{margin-left:0;display:block}.stage-page[data-mode=playing] .stage-rail,.stage-page[data-mode=paused] .stage-rail{grid-template-columns:minmax(0,1fr) auto auto}}@media (max-height:500px){.stage-header{top:var(--space-2)}.stage-rail{bottom:var(--space-2);min-height:var(--space-16)}.stage-object{width:min(100vw,76dvh);top:43%}}@media (max-width:360px){.stage-progress{white-space:normal}}.stage-step .stage-object{width:min(116vw, 68dvh, calc(100dvh - var(--space-20) * 4));top:min(38%, calc((100dvh - var(--space-20) * 3) / 2))}.stage-caption{bottom:clamp(calc(var(--space-20) + var(--space-8)), 20dvh, calc(var(--space-20) + var(--space-12)));left:var(--gutter);right:var(--gutter);height:var(--space-16);text-align:center;position:absolute}.stage-caption-goal,.stage-milestone{height:calc(var(--space-20) + var(--space-16))}.stage-caption h2{grid-template-rows:var(--space-12);place-items:center;font-weight:400;display:grid}.stage-symbol{justify-content:center;align-items:center;display:flex}.stage-notation{font-family:var(--font-mono), monospace;font-size:var(--type-title);color:var(--ink);white-space:nowrap;flex-wrap:nowrap;line-height:1.15;display:inline-flex}.stage-notation-prime{margin-left:calc(-1 * var(--space-2))}.stage-caption .stage-goal{max-width:48ch;margin:var(--space-1) auto 0;font-size:var(--type-label);color:var(--muted);line-height:1.5}.stage-outline{width:min(100%, calc(var(--space-20) * 4));position:relative}.stage-outline summary{align-items:center;column-gap:var(--space-3);row-gap:var(--space-2);min-height:var(--space-16);font-size:var(--type-label);cursor:pointer;grid-template-columns:auto 1fr auto;list-style:none;display:grid}.stage-outline summary::-webkit-details-marker{display:none}.stage-outline summary>svg{color:var(--muted)}.stage-sections{gap:var(--space-1);grid-column:1/-1;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.stage-segment{appearance:none;width:100%;height:var(--space-2);border:1px solid var(--muted);background:var(--paper);border-radius:0}.stage-segment::-webkit-progress-bar{background:var(--paper)}.stage-segment::-webkit-progress-value{background:var(--ink)}.stage-segment::-moz-progress-bar{background:var(--ink)}.stage-segment-current{border-color:var(--mark-strong)}.stage-segment-current::-webkit-progress-value{background:var(--mark-strong)}.stage-segment-current::-moz-progress-bar{background:var(--mark-strong)}.stage-section-count{white-space:nowrap;color:var(--text-body)}.stage-section-count:before{content:"·";margin-right:var(--space-3)}.stage-stage-name{white-space:nowrap}.stage-milestone h2{min-height:calc(var(--space-12) * 2);font-size:var(--type-heading);justify-content:center;align-items:center;line-height:1.5;display:flex}.stage-stage-list{z-index:3;bottom:calc(100% + var(--space-6));min-width:calc(var(--space-20) * 3);padding:var(--space-4) var(--space-6);border:1px solid var(--line);border-radius:var(--radius-still);background:var(--paper);position:absolute;left:0}.stage-stage-list ol{padding:0;list-style:none}.stage-stage-list li{align-items:center;gap:var(--space-4);min-height:var(--space-8);font-size:var(--type-label);color:var(--muted);display:flex}.stage-stage-list li[aria-current]{color:var(--ink)}.stage-switch{border-top:1px solid var(--line);margin-top:var(--space-3);padding-top:var(--space-2);display:flex}@media (max-width:767px){.stage-step .stage-rail{grid-template-columns:minmax(0,1fr) auto}.stage-step .stage-rail-end,.stage-back span{display:none}.stage-step .stage-controls{gap:var(--space-2)}.stage-back{padding-inline:0}.stage-outline summary{gap:var(--space-1);grid-template-columns:1fr auto;line-height:1.5}.stage-stage-name,.stage-section-count{grid-column:1}.stage-section-count:before{content:none}.stage-outline summary>svg{grid-area:2/2/4}}@media (max-width:360px){.stage-step .stage-controls{gap:var(--space-1)}.stage-step .stage-primary{padding-inline:var(--space-3)}}@media (max-height:450px) and (min-width:500px){.stage-step .stage-object{width:72dvh;top:43%;left:32%}.stage-step .stage-caption{left:54%;right:var(--gutter);top:43%;bottom:auto;transform:translateY(-50%)}}@media (max-height:500px){.stage-stage-list{bottom:calc(100% + var(--space-4));max-height:calc(100dvh - var(--space-20) - var(--space-12));padding:var(--space-2) var(--space-4);overflow-y:auto}.stage-stage-list li{min-height:var(--space-6)}}.lit-static-direction{min-width:var(--space-6);margin-right:var(--space-3);vertical-align:middle;color:var(--ink);justify-content:center;align-items:center;display:none}.lit-static-direction svg{width:var(--space-6);height:var(--space-6);fill:none;stroke:var(--ink);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.lit-counterclockwise{transform:scaleX(-1)}@media (prefers-reduced-motion:reduce){.lit-static-direction{display:inline-flex}}.notation-card{width:calc(var(--space-20) * 6);max-width:calc(100vw - var(--space-4));max-height:none;padding:var(--space-4) var(--space-8) var(--space-6);border:1px solid var(--line);border-radius:var(--radius-still);background:var(--paper);color:var(--ink);margin:auto;position:fixed;inset:0;overflow:visible}.notation-card::backdrop{background:color-mix(in srgb, var(--paper) 92%, transparent)}.notation-card-head{justify-content:space-between;align-items:center;display:flex}.notation-card-head h2{font-size:var(--type-heading);box-shadow:none;outline:none;font-weight:400}.notation-close{width:var(--space-12);height:var(--space-12);margin-right:calc(-1 * var(--space-3));color:var(--muted);border-radius:var(--radius-still);background:var(--paper);border:0;place-items:center;display:grid}.notation-face-key{margin-block:var(--space-2)}.notation-face-drawing{height:calc(var(--space-20) * 2 + var(--space-8));width:calc((var(--space-20) * 2 + var(--space-8)) * 320 / 204);margin-inline:auto;position:relative}.notation-face-drawing>svg{width:100%;height:100%;display:block}.notation-plastic{fill:var(--cube-body)!important}.notation-top{fill:var(--sticker-white)}.notation-front{fill:var(--sticker-green)}.notation-right{fill:var(--sticker-red)}.notation-left{fill:var(--sticker-orange)}.notation-leaders{stroke:var(--muted);stroke-width:1px;fill:none}.notation-face-label{width:var(--space-6);height:var(--space-6);border:1px solid var(--ink);border-radius:var(--radius-still);background:var(--paper);font-family:var(--font-mono), monospace;font-size:var(--type-body);place-items:center;line-height:1;display:grid;position:absolute;transform:translate(-50%,-50%)}.notation-face-u{top:23.0392%;left:50%}.notation-face-f{top:51.7157%;left:39.4453%}.notation-face-r{top:51.7157%;left:60.5547%}.notation-face-l{top:23.0392%;left:16.875%}.notation-face-b{top:23.0392%;left:83.125%}.notation-face-d{top:94.1177%;left:50%}.notation-face-names{gap:var(--space-1) var(--space-4);width:max-content;margin:var(--space-1) auto 0;font-size:var(--text-s6);line-height:var(--space-4);color:var(--text-body);grid-template-columns:repeat(3,1fr);display:grid}.notation-face-names>span{align-items:baseline;gap:var(--space-2);display:flex}.notation-face-names b{font-family:var(--font-mono), monospace;color:var(--ink);font-weight:400}.notation-viewpoint{margin-top:var(--space-4);font-size:var(--type-label);text-align:center;white-space:pre-line;color:var(--text-body);line-height:1.4}.notation-side-pair{margin-block:var(--space-2);grid-template-columns:1fr 1fr;display:grid;position:relative}.notation-side-pair:after{content:"";left:50%;border-left:1px solid var(--line);position:absolute;inset-block:0}.notation-side-example{justify-content:center;align-items:center;gap:var(--space-2);display:flex}.notation-side-example svg{width:calc(var(--space-20) + var(--space-8));height:var(--space-16)}.notation-card .stage-notation{font-size:var(--type-heading)}.notation-card .stage-notation-prime{margin-left:calc(-1 * var(--space-1))}.notation-front-motion{fill:none;stroke:var(--paper);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.notation-rules{border-top:1px solid var(--line)}.notation-rules>div{grid-template-columns:var(--space-12) var(--space-12) 1fr;gap:var(--space-3);min-height:var(--space-12);border-bottom:1px solid var(--line);align-items:center;display:grid}.notation-rules p{font-size:var(--type-label);color:var(--text-body);white-space:nowrap}.notation-angle{width:var(--space-12);height:calc(var(--space-8) + var(--space-2));overflow:visible}.notation-angle-lines{fill:none;stroke:var(--ink);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.notation-angle-radius{stroke:var(--muted);stroke-width:1px}.notation-angle text{font-family:var(--font-mono), monospace;font-size:var(--text-s6);fill:var(--text-body);text-anchor:middle}.notation-flip{gap:var(--space-3);min-height:var(--space-16);font-size:var(--type-label);color:var(--text-body);align-items:center;display:flex}.notation-flip .stage-notation{font-size:var(--type-label)}.notation-done{width:100%}@media (max-width:767px){.notation-card{--notation-growth:clamp(0px, calc((100dvh - var(--space-20) * 7 - var(--space-2)) / 19), var(--space-2));padding:calc(var(--space-2) + var(--notation-growth) / 2) var(--space-4) calc(var(--space-3) + var(--notation-growth) / 2)}.notation-face-key{margin-block:var(--notation-growth)}.notation-face-drawing{height:calc(var(--space-20) + var(--space-12) + var(--notation-growth) * 4);width:calc((var(--space-20) + var(--space-12) + var(--notation-growth) * 4) * 320 / 204)}.notation-viewpoint{margin-top:calc(var(--space-2) + var(--notation-growth))}.notation-side-pair{margin-block:calc(var(--space-1) + var(--notation-growth) / 2)}.notation-side-example{gap:0}.notation-side-example svg{height:calc(var(--space-12) + var(--notation-growth) * 2);width:calc(var(--space-20) + var(--space-4))}.notation-rules>div{grid-template-columns:var(--space-8) var(--space-12) 1fr;gap:var(--space-2);min-height:calc(var(--space-8) + var(--space-2) + var(--notation-growth))}.notation-angle{height:calc(var(--space-8) + var(--notation-growth))}.notation-flip{min-height:calc(var(--space-12) + var(--notation-growth) * 2)}.stage-step .stage-rail-end{right:0;bottom:calc(100% + var(--space-3));display:flex;position:absolute}.stage-step .stage-notation-button{padding-inline:var(--space-2)}}@media (max-height:650px) and (min-width:768px){.notation-card{padding:var(--space-2) var(--space-4) var(--space-3)}.notation-face-key{margin-block:0}.notation-face-drawing{height:calc(var(--space-20) + var(--space-12));width:calc((var(--space-20) + var(--space-12)) * 320 / 204)}.notation-viewpoint{margin-top:var(--space-2)}.notation-side-pair{margin-block:var(--space-1)}.notation-side-example svg{height:var(--space-12);width:calc(var(--space-20) + var(--space-4))}.notation-rules>div{min-height:calc(var(--space-8) + var(--space-2))}.notation-angle{height:var(--space-8)}.notation-flip{min-height:var(--space-12)}}
