:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eef2eb;background:#101317;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}.app-shell{min-height:100dvh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 75% 15%,#1c2730,#101317 45%)}header{height:68px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.brand{color:#f2f4ef;text-decoration:none;font-weight:800;letter-spacing:-.9px}.brand span{color:#d7ff53}.language select{color:#b9c1ba;background:transparent;border:0;font:500 12px DM Mono,monospace;padding:12px;min-height:44px}.empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px 24px 34px;min-height:calc(100dvh - 68px)}.path-mark{width:96px;height:96px;margin-bottom:26px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #3a4540;border-radius:28px;transform:rotate(-5deg)}.path-mark i{width:9px;border-radius:8px;background:#d7ff53;display:block}.path-mark i:nth-child(1){height:32px}.path-mark i:nth-child(2){height:56px;background:#70d6ff}.path-mark i:nth-child(3){height:76px;background:#b699ff}.eyebrow{font:500 10px DM Mono,monospace;color:#a4afaa;letter-spacing:1.2px;margin:0 0 12px}.empty h1{font-size:clamp(31px,9vw,50px);line-height:1.03;letter-spacing:-2px;max-width:480px;margin:0}.empty>p:not(.eyebrow):not(.drop-copy):not(.error){color:#abb4ae;max-width:395px;font-size:15px;line-height:1.5;margin:17px 0 25px}.primary,.ghost,.close{min-height:46px;border-radius:14px;border:0;font:700 13px Manrope,sans-serif;cursor:pointer;padding:0 18px;display:inline-flex;align-items:center;justify-content:center}.primary{background:#d7ff53;color:#18210e;box-shadow:0 8px 25px #d7ff5322}.ghost{background:#252c2a;color:#e7ece6}.drop-copy{font:12px DM Mono,monospace;color:#c9d0ca;line-height:1.6}.drop-copy span{color:#77847c}.error{color:#ff9f93;font-size:13px}footer{margin-top:28px;max-width:480px;color:#68746d;font-size:11px;line-height:1.55}.viewer-shell{position:relative;flex:1;min-height:calc(100dvh - 68px)}.viewer{position:absolute;inset:0}.viewer canvas{touch-action:none}.viewer-bar{position:absolute;z-index:1;top:13px;left:13px;right:13px;display:flex;gap:8px;align-items:center}.file-chip{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;padding:0 12px;height:46px;display:flex;align-items:center;border-radius:14px;background:#101317cc;color:#c3cdc5;border:1px solid #38413d;font:11px DM Mono,monospace}.legend{position:absolute;bottom:101px;left:18px;color:#bec8c0;background:#101317bb;border:1px solid #38413d;border-radius:12px;padding:8px 10px;font:10px DM Mono,monospace;display:flex;gap:8px;align-items:center}.gradient{height:5px;width:38px;border-radius:4px;background:linear-gradient(90deg,#50d9e9,#c07aff)}.layer-sheet{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:17px 20px max(18px,env(safe-area-inset-bottom));background:#171c1be8;border-top:1px solid #38413d;border-radius:22px 22px 0 0}.layer-sheet label{display:flex;justify-content:space-between;font-size:12px;color:#c5ccc7;margin-bottom:9px}.layer-sheet input{width:100%;accent-color:#d7ff53;min-height:28px}.modal-backdrop{position:fixed;inset:0;z-index:3;background:#05070699;display:flex;align-items:flex-end}.details{background:#1c2220;border:1px solid #3a4540;border-radius:22px 22px 0 0;width:100%;padding:18px 20px max(28px,env(safe-area-inset-bottom));color:#ecf0eb}.close{float:right;min-height:44px;background:#2b3430;color:#e7ece6}.details h2{margin:5px 0 21px;font-size:20px}.details dl{margin:0}.details dl div{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid #35403a;font-size:13px}.details dt{color:#98a49c}.details dd{margin:0;font-family:DM Mono,monospace;color:#edf2ed;text-align:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:700px){header{padding:0 34px}.viewer-bar{top:22px;left:24px;right:24px}.viewer-bar .file-chip{max-width:420px}.layer-sheet{left:50%;transform:translate(-50%);bottom:22px;width:min(560px,calc(100% - 48px));border:1px solid #38413d;border-radius:18px}.legend{bottom:45px}.details{max-width:520px;margin:auto;border-radius:22px}.modal-backdrop{align-items:center;padding:24px}}.appearance-controls{display:grid;gap:14px}.appearance-controls label{display:flex;align-items:center;justify-content:space-between;color:#c5ccc7;font-size:13px}.appearance-controls select,.appearance-controls input{min-height:44px;border:1px solid #3a4540;border-radius:10px;background:#252c2a;color:#eef2eb;padding:0 10px}.view-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.view-grid .ghost{padding:0 6px;min-height:44px}.appearance-controls .ghost[aria-pressed=true]{outline:2px solid #d7ff53;color:#eaffb0}.segmented{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.segmented .ghost{width:100%}.icon-button{width:46px;height:46px;min-width:46px;border:1px solid #38413d;border-radius:50%;display:grid;place-items:center;background:#1b2321e8;color:#e8f1eb;cursor:pointer}.icon-button svg{stroke-width:2.3}.primary-icon{background:#d7ff53;border-color:#d7ff53;color:#14200b;box-shadow:0 8px 25px #d7ff5322}.file-chip{flex:0 0 46px;justify-content:center;padding:0}.demo-button{min-height:44px;margin-top:10px;background:transparent;border:1px solid #53655d;border-radius:14px;padding:0 16px;color:#cdd8d1;font:700 13px system-ui;cursor:pointer}.demo-loading{min-height:54px;margin-top:10px;display:flex;align-items:center;gap:10px;color:#d7ff53;font:700 13px system-ui}.spin{animation:spin .8s linear infinite}.build-status{position:absolute;z-index:1;top:70px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 12px;border:1px solid #45564e;border-radius:999px;background:#0c1118dd;color:#d7ff53;font:700 11px system-ui}@keyframes spin{to{transform:rotate(360deg)}}.home-flow{width:min(330px,100%);height:116px;margin:0 0 20px;display:flex;align-items:center;justify-content:center;gap:8px}.gcode-card{width:76px;height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid #56675e;border-radius:14px;background:linear-gradient(145deg,#2a3731,#16211e);color:#d7ff53;box-shadow:0 12px 30px #0005}.gcode-card span{font:700 11px ui-monospace,SFMono-Regular,monospace;color:#dfe9e2}.data-flow{height:38px;width:46px;display:flex;align-items:center;gap:4px;overflow:hidden}.data-flow i{flex:0 0 5px;height:5px;border-radius:50%;background:#70d6ff;box-shadow:0 0 12px #70d6ff;animation:data-right 1.3s ease-in-out infinite}.data-flow i:nth-child(2){animation-delay:.12s}.data-flow i:nth-child(3){animation-delay:.24s}.data-flow i:nth-child(4){animation-delay:.36s}.data-flow i:nth-child(5){animation-delay:.48s}.benchy-toolpath{width:166px;height:108px;display:block;filter:drop-shadow(0 8px 12px #0008)}.toolpath-line{stroke:#76d7e8;stroke-width:1.35;stroke-linecap:round;opacity:.92}@keyframes data-right{0%,to{opacity:.15;transform:translate(-18px)}50%{opacity:1;transform:translate(18px)}}@keyframes draw-toolpath{0%,8%{stroke-dashoffset:32;opacity:0}18%,82%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:.3}}.empty .path-mark{margin-bottom:14px}.empty .home-flow{margin:22px 0 18px}.data-flow{position:relative;width:70px;height:82px;display:block;overflow:hidden}.data-flow span{position:absolute;left:0;top:calc(var(--token) * 18px);font:700 8px ui-monospace,SFMono-Regular,monospace;white-space:nowrap;color:#76d7e8;text-shadow:0 0 10px #76d7e899;animation:gcode-stream 2.6s linear infinite}.data-flow span:nth-child(1){--token:0;animation-delay:0s}.data-flow span:nth-child(2){--token:1;animation-delay:.55s}.data-flow span:nth-child(3){--token:2;animation-delay:1.1s}.data-flow span:nth-child(4){--token:3;animation-delay:1.65s}@keyframes gcode-stream{0%{opacity:0;transform:translate(-22px)}18%{opacity:1}82%{opacity:1}to{opacity:0;transform:translate(66px)}}.home-actions{width:min(420px,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.action-card{min-height:94px;border-radius:17px;border:1px solid #3d4d46;background:#18201e;color:#eaf2ec;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding:13px 14px;text-align:left;cursor:pointer;font:inherit}.action-card svg{color:#76d7e8}.action-card strong{font-size:13px;line-height:1.1}.action-card small{font:10px ui-monospace,SFMono-Regular,monospace;color:#91a098;line-height:1.25}.open-card{border-style:dashed;border-color:#60766a;background:linear-gradient(145deg,#1e2a26,#151c1a)}.demo-button.action-card{margin:0;padding:13px 14px;background:#d7ff53;border:1px solid #d7ff53;color:#17210e;font:inherit}.demo-button.action-card svg{color:#17210e}.demo-button.action-card small{color:#4b6331}.demo-loading.action-card{margin:0;color:#d7ff53;border-color:#52685b;background:#18201e;white-space:normal}.demo-loading.action-card strong{font-size:12px}@media(prefers-reduced-motion:reduce){.data-flow i,.toolpath-line,.spin,.data-flow span{animation:none}.toolpath-line{stroke-dashoffset:0}}
