.location-box{padding:18px;border:1px solid #e4e4ea;border-radius:18px;display:grid;gap:12px;background:#fff;min-width:0}.location-box h3,.location-box p{margin:0}.location-actions{display:flex;flex-wrap:wrap;gap:8px}.location-actions button{min-height:44px}.location-status{padding:12px;background:#fff3ed;border-radius:10px;font-size:14px;line-height:1.7}.location-status.confirmed{background:#edf8f0;color:#15562d}.location-results{display:grid;gap:8px}.location-result{white-space:normal;text-align:start;font-weight:700;width:100%}.location-result small{display:block;line-height:1.7;font-weight:400;color:#555}.location-map-wrap{min-width:0}.location-map-wrap[hidden]{display:none}.location-map{width:100%;display:block;aspect-ratio:2/1;background:#e3e6e8;border:1px solid #d4d6dc;border-radius:12px;direction:ltr;touch-action:none;cursor:crosshair;margin:8px 0}.location-map:focus{outline:3px solid var(--kifna-red)}.location-map-wrap .location-actions{margin-bottom:8px}.map-attribution{display:block;font-size:12px;color:#333;text-align:end;direction:ltr}.location-advanced{padding:12px;border:1px dashed #d4d6dc;border-radius:12px}.location-advanced summary{cursor:pointer;color:var(--kifna-muted);font-size:13px}.location-advanced .form-grid{margin-top:12px}.location-advanced input{direction:ltr}.location-box .field{margin:0}.location-box input{max-width:100%}@media(max-width:520px){.location-box{padding:12px}.location-actions button{flex:1;font-size:13px}.location-box .form-grid{grid-template-columns:1fr}}

.location-link-box {border-block-end:1px solid #e5e5e8;padding-block-end:18px;margin-block-end:18px}.location-link-box .primary {width:100%}.location-link-box a {display:block;margin-block:12px}.location-link-box a[hidden] {display:none}

/* Pilot UX: map-first restaurant location. Search/link helpers remain in code but are hidden from the operator flow. */
.location-link-box[hidden],#place-city[hidden],#place-query[hidden],#place-search[hidden],#show-location-map[hidden],.location-results[hidden]{display:none!important}

/* Author styles for .field previously overrode the browser's hidden attribute. */
.location-box [hidden]{display:none!important}
.location-actions .location-locate{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--red);border-color:var(--red);font-size:15px}
.location-locate svg{flex:none}.location-device-status{padding-block:6px;line-height:1.7;overflow-wrap:anywhere}
@media(max-width:520px){.location-actions .location-locate{flex:1 0 100%}}
#dialog input,#dialog select,#dialog textarea{font-size:16px}
#dialog .field{min-width:0}
#dialog{max-width:calc(100vw - 24px);overflow-x:hidden}
#address-field-hint{font-weight:400;color:var(--kifna-muted);font-size:13px;overflow-wrap:anywhere}
.address-feedback{overflow-wrap:anywhere}

/* Restaurant dependencies: actual selections, clear empty states, in-context creation. */
.setup-picker{border:1px solid var(--line);padding:18px;border-radius:14px;margin-top:16px;min-width:0}.setup-help{font-size:.88rem;color:var(--muted);margin:8px 0 12px}.setup-state{overflow-wrap:anywhere;font-size:.94rem;line-height:1.7;padding:10px;background:var(--kifna-canvas);border-radius:8px}.setup-search{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}.setup-search summary{cursor:pointer;font-size:.87rem;color:var(--muted)}.setup-search>.field{margin-top:14px}.setup-picker select,.setup-dialog input,.setup-dialog select{font-size:16px;width:100%;min-width:0}.setup-picker [hidden]{display:none!important}.setup-dialog{max-width:540px;max-height:90svh;overflow:auto}.setup-dialog .dialog-top{align-items:flex-start}.setup-dialog .dialog-top button{font-size:.85rem;max-width:45%}.setup-picker .row button{min-height:44px}.setup-dialog .check input{width:20px;height:20px}.setup-dialog form{min-width:0}.setup-dialog::backdrop{background:#16192299}

/* Google controls and attribution remain inside an unobscured, bounded viewport. */
.location-google-map{position:relative;width:100%;height:320px;min-height:280px;border:1px solid #d4d6dc;border-radius:12px;margin:8px 0;direction:ltr;overflow:hidden;background:#e3e6e8}
.location-google-map:focus-visible{outline:3px solid var(--kifna-red)}
.location-google-pin{position:absolute;pointer-events:none;width:24px;height:24px;border:4px solid var(--kifna-red);border-radius:50%;background:#fff;box-shadow:0 2px 8px #0004;transform:translate(-50%,-50%);box-sizing:border-box}
.location-google-pin::after{content:"";position:absolute;inset:5px;background:var(--kifna-red);border-radius:50%}
