#game-fullscreen-toggle{position:fixed;right:18px;bottom:18px;z-index:9999;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--text);font-size:1.65rem;box-shadow:0 8px 24px #0005}.pfe{max-width:1800px;margin:0 auto;padding:12px;text-align:left}.pfe-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:0 0 14px}.pfe-head h2{margin:0}.pfe-head p{margin:4px 0;color:var(--muted)}.pfe-head-actions{display:flex;gap:8px;flex-wrap:wrap}.pfe-layout{display:grid;grid-template-columns:minmax(165px,220px) minmax(600px,1fr) minmax(180px,245px);gap:14px;align-items:start}.pfe-layout.is-canvas-focus{grid-template-columns:repeat(3,minmax(0,1fr))}.pfe-layout.is-canvas-focus .pfe-stage{grid-column:1/-1;order:-1}.pfe-panel{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.pfe-panel.is-floating{position:fixed;z-index:9000;max-height:calc(100dvh - 12px);overflow:auto;box-shadow:0 24px 70px #0008}.pfe-panel>summary{display:flex;align-items:center;gap:8px;min-height:52px;padding:0 15px;color:var(--text);font-weight:900;cursor:pointer;list-style:none}.pfe-panel>summary::-webkit-details-marker{display:none}.pfe-panel>summary:after{content:'⌄';margin-left:auto;color:var(--accent);font-size:1.3rem}.pfe-panel[open]>summary{border-bottom:1px solid var(--line)}.pfe-panel[open]>summary:after{content:'⌃'}.pfe-grab{display:inline-grid;place-items:center;width:25px;height:29px;border-radius:7px;color:var(--accent);cursor:grab;touch-action:none}.pfe-grab:active{cursor:grabbing;background:var(--surface2)}.pfe-panel-body{display:grid;gap:10px;padding:12px}.pfe-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pfe button,.pfe select,.pfe input[type=color]{font:inherit}.pfe button{min-height:38px;padding:7px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--text);font-weight:800;cursor:pointer}.pfe button:hover,.pfe button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 22%,var(--surface2))}.pfe .pfe-save{background:var(--accent);color:#142033;border-color:transparent}.pfe-field{display:grid;gap:4px;color:var(--muted);font-size:.84rem;font-weight:800}.pfe-field input[type=range]{width:100%;accent-color:var(--accent)}.pfe-field input[type=color]{width:100%;height:36px;padding:2px}.pfe-stage{min-width:0;padding:12px;border-radius:20px;background:linear-gradient(145deg,var(--surface),var(--surface2));box-shadow:var(--shadow)}.pfe-canvas-wrap{position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;border-radius:12px;background:#fff;isolation:isolate}.pfe-canvas-wrap canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.pfe-overlay{z-index:3}.pfe-library{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;max-height:310px;overflow:auto;padding-right:2px}.pfe-library button{font-size:1.15rem;min-width:0}.pfe-categories{display:flex;flex-wrap:wrap;gap:6px}.pfe-categories button{font-size:.72rem;min-height:32px}.pfe-divider{height:1px;background:var(--line);margin:3px 0}.pfe-selected{padding:10px;border-radius:10px;background:var(--surface2);color:var(--muted);font-size:.82rem}.pfe-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.pfe-actions .pfe-save{grid-column:1/-1}.pfe-collection{max-width:1200px;margin:auto}.pfe-collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.pfe-card{padding:10px;text-align:left}.pfe-card canvas{width:100%;aspect-ratio:3/2;display:block;border-radius:10px;background:#fff}.pfe-card h3{margin:10px 0 4px}.pfe-card p,.pfe-card small{margin:0;color:var(--muted)}.pfe-lightbox{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px;overflow:auto;background:#061222d9}.pfe-lightbox-card{width:min(900px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:22px;border-radius:24px;background:var(--surface);text-align:center}.pfe-lightbox canvas{display:block;width:min(100%,760px);max-height:calc(100dvh - 310px);margin:12px auto;aspect-ratio:3/2;object-fit:contain;border-radius:13px;background:#fff}.pfe-lightbox-actions{position:sticky;bottom:-22px;display:flex;justify-content:center;gap:10px;padding:14px 0 2px;background:var(--surface)}.pfe-name-input{min-width:0;width:100%;min-height:40px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--text)}@media(max-width:1050px){.pfe-layout{grid-template-columns:minmax(180px,235px) minmax(0,1fr)}.pfe-layout>.pfe-panel:last-child{grid-column:1/-1}.pfe-layout>.pfe-panel:last-child .pfe-panel-body{grid-template-columns:repeat(3,minmax(0,1fr))}.pfe-layout>.pfe-panel:last-child .pfe-library,.pfe-layout>.pfe-panel:last-child .pfe-categories,.pfe-layout>.pfe-panel:last-child .pfe-divider{grid-column:1/-1}}@media(max-width:700px){.pfe{padding:6px}.pfe-head{align-items:flex-start}.pfe-layout{grid-template-columns:1fr}.pfe-stage{order:-1;padding:7px}.pfe-layout>.pfe-panel:last-child{grid-column:auto}.pfe-layout>.pfe-panel:last-child .pfe-panel-body{grid-template-columns:1fr}.pfe-panel-body{grid-template-columns:repeat(2,minmax(0,1fr))}.pfe-panel-body>.pfe-tools,.pfe-panel-body>.pfe-library,.pfe-panel-body>.pfe-categories,.pfe-panel-body>.pfe-divider,.pfe-panel-body>.pfe-actions{grid-column:1/-1}.pfe-field{min-width:0}.pfe-panel.is-floating{width:min(92vw,360px)!important}.pfe-lightbox{padding:8px}.pfe-lightbox-card{max-height:calc(100dvh - 16px);padding:15px}.pfe-lightbox canvas{max-height:calc(100dvh - 265px)}.pfe-lightbox-actions{bottom:-15px}}
.pfe-saved-card{display:grid;align-content:start;gap:8px}.pfe-card-open{display:grid;width:100%;gap:6px;text-align:left}.pfe-card-flag{display:grid;place-items:center;width:100%;aspect-ratio:3/2;overflow:hidden;border-radius:10px;background:#fff}.pfe-card-flag img{display:block;max-width:100%;max-height:100%;object-fit:contain}.pfe-saved-actions{display:flex;flex-wrap:wrap;gap:6px}.pfe-saved-actions button{flex:1 1 115px}.pfe-saved-actions .pfe-representative{border-color:var(--accent)}.pfe-saved-actions .pfe-delete{color:#a22}
.pfe-neon-palette{display:flex;flex-wrap:wrap;gap:7px}.pfe-neon-palette button{flex:0 0 27px;width:27px;height:27px;min-height:27px;padding:0;border:2px solid #ffffffaa;border-radius:50%;background:var(--swatch);box-shadow:0 0 7px color-mix(in srgb,var(--swatch) 65%,transparent)}.pfe-neon-palette button.active{outline:2px solid var(--text);outline-offset:2px}.pfe-webm-status{min-height:1.4em;color:var(--muted);font-size:.9rem}
