:root{--accent:#1035a9;--accent-2:#2e6fdb;--accent-soft:#1035a91a;--accent-line:#1035a980;--accent-glow:#1035a952;--select:#2f6bff;--chair:#a6e3d6;--select-pale:#a3bdff;--turned:#1f5fe0;--select-blend:multiply;--text:#1c1f26;--muted:#687082;--faint:#9aa1b0;--canvas:#f7f8fb;--dots:#2832501c;--glass:#fff;--glass-strong:#fff;--edge:#14192d17;--hover:#14192d0f;--shadow:0 10px 34px #191e3c21, 0 2px 6px #191e3c0f;--danger:#e0115f;--radius:10px;--ui-font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--text:#e7e9f0;--muted:#a0a6b6;--faint:#6e7486;--example:.27;--canvas:#13151b;--dots:#dce1ff12;--glass:#1d2029;--glass-strong:#272b36;--edge:#ffffff14;--hover:#ffffff12;--shadow:0 12px 40px #00000073, 0 2px 6px #0000004d;--accent-soft:#7b96f22e;--accent:#7b96f2;--accent-line:#7b96f28c;--select:#4d84ff;--chair:#1f6157;--select-pale:#26427f;--turned:#6f9dff;--select-blend:screen;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--text:#e7e9f0;--muted:#a0a6b6;--faint:#6e7486;--example:.27;--canvas:#13151b;--dots:#dce1ff12;--glass:#1d2029;--glass-strong:#272b36;--edge:#ffffff14;--hover:#ffffff12;--shadow:0 12px 40px #00000073, 0 2px 6px #0000004d;--accent-soft:#7b96f22e;--accent:#7b96f2;--accent-line:#7b96f28c;--select:#4d84ff;--chair:#1f6157;--select-pale:#26427f;--turned:#6f9dff;--select-blend:screen;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--canvas);color:var(--text);font:13px/1.35 var(--ui-font);-webkit-font-smoothing:antialiased;overflow:hidden}button{font:inherit;color:inherit}.canvas{background-color:var(--canvas);background-image:radial-gradient(var(--dots) 1.1px, transparent 1.3px);touch-action:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}.canvas .paper{position:absolute;inset:0}.canvas svg{width:100%;height:100%;display:block}.canvas .selection{mix-blend-mode:var(--select-blend)}.canvas .halo{fill:var(--select);stroke:var(--select)}.canvas .halos{opacity:.32}.canvas .halo.hover{fill:var(--select-pale);stroke:var(--select-pale)}.canvas .chair-under{stroke:var(--chair)}.canvas .anchor{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke}.canvas .rubber{fill:var(--accent-soft);stroke:var(--accent-line);stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.canvas .rubber.erase{fill:#e0115f14;stroke:#e0115f99}.canvas .ghost{fill:none;stroke:var(--accent);opacity:.55;vector-effect:non-scaling-stroke;stroke-width:1.6px}.canvas .ghost line{vector-effect:non-scaling-stroke}.canvas .curve-preview{stroke:var(--accent);fill:var(--accent);opacity:.75}.canvas .curve-preview path{fill:none}.canvas .pull{fill:none;stroke:var(--accent);stroke-width:1.6px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.canvas .new-bonds line{stroke:var(--accent);stroke-width:1.2px;stroke-dasharray:3 4;vector-effect:non-scaling-stroke;opacity:.2}.canvas .new-bonds circle{fill:var(--accent);opacity:.3}.canvas .new-bonds .strong line,.canvas .new-bonds .strong circle{opacity:.6}.canvas .new-bonds .active line,.canvas .new-bonds .active circle{opacity:1}.canvas .sel-box{fill:none;stroke:var(--accent-line);stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.canvas .handle{fill:var(--glass-strong);stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke;cursor:grab}.canvas .badge rect{fill:var(--accent)}.canvas .slot{fill:none;stroke:var(--accent-line);stroke-width:1px;stroke-dasharray:3 3;opacity:.6;vector-effect:non-scaling-stroke}.canvas .slot-bar{fill:color-mix(in srgb, var(--accent) 55%, white)}.canvas .slot-plus{stroke:#fff;stroke-width:2.5px;stroke-linecap:round;fill:none;vector-effect:non-scaling-stroke}.canvas .link-line{stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:2 4;stroke-linecap:round;opacity:.75;vector-effect:non-scaling-stroke}.canvas .error-ring{fill:none;stroke:var(--danger);stroke-width:2px;stroke-dasharray:4 2.5;vector-effect:non-scaling-stroke}.canvas .ghost-copy{opacity:.45;pointer-events:none}.canvas .ghost-copy.tinted{opacity:1}.canvas .halos.washed{opacity:.72}.canvas .halo.wash{fill:var(--canvas);stroke:var(--canvas)}.canvas .halos.axle{opacity:.35}.canvas .halo.axle{fill:var(--turned);stroke:var(--turned)}.canvas .badge text{fill:#fff;font:600 11px var(--ui-font)}.glass{-webkit-user-select:none;user-select:none;background:var(--glass);border:1px solid var(--edge);border-radius:var(--radius);box-shadow:var(--shadow);z-index:10;position:fixed}.topbar{flex-wrap:nowrap;align-items:center;gap:2px;max-width:calc(100vw - 24px);padding:5px;display:flex;top:12px;left:12px;overflow:hidden}.kept-mark{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;margin:0 6px 0 -4px;font-size:12px;display:inline-flex}.kept-mark.failed,.kept-mark.elsewhere{color:#b45309}@media (width<=1439px){.kept-mark .label{display:none}}.topbar:not([data-compact="0"]) .label.roomy,.topbar:is([data-compact="2"],[data-compact="3"],[data-compact="4"]) .label{display:none}.topbar[data-compact="2"] .title-field{max-width:150px}.topbar:is([data-compact="3"],[data-compact="4"]) .title-field,.topbar[data-compact="4"] .brand{display:none}.topright{gap:2px;padding:5px;display:flex;top:12px;right:12px}.brand{letter-spacing:.2px;align-items:center;gap:7px;padding:0 10px 0 7px;font-size:14px;font-weight:650;display:flex}.brand-mark{width:20px;height:20px;display:block}.sep{background:var(--edge);width:1px;height:22px;margin:0 4px}.btn{cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-width:34px;height:34px;padding:0 8px;transition:background .12s,color .12s,transform 80ms;display:inline-flex}a.btn{color:inherit;text-decoration:none}.btn:hover{background:var(--hover)}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.35;cursor:default;transform:none}.btn.on{color:#fff;box-shadow:0 3px 10px var(--accent-glow);background:linear-gradient(135deg,#1035a9,#2e6fdb)}.btn.toggled{background:var(--accent-soft);color:var(--accent)}.btn .label{font-size:12.5px}.zoom-label{font-variant-numeric:tabular-nums;min-width:46px;color:var(--muted);font-size:12px}.rail{scrollbar-width:none;flex-direction:column;gap:2px;max-height:calc(100vh - 76px);padding:5px;display:flex;top:64px;left:12px;overflow-y:auto}.rail .btn{width:40px;height:38px;position:relative}.rail .btn .corner{opacity:.8;border-bottom:12px solid;border-left:12px solid #0000;border-bottom-right-radius:4px;width:0;height:0;position:absolute;bottom:2px;right:2px}.rail .btn:hover .corner{opacity:1}.rail .group-sep{background:var(--edge);height:1px;margin:3px 6px}.rail .el-symbol{font-size:15px;font-weight:650}.flyout{flex-wrap:wrap;gap:2px;max-width:360px;padding:5px;animation:.12s ease-out pop;display:flex}@keyframes pop{0%{opacity:0;transform:translateY(-3px)scale(.98)}}.dock{align-items:center;gap:2px;padding:5px;display:flex;bottom:12px;left:50%;transform:translate(-50%)}.dock .el{width:34px;font-size:14px;font-weight:600}.inspector input,.menu input,.dialog input{-webkit-user-select:text;user-select:text}.inspector{width:248px;max-height:calc(100vh - 140px);padding:12px 12px 10px;animation:.14s ease-out pop;top:64px;right:12px;overflow:auto}.inspector h3{color:var(--text);margin:0 0 8px;font-size:12.5px;font-weight:650}.inspector section+section{border-top:1px solid var(--edge);margin-top:12px;padding-top:12px}.row{flex-wrap:wrap;align-items:center;gap:6px;margin:5px 0;display:flex}.row>.name{width:74px;color:var(--muted);font-size:12px}.seg{background:var(--hover);border-radius:7px;gap:1px;padding:2px;display:inline-flex}.seg button{cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;min-width:28px;padding:4px 8px;font-size:12px}.seg button:hover{background:var(--hover)}.seg button svg{margin:-2px auto;display:block}.seg button:has(svg){min-width:0;padding:4px 5px}.row.charge-row{flex-wrap:nowrap}.inspector .seg.charge{flex-wrap:nowrap;grid-template-columns:repeat(3,1fr);width:84px;display:inline-grid}.seg.charge button{background:var(--glass-strong);min-width:0;color:var(--accent);padding:4px 0;font-size:13px;font-weight:600;box-shadow:0 1px 3px #0000001f}.seg.charge button:hover{background:var(--accent-soft)}.seg.charge .value{justify-content:center;align-items:center;font-size:12px;font-weight:650;display:flex}.inspector .charge-row .seg{flex-wrap:nowrap}.charge-row .seg:not(.charge) button{min-width:0;padding:4px 6px}.inspector .seg{flex-wrap:wrap}.seg button.on{background:var(--glass-strong);color:var(--accent);font-weight:600;box-shadow:0 1px 3px #0000001f}.formula-row{width:calc(100% + 10px);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin:0 -5px 2px;padding:3px 5px;display:flex}.formula-row:hover{background:var(--hover)}.formula{overflow-wrap:anywhere;font-size:15px;font-weight:600}.formula sub{font-size:.72em}.formula-row .more{background:var(--accent-soft);color:var(--accent);border-radius:6px;flex:none;align-items:center;gap:1px;padding:3px 5px 3px 10px;font-size:12px;font-weight:650;transition:background .12s,color .12s;display:inline-flex}.formula-row:hover .more,.formula-row.open .more{background:var(--accent);color:#fff}.formula-row .more svg{width:15px;height:15px;transition:transform .12s}.formula-row.open .more svg{transform:rotate(90deg)}.why{color:var(--muted);margin:2px 0 6px 24px;font-size:11.5px;line-height:1.4}.why p{margin:0 0 2px}.info-card{width:292px;max-height:calc(100vh - 140px);padding:8px 12px 10px;animation:.14s ease-out pop;top:64px;right:272px;overflow:auto}.info-card header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.info-card .info{background:var(--hover);border-radius:6px;margin-bottom:6px;padding:3px 4px}.info-card .info .ident:first-child{margin-top:0}.info-card .ident{grid-template-columns:92px 1fr}@media (width<=720px){.info-card{top:auto;bottom:72px;right:12px}}.small{color:var(--muted);font-size:12px}.ident{width:100%;color:inherit;font:inherit;text-align:left;cursor:copy;background:0 0;border:0;border-radius:6px;grid-template-columns:74px 1fr;gap:6px;margin-top:4px;padding:4px 6px;display:grid}.ident:hover{background:var(--hover)}.ident .name{color:var(--muted);font-size:11px}.ident code{overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;font-size:11px}input.field{border:1px solid var(--edge);background:var(--glass-strong);width:64px;height:28px;color:var(--text);font:inherit;border-radius:8px;padding:0 8px}input.field:focus{outline:2px solid var(--accent-soft);border-color:var(--accent-line)}select.field{border:1px solid var(--edge);background:var(--glass-strong);height:28px;color:var(--text);font:inherit;border-radius:8px;padding:0 6px;font-size:12.5px}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{border:2px solid var(--glass-strong);width:22px;height:22px;box-shadow:0 0 0 1px var(--edge);cursor:pointer;border-radius:50%;padding:0}.swatch.on{box-shadow:0 0 0 2px var(--accent)}.lobe-dot{border:1px solid var(--muted);vertical-align:-1px;border-radius:50%;flex:none;width:11px;height:11px;margin-right:5px;display:inline-block}.swatch.custom{background:conic-gradient(#e11d48,#f59e0b,#22c55e,#06b6d4,#6366f1,#d946ef,#e11d48);position:relative;overflow:hidden}.swatch.custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.color-picker{width:324px;min-width:0}.color-picker .grid{flex-wrap:wrap;gap:3px;padding:2px 10px 6px;display:flex}.color-picker .cell{border:1px solid var(--edge);cursor:pointer;border-radius:4px;width:20px;height:20px;padding:0}.color-picker .cell:hover,.color-picker .cell.on{box-shadow:0 0 0 2px var(--accent)}.color-picker .code{align-items:center;gap:6px;padding:4px 10px 8px;display:flex}.color-picker .code .field{flex:1;min-width:0;font-family:ui-monospace,monospace}.color-picker .code .swatch{flex:none}.swatch.none{background:repeating-linear-gradient(45deg, var(--glass-strong) 0 3px, var(--hover) 3px 6px)}.menu{z-index:30;min-width:220px;padding:6px;animation:.12s ease-out pop}.menu .item{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;width:100%;padding:7px 10px;display:flex}.menu .item:hover{background:var(--hover)}.seg.languages button{align-items:center;gap:5px;display:inline-flex}.flag{border-radius:2px;flex:none;box-shadow:0 0 0 .5px #00000040}.menu a.item{color:inherit;font-size:13px;text-decoration:none}.menu .item .hint{color:var(--faint);margin-left:auto;font-size:11.5px}.settings{width:400px}.settings .row{padding-block:2px}.settings .row>.name{width:104px}.settings .swatches{gap:4px}.settings .swatch{width:18px;height:18px}.menu .title{color:var(--text);padding:6px 10px 4px;font-size:12px;font-weight:650}.menu hr{border:0;border-top:1px solid var(--edge);margin:5px 4px}.menu label.item{cursor:pointer}.dialog{z-index:40;flex-direction:column;width:min(880px,100vw - 32px);max-height:calc(100vh - 48px);animation:.15s ease-out fade;display:flex;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes fade{0%{opacity:0}}.dialog header{border-bottom:1px solid var(--edge);align-items:center;gap:10px;padding:12px 12px 10px 18px;font-size:14px;font-weight:650;display:flex}.dialog header .btn{margin-left:auto}.dialog .body{padding:14px 18px 18px;overflow:auto}.templates-dialog{width:min(1040px,100vw - 32px);height:min(760px,100vh - 48px)}.templates-dialog .body{flex:1;min-height:0}.preview{background:#fff;border-radius:6px;justify-content:center;align-items:center;height:170px;margin-bottom:10px;display:flex}.preview img{max-width:100%;max-height:100%;transition:opacity .15s}.preview img.stale{opacity:.35}.preview .small{color:#687082}.from-name .elsewhere{min-height:34px}.elsewhere{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.error-text{color:#d1243f}.scrim{z-index:35;background:#0a0c142e;animation:.15s fade;position:fixed;inset:0}.scrim.clear{background:0 0;animation:none}.cards{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.layout-section+.layout-section{margin-top:16px}.layout-section.part{background:var(--accent-soft);border-radius:12px;margin:0 -6px;padding:10px 6px 6px}.layout-title{color:var(--muted);margin:0 2px 8px;font-size:12.5px;font-weight:600}.layout-section.part .layout-title{color:var(--accent)}.layout-all{margin:0 0 10px auto;display:flex}.card{border:1px solid var(--edge);background:var(--glass-strong);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;gap:6px;padding:8px;transition:transform .1s,box-shadow .12s,border-color .12s;display:flex}.card:hover{box-shadow:var(--shadow);border-color:var(--accent-line);transform:translateY(-2px)}.card.current{cursor:default;opacity:.8}.card.current:hover{box-shadow:none;border-color:var(--edge);transform:none}.card .thumb{background:#fff;border-radius:5px;justify-content:center;align-items:center;height:150px;display:flex;overflow:hidden}.card .thumb img{max-width:100%;max-height:100%}.small-cards{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}.small-cards .card{gap:3px;padding:5px}.small-cards .thumb{height:84px;padding:4px}.small-cards .caption{text-align:center;color:var(--text);font-size:11.5px}.dialog header .seg{flex-wrap:wrap}.dialog header .search{width:150px;margin-left:10px}.templates-dialog .search-hint{color:var(--muted);margin:0 0 10px;font-size:11.5px}.templates-layout{padding:0;display:flex;overflow:hidden}.template-list{border-right:1px solid var(--edge);flex-direction:column;flex:none;gap:0;width:196px;padding:12px 10px;display:flex;overflow:auto}.template-list .search{box-sizing:border-box;width:100%;margin:0 0 10px}.template-list button{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:13px}.template-list button.sub{color:var(--muted);padding:2px 8px 2px 20px;font-size:12px}.template-list button:hover{background:var(--hover)}.template-list button.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.template-main{flex:1;min-width:0;padding:14px 18px 18px;overflow:auto}.template-section+.template-section{margin-top:14px}.template-heading{color:var(--muted);margin:0 2px 8px;font-size:12.5px;font-weight:600}@media (width<=640px){.templates-layout{flex-direction:column}.template-list{border-right:0;border-bottom:1px solid var(--edge);width:auto;max-height:34%}}.from-name{width:min(560px,100vw - 32px)}.from-name .body>.field{box-sizing:border-box;width:100%;margin-bottom:12px;padding:8px 10px;font-size:15px}.card .caption{color:var(--muted);font-size:12px}.card .caption .full{opacity:.8}.card-place{display:flex;position:relative}.card-place>.card{flex:1}.as-labels{gap:3px;display:flex;position:absolute;top:6px;right:6px}.as-label{border:1px solid var(--edge);background:var(--panel,white);color:var(--accent);font:inherit;cursor:pointer;border-radius:6px;padding:1px 6px;font-size:11.5px;font-weight:600}.as-label:hover{background:var(--accent);color:#fff}.card .warn{color:#c2410c;font-size:11.5px}.debug-box{color:var(--muted);white-space:pre-wrap;word-break:break-word;font:11.5px/1.45 ui-monospace,SF Mono,Menlo,Consolas,monospace}.skipped{color:var(--muted);margin-top:14px;font-size:12px}.skipped li{margin:2px 0}.periodic{grid-template-rows:16px repeat(7,30px) 8px 30px 30px;grid-template-columns:16px repeat(18,30px);gap:3px;padding:4px 10px 6px;display:grid}.periodic .axis{color:var(--muted);justify-content:center;align-items:center;font-size:10px;display:flex}.periodic button{height:30px;color:inherit;cursor:pointer;border:0;border-radius:7px;font-size:12px;font-weight:600}.fam-alkali{background:#f25f5f4d}.fam-alkaline{background:#f598474d}.fam-transition{background:#f4ca2547}.fam-postTransition{background:#83c65347}.fam-metalloid{background:#40bf9f47}.fam-nonmetal{background:#5aa6f24d}.fam-halogen{background:#8c79ec4d}.fam-noble{background:#de7cde4d}.fam-lanthanide{background:#f17eae4d}.fam-actinide{background:#c28b704d}.periodic button:hover{outline:2px solid var(--accent);outline-offset:-2px}.families{flex-wrap:wrap;gap:4px;max-width:600px;padding:0 10px 10px;display:flex}.families span{border-radius:999px;padding:2px 8px;font-size:11px}.messages{z-index:50;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:min(640px,100vw - 40px);display:flex;position:fixed;top:70px;left:50%;transform:translate(-50%)}.messages .glass{position:static}.notice{padding:9px 16px;font-size:13px;animation:.15s ease-out pop}.downloads{gap:10px;padding:10px 16px 12px;font-size:13px;animation:.15s ease-out pop;display:grid}.downloads>div{grid-template-columns:1fr auto;gap:6px 16px;min-width:300px;display:grid}.downloads .share{color:var(--muted);font-variant-numeric:tabular-nums}.downloads .bar{background:var(--hover);border-radius:2px;grid-column:1/-1;height:4px;overflow:hidden}.downloads .bar div{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:2px;height:100%;transition:width .2s linear}.notice.error{color:var(--danger);border-color:#e0115f66}.xyz-job{pointer-events:auto;padding:8px 10px 8px 16px;font-size:13px;animation:.15s ease-out pop}.xyz-job .line{align-items:center;gap:10px;display:flex}.xyz-job p{max-width:560px;margin:6px 6px 2px 0}.xyz-job .warn{color:#c2410c;background:#c2410c1f;border-left:4px solid #c2410c;border-radius:6px;padding:6px 10px;font-weight:600}.xyz-job .spinner{flex:none;width:16px;height:16px}.xyz-job .seconds{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.xyz-job .btn.primary{background:var(--accent);color:#fff;white-space:nowrap;font-weight:600}.text-editor{z-index:25;border:1.5px solid var(--accent);background:var(--glass-strong);min-width:140px;min-height:1.4em;color:var(--text);white-space:pre;box-shadow:var(--shadow);-webkit-user-select:text;user-select:text;border-radius:7px;outline:none;padding:4px 8px;font:16px Arial,Helvetica,sans-serif;position:fixed}.text-editor:empty:before{content:attr(data-placeholder);color:var(--faint)}.text-editor sub,.text-editor sup{font-size:.7em;line-height:0}.text-tools{z-index:26;align-items:center;gap:2px;padding:3px;display:flex;position:fixed;transform:translateY(-100%)}.text-tools .sep{background:var(--edge);align-self:stretch;width:1px;margin:4px 3px}.text-tools .btn{min-width:36px;height:36px;font-size:16px}.text-tools .btn .label{font-size:15px}.text-tools sub,.text-tools sup{font-size:.7em}.text-tools .serif{font-family:Georgia,serif;font-size:18px}.text-tools svg{width:22px;height:22px}.text-tools .caret{opacity:.6;margin-left:2px;font-size:10px}.text-tools .menu-holder{position:relative}.text-menu{z-index:27;gap:2px;padding:4px;display:flex;position:absolute}.text-menu.align-menu{flex-direction:column;bottom:-5px;left:-5px;right:-5px}.text-tools .align-button,.text-menu.align-menu .btn{justify-content:flex-start}.text-menu.characters-menu{flex-direction:column;gap:6px;width:360px;padding:8px;top:calc(100% + 6px);right:0}.text-menu.characters-menu.upwards{top:auto;bottom:calc(100% + 6px)}.text-menu .group-name{color:var(--muted);margin:0 0 3px 2px;font-size:12px}.text-menu .chars{flex-wrap:wrap;gap:1px;display:flex}.text-menu .btn.char{justify-content:center;width:32px;min-width:0;height:32px;padding:0;font-size:18px}.debugpanel{width:300px;min-height:120px;max-height:calc(100vh - 520px);padding:10px 12px;font-size:12px;bottom:74px;right:12px;overflow:auto}.debugpanel label{cursor:pointer;align-items:center;gap:8px;margin:3px 0;display:flex}.about p{max-width:640px;margin:0 0 10px}.about a{color:var(--accent)}@media (width<=720px){.topbar .label{display:none}.inspector{width:210px}.dock{max-width:calc(100vw - 24px);overflow-x:auto}}.empty-hint{color:var(--faint);pointer-events:none;text-align:center;width:min(760px,62vw);font-size:14px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.empty-hint .example-title{letter-spacing:.01em;color:var(--text);opacity:calc(var(--example,.17) * 2);margin-bottom:14px;font-size:16px;font-weight:600;transition:opacity .25s}.empty-hint.pointed .example-title{opacity:calc(var(--example,.17) * 3.5)}.example-drawing{position:relative}.example-drawing .example{width:100%;height:auto;transition:opacity .25s;display:block}.example-drawing .example.focus{transition:none;position:absolute;top:0;left:0}.example-drawing .focus *{visibility:hidden}.empty-hint .example{max-height:36vh;opacity:var(--example,.17)}.empty-hint.pointed .example{opacity:calc(var(--example,.17) * 2.5)}.empty-hint .example.focus{opacity:.9}.examples-window{z-index:40;flex-direction:column;max-width:1180px;margin:0 auto;display:flex;position:fixed;inset:76px 24px 84px 84px;overflow:hidden}.examples-window header{border-bottom:1px solid var(--edge);align-items:center;gap:12px;padding:8px 12px 8px 18px;font-weight:600;display:flex}.examples-window .help-links{flex-wrap:wrap;gap:6px;margin-left:auto;font-weight:400;display:flex}.examples-window .help-links .btn{color:inherit;background:var(--hover);border-radius:8px;gap:6px;padding:6px 10px;font-size:13px;text-decoration:none}.examples-window .help-links .btn:hover{background:var(--accent-soft)}.examples-window .help-links .btn svg{opacity:.75;width:15px;height:15px}.examples-body{flex:1;min-height:0;display:flex}.examples-side{border-right:1px solid var(--edge);flex-direction:column;flex:none;width:330px;min-height:0;display:flex}.examples-list{flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:8px;min-height:0;padding:8px;display:grid;overflow-y:auto}.examples-list .item{border:1px solid var(--edge);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:8px;flex-direction:column;align-items:stretch;gap:4px;padding:6px;display:flex}.examples-list .item:hover{background:var(--hover)}.examples-list .item.on{background:var(--accent-soft);border-color:var(--accent)}.examples-list .item .thumb-drawing{background:var(--canvas);border-radius:5px;width:100%;height:84px}.examples-list .item .caption{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.3;display:-webkit-box;overflow:hidden}.examples-list .item.on .caption{color:var(--accent);font-weight:600}.example-looks{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.example-looks figure{flex-direction:column;align-items:center;gap:6px;margin:0;display:flex}.example-looks .thumb-drawing{width:220px;height:170px}.example-looks figcaption{color:var(--muted);font-size:12.5px}.examples-tags{border-bottom:1px solid var(--edge);flex-wrap:wrap;flex:none;gap:4px;padding:10px 10px 8px;display:flex}.examples-tags .tag{border:1px solid var(--edge);color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:3px 9px;font-size:12px}.examples-tags .tag:hover{background:var(--hover)}.examples-tags .tag.on{background:var(--accent-soft);color:var(--accent);border-color:#0000;font-weight:600}.examples-steps{color:var(--muted);text-align:center;flex-direction:column;gap:6px;max-width:760px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.examples-steps .shown{border:1px solid var(--edge);color:var(--text);vertical-align:middle;white-space:nowrap;border-radius:6px;align-items:center;gap:4px;margin:0 1px;padding:1px 7px 1px 4px;display:inline-flex}.examples-steps .shown:not(:has(svg)){padding-left:7px}.examples-steps .shown svg{width:18px;height:18px}.examples-steps .shown.lights{cursor:help}.examples-steps .shown.lights:hover{border-color:#d0021b}.examples-view{flex-direction:column;flex:1;justify-content:safe center;align-items:center;gap:12px;min-width:0;padding:16px 24px;display:flex;overflow:auto}.examples-title{font-size:16px;font-weight:600}.examples-videos{z-index:0;color:#fff;box-shadow:0 4px 14px var(--accent-glow);background:linear-gradient(135deg,#1035a9,#2e6fdb);border-radius:14px;flex:none;align-items:center;gap:11px;margin:12px 12px 4px;padding:9px 16px 9px 12px;text-decoration:none;transition:transform .12s;display:flex;position:relative}.examples-videos:before{content:"";z-index:-1;filter:blur(11px);opacity:.45;background:linear-gradient(135deg,#1035a9,#2e6fdb);border-radius:18px;position:absolute;inset:-5px}.examples-videos:hover{transform:scale(1.02)}.examples-videos:active{transform:scale(.98)}.examples-videos svg{flex:none;width:30px;height:30px}.examples-videos span{flex-direction:column;line-height:1.25;display:flex}.examples-videos strong{font-size:15px;font-weight:650}.examples-videos small{opacity:.85;font-size:12px}@media (width<=720px){.examples-videos{gap:8px;padding:8px 10px}.examples-videos svg{width:24px;height:24px}.examples-videos small{display:none}}.examples-view .example-drawing{width:100%;max-width:900px}.examples-view .example{max-height:58vh}@media (width<=720px){.examples-side{width:170px}.examples-list{grid-template-columns:1fr}}.examples-window .example-drawing.has-part .example:not(.focus){opacity:.3}.btn.taught{background:linear-gradient(135deg,#b0001a,#e8414f);transition:background .2s,box-shadow .2s;box-shadow:0 0 0 3px #d0021b40,0 3px 14px #d0021b73;color:#fff!important}.empty-hint .moves{margin-top:18px}.example-tip{z-index:30;background:var(--glass);border:1px solid var(--edge);max-width:300px;box-shadow:var(--shadow);pointer-events:none;border-radius:8px;padding:6px 10px;font-size:12.5px;position:fixed}.tool-hint{text-align:center;text-wrap:balance;max-width:min(820px,100vw - 200px);color:var(--muted);pointer-events:none;text-shadow:0 0 6px var(--canvas), 0 0 2px var(--canvas);font-size:12px;position:fixed;bottom:66px;left:50%;transform:translate(-50%)}.tool-hint .kinds{margin-top:2px;display:block}kbd{border:1px solid var(--edge);background:var(--glass-strong);min-width:1.6em;font:600 11.5px/1.6 var(--ui-font);text-align:center;color:var(--text);border-bottom-width:2px;border-radius:5px;padding:0 5px;display:inline-block}.shortcuts{columns:2 300px;column-gap:28px}.shortcuts section{break-inside:avoid;margin-bottom:14px}.shortcuts h3{color:var(--text);margin:0 0 6px;font-size:12.5px}.shortcuts td{vertical-align:top;padding:2px 10px 2px 0}.title-field{height:28px;color:var(--muted);font:12.5px var(--ui-font);-webkit-user-select:text;user-select:text;background:0 0;border:1px solid #0000;border-radius:8px;max-width:220px;margin:0 6px 0 -4px;padding:0 8px}.title-field:hover{border-color:var(--edge)}.title-field:focus{border-color:var(--accent-line);background:var(--glass-strong);color:var(--text);outline:none}.name-dialog label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.name-row{align-items:center;gap:6px;display:flex}.name-row .field{flex:1;width:auto;height:32px;font-size:14px}.marker{color:#1c1f26;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.marker.custom{background:conic-gradient(#fda4af,#fde68a,#bbf7d0,#a5f3fc,#c7d2fe,#f5d0fe,#fda4af)}.marker.none{background:repeating-linear-gradient(45deg, var(--glass-strong) 0 3px, var(--hover) 3px 6px);color:var(--text)}.tick{cursor:pointer;gap:8px;margin-top:8px;font-size:12.5px}.report table{border-collapse:collapse;-webkit-user-select:text;user-select:text;width:100%;margin:4px 0 10px;font-size:12.5px}.report td{border-bottom:1px solid var(--edge);vertical-align:top;word-break:break-all;padding:4px 8px}.report td:first-child{white-space:nowrap;color:var(--muted);word-break:normal;width:1%}.report .buttons{gap:8px;margin:10px 0 6px;display:flex}.report .btn{color:inherit;text-decoration:none}.version-mark{z-index:9;color:var(--muted);-webkit-user-select:none;user-select:none;flex-direction:column;gap:1px;font-size:11px;line-height:1.3;display:flex;position:fixed;bottom:12px;left:14px}.version-mark a{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--edge);text-decoration-color:var(--edge);text-underline-offset:2px;width:fit-content}.version-mark a:hover{color:var(--accent);text-decoration-color:currentColor}.version-mark .link{all:unset;cursor:pointer;color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--edge);text-decoration-color:var(--edge);text-underline-offset:2px}.version-mark .link:hover{color:var(--accent);text-decoration-color:currentColor}@media (width<=1259px),(height<=759px){.version-mark{display:none}}.help-button{z-index:12;color:#fff;width:50px;height:50px;font:700 24px/1 var(--ui-font);cursor:pointer;box-shadow:0 4px 14px var(--accent-glow);background:linear-gradient(135deg,#1035a9,#2e6fdb);border:0;border-radius:50%;transition:transform .12s;position:fixed;bottom:18px;right:18px}.help-button:before{content:"";z-index:-1;filter:blur(12px);opacity:.55;background:linear-gradient(135deg,#1035a9,#2e6fdb);border-radius:50%;position:absolute;inset:-6px}.help-button:hover{transform:scale(1.06)}.help-button:active{transform:scale(.96)}@media (width<=1240px){.help-button{bottom:76px}}.turn3d .stage{aspect-ratio:960/640;background:var(--canvas);cursor:grab;touch-action:none;border-radius:10px;outline:none;width:100%;max-height:calc(100vh - 290px);display:block}.turn3d .stage:active{cursor:grabbing}.turn3d .stage:focus-visible{box-shadow:0 0 0 2px var(--accent-line)}.turn3d .stage.working{cursor:default;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--accent-soft);border-top-color:var(--accent);will-change:transform;border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.seconds{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:4px}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}.turn3d .warn{color:#c2410c;background:#c2410c1f;border-left:4px solid #c2410c;border-radius:6px;margin:8px 0;padding:8px 12px;font-weight:600}.turn3d .btn.primary.anyway{box-shadow:none;color:#fff;background:#c2410c;border-color:#c2410c}.turn3d .buttons{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:10px;display:flex}.turn3d .buttons .group{flex-wrap:wrap;gap:8px;display:flex}.turn3d .notes{height:92px;overflow-y:auto}.turn3d .notes>:first-child{margin-top:8px}.turn3d .buttons .btn{border:1px solid var(--edge);background:var(--glass-strong);height:36px;padding:0 16px;font-weight:500;box-shadow:0 1px 2px #14192d14}.turn3d .buttons .btn:hover{background:var(--hover)}.turn3d .buttons .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.turn3d .buttons .btn.primary:hover{filter:brightness(1.1)}.turn3d .buttons .btn.primary.anyway{background:#c2410c;border-color:#c2410c}.turn3d .buttons .btn.on{color:#fff;box-shadow:0 3px 10px var(--accent-glow);background:linear-gradient(135deg,#1035a9,#2e6fdb);border-color:#0000}.turn3d .buttons .btn kbd{font:11px var(--ui-font);opacity:.7;color:inherit;background:0 0;border:1px solid;border-radius:4px;padding:1px 5px}.turn3d .legend{color:var(--muted);flex-wrap:wrap;gap:6px 14px;margin:6px 0 0;font-size:13px;display:flex}.turn3d .legend span{align-items:center;gap:6px;display:inline-flex}.turn3d .legend i{border-radius:50%;width:12px;height:12px;display:inline-block}
