/* modals-base.css
   Pop-up windows (log in, account, legal): base layout and visibility rules.
*/

.consent-overlay{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.68);display:none;align-items:flex-start;justify-content:center;padding:18px;overflow:auto;overscroll-behavior:contain;}
.consent-overlay.active{display:flex;}
.consent-modal{width:min(720px,calc(100vw - 36px));max-height:calc(100vh - 36px);max-height:calc(100svh - 36px);margin:auto 0;background:#f1f3ee;color:#0f1a17;padding:26px;border:1px solid #d6ddd8;box-shadow:0 30px 90px rgba(0,0,0,.42);overflow:auto;-webkit-overflow-scrolling:touch;}
.consent-modal h2{font-family:var(--site-font);font-size:30px;font-weight:600;}
.consent-modal p{color:#44524c;font-size:14px;margin-top:10px;}
.consent-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;}
.consent-fields label{font-size:12px;font-weight:700;color:#44524c;display:block;margin-bottom:6px;}
.consent-fields input,.consent-fields select{width:100%;padding:12px;border:1px solid #cad3cd;background:#fff;color:#0f1a17;}
.password-wrap{position:relative;}
.password-wrap input{padding-right:48px;}
.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;background:transparent;color:#44524c;display:grid;place-items:center;cursor:pointer;}
.password-toggle:hover,.password-toggle:focus-visible{color:#0f1a17;background:#f1f3ee;outline:none;}
.password-toggle svg{width:20px;height:20px;display:block;}
.password-toggle .eye-off{display:none;}
.password-toggle.visible .eye-on{display:none;}
.password-toggle.visible .eye-off{display:block;}
.consent-check{display:flex;gap:10px;margin-top:16px;align-items:flex-start;font-size:14px;color:#0f1a17;}
.consent-check input{margin-top:2px;}
.consent-check a,.subtle-link{color:#24362f;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
button.subtle-link{border:0;background:transparent;padding:0;font:inherit;cursor:pointer;}
.legal-copy{max-height:min(58vh,520px);max-height:min(58svh,520px);overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid #d6ddd8;background:#ffffff;padding:14px;margin-top:14px;color:#24362f;}
.legal-copy h3{font-size:18px;margin:16px 0 6px;color:#0f1a17;}
.legal-copy h3:first-child{margin-top:0;}
.legal-copy p,.legal-copy li{font-size:14px;line-height:1.48;color:#24362f;margin:8px 0;}
.legal-copy ul{margin:8px 0 8px 18px;padding:0;}
.auth-status{font-size:13px;line-height:1.4;color:#44524c;margin-top:10px;}
.captcha-panel{display:none;margin-top:14px;border:1px solid #d6ddd8;background:#ffffff;padding:12px;}
.captcha-panel.active{display:block;}
.captcha-panel p{font-size:12px;line-height:1.35;margin:0 0 8px;color:#44524c;}
#authTurnstile{max-width:100%;overflow:hidden;}
.consent-modal.auth-login .create-only{display:none!important;}
.verification-panel{display:none;place-items:center;text-align:center;padding:18px 10px 6px;}
.verification-check{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#1d6e55;color:#fff;font-size:48px;font-weight:700;margin-bottom:14px;}
.verification-mail{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#dce5df;color:#0f1a17;font-size:42px;font-weight:700;margin-bottom:14px;}
.verification-panel h3{font-size:24px;margin:0 0 8px;}
.verification-panel p{max-width:440px;margin:0 auto;color:#44524c;}
.consent-modal.auth-verify .consent-fields,
.consent-modal.auth-verify .consent-check,
.consent-modal.auth-verify .auth-buttons{display:none!important;}
.consent-modal.auth-verify .verification-panel{display:grid;}
.login-only,.password-reset-panel{display:none;}
.consent-modal.auth-login .login-only{display:grid;gap:8px;justify-items:start;}
.consent-modal.auth-reset .consent-fields,
.consent-modal.auth-reset .consent-check,
.consent-modal.auth-reset .auth-buttons,
.consent-modal.auth-reset .auth-status{display:none!important;}
.consent-modal.auth-reset .password-reset-panel{display:grid;}
.password-reset-panel{gap:12px;margin-top:18px;}
.password-reset-panel label{font-size:12px;font-weight:700;color:#44524c;display:block;margin-bottom:6px;}
.password-reset-panel input{width:100%;padding:12px;border:1px solid #cad3cd;background:#fff;color:#0f1a17;}
.account-password-view,.account-delete-view,.account-deleted-view{display:none;}
.account-password-mode .account-settings-view,
.account-delete-mode .account-settings-view,
.account-deleted-mode .account-settings-view{display:none;}
.account-password-mode .account-password-view,
.account-delete-mode .account-delete-view,
.account-deleted-mode .account-deleted-view{display:block;}
/* "Bookmark" pop-up: the dashboard's address, and how to save it on this device */
.consent-overlay .bookmark-link{margin-top:16px;padding:12px 14px;border:1px solid #cad3cd;border-radius:6px;background:#f5f7f3;font-weight:600;color:#0f1a17;word-break:break-all;}
.consent-overlay .bookmark-how{margin-top:12px;color:#0f1a17;}
/* "Delete my account": a quiet link under the settings, and a deep-orange confirm button */
.account-delete-link{margin-top:22px;padding-top:14px;border-top:1px solid #d6ddd8;}
.consent-overlay .account-delete-link .subtle-link{color:#8a5e0e;}
.consent-overlay .btn-primary.btn-danger{background:#0f1a17;border-color:#0f1a17!important;color:#f1f3ee;}
.consent-overlay .btn-primary.btn-danger:not(:disabled):hover{background:#8a5e0e;border-color:#8a5e0e!important;box-shadow:none;}
