.color-native-input { position:absolute !important; width:1px !important; height:1px !important; min-height:0 !important; opacity:0; pointer-events:none; padding:0 !important; border:0 !important; }
.color-controls { position:relative; display:inline-block; width:max-content; max-width:100%; }
.color-trigger { display:block; width:48px; height:36px; padding:3px; border:1px solid #aac9c1; border-radius:8px; cursor:pointer; box-shadow:inset 0 0 0 3px #fff; }
.color-trigger:focus-visible { outline:2px solid #176e61; outline-offset:2px; }
.color-popover { position:absolute; z-index:50; top:calc(100% + 6px); left:0; display:block; width:min(285px,calc(100vw - 32px)); padding:10px; border:1px solid #bfd8d2; border-radius:11px; background:#fff; color:#173a33; box-shadow:0 14px 35px #0c27333b; }
.color-popover[hidden],.color-custom[hidden],.color-swatches[hidden] { display:none !important; }
.color-tabs { display:flex; gap:4px; margin-bottom:10px; padding:3px; border-radius:7px; background:#edf6f3; }
.color-tabs button { flex:1; min-height:30px; border:0; border-radius:5px; color:#315d54; background:transparent; font:inherit; font-size:.73rem; font-weight:750; cursor:pointer; }
.color-tabs button[aria-selected=true] { color:#0c473c; background:#fff; box-shadow:0 1px 4px #0c273326; }
.color-swatches { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:7px; }
.color-swatch { box-sizing:border-box; width:100%; height:34px; padding:0; border:1px solid #9eb8b2; border-radius:7px; cursor:pointer; box-shadow:inset 0 0 0 1px #ffffff55; }
.color-swatch[aria-pressed=true] { outline:2px solid #176e61; outline-offset:2px; }
.color-custom { display:grid; gap:6px; }
.color-code,.company-color-field .color-code,.senior-builder .sd-color-field .color-code { box-sizing:border-box; width:100% !important; min-height:36px; padding:7px 10px; border:1px solid #b9d0cb !important; border-radius:8px; background:#fff !important; color:#173a33; font:inherit; font-size:.78rem; }
.color-code[aria-invalid=true] { border-color:#c04b4b !important; box-shadow:0 0 0 2px #c04b4b22; }
.color-custom small { color:#607c75; font-size:.69rem; }
.senior-builder .sd-color-field { position:relative; display:grid !important; grid-template-columns:1fr; align-content:start; gap:5px; width:100%; }
.senior-builder .sd-color-field > span:first-child { grid-column:1; }
.senior-builder .sd-color-field .color-controls { grid-column:1; }
.senior-builder .sd-header-color-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-column:1/-1; gap:12px; }
.senior-builder .sd-header-color-pair .sd-color-field { min-width:0; }
.company-color-field { position:relative; display:block; min-height:46px; }
.company-color-field .color-controls { display:block; }
.company-color-grid .trial-field > .color-controls { margin-top:7px; }
