#work-order .gc-pattern-trigger {
  display:block; margin-top:7px; padding:5px 8px; border:1px solid var(--gc-line,#3b5368);
  border-radius:7px; background:transparent; color:var(--gc-accent,#4faaff);
  font:inherit; font-size:11px; font-weight:700; cursor:pointer;
}
.gc-pattern-dialog {
  box-sizing:border-box; width:min(420px,calc(100vw - 28px)); max-height:calc(100dvh - 28px);
  padding:18px; border:1px solid #3c566b; border-radius:15px;
  background:#122232; color:#eaf4fb; box-shadow:0 20px 70px #0008;
}
.gc-pattern-dialog::backdrop {background:#04101bc9}
.gc-pattern-head {display:flex; align-items:start; justify-content:space-between; gap:12px}
.gc-pattern-head h2 {margin:0; font-size:19px}
.gc-pattern-head button {border:0; background:transparent; color:inherit; font-size:25px; cursor:pointer}
.gc-pattern-dialog p {font-size:13px; line-height:1.5; color:#b9cedf}
.gc-pattern-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:15px; width:min(270px,100%);
  margin:18px auto; padding:12px; touch-action:none; user-select:none;
}
.gc-pattern-grid button {
  width:58px; height:58px; justify-self:center; border:2px solid #93b8d6; border-radius:50%;
  background:#1d3448; color:#fff; font-size:18px; font-weight:800; cursor:pointer;
  touch-action:none;
}
.gc-pattern-grid button.is-selected {border-color:#4faaff; background:#145f98}
.gc-pattern-actions {display:flex; justify-content:flex-end; gap:8px}
.gc-pattern-actions button {
  min-height:38px; padding:7px 12px; border:1px solid #4e6b82; border-radius:8px;
  background:#1d3448; color:#fff; font:inherit; cursor:pointer;
}
.gc-pattern-actions [data-gc-pattern-save] {background:#1675c2; border-color:#1675c2}
.gc-pattern-dialog :is(button):focus-visible,#work-order .gc-pattern-trigger:focus-visible {
  outline:2px solid #72bbff; outline-offset:2px;
}
