/* Cook's existing layouts and photographs stay unchanged. Screen-only rules
   deliberately leave the printed recipe on white paper. */
@media screen {
  html[data-pb-theme="dark"] :is(#pbcm-cook-overlay, .pbcm-modal-overlay, .pbcm-nutri-overlay, #pbcm-cook-lightbox, .pbcm-comment-lightbox, .pbcm-print-modal, .pbcm-print-root, .pbcm-print-bar) {
    --pb-bg: var(--pb-dark-bg);
    --pb-card: var(--pb-dark-card);
    --pb-text: var(--pb-dark-text);
    --pb-muted: var(--pb-dark-secondary);
    --pb-mauve: var(--pb-dark-accent);
    --pb-border: var(--pb-dark-border);
    color: var(--pb-dark-text);
    color-scheme: dark;
  }

  /* Page canvas, loading state and the header. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay,
  html[data-pb-theme="dark"] #pbcm-cook-overlay.is-fullscreen,
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-card, .pbcm-cook-content, .pbcm-cook-comments.is-fullpage, .pbcm-cook-comment-composer) {
    background: var(--pb-dark-bg) !important;
    color: var(--pb-dark-text);
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-topbar, .pbcm-cook-comments-page-header, .pbcm-cook-footer-dock, .pbcm-cook-comments-page-tools) {
    background: var(--pb-dark-header);
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-text);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-footer-dock, .pbcm-cook-comments-page-tools) { background: var(--pb-dark-nav); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-title, .pbcm-cook-body-title, .pbcm-cook-comments-page-header h2, .pbcm-cook-comments-rating-average, .pbcm-cook-comment-content, .pbcm-cook-comment-share-title, .pbcm-cook-comment-attach-filename, .pbcm-cook-comment-outcomes, .pbcm-cook-unavailable__title, .pbcm-cook-unavailable__msg) {
    color: var(--pb-dark-text);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-loading, .pbcm-cook-empty, .pbcm-cook-unavailable, .pbcm-cook-esc, .pbcm-cook-comments-title-count, .pbcm-cook-comments-rating-meta, .pbcm-cook-comments-rating-empty, .pbcm-cook-comments-list-tools, .pbcm-cook-comments-scroll .pbcm-cook-comment-date, .pbcm-cook-comment-unavailable, .pbcm-cook-safety-msg, .pbcm-cook-comment-share-meta) {
    color: var(--pb-dark-secondary);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-esc, .pbcm-cook-comments-title-count, .pbcm-cook-comments-list-tools, .pbcm-cook-comments-scroll .pbcm-cook-comment-date) { color: var(--pb-dark-muted); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-loading::before {
    border-color: var(--pb-dark-border);
    border-top-color: var(--pb-dark-accent);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-skel-sh {
    background-image: linear-gradient(90deg, var(--pb-dark-card) 25%, var(--pb-dark-raised) 37%, var(--pb-dark-card) 63%);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-skel-hero, .pbcm-cook-hero--empty) {
    background: var(--pb-dark-card);
    color: var(--pb-dark-muted);
  }

  /* Header actions, dropdowns and planner preview destinations. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(#pbcm-cook-close, #pbcm-cook-expand, .pbcm-cook-close-icon, .pbcm-cook-close-circle, .pbcm-cook-comments-page-header button, .pbcm-cook-esc kbd) {
    background: var(--pb-dark-card) !important;
    border-color: var(--pb-dark-border) !important;
    color: var(--pb-dark-accent) !important;
    box-shadow: none !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-topbar .pbcm-cook-action-menu > .pbcm-cook-menu-trigger {
    background: transparent;
    color: var(--pb-dark-accent);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-topbar .pbcm-cook-action-menu[open] > .pbcm-cook-menu-trigger {
    background: var(--pb-dark-raised);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-topbar .pbcm-cook-more > .pbcm-cook-menu-trigger,
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-thread-actions summary {
    background: transparent !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-more-panel, .pbcm-cook-safety-panel, .pbcm-planner-destination-panel) {
    background: var(--pb-dark-card);
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-text);
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-more-panel > h2, .pbcm-cook-menu-heading, .pbcm-planner-destination-value) {
    color: var(--pb-dark-text);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-action-menu .pbcm-dock-btn,
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-dock-label {
    color: var(--pb-dark-text) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-icon-btn, .pbcm-dock-btn, .pbcm-cook-hero-ph) { color: var(--pb-dark-accent) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-icon-btn:hover { background: var(--pb-dark-raised) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-primary-actions > button {
    background: var(--pb-dark-card) !important;
    border-color: var(--pb-dark-border) !important;
    color: var(--pb-dark-text) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-action-menu .pbcm-dock-btn:hover {
    background: var(--pb-dark-raised) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-action-subtitle, .pbcm-planner-destination-label) {
    color: var(--pb-dark-secondary);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-planner-destination-btn, .pbcm-planner-day, .pbcm-planner-slot) {
    background: var(--pb-dark-card) !important;
    border-color: var(--pb-dark-border) !important;
    color: var(--pb-dark-text) !important;
    box-shadow: none !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-planner-day.is-selected, .pbcm-planner-slot.is-selected) {
    background: var(--pb-dark-raised) !important;
    border-color: var(--pb-dark-accent) !important;
  }

  /* Real recipe photographs are never filtered or recolored. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-media > .pbcm-cook-hero {
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-save-slot--hero .query-loop-favorite .ccc-favorite-post-toggle-button,
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-hero-play, .pbcm-cook-hero-expand, .pbcm-cook-video-close, .pbcm-x-arrow, .pbcm-x-preview-close, .pbcm-x-thumb-expand),
  html[data-pb-theme="dark"] #pbcm-cook-lightbox :is(.pbcm-cook-lightbox-close, .pbcm-x-arrow),
  html[data-pb-theme="dark"] .pbcm-comment-lightbox-close {
    background: rgba(25,28,32,.7) !important;
    border-color: var(--pb-dark-border) !important;
    color: var(--pb-dark-text) !important;
    box-shadow: none !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-hero-expand { background: transparent !important; }
  /* The favorites plugin draws its heart via a colored data-URI. Own only
     that glyph, preserving the existing toggle and its saved state. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-save-slot .query-loop-favorite .ccc-favorite-post-toggle-button::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E");
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-save-slot .query-loop-favorite .ccc-favorite-post-toggle-button.is-favorite::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E");
  }
  html[data-pb-theme="dark"] :is(#pbcm-cook-lightbox, .pbcm-comment-lightbox-backdrop, .pbcm-modal-overlay, .pbcm-nutri-overlay, .pbcm-print-modal) {
    background: rgba(25,28,32,.88) !important;
  }

  /* Intro, time row, allergen labels and their explanation popovers. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-description, .pbcm-cook-summary, .pbcm-cook-ing-body, .pbcm-cook-ing-amount, .pbcm-cook-step-text, .pbcm-cook-srv-display) {
    color: var(--pb-dark-text);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-category, .pbcm-cook-cat-eyebrow, .pbcm-cook-author, .pbcm-cook-group-head, .pbcm-cook-step-name, .pbcm-cook-source a, .pbcm-cook-comment-content a, .pbcm-cook-unit-status, .pbcm-cook-share-status, .pbcm-cook-comments-link, .pbcm-cook-nut-link, .pbcm-cook-video-link) {
    color: var(--pb-dark-accent);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-desc-wrap .pbcm-cook-desc-more {
    color: var(--pb-dark-accent) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-desc-wrap.is-clamped .pbcm-cook-desc-more {
    background: var(--pb-dark-bg) !important;
    box-shadow: -8px 0 6px var(--pb-dark-bg) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-timing, .pbcm-cook-source, .pbcm-cook-ing-notes, .pbcm-cook-rating-count, .pbcm-cook-nut-hint, .pbcm-cook-nut-chevron, .pbcm-cook-time) {
    color: var(--pb-dark-secondary);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comment-count, .pbcm-cook-rating-count, .pbcm-cook-social-meta .pbcm-cook-rating) {
    color: var(--pb-dark-secondary) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-rating-count { opacity: 1; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbs2-allergen, .pbs2-legcode) {
    background: var(--pb-dark-raised);
    color: var(--pb-dark-text) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbs2-allergen::after,
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbs2-alpop {
    background: var(--pb-dark-card);
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-text);
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbs2-legname, .pbs2-alpop b) { color: var(--pb-dark-text); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbs2-alpop a, .pbs2-tax a.pbs2-nut, .pbs2-taxinfo) { color: var(--pb-dark-accent) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbs2-taxrule { background: var(--pb-dark-border); }

  /* Servings and units retain their exact current hit areas and layout. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-ingredient-controls .pbcm-cook-srv-ctl {
    background: var(--pb-dark-card);
    border-color: var(--pb-dark-border);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-srv-ctl .pbcm-cook-srv-btn {
    background: var(--pb-dark-raised) !important;
    color: var(--pb-dark-accent) !important;
    border-color: var(--pb-dark-border) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-srv-ctl .pbcm-cook-srv-btn:disabled {
    background: var(--pb-dark-card) !important;
    color: var(--pb-dark-muted) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-srv-display #pbcm-cook-srv-num { color: var(--pb-dark-text); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-ingredient-controls .pbcm-cook-unit-ctl {
    background: var(--pb-dark-card) !important;
    outline: 1px solid var(--pb-dark-outline);
    outline-offset: -1px;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-recipe-card > .pbcm-cook-tablist {
    background: var(--pb-dark-bg) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-unit-ctl .pbcm-cook-unit-btn,
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-tablist > button {
    background: transparent !important;
    color: var(--pb-dark-muted) !important;
    box-shadow: none !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-unit-ctl .pbcm-cook-unit-btn.is-active,
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-tablist > button[aria-selected="true"] {
    background: var(--pb-dark-raised) !important;
    color: var(--pb-dark-text) !important;
    box-shadow: none !important;
  }

  /* A hairline inside the existing card edge adds separation without resizing. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-recipe-card, .pbcm-cook-comments-rating-summary, .pbcm-cook-comments-scroll .pbcm-cook-comment-thread) {
    background: var(--pb-dark-card);
    outline: 1px solid var(--pb-dark-outline);
    outline-offset: -1px;
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-section-head, .pbcm-cook-group-head) { color: var(--pb-dark-accent) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-social-meta, .pbcm-cook-meta, .pbcm-cook-tablist, .pbcm-cook-comments, .pbcm-cook-section, .pbcm-cook-comment-thread, .pbcm-cook-step, .pbcm-cook-comment-options, .pbcm-cook-comment-composer[data-mode="reply"]) {
    border-color: var(--pb-dark-border) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-ingredient.is-checked .pbcm-cook-ing-body { text-decoration-color: var(--pb-dark-muted); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-step::before {
    background: var(--pb-dark-primary);
    color: #fff;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-step-ingredient {
    background: transparent;
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-text);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pb-ingredient-brand > circle { fill: var(--pb-dark-raised); }

  /* Authored Notes headings use the same warm text as their surrounding copy. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-tabpanel > .pbcm-cook-notes { background: var(--pb-dark-notes); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-notes > .pbcm-cook-section-head { color: var(--pb-dark-honey) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-notes-body { color: var(--pb-dark-warm); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-notes-body :is(h1, h2, h3, h4, h5, h6, strong, b) { color: var(--pb-dark-warm) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-notes-body a { color: var(--pb-dark-honey); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-nutrition-panel { background: transparent; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-nutrition-panel :is(.pbcm-nutrition-panel-header, .pbcm-nutrition-panel-name, .pbcm-nutrition-panel-unit, .pbcm-nutrition-panel-empty) { color: var(--pb-dark-secondary) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-nutrition-panel .pbcm-nutrition-panel-value { color: var(--pb-dark-text) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-nutrition-panel .pbcm-nutrition-panel-row { border-bottom-color: var(--pb-dark-border) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-nutrition-pills .pbcm-nutrition-pill {
    background: var(--pb-dark-card) !important;
    border-color: var(--pb-dark-border) !important;
    box-shadow: none !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-nutrition-pill strong { color: var(--pb-dark-text) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-nutrition-label { color: var(--pb-dark-secondary) !important; }

  /* Comments cards, replies, guidelines and the full-page composer. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-featured-comment .pbcm-cook-comment, .pbcm-cook-comments-scroll .pbcm-cook-comment-form, .pbcm-cook-comment-options .pbcm-cook-comment-attach, .pbcm-cook-comment-photo) {
    background: var(--pb-dark-card);
    border-color: var(--pb-dark-border);
    box-shadow: none;
  }
  /* Preview cards keep WPRM's original rating markup. Full comments use the
     Cook SVG renderer, so scope its spacing and image tint to the preview. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-featured-comment {
    --comment-rating-star-color: #e8a33d;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-featured-comment .pbcm-cook-comment-meta {
    min-height: 0;
    margin-bottom: 0;
    line-height: 1.4;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-featured-comment .wprm-comment-rating {
    margin-top: 0;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-featured-comment img.wprm-comment-rating {
    border-radius: 0;
    /* These SVG images draw #343434 filled/outlined stars on transparency. */
    filter: sepia(1) saturate(3) brightness(2.7);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comments-guidance, .pbcm-cook-comment-reply-cancel, .pbcm-cook-comments-scroll .pbcm-cook-comment-avatar, .pbcm-cook-comment-avatar--placeholder, .pbcm-comments-all-arrow) {
    background: var(--pb-dark-raised);
    color: var(--pb-dark-text);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-replies {
    background: transparent;
    color: var(--pb-dark-text);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comment-author, .pbcm-cook-comment-pin, .pbcm-cook-featured-read, .pbcm-cook-comment-outcomes button, .pbcm-cook-comment-replying, .pbcm-cook-comment-options > summary) { color: var(--pb-dark-accent) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comments-rate, .pbcm-cook-comment-write, .pbcm-cook-comments-all, .pbcm-cook-comments-more) {
    background: var(--pb-dark-card) !important;
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-accent) !important;
    box-shadow: none !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-featured-comment > .pbcm-cook-comments-all { background: transparent !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comments-page-tools .pbcm-cook-comments-page-add { color: var(--pb-dark-muted); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-comment-launch-field {
    background: var(--pb-dark-raised);
    color: var(--pb-dark-secondary);
  }
  /* Keep reply dates readable against the surrounding comment card. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comments-scroll .pbcm-cook-comment-replies .pbcm-cook-comment-date { color: var(--pb-dark-secondary); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comments-sort {
    color: var(--pb-dark-accent);
    background-color: var(--pb-dark-card);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-thread-actions :is(button, summary),
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-thread-actions button:not([data-ugc]):not([data-comment-delete]),
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comments-scroll .pbcm-cook-comment-thread-actions summary {
    color: var(--pb-dark-secondary) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comments.is-fullpage .pbcm-cook-comment-thread-actions .pbcm-cook-comment-like,
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-thread-actions .pbcm-cook-comment-like {
    color: var(--pb-dark-accent) !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comment-team, .pbcm-cook-comments-scroll .pbcm-cook-comment-team) {
    background: var(--pb-dark-raised);
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-accent);
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-composer[data-mode="comment"] .pbcm-cook-comment-options { border-color: var(--pb-dark-border); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comment-textarea, .pbcm-cook-comment-composer[data-mode="comment"] textarea, .pbcm-cook-share-link) {
    background: var(--pb-dark-card);
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-text);
    caret-color: var(--pb-dark-accent);
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comment-textarea, .pbcm-cook-share-link)::placeholder {
    color: var(--pb-dark-muted);
    opacity: 1;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-attach-clear {
    background: var(--pb-dark-raised) !important;
    color: var(--pb-dark-text) !important;
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-options .pbcm-cook-star { color: var(--pb-dark-muted); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-options .pbcm-cook-star.is-on { color: #e8a33d; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-rating-unit > svg { fill: var(--pb-dark-border); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-rating-fill svg { fill: #e8a33d; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-safety-panel :is(button, .pbcm-cook-comment-menu-edit) { color: var(--pb-dark-text) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-safety-panel :is(button:hover, button:focus-visible) { background: var(--pb-dark-raised) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-safety-panel :is([data-ugc="report"], [data-ugc="block"], .pbcm-cook-comment-menu-delete) { color: var(--pb-dark-danger) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-comment-status.is-error { color: var(--pb-dark-danger); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-cook-comment-status.is-success, .pbcm-cook-safety-notice.is-success) { color: var(--pb-dark-success); }

  /* Blog extras, FAQ and the photo sheet use the same semantic surfaces. */
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-x-sheet, .pbcm-x-preview, .pbcm-x-faq, .pbcm-x-faq-showall, .pbcm-x-thumb) {
    background: var(--pb-dark-card) !important;
    border-color: var(--pb-dark-border);
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-x-sheet-title, .pbcm-x-row-title, .pbcm-x-row-body, .pbcm-x-faq-q, .pbcm-x-faq-a, .pbcm-x-row-head:hover, .pbcm-x-row-head:focus, .pbcm-x-row-head:active, .pbcm-x-faq-q:hover, .pbcm-x-faq-q:focus, .pbcm-x-faq-q:active) { color: var(--pb-dark-text) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-x-row-hint, .pbcm-x-chev) { color: var(--pb-dark-secondary); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-x-eyebrow { color: var(--pb-dark-accent); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-x-row { border-color: var(--pb-dark-border); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-x-sheet-grab { background: var(--pb-dark-muted); }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-x-sheet-close {
    background: var(--pb-dark-raised) !important;
    color: var(--pb-dark-text) !important;
  }

  /* Body-mounted Grocery and nutrition dialogs, toast and print toolbar. */
  html[data-pb-theme="dark"] :is(.pbcm-modal, .pbcm-nutri, .pbcm-print-modal-panel, .pbcm-print-modal-header, .pbcm-print-bar, .pbcm-modal-actions) {
    background: var(--pb-dark-card);
    border-color: var(--pb-dark-border);
    color: var(--pb-dark-text);
    box-shadow: none;
  }
  html[data-pb-theme="dark"] :is(.pbcm-modal-title, .pbcm-groc-modal-desc, .pbcm-print-bar-title) { color: var(--pb-dark-text) !important; }
  html[data-pb-theme="dark"] :is(.pbcm-groc-list-label, .pbcm-groc-loading, .pbcm-modal-x-close) { color: var(--pb-dark-secondary) !important; }
  html[data-pb-theme="dark"] .pbcm-groc-modal-header { border-color: var(--pb-dark-border); }
  html[data-pb-theme="dark"] :is(.pbcm-groc-select, .pbcm-groc-new-name) {
    background: var(--pb-dark-bg) !important;
    border-color: var(--pb-dark-border) !important;
    color: var(--pb-dark-text) !important;
    color-scheme: dark;
  }
  html[data-pb-theme="dark"] .pbcm-groc-new-name::placeholder { color: var(--pb-dark-muted) !important; }
  html[data-pb-theme="dark"] .pbcm-groc-create-toggle { color: var(--pb-dark-accent) !important; }
  html[data-pb-theme="dark"] :is(.pbcm-groc-new-error, .pbcm-groc-error) { color: var(--pb-dark-danger) !important; }
  html[data-pb-theme="dark"] .pbcm-groc-new-created { color: var(--pb-dark-success) !important; }
  html[data-pb-theme="dark"] .pbcm-groc-spinner { border-color: var(--pb-dark-border); border-top-color: var(--pb-dark-accent); }
  html[data-pb-theme="dark"] .pbcm-btn-ghost {
    background: var(--pb-dark-card) !important;
    border-color: var(--pb-dark-border) !important;
    color: var(--pb-dark-text) !important;
  }
  html[data-pb-theme="dark"] .pbcm-btn-ghost:not(:disabled):hover,
  html[data-pb-theme="dark"] .pbcm-modal-x-close:hover { background: var(--pb-dark-raised) !important; }
  html[data-pb-theme="dark"] #pbcm-cook-toast {
    background: var(--pb-dark-raised);
    color: var(--pb-dark-text);
    outline: 1px solid var(--pb-dark-outline);
    box-shadow: none;
  }
  html[data-pb-theme="dark"] #pbcm-cook-toast.is-error { background: var(--pb-dark-raised); color: var(--pb-dark-danger); }
  html[data-pb-theme="dark"] #pbcm-cook-toast .pbcm-cook-toast-action { color: var(--pb-dark-accent); }
  html[data-pb-theme="dark"] .pbcm-print-root { background: var(--pb-dark-bg); }

  /* Filled actions have their own deep plum token, not the light link token. */
  html[data-pb-theme="dark"] .pbcm-btn-primary,
  html[data-pb-theme="dark"] .pbcm-btn-primary:not(:disabled):hover,
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(.pbcm-planner-add-btn, .pbcm-cook-comment-submit, .pbcm-comment-launch-send),
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-primary-actions > .pbcm-cook-plan-btn,
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-footer-dock:not(.pbcm-planner-footer) > .pbcm-cook-plan-btn {
    background: var(--pb-dark-primary) !important;
    border-color: var(--pb-dark-primary) !important;
    color: #fff !important;
    box-shadow: none !important;
  }
  html[data-pb-theme="dark"] #pbcm-cook-overlay .pbcm-cook-plan-btn .pbcm-dock-label { color: #fff !important; }
  html[data-pb-theme="dark"] #pbcm-cook-overlay :is(button, summary, select, textarea, a, [tabindex]):focus-visible:not([disabled]),
  html[data-pb-theme="dark"] :is(.pbcm-modal-overlay, .pbcm-nutri-overlay, #pbcm-cook-lightbox) :is(button, input, select, a):focus-visible {
    outline-color: var(--pb-dark-accent) !important;
  }
}
