:root{--bg: #f7f8fa;--surface: #ffffff;--text: #0f172a;--muted: #5b6474;--border: #e2e6ec;--accent: #f97316;--accent-ink: #ffffff;--accent-soft: #fff1e6;--link: #c2410c;--ok: #15803d;--error: #b91c1c;--radius: 12px;--shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 4px 16px rgba(15, 23, 42, .06);color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #0d1117;--surface: #161b22;--text: #e6edf3;--muted: #9aa4b2;--border: #2b323c;--accent-soft: #2a1a0e;--link: #fb923c;--ok: #4ade80;--error: #f87171;--shadow: 0 1px 2px rgba(0, 0, 0, .4);color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--link)}code{font-size:.9em;background:var(--accent-soft);padding:.05em .35em;border-radius:4px}.wrap{max-width:1240px;margin:0 auto;padding:0 16px}.muted{color:var(--muted)}[hidden]{display:none!important}.site-header{background:var(--surface);border-bottom:1px solid var(--border)}.site-header .wrap{display:flex;align-items:center;gap:24px;min-height:60px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--text);text-decoration:none;font-size:18px}.site-header nav{display:flex;gap:4px 16px;flex-wrap:wrap;font-size:14px}.site-header nav a{color:var(--muted);text-decoration:none;padding:4px 0}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--text)}.site-header nav a[aria-current]{box-shadow:inset 0 -2px var(--accent)}.hero{padding-top:32px;padding-bottom:8px}.hero h1{font-size:clamp(28px,4vw,40px);line-height:1.15;margin:0 0 10px;letter-spacing:-.02em}.lead{font-size:18px;color:var(--muted);max-width:820px;margin:0 0 20px}.btn{font:inherit;font-weight:600;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:9px 16px;border-radius:9px;cursor:pointer}.btn:hover{border-color:var(--muted)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.05)}.btn.primary:disabled{opacity:.5;cursor:not-allowed}.btn.small{padding:5px 10px;font-size:13px;font-weight:500}.btn.wide{width:100%;padding:12px;font-size:16px}.link{background:none;border:0;color:var(--link);font:inherit;cursor:pointer;text-decoration:underline;padding:0}.tool{margin:8px 0 28px}.dropzone{background:var(--surface);border:2px dashed #f5a66b;border-radius:var(--radius);padding:44px 20px;text-align:center;cursor:pointer;transition:background .15s,border-color .15s}.tool.dragging .dropzone{background:var(--accent-soft);border-color:var(--accent)}.drop-icon{color:var(--accent)}.drop-title{font-size:22px;font-weight:700;margin:8px 0 12px}.drop-sub{margin:0 0 12px;display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;color:var(--muted)}.drop-privacy{color:var(--ok);font-size:14px;margin:0 0 10px}.tool.busy .dropzone,.tool.busy .workspace{opacity:.6;pointer-events:none}.workspace{display:grid;grid-template-columns:290px minmax(0,1fr) 250px;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}.tool.dragging .workspace{outline:3px dashed var(--accent)}.panel{min-width:0}.panel h2{font-size:16px;margin:4px 0 10px}.file-head{display:flex;flex-direction:column;gap:6px;padding-bottom:10px;border-bottom:1px solid var(--border);margin-bottom:10px}.file-head strong{display:block;word-break:break-all}.file-head .muted{font-size:13px;display:block}.file-head .btn{align-self:flex-start}.row{display:flex;align-items:center;gap:8px;font-size:14px;margin:8px 0}.row select{flex:1;min-width:0}select{font:inherit;font-size:14px;padding:6px 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.list-head{display:flex;justify-content:space-between;font-weight:600;font-size:14px;margin:6px 0}.object-list{list-style:none;margin:0;padding:0;max-height:430px;overflow:auto;border:1px solid var(--border);border-radius:9px}.object-list li{display:flex;align-items:flex-start;gap:8px;padding:7px 8px;border-bottom:1px solid var(--border)}.object-list li:last-child{border-bottom:0}.object-list li.selected{background:var(--accent-soft)}.object-list input{margin-top:4px}.swatches{display:flex;gap:2px;margin-top:4px}.swatches i{width:12px;height:12px;border-radius:3px;border:1px solid rgba(0,0,0,.2);display:block}.obj-text{min-width:0;display:flex;flex-direction:column}.obj-name{background:none;border:0;padding:0;font:inherit;font-size:14px;color:var(--text);text-align:left;cursor:pointer;word-break:break-word}.obj-name:hover{color:var(--link)}.obj-meta{font-size:12px;color:var(--muted)}.kinds{border:1px solid var(--border);border-radius:9px;margin:10px 0 0;padding:6px 10px 8px;font-size:13px}.kinds legend{font-weight:600;padding:0 4px}.kinds label{display:block}.kind-modifier{color:#b58900}.kind-support_blocker{color:#d0353a}.kind-support_enforcer{color:#2f9e64}.warnings{font-size:12px;color:var(--muted);padding-left:18px}.stage{display:flex;flex-direction:column;min-width:0}.viewport{position:relative;flex:1;min-height:520px;border-radius:9px;overflow:hidden;background:radial-gradient(circle at 50% 30%,#fff,#e9edf2);touch-action:none}@media(prefers-color-scheme:dark){.viewport{background:radial-gradient(circle at 50% 30%,#252c36,#12161c)}}.viewport canvas{display:block;width:100%;height:100%;position:absolute;inset:0}.stage-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;color:var(--muted);padding-top:8px}.formats{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px}.formats label{position:relative}.formats input{position:absolute;opacity:0}.formats span{display:block;text-align:center;padding:9px 0;border:1px solid var(--border);border-radius:9px;font-weight:600;cursor:pointer}.formats input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--link)}.formats input:focus-visible+span{outline:2px solid var(--accent)}.check{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin:8px 0}.check input{margin-top:4px}.export .btn.wide{margin-top:10px}.note{font-size:13px;color:var(--muted)}.status{min-height:1.6em;font-size:14px;margin:8px 2px 0;color:var(--muted)}.status[data-kind=ok]{color:var(--ok)}.status[data-kind=error]{color:var(--error);font-weight:600}.content{padding-bottom:40px}.content h2{font-size:24px;margin:36px 0 12px;letter-spacing:-.01em}.content p,.content li{max-width:820px}.steps{padding-left:22px}.steps li{margin:6px 0}.checks{list-style:none;padding:0}.checks li{padding-left:26px;position:relative;margin:8px 0}.checks li:before{content:"";position:absolute;left:4px;top:.55em;width:10px;height:10px;border-radius:3px;background:var(--accent)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;max-width:820px;font-size:15px}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}th{background:var(--surface)}.faq details{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 14px;margin:8px 0;max-width:820px}.faq summary{font-weight:600;cursor:pointer}.faq details div p{margin:8px 0 0}.related ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.related li{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column}.related li a{font-weight:600}.related li span{font-size:14px;color:var(--muted)}.site-footer{border-top:1px solid var(--border);background:var(--surface);font-size:14px;color:var(--muted);padding:18px 0}.site-footer p{margin:6px 0}@media(max-width:1020px){.workspace{grid-template-columns:1fr}.stage{order:-1}.viewport{min-height:340px;height:52vh}.object-list{max-height:260px}}@media(max-width:560px){.site-header .wrap{gap:0;padding-top:8px}.site-header nav{flex-wrap:nowrap;overflow-x:auto;width:100%;gap:16px;padding-bottom:6px;scrollbar-width:none}.site-header nav a{white-space:nowrap}.hero{padding-top:20px}.dropzone{padding:28px 14px}.drop-title{font-size:19px}.lead{font-size:16px}}.object-list li .row-actions{margin-left:auto;display:flex;gap:2px;flex:none}.icon-btn{background:none;border:1px solid transparent;border-radius:6px;font-size:14px;line-height:1;padding:3px 5px;cursor:pointer;color:var(--muted)}.icon-btn:hover,.icon-btn:focus-visible{border-color:var(--border);color:var(--text);background:var(--surface)}.rename-input{font:inherit;font-size:14px;width:100%;padding:2px 6px;border:1px solid var(--accent);border-radius:6px;background:var(--bg);color:var(--text)}.object-list .part-list{list-style:none;margin:0;padding:0 0 4px 30px;border-bottom:1px solid var(--border);background:var(--bg)}.object-list .part-list li{border-bottom:0;padding:4px 6px;align-items:center}.part-swatch{width:10px;height:10px;border-radius:3px;border:1px solid rgba(0,0,0,.2);display:block;flex:none}.part-name{font-size:13px;word-break:break-word}.filament-select{font:inherit;font-size:12px;margin-top:3px;width:max-content;border:1px solid var(--border);border-left-width:6px;border-radius:6px;background:var(--surface);color:var(--text);padding:1px 4px}.edit-panel h3{font-size:14px;margin:14px 0 6px}.edit-panel .btn.wide{margin-top:8px}.color-list{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column;gap:4px;max-height:260px;overflow:auto}.color-list li{display:flex;align-items:center;gap:8px;font-size:13px}.color-list .slot{width:1.4em;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.color-list input[type=color],.palette-list input[type=color]{width:34px;height:24px;padding:0;border:1px solid var(--border);border-radius:6px;background:none;cursor:pointer}.color-list .color-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview2d{width:100%;max-height:240px;object-fit:contain;image-rendering:pixelated;border:1px solid var(--border);border-radius:9px;background:repeating-conic-gradient(#e5e7eb 0 25%,#fff 0 50%) 0 0 / 16px 16px;margin-bottom:8px}.image-tool .panel .row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px;margin:8px 0}.image-tool .panel input[type=number]{width:72px;font:inherit;padding:3px 6px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text)}.image-tool .panel select{font:inherit;font-size:13px;padding:3px 4px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);max-width:100%}.image-tool .panel input[type=range]{flex:1;min-width:100px}.palette-list{list-style:none;margin:4px 0 8px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px}.palette-list li{display:flex;align-items:center;gap:6px;font-size:13px}.image-tool .panel.export h2+.row{margin-top:0}.formats label:last-child:nth-child(odd){grid-column:1 / -1}.litho-preview{image-rendering:auto;background:#222}.site-header nav{order:1}.lang-switch{order:2;position:relative;margin-left:auto;font-size:14px}.lang-switch summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;color:var(--muted);padding:4px 10px;border:1px solid var(--border);border-radius:8px;white-space:nowrap}.lang-switch summary::-webkit-details-marker{display:none}.lang-switch summary:hover,.lang-switch[open] summary{color:var(--text)}.lang-switch ul{position:absolute;right:0;top:calc(100% + 6px);z-index:30;min-width:190px;margin:0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.lang-switch li a{display:block;padding:6px 10px;border-radius:6px;color:var(--text);text-decoration:none}.lang-switch li a:hover{background:var(--accent-soft)}.lang-switch li a[aria-current]{font-weight:600;color:var(--link)}@media(max-width:560px){.lang-switch{order:1}.site-header nav{order:2}}
