/* Local editor mode: the document remains scrollable and zoomable beside it. */
#chess-panel.position-editor-active { display:block !important; min-height:0; padding:0; overflow:hidden; }
#chess-panel.position-editor-active > :not(#position-editor-dialog) { display:none !important; }
#chess-panel.position-editor-active.diagram-scan-active > #reader-diagram-selection:not([hidden]) { display:flex !important; }
#position-editor-dialog.position-editor-inline[open] {
  position:relative; inset:auto; display:block; width:100%; height:100%; max-width:none;
  max-height:none; margin:0; padding:0; border:0; border-radius:0; overflow:hidden;
  box-shadow:none; background:var(--reader-surface); color:var(--reader-ink);
}
#position-editor-dialog.position-editor-inline > form { display:grid; grid-template-rows:auto auto minmax(0,1fr) auto auto; height:100%; min-height:0; margin:0; }
#position-editor-dialog.position-editor-inline .dialog-heading { display:flex; align-items:center; justify-content:space-between; gap:6px; padding:2px 8px; min-height:42px; border-bottom:1px solid var(--reader-line); }
#position-editor-dialog.position-editor-inline .dialog-heading h2 { font-size:.9rem; margin:0; }
#position-editor-dialog.position-editor-inline .dialog-heading > div { display:flex; align-items:center; gap:4px; }
#position-editor-dialog.position-editor-inline .position-editor-size-button { min-height:40px; padding:4px 8px; font-size:.72rem; white-space:normal; }
#position-editor-dialog.position-editor-inline .position-editor-layout { display:flex; flex-direction:column; align-items:center; gap:6px; min-height:0; padding:6px 8px; overflow:auto; overscroll-behavior:contain; }
#position-editor-dialog.position-editor-inline .position-editor-visual { flex:none; width:100%; }
#position-editor-dialog.position-editor-inline .board-coordinate-frame--editor { width:min(100%,var(--position-editor-size,240px)); max-width:none; }
/* The shared resize helper can leave pixel dimensions on this child. The
   inline editor also changes size when review choices open, without a window
   resize, so keep its actual squares tied to the editor's current host. */
