.part-one { max-width: 1500px; margin: 0 auto; }
.part-one-steps, .part-one-programs { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0; }
.part-one-steps .btn { min-width: 180px; padding: 14px 20px; font-size: 17px; }
.part-one-steps .btn:disabled { opacity: .55; cursor: not-allowed; }
.part-one-area { margin: 14px 0; overflow-x: auto; }
.part-one-area > summary { font-weight: 700; cursor: pointer; padding: 8px 0; }
.part-one-complete { margin-top: 24px; }
body.glad-theme .part-one-programs .part-one-program { background: #fff; color: #171b14; box-shadow: none; }
body.glad-theme .part-one-programs .part-one-program.is-selected { outline: 3px solid #507fa3; outline-offset: 2px; }
body.glad-theme .part-one-programs .part-one-program.is-done { background: #d5ffa5; border-color: #6a9d35; color: #24420d; }
.part-one-done { display: inline-block; margin-left: 8px; font-weight: 800; }
.part-one { max-width: 1900px; }
#main.glad-part-one { max-width: 1900px; width: calc(100% - 48px); padding: 24px 0; margin-inline: auto; }
.part-one-workspace { display: grid; grid-template-columns: minmax(190px,240px) minmax(0,1fr) minmax(170px,220px); align-items: start; gap: 20px; }
.part-one-left { display: grid; gap: 16px; min-width: 0; }
.part-one-workspace .glad-equip-side,.part-one-workspace .glad-ideabrowse-side,.part-one-workspace .glad-avail-side { width: auto; min-width: 0; padding: 16px; border-radius: 16px; box-shadow: none; }
.part-one-left .glad-equip-side,.part-one-left .glad-ideabrowse-side { position: static; max-height: 48vh; overflow: auto; }
.part-one-center { min-width: 0; }
.part-one-area > summary { display: list-item; padding: 14px 4px; line-height: 1.5; }
.part-one-area-tools { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; padding: 8px 0 14px; border-top: 1px solid #e6e8df; }
.part-one-sent { color: #35641f; background: #e6f5d9; border-radius: 20px; font-size: 12px; margin-left: 12px; padding: 5px 9px; white-space: nowrap; }
.part-one-sent[hidden] { display: none; }
.part-one table.ideas { min-width: 660px; }
.part-one table.ideas th { font-size: 12px; }
.part-one table.ideas td { vertical-align: top; padding: 8px; }
.part-one table.ideas textarea { min-height: 64px; line-height: 1.45; }
.part-one .idea-history-control .btn,.part-one .idea-send-one .btn,.part-one .part-one-equipment-button { font-size: 11px; padding: 5px 8px; box-shadow: none; }
.part-one .glad-pin-bar { position: static; margin-bottom: 18px; overflow-x: auto; }
.idea-history-destination { display: grid; gap: 5px; margin-right: auto; }
.idea-history-footer { flex-wrap: wrap; }
.part-one-equipment-dialog { width: min(700px,90vw); border: 1px solid #dbe3d2; border-radius: 18px; padding: 24px; }
.part-one-equipment-dialog::backdrop { background: #19231666; }
.part-one-picker-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.part-one-picker-head h3 { margin: 0; }
.part-one-equipment-dialog label { display: grid; gap: 8px; }
.part-one-equipment-results { display: flex; flex-wrap: wrap; gap: 8px; max-height: 48vh; overflow: auto; margin-top: 18px; }
@media (max-width: 1200px) {
  .part-one-workspace { grid-template-columns: minmax(0,1fr) 210px; }
  .part-one-left { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; }
}
@media (min-width: 1201px) and (max-width: 1450px) {
  .part-one-workspace { grid-template-columns: 190px minmax(0,1fr) 170px; gap: 14px; }
  .part-one-workspace .glad-equip-side,.part-one-workspace .glad-ideabrowse-side,.part-one-workspace .glad-avail-side { padding: 12px; }
}
@media (max-width: 760px) {
  .part-one-workspace,.part-one-left { display: flex; flex-direction: column; }
  .part-one-workspace > *,.part-one-left > * { width: 100%; box-sizing: border-box; }
  .part-one-left { order: 2; }
  .part-one-workspace > .glad-avail-side { order: 3; position: static; max-height: 45vh; }
}

body.glad-theme #glad-subnav button.planning-part-done { background:#d7ffa5 !important; color:#264310 !important; border:1px solid #72a83c !important; }

.glad-idb-equipment { flex: 0 0 100%; margin: 0; font-size: 12px; }
.glad-idb-equipment > summary { cursor: pointer; color: #536044; padding: 2px 0; }
.glad-idb-equipment > div { padding: 4px 8px; border-left: 2px solid #d6dfcb; line-height: 1.5; overflow-wrap: anywhere; }

.planning-side-panel > summary { cursor:pointer; font-weight:750; font-size:14px; }
.planning-side-body { margin-top:10px; }
.planning-side-body > .glad-equip-head { display:none; }
.glad-unused-side { background:white; border:1px solid #e6e8df; padding:16px; border-radius:16px; max-height:65vh; overflow:auto; }
.glad-unused-side input,.glad-unused-side select { width:100%; box-sizing:border-box; min-width:0; margin:4px 0 8px; }
.glad-unused-side label { display:block; font-size:12px; }
.unused-area,.unused-program,.unused-activity { margin-top:8px; }
.unused-program { padding-left:6px; }
.unused-activity { border-top:1px solid #e6e8df; padding-top:8px; font-size:12px; }
.unused-activity summary { cursor:pointer; }
.unused-activity small { display:block; margin-top:3px; }
.unused-activity p { overflow-wrap:anywhere; }

body.glad-theme .planning-side-panel > summary { font-size:13px !important; font-weight:650; line-height:1.45; }
body.glad-theme .glad-unused-side { font-size:12px !important; line-height:1.5; }
body.glad-theme .glad-unused-side summary { font-size:12px !important; line-height:1.5; padding:5px 0; cursor:pointer; }
body.glad-theme .glad-unused-side .unused-activity summary strong { font-size:12px !important; font-weight:600; }
body.glad-theme .glad-unused-side .unused-activity summary small { display:block !important; font-size:11px !important; color:#52594e; margin:3px 0 0 14px; }
body.glad-theme .glad-unused-side input,body.glad-theme .glad-unused-side select { font-size:12px !important; }

/* One shared tile treatment for every planning reference panel. */
body.glad-theme .part-one-workspace .part-one-left > aside,
body.glad-theme .part-one-workspace > .glad-avail-side {
  background:#fff; border:1px solid var(--line,#e3e6ee); border-radius:16px;
  padding:12px; width:100%; min-width:0; box-sizing:border-box; box-shadow:none;
}
body.glad-theme .part-one-workspace aside > .planning-side-panel > summary {
  font-size:13px !important; font-weight:600; line-height:1.45; padding:0;
}

/* Compact shared Ideas layout; all hidden content remains editable on expansion. */
body.glad-theme .part-one { font-size:14px; line-height:1.45; }
body.glad-theme .part-one h2 { font-size:21px !important; margin:10px 0; }
body.glad-theme .part-one h3 { font-size:17px !important; margin:10px 0; }
body.glad-theme .part-one .part-one-steps .btn,body.glad-theme .part-one .part-one-program { font-size:13px !important; padding:7px 10px !important; min-width:0; }
body.glad-theme .part-one .part-one-area { padding:8px !important; margin:8px 0; }
body.glad-theme .part-one-area > summary { font-size:14px !important; padding:5px 2px; }
body.glad-theme table.ideas { width:100%; min-width:0; table-layout:fixed; }
body.glad-theme table.ideas tr { display:grid; grid-template-columns:80px 65px minmax(120px,1.2fr) minmax(120px,1fr) minmax(100px,1fr); }
body.glad-theme table.ideas td,body.glad-theme table.ideas th { min-width:0; padding:5px !important; font-size:12px !important; }
body.glad-theme table.ideas textarea { width:100%; box-sizing:border-box; min-height:44px !important; height:54px; font-size:13px !important; line-height:1.4; padding:5px !important; resize:vertical; }
body.glad-theme table.ideas .btn { min-height:28px; font-size:11px !important; padding:4px 7px !important; margin:0 !important; box-shadow:none; }
body.glad-theme table.ideas .idea-row-actions { grid-column:1 / -1; display:flex; align-items:center; flex-wrap:wrap; gap:5px; border-top:0; }
body.glad-theme table.ideas .idea-row-actions > div { display:inline-flex; margin:0; }
body.glad-theme table.ideas .idea-row-collapsed > td:not(.idea-row-actions) { display:none; }
body.glad-theme table.ideas .idea-row-collapsed .idea-row-actions > :not([data-idea-collapse]) { display:none; }
body.glad-theme .idea-extra-details { font-size:11px; margin-top:3px; }
body.glad-theme .idea-extra-details > summary { cursor:pointer; }
body.glad-theme .course-obstacle { padding:8px !important; margin:8px 0 !important; }
body.glad-theme .course-obstacle h4 { font-size:14px !important; margin:0 0 6px; }
body.glad-theme .course-fields textarea { min-height:44px !important; height:54px; font-size:13px !important; padding:5px !important; }
@media(max-width:1000px){ body.glad-theme table.ideas { display:block; overflow-x:auto; } body.glad-theme table.ideas tr { min-width:590px; } }

body.glad-theme table.ideas textarea { font-family:inherit; }
body.glad-theme table.ideas .ideaflag-toggles { gap:4px; align-items:center; }

/* Shared Base Plan density, inherited by all current and future parts. */
body.glad-theme .glad-core-base-plans .bp-area,
body.glad-theme .glad-core-base-plans .bp-row { padding:8px !important; margin:6px 0 !important; }
body.glad-theme .glad-core-base-plans .bp-bar > summary,
body.glad-theme .glad-core-base-plans .course-obstacle > summary { font-size:13px !important; font-weight:600; line-height:1.45; padding:5px 0 !important; cursor:pointer; }
body.glad-theme .glad-core-base-plans .btn { font-size:12px !important; padding:5px 8px !important; min-height:28px; box-shadow:none; }
body.glad-theme .glad-core-base-plans input:not([type=checkbox]):not([type=radio]),
body.glad-theme .glad-core-base-plans select,
body.glad-theme .glad-core-base-plans textarea { font-size:13px !important; line-height:1.45; padding:5px 7px !important; }
body.glad-theme .glad-core-base-plans textarea { min-height:48px !important; height:60px; resize:vertical; }
body.glad-theme .glad-core-base-plans .edit-line { margin-bottom:4px; gap:5px; }
body.glad-theme .glad-core-base-plans .sub,
body.glad-theme .glad-core-base-plans label { font-size:12px !important; line-height:1.45; }
body.glad-theme .glad-core-base-plans .course-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:8px; }
body.glad-theme .glad-core-base-plans .course-fields label { min-width:0; }
body.glad-theme .glad-core-base-plans .course-fields select { width:100%; min-width:0; }
body.glad-theme .glad-core-base-plans .course-required-notice { padding:8px 10px; margin:8px 0; border-width:1px; font-size:12px; }
body.glad-theme .glad-core-base-plans .course-required-notice strong { font-size:14px; }
@media(max-width:650px){body.glad-theme .glad-core-base-plans .course-fields { grid-template-columns:1fr; }}
body.glad-theme .course-coaching { margin-top:8px; border:1px solid #e1e4ea; border-radius:7px; padding:6px 8px; background:#fafbfc; }
body.glad-theme .course-coaching > summary,body.glad-theme .course-point-recommendations > summary { font-size:13px !important; cursor:pointer; line-height:1.45; }
body.glad-theme .course-coaching .count { margin-left:6px; color:#656b60; font-weight:400; }
body.glad-theme .course-coaching [data-course-point-list] { margin-top:6px; }
body.glad-theme .course-coaching .edit-line input { flex:1; min-width:0; }
body.glad-theme .course-point-recommendations { margin-top:8px; font-size:12px; }
body.glad-theme .course-point-recommendations select,body.glad-theme .course-point-recommendations input { width:100%; box-sizing:border-box; margin:4px 0; }
body.glad-theme .course-coaching small { display:block; color:#656b60; }

.course-area-equipment { margin:4px 0; font-size:12px; }
.course-area-equipment > summary { cursor:pointer; font-weight:600; }
.course-equipment-chips { display:flex; flex-wrap:wrap; gap:4px; margin:4px 0 8px; }
.course-equipment-chips .btn { white-space:normal; text-align:left; }

/* Course fields sized to their actual content rather than equal-width boxes. */
body.glad-theme .course-editor .course-fields { display:grid; grid-template-columns:72px minmax(130px,190px) minmax(130px,190px) minmax(180px,1fr); align-items:start; gap:8px; }
body.glad-theme .course-editor .course-field-alley { grid-column:1; grid-row:1; }
body.glad-theme .course-editor .course-field-start { grid-column:2; grid-row:1; }
body.glad-theme .course-editor .course-field-finish { grid-column:3; grid-row:1; }
body.glad-theme .course-editor .course-field-description { grid-column:1 / 4; grid-row:2; }
body.glad-theme .course-editor .course-field-equipment { grid-column:4; grid-row:1 / 3; min-width:0; }
body.glad-theme .course-editor .course-fields input[type=text] { width:100%; box-sizing:border-box; height:30px; min-width:0; font-size:13px !important; }
body.glad-theme .course-editor .course-field-description textarea { height:70px; width:100%; box-sizing:border-box; }
body.glad-theme .course-equipment-checks { display:flex; flex-wrap:wrap; gap:4px 10px; max-height:165px; overflow:auto; padding:6px; border:1px solid #dedfd6; border-radius:7px; background:white; }
body.glad-theme .course-fields label.course-equipment-choice { display:flex; flex-direction:row; align-items:center; gap:5px; font-size:12px !important; line-height:1.4; cursor:pointer; }
body.glad-theme .course-equipment-choice input[type=checkbox] { width:15px; height:15px; margin:0; flex:none; }
body.glad-theme .course-field-label { display:block; font-size:12px; margin-bottom:4px; }
@media(max-width:900px){body.glad-theme .course-editor .course-fields { grid-template-columns:60px minmax(100px,1fr) minmax(100px,1fr); }body.glad-theme .course-editor .course-field-equipment { grid-column:1 / -1; grid-row:3; }}

.unused-class-filter { margin:8px 0 12px; border:1px solid #e6e8df; border-radius:8px; padding:8px; }
.unused-class-options { max-height:240px; overflow:auto; margin:8px 0; }
.glad-unused-side .unused-class-options label { display:flex; align-items:flex-start; gap:7px; padding:5px 0; }
.glad-unused-side .unused-class-options input[type="checkbox"] { width:auto; flex:none; margin:3px 0 0; }
.unused-class-options small { display:block; color:#647067; font-size:10px; }
