/* Scoped package editor: full-width settings, grouped library, compact work rows. */
#spEditorModal.wp-modal-scrim { --sp-surface:var(--color-bg-primary,#fff); --sp-muted:var(--color-text-secondary,#64748b); --sp-line:var(--color-border,#e2e8f0); --sp-tint:color-mix(in srgb,var(--color-primary,#5943d8) 8%,var(--sp-surface)); font-family:'Segoe UI',Arial,sans-serif; }
#spEditorModal.wp-modal-scrim *,#spEditorModal.wp-modal-scrim *::before,#spEditorModal.wp-modal-scrim *::after { box-sizing:border-box; }
#spEditorModal.wp-modal-scrim .wp-modal { width:min(1440px,96vw); max-width:1440px; max-height:94vh; background:var(--sp-surface); color:var(--color-text-primary); border:1px solid var(--sp-line); border-radius:12px; }
#spEditorModal.wp-modal-scrim .wp-modal-head,#spEditorModal.wp-modal-scrim .wp-modal-foot { background:var(--sp-surface); padding:16px 22px; flex-shrink:0; border-color:var(--sp-line); }
#spEditorModal.wp-modal-scrim .wp-modal-title { font:600 21px 'Segoe UI',Arial,sans-serif; }
#spEditorModal.wp-modal-scrim .wp-modal-sub { font-size:12px; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim .wp-modal > .sp-setup { flex:none; display:grid; grid-template-columns:minmax(220px,1fr) minmax(320px,1.15fr) minmax(380px,1.45fr); align-items:stretch; gap:12px; padding:14px 22px; margin:0; background:var(--color-bg-secondary,#f6f7fb); border-bottom:1px solid var(--sp-line); }
/* Three boxes: Package (name), Dates (trigger -> due), Default span (from -> to). */
#spEditorModal.wp-modal-scrim .sp-setup-box { min-width:0; display:flex; flex-direction:column; gap:8px; padding:10px 12px 12px; background:var(--sp-surface); border:1px solid var(--sp-line); border-radius:10px; }
#spEditorModal.wp-modal-scrim .sp-box-title { font:700 10.5px 'Segoe UI',Arial,sans-serif; letter-spacing:.07em; text-transform:uppercase; color:var(--sp-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#spEditorModal.wp-modal-scrim .sp-box-hint { font-weight:500; letter-spacing:0; text-transform:none; color:color-mix(in srgb,var(--sp-muted) 80%,transparent); }
#spEditorModal.wp-modal-scrim .sp-box-title[title] { cursor:help; }
#spEditorModal.wp-modal-scrim .sp-box-pair { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:end; gap:8px; }
#spEditorModal.wp-modal-scrim .sp-box-pair .sp-span-arrow { height:36px; display:flex; align-items:center; }
/* Library filters: Tags / Drawing type / Billing code chips with faceted counts. */
/* The left pane scrolls as ONE column (count + search pinned, then filters, then the list): two nested
   scroll areas left no room for either on a laptop-height window. */
