.pe-root{display:grid;grid-template-columns:auto 1fr 18rem;width:100%;height:100%;min-height:0}.pe-rail{display:flex;flex-direction:column;gap:.15rem;padding:.5rem;background:var(--color-surface);border-right:1px solid var(--color-border);overflow-y:auto}.pe-tool{display:grid;justify-items:center;gap:.15rem;width:4rem;padding:.55rem .25rem;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--color-fg-muted);cursor:pointer;transition:background .12s ease,color .12s ease}.pe-tool:hover{background:var(--color-surface-2);color:var(--color-fg)}.pe-tool.is-active{background:color-mix(in srgb,var(--color-accent) 16%,transparent);color:var(--color-fg);border-color:color-mix(in srgb,var(--color-accent) 40%,transparent)}.pe-tool__icon{font-size:1.15rem;line-height:1;height:1.3rem;display:grid;place-items:center;font-weight:700}.pe-tool__label{font-size:.68rem}.pe-center{display:flex;flex-direction:column;min-width:0;min-height:0}.pe-actionbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.pe-actionbar__group{display:flex;gap:.4rem}.pe-actionbar__title{font-size:.85rem;color:var(--color-fg-subtle);font-weight:560}.pe-loading{flex:1;display:grid;place-items:center;color:var(--color-fg-muted)}.pe-panel{background:var(--color-surface);border-left:1px solid var(--color-border);overflow-y:auto;padding:.9rem}.ed-panel{display:grid;gap:.6rem}.ed-panel__head{display:flex;align-items:center;justify-content:space-between}.ed-panel__head h3{font-size:.95rem;font-weight:620}.ed-panel__body{display:grid;gap:.85rem}.ed-panel__hint{font-size:.76rem;color:var(--color-fg-subtle);line-height:1.5}.ed-panel__section{margin-top:.4rem;display:grid;gap:.5rem}.ed-textbtn{background:none;border:none;color:var(--color-accent);cursor:pointer;font-size:.8rem;padding:0}.ed-textbtn:hover{text-decoration:underline}.ed-fullbtn{width:100%}.ed-btnrow{display:flex;flex-wrap:wrap;gap:.4rem}.ed-btnrow .k-btn.is-active{border-color:var(--color-accent);color:var(--color-fg);box-shadow:inset 0 0 0 1px var(--color-accent)}.ed-field{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.ed-field label,.ed-field-col{display:grid;gap:.3rem;font-size:.8rem;color:var(--color-fg-muted)}.ed-field input,.ed-field-col input[type=number],.ed-field-col textarea,.ed-field-col select,.ed-field-col input[type=text]{width:100%;padding:.4rem .5rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-fg);font:inherit;font-size:.85rem}.ed-field input[type=color],.ed-field-col input[type=color]{padding:0;height:2rem;cursor:pointer}.ed-field-col input[type=range]{accent-color:var(--color-accent)}.ed-check{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--color-fg-muted);cursor:pointer}@media(max-width:860px){.pe-root{grid-template-columns:auto 1fr;grid-template-rows:1fr auto}.pe-panel{grid-column:1 / -1;max-height:40dvh;border-left:none;border-top:1px solid var(--color-border)}}.ed-modal-backdrop{position:fixed;inset:0;background:#00000080;display:grid;place-items:center;z-index:60;padding:1rem}.ed-modal{width:min(28rem,100%);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);overflow:hidden}.ed-modal__head,.ed-modal__foot{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.1rem}.ed-modal__head{border-bottom:1px solid var(--color-border)}.ed-modal__foot{border-top:1px solid var(--color-border);gap:.5rem}.ed-modal__body{padding:1.1rem;display:grid;gap:1rem}.ed-modal h3{font-size:1rem;font-weight:620}.ed-segmented{display:flex;gap:.25rem;margin-top:.35rem}.ed-segmented button{flex:1;padding:.45rem;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-fg-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:.82rem}.ed-segmented button.is-active{border-color:var(--color-accent);color:var(--color-fg);box-shadow:inset 0 0 0 1px var(--color-accent)}.ed-segmented button:disabled{opacity:.4;cursor:not-allowed}.ed-aspectgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem}.ed-aspectchip{padding:.45rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-fg-muted);font-size:.78rem;cursor:pointer;text-align:left}.ed-aspectchip:hover{border-color:var(--color-accent);color:var(--color-fg)}.ed-aspectchip.is-active{border-color:var(--color-accent);color:var(--color-fg);box-shadow:inset 0 0 0 1px var(--color-accent)}.ed-cropdims{margin:.75rem 0;font-size:.82rem;color:var(--color-fg-subtle);font-variant-numeric:tabular-nums}.ed-export-dims{font-size:.82rem;color:var(--color-fg-subtle);font-variant-numeric:tabular-nums}.ed-export-privacy{font-size:.78rem;color:var(--color-fg-subtle);line-height:1.5}.ed-export-done{font-size:.82rem;color:var(--color-success)}.ed-panel__label{font-size:.82rem;color:var(--color-fg-muted);font-weight:560}.ed-filtergrid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.ed-filterchip{display:grid;gap:.35rem;padding:.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-fg-muted);font-size:.75rem;cursor:pointer;align-items:center}.ed-filterchip:hover{border-color:var(--color-accent);color:var(--color-fg)}.ed-filterchip.is-active{border-color:var(--color-accent);color:var(--color-fg);box-shadow:0 0 0 1px var(--color-accent)}.ed-filterchip__swatch{height:34px;width:100%;border-radius:var(--radius-sm);background:linear-gradient(135deg,#6a8cff,#c86bff,#ffb56b)}.ed-filterchip__swatch[data-filter=bw],.ed-filterchip__swatch[data-filter=noir]{filter:grayscale(1) contrast(1.2)}.ed-filterchip__swatch[data-filter=sepia]{filter:sepia(.7)}.ed-filterchip__swatch[data-filter=warm]{filter:saturate(1.3) hue-rotate(-12deg)}.ed-filterchip__swatch[data-filter=cool]{filter:saturate(1.1) hue-rotate(18deg)}.ed-filterchip__swatch[data-filter=fade],.ed-filterchip__swatch[data-filter=matte]{filter:contrast(.8) brightness(1.1)}
