.demand-module{display:grid;gap:20px}.demand-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.demand-stats article{display:flex;flex-direction:column;gap:12px;margin:0}.demand-stats span{color:var(--muted,#5a7168);font-size:.88rem}.demand-stats strong{font-size:2rem;color:var(--primary,#16834b);line-height:1}.demand-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end;margin:0}.demand-filter-query{grid-column:span 3}.demand-help{color:var(--muted,#5a7168);font-size:.86rem;line-height:1.6;margin:0}.demand-list{display:grid;gap:12px}.demand-row{display:grid;grid-template-columns:28px minmax(170px,1fr) repeat(3,90px) auto;gap:15px;align-items:center;margin:0;padding:20px}.demand-rank{font-size:.85rem;color:#6c8477}.demand-row-title{min-width:0}.demand-row-title h2{font-size:1rem;margin:0 0 10px;overflow-wrap:anywhere}.demand-row-title small{font-size:.75rem;color:#63766c;display:block;margin-top:8px}.demand-badges{display:flex;gap:8px;flex-wrap:wrap;font-size:.73rem;align-items:center}.demand-badge{border-radius:20px;padding:4px 9px;background:#edf5f0;color:#246542}.demand-badge.out_of_stock{background:#fff2da;color:#875715}.demand-badge.unconfirmed{background:#edf0fc;color:#435b91}.demand-row-numbers{display:flex;flex-direction:column;gap:4px;text-align:center}.demand-row-numbers strong{font-size:1.3rem}.demand-row-numbers span{font-size:.72rem;color:#63766c}.demand-pagination{display:flex;align-items:center;justify-content:center;gap:15px}.demand-dialog{width:min(960px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #d7e7df;border-radius:22px;padding:26px;color:#153d2c}.demand-dialog::backdrop{background:#183b2e80}.demand-dialog header{display:flex;gap:15px;justify-content:space-between;align-items:start;margin-bottom:24px}.demand-dialog header h2{margin:4px 0 0;font-size:1.35rem;overflow-wrap:anywhere}.demand-dialog header small{font-size:.72rem;letter-spacing:.12em;color:#63816f}.demand-dialog header button{flex-shrink:0}.demand-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:32px}.demand-dialog form{display:grid;gap:15px}.demand-dialog label{display:grid;gap:7px}.demand-dialog h3{font-size:1rem;margin:0 0 15px}.demand-detail-grid section{min-width:0}.demand-current,.demand-interest{border:1px solid #dce9e2;background:#f7faf8;padding:16px;border-radius:14px;margin-bottom:12px}.demand-current p{margin:6px 0}.demand-interest{display:grid;gap:7px}.demand-interest span,.demand-interest small{font-size:.8rem;overflow-wrap:anywhere}.demand-interest>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:6px}.demand-interest button{font-size:.77rem;padding:8px 10px}.demand-trend{margin-top:16px;display:grid;gap:8px}.demand-trend>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;border-bottom:1px solid #e8eee9;padding:8px 0;font-size:.8rem}.demand-detail-grid form+h3{margin-top:28px}.demand-offer{padding:16px;background:#eff7f2;border:1px solid #d8e9de;border-radius:14px;margin:16px 0}.demand-offer p{font-size:.87rem;margin:0 0 10px}#demand-subscribe-dialog{max-width:480px}#demand-subscribe-dialog p{font-size:.86rem;line-height:1.6}.demand-consent{grid-template-columns:20px 1fr;align-items:start;font-size:.85rem;line-height:1.5}.demand-consent input{width:18px;height:18px;margin-top:2px}.demand-dialog [data-demand-success]{color:#12683a}.demand-contact-result a{white-space:normal}
@media(max-width:1200px){.demand-row{grid-template-columns:24px minmax(130px,1fr) repeat(3,70px)}.demand-row>button{grid-column:2/-1;justify-self:start}.demand-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.demand-filter-query{grid-column:auto}}
@media(max-width:650px){.demand-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.demand-stats article{padding:16px}.demand-stats strong{font-size:1.7rem}.demand-row{grid-template-columns:24px repeat(3,minmax(0,1fr));gap:12px;padding:16px}.demand-row-title{grid-column:2/-1}.demand-row-numbers{grid-row:2}.demand-row-numbers:nth-of-type(2){grid-column:2}.demand-row>button{grid-column:2/-1}.demand-detail-grid{grid-template-columns:1fr;gap:24px}.demand-dialog{padding:20px;border-radius:18px}.demand-filters{padding:16px}.demand-filters label{min-width:0}.demand-filters input,.demand-filters select{min-width:0;width:100%}.demand-filter-query{grid-column:1/-1}.demand-dialog input,.demand-dialog select,.demand-dialog textarea{max-width:100%;min-width:0}}