#spEditorModal.wp-modal-scrim .wp-pane.wp-pane-left { overflow:auto; padding-top:0; }
#spEditorModal.wp-modal-scrim .wp-pane-left > .wp-pane-head { position:sticky; top:0; z-index:2; padding-top:16px; padding-bottom:8px; background:var(--color-bg-secondary,#f6f7fb); }
#spEditorModal.wp-modal-scrim .wp-pane-left .wp-lib-grid { flex:none; overflow:visible; min-height:0; }
#spEditorModal.wp-modal-scrim .sp-filters { flex:none; margin:2px 0 10px; }
#spEditorModal.wp-modal-scrim .sp-filterbar { display:flex; align-items:center; gap:8px; margin-bottom:6px; }
#spEditorModal.wp-modal-scrim .sp-filter-toggle { display:inline-flex; align-items:center; gap:6px; height:30px; padding:0 10px; border:1px solid var(--sp-line); border-radius:8px; background:var(--sp-surface); color:var(--color-text-primary); font:600 12.5px 'Segoe UI',Arial,sans-serif; cursor:pointer; }
#spEditorModal.wp-modal-scrim .sp-filter-toggle[aria-expanded="true"] { border-color:color-mix(in srgb,var(--color-primary,#2563eb) 55%,var(--sp-line)); }
#spEditorModal.wp-modal-scrim .sp-filter-badge { min-width:18px; height:18px; padding:0 5px; border-radius:9px; background:var(--color-primary,#2563eb); color:#fff; font-size:11px; display:inline-flex; align-items:center; justify-content:center; }
#spEditorModal.wp-modal-scrim .sp-filter-caret { font-size:10px; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim .sp-filter-clear { margin-left:auto; border:0; background:none; color:var(--color-primary,#2563eb); font:600 12px 'Segoe UI',Arial,sans-serif; cursor:pointer; padding:4px 2px; }
#spEditorModal.wp-modal-scrim .sp-filter-clear:hover { text-decoration:underline; }
#spEditorModal.wp-modal-scrim .sp-filter-panel { display:flex; flex-direction:column; gap:10px; min-height:0; overflow:auto; padding:10px 12px; background:var(--sp-surface); border:1px solid var(--sp-line); border-radius:10px; }
#spEditorModal.wp-modal-scrim .sp-facet-title { font:700 10.5px 'Segoe UI',Arial,sans-serif; letter-spacing:.07em; text-transform:uppercase; color:var(--sp-muted); margin-bottom:6px; }
#spEditorModal.wp-modal-scrim .sp-facet-picked { margin-left:4px; font-weight:600; letter-spacing:0; text-transform:none; color:var(--color-primary,#2563eb); }
#spEditorModal.wp-modal-scrim .sp-facet-chips { display:flex; flex-wrap:wrap; gap:6px; }
#spEditorModal.wp-modal-scrim .sp-facet-chip { display:inline-flex; align-items:center; gap:5px; height:26px; padding:0 9px; border:1px solid color-mix(in srgb,var(--color-primary,#2563eb) 45%,var(--sp-line)); border-radius:13px; background:var(--sp-surface); color:color-mix(in srgb,var(--color-primary,#2563eb) 85%,#000); font:600 12px 'Segoe UI',Arial,sans-serif; cursor:pointer; white-space:nowrap; max-width:100%; }
#spEditorModal.wp-modal-scrim .sp-facet-chip:hover { background:color-mix(in srgb,var(--color-primary,#2563eb) 8%,var(--sp-surface)); }
#spEditorModal.wp-modal-scrim .sp-facet-chip.is-on { background:var(--color-primary,#2563eb); border-color:var(--color-primary,#2563eb); color:#fff; }
#spEditorModal.wp-modal-scrim .sp-facet-chip.is-zero { opacity:.45; }
#spEditorModal.wp-modal-scrim .sp-facet-chip.is-none { border-style:dashed; }
#spEditorModal.wp-modal-scrim .sp-facet-count { font-weight:500; font-size:11px; opacity:.75; }
#spEditorModal.wp-modal-scrim .sp-facet-chip.is-on .sp-facet-count { opacity:.9; }
#spEditorModal.wp-modal-scrim .sp-facet-dot { width:8px; height:8px; border-radius:50%; flex:none; box-shadow:0 0 0 1px rgba(0,0,0,.08); }
#spEditorModal.wp-modal-scrim .sp-facet-empty { font-size:12px; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim .sp-setup-wide { grid-column:auto; }
#spEditorModal.wp-modal-scrim .sp-setup-field { display:flex; flex-direction:column; gap:6px; min-width:0; font:500 12px 'Segoe UI',Arial,sans-serif; color:var(--sp-muted); text-transform:none; letter-spacing:0; }
/* One line per label (the red * used to wrap onto its own row and push Name below the others). */
#spEditorModal.wp-modal-scrim .sp-setup-label { display:flex; align-items:center; gap:3px; height:16px; white-space:nowrap; font:600 12px 'Segoe UI',Arial,sans-serif; color:var(--color-text-secondary,#475569); }
#spEditorModal.wp-modal-scrim .sp-setup-label .sp-req { margin-left:0; line-height:1; }
#spEditorModal.wp-modal-scrim .sp-setup-span .sp-setup-label { cursor:help; }
#spEditorModal.wp-modal-scrim .sp-span-row { display:flex; align-items:center; gap:8px; min-width:0; }
#spEditorModal.wp-modal-scrim .sp-span-row select { flex:1 1 0; min-width:0; }
#spEditorModal.wp-modal-scrim .sp-span-arrow { flex:none; color:var(--sp-muted); font-size:14px; }
#spEditorModal.wp-modal-scrim .sp-setup input:hover:not(:disabled),#spEditorModal.wp-modal-scrim .sp-setup select:hover:not(:disabled) { border-color:color-mix(in srgb,var(--color-primary,#5943d8) 35%,var(--sp-line)); }
#spEditorModal.wp-modal-scrim .sp-setup input:focus,#spEditorModal.wp-modal-scrim .sp-setup select:focus { outline:none; border-color:var(--color-primary,#5943d8); box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary,#5943d8) 15%,transparent); }
#spEditorModal.wp-modal-scrim .sp-setup input::placeholder { color:color-mix(in srgb,var(--sp-muted) 75%,transparent); }
#spEditorModal.wp-modal-scrim .sp-setup input,#spEditorModal.wp-modal-scrim .sp-setup select { min-width:0; width:100%; background:var(--sp-surface); border:1px solid var(--sp-line); color:var(--color-text-primary); padding:8px; height:36px; border-radius:6px; font:13px 'Segoe UI',Arial,sans-serif; }
#spEditorModal.wp-modal-scrim .wp-modal-body { display:grid; grid-template-columns:minmax(260px,32%) minmax(0,1fr); min-height:0; overflow:hidden; }
#spEditorModal.wp-modal-scrim .wp-pane { min-width:0; min-height:0; width:auto; padding:16px; background:var(--sp-surface); }
#spEditorModal.wp-modal-scrim .wp-pane-left { background:var(--color-bg-secondary,#f6f7fb); border-right:1px solid var(--sp-line); }
#spEditorModal.wp-modal-scrim .wp-pane-head { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
#spEditorModal.wp-modal-scrim .wp-pane-count { font:600 13px 'Segoe UI',Arial,sans-serif; color:var(--color-text-primary); }
#spEditorModal.wp-modal-scrim .wp-search { width:100%; max-width:none; min-width:0; flex:1 1 100%; padding:9px; font:13px 'Segoe UI',Arial,sans-serif; background:var(--sp-surface); border:1px solid var(--sp-line); }
#spEditorModal.wp-modal-scrim .wp-lib-grid { display:block; overflow:auto; padding-right:5px; }
#spEditorModal.wp-modal-scrim .wp-plan-list { overflow:auto; padding-right:5px; }
#spEditorModal.wp-modal-scrim .sp-category { margin:8px 0 14px; }
#spEditorModal.wp-modal-scrim .sp-category-toggle { display:flex; align-items:center; gap:8px; width:100%; border:1px solid hsl(var(--sp-cat,220) 55% 82%); border-left:4px solid hsl(var(--sp-cat,220) 60% 55%); background:hsl(var(--sp-cat,220) 70% 96%); color:hsl(var(--sp-cat,220) 45% 28%); padding:10px; border-radius:7px; cursor:pointer; font:600 13px 'Segoe UI',Arial,sans-serif; text-align:left; }
#spEditorModal.wp-modal-scrim .sp-category-toggle:hover { background:hsl(var(--sp-cat,220) 70% 93%); border-color:hsl(var(--sp-cat,220) 55% 70%); }
#spEditorModal.wp-modal-scrim .sp-category-toggle small { color:hsl(var(--sp-cat,220) 30% 42%); }
#spEditorModal.wp-modal-scrim .sp-category-toggle small { margin-left:auto; font-size:11px; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim .sp-category-items[hidden] { display:none; }
#spEditorModal.wp-modal-scrim .sp-category-defaults { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:10px; background:var(--color-bg-secondary,#f6f7fb); }
#spEditorModal.wp-modal-scrim .sp-category-defaults label { display:flex; flex-direction:column; gap:5px; min-width:0; font-size:12px; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim .sp-category-defaults select { width:100%; min-width:0; padding:7px; border:1px solid var(--sp-line); border-radius:5px; background:var(--sp-surface); color:var(--color-text-primary); font:12px 'Segoe UI',Arial,sans-serif; }
#spEditorModal.wp-modal-scrim .wp-card { margin-top:6px; padding:10px; background:var(--sp-surface); border:1px solid var(--sp-line); border-radius:6px; opacity:1; cursor:default; }
#spEditorModal.wp-modal-scrim .wp-card.is-planned { background:var(--sp-tint); opacity:1; }
#spEditorModal.wp-modal-scrim .wp-card-check { display:none; }
#spEditorModal.wp-modal-scrim .sp-library-check { display:flex; align-items:center; gap:7px; margin-bottom:6px; font-size:11px; color:var(--sp-muted); cursor:pointer; }
#spEditorModal.wp-modal-scrim .sp-library-check input { accent-color:var(--color-primary); }
#spEditorModal.wp-modal-scrim .wp-card-code { font:500 12px ui-monospace,Consolas,monospace; overflow-wrap:anywhere; white-space:normal; }
#spEditorModal.wp-modal-scrim .wp-card-desc { display:block; -webkit-line-clamp:unset; max-height:none; overflow:visible; white-space:normal; font:12px/1.4 'Segoe UI',Arial,sans-serif; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim .sp-library-facts { display:flex; gap:8px; flex-wrap:wrap; margin-top:8px; font-size:11px; }
#spEditorModal.wp-modal-scrim .sp-difficulty { border-radius:12px; background:var(--sp-tint); padding:2px 7px; }
#spEditorModal.wp-modal-scrim .sp-plan-item { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,32%); gap:12px; padding:11px; margin-top:7px; border:1px solid var(--sp-line); background:var(--sp-surface); border-radius:7px; }
#spEditorModal.wp-modal-scrim .sp-stagebar { width:auto; max-width:none; min-width:0; padding-left:12px; border-left:1px solid var(--sp-line); }
#spEditorModal.wp-modal-scrim .sp-row-right { gap:6px 10px; }
#spEditorModal.wp-modal-scrim .sp-when,#spEditorModal.wp-modal-scrim .sp-hours { font-family:'Segoe UI',Arial,sans-serif; }
#spEditorModal.wp-modal-scrim .sp-sb-selects { display:flex; gap:4px; }
#spEditorModal.wp-modal-scrim .wp-target-select { min-width:0; font:12px 'Segoe UI',Arial,sans-serif; background:var(--sp-surface); color:var(--color-text-primary); border-color:var(--sp-line); }
#spEditorModal.wp-modal-scrim .sp-sb-end { white-space:normal; overflow:visible; line-height:1.3; }
#spEditorModal.wp-modal-scrim .sp-hint { margin:6px 0; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim .sp-saved-progress { display:block; margin-top:4px; font-size:11px; color:var(--sp-muted); }
#spEditorModal.wp-modal-scrim :focus-visible { outline:2px solid var(--color-primary,#5943d8); outline-offset:2px; }
@media(max-width:1000px) { #spEditorModal.wp-modal-scrim .wp-modal > .sp-setup { grid-template-columns:1fr 1fr; } #spEditorModal.wp-modal-scrim .sp-box-name { grid-column:1 / -1; } #spEditorModal.wp-modal-scrim .sp-plan-item { grid-template-columns:1fr; } #spEditorModal.wp-modal-scrim .sp-stagebar { border-left:0; padding-left:0; } }
@media(max-width:650px) { #spEditorModal.wp-modal-scrim .wp-modal { width:calc(100vw - 24px); min-width:0; max-height:96vh; } #spEditorModal.wp-modal-scrim .wp-modal-body { display:block; overflow:auto; } #spEditorModal.wp-modal-scrim .wp-pane-left { border-right:0; } #spEditorModal.wp-modal-scrim .wp-lib-grid { max-height:240px; } #spEditorModal.wp-modal-scrim .wp-plan-list { overflow:visible; } #spEditorModal.wp-modal-scrim .wp-modal > .sp-setup { grid-template-columns:minmax(0,1fr); padding:10px; gap:8px; } #spEditorModal.wp-modal-scrim .sp-setup-field { min-width:0; } #spEditorModal.wp-modal-scrim .sp-category-defaults { grid-template-columns:1fr; } #spEditorModal.wp-modal-scrim .wp-modal-foot { padding:10px; flex-wrap:wrap; } }
/* Library group header: the collapse toggle plus "Select all" on one line. */
#spEditorModal.wp-modal-scrim .sp-category-head { display:flex; align-items:stretch; gap:6px; }
#spEditorModal.wp-modal-scrim .sp-category-head .sp-category-toggle { flex:1 1 auto; min-width:0; }
#spEditorModal.wp-modal-scrim .sp-select-all { flex:none; display:inline-flex; align-items:center; gap:6px; padding:0 10px; border:1px solid hsl(var(--sp-cat,220) 55% 82%); border-radius:7px; background:var(--sp-surface); color:hsl(var(--sp-cat,220) 35% 32%); font:600 12px 'Segoe UI',Arial,sans-serif; white-space:nowrap; cursor:pointer; }
#spEditorModal.wp-modal-scrim .sp-select-all:hover { background:hsl(var(--sp-cat,220) 70% 96%); }
#spEditorModal.wp-modal-scrim .sp-select-all input { width:15px; height:15px; margin:0; cursor:pointer; accent-color:hsl(var(--sp-cat,220) 60% 45%); }
