/* ShiftTime 01494 · group-level explicit attribute assignment */
.mp-attribute-review-01494{margin:14px 0;padding:16px;border:1px solid #bed6cd;border-radius:14px;background:#f7fbfa;color:#173b31}
.mp-attribute-review-header-01494{display:flex;gap:12px;justify-content:space-between;align-items:center}
.mp-attribute-review-header-01494 h3{font-size:16px;margin:0 0 6px;color:#183e34}
.mp-attribute-review-header-01494 p,.mp-attribute-review-help-01494{color:#4f7168;font-size:12px;margin:3px 0 10px;line-height:1.5}
.mp-attribute-review-rows-01494{display:grid;gap:9px;max-height:600px;overflow-y:auto;padding-right:4px}
.mp-attribute-review-row-01494{border:1px solid #dae8e1;background:#fff;border-radius:10px;padding:12px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(180px,1fr);gap:14px;align-items:center}
.mp-attribute-review-row-01494 strong,.mp-attribute-review-row-01494 small,.mp-attribute-review-row-01494 label span{display:block}
.mp-attribute-review-row-01494 small{font-size:11px;color:#66837b;line-height:1.45;margin-top:2px;word-break:break-word}
.mp-attribute-review-row-01494 label span{font-size:11px;font-weight:650;margin-bottom:5px;color:#295b4e}
.mp-attribute-review-row-01494 select{width:100%;min-width:0;padding:9px;border:1px solid #b9d3c7;border-radius:7px;background:#fff;color:#214c3b}
/* 01496: subtle group-decision outlines, derived from the saved selection. */
.mp-attribute-review-row-01494.is-pending-01496{border-color:#e8b2b2;box-shadow:0 0 0 1px rgba(220,115,115,.07)}
.mp-attribute-review-row-01494.is-none-01496{border-color:#fff;box-shadow:0 0 0 1px rgba(88,112,100,.13)}
.mp-attribute-review-row-01494.is-assigned-01496{border-color:#88cdaa;box-shadow:0 0 0 1px rgba(41,150,86,.08)}
/* An invalid decision must not look like a safe 'without attribute' selection. */
.mp-attribute-review-row-01494.is-error{border-color:#dd9595;box-shadow:0 0 0 1px rgba(204,70,70,.13)}
.mp-attribute-review-row-01494 .mp-attribute-warning-01494{color:#a23e3e;font-weight:600}
.mp-attribute-review-row-01494 .mp-attribute-suggest-01494{color:#187951}
@media(max-width:700px){.mp-attribute-review-row-01494{grid-template-columns:1fr}}

/* 01498 native select state — styling follows the checked option directly.
 * This avoids the stale 01496 class / JS-render timing mismatch. The selected
 * option is the same source of truth as the canonical group decision UI.
 * Existing import validation remains unchanged.
 */
@supports selector(.mp-attribute-review-row-01494:has(select > option:checked)) {
  .mp-attribute-review-row-01494:has(select[data-mp-attribute-decision-01494] > option:checked[value=""]) {
    border-color:#e8b2b2 !important;
    box-shadow:0 0 0 1px rgba(220,115,115,.07) !important;
  }
  .mp-attribute-review-row-01494:not(.is-error):has(select[data-mp-attribute-decision-01494] > option:checked[value="none"]) {
    border-color:#ffffff !important;
    box-shadow:0 0 0 1px rgba(88,112,100,.13) !important;
  }
  .mp-attribute-review-row-01494:has(select[data-mp-attribute-decision-01494] > option:checked[value^="attr:"]) {
    border-color:#88cdaa !important;
    box-shadow:0 0 0 1px rgba(41,150,86,.08) !important;
  }
  .mp-attribute-review-row-01494.is-error:has(select[data-mp-attribute-decision-01494] > option:checked[value="none"]) {
    border-color:#dd9595 !important;
    box-shadow:0 0 0 1px rgba(204,70,70,.13) !important;
  }
}

/* 01499: never hide group review entirely when its role mapping is incomplete. */
.mp-attribute-review-notice-01499{border-color:#d7c59a;background:#fffdf6;}
.mp-attribute-review-notice-01499 h3{margin:0 0 8px;font-size:16px;color:#173b31;}
.mp-attribute-review-notice-01499 p{font-size:12px;color:#5c655c;line-height:1.55;margin:0 0 12px;}
.mp-attribute-review-notice-01499 button{margin-right:8px;margin-bottom:3px;}
