/* ADAC AI build 20260914-12 · formulario principal con mayor respiración */
.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:34px;align-items:start}
#projectForm{display:grid;gap:20px;min-width:0}

#projectForm .accordion{margin:0;border:1px solid var(--line);border-radius:17px;background:var(--paper);overflow:hidden;box-shadow:0 10px 30px rgba(24,45,37,.045)}
#projectForm .accordion>summary{min-height:70px;padding:20px 24px;gap:15px;background:var(--paper);font-size:13px;font-weight:750;letter-spacing:-.01em;border-bottom:1px solid transparent;transition:background .16s ease,border-color .16s ease}
#projectForm .accordion>summary:hover{background:var(--soft)}
#projectForm .accordion[open]>summary{border-bottom-color:var(--line);background:color-mix(in srgb,var(--soft) 55%,var(--paper))}
#projectForm .accordion>summary::after{font-size:19px;line-height:1;color:var(--muted)}
#projectForm .section-num{display:grid;place-items:center;min-width:30px;height:30px;padding:0 7px;border:1px solid var(--line);border-radius:9px;background:var(--bg);font-size:9px;letter-spacing:.08em;color:var(--muted)}

#projectForm .accordion>.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:26px;padding:30px 26px 32px!important}
#projectForm .field{display:flex;flex-direction:column;gap:10px;min-width:0;margin:0}
#projectForm .field>label:not(.check),#projectForm .field>span{display:block;margin:0;font-size:12px;font-weight:700;line-height:1.45;color:var(--ink)}
#projectForm input:not([type=checkbox]):not([type=range]),#projectForm select,#projectForm textarea{display:block;width:100%;min-width:0;margin:0;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font-size:13px;line-height:1.4;box-shadow:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
#projectForm input:not([type=checkbox]):not([type=range]),#projectForm select{min-height:48px;padding:12px 14px}
#projectForm select{padding-right:38px}
#projectForm textarea{min-height:124px;padding:13px 14px;resize:vertical}
#projectForm input:focus,#projectForm select:focus,#projectForm textarea:focus{border-color:color-mix(in srgb,var(--accent) 72%,var(--line));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent);outline:0}
#projectForm .full{grid-column:1/-1}

#projectForm .check{display:flex;align-items:center;gap:11px;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);font-size:12px;font-weight:650;line-height:1.4;cursor:pointer}
#projectForm .check:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
#projectForm .check input[type=checkbox]{width:18px;height:18px;min-height:18px;margin:0;flex:0 0 18px}
#projectForm .field-disabled{opacity:.46}
#projectForm .field-disabled .check,#projectForm .field-disabled input,#projectForm .field-disabled select{cursor:not-allowed}

#projectForm .section-help{grid-column:1/-1;margin:2px 0 0;padding:15px 17px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));border-left:3px solid var(--accent);border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,var(--paper));font-size:11px;line-height:1.7;color:var(--muted)}
#projectForm .floor-fields{grid-column:1/-1;margin-top:4px;padding:20px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--soft) 55%,var(--paper))}
#projectForm .floor-fields+.floor-fields{margin-top:12px}
#projectForm .floor-fields .section-head{margin:0 0 16px}
#projectForm .floor-fields .section-head h3{font-size:13px}
#projectForm .floor-fields .compact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;row-gap:20px;padding:0!important}

#projectForm .placement-block{margin-top:6px;padding-top:4px}
#projectForm .placement-heading{margin-bottom:14px}
#projectForm .placement-preview{padding:17px;border-radius:13px;background:var(--bg)}
#projectForm .placement-preview svg{min-height:260px;max-height:480px;background:var(--paper);border-radius:8px}

.form-layout>.summary{position:sticky;top:18px;padding:27px 26px;border-radius:17px}
.form-layout>.summary .eyebrow{margin-bottom:12px}
.form-layout>.summary h3{font-size:17px;line-height:1.35}
.form-layout>.summary .summary-list{margin:20px 0 18px;display:grid;grid-template-columns:1fr;gap:0}
.form-layout>.summary .summary-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}
.form-layout>.summary .summary-list dt{min-width:0;color:var(--muted);line-height:1.5}
.form-layout>.summary .summary-list dd{max-width:165px;margin:0;text-align:right;overflow-wrap:anywhere;line-height:1.5;font-weight:750}
.form-layout>.summary .estimate-summary{margin-top:4px;padding-top:16px!important}
.form-layout>.summary .button{min-height:46px;margin:8px 0 0}
.form-layout>.summary .budget-mini-hint{margin-top:14px;line-height:1.6}
.form-layout>.summary .note{margin:15px 0 0;line-height:1.75}

@media(max-width:1180px){
 .form-layout{grid-template-columns:minmax(0,1fr) 300px;gap:26px}
 #projectForm .accordion>.fields{column-gap:22px;row-gap:23px;padding:27px 23px 29px!important}
}
@media(max-width:920px){
 .form-layout{grid-template-columns:1fr}
 .form-layout>.summary{position:static;order:-1}
 .form-layout>.summary .summary-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
 .form-layout>.summary .summary-list>div{grid-template-columns:1fr;gap:5px;padding:12px 0}
 .form-layout>.summary .summary-list dd{max-width:none;text-align:left}
}
@media(max-width:680px){
 #projectForm{gap:15px}
 #projectForm .accordion>summary{min-height:60px;padding:17px 17px}
 #projectForm .accordion>.fields{grid-template-columns:1fr;padding:22px 17px 24px!important;row-gap:20px}
 #projectForm .field{gap:8px}
 #projectForm .full{grid-column:1}
 #projectForm .floor-fields{padding:16px}
 #projectForm .floor-fields .compact-fields{grid-template-columns:1fr;row-gap:16px}
 .form-layout>.summary .summary-list{grid-template-columns:1fr}
 .form-layout>.summary{padding:22px}
 .form-layout>.summary .summary-list>div{grid-template-columns:minmax(0,1fr) auto;gap:14px}
 .form-layout>.summary .summary-list dd{text-align:right}
}
