/* SAG V5.0.3 R1 — UI consulta de demanda / compras. No altera estilos de Importaciones. */
#sagDemandPanel{background:#f4f8f2;color:#243d30;font:14px/1.55 system-ui,'Segoe UI',sans-serif;min-height:calc(100vh - 110px)}
#sagDemandPanel *,#sagDemandPanel *:before,#sagDemandPanel *:after{box-sizing:border-box}
#sagDemandPanel button,#sagDemandPanel input,#sagDemandPanel select,#sagDemandPanel textarea{font:inherit}
#sagDemandPanel button{cursor:pointer}#sagDemandPanel button:disabled{opacity:.52;cursor:wait}
#sagDemandPanel :is(button,input,select,textarea):focus-visible{outline:3px solid #f47616;outline-offset:2px}
#sagDemandPanel .dem-app{max-width:1590px;margin:auto;padding:0 16px 22px}
#sagDemandPanel .dem-hero{margin:0 -16px 13px;padding:18px 25px;background:linear-gradient(90deg,#f1f9ebf9 0%,#f2fae9ed 40%,#fff0 95%),url('/assets/banner-campo.webp') center /cover;border-bottom:3px solid #a9d88c}
#sagDemandPanel .dem-hero small{font-size:11px;color:#477058}#sagDemandPanel .dem-hero strong{color:#146534}
#sagDemandPanel .dem-hero-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
#sagDemandPanel h1{font-size:26px;color:#0a5d31;margin:3px 0}#sagDemandPanel h2{font-size:19px;color:#124f2a;margin:0 0 7px}#sagDemandPanel h3{font-size:16px;color:#12552d;margin:14px 0 10px}
#sagDemandPanel p{margin:3px 0 12px;color:#4c6657}#sagDemandPanel .dem-shell{border:1px solid #d1e3d2;border-radius:15px;background:white;overflow:hidden;box-shadow:0 4px 20px #0e4d2410}
#sagDemandPanel .dem-shell footer{padding:11px 20px;font-size:11px;color:#708778;background:#f8fcf8;border-top:1px solid #deeade}
#sagDemandPanel .dem-sections{display:flex;align-items:center;gap:5px;padding:10px 15px 0;border-bottom:1px solid #d9e8d8;background:#f9fcfa;overflow-x:auto}
#sagDemandPanel .dem-sections button{border:1px solid transparent;background:transparent;color:#366649;white-space:nowrap;border-radius:8px 8px 0 0;padding:12px 17px;font-size:13px;font-weight:750}
#sagDemandPanel .dem-sections button[aria-selected="true"]{background:white;border-color:#d0e3d3;border-bottom:3px solid #f47616;color:#076632}
#sagDemandPanel .dem-sections-note{margin-left:auto;font-size:11px;color:#6c7f6b;white-space:nowrap;padding:0 10px}
#sagDemandPanel .dem-body{padding:22px;min-height:480px}
#sagDemandPanel .dem-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #078132;border-radius:9px;background:#09823b;color:#fff;padding:10px 14px;min-height:36px;font-size:12px;font-weight:720}
#sagDemandPanel .dem-btn.light{background:#fff;color:#0a6436;border-color:#bdd9c3}
#sagDemandPanel .dem-btn.mini{padding:6px 9px;min-height:28px;font-size:11px;white-space:nowrap}
#sagDemandPanel .dem-btn:hover{filter:brightness(.95)}
#sagDemandPanel .dem-head-row{display:flex;align-items:start;justify-content:space-between;gap:15px;flex-wrap:wrap}
#sagDemandPanel .dem-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:16px 0}
#sagDemandPanel .dem-card{border:1px solid #d5e7d7;background:#f9fdf8;padding:14px;border-radius:11px;min-width:0;display:flex;flex-direction:column;gap:4px}
#sagDemandPanel .dem-card>span{font-size:11px;color:#4c6852}#sagDemandPanel .dem-card strong{font-size:21px;line-height:1.3;color:#085c2c;word-break:break-word}#sagDemandPanel .dem-card small{color:#677b69;font-size:11px}
#sagDemandPanel .dem-banner{margin:12px 0;padding:10px 13px;border-radius:9px;border:1px solid #b2dfbd;background:#ecf9ef;color:#24563a;font-size:12px}
#sagDemandPanel .dem-banner.warning{border-left:4px solid #f47616;background:#fff7eb;border-color:#ecd8bd;color:#74501b}
#sagDemandPanel .dem-banner.bad{border-color:#d68c85;color:#a0271e;background:#fff1f0}
#sagDemandPanel .dem-banner.loading{background:#eff5ff;border-color:#a9c8d9;color:#225975}
#sagDemandPanel .dem-banner.subtle{background:#f7f7ee;border-left:3px solid #e9c34b;border-color:#ece8cf;color:#637260}
#sagDemandPanel .dem-table-box{width:100%;max-height:475px;overflow:auto;border:1px solid #dbe8db;border-radius:10px;margin-top:13px}
#sagDemandPanel table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px;white-space:nowrap;text-align:left}
#sagDemandPanel th{position:sticky;top:0;z-index:3;background:#edf5ec;color:#065b2d;padding:12px 11px;border-bottom:1px solid #d5e5d6;font-weight:770}
#sagDemandPanel td{padding:12px 11px;border-bottom:1px solid #e1eae1;vertical-align:top;color:#284b36}
#sagDemandPanel tr:nth-child(even) td{background:#f8fbf7}#sagDemandPanel td small{display:block;white-space:normal;max-width:290px;margin-top:3px;color:#617c67;font-size:11px}
#sagDemandPanel td.dem-sticky,#sagDemandPanel th.dem-sticky{position:sticky;left:0;min-width:220px;max-width:310px;z-index:2;white-space:normal;background:#fff}
#sagDemandPanel th.dem-sticky{z-index:4;background:#edf5ec}#sagDemandPanel tr:nth-child(even) td.dem-sticky{background:#f8fbf7}
#sagDemandPanel .dem-badge{display:inline-block;background:#eaf0ed;color:#456554;font-size:10px;font-weight:750;padding:5px 7px;border-radius:7px}
#sagDemandPanel .dem-badge.warning{background:#fff0dd;color:#97510b}#sagDemandPanel .dem-badge.okay{background:#e4f5e8;color:#067039}#sagDemandPanel .dem-badge.neutral{background:#e9f0e9;color:#385b45}
#sagDemandPanel .dem-actions-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:16px 0 0;color:#637a67;font-size:12px}
#sagDemandPanel .dem-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0}
#sagDemandPanel label{display:flex;flex-direction:column;gap:5px;color:#385d46;font-weight:700;font-size:11px;min-width:0}
#sagDemandPanel input,#sagDemandPanel select,#sagDemandPanel textarea{border:1px solid #c8dccc;border-radius:8px;padding:10px;min-height:40px;width:100%;background:#fff;color:#244b36}
#sagDemandPanel .dem-search{grid-column:span 2}
#sagDemandPanel dialog.dem-dialog{width:min(1260px,96vw);max-width:96vw;max-height:94vh;border:1px solid #d7e7d6;border-radius:16px;padding:0;box-shadow:0 20px 80px #102e2066;background:white;color:#24422e;overflow:hidden}
#sagDemandPanel dialog.dem-dialog::backdrop{background:#143d2d80}
#sagDemandPanel .dem-detail-head{padding:16px 22px 12px;display:flex;align-items:start;justify-content:space-between;gap:12px;background:#fff}
#sagDemandPanel .dem-detail-head h2{font-size:21px;max-width:1000px;overflow-wrap:anywhere;margin:0}
#sagDemandPanel .dem-detail-head p{font-size:12px;color:#627666}
#sagDemandPanel .dem-detail-tabs{display:flex;gap:5px;overflow-x:auto;padding:0 20px 9px;background:#fff;border-bottom:1px solid #d9e4dc}
#sagDemandPanel .dem-detail-tabs button{padding:10px 16px;border:0;border-radius:8px;background:#eef4ef;color:#28633f;font-weight:720;white-space:nowrap}
#sagDemandPanel .dem-detail-tabs button.selected{background:#0b6735;color:#fff}
#sagDemandPanel .dem-detail-content{max-height:calc(94vh - 190px);overflow-y:auto;padding:18px 23px 25px}
#sagDemandPanel .dem-cards.detail{grid-template-columns:repeat(4,minmax(0,1fr))}
#sagDemandPanel .dem-chart{height:230px;display:flex;align-items:end;justify-content:space-around;gap:8px;padding:24px 8px 5px;border:1px solid #e3e9e1;border-radius:12px;background:#f8fcf6}
#sagDemandPanel .dem-bar{display:flex;flex-direction:column;align-items:center;justify-content:end;height:100%;flex:1;min-width:0;gap:4px}
#sagDemandPanel .dem-bar b,#sagDemandPanel .dem-bar small{font-size:10px}#sagDemandPanel .dem-bar i{display:block;width:75%;border-radius:5px 5px 0 0;min-height:2px;background:linear-gradient(#15a34b,#08813a)}
#sagDemandPanel .dem-muted{font-size:12px;color:#697d70}#sagDemandPanel .dem-detail-content ul{padding-left:20px}#sagDemandPanel .dem-detail-content li{margin:6px 0}
#sagDemandPanel .dem-action-dialog{max-width:680px!important}#sagDemandPanel .dem-action-dialog form{padding:6px 22px 20px}
#sagDemandPanel .dem-action-dialog .dem-detail-head{padding:5px 0 12px}
#sagDemandPanel .dem-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px 0}#sagDemandPanel .dem-wide{grid-column:span 2}#sagDemandPanel textarea{min-height:80px}
@media(max-width:1000px){#sagDemandPanel .dem-cards{grid-template-columns:repeat(3,1fr)}#sagDemandPanel .dem-filters{grid-template-columns:repeat(3,1fr)}#sagDemandPanel .dem-sections-note{display:none}}
@media(max-width:650px){#sagDemandPanel .dem-app{padding:0 8px 12px}#sagDemandPanel .dem-hero{margin:0 -8px 10px;padding:12px}#sagDemandPanel .dem-body{padding:12px}#sagDemandPanel .dem-cards,#sagDemandPanel .dem-cards.detail{grid-template-columns:repeat(2,minmax(0,1fr))}#sagDemandPanel .dem-filters{grid-template-columns:repeat(2,1fr)}#sagDemandPanel .dem-search{grid-column:span 2}#sagDemandPanel .dem-hero h1{font-size:22px}#sagDemandPanel .dem-detail-head h2{font-size:16px}#sagDemandPanel .dem-detail-content{padding:13px}#sagDemandPanel .dem-form-grid{grid-template-columns:1fr}#sagDemandPanel .dem-wide{grid-column:1}}

/* Acciones de reporte en el análisis individual: compactas y responsive. */
.dem-detail-buttons{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:700px){.dem-detail-buttons{justify-content:flex-start;width:100%}.dem-detail-buttons .dem-btn{font-size:12px}}
