dialog{border:none;border-radius:8px;box-shadow:0 10px 40px #0000004d;padding:0;width:50vw;max-width:95vw}dialog:not([open]){display:none}dialog::backdrop{background-color:var(--brand-muted);animation:fadeIn .3s ease-out}dialog[open]{display:flex;flex-direction:column;animation:slideIn .3s ease-out}.dialog-container{display:flex;flex-direction:column;height:100%}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-10);padding:var(--sp-20);border-bottom:1px solid var(--grey-600);background-color:var(--grey-200);flex-wrap:nowrap}.dialog-header h2{margin:0;font-size:1.25rem;color:var(--brand-500);flex:1;line-height:1.2}.dialog-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--grey-800);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.dialog-close-btn:hover{background-color:#0000001a;color:var(--black)}.dialog-close-btn:focus{outline:2px solid var(--accent-500);outline-offset:2px}.dialog-body{padding:var(--sp-20);flex:1;overflow-y:auto;min-height:200px}.dialog-footer{display:flex;justify-content:flex-end;gap:var(--sp-10);padding:var(--sp-20);border-top:1px solid var(--grey-600);background-color:var(--grey-200)}.dialog-btn-close{background-color:var(--accent-500);color:var(--white);border:none;padding:var(--sp-10) var(--sp-25);border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}.dialog-btn-close:hover{background-color:var(--accent-600)}.dialog-btn-close:focus{outline:2px solid var(--accent-500);outline-offset:2px}.appointment-dialog{max-width:800px}.appointment-dialog .dialog-body{padding:0}.appointment-dialog .dialog-body iframe{border:none}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:768px){dialog{max-width:95vw;width:100%}.dialog-header h2{font-size:1.1rem}.dialog-body,.dialog-footer{padding:var(--sp-15)}.appointment-dialog{max-width:100vw}.appointment-dialog .dialog-body iframe{height:400px!important}}iframe{max-width:100%}
