/* Pop-up Book editor — scoped under .pbe. Uses the same palette as the viewer. */
.pbe{--e-bg:#f6f4ef;--e-panel:#fffdf9;--e-line:#e6e0d4;--e-ink:#2b2a2e;--e-muted:#6c675f;--e-teal:#2f6f73;--e-teal-soft:#e3efef;--e-danger:#b3473f;
  display:grid;grid-template-columns:minmax(320px,400px) 1fr;height:100%;min-height:0;background:var(--e-bg);color:var(--e-ink);
  font:14px/1.45 "Figtree",system-ui,sans-serif;position:relative}
@media (prefers-color-scheme:dark){.pbe:not([data-theme="light"]){--e-bg:#18181b;--e-panel:#1f1f23;--e-line:#33333a;--e-ink:#ece8e1;--e-muted:#a8a29a;--e-teal-soft:#20393a}}
.pbe[data-theme="dark"]{--e-bg:#18181b;--e-panel:#1f1f23;--e-line:#33333a;--e-ink:#ece8e1;--e-muted:#a8a29a;--e-teal-soft:#20393a}
.pbe *{box-sizing:border-box}
.pbe-panel{overflow:auto;background:var(--e-panel);border-right:1px solid var(--e-line);padding:0 18px 40px;min-height:0}
.pbe-preview{position:relative;min-height:0}
.pbe-viewer{position:absolute;inset:0}
@media (max-width:860px){.pbe{grid-template-columns:1fr;grid-template-rows:minmax(300px,48%) 1fr}.pbe-preview{order:-1;border-bottom:1px solid var(--e-line)}.pbe-panel{border-right:0}}
.pbe-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0 12px;background:var(--e-panel);border-bottom:1px solid var(--e-line)}
.pbe-title{display:flex;flex-direction:column;min-width:0}.pbe-title b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pbe-title span{font-size:12px;color:var(--e-muted);letter-spacing:.06em;text-transform:uppercase}
.pbe-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.pbe-btn{font:500 14px/1 inherit;font-family:inherit;color:var(--e-ink);background:transparent;border:1px solid var(--e-line);border-radius:999px;padding:9px 14px;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.pbe-btn:hover:not([disabled]){border-color:var(--e-teal);color:var(--e-teal)}
.pbe-btn:focus-visible,.pbe select:focus-visible,.pbe input:focus-visible,.pbe textarea:focus-visible,.pbe-lhead:focus-visible{outline:2px solid var(--e-teal);outline-offset:2px}
.pbe-btn[disabled]{opacity:.4;cursor:default}
.pbe-btn.small{padding:7px 12px;font-size:13px}
.pbe-btn.ghost{border-color:transparent;font-size:18px;padding:6px 10px}
.pbe-btn.primary{background:var(--e-teal);border-color:var(--e-teal);color:#fff}.pbe-btn.primary:hover:not([disabled]){color:#fff;filter:brightness(1.08)}
.pbe-btn.danger{color:var(--e-danger)}.pbe-btn.danger:hover{border-color:var(--e-danger);color:var(--e-danger)}
.pbe-btn.armed{background:var(--e-danger);border-color:var(--e-danger);color:#fff}
.pbe-langbar{padding:12px 0 4px}
.pbe-sec{border-bottom:1px solid var(--e-line);padding:14px 0}
.pbe-sec>summary{cursor:pointer;font-weight:600;font-size:15px;list-style:none;display:flex;justify-content:space-between}
.pbe-sec>summary::after{content:"▸";color:var(--e-muted)}.pbe-sec[open]>summary::after{content:"▾"}
.pbe-sec>summary::-webkit-details-marker{display:none}
.pbe-sechead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.pbe-sechead h3{margin:0;font-size:15px}
.pbe-field{display:flex;flex-direction:column;gap:5px;margin:12px 0 0}
.pbe-label{font-size:12px;font-weight:600;color:var(--e-muted);letter-spacing:.03em;display:flex;justify-content:space-between}
.pbe-label output{font-variant-numeric:tabular-nums;font-weight:500}
.pbe-hint{font-size:12px;color:var(--e-muted);margin:4px 0 0}
.pbe input:not([type]),.pbe input[type=text],.pbe textarea,.pbe select{width:100%;font:inherit;color:var(--e-ink);background:var(--e-bg);border:1px solid var(--e-line);border-radius:10px;padding:9px 11px}
.pbe textarea{resize:vertical;min-height:84px;font-size:15px;line-height:1.4}
.pbe-cover{display:flex;align-items:center;gap:12px;margin-top:12px}
.pbe-cover img{width:72px;aspect-ratio:3/4;object-fit:cover;border-radius:4px;box-shadow:0 2px 8px #0002;background:var(--e-bg)}
.pbe-spreads{display:flex;flex-wrap:wrap;gap:6px}
.pbe-chip{min-width:40px;height:40px;border-radius:12px;border:1px solid var(--e-line);background:var(--e-bg);color:var(--e-ink);font:600 15px inherit;font-family:inherit;cursor:pointer}
.pbe-chip.on{background:var(--e-teal);border-color:var(--e-teal);color:#fff}
.pbe-chip:hover:not(.on){border-color:var(--e-teal)}
.pbe-spreadtools{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.pbe-row{display:flex;align-items:flex-end;gap:8px}.pbe-row .pbe-field{flex:1}
.pbe-row.checks{gap:16px;flex-wrap:wrap;margin-top:12px}
.pbe-check{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;margin-top:10px}
.pbe-check input{width:18px;height:18px;accent-color:var(--e-teal)}
.pbe-layers{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.pbe-layer{border:1px solid var(--e-line);border-radius:14px;background:var(--e-bg);overflow:hidden}
.pbe-layer.open{border-color:var(--e-teal)}
.pbe-lhead{display:flex;align-items:center;gap:10px;padding:8px 12px 8px 8px;cursor:pointer}
.pbe-lhead img{width:52px;height:40px;object-fit:contain;border-radius:6px;background:repeating-conic-gradient(#0000000d 0 25%,#0000 0 50%) 0 0/10px 10px}
.pbe-lname{flex:1;min-width:0;display:flex;flex-direction:column}.pbe-lname b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pbe-lname span{font-size:12px;color:var(--e-muted)}
.pbe-caret{color:var(--e-muted)}
.pbe-lbody{padding:0 12px 14px}
.pbe-slider{display:flex;flex-direction:column;gap:4px;margin-top:12px}
.pbe-slider input[type=range]{width:100%;accent-color:var(--e-teal)}
.pbe-empty{color:var(--e-muted);font-size:13px;padding:6px 2px}
.pbe-toast{position:absolute;left:50%;bottom:20px;transform:translate(-50%,20px);background:#1d2b36;color:#fff;padding:10px 16px;border-radius:999px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10}
.pbe-toast.on{opacity:1;transform:translate(-50%,0)}
