/* Target centre is the office coordinate; the original white emblem stays intact. */
.yb-office-marker{background:none;border:0;color:#2C3E2E;cursor:pointer}
.yb-office-badge{box-sizing:border-box;display:block;position:relative;width:44px;height:44px;border:1px solid #2C3E2E;border-radius:50%;padding:3px;margin:0 auto;background:#fffefa;box-shadow:0 2px 7px #172d2833}
.yb-office-badge:before,.yb-office-badge:after{content:"";position:absolute;pointer-events:none}
.yb-office-badge:before{width:56px;height:1px;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(90deg,#2C3E2E 0 4px,transparent 4px 52px,#2C3E2E 52px)}
.yb-office-badge:after{height:56px;width:1px;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(#2C3E2E 0 4px,transparent 4px 52px,#2C3E2E 52px)}
.yb-office-emblem{display:flex;align-items:center;justify-content:center;flex:0 0 auto;box-sizing:border-box;width:56px;height:56px;padding:5px;border-radius:50%;background:#2C3E2E}
.yb-office-badge .yb-office-emblem{width:100%;height:100%;padding:3px}
.yb-office-emblem svg{display:block;width:100%;height:100%;overflow:hidden}
.yb-office-caption{display:block;position:absolute;top:49px;left:50%;transform:translateX(-50%);padding:2px 5px;border:1px solid #fffefa;border-radius:4px;background:#2C3E2E;color:#fffefa;font:600 12px/1.3 system-ui,sans-serif;letter-spacing:.04em;white-space:nowrap;box-shadow:0 1px 3px #172d2826}
.yb-office-marker:focus-visible{outline:3px solid #a27c31;outline-offset:7px;border-radius:50%}
.yb-office-control{border:1px solid #71877a!important;border-radius:6px!important;box-shadow:0 2px 6px #17352b1a!important;overflow:hidden}
.yb-office-control button{display:block;width:auto!important;min-width:86px;min-height:44px;margin:0!important;padding:8px 12px!important;border:0!important;border-radius:0!important;background:#fffefa!important;color:#2C3E2E!important;font:600 15px/1.4 system-ui,sans-serif!important;cursor:pointer}
.yb-office-control button:hover{background:#f0f4ed!important}.yb-office-control button:focus-visible{outline:3px solid #a27c31;outline-offset:-4px}.yb-office-control button:disabled{opacity:.6;cursor:wait}
.yb-office-popup{margin:0;padding:0;font:15px/1.7 system-ui,sans-serif;color:#263c33;overflow-wrap:anywhere}
.yb-office-identity{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding-right:9px}
.yb-office-identity .yb-office-emblem{width:64px;height:64px;padding:6px}
.yb-office-popup h3{margin:0!important;color:#2C3E2E;font:700 17px/1.5 system-ui,sans-serif}
.yb-office-popup p{margin:0 0 12px!important;font-size:15px!important;line-height:1.7!important}
.yb-office-links{display:flex;flex-wrap:wrap;gap:8px}
.yb-office-links a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:7px 10px;border:1px solid #6c8172;border-radius:5px;color:#2C3E2E!important;font:600 15px/1.4 system-ui,sans-serif;text-decoration:none}
.yb-office-links a:focus-visible{outline:3px solid #a27c31;outline-offset:2px}
.yb-office-popup-host .leaflet-popup-close-button{width:36px!important;height:36px!important;font-size:25px!important;line-height:32px!important;color:#2C3E2E!important}
@media(max-width:350px){.yb-office-identity{align-items:flex-start;gap:8px}.yb-office-identity .yb-office-emblem{width:52px;height:52px;padding:5px}.yb-office-popup h3{font-size:16px}}
@media(prefers-reduced-motion:reduce){.yb-office-marker,.yb-office-popup-host{transition:none!important}}

@media(max-width:767px){.yb-office-badge{width:40px;height:40px;top:2px}.yb-office-badge:before{width:52px;background:linear-gradient(90deg,#2C3E2E 0 4px,transparent 4px 48px,#2C3E2E 48px)}.yb-office-badge:after{height:52px;background:linear-gradient(#2C3E2E 0 4px,transparent 4px 48px,#2C3E2E 48px)}.yb-office-caption{top:45px}}
