:root{font-family:system-ui,sans-serif;color:#21382f;background:#f3f5f1}*{box-sizing:border-box}body{margin:0;display:flex}aside{width:235px;padding:32px 24px;background:#163e32;color:#fff;min-height:100vh;position:fixed}small{display:block;font-size:12px;opacity:.75}.brand{font:28px Georgia,serif;letter-spacing:2px}.brand small{font:10px system-ui;margin-top:12px;letter-spacing:1px}nav{margin:40px 0}nav a{display:block;color:#dee9e2;text-decoration:none;padding:13px 12px;margin:5px 0;border-radius:7px}nav a.active,nav a:hover{background:#35584b}main{margin-left:235px;padding:38px;width:calc(100% - 235px)}header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}h1{font:32px Georgia,serif;margin:9px 0}h2{font-size:18px}a{color:#285d47}button,.button{background:#286149;color:white;border:0;padding:12px 18px;border-radius:6px;text-decoration:none;cursor:pointer;font:inherit}button:hover{background:#1c4734}aside button{margin-bottom:30px;background:#35584b}.panel{background:white;border:1px solid #dde4dc;border-radius:10px;padding:24px;margin-bottom:22px}.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.cards strong{display:block;font-size:34px;margin-top:12px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}label{display:block;font-size:13px;font-weight:600}input,select,textarea{font:inherit;border:1px solid #c7d2c8;border-radius:5px;padding:10px;max-width:100%;background:white;color:#21382f}label input:not([type=checkbox]),label textarea{display:block;width:100%;margin-top:8px}.filters{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:12px;border-bottom:1px solid #e6eae4;vertical-align:top;min-width:110px}th{background:#edf2eb;white-space:nowrap}td small{margin-top:6px}.error{background:#fee7e4;color:#822d26;padding:16px}.success{background:#dcefe0;padding:16px}.narrow{max-width:480px}.narrow label{margin-bottom:20px}footer{font-size:12px;color:#738177;margin:30px 0}textarea{min-height:85px}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){body{display:block}aside{position:static;width:100%;min-height:0;padding:20px}nav{display:flex;overflow:auto;margin:15px 0}nav a{white-space:nowrap}main{margin:0;width:100%;padding:20px}.grid{grid-template-columns:1fr}header{display:block}.cards{grid-template-columns:repeat(2,1fr)}}@media print{aside,header .button,.filters,footer{display:none}main{width:100%;margin:0;padding:0}.panel{border:0;padding:0}.tablewrap{overflow:visible}table{font-size:7px}th,td{min-width:0;padding:3px;white-space:normal}a{color:black;text-decoration:none}@page{size:A3 landscape;margin:10mm}}
/* Colores oficiales del manual El Encino */
:root{color:#243c2c;background:#f4f7f3}aside{background:#037737}.brand small{color:white;opacity:1}nav a.active{background:#025b2a;border-left:4px solid #3bd42e}nav a:hover{background:#025b2a}button,.button{background:#037737}button:hover,.button:hover{background:#025b2a}aside button{background:#025b2a}a{color:#037737}header>div>small{color:#037737;opacity:1}.cards .panel{border-top:4px solid #3bd42e}.cards strong{color:#037737}input:focus,select:focus,textarea:focus{outline:2px solid #037737;outline-offset:2px}

.development-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.development-bar label select{margin-left:12px}.development-bar p{margin-bottom:0;font-size:13px}

.budget-area{padding:20px 0;border-top:1px solid #dde4dc}.budget-area label select{display:block;margin-top:8px}

/* Navegación por fraccionamiento y altas de ubicaciones */
aside{height:100vh;overflow-y:auto}nav a.nav-child{margin-left:14px;padding-left:18px;border-left:2px solid #3bd42e;font-size:14px}.location-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.option-card{display:block;border:1px solid #c6d9cb;border-top:4px solid #3bd42e;border-radius:8px;padding:22px;text-decoration:none;background:#f7faf5}.option-card strong{display:block;font-size:20px;margin-bottom:10px}.option-card span{display:block;color:#344a3a;line-height:1.5}.option-card:hover{background:#edf6e9}.breadcrumb{font-size:14px}#alta-manual{scroll-margin-top:18px}@media(max-width:650px){aside{height:auto;overflow:visible}nav a.nav-child{margin-left:0}.location-options{grid-template-columns:1fr}}@media print{.location-options,.breadcrumb{display:none}}