#position-editor-dialog.position-editor-inline #position-editor-board > silicio-board-container { width:100% !important; height:100% !important; }
#position-editor-dialog.position-editor-inline .position-piece-palette { width:min(calc(100% - 16px),440px); grid-template-columns:repeat(9,minmax(0,1fr)); gap:3px; margin:4px auto; flex:none; }
#position-editor-dialog.position-editor-inline .position-piece-palette button { height:38px; min-width:0; width:100%; padding:2px; aspect-ratio:auto; }
#position-editor-dialog.position-editor-inline .position-piece-palette img { width:min(100%,32px); height:32px; object-fit:contain; }
#position-editor-dialog.position-editor-inline .position-piece-button--pointer img,
#position-editor-dialog.position-editor-inline .position-piece-button--erase img { width:23px; height:23px; }
#position-editor-dialog .position-piece-button--color span { font-size:27px; line-height:1; color:var(--reader-primary-dark); }
#position-editor-dialog.position-editor-inline .position-editor-options { flex:none; display:grid; width:min(100%,500px); gap:5px; }
#position-editor-dialog .position-editor-turn-tools { display:flex; flex-wrap:wrap; align-items:center; gap:6px; justify-content:space-between; padding:2px 8px; border-bottom:1px solid var(--reader-line); }
#position-editor-dialog .position-editor-quick-review { flex:0 0 100%; display:flex; flex-wrap:wrap; align-items:center; gap:4px; font-size:12px; padding-bottom:4px; max-height:110px; overflow:auto; }
#position-editor-dialog .position-editor-quick-review[hidden] {display:none;}
#position-editor-dialog .position-review-square {min-width:36px;min-height:36px;border:1px solid #d2a33c;border-radius:7px;background:#fff4d7;color:#604519;font:inherit;}
#position-editor-dialog .position-review-square[aria-pressed="true"] {outline:2px solid #158577;}
#position-editor-dialog .position-review-options {display:flex;flex-basis:100%;gap:5px;}
#position-editor-dialog .position-review-option {display:flex;align-items:center;justify-content:center;gap:4px;flex:1;min-width:0;min-height:42px;padding:3px;border:1px solid var(--reader-line-strong);background:var(--reader-surface);color:inherit;border-radius:7px;font:inherit;}
#position-editor-dialog .position-review-option img {width:26px;height:26px;}
#position-editor-dialog .position-editor-turn-tools > label { display:flex; align-items:center; gap:6px; flex:1; font-size:.75rem; }
#position-editor-dialog .position-editor-turn-tools select { min-width:0; flex:1; width:auto; min-height:38px; border:1px solid var(--reader-line-strong); border-radius:7px; padding:4px 8px; color:var(--reader-ink); background:var(--reader-surface); }
#position-editor-dialog .position-editor-turn-tools button { flex:none; min-height:40px; min-width:40px; }
#position-editor-dialog .position-editor-turn-tools .position-review-option { flex:1; }
#position-editor-dialog.position-editor-inline .position-editor-advanced { border:0; border-top:1px solid var(--reader-line); padding:4px 0; background:transparent; }
#position-editor-dialog .position-editor-advanced > summary { padding:5px 0; font-size:.74rem; cursor:pointer; color:var(--reader-primary-dark); }
#position-editor-dialog .position-editor-advanced > :not(summary) { margin-top:8px; }
#position-editor-dialog.position-editor-inline .position-editor-quick-actions { gap:4px; }
#position-editor-dialog.position-editor-inline .position-editor-quick-actions button { padding:6px 8px; font-size:.72rem; }
#position-editor-dialog.position-editor-inline .position-editor-footer { display:flex; justify-content:space-between; gap:8px; padding:4px 8px; border-top:1px solid var(--reader-line); background:var(--reader-surface); }
#position-editor-dialog.position-editor-inline .position-editor-footer button { min-height:42px; padding:6px 12px; font-size:.8rem; }
#position-editor-dialog.position-editor-inline .inline-message:empty { display:none; }
#position-editor-dialog .position-editor-recognition { padding:8px; border:1px solid #af8333; border-radius:7px; background:var(--reader-surface-soft); font-size:.72rem; line-height:1.45; }
#position-editor-dialog .position-editor-recognition p { margin:0 0 7px; }
#position-editor-dialog .position-editor-recognition button { min-height:40px; font-size:.72rem; padding:5px 8px; }
#position-editor-dialog [hidden] { display:none !important; }
#position-editor-dialog[data-wide="true"] .position-editor-layout { display:grid; grid-template-columns:minmax(0,1fr) 200px; align-items:start; gap:12px; }
#position-editor-dialog[data-wide="true"] .position-editor-options { width:200px; }
#position-editor-dialog[data-wide="true"] .position-editor-turn-tools > label { max-width:360px; }
#position-editor-dialog .position-editor-uncertainty { position:absolute; inset:0; pointer-events:none; z-index:4; }
#position-editor-dialog .position-editor-uncertainty span { position:absolute; width:12.5%; height:12.5%; border:3px dashed #dd7b11; box-sizing:border-box; background:#f7b64228; }
@media (orientation:landscape) and (max-height:480px) and (min-width:600px) {
  #position-editor-dialog.position-editor-inline > form { grid-template-columns:minmax(0,1fr) 136px; grid-template-rows:auto minmax(0,1fr) auto auto; }
  #position-editor-dialog.position-editor-inline .dialog-heading { grid-area:1 / 1 / 2 / 3; }
  #position-editor-dialog.position-editor-inline .position-editor-layout { grid-area:2 / 1 / 3 / 2; display:flex; flex-direction:column; }
  #position-editor-dialog.position-editor-inline .position-editor-turn-tools { grid-area:2 / 2 / 3 / 3; align-content:start; display:flex; flex-wrap:wrap; justify-content:center; min-height:0; overflow:auto; padding:2px; gap:2px; }
  #position-editor-dialog.position-editor-inline .position-editor-turn-tools > label { flex-basis:100%; font-size:0; }
  #position-editor-dialog.position-editor-inline .position-editor-turn-tools select { font-size:11px; width:100%; min-height:32px; padding:3px; }
  #position-editor-dialog.position-editor-inline .position-editor-turn-tools button { min-height:32px; height:32px; min-width:34px; width:34px; }
  #position-editor-dialog.position-editor-inline .position-editor-quick-review { max-height:none; overflow:visible; gap:2px; }
  #position-editor-dialog.position-editor-inline .position-review-options { flex-wrap:wrap; gap:2px; }
  #position-editor-dialog.position-editor-inline .position-review-options .position-review-option { flex:1; width:auto; height:auto; min-height:36px; }
  #position-editor-dialog.position-editor-inline .position-review-option:first-child { flex-basis:100%; }
  #position-editor-dialog.position-editor-inline .position-piece-palette { grid-area:3 / 1 / 4 / 3; width:calc(100% - 12px); gap:2px; margin:3px auto; }
  #position-editor-dialog.position-editor-inline .position-piece-palette button { height:32px; }
  #position-editor-dialog.position-editor-inline .position-piece-palette img { height:28px; }
  #position-editor-dialog.position-editor-inline .position-editor-footer { grid-area:4 / 1 / 5 / 3; padding:3px 6px; }
  #position-editor-dialog.position-editor-inline .position-editor-footer button { min-width:0; min-height:38px; padding:4px 8px; }
  #position-editor-dialog.position-editor-inline .position-editor-options { width:100%; }
}
