/* Generated from ui/styles/shared-controls.css. Edit the source, then npm run build:styles. */
@import "./switch-control.css";
@import url("./public-select.css");
.address-autocomplete__clear, .address-autocomplete__clear:hover, .ep-address__clear, .ep-address__clear:hover { color: var(--ui-paint-ee0c81e123); background: transparent; }
.address-map-open { display: block; margin: var(--ui-space-8) 0; padding: var(--ui-space-4) 0; border: 0; background: transparent; color: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; font: var(--ui-type-control-small); letter-spacing: normal; }
.address-map-dialog { width: min(780px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); padding: var(--ui-space-24); color: var(--ui-paint-be5cc131d7); box-sizing: border-box; overflow: auto; background: var(--ui-surface-light); border-radius: var(--ui-radius-card); border: var(--ui-border-default); box-shadow: var(--ui-shadow-dialog); font: var(--ui-type-body); letter-spacing: normal; }
.address-map-dialog::backdrop { background: var(--ui-backdrop); backdrop-filter: none; }
.address-map-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--ui-space-16); }
.address-map-heading h2 { margin: 0; font: var(--ui-type-dialog); letter-spacing: -.015em; }
.address-map-dialog p { margin: var(--ui-space-12) 0; font: var(--ui-type-caption); letter-spacing: normal; }
.address-map-canvas { border-radius: var(--ui-radius-control); overflow: hidden; width: 100%; height: min(440px, 48dvh); background: var(--ui-paint-44d423013e); }
.address-map-dialog [data-confirm] { width: 100%; }

@media (max-width: 600px) {
  .address-autocomplete__clear, .ep-address__clear { width: var(--ui-space-44); height: var(--ui-space-44); right: var(--ui-space-4); }
  .address-map-dialog { padding: var(--ui-space-16); }
  .address-map-heading button { flex-shrink: 0; }
}

/* Public fields: one owner for static pages, React calculators and the guide. */
.public-field { display:grid; min-width:0; gap:var(--ui-field-gap); margin:0; padding:0; border:0; }
.field > label,
.public-field > label,.public-field > legend { padding:0; font:var(--ui-type-label); }
:is(.field,.public-field,.ep-form) :where(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),textarea,select) {
  box-sizing:border-box; width:100%; min-width:0; height:var(--ui-field-height); min-height:var(--ui-field-height); padding:0 var(--ui-space-8) 0 var(--ui-control-inset);
  border:0; border-radius:var(--ui-radius-control); background:var(--ui-field-surface); color:var(--ui-color-ink); font:var(--ui-type-field-compact);
}
:is(.field,.public-field,.ep-form) textarea { height:auto; padding-block:var(--ui-control-block); min-height:var(--ui-field-textarea-height); resize:vertical; }
:is(.field,.public-field,.ep-form) :is(input,textarea):focus-visible { outline:2px solid var(--ui-color-accent); outline-offset:-2px; }
:is(.field,.public-field,.ep-form) :is(input,textarea):disabled { opacity:.55; cursor:not-allowed; }
:is(.field,.public-field,.ep-form) :is(input,textarea)[aria-invalid="true"] { box-shadow:inset 0 0 0 1px var(--ui-color-error); }
.public-field[data-state="success"] :is(input,textarea) { border-color:var(--ui-color-success); }
.public-field[data-state="loading"] { cursor:progress; }
.public-field__help,.public-field__message { margin:0; font:var(--ui-type-caption); color:var(--ui-color-muted); overflow-wrap:anywhere; }
.public-field[data-state="error"] .public-field__message { color:var(--ui-color-error); }
.public-field[data-state="success"] .public-field__message { color:var(--ui-color-success); }
.public-field__message:empty { display:none; }
:is(.field,.public-field,.ep-form) input[type="date"] { position:relative; appearance:none; max-width:100%; padding-right:var(--ui-space-48); cursor:pointer; }
:is(.field,.public-field,.ep-form) input[type="date"]::-webkit-calendar-picker-indicator { position:absolute; right:var(--ui-control-inset); margin:0; cursor:pointer; }
:is(.range-field,.public-field) input[type="range"] { width:100%; min-width:0; min-height:var(--ui-space-44); margin:0; accent-color:var(--ui-color-ink); cursor:pointer; }
:is(.range-field,.public-field) input[type="range"]:focus-visible { outline:2px solid var(--ui-color-accent); outline-offset:3px; border-radius:var(--ui-radius-control); }
.public-choice { display:flex; align-items:center; gap:var(--ui-control-gap); min-height:var(--ui-space-44); font:var(--ui-type-field-compact); cursor:pointer; }
.public-choice input { flex-shrink:0; width:var(--ui-choice-size); height:var(--ui-choice-size); margin:0; accent-color:var(--ui-color-accent); }
.public-choice:has(:focus-visible) { text-decoration:underline; text-underline-offset:3px; }
.public-choice:has(:disabled) { cursor:not-allowed; }
@media (forced-colors:active) { :is(.field,.public-field,.ep-form) :is(input,textarea):focus-visible { outline:2px solid Highlight; } }

:is(.field,.public-field,.ep-form) input[type="date"]::-webkit-date-and-time-value { min-width:0; margin:0; padding:0; text-align:left; }
