/* Nutrition education hub: PC list/table, mobile keeps original cards. */
.neh-loading-state{min-height:110px;display:flex;align-items:center;justify-content:center;gap:10px;color:#7b8490;font-size:14px}.neh-loading-spinner{width:20px;height:20px;border:2px solid #e1e5e9;border-top-color:#12b886;border-radius:50%;animation:neh-spin .8s linear infinite;box-sizing:border-box}@keyframes neh-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.neh-loading-spinner{animation-duration:1.8s}}@media (min-width:768px){.neh-safe-list-enabled #neh-results.neh-results{display:block!important;border:1px solid #e7e8eb;border-radius:12px;overflow:hidden;background:#fff}.neh-list-table{width:100%;font-size:14px;color:#25282d}.neh-list-head,.neh-list-row{display:grid;grid-template-columns:minmax(300px,2.8fr) minmax(95px,.8fr) minmax(105px,.9fr) minmax(145px,1.25fr) minmax(130px,1.05fr) 100px;gap:12px;padding-left:16px;padding-right:16px;box-sizing:border-box;width:100%}.neh-list-head{min-height:48px;font-weight:700;background:#fafbfc;border-bottom:1px solid #b8c0c8;text-align:center;align-items:center}.neh-list-head>div,.neh-list-head>span{display:flex;align-items:center;justify-content:center;text-align:center}.neh-list-row{position:relative;min-height:64px;border-bottom:0;align-items:start;padding-top:12px;padding-bottom:12px}.neh-list-row::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#b8c0c8;pointer-events:none}.neh-list-row:last-child::after{display:none}.neh-list-row:hover{background:#fffdf4}.neh-list-title{font-weight:600;cursor:default;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;line-height:1.45;max-height:2.9em;overflow-wrap:anywhere}.neh-list-title:hover{text-decoration:underline;text-underline-offset:3px}.neh-list-tag{display:inline-block;margin:0 4px 4px 0;padding:3px 7px;border-radius:999px;font-size:12px;line-height:1.25;white-space:nowrap;border:1px solid transparent;vertical-align:top}.neh-list-tag-school{background:#eaf7ee;border-color:#cbe8d3;color:#287a45}.neh-list-tag-type{background:#fff4cf;border-color:#f2d986;color:#8a6500}.neh-list-tag-topic{background:#eaf3ff;border-color:#c7dcf7;color:#3f6f9f}.neh-list-tag-default{background:#f5f6f7;border-color:#e1e4e8;color:#444}.neh-list-muted{color:#999}.neh-list-source{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;line-height:1.45;max-height:2.9em;overflow-wrap:anywhere}.neh-list-link{font-weight:700;color:#9a6500;text-decoration:none;white-space:nowrap}.neh-list-link:hover{color:#754d00;text-decoration:underline;text-underline-offset:3px}.neh-hover-preview{position:fixed;z-index:10050;width:280px;max-height:210px;padding:6px;border:1px solid #dfe2e6;border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.16);pointer-events:none}.neh-hover-preview[hidden]{display:none!important}.neh-hover-preview img{display:block;width:100%;max-height:198px;object-fit:contain;border-radius:8px;background:#f7f7f7}}
@media (min-width:768px){.neh-list-row::after{left:0!important;right:0!important;width:auto!important;background:#aeb7c1!important}.neh-list-row>div:last-child{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap}.neh-like-btn{border:0;background:transparent;color:#a5adb6;cursor:pointer;padding:0 2px;font:inherit;font-weight:700;white-space:nowrap;line-height:1.45}.neh-like-btn:hover{color:#e25563}.neh-like-btn.is-liked{color:#e25563}.neh-like-btn span{font-size:12px}}
.neh-sort-head{appearance:none;border:0;background:transparent;font:inherit;font-weight:700;color:inherit;cursor:pointer;width:100%;height:100%;padding:0;display:flex;align-items:center;justify-content:center;gap:4px}.neh-sort-head:hover{color:#b77900;text-decoration:underline;text-underline-offset:3px}.neh-sort-head::after{content:"↕";font-size:10px;color:#9aa3ad;font-weight:400}
.neh-section-title .neh-list-tools{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.neh-list-tools select,.neh-favorites-filter{border:1px solid #dce2e8;border-radius:8px;background:#fff;color:#495057;padding:6px 9px;font:inherit;font-size:12px;cursor:pointer}.neh-favorites-filter.is-active{background:#fff4d4;border-color:#edc65b;color:#765400;font-weight:700}.neh-favorite-btn{border:0;background:none;color:#a5adb6;font:inherit;font-size:17px;line-height:1;cursor:pointer;padding:1px 3px}.neh-favorite-btn.is-favorited{color:#e1a500}.neh-favorite-btn:hover{color:#bb8500}.neh-actions-menu{position:relative;display:inline-block}.neh-actions-menu summary{list-style:none;border:1px solid #dce2e8;border-radius:7px;background:#fff;min-width:27px;padding:2px 5px;cursor:pointer;text-align:center;line-height:1.4}.neh-actions-menu summary::-webkit-details-marker{display:none}.neh-actions-menu[open] .neh-actions-popover{position:absolute;right:0;top:calc(100% + 3px);z-index:20;min-width:76px;padding:4px;background:#fff;border:1px solid #dce2e8;border-radius:9px;box-shadow:0 5px 16px rgba(0,0,0,.12);display:grid;gap:2px}.neh-actions-popover button{border:0!important;background:#fff!important;border-radius:5px!important;padding:7px 9px!important;text-align:left;white-space:nowrap;cursor:pointer}.neh-actions-popover button:hover{background:#f5f6f7!important}.neh-resource-controls{display:flex;align-items:center;gap:8px;margin-top:6px}.neh-resource-controls .neh-like-btn{display:inline-flex}.neh-list-row[hidden],.neh-resource-card[hidden]{display:none!important}.neh-favorite-empty{padding:28px;text-align:center;color:#868e96}.neh-list-row>div:last-child{align-items:center!important}.neh-list-row .neh-actions-menu{margin-left:auto}@media(max-width:767px){.neh-section-title{align-items:flex-start;flex-wrap:wrap}.neh-section-title .neh-list-tools{width:100%;justify-content:flex-start}.neh-resource-card .neh-card-actions{display:none}}

/* Nutrition resource detail + usage replies */
.neh-list-title{appearance:none;border:0;background:transparent;padding:0;text-align:left;font:inherit;color:inherit;width:100%}.neh-detail-modal{position:fixed;inset:0;z-index:12000}.neh-detail-modal[hidden]{display:none}.neh-detail-backdrop{position:absolute;inset:0;background:rgba(20,24,28,.46)}.neh-detail-panel{position:relative;margin:4vh auto;width:min(760px,calc(100% - 28px));max-height:92vh;overflow:auto;background:#fff;border-radius:18px;padding:28px;box-sizing:border-box;box-shadow:0 24px 70px rgba(0,0,0,.22)}.neh-detail-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:30px;cursor:pointer;color:#687078}.neh-detail-kicker{font-size:12px;font-weight:800;color:#16845f;margin-bottom:7px}.neh-detail-panel h2{font-size:22px;line-height:1.4;margin:0 38px 7px 0}.neh-shared-by{margin:0 0 22px;color:#687078;font-size:14px}.neh-description{padding:18px;background:#f8faf9;border-radius:12px}.neh-description h3,.neh-usage h3{margin:0 0 10px;font-size:16px}.neh-description p{margin:0;line-height:1.7}.neh-detail-actions{display:flex;gap:9px;margin:16px 0 26px}.neh-detail-actions a,.neh-detail-actions button,.neh-reply-form button,.neh-login-reply{border:1px solid #d7dee2;border-radius:9px;background:#fff;padding:9px 13px;font-weight:700;color:#34404a;text-decoration:none;cursor:pointer}.neh-detail-actions a{background:#fff8df;border-color:#eed487;color:#7d5900}.neh-detail-actions [data-share]{background:#16845f;border-color:#16845f;color:#fff}.neh-usage{border-top:1px solid #e8ecef;padding-top:22px}.neh-usage h3 span{color:#16845f}.neh-reply{padding:15px 0;border-bottom:1px solid #edf0f2}.neh-reply-head{display:flex;align-items:center;gap:8px;font-size:13px}.neh-reply-head span{color:#8a9299}.neh-reply-head button{margin-left:auto;border:0;background:transparent;color:#8a9299;cursor:pointer}.neh-reply p{line-height:1.65;margin:8px 0}.neh-reply-images{display:flex;gap:8px;flex-wrap:wrap}.neh-reply-images img{width:132px;height:132px;object-fit:cover;border-radius:10px;border:1px solid #e4e7ea}.neh-reply-empty{color:#8a9299;padding:8px 0}.neh-reply-form{margin-top:18px}.neh-reply-form textarea{width:100%;min-height:96px;resize:vertical;border:1px solid #dce2e6;border-radius:10px;padding:12px;box-sizing:border-box;font:inherit}.neh-reply-form>div{display:flex;align-items:center;gap:9px;margin-top:8px}.neh-photo-pick{border:1px solid #d7dee2;border-radius:9px;padding:8px 11px;cursor:pointer;font-weight:700}.neh-photo-count{font-size:12px;color:#8a9299}.neh-reply-form button{margin-left:auto;background:#16845f;border-color:#16845f;color:#fff}.neh-login-reply{margin-top:12px}.neh-detail-open{overflow:hidden}@media(max-width:767px){.neh-detail-panel{margin:0;width:100%;height:100%;max-height:none;border-radius:0;padding:22px 18px}.neh-reply-images img{width:calc(50% - 4px);height:auto;aspect-ratio:1/1}}

.neh-author-link{appearance:none;border:0;background:transparent;padding:0;color:#237a5b;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.neh-author-link:hover{text-decoration:underline;text-underline-offset:3px}.neh-reply-head .neh-author-link{margin:0;color:#30363b}

/* reply overflow menu */
.neh-reply-head{position:relative}.neh-reply-menu-wrap{margin-left:auto;position:relative}.neh-reply-menu-btn{border:0;background:transparent;padding:2px 8px;font-size:20px;line-height:1;cursor:pointer;color:#667085}.neh-reply-menu{position:absolute;right:0;top:26px;z-index:20;min-width:84px;padding:5px;background:#fff;border:1px solid #e5e7eb;border-radius:9px;box-shadow:0 8px 24px rgba(15,23,42,.12)}.neh-reply-menu[hidden]{display:none}.neh-reply-menu button{display:block;width:100%;border:0;background:#fff;padding:8px 10px;border-radius:6px;text-align:left;font-size:13px;cursor:pointer}.neh-reply-menu button:hover{background:#f5f7f6}

/* detail resource reactions + original image lightbox */
.neh-detail-like.is-active{border-color:#f0b8be!important;background:#fff4f5!important;color:#d94b5a!important}.neh-detail-favorite.is-active{border-color:#e8cc74!important;background:#fff9df!important;color:#a97800!important}.neh-reply-images img{cursor:zoom-in}.neh-image-lightbox{position:fixed;inset:0;z-index:12100;background:rgba(0,0,0,.82);display:flex;align-items:center;justify-content:center;padding:28px;box-sizing:border-box}.neh-image-lightbox[hidden]{display:none}.neh-image-lightbox img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 10px 40px rgba(0,0,0,.35)}.neh-image-lightbox-close{position:fixed;right:22px;top:14px;border:0;background:rgba(0,0,0,.35);color:#fff;font-size:34px;line-height:1;width:44px;height:44px;border-radius:50%;cursor:pointer}

/* 2026-09-30: nutrition education hub mobile/app layout */
@media (max-width:767px){
  #view-nutrition-education-hub{
    overflow-x:hidden;
    padding-bottom:env(safe-area-inset-bottom,0);
  }
  #view-nutrition-education-hub .neh-shell{
    width:100%;
    max-width:none;
    box-sizing:border-box;
    padding:14px 12px max(96px,calc(78px + env(safe-area-inset-bottom,0px)));
  }
  #view-nutrition-education-hub .neh-header{
    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    align-items:start;
    gap:10px;
    margin-bottom:14px;
  }
  #view-nutrition-education-hub .neh-header-copy{
    min-width:0;
    padding-top:1px;
  }
  #view-nutrition-education-hub .neh-header-copy .view-title{
    margin:0;
    font-size:20px;
    line-height:1.35;
  }
  #view-nutrition-education-hub .neh-header-copy .view-subtitle{
    margin:5px 0 0;
    font-size:13px;
    line-height:1.5;
    word-break:keep-all;
  }
  #view-nutrition-education-hub .neh-header-actions{
    grid-column:1/-1;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    width:100%;
  }
  #view-nutrition-education-hub .neh-header-actions button{
    min-height:42px;
    flex:1 1 auto;
    padding:9px 11px;
    font-size:13px;
  }
  #view-nutrition-education-hub .neh-back-btn{
    width:40px;
    height:40px;
    min-width:40px;
  }
  #view-nutrition-education-hub .neh-scope-tabs{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    margin:0 0 12px;
  }
  #view-nutrition-education-hub .neh-scope-tab{
    min-width:0;
    min-height:42px;
    padding:7px 6px;
    font-size:13px;
    white-space:nowrap;
  }
  #view-nutrition-education-hub .neh-search-wrap{
    height:50px;
    gap:8px;
    padding:0 13px;
    border-radius:14px;
  }
  #view-nutrition-education-hub .neh-search-wrap input{
    min-width:0;
    font-size:15px;
  }
  #view-nutrition-education-hub .neh-filter-panel,
  #view-nutrition-education-hub .neh-counsel,
  #view-nutrition-education-hub .neh-results-section{
    margin-top:12px;
    padding:14px;
    border-radius:14px;
  }
  #view-nutrition-education-hub .neh-filter-row{
    display:block;
    padding:11px 0;
  }
  #view-nutrition-education-hub .neh-filter-row:first-child{
    padding-top:0;
  }
  #view-nutrition-education-hub .neh-filter-row:last-child{
    padding-bottom:0;
  }
  #view-nutrition-education-hub .neh-filter-row strong{
    display:block;
    padding:0;
    margin-bottom:8px;
    font-size:13px;
  }
  #view-nutrition-education-hub .neh-chips{
    gap:6px;
  }
  #view-nutrition-education-hub .neh-chip{
    min-height:36px;
    padding:7px 10px;
    font-size:13px;
    line-height:1.2;
  }
  #view-nutrition-education-hub .neh-section-title{
    align-items:center;
    gap:8px;
    margin-bottom:10px;
  }
  #view-nutrition-education-hub .neh-section-title h3{
    font-size:16px;
  }
  #view-nutrition-education-hub .neh-section-title p{
    line-height:1.45;
  }
  #view-nutrition-education-hub .neh-section-title .neh-list-tools{
    width:auto;
    margin-left:auto;
    justify-content:flex-end;
    gap:6px;
  }
  #view-nutrition-education-hub .neh-list-tools select,
  #view-nutrition-education-hub .neh-favorites-filter{
    min-height:38px;
    max-width:145px;
    padding:6px 8px;
  }
  #view-nutrition-education-hub .neh-results{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:10px;
  }
  #view-nutrition-education-hub .neh-resource-card{
    min-width:0;
    gap:8px;
    padding:14px;
    border-radius:13px;
  }
  #view-nutrition-education-hub .neh-resource-card h4{
    font-size:16px;
    line-height:1.45;
    overflow-wrap:anywhere;
  }
  #view-nutrition-education-hub .neh-resource-meta,
  #view-nutrition-education-hub .neh-resource-source,
  #view-nutrition-education-hub .neh-resource-desc{
    font-size:13px;
    line-height:1.55;
    overflow-wrap:anywhere;
  }
  #view-nutrition-education-hub .neh-resource-link{
    min-height:42px;
    display:flex;
    align-items:center;
    width:fit-content;
  }
  #view-nutrition-education-hub .neh-empty{
    padding:34px 14px;
  }
  #view-nutrition-education-hub .neh-modal{
    align-items:flex-end;
    padding:0;
  }
  #view-nutrition-education-hub .neh-form{
    width:100%;
    max-height:min(92dvh,92vh);
    border-radius:18px 18px 0 0;
    padding:18px 14px calc(16px + env(safe-area-inset-bottom,0px));
    gap:12px;
  }
  #view-nutrition-education-hub .neh-form-grid{
    grid-template-columns:minmax(0,1fr);
    gap:10px;
  }
  #view-nutrition-education-hub .neh-type-checks{
    gap:6px;
  }
  #view-nutrition-education-hub .neh-type-checks label{
    padding:7px 8px;
  }
  #view-nutrition-education-hub .neh-form-actions{
    bottom:calc(-16px - env(safe-area-inset-bottom,0px));
    margin:0 -14px;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
  }
  #view-nutrition-education-hub .neh-form-actions button{
    min-height:44px;
    flex:1 1 0;
  }
  .neh-detail-panel{
    padding:18px 14px calc(24px + env(safe-area-inset-bottom,0px));
  }
  .neh-detail-panel h2{
    margin-right:36px;
    font-size:19px;
  }
  .neh-detail-actions{
    flex-wrap:wrap;
    gap:7px;
    margin:14px 0 20px;
  }
  .neh-detail-actions a,
  .neh-detail-actions button,
  .neh-login-reply{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  .neh-reply-form>div{
    flex-wrap:wrap;
  }
  .neh-reply-form button{
    min-height:42px;
  }
}
/* 2026-10-01: mobile hub compact spacing */
@media (max-width:767px){
  #view-nutrition-education-hub .neh-shell{padding-left:8px;padding-right:8px;padding-top:10px}
  #view-nutrition-education-hub .neh-header{margin-bottom:10px;gap:8px}
  #view-nutrition-education-hub .neh-header-copy .view-subtitle{margin-top:3px;line-height:1.35}
  #view-nutrition-education-hub .neh-header-actions{gap:5px}
  #view-nutrition-education-hub .neh-scope-tabs{margin-bottom:8px;gap:5px}
  #view-nutrition-education-hub .neh-search-wrap{height:46px;padding:0 11px}
  #view-nutrition-education-hub .neh-filter-panel,
  #view-nutrition-education-hub .neh-counsel,
  #view-nutrition-education-hub .neh-results-section{margin-top:8px;padding:11px 10px;border-radius:12px}
  #view-nutrition-education-hub .neh-filter-row{padding:8px 0}
  #view-nutrition-education-hub .neh-filter-row strong{margin-bottom:6px}
  #view-nutrition-education-hub .neh-chips{gap:5px}
  #view-nutrition-education-hub .neh-chip{min-height:34px;padding:6px 9px;line-height:1.15}
  #view-nutrition-education-hub .neh-section-title{margin-bottom:8px;gap:6px}
  #view-nutrition-education-hub .neh-results{gap:8px}
  #view-nutrition-education-hub .neh-resource-card{gap:6px;padding:11px 10px}
}
/* 2026-10-01: mobile resource paging */
@media (max-width:767px){
  #view-nutrition-education-hub .neh-load-more{grid-column:1/-1;width:100%;min-height:44px;margin-top:2px;border:1px solid #e4c65a;border-radius:12px;background:#fff8dc;color:#765c00;font:inherit;font-weight:700;cursor:pointer}
}
