/* 沿用透空星空侧栏，固定高频动作，正文承担唯一滚动。 */
.particle-console{position:fixed;z-index:40;right:16px;top:20px;bottom:20px;width:min(420px,calc(100vw - 32px));display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;box-sizing:border-box;background:linear-gradient(135deg,#111922f5,#090e16f2);border:1px solid #8da6b64a;border-radius:12px;box-shadow:0 20px 80px #0009;backdrop-filter:blur(18px);color:#dce4ed;overflow:hidden;font:13px/1.6 Arial,"Microsoft YaHei",sans-serif;touch-action:pan-y}.particle-console[hidden],.particle-console [hidden]{display:none!important}.particle-console *{box-sizing:border-box;min-width:0}.particle-console header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px 8px}.particle-console small{font-size:10px;letter-spacing:2px;color:#c5b18a}.particle-console h2{font-size:20px;font-weight:500;margin:3px 0 0;letter-spacing:1px}.particle-console button,.particle-file{border:1px solid #8095a061;background:#c0d6e908;border-radius:5px;color:#d4dfe9;min-height:36px;padding:6px 10px;cursor:pointer;font:inherit;transition:background .15s,border-color .15s,color .15s}.particle-console button:hover,.particle-file:hover{border-color:#d1b680;color:#f4dfb5}.particle-console button:active{background:#d1b68020}.particle-console button:disabled{opacity:.4;cursor:default}.particle-console :focus-visible{outline:2px solid #e4c994;outline-offset:2px}.particle-console header button{width:40px;min-height:40px;font-size:24px;flex:none}.particle-console .particle-primary{background:#d5b9821c;border-color:#d5b98299;color:#f0d8aa}.particle-note{font-size:12px;color:#aebfcf;line-height:1.8;margin:10px 0}.particle-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.particle-console .particle-create-actions{padding:12px 20px;margin:0;border-top:1px solid #8096a837;background:#0a111b}.particle-session{padding:0 20px 8px}.particle-session .particle-toolbar{margin:8px 0}.particle-session #particle-pause{margin-left:auto}.particle-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:4px 16px 10px;border-bottom:1px solid #8096a837}.particle-nav button{padding:5px 0;border-color:transparent;color:#aebfcf;background:transparent}.particle-nav [aria-current=true]{color:#f0d8aa;border-color:#c7ad7466;background:#d5b9820c}.particle-scroll{overflow-y:auto;overscroll-behavior:none;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#8193a45c transparent;padding:0 20px 24px;scroll-padding-top:12px}.particle-console details{border-top:1px solid #8096a82b;padding-top:14px;margin-top:16px;scroll-margin-top:12px}.particle-console summary{cursor:pointer;color:#ddc79f;letter-spacing:.3px;padding:6px 0;margin-bottom:10px;min-height:36px}.particle-console label{display:flex;flex-direction:column;font-size:13px;color:#bbcbd9;gap:5px;margin:10px 0}.particle-console input,.particle-console select,.particle-console textarea{width:100%;border:1px solid #839aae66;border-radius:4px;background:#090f18;color:#e1ebf4;padding:8px;font:13px/1.4 Arial,"Microsoft YaHei",sans-serif;color-scheme:dark;font-variant-numeric:tabular-nums}.particle-console input[type=number]{min-height:36px;cursor:ew-resize;appearance:textfield}.particle-console input[type=number]::-webkit-inner-spin-button,.particle-console input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.particle-console input[type=number]:focus{cursor:text}.particle-console textarea{resize:vertical;max-height:400px}.particle-number{flex-direction:row!important;align-items:center;justify-content:space-between;gap:12px!important}.particle-number>span{width:118px;flex:none}.particle-number output{display:block;text-align:right;color:#d1b680;font-size:12px}.particle-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.particle-grid.three{grid-template-columns:repeat(3,1fr)}.particle-console fieldset{border:0;padding:0;margin:20px 0}.particle-console legend{padding:0 0 4px;font-size:12px;color:#d2c7b1;letter-spacing:.3px}.particle-object-actions summary,#particle-section-reset summary{color:#b4c1ce;font-size:12px}#particle-map{display:block;width:100%;aspect-ratio:5/2.7;border:1px solid #8096a854;border-radius:6px;background:#060b13;touch-action:none;cursor:crosshair}#particle-status,#particle-runtime-status{font-size:12px;line-height:1.7;color:#d1ba90;margin:6px 0 0;overflow-wrap:anywhere}#particle-runtime-status:empty{display:none}#particle-status[data-error=true]{color:#ffbe9a}.particle-file input{padding:0;border:0;background:none}.particle-file{margin:0!important;max-width:100%}#particle-console-button{white-space:nowrap}.particle-console input:invalid{border-color:#dc9975}.particle-dragging,.particle-dragging *{cursor:ew-resize!important;user-select:none}.particle-console .particle-scrubbing{border-color:#e4c994;background:#211e19}
.particle-placement{position:fixed;inset:0;z-index:39;cursor:crosshair;border:1px solid #d9bd8266;outline:none}.particle-placement span{position:absolute;left:50%;top:24px;transform:translateX(-50%);background:#0b1521e6;color:#e0c99f;padding:10px 20px;border:1px solid #ad95665c;border-radius:20px;font:12px/1.6 Arial,"Microsoft YaHei",sans-serif;pointer-events:none}
@media(max-width:600px){.particle-console{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));left:max(8px,env(safe-area-inset-left));width:auto;max-height:calc(100dvh - 16px)}.particle-console header{padding:14px 16px 6px}.particle-console .particle-create-actions{padding:12px 20px;margin:0;border-top:1px solid #8096a837;background:#0a111b}.particle-session{padding:0 16px 8px}.particle-scroll{padding:0 16px 24px}.particle-nav{padding:0 12px 8px}.particle-console button,.particle-file,.particle-console summary{min-height:44px}.particle-console input,.particle-console select,.particle-console textarea{font-size:16px;min-height:44px}.particle-number>span{width:112px}.particle-console h2{font-size:19px}.particle-console #particle-console-close{width:44px;min-height:44px}.footer-actions{gap:10px}#particle-console-button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.particle-console button,.particle-file{transition:none}}

.particle-scroll::after{content:'';display:block;height:var(--particle-tail-space,0px);pointer-events:none}
/* 模块与控件两级磨砂表面；不支持模糊时保留上面的深色可读背景。 */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .particle-console{background:linear-gradient(135deg,#111b29b0,#080f1b9e);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
  .particle-console input[type=number],.particle-console select,.particle-console textarea{background:#0a15294d;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
  .particle-console button,.particle-console .particle-file{background:#17263840;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
  .particle-console .particle-primary{background:#d5b98229}
  .particle-console .particle-create-actions{background:#0a111b4d}
  .particle-console .particle-nav [aria-current=true]{background:#d5b9821c}
  #particle-map{background:#060b1373}
}
.particle-console .particle-reset-feedback{border-color:#e4c994}
