/* fetch-1730: page plus one editor; proposal appearance never styles the portal. */
.isg-dialog { width: min(96vw, 1440px); max-width: none; max-height: 96dvh; height: 94dvh; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: var(--r-m); color: var(--ink); background: var(--surface-card); }
.isg-dialog[open] { display: grid; grid-template-rows: auto auto minmax(0,1fr) auto; }
.isg-dialog::backdrop { background: var(--overlay-bg, rgba(36,43,66,.45)); }
.isg-head { padding: var(--s-3); margin: 0; display: flex; align-items: center; justify-content: space-between; gap: var(--s-2); }
.isg-head h2 { margin: 0; font-family: Inter, sans-serif; font-size: var(--t-section); }
.isg-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: var(--s-2); padding: var(--s-2) var(--s-3); border-block: 1px solid var(--line); }
.isg-toolbar label { display: flex; align-items: center; gap: var(--s-2); }
.isg-dialog input,.isg-dialog select,.isg-dialog textarea { min-width: 0; width: 100%; min-height: var(--control-height-touch); font: inherit; color: var(--ink); background: var(--surface-card); border: 1px solid var(--line); border-radius: var(--r-s); padding: var(--s-2); }
.isg-dialog label { font-size: var(--t-sub); }
.isg-toolbar select { width: auto; }
.isg-body { display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,300px); align-items: start; overflow: auto; }
.isg-preview { min-width: 0; overflow: auto; background: var(--wash); padding: var(--s-3); }
.isg-preview iframe { display: block; height: 62dvh; max-width: none; border: 1px solid var(--line); background: var(--surface-card); margin-inline: auto; }
.isg-panel { padding: var(--s-3); border-left: 1px solid var(--line); min-width: 0; background: var(--surface-card); }
.isg-panel label { display: grid; gap: var(--s-1); margin-block: var(--s-2); }
.isg-panel summary { min-height: var(--control-height-touch); display: flex; align-items: center; cursor: pointer; font-weight: 600; }
.isg-panel .btn { min-height: var(--control-height-touch); margin-block: var(--s-1); }
.isg-properties { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--s-2); }
.isg-properties label:first-child { grid-column: 1 / -1; }
.isg-crumb { margin-top: 0; font-size: var(--t-sub); overflow-wrap: anywhere; }
.isg-panel p { overflow-wrap: anywhere; }
.isg-foot { padding: var(--s-3); border-top: 1px solid var(--line); background: var(--surface-card); }
.isg-message { font-size: var(--t-sub); margin-bottom: var(--s-2); }
.isg-foot-actions { display: flex; gap: var(--s-2); justify-content: flex-end; flex-wrap: wrap; }
.isg-change-list { padding-left: var(--s-4); font-size: var(--t-sub); }
.isg-change-list li { margin-bottom: var(--s-2); overflow-wrap: anywhere; }
/* fetch-1757: the page choice shares the editor's native-dialog lifecycle. */
.isg-dialog.isg-picker { width: min(92vw, 560px); height: fit-content; grid-template-rows: auto auto auto; }
.isg-picker-body { padding: var(--s-3); overflow: auto; }
.isg-picker-body label { display: grid; gap: var(--s-1); }
.isg-picker-body p { margin-block: var(--s-3); }
.isg-capture { position: fixed; left: -20000px; top: 0; width: 1024px; visibility: hidden; pointer-events: none; }
@media (max-width: 640px) {
  .isg-dialog { width: 100%; height: 100dvh; max-height: 100dvh; margin: 0; border-radius: 0; }
  .isg-head,.isg-panel,.isg-foot { padding: var(--s-2); }
  .isg-body { display: block; }
  .isg-preview { padding: var(--s-1); height: 430px; }
  .isg-preview iframe { height: 420px; }
  .isg-panel { border-left: 0; border-top: 1px solid var(--line); }
  .isg-toolbar { padding: var(--s-2); }
  .isg-dialog input,.isg-dialog select,.isg-dialog textarea { font-size: 1rem; }
  .isg-dialog .btn,.isg-dialog .icon-btn { min-height: var(--control-height-touch); min-width: var(--control-height-touch); }
}
.isg-bar { position: fixed; z-index: 61; top: 0; left: 0; right: 0; box-sizing: border-box; min-height: var(--desktop-nav-height, var(--phone-nav-height, 3.5rem)); display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1) var(--s-3); padding: var(--s-1) var(--s-4); border-bottom: 3px solid var(--gold); background: var(--surface-card); color: var(--ink); box-shadow: 0 2px 12px color-mix(in srgb, var(--navy-dark) 18%, transparent); }
.isg-bar-text { flex: 1 1 0; min-width: 0; margin: 0; font-size: var(--t-body); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.isg-bar-actions { display: flex; align-items: center; gap: var(--s-2); }
.isg-bar-actions .btn-primary { min-height: var(--control-height-touch); white-space: nowrap; }
.isg-bar-actions [aria-disabled="true"] { opacity: .6; cursor: progress; }
.isg-bar-msg { flex: 1 1 100%; padding-bottom: var(--s-1); font-size: var(--t-sub); color: var(--bad-fg); }
.isg-bar-msg:empty { display: none; }
@media (max-width: 640px) { .isg-bar { padding-inline: var(--s-2); gap: var(--s-1) var(--s-2); } .isg-bar-lead { display: none; } }
/* fetch-1767: the new-note composer names its two ways to leave a note. */
.note-way { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin-bottom: var(--s-2); }
.note-way > .muted { font-size: var(--t-sub); }
.note-way .btn { min-height: var(--control-height-touch); display: inline-flex; align-items: center; gap: var(--s-1); }
