/* Shared floral frame for every application dialog, including future dialogs. */
dialog.quenway-dialog {
  border:2px solid var(--accent,#b9cbb7);
  border-radius:6px;
  background:var(--tint,#fffdf8);
  box-shadow:0 4px 10px #183b3b24,0 18px 36px #183b3b38,0 40px 90px #102d2d52,inset 0 1px 0 #ffffffcc;
}
dialog.quenway-dialog::before {
  content:"";position:absolute;inset:9px;border:1px solid var(--inner,#dce4d2);
  border-radius:2px;pointer-events:none;
}
dialog.quenway-dialog::backdrop {background:#183b3b80;backdrop-filter:blur(3px)}
.quenway-dialog .shared-flower {position:absolute;width:88px;height:88px;opacity:.8;pointer-events:none;z-index:0}
.shared-flower.tl{top:0;left:0}.shared-flower.tr{top:0;right:0;transform:rotate(90deg)}
.shared-flower.br{bottom:0;right:0;transform:rotate(180deg)}.shared-flower.bl{bottom:0;left:0;transform:rotate(270deg)}
dialog.auth-dialog{width:min(450px,calc(100% - 28px));padding:48px 38px 38px}
.auth-dialog>h2,.auth-dialog>p,.auth-dialog>form,.auth-dialog>.auth-submit,.auth-dialog>#auth-switch{position:relative;z-index:1}
.auth-dialog .auth-close{z-index:3;top:12px;right:12px;border-radius:50%;background:#fffdf8}
.auth-dialog input{border:1px solid #c7d7ce;border-radius:4px;background:#ffffffd9;color:var(--ink)}
.auth-dialog .auth-submit{background:#245b55;border-radius:4px;min-height:48px}
.auth-dialog [hidden]{display:none!important}
@media(max-width:480px){dialog.auth-dialog{padding:48px 28px 32px}.auth-dialog h2{font-size:29px}.quenway-dialog .shared-flower{width:72px;height:72px}}
@media(max-width:650px){.topbar .wrap{height:auto;min-height:64px;padding-block:8px;flex-wrap:wrap;gap:8px}.topbar .header-actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}#history-link{max-width:130px;font-size:11px}#history-link img{width:26px;height:24px}}
.account-controls-ready #logout-button,.account-controls-ready .session-label{display:none!important}
.share-reading-dialog h2{font:29px Georgia,serif;margin:0 0 15px}.share-reading-dialog p{font:14px/1.7 Arial;color:#647775}.share-reading-dialog .share-privacy{font-size:12px}.share-reading-dialog label{font-size:12px}.share-reading-dialog input{display:block;width:100%;box-sizing:border-box;padding:12px;margin-top:8px;font:12px Arial}.share-reading-dialog .auth-submit{width:100%;margin-top:18px;border:0;color:white;cursor:pointer}.share-reading-dialog .auth-close{position:absolute;border:0;font:26px Arial;cursor:pointer}
.journal-note{padding:18px 0}.journal-note+.journal-note{border-top:1px solid var(--inner,#d7dfcf)}.journal-note time{display:block;margin-bottom:10px;color:#82907e;font:12px/1.6 Arial,sans-serif}
.note-saved-dialog{text-align:center}.note-saved-dialog h2{font:29px Georgia,serif;margin:0 0 15px}.note-saved-dialog .auth-submit{width:100%;border:0;color:white;font:700 14px Arial;cursor:pointer}
#saved-comments-time{display:block;margin:-4px 0 14px;color:#82907e;font:12px/1.6 Arial,sans-serif}
#saved-comments{margin-top:28px;padding:24px;border-top:1px solid var(--inner,#d7dfcf);background:#ffffff80}#saved-comments h3{font:25px Georgia,serif;margin:0 0 12px}#saved-comments p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;margin:0;color:#5d7365}
.conclusion-actions{flex-wrap:wrap}.comments-dialog h2{font:29px Georgia,serif;margin:0 0 12px}.comments-dialog>p{font-size:14px;color:#647775}.comments-dialog textarea{display:block;box-sizing:border-box;width:100%;min-height:180px;resize:vertical;padding:12px;margin-top:8px;border:1px solid #c7d7ce;border-radius:4px;background:white;color:#233b3c;font:15px/1.6 Arial}.comments-dialog .comments-hint,.comments-dialog #comments-status{font:12px/1.6 Arial;color:#647775}.comments-dialog .auth-submit{width:100%;border:0;color:white;margin-top:10px;cursor:pointer}.comments-dialog .auth-close{position:absolute;border:0;font:26px Arial;cursor:pointer}
.password-label-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 9px}.password-label-row a{font:11px/1.5 Arial,sans-serif;color:#537660;text-underline-offset:3px}.password-label-row a:hover{color:#244b36}.recovery-dialog h2{font:29px Georgia,serif;margin:0 0 14px}.recovery-dialog>p{font:14px/1.6 Arial,sans-serif;color:#647775}.recovery-dialog label{font:14px Arial,sans-serif}.recovery-dialog input{display:block;width:100%;box-sizing:border-box;padding:12px;margin:8px 0 16px;font:16px Arial}.recovery-dialog .auth-submit{width:100%;border:0;color:white;margin-top:10px;font:700 14px Arial;cursor:pointer}.recovery-dialog .auth-close{position:absolute;border:0;font:26px Arial;cursor:pointer}#recovery-status{font:13px/1.6 Arial;color:#6b765e;margin-bottom:0}
.auth-dialog .auth-secondary{display:block;width:100%;min-height:44px;margin-top:10px;padding:10px 16px;border:1px solid #b7c9ae;border-radius:4px;background:#f2f6ed;color:#375c49;font:700 13px Arial;cursor:pointer;position:relative;z-index:1}.auth-dialog .auth-secondary:hover{background:#e6efde}
#draw-login-dialog h2{font:29px Georgia,serif;margin:0 0 12px}#draw-login-dialog p{font-size:14px;line-height:1.6;color:#647775}#draw-login-dialog label{display:block;font-size:14px;margin-top:14px}#draw-login-dialog input{display:block;width:100%;box-sizing:border-box;padding:12px;margin:8px 0 16px;font:16px Arial}#draw-login-dialog .auth-submit{width:100%;margin-top:14px;border:0;color:white;font-weight:700;cursor:pointer}#draw-login-dialog .auth-close{position:absolute;font-size:26px;border:0;cursor:pointer}#draw-login-status{margin-bottom:0}
.account-amount-row{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}#account-top-up{border:1px solid #b6c7a8;border-radius:12px;background:#edf3e5;color:#526e42;font:700 9px/1.2 Arial,sans-serif;letter-spacing:.04em;padding:5px 7px;cursor:pointer;white-space:nowrap}#account-top-up:hover{background:#dfead3;border-color:#829c70}#account-top-up-status{font-size:11px;color:#708263;margin:-6px 0 15px}
.header-actions #history-link{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border:1px solid #b6c7b0;border-radius:50%;background:#fffdf5;box-shadow:0 2px 5px #36533b12;text-decoration:none}.header-actions #history-link img{width:30px;height:27px}.header-actions #history-link:hover{border-color:#769570;background:#eaf1e4}
.header-actions #account-avatar{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:3px;border:1px solid #b6c7b0;border-radius:50%;background:#fffdf5;box-shadow:0 2px 5px #36533b12;cursor:pointer;flex-shrink:0}
#account-avatar img{display:block;width:36px;height:36px}#account-avatar:hover{border-color:#769570;background:#eaf1e4}
.header-actions #history-link,.header-actions #account-avatar{display:inline-flex;align-items:center;gap:7px;width:auto;max-width:none;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#233b3c;font:700 13px Arial,sans-serif;white-space:nowrap}.header-actions .nav-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1px solid #b6c7b0;border-radius:50%;background:#fffdf5;box-shadow:0 2px 5px #36533b12}.header-actions #history-link:hover,.header-actions #account-avatar:hover{background:transparent;color:#527c55}.header-actions #history-link:hover .nav-icon,.header-actions #account-avatar:hover .nav-icon{background:#eaf1e4;border-color:#769570}@media(max-width:650px){.header-actions #history-link,.header-actions #account-avatar{font-size:11px;gap:5px}.header-actions .nav-icon{width:36px;height:36px}.header-actions #history-link img{width:26px;height:24px}.header-actions #account-avatar img{width:30px;height:30px}}
dialog.account-card{position:fixed;inset:86px 24px auto auto;margin:0;width:min(370px,calc(100vw - 28px));max-height:calc(100dvh - 104px);padding:28px;color:#233b3c;overflow:auto;font:14px/1.55 Arial,Helvetica,sans-serif}
.account-card-content{position:relative;z-index:1;text-align:center}.account-close{position:absolute;top:12px;right:12px;z-index:3;border:0;background:#fffdf8;border-radius:50%;width:30px;height:30px;color:#617664;font:24px/1 Arial;cursor:pointer}.account-portrait{width:52px;height:52px}.account-eyebrow{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#819077;margin:6px 0}.account-card h2{font:29px Georgia,serif;margin:6px 0 16px}.account-field-label{display:block;color:#819077;font-size:10px}.account-card #account-user-id{font:11px/1.6 monospace;overflow-wrap:anywhere;margin:4px 0 18px;color:#5c7060}.account-balances{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid #dfe4d4;padding:12px 0;margin-bottom:17px}.account-balances>div+div{border-left:1px solid #dfe4d4}.account-balances strong{display:block;font:27px Georgia,serif;color:#3b654e}.account-balances span{display:block;font-size:11px;color:#71826c;margin-top:4px}.account-card h3{font:20px Georgia,serif;margin:0 0 8px}.account-invite-copy{font-size:11px;line-height:1.65;color:#7b8775;margin:0 auto 9px;max-width:280px}#account-qr{display:block;width:156px;height:156px;margin:0 auto 10px;image-rendering:pixelated;border:1px solid #e6e7dc;border-radius:3px;background:white}#account-qr[hidden]{display:none}.account-share{display:flex;gap:6px;margin-top:6px}.account-share input{min-width:0;flex:1;padding:9px;border:1px solid #d8dfcf;background:white;border-radius:3px;color:#64765e;font:11px Arial}.account-share button{border:1px solid #b7c9ae;border-radius:3px;background:#edf3e7;color:#395c44;padding:8px 12px;font:11px Arial;cursor:pointer}#account-share-status{font-size:11px;color:#637c56;margin:8px 0;min-height:16px}#account-log-out{width:100%;border:1px solid #bac8b0;background:#f5f7ee;color:#37583f;border-radius:4px;padding:11px;font:12px Arial;cursor:pointer}#account-log-out:hover{background:#e8efdf}.account-card button:focus-visible,.account-card input:focus-visible,#account-avatar:focus-visible{outline:3px solid #bca66a;outline-offset:3px}
@media(max-width:480px){dialog.account-card{inset:78px 14px auto auto;max-height:calc(100dvh - 92px);padding:24px}.account-card .shared-flower{width:65px;height:65px}}
/* Compact mobile navigation: icon above its label, language control last. */
@media(max-width:650px){
 .header-actions #history-link,.header-actions #account-avatar{flex-direction:column;justify-content:flex-start;align-items:center;height:auto;min-height:62px;max-width:88px;gap:5px;text-align:center;white-space:normal;line-height:1.25}
 .header-actions #history-link>span:last-child,.header-actions #account-avatar>span:last-child{max-width:88px;overflow-wrap:anywhere}
 .header-actions .nav-icon{width:40px;height:40px;box-sizing:border-box}
 .header-actions button.language-picker{align-self:flex-start;margin-top:0}
}
/* Keep the mobile home header in one row, including signed-out controls. */
@media(max-width:650px){
 .topbar .wrap{flex-wrap:nowrap;gap:8px}
 .topbar .wrap>a{min-width:0;flex:0 1 160px}
 .topbar .logo{width:100%;max-width:160px;height:58px}
 .topbar .header-actions.has-language-picker{flex-wrap:nowrap;gap:5px!important;flex-shrink:0}
 .topbar .header-actions [data-auth]{padding:6px 7px;font-size:11px;min-height:34px}
 .topbar .header-actions button.language-picker{width:30px;height:30px;min-height:30px!important;padding:4px!important;align-self:center}
 .topbar .header-actions button.language-picker svg{width:21px;height:21px}
}
