.preview-wrap{gap:8px;margin-bottom:12px;display:grid}.preview-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.preview-head-actions{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.preview-efficiency{border:1px solid color-mix(in srgb, var(--md-outline) 24%, transparent);background:var(--md-surface-container-low);border-radius:999px;align-items:baseline;gap:8px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.preview-overlay-controls{border:1px solid color-mix(in srgb, var(--md-outline) 20%, transparent);background:var(--md-surface-container-low);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:8px 10px;display:flex}.preview-overlay-toggle{font-size:12px;font-weight:600}.preview-overlay-slider{min-width:min(100%,220px);color:var(--md-muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.preview-overlay-slider input[type=range]{flex:1;min-width:88px}.preview-overlay-slider strong{min-width:3.2em;color:var(--md-on-surface);text-align:right;font-size:12px}.preview-scale{border:1px solid color-mix(in srgb, var(--md-outline) 28%, transparent);background:var(--md-surface-container-low);border-radius:999px;padding:3px;display:inline-flex;overflow:hidden}.scale-button{color:var(--md-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 10px;font-size:12px;line-height:16px;transition:background-color .14s cubic-bezier(.2,0,0,1),color .14s cubic-bezier(.2,0,0,1)}.scale-button:hover,.scale-button.active{background:var(--md-primary-container);color:var(--md-on-primary-container)}.scale-current{color:var(--md-on-surface);white-space:nowrap;align-items:center;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.composite-preview{border:1px solid color-mix(in srgb, var(--md-outline) 24%, transparent);background:var(--md-surface-container);border-radius:18px;padding:8px;overflow:auto}.composite-stage{width:min(100%,960px);margin:0 auto;position:relative}.composite-canvas{border:1px solid color-mix(in srgb, var(--md-outline) 24%, transparent);background:var(--md-surface);width:100%;height:auto;image-rendering:pixelated;border-radius:12px;display:block}.preview-grid-overlay{pointer-events:none;border-radius:11px;display:grid;position:absolute;inset:1px;overflow:hidden}.preview-player-marker{z-index:2;pointer-events:none;background:#e60012;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000008c}.preview-cell{min-width:0;min-height:0}.preview-cell.empty{pointer-events:none}.preview-cell.selectable{cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:0;transition:background-color .14s cubic-bezier(.2,0,0,1),box-shadow .14s cubic-bezier(.2,0,0,1),transform .14s cubic-bezier(.2,0,0,1);box-shadow:inset 0 0 0 1px #0000}.preview-cell.selectable:hover{background:color-mix(in srgb, var(--md-primary) 10%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--md-primary) 78%, transparent)}.preview-cell.selectable.selected{background:color-mix(in srgb, var(--md-primary) 18%, transparent);box-shadow:inset 0 0 0 1px var(--md-primary), inset 0 0 0 999px color-mix(in srgb, var(--md-primary-container) 10%, transparent);animation:.18s cubic-bezier(.2,0,0,1) preview-cell-select}.preview-cell.selectable:focus-visible{outline:3px solid var(--md-primary);outline-offset:-3px}@keyframes preview-cell-select{0%{background:0 0;box-shadow:inset 0 0 0 1px #0000,inset 0 0 0 999px #0000}to{background:color-mix(in srgb, var(--md-primary) 18%, transparent);box-shadow:inset 0 0 0 1px var(--md-primary), inset 0 0 0 999px color-mix(in srgb, var(--md-primary-container) 10%, transparent)}}@media (prefers-reduced-motion:reduce){.preview-cell.selectable.selected{animation:none}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15121b;--surface:#211c29;--surface2:#2c2636;--line:#41394d;--text:#f2ebf5;--muted:#bdb3c6;--violet:#cbb7ff;--violet2:#7655bd;--cyan:#6ee7df;--danger:#ffafa8;background:var(--bg);color:var(--text);font-family:Inter,Noto Sans TC,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 76% -10%,#7655bd40,transparent 34rem),var(--bg);min-width:320px;min-height:100dvh;margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.cloud-shell{grid-template-columns:260px minmax(0,1fr);min-height:100dvh;display:grid}.cloud-sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#15121be0;flex-direction:column;gap:30px;height:100dvh;padding:26px 18px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#241b31;background:linear-gradient(135deg,var(--violet),var(--cyan));border-radius:14px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 8px 28px #6ee7df29}.brand svg{width:21px}.brand div{display:grid}.brand small{color:var(--muted);letter-spacing:.22em;font-size:10px;font-weight:800}.brand strong{font-size:17px}.cloud-sidebar nav{gap:5px;display:grid}.cloud-sidebar nav button{min-height:44px;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:11px;padding:0 13px;display:flex}.cloud-sidebar nav button svg{width:18px}.cloud-sidebar nav button:hover{background:var(--surface);color:var(--text)}.cloud-sidebar nav button.active{color:var(--text);box-shadow:inset 3px 0 var(--violet);background:linear-gradient(90deg,#7655bd6b,#7655bd24)}.identity{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding:18px 8px 0;display:flex}.identity div{min-width:0;display:grid}.identity small{color:var(--cyan);font-size:11px}.avatar{color:#21172f;background:var(--violet);border-radius:50%;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.cloud-main{min-width:0;padding:52px clamp(24px,4vw,68px) 80px;position:relative}.page{gap:26px;max-width:1260px;margin:auto;animation:.22s ease-out enter;display:grid}@keyframes enter{0%{opacity:0;transform:translateY(7px)}}.page-head p,.kicker{color:var(--cyan);letter-spacing:.2em;margin:0 0 8px;font-size:11px;font-weight:900}.page-head h1{letter-spacing:-.035em;margin:0;font:700 clamp(30px,4vw,48px)/1.08 Georgia,Noto Serif TC,serif}.page-head span{max-width:700px;color:var(--muted);margin-top:12px;line-height:1.7;display:block}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric{border:1px solid var(--line);background:linear-gradient(145deg,#2c2636e6,#211c29e6);border-radius:20px;gap:14px;min-height:126px;padding:22px;display:grid}.metric small{color:var(--muted)}.metric strong{align-self:end;font-size:27px}.metric.accent{background:linear-gradient(145deg,#19494a99,var(--surface));border-color:#6ee7df66}.split-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:14px;display:grid}.panel{border:1px solid var(--line);background:#211c29d6;border-radius:22px;min-width:0;padding:22px;box-shadow:0 16px 50px #0000001f}.panel-title h2{margin:0;font-size:18px}.panel-title p{color:var(--muted);margin:5px 0 18px;font-size:12px}.task-row,.agent-row{border-top:1px solid #41394db8;align-items:center;gap:12px;min-height:64px;display:flex}.task-row>div,.agent-row>div{gap:3px;min-width:0;display:grid}.task-row small,.agent-row small{color:var(--muted)}.task-row code{color:var(--muted);margin-left:auto}.status,.online-dot,.offline-dot{background:#8c8296;border-radius:50%;flex:none;width:9px;height:9px}.online-dot,.status-running,.status-completed{background:var(--cyan);box-shadow:0 0 13px #6ee7df8c}.offline-dot,.status-error{background:var(--danger)}.status-license_paused,.status-paused,.status-blocked{background:#ffd27d}.row-actions{grid-auto-flow:column;margin-left:auto;display:flex!important}.row-actions button,.token-row button{border:1px solid var(--line);color:var(--muted);background:var(--surface2);cursor:pointer;border-radius:9px;padding:6px 9px}.task-layout{align-items:start}.task-form{gap:15px;display:grid}.task-form label,.rename-builder label{color:var(--muted);gap:7px;font-size:12px;display:grid}input,select{border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);background:#17131d;border-radius:12px;outline:0;padding:0 13px}input:focus,select:focus{border-color:var(--violet);box-shadow:0 0 0 3px #cbb7ff1a}label small{color:var(--muted)}.asset-upload{border:1px dashed var(--line);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;display:grid}.asset-upload .ghost-button{min-width:max-content}.file-picker{border:1px dashed var(--line);background:var(--surface2);cursor:pointer;border-radius:16px;align-items:center;min-width:0;min-height:66px;padding:10px 13px;transition:border-color .16s,background .16s,transform .16s;color:var(--text)!important;grid-template-columns:none!important;gap:11px!important;display:flex!important}.file-picker:hover{border-color:var(--violet);background:var(--md-primary-container);transform:translateY(-1px)}.file-picker:focus-within{border-color:var(--cyan);outline:3px solid color-mix(in srgb,var(--cyan) 18%,transparent)}.file-picker input{clip-path:inset(50%);width:1px;min-height:1px;margin:-1px;position:absolute}.file-picker svg{width:20px;color:var(--violet);flex:none}.file-picker>span{gap:3px;min-width:0;display:grid}.file-picker strong,.file-picker small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-picker strong{font-size:13px}.file-picker small{color:var(--muted);font-size:11px}.primary-button,.ghost-button{cursor:pointer;border:0;border-radius:13px;justify-content:center;align-items:center;gap:9px;width:max-content;min-height:44px;padding:0 17px;text-decoration:none;display:inline-flex}.primary-button{color:#241934;background:linear-gradient(135deg,var(--violet),#9bdbdd);font-weight:800;box-shadow:0 9px 28px #7655bd33}.primary-button:disabled{opacity:.45;cursor:not-allowed}.primary-button svg,.ghost-button svg{width:18px}.ghost-button{border:1px solid var(--line);color:var(--text);background:#211c29b3}.rename-builder{gap:10px;display:grid}.token-row{flex-wrap:wrap;gap:6px;display:flex}.name-preview{border:1px solid var(--line);background:#0f0c13;border-radius:12px;gap:5px;padding:12px;display:grid}.name-preview small{color:var(--muted)}.callout,.offline-pay{border-left:3px solid var(--cyan);color:var(--muted);background:#6ee7df12;margin:0;padding:12px 14px;line-height:1.6}.gallery-grid,.device-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.gallery-card,.device-card{border:1px solid var(--line);background:var(--surface);border-radius:20px;padding:16px;position:relative;overflow:hidden}.gallery-art{object-fit:contain;width:calc(100% + 32px);height:170px;image-rendering:pixelated;filter:saturate(.75);background:conic-gradient(from 45deg,#293b48,#7a5ca7,#264e50,#a86c88,#293b48);margin:-16px -16px 14px;display:block}.gallery-card h3,.device-card h3{margin:4px 0 14px}.gallery-card small,.device-card p{color:var(--muted)}.mosaic-panel{overflow:hidden}.mosaic-panel>h2{margin:0 0 14px}.device-card>svg{width:30px;color:var(--violet)}.device-card .online-dot,.device-card .offline-dot{position:absolute;top:20px;right:20px}.device-card code{color:var(--muted);text-overflow:ellipsis;display:block;overflow:hidden}.asset-preview{border:1px solid var(--line);background:#0f0c13;border-radius:16px;gap:10px;min-width:0;padding:14px;display:grid;overflow:hidden}.asset-preview>header{justify-content:space-between;gap:12px;display:flex}.asset-preview>header small{color:var(--muted)}.render-group{gap:12px;display:grid}.render-group>h2{margin:10px 0 0}.render-group .mosaic-panel>h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px;font-size:13px}.admin-layout{grid-template-columns:minmax(360px,1.1fr) minmax(320px,.9fr);align-items:start;gap:14px;display:grid}.member-list{gap:10px;display:grid}.member-row{border:1px solid var(--line);width:100%;color:var(--text);text-align:left;background:#17131d;border-radius:14px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.member-row:hover,.member-row.active{border-color:var(--violet);background:#cbb7ff1a}.member-row>span{gap:2px;min-width:0;display:grid}.member-row>span:last-child{text-align:right}.member-row small{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.member-row .avatar{background:var(--violet);color:#21182e;border-radius:13px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.quota-banner{background:linear-gradient(110deg,#20525280,#2c2636b3);border:1px solid #6ee7df59;border-radius:22px;grid-template-columns:repeat(4,1fr);display:grid}.quota-banner div{gap:7px;padding:24px;display:grid}.quota-banner small,.quota-banner span{color:var(--muted)}.quota-banner strong{font-size:23px}.dashboard-plans button{text-align:left;cursor:pointer}.plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:min(1050px,100%);display:grid}.plan{border:1px solid var(--line);min-height:180px;color:var(--text);background:var(--surface);border-radius:22px;gap:11px;padding:24px;display:grid}.plan small,.plan span{color:var(--muted)}.plan strong{font:700 31px Georgia,serif}.plan.featured{border-color:var(--violet);background:linear-gradient(145deg,#7655bd5c,var(--surface));transform:translateY(-8px)}.preference-list label{border-top:1px solid var(--line);justify-content:space-between;align-items:center;min-height:58px;display:flex}.preference-list input{width:20px;min-height:20px;accent-color:var(--cyan)}.empty{min-height:170px;color:var(--muted);text-align:center;place-items:center;gap:10px;display:grid}.empty svg{color:var(--violet);opacity:.7}.landing{background:linear-gradient(90deg,#15121bfa 0 47%,#15121b8c),radial-gradient(circle at 78% 34%,#6ee7df3b,#0000 20rem),linear-gradient(135deg,#231b30,#172d31);gap:70px;min-height:100dvh;padding:26px clamp(24px,6vw,90px) 70px;display:grid}.landing>header{justify-content:space-between;align-items:center;display:flex}.hero{align-self:center;max-width:850px}.hero h1{letter-spacing:-.055em;margin:0;font:700 clamp(45px,7vw,88px)/.98 Georgia,Noto Serif TC,serif}.hero h1 em{color:var(--cyan);font-style:normal}.hero>p:not(.kicker){max-width:680px;color:var(--muted);margin:25px 0;font-size:17px;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.release-note{color:var(--muted);margin-top:12px;display:block}.public-share{gap:50px;min-height:100dvh;padding:26px clamp(20px,6vw,90px) 70px;display:grid}.public-share>header{justify-content:space-between;align-items:center;display:flex}.public-share>article{grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr);align-items:center;gap:34px;width:100%;max-width:1200px;margin:auto;display:grid}.public-share h1{margin:0;font:700 clamp(40px,6vw,76px)/1 Georgia,Noto Serif TC,serif}.public-share .share-copy>p:last-child,.share-note{color:var(--muted);line-height:1.7}.public-share img{border:1px solid var(--line);width:100%;image-rendering:pixelated;border-radius:24px;box-shadow:0 25px 70px #0007}.public-share .gallery-art{border-radius:24px;min-height:480px}.share-note{text-align:center;grid-column:1/-1}.legal-page{min-height:100dvh;padding:26px clamp(20px,6vw,90px) 70px}.legal-page>header{justify-content:space-between;align-items:center;display:flex}.legal-page>article{max-width:900px;margin:64px auto 0}.legal-page h1{margin:0 0 36px;font-size:clamp(34px,5vw,58px)}.legal-page h2{margin:40px 0 12px;font-size:22px}.legal-page p,.legal-page li,.legal-page dd{color:var(--muted);line-height:1.9}.legal-page ol{padding-left:1.6em}.legal-page li+li{margin-top:8px}.legal-page dl{grid-template-columns:max-content 1fr;gap:8px 24px;display:grid}.legal-page dt{font-weight:700}.legal-page dd{margin:0}.legal-page footer{border-top:1px solid var(--line);margin-top:54px;padding-top:20px}.legal-page footer p{margin:4px 0}.toast{z-index:50;color:var(--text);cursor:pointer;background:#233839;border:1px solid #6ee7df66;border-radius:13px;padding:12px 17px;position:fixed;top:18px;right:22px;box-shadow:0 10px 40px #0008}.loading-line{z-index:60;background:var(--cyan);width:40%;height:3px;animation:1s infinite alternate loading;position:fixed;top:0;left:0}@keyframes loading{to{left:60%}}.mobile-menu,.close-menu{display:none}@media (width<=950px){.cloud-shell{grid-template-columns:1fr}.cloud-sidebar{width:260px;transition:left .2s;position:fixed;left:-280px}.cloud-sidebar.open{left:0}.mobile-menu{z-index:19;border:1px solid var(--line);width:42px;height:42px;color:var(--text);background:var(--surface);border-radius:13px;place-items:center;display:grid;position:fixed;top:16px;left:16px}.close-menu{color:var(--muted);background:0 0;border:0;display:block;position:absolute;top:18px;right:12px}.cloud-main{padding-top:82px}.metric-grid{grid-template-columns:repeat(2,1fr)}.split-grid,.admin-layout{grid-template-columns:1fr}}@media (width<=620px){.cloud-main{padding-left:15px;padding-right:15px}.metric-grid,.gallery-grid,.device-grid,.plans,.quota-banner,.public-share>article,.asset-upload{grid-template-columns:1fr}.asset-upload .ghost-button{width:100%}.plan.featured{transform:none}.landing{gap:45px;padding:20px}.landing>header .ghost-button{display:none}.hero h1{font-size:46px}.row-actions{flex-wrap:wrap;justify-content:flex-end}.legal-page dl{grid-template-columns:1fr;gap:2px}.legal-page dd{margin-bottom:10px}}:root{--bg:#121318;--surface:#1d1e24;--surface2:#292a31;--line:#45464f;--text:#e5e1ea;--muted:#c7c4ce;--violet:#c9b8fa;--violet2:#745bba;--cyan:#b2c8ff;--md-bg:var(--bg);--md-surface:var(--surface);--md-surface-container-low:#191a20;--md-surface-container:var(--surface2);--md-outline:var(--line);--md-on-surface:var(--text);--md-muted:var(--muted);--md-primary:var(--violet);--md-primary-container:#373249;--md-on-primary-container:#eee8ff;font-family:Noto Sans TC,Segoe UI,sans-serif}body,.landing{background:var(--bg)}.cloud-sidebar{-webkit-backdrop-filter:none;backdrop-filter:none;background:#191a20}.brand-mark{color:#251a42;background:var(--violet);box-shadow:none;border-radius:14px 14px 14px 5px}.cloud-sidebar nav button{border-radius:24px;min-height:48px;padding-inline:16px}.cloud-sidebar nav button.active{color:#251a42;background:var(--violet);box-shadow:none;font-weight:750}.page-head h1,.hero h1,.public-share h1{font-family:Noto Sans TC,Segoe UI,sans-serif;font-weight:650}.metric{background:var(--surface);border:0;border-radius:24px 24px 8px}.metric.accent,.quota-banner,.plan.featured{background:#303046;border-color:#0000}.panel{background:var(--surface);box-shadow:none;border:0;border-radius:28px 28px 10px}.primary-button{color:#251a42;background:var(--violet);box-shadow:none}.primary-button,.ghost-button{border-radius:22px}.gallery-art{background:var(--surface2)}.landing,.plan.featured{transform:none}.blueprint-picker{border:0;min-width:0;margin:0;padding:0}.blueprint-picker legend{color:var(--text);margin-bottom:8px;font-size:13px;font-weight:700}.blueprint-picker legend span{color:var(--muted);margin-left:8px;font-size:11px;font-weight:400}.import-group-tabs{gap:7px;margin-bottom:9px;display:flex;overflow-x:auto}.import-group-tab{border:1px solid var(--line);min-width:110px;color:var(--muted);background:var(--surface2);cursor:pointer;text-align:left;border-radius:14px;flex:none;gap:2px;padding:8px 12px;display:grid}.import-group-tab small{color:var(--muted)}.import-group-tab.active{border-color:var(--violet);color:var(--text);background:var(--md-primary-container)}.group-toggle{align-items:center;margin-bottom:9px;grid-template-columns:none!important;gap:8px!important;display:flex!important}.group-toggle input{width:18px;min-height:18px;margin:0}.group-toggle span{color:var(--muted);margin-left:auto}.render-group{background:#191a20;border-radius:32px 32px 12px;padding:22px}.render-group-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.render-group-head h2{margin:0}.render-group-head small{color:var(--muted)}.public-share>article{max-width:1100px;display:block}.public-share .share-copy{margin-bottom:24px}.public-share .preview-wrap{width:100%}@media (prefers-reduced-motion:reduce){.page{animation:none}}.sidebar-downloads{border-top:1px solid var(--line);gap:7px;padding:16px 8px 0;display:grid}.sidebar-downloads>small,.sidebar-downloads>span{color:var(--muted);font-size:11px}.sidebar-downloads>a{color:var(--text);background:var(--surface);border-radius:10px;justify-content:space-between;gap:8px;padding:8px 10px;font-size:12px;text-decoration:none;display:flex}.sidebar-downloads>a:hover{background:var(--surface2)}.sidebar-downloads>a span{color:var(--cyan)}
