.dialog {
    height: auto;
    max-height: clamp(200px, 97vh, 4096px);
    width: clamp(80vw, 95vw, 1024px);
    background: #ffffff;
    opacity: 1;
    visibility: visible;
    margin: auto;
    z-index: 999999;
    color: black;
    border-radius: 1.2rem;
    padding: calc(1.2rem + 8px) 1.2rem 1.2rem 1.2rem;
    justify-self: center;
    justify-content: space-between;
    justify-items: center;
    overflow: scroll;
    /* transition-property: width, height, opacity, max-width, max-height, top, left, bottom, right;
    transition-duration: 333ms;
    transition-timing-function: ease-in-out; */
}

.dialog.invite-dialog {
    max-height: none;
    height: clamp(200px, 65vh, 1024px);
}

.dialog .tab-set {
    width: clamp(299px, 90wv, 299px);
}

.dialog .person-icon,
.dialog .person-icon .circle,
.dialog .row > .circle {
    border-color: black;
    background-color: white;
}

.dialog .content-panel > .row {
    gap: 1rem;
    margin: auto;
}

.dialog .content-panel {
    padding: 0;
    gap: 0.9rem;
    justify-content: center;
}

.dialog .content-panel .content-panel {
    flex-flow: wrap;
}

.dialog .action-panel {
    justify-content: space-between;
    width: 100%;
}

.dialog .simple-list {
    padding: 0;
    margin: 0;
}

.dialog .title .action-item {
    padding: 0;
}

.dialog .action-list .action-item {
    color: black;
    background-color: white;
    padding: 0.5rem 0.75rem;
}

.dialog .action-list .action-item:hover {
    background-color: #dddddd;
}

.dialog .title {
    padding: 0;
    box-shadow: none;
    background: none;
}

.dialog .choice-set {
    background: none;
    justify-content: space-between;
    padding: 0 6px 3px;
}

.dialog .title {
    border-bottom: 1px solid #bbb;
}

.dialog .title,
.dialog .subtitle {
    color: black;
    font-size: 1.2rem;
}

.dialog .card .title,
.dialog .card .subtitle {
    font-size: 14px;
    color: white;
}

.dialog .card .subtitle {
    font-size: 11px;
}


.dialog .circle .subtitle {
    font-size: 0.75rem;
}

.dialog .autocomplete {
    width: 100%;
}

.dialog .autocomplete .simple-list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 0.25rem;
    margin: 0.25rem;
    border-radius: 0.5rem;
}

.smoke {
    background: #000000bb;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 900;
    /* transition-property: width, height, opacity, max-width, max-height, top, left, bottom, right;
    transition-duration: 111ms;
    transition-timing-function: ease-in-out; */
}

.dialog .outer-box {
    background-color: white;
}

/* .dialog .page {
    color: black;
    text-align: center;
    min-height: 100%;
    background-color: #111;
    display: flex;
    align-items: center;
    justify-content: center;
} */

/* .dialog .title {
        color: red;
    } */

.dialog-content {
    color: black;
    text-align: center;
    /* min-height: 100%; */
    /* background-color: #111; */
    display: flex;
    /* align-items: center;
    justify-content: center; */
    margin: auto;
    /* padding: 24px; */
    position: relative;
    min-height: 550px;
    /* max-width: 90%; */
    /* background-color: white;
    border-radius: 24px; */
}

/* header {
        height: 50px;
    } */

main {
    padding: 0 24px;
}

div {
    display: block;
}

main div {
    margin-top: 20px;
    display: block;
}

div.images {
    /* margin-top: 36px */
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 5px;
}

.images img {
    height: 72pt;
    border: 2px solid black;
    border-radius: 50%;
}

/* b {
        display: inline !important;
    } */

footer {
    /* width: 100%; */
    text-align: center;
    /* border: 1px solid red; */
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

footer div {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

footer button.link {
    font-size: 16px;
    color: blue;
    background-color: white;
    width: 99%;
    border: none;
    margin-bottom: 8px;
}

footer .link:hover {
    text-decoration: underline;
}

footer button {
    width: 50%;
    padding: 9px;
    font-size: 16px;
    border-radius: 6px;
}

.dialog .card {
    width: inherit;
}

.dialog .card-list {
    height: inherit;
    background: none;
    border-radius: 0;
}

.dialog .contact .action-item {
    color: black;
    background: none;
    padding: 1em;
}

.dialog .action-item.contact {
    background-color: #dddddd;
}

.dialog .row .circle {
    border-color: #dddddd;
    background-color: #dddddd;
}

.dialog .content-panel .contact .circle .text {
    color: black;
    text-shadow: none;
}

.dialog .card-tags {
    margin: 0;
}

.dialog label {
    font-size: 1rem;
    /*width: clamp(100px, 100%, 320px);*/
}

.dialog label.name {
    width: 100%;
}

.dialog select.select.category option,
.dialog select.select.category {
    width: 100%;
}

.dialog .results .card {
    border-radius: 0.5rem;
}

.dialog > .content-panel > .title .action-item.close{
    top: -0.9rem;
    right: -0.4rem;
}

.dialog > .content-panel {
    overflow-x: visible;
    overflow-y: visible;
}


.dialog .section {
    border: 1px solid lightgray;
    border-radius: 0.125rem;
    padding: 1rem;
    margin: 0.25rem 0 0.25rem 0;
}

/* Location Picker Dialog Styles */
.location-picker-container {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.location-picker-button {
    padding: 0.5rem 1rem;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 0.25rem;
    cursor: pointer;
    font-size: 0.9rem;
}

.location-picker-button:hover {
    background-color: #0056b3;
}

.location-picker-dialog .section-header {
    font-weight: bold;
    margin-bottom: 1rem;
    color: #333;
}

.location-options-list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    max-height: 300px;
    overflow-y: auto;
}

.location-option {
    padding: 0.75rem 1rem;
    border: 1px solid #ddd;
    border-radius: 0.25rem;
    cursor: pointer;
    transition: background-color 0.2s;
}

.location-option:hover {
    background-color: #f8f9fa;
}

.location-option.selected {
    background-color: #007bff;
    color: white;
    border-color: #007bff;
}

.custom-location-section {
    border-top: 1px solid #eee;
    padding-top: 1rem;
}

.custom-location-section input {
    width: 100%;
    padding: 0.5rem;
    margin: 0.5rem 0;
    border: 1px solid #ddd;
    border-radius: 0.25rem;
}

.custom-location-section button {
    padding: 0.5rem 1rem;
    background-color: #28a745;
    color: white;
    border: none;
    border-radius: 0.25rem;
    cursor: pointer;
}

.custom-location-section button:hover {
    background-color: #1e7e34;
}

/* Edit location button on detail page */
.edit-location-btn {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.8rem;
    margin-left: 0.5rem;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.edit-location-btn:hover {
    opacity: 1;
}