.account-page,.account-dialog{--account-ink:#493329;--account-paper:#fbf4e9;color:var(--account-ink);background:var(--account-paper);font:16px/1.6 var(--font-brand)}.account-page{margin:0;min-height:100svh}.account-page *,.account-dialog *{box-sizing:border-box}.account-page a,.account-dialog a{color:inherit;text-underline-offset:4px}.account-page-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 5%;border-bottom:1px solid #cfbcaa}.account-brand{display:inline-block}.account-brand img{display:block;width:145px;height:auto}.account-page-main{width:min(100% - 40px,640px);margin:60px auto 100px}.account-page h1{font:normal clamp(38px,7vw,60px)/1.06 var(--font-brand);letter-spacing:-.03em;margin:0 0 24px}.account-page h2,.account-dialog h2{font:normal clamp(30px,5vw,40px)/1.15 var(--font-brand);letter-spacing:-.025em;margin:0 0 18px}.account-page p,.account-dialog p{max-width:58ch}.account-dialog{border:1px solid #cfbcaa;width:min(calc(100vw - 24px),560px);max-height:calc(100svh - 32px);padding:26px;overflow-y:auto}.account-dialog::backdrop{background:rgba(32,22,17,.58)}.account-dialog-head{position:sticky;top:0;z-index:2;background:var(--account-paper);padding-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.account-dialog-head>button{background:none;border:0;width:48px;height:48px;font-size:32px;color:inherit;cursor:pointer}.account-field{display:block;margin:18px 0}.account-field input{display:block;width:100%;min-height:52px;padding:12px;margin-top:7px;border:1px solid #b9a18b;border-radius:0;background:#fffaf3;color:#493329;font:inherit}.account-primary{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:54px;padding:14px 22px;color:#fff8ee!important;background:#493329;border:1px solid #493329;text-decoration:none;font:inherit;cursor:pointer}.account-text{display:inline-flex;min-height:48px;padding:10px 0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.account-dialog .account-primary{width:100%;margin-top:16px}.account-dialog .account-text{width:100%;justify-content:center}.account-primary:disabled,.account-text:disabled{opacity:.5;cursor:not-allowed}.account-check{display:flex;align-items:flex-start;gap:12px;margin:18px 0;font-size:14px;line-height:1.55}.account-check input{width:20px;height:20px;flex-shrink:0;margin:2px 0 0;accent-color:#493329}.account-muted{font-size:14px;color:#6c5245}.account-error{font-size:15px;color:#8c291d}.account-error:empty{display:none}.account-benefit{font-size:19px;line-height:1.5;margin:30px 0;padding:24px 0;border-block:1px solid #cfbcaa}.account-links{display:flex;flex-wrap:wrap;align-items:center;gap:24px;border-top:1px solid #cfbcaa;margin-top:36px;padding-top:20px}.account-page button:focus-visible,.account-page input:focus-visible,.account-page a:focus-visible,.account-dialog button:focus-visible,.account-dialog input:focus-visible,.account-dialog a:focus-visible{outline:2px solid #8f4c34;outline-offset:4px}.account-page [hidden],.account-dialog [hidden]{display:none!important}.account-page-footer{padding:20px 5%;border-top:1px solid #cfbcaa;font-size:14px}.consultation-return{padding:0 0 32px;margin-bottom:36px;border-bottom:1px solid #cfbcaa}@media(max-width:540px){.account-page-main{margin-top:36px}.account-page-header{padding:16px 20px}.account-dialog{padding:22px 20px}.account-dialog-head{margin-bottom:22px}.account-page-main>.account-primary{width:100%}.account-page-main>.account-text{display:flex;justify-content:center;width:100%}}
.account-page [data-account-page]>.account-text{margin-left:20px}
.account-nav{position:relative;flex-shrink:0}
.account-nav .nav-account{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.account-nav .nav-account[aria-expanded="true"]{text-decoration:underline;text-underline-offset:6px}
.account-nav .nav-account span{display:inline}
.account-menu{position:absolute;top:calc(100% + 14px);right:0;z-index:60;width:310px;max-width:calc(100vw - 24px);max-height:calc(100svh - var(--header,80px) - 26px);overflow-y:auto;padding:24px;background:#fbf4e9;color:#493329;border:1px solid #b9a18b;box-shadow:0 12px 28px #49332924;font:16px/1.5 var(--font-brand);text-align:left}
.account-menu[hidden]{display:none!important}
.account-menu .account-menu-title{margin:0 0 16px;font:25px/1.2 var(--font-brand);letter-spacing:-.025em;overflow-wrap:anywhere}
.site-header .account-nav .account-menu a,.site-header .account-nav .account-menu button{font-size:15px;white-space:normal}
.account-menu-links{display:grid;border-top:1px solid #cfbcaa;padding-top:6px}
.account-menu .account-menu-links a{display:flex;align-items:center;min-height:46px;padding:9px 0;color:inherit;text-decoration:none;line-height:1.5}
.account-menu .account-menu-links a:hover{text-decoration:underline;text-underline-offset:4px}
.account-menu .account-menu-signup{display:block;min-height:44px;padding:8px 0;margin-top:4px;border:0;background:none;color:inherit;font:inherit;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.account-menu .account-menu-action{display:flex;width:100%;justify-content:center;margin-top:18px}
.account-menu .account-menu-error{font-size:14px;line-height:1.5;color:#8c291d;margin-top:12px}
.account-menu .account-menu-error:empty{display:none}
.account-nav button:focus-visible,.account-menu a:focus-visible{outline:2px solid #8f4c34;outline-offset:4px}
.preview-history,#account-bookings{scroll-margin-top:24px}
@media(max-width:760px){.account-nav .nav-account{gap:0}.account-nav .nav-account svg{display:none}.account-menu{position:fixed;top:calc(var(--header,64px) + 10px);inset-inline:12px;width:auto;max-width:none;padding:22px}.account-nav .nav-account span{display:inline}}
@media(max-width:540px){.account-page [data-account-page]>.account-primary{display:flex;width:100%}.account-page [data-account-page]>.account-text{display:flex;justify-content:center;width:100%;margin:10px 0 0}}
.account-google-option{margin:24px 0 20px}.account-google{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:54px;padding:14px 20px;border:1px solid #b9a18b;border-radius:0;background:#fffaf3;color:#493329;font:inherit;cursor:pointer}.account-google-mark{flex:0 0 22px;font:bold 22px/1 var(--font-brand)}.account-google:hover:not(:disabled){background:#f0e4d3;border-color:#82634d}.account-google:disabled{opacity:.55;cursor:not-allowed}.account-google:focus-visible{outline:2px solid #8f4c34;outline-offset:4px}.account-google-note{font-size:13px;line-height:1.5;color:#6c5245;margin:9px 0 0}.account-auth-divider{display:flex;align-items:center;gap:15px;color:#6c5245;font-size:13px;margin:20px 0}.account-auth-divider::before,.account-auth-divider::after{content:"";height:1px;flex:1;background:#cfbcaa}.account-google-identity{display:grid;gap:3px;padding:18px 0;margin:22px 0;border-block:1px solid #cfbcaa;overflow-wrap:anywhere}.account-google-identity>span:first-child{font-size:12px;letter-spacing:.04em;color:#6c5245}.account-google-identity>strong{font-size:18px}.account-google-identity>span:last-child{font-size:14px}.account-google-intro{font-size:15px;line-height:1.6}

/* Familiar account controls, using the Atelier's existing paper and cocoa. */
.account-panel{width:min(100%,500px);margin-inline:auto}
.account-panel h1{font-size:clamp(36px,7vw,48px);margin-bottom:18px}
.account-entry-actions{display:grid;gap:4px}
.account-entry-actions .account-primary,.account-entry-actions .account-text{width:100%;justify-content:center}
.account-panel .account-benefit{font-size:15px;margin:28px 0 0;padding:22px 0;line-height:1.65}
.account-dialog{width:min(calc(100vw - 24px),500px);padding:26px 28px;overscroll-behavior:contain;scrollbar-gutter:stable}
.account-dialog-head{margin-bottom:20px}
.account-dialog h2{font-size:32px;line-height:1.18;margin-bottom:12px}
.account-auth-intro{margin:0 0 22px;font-size:15px;line-height:1.6}
.account-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-bottom:1px solid #cfbcaa;margin:0 0 26px}
.account-auth-tabs button{min-height:48px;padding:10px 8px;border:0;border-bottom:3px solid transparent;background:none;color:#6c5245;font:inherit;cursor:pointer}
.account-auth-tabs button[aria-pressed="true"]{border-bottom-color:#493329;color:#493329;font-weight:600}
.account-form-fields{border:0;padding:0;margin:0;min-inline-size:0}
.account-dialog .account-field{margin:16px 0;font-size:14px;font-weight:600}
.account-dialog .account-field input{font-size:16px;font-weight:400;min-height:52px;padding:12px 14px}
.account-dialog input[name="code"]{font-size:24px;letter-spacing:.18em;text-align:center}
.account-form-fields:disabled input{background:#f2eade;color:#6c5245;cursor:not-allowed}
.account-availability{font-size:14px;line-height:1.6;padding:12px 16px;background:#f2eade;border-left:3px solid #b9a18b;margin:20px 0}
.account-dialog .account-google-option{margin:20px 0 18px}
.account-dialog .account-auth-divider{margin:18px 0}
.account-dialog .account-check{font-size:14px;line-height:1.6}
.account-dialog .account-text{font-size:14px;line-height:1.5;margin-top:6px}
.account-dialog .account-muted{font-size:13px;line-height:1.6}
.account-unavailable-message{margin:0 0 22px;font-size:16px;line-height:1.6}
.account-dialog [data-account-return]{margin-top:8px}
.account-dialog .account-primary:hover:not(:disabled),.account-entry-actions .account-primary:hover:not(:disabled){background:#604638}
@media(max-width:540px){
  .account-dialog{padding:20px;max-height:calc(100svh - 20px);width:calc(100vw - 20px)}
  .account-dialog-head{gap:12px;margin-bottom:14px}
  .account-dialog-head .account-brand img{width:125px}
  .account-dialog h2{font-size:28px}
  .account-auth-tabs{margin-bottom:22px}
  .account-page-main{width:calc(100% - 40px);margin-bottom:60px}
  .account-dialog .account-google{gap:10px;padding:14px 12px;font-size:15px;line-height:1.4}
  .account-dialog .account-google span:last-child{min-width:0;white-space:normal;text-align:center}
}
