.pax-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.pax-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.pax-fields label{display:block}.pax-fields input:not([type=checkbox]),.pax-fields select,.pax-fields textarea{display:block;width:100%;box-sizing:border-box;margin-top:5px}.pax-matrix{overflow:auto;max-height:65vh;margin:14px 0}.pax-matrix table{min-width:100%;width:max-content}.pax-matrix th{position:sticky;left:0;background:#eef3f8;z-index:1;min-width:160px}.pax-matrix thead th{top:0;z-index:2}.pax-matrix td{min-width:100px}.pax-matrix input:not([type=checkbox]){width:100px}.pax-cell{background:none;border:none;width:100%;padding:8px;color:inherit;cursor:pointer;font:inherit}.pax-calculated{background:#edf5ff}.pax-manual{background:#fff4d6}.pax-locked{background:#e7f5ec}.pax-legend{padding:4px 8px;border-radius:5px}.pax-error{color:#b42318;white-space:pre-wrap;margin:10px 0}.pax-fields fieldset{border:1px solid #cbd5e1;border-radius:8px}.pax-fields textarea{font:inherit}
/* Keep the editor inside the viewport; only timelines and matrices scroll. */
.pax-page { min-width: 0; max-width: 100%; }
.content:has(.pax-page) { min-width: 0; }
.pax-page .panel { padding: 20px; margin-bottom: 18px; border-radius: 12px; }
.pax-page .pax-head { align-items: flex-start; margin: 4px 0 22px; }
.pax-page .pax-head h2 { margin: 0 0 8px; font-size: 23px; line-height: 1.3; }
.pax-page .pax-head p { margin: 0; }
.pax-page .pax-head .badge { flex-shrink: 0; margin-top: 4px; padding: 5px 12px; }
.pax-page .toolbar { gap: 12px; align-items: end; margin-bottom: 16px; }
.pax-page .toolbar > label:not(:has(input[type=checkbox])) { display: flex; flex-direction: column; gap: 6px; min-width: 0; flex: 0 1 220px; font-size: 13px; color: #526477; }
.pax-page input:not([type=checkbox]), .pax-page select { min-width: 0; max-width: 100%; min-height: 38px; color: var(--text); }
.pax-page .toolbar > label > input:not([type=checkbox]), .pax-page .toolbar > label > select { width: 100%; }
.pax-page .btn { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; text-align: center; line-height: 1.35; }
.pax-page input[type=checkbox] { width: 16px; height: 16px; margin: 0; accent-color: var(--accent); flex-shrink: 0; }
.pax-page label:has(> input[type=checkbox]) { display: flex; align-items: center; gap: 8px; min-height: 30px; }
.pax-page .pax-routebar { padding: 16px 20px; background: #eaf1f4; border: 1px solid var(--line); border-radius: 12px; }
.pax-page .toolbar.pax-routebar > label:first-child { flex: 2 1 300px; }
.pax-page .toolbar.pax-routebar > label:nth-child(2) { flex: 1 1 240px; }
.pax-page .pax-fields { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px 20px; align-items: end; }
.pax-page .pax-fields > label { min-width: 0; font-size: 13px; color: #526477; }
.pax-page .pax-fields > label > input, .pax-page .pax-fields > label > select { margin-top: 6px; }
.pax-page .pax-days { grid-column: span 2; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; }
.pax-page .pax-days > span { flex-basis: 100%; font-size: 13px; color: #526477; }
.pax-page .pax-fields > label:has(input[placeholder]) { grid-column: span 2; }
.pax-page .pax-formation { border: 1px solid #bdd5dc; border-top: 3px solid var(--accent); }
.pax-page .pax-formation h3, .pax-page #pg-root h3 { font-size: 16px; margin-bottom: 18px; }
.pax-page .pax-formation fieldset { padding: 0; margin: 0; min-width: 0; border: 0; }
.pax-page .pax-formation .toolbar { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.pax-page .pax-formation .toolbar:empty { display: none; }
.pax-page .pax-formation .toolbar > label:has(input[type=checkbox]) { grid-column: span 2; min-height: 38px; }
.pax-page .pax-formation fieldset > label { margin: 16px 0; }
.pax-page .pax-formation fieldset > p { max-width: 1100px; color: #64748b; font-size: 12.5px; line-height: 1.65; }
.pax-page .pax-formation fieldset > .toolbar:has(button) { grid-template-columns: minmax(0, 360px) auto; justify-content: start; padding-top: 16px; border-top: 1px solid var(--line); }
.pax-page .pax-formation table { width: 100%; table-layout: fixed; border-collapse: collapse; margin: 12px 0; }
.pax-page .pax-formation th { text-align: left; font-size: 12px; color: #64748b; }
.pax-page .pax-formation td, .pax-page .pax-formation th { padding: 8px; border-bottom: 1px solid var(--line); }
.pax-page #pg-root .toolbar:has(label) { padding: 16px; background: #f6f8fa; border: 1px solid #e4eaf0; border-radius: 10px; }
.pax-page #pg-root .toolbar > label { flex: 1 1 145px; }
.pax-page #pg-root input[type=number] { max-width: 100%; }
.pax-page .pg-switch { margin: 14px 0 8px; padding: 12px 14px; border-radius: 8px; font-size: 13px; background: #fff8e3; border-color: #ead59c; }
.pax-page .pg-scroll { max-width: 100%; border-radius: 8px; }
.pax-page .pg-tag { padding: 5px 8px; border-color: #1c273322; }
.pax-page .pax-matrix { max-width: 100%; border-radius: 8px; }
@media (max-width: 1250px) {
  .pax-page .pax-fields, .pax-page .pax-formation .toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .pax-page .panel { padding: 16px; }
  .pax-page .pax-head { flex-direction: column; }
  .pax-page .pax-head h2 { font-size: 20px; }
  .pax-page .pax-fields, .pax-page .pax-formation .toolbar, .pax-page .pax-formation fieldset > .toolbar:has(button) { grid-template-columns: minmax(0, 1fr); }
  .pax-page .pax-days, .pax-page .pax-fields > label:has(input[placeholder]), .pax-page .pax-formation .toolbar > label:has(input[type=checkbox]) { grid-column: auto; }
  .pax-page .toolbar > label:not(:has(input[type=checkbox])) { flex-basis: 100%; }
  .pax-page .pax-formation td, .pax-page .pax-formation th { padding: 4px 2px; overflow-wrap: anywhere; }
  .pax-page .pax-formation table .btn { padding: 6px; font-size: 11px; }
}
.pax-time-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; font-size: 13px; color: #526477; }
.pax-time-input { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 6px; }
.pax-time-input > input { flex: 1 1 85px; width: 0; min-width: 75px; }
.pax-page #pg-root .toolbar > .pax-time-field { flex: 1 1 220px; }
.pax-time-field > label { color: inherit; }
.pax-time-input details { flex: 0 0 auto; }
.pax-time-input summary { cursor: pointer; padding: 8px; border: 1px solid var(--line); border-radius: 6px; background: #eef3f8; color: var(--accent); }
.pax-time-options { display: flex; align-items: end; gap: 6px; padding: 8px 0; }
.pax-time-options label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; }
.pax-time-options select { min-width: 65px; }
.pax-ai { margin-top: 16px; padding: 16px; border: 1px solid #b6d7df; border-radius: 8px; background: #f4fafb; }
.pax-ai > summary { cursor: pointer; font-weight: 600; color: var(--accent); }
.pax-ai textarea { width: 100%; box-sizing: border-box; resize: vertical; font: inherit; }
.modal [data-ai-folder][hidden], .modal [data-ai-scope][hidden] { display: none; }
