
/* foundation.css - extracted styles from original form (Option A: exact widths) */

/*Slim CSS Modifications Starts*/
/* Body */
.foundation-body {
    font-family: Arial, sans-serif;
    background: #e5edf7;
    padding: 20px;
	margin: 0px;
}
.container{
  max-width: 100%;
  padding: 16px 24px;
  box-sizing: border-box;
}
.row,
.header-row {
  display: flex;
  gap: 8px;
  width: auto;
  box-sizing: border-box;
}
/* Override all width utility classes */
[class^="w-"],
[class*=" w-"] {
  width: auto !important;
  flex: 1 1 0;
  min-width: 80px;
}
.wall-input,
.wall-select {
  flex: 1 1 180px;
}

.wall-input:last-child {
  flex-grow: 2; /* Height column absorbs extra space */
}
input,
select {
  width: 100%;
  box-sizing: border-box;
}
.column-type-row,
.column-base-row {
  flex-wrap: wrap;
}

.column-type-row > .flex-column,
.column-base-row > * {
  flex: 1 1 120px;
  min-width: 100px;
}
@media (max-width: 768px) {
  .row,
  .header-row {
    flex-wrap: wrap;
  }

  .row > *,
  .header-row > * {
    flex: 1 1 100%;
  }
}
.check-row {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #900;
	margin-right: 20px;
  font-weight: 600;
  cursor: pointer;
}

.check-row input[type="checkbox"] {
  width: 16px;
  height: 16px;
	margin-top: 1px;
  accent-color: #0582d2;
}
.check-row-small {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0047b3;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.check-row-small input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #0582d2;
  margin-left: 0px;
}

/*Slim CSS Modifications End*/


/* Section card */
.section {
    background: #b8c7d9;
    padding: 12px;
    margin-bottom: 18px;
    border-left: 4px solid #f4d03f;
    border-radius: 6px;
    box-shadow:
        inset 0 2px 4px rgba(255,255,255,0.8),
        inset 0 -2px 4px rgba(0,0,0,0.15);
}

/* Top red title bar */
.section-top-title {
    background: #f7c4c4;
    color: #4a0000;
    font-weight: bold;
    text-align: left;
    padding: 6px 14px;
    margin-bottom: 10px;
    border-radius: 4px;
    font-size: 16px;
}

/* Flex helpers */
.flex-row { display:flex; }
.flex-column { display:flex; flex-direction:column; }
.flex-between { display:flex; align-items:center; justify-content:space-between; }
.align-center { align-items:center; }
.gap-4 { gap:4px; }
.gap-6 { gap:6px; }
.gap-8 { gap:8px; }
.gap-12 { gap:12px; }

/* Labels */
.label-strong { color:#103049; font-weight:600; font-size:12px; user-select:none; }
.label-blue { color:#0047b3; font-weight:bold; font-size:12px; user-select:none; }

/* Buttons */
.btn-refresh {
    padding:3px 8px;
    background:#103049;
    color:#fff;
    border:none;
    border-radius:4px;
    cursor:pointer;
    font-size:13px;
}
.btn-add {
    margin-top:6px;
    padding:6px 12px;
    background:#103049;
    color:#fff;
    border:none;
    border-radius:4px;
    cursor:pointer;
    font-size:14px;
}
.btn-remove {
    padding:4px 10px;
    background:#c0392b;
    color:#fff;
    border:none;
    border-radius:4px;
    cursor:pointer;
}

/* Input families (kept separate for pixel-perfect) */
.wall-input,
.starter-input,
.cbase-input,
.partition-input {
    width: 100%;
    height: 24px;
    font-size: 12px;
    padding: 3px 6px;
    border: 1px solid #7f9bbd;
    border-radius: 4px;
    background: #fff;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.25);
    font-weight: 300;       /* <-- FIX: make all input text light */
   color:#777;

}

.wall-select, .starter-select, .cbase-select, .partition-select {
    width:100%;
    height:24px;
    font-size:13px;
    padding:3px 6px;
    border:1px solid #7f9bbd;
    border-radius:4px;
    background:#f8f8f8;
    color:#777;
    box-shadow:inset 0 1px 2px rgba(0,0,0,0.25);
}

/* special variations */
.input-disabled {
    background:#f0f0f0;
    color:#777;
}
.input-red {
    background:#ffcccc;
    border:1px solid #b33;
    padding:2px 6px;
    font-size:14px;
}

/* small utilities */
.m-0 { margin:0; }
.mb-4 { margin-bottom:4px; }
.mb-6 { margin-bottom:6px; }
.mb-8 { margin-bottom:8px; }
.mt-2 { margin-top:2px; }

/* text helpers */
.text-red { 
color:#900; 
font-weight:bold; 
user-select:none;
margin-top: 7px;
}

.text-italic-white { color:#fff; font-style:italic; font-weight:bold; font-size:13px; user-select:none; }

/* widths (Option A - exact widths found) */
.w-65 { width:65px; }
.w-70 { width:70px; }
.w-80 { width:80px; }
.w-90 { width:90px; }
.w-100 { width:100px; }
.w-120 { width:120px; }
.w-130 { width:130px; }
.w-140 { width:140px; }
.w-160 { width:160px; }
.w-190 { width:190px; }
.w-200 { width:200px; }
.w-240 { width:240px; }
.w-246 { width:246px; }
.w-260 { width:260px; }

/* header label rows */
.header-row { display:flex; gap:6px; margin-bottom:4px; font-size:12px; font-weight:bold; color:#103049; user-select:none; }

/* small adjustments used in layout */
.small-gap { gap:6px; }
.row { display:flex; gap:6px; margin-bottom:6px; align-items:center; }

/* checkbox label tweaks */
.checkbox-label { 
	display:flex; 
	align-items:center; 
	gap:6px; 
	user-select:none; }

/* alignment using absolute positioning where required (preserve positions) */
.pos-relative { position:relative; height:24px; }
.pos-abs-left-0 { position:absolute; left:0; }
.pos-abs-left-126 { position:absolute; left:126px; top:2px; }
.pos-abs-left-292 { position:absolute; left:292px; top:2px; }

/* small visual divider */
.divider-bottom { border-bottom:2px solid #103049; margin-bottom:12px; }
/* Align items center inside flex rows */
.align-center {
    align-items: center;
}

/* Make label block behave consistently in flex layouts */
.plank-label {
    display: flex;
    align-items: center;
    gap: 6px;
}

/* ========================================================= */
/* ULTRA COMPRESSED LAYOUT — Section 6 (WOODS) ONLY          */
/* ========================================================= */

/* Remove almost all vertical spacing */
.section:nth-of-type(6) .mb-10 { margin-bottom: 2px !important; }
.section:nth-of-type(6) .mb-6  { margin-bottom: 1px !important; }
.section:nth-of-type(6) .mb-2  { margin-bottom: 0 !important; }

/* Remove label spacing */
.section:nth-of-type(6) .checkbox-label {
    margin-bottom: 1px !important;
}

/* Remove spacing under section subtitles */
.section:nth-of-type(6) label.label-blue {
    margin-bottom: 1px !important;
}

/* Compress gaps inside flex rows */
.section:nth-of-type(6) .flex-row.gap-6  { gap: 2px !important; }
.section:nth-of-type(6) .flex-row.gap-10 { gap: 2px !important; }

/* Optional: Remove top/bottom padding inside Woods section */
.section:nth-of-type(6) {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}
