.sd-dialog{border:0;border-radius:28px;padding:0;width:min(540px,calc(100% - 30px));max-height:calc(100dvh - 32px);overflow:auto;background:#fff;color:var(--ink)}.sd-dialog::backdrop{background:#24473835;backdrop-filter:blur(8px)}.sd-header{position:sticky;top:0;display:flex;align-items:center;gap:12px;padding:16px 18px;background:#fff;z-index:1;color:#86917f;font-size:11px}.sd-back{border:0;border-radius:50%;width:42px;height:42px;color:#315443;background:#f0f4e7;font-size:23px;cursor:pointer}.sd-body{padding:30px 24px;background:radial-gradient(ellipse at 15% 30%,#f0f5e7b0,transparent 68%)}.sd-search{display:flex;align-items:center;gap:12px}.sd-label{display:block;flex:1;min-width:0;color:#788b69;font-size:13px}.sd-title{display:block;width:100%;box-sizing:border-box;border:0;border-radius:0;background:transparent;color:#244b3b;font:inherit;font-size:27px;padding:16px 0;outline-offset:4px}.sd-title::placeholder{font-size:16px;color:#99a28f}.sd-action{background:none;border:0;color:#7f906e;font:inherit;font-size:13px;padding:12px 0;min-height:44px;cursor:pointer}.sd-divider{display:flex;align-items:center;gap:12px;color:#7f966c;font-size:12px;margin:12px 0 30px}.sd-divider:before,.sd-divider:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#bdcba9)}.sd-divider:after{transform:rotate(180deg)}.sd-intro{font-size:12px;line-height:1.7;color:#8b9581;margin:18px 0}.sd-results{border-left:1px solid #d7dfcd;margin-left:8px;padding-left:20px}.sd-result{position:relative;display:block;min-height:48px;width:100%;padding:13px 0;text-align:left;border:0;background:none;color:#4d6841;font:inherit;font-size:14px;cursor:pointer}.sd-result:before{content:'';position:absolute;left:-24px;top:22px;width:7px;height:7px;border-radius:50%;background:#9ab381;box-shadow:0 0 0 4px #f6f9f0}.sd-kicker{font-size:10px;letter-spacing:.05em;color:#8b987e;margin:0 0 24px}.sd-primary{display:block;margin:30px 0 0 auto;border:1px solid #dce5cf;border-radius:26px;padding:14px 22px;background:#edf3e3;color:#496438;font:inherit;font-size:13px;cursor:pointer}.service-type-context{font-size:11px;color:#86947b;margin:0 24px 12px}
/* Match the original editor: follow the visual viewport without a second slide. */
.sd-dialog{position:fixed;inset:auto 0 auto 0;top:var(--overlay-visible-center,50%);translate:0 -50%;margin:0 auto;max-height:max(0px,calc(var(--overlay-visible-height,100dvh) - 40px));overscroll-behavior:contain}
.sd-dialog[open]{animation:veil-arrive .18s ease both}
.sd-title:focus{outline:none}
.sd-body{position:relative;isolation:isolate;background:none}
.sd-body::before{content:'';position:absolute;z-index:-1;pointer-events:none;inset:24px 19px 0;background:radial-gradient(ellipse at 35% 38%,#e8f0db99,transparent 75%)}
@media(prefers-reduced-motion:reduce){.sd-dialog[open]{animation:none}}

.sd-back{display:grid;place-items:center;width:45px;height:45px;padding:0;border:1px solid #dfe6d8;background:#f0f4e9;color:var(--ink)}.sd-back svg{width:21px;height:21px}

.sd-search input::-webkit-search-cancel-button,.sd-search input::-webkit-search-decoration{display:none;-webkit-appearance:none}
.sd-search input::-ms-clear{display:none}
.sd-find{display:grid;place-items:center;flex:0 0 44px;width:44px;min-height:44px;padding:0;color:#7f906e}.sd-find svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
/* Naming uses the same quiet hierarchy as the service workspace. */
.sd-naming .sd-kicker{font-size:10px;line-height:1.5;letter-spacing:.025em;color:#8b987e;margin:0 0 18px}
.sd-naming .sd-label{font-size:12px;line-height:1.5;color:#7f8f72}
.sd-naming .sd-title{font-size:28px;font-weight:500;letter-spacing:-.04em;line-height:1.3;padding:12px 0 8px}
.sd-naming .sd-name-note{font-size:12px;line-height:1.65;color:#89947e;max-width:30ch;margin:12px 0 0}
.sd-naming [role=status]:empty{display:none}
.sd-naming .sd-primary{margin-top:26px}
/* Typography only: keep the original naming surface and gradient. */
.sd-naming .sd-kicker{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:9px;row-gap:3px;line-height:1.5}
.sd-context-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#929d89}
.sd-context-name{font-size:12px;font-weight:500;letter-spacing:0;color:#758968}
.sd-naming .sd-label{font-size:13px;font-weight:500;letter-spacing:-.01em;color:#708463}
.sd-naming .sd-name-note{font-size:12px;font-weight:400;line-height:1.7;color:#8a957f}
