:root{--account-paper:#faf7f2;--account-ink:#332c2c;--account-muted:#746b64;--account-rust:var(--wishlist-brand-accent,#9e4835);--account-line:#e8e0d7}
.login-page{margin:0;background:var(--account-paper);color:var(--account-ink);font:var(--text-body)/1.6 var(--wishlist-font);font-synthesis:none;text-rendering:optimizeLegibility}
.login-page *, .account-dialog *{box-sizing:border-box}.login-page [hidden],.account-dialog [hidden]{display:none!important}
.login-page button,.account-dialog button,.login-page input,.account-dialog input{font: inherit; font-size: var(--text-body)}.login-page button,.account-dialog button{cursor:pointer}.login-page button:disabled,.account-dialog button:disabled{cursor:wait;opacity:.6}
.login-page a{color:inherit;text-decoration:none}.login-header{max-width:1240px;padding:30px 42px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.login-header-note{color:var(--account-muted);font-size:var(--text-body)}
.login-layout{max-width:1120px;margin:44px auto 24px;padding:0 40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,430px);gap:100px;align-items:start}.account-eyebrow{font-size:var(--text-caption);font-weight:700;letter-spacing:2px;color:var(--account-muted);margin:0 0 17px}.login-story h1{font:normal clamp(40px,4.4vw,61px)/1.12 Georgia,"Times New Roman",serif;letter-spacing:-1.8px;margin:0 0 22px}.login-story h1 em{font-weight:normal;color:var(--account-rust)}.story-copy{max-width:405px;color:var(--account-muted);font-size:var(--text-body);line-height:1.9;margin:0}.story-cards{display:flex;gap:12px;padding:28px 8px 25px}.story-card{width:112px;min-height:153px;background:#f0ece3;border:1px solid var(--account-line);border-radius:14px;padding:14px 10px 10px;display:grid;align-items:center;justify-items:center;box-shadow:0 9px 24px #3b2b1910}.story-card>span{font-size:var(--text-caption);color:var(--account-muted)}.card-book{transform:rotate(-7deg)}.card-lamp{transform:translateY(9px) rotate(3deg)}.card-heart{transform:rotate(8deg)}.book-shape{width:61px;height:83px;background:#819080;color:#f7f5ef;font:10px/1.45 Georgia,serif;letter-spacing:1px;padding:16px 8px;border-left:4px solid #677966;border-radius:2px;box-shadow:4px 4px 0 #ded8cc}.lamp-shape{width:66px;height:50px;position:relative;border-radius:60px 60px 8px 8px;background:#c8a67c;box-shadow:inset -10px 0 0 #ba966d}.lamp-shape i{position:absolute;left:30px;top:48px;width:5px;height:29px;background:#8c7155}.lamp-shape i:after{content:"";position:absolute;bottom:-4px;left:-19px;width:43px;height:7px;border-radius:10px;background:#b89a76}.heart-shape{font:80px/1 Georgia,serif;color:#b56e57}.account-benefits{padding:0;list-style:none;margin:0;display:grid;gap:8px;font-size:var(--text-secondary);color:#666a5e}.account-benefits li{display:flex;gap:10px}.account-benefits span{color:#7a826b}
.auth-card{background:#fffdf8;border:1px solid var(--account-line);border-radius:24px;padding:29px 31px;box-shadow:0 14px 60px #43371e08}.auth-tabs{display:flex;gap:4px;background:#f1ede4;border-radius:10px;padding:4px;margin-bottom:29px}.auth-tabs button{flex:1;border:0;border-radius:7px;background:transparent;color:var(--account-muted);padding:9px 8px;font-size:var(--text-body)}.auth-tabs [aria-pressed=true]{background:#fffdf8;color:var(--account-ink);box-shadow:0 2px 5px #352a1608}.auth-card h2{font:normal 28px/1.2 Georgia,serif;letter-spacing:-.6px;margin:0 0 10px}.auth-card .account-eyebrow{font-size:var(--text-caption);letter-spacing:1.5px;margin-bottom:10px}.auth-copy{color:var(--account-muted);font-size:var(--text-secondary);margin:0 0 24px}.google-login{width:100%;border:1px solid var(--account-line);background:transparent;border-radius:10px;padding:11px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:var(--text-body)}.auth-separator{display:flex;align-items:center;gap:12px;color:#999287;font-size:var(--text-caption);margin:19px 0}.auth-separator:before,.auth-separator:after{content:"";height:1px;flex:1;background:var(--account-line)}
.auth-card form,.account-dialog form{display:grid;gap:16px}.auth-card label,.account-dialog label{display:grid;gap:7px;font-size:var(--text-secondary);font-weight:500}.auth-card input,.account-dialog input{width:100%;min-width:0;border:1px solid var(--account-line);background:#fffdf8;padding:12px 13px;border-radius:9px;outline:0;color:var(--account-ink);font-size:var(--text-body)}.auth-card input:focus,.account-dialog input:focus{border-color:#ab785d;box-shadow:0 0 0 3px #ab785d15}.auth-card input[readonly]{color:var(--account-muted);background:#f4f1eb}.auth-card small{font-size:var(--text-caption);font-weight:400;line-height:1.6;color:var(--account-muted)}.password-input{position:relative}.password-input input{padding-right:44px}.password-input button{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:40px;height:40px;display:grid;place-items:center;border:0;background:transparent;border-radius:6px;color:var(--account-muted)}.password-input svg{width:20px;height:20px}.account-primary{border:0;border-radius:10px;background:var(--account-rust);color:#fffaf5;padding:13px 15px;font-size:var(--text-body);font-weight:500;display:flex;justify-content:center;align-items:center;gap:14px}.account-primary:hover{background:#823a2b}.auth-card .account-primary{margin-top:4px}.auth-footnote{font-size:var(--text-secondary);line-height:1.7;color:var(--account-muted);text-align:center;margin:22px 0 0}.auth-feedback{font-size:var(--text-secondary);padding:11px 13px;background:#f4ecda;color:#76572b;border-radius:9px;line-height:1.6;margin:0;overflow-wrap:anywhere}.auth-feedback[data-tone=success]{background:#edf0e5;color:#526143}.login-footer{margin:35px 0 0;padding:0;color:var(--account-muted);font:italic var(--text-secondary) Georgia,serif}
.account-trigger {
  display:flex; align-items:center; gap:8px; min-height:48px;
  padding:3px 12px 3px 3px; border:1px solid transparent; border-radius:999px;
  background:transparent; color:var(--account-ink);
  font:600 var(--text-body)/1.4 var(--wishlist-font); cursor:pointer;
  transition:background .15s ease,border-color .15s ease;
}
.account-trigger:hover { background:#f1ebe3; border-color:#e8e0d7; }
.account-trigger:focus-visible { outline:2px solid var(--account-rust); outline-offset:3px; }
.account-emblem { display:block; width:48px; height:48px; flex-shrink:0; object-fit:contain; }
.account-trigger .account-emblem { width:40px; height:40px; }
.sidebar-account { margin:14px 0; width:100%; justify-content:flex-start; }
.account-dialog{color:var(--account-ink);background:#fffdf8;border:1px solid var(--account-line);border-radius:21px;width:min(500px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:25px;font:var(--text-body)/1.6 var(--wishlist-font);overflow:auto}.account-dialog::backdrop{background:#2d281e55;backdrop-filter:blur(3px)}.account-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.account-dialog h2{font:normal 28px Georgia,serif;margin:0}.account-close{border:0;background:#f0ece3;border-radius:50%;width:38px;height:38px;flex-shrink:0;color:#756d60;font-size:20px}.account-identity{display:flex;align-items:flex-start;gap:14px;background:#f4f0e7;border-radius:12px;padding:14px;margin:0 0 20px;overflow-wrap:anywhere}.account-identity-copy{min-width:0;flex:1}.account-identity strong{display:block}.account-identity small{display:block;color:var(--account-muted);font-size:var(--text-secondary);line-height:1.6;margin-top:3px}.account-badge{display:inline-block;border:1px solid #d9cdb9;border-radius:15px;padding:3px 9px;font-size:var(--text-caption);font-weight:600;color:#8e654a;margin-top:8px}.account-dialog details{border-top:1px solid var(--account-line);padding-top:16px;margin-top:20px}.account-dialog summary{cursor:pointer;margin-bottom:16px}.account-signout{width:100%;border:1px solid var(--account-line);background:transparent;border-radius:10px;padding:11px;color:#7e5142;margin-top:20px}.account-dialog .auth-feedback{margin-top:12px}.login-page button:focus-visible,.account-dialog button:focus-visible{outline:2px solid #a87957;outline-offset:3px}
@media(max-width:950px){.login-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;margin-top:25px}.login-story h1{font-size:45px}.story-cards{gap:9px}.story-card{width:95px}.auth-card{padding:26px}}
@media(max-width:720px){.login-header{padding:22px 23px}.login-header-note{display:none}.login-layout{display:block;padding:0 23px;max-width:480px;margin:15px auto}.login-story{margin-bottom:25px}.login-story h1{font-size:36px;letter-spacing:-1px;line-height:1.18}.login-story h1 br{display:none}.story-copy{font-size:var(--text-body);line-height:1.8}.story-cards,.account-benefits{display:none}.login-story .account-eyebrow{font-size:var(--text-caption);margin-bottom:10px}.auth-card{padding:25px 24px;border-radius:19px}.auth-card h2{font-size:25px}.auth-tabs{margin-bottom:25px}.login-footer{text-align:center;margin:23px 0 0;padding:0}.account-dialog{padding:22px}}
@media(max-width:360px){.login-header{padding:18px}.login-layout{padding:0 16px}.auth-card{padding:21px 18px}.login-story h1{font-size:31px}.auth-card h2{font-size:23px}}
.account-trigger [data-account-name]{max-width:10rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:520px){body[data-experience-mode="simple"] .site-header nav{gap:12px}.site-header .nav-current{display:none}.site-header .account-trigger{width:44px;height:44px;min-height:44px;padding:0;justify-content:center;flex-shrink:0}.site-header .account-trigger [data-account-name]{display:none}}
.advanced-account{display:none}.sidebar-account{border-color:#4f6155;color:#edf0e9}.sidebar-account:hover{background:#273b31;border-color:#627669}
@media(max-width:1100px){.sidebar-account{width:44px;height:44px;min-height:44px;padding:0;justify-content:center;margin:8px auto}.sidebar-account [data-account-name]{display:none}}
@media(max-width:720px){.sidebar .sidebar-account{display:none}.topbar{position:relative}.topbar .topbar-copy{padding-right:52px}.advanced-account{display:flex;position:absolute;top:0;right:0;width:44px;height:44px;min-height:44px;justify-content:center;padding:0}}

/* Text keeps the same readable size across desktop and mobile. */
.auth-card,.login-story{min-width:0}.auth-tabs button{line-height:1.4}.account-signout{font-size:var(--text-body)}
.account-dialog-header .account-eyebrow{margin-bottom:12px}.account-dialog label{line-height:1.5}
.account-primary,.google-login,.account-signout{min-height:48px}

/* The subscription emblem has the same meaning in the header and the account panel. */
.account-identity[data-account-tier="plus"] .account-badge { color:#695478; border-color:#d8cbe1; background:#f0eaf3; }
.account-identity[data-account-tier="pro"] .account-badge { color:#815b23; border-color:#deca9f; background:#f5eddd; }
@media(max-width:720px) {
  .site-header .nav-current { display:none; }
  body[data-experience-mode="simple"] .site-header nav { gap:16px; }
}
@media(max-width:360px) {
  .account-identity { gap:10px; }
  .account-identity > .account-emblem { width:40px; height:40px; }
}
@media(prefers-reduced-motion:reduce) { .account-trigger { transition:none; } }
/* Account management follows the same paper, spacing and action hierarchy as the wishlist. */
.account-dialog{width:min(560px,calc(100vw - 28px));padding:28px;scrollbar-gutter:stable}
.account-dialog-header{margin-bottom:24px}.account-dialog h2{font-size:32px;line-height:1.15}
.account-dialog-header .account-eyebrow{font-size:12px;letter-spacing:1.7px;margin-bottom:10px}
.account-identity{align-items:center;padding:18px;margin-bottom:24px;border:1px solid #eee6da;background:#f3efe7;border-radius:16px}
.account-identity strong{font-size:18px;line-height:1.4}.account-identity small{font-size:14px}.account-badge{font-size:13px;line-height:1.5}
.account-profile-section h3{margin:0 0 14px;font-size:16px;font-weight:650;line-height:1.4}
.account-dialog input{min-height:48px}.account-dialog label{font-size:14px}.account-profile-section{margin-bottom:24px}
.account-dialog .account-section{border:1px solid var(--account-line);border-radius:14px;padding:0;margin:12px 0 0;background:#fffdf9;overflow:clip}
.account-section>summary{display:flex;align-items:center;gap:12px;list-style:none;margin:0;padding:17px 16px;min-height:76px}
.account-section>summary::-webkit-details-marker{display:none}.account-section>summary:hover{background:#f6f2eb}
.account-section-icon{width:38px;height:38px;display:grid;place-items:center;flex:none;border-radius:12px;background:#f1ebe2;color:#9a6650}
.account-section-icon svg{width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round}
.account-section-heading{display:grid;gap:3px;flex:1;min-width:0;line-height:1.45}.account-section-heading strong{font-size:16px;font-weight:650}.account-section-heading>span{font-size:14px;color:var(--account-muted)}
.account-section-chevron{width:18px;height:18px;flex:none;color:#8e8075;transition:transform .15s ease}.account-section[open]>.account-section-chevron,.account-section[open]>summary>.account-section-chevron{transform:rotate(180deg)}
.account-section-body{border-top:1px solid var(--account-line);padding:18px 16px 20px}
.account-description{font-size:14px;line-height:1.7;color:var(--account-muted);margin:0 0 16px;overflow-wrap:anywhere}.account-description:last-child{margin-bottom:0}
.account-email-status>p:first-child{margin:0 0 8px;font-size:15px;font-weight:600}.account-email-status [data-verified=true]{color:#526b57}.account-email-status [data-verified=true]:before{content:'✓';margin-right:8px;font-weight:700}
.account-email-status .account-description{margin-bottom:14px}.account-secondary{min-height:46px;padding:11px 15px;border:1px solid #ddcec1;background:#fffdf9;color:#805444;border-radius:10px;line-height:1.4;font-size:16px}.account-secondary:hover{background:#f4eee5}
.account-dialog .account-password-details{border:0;border-top:1px solid var(--account-line);padding-top:16px;margin:18px 0 0}.account-password-details>summary{font-size:16px;font-weight:600;margin-bottom:0}.account-password-details[open]>summary{margin-bottom:18px}.account-field-help{font-size:14px;font-weight:400;line-height:1.5;color:var(--account-muted)}
.account-export-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.account-export{display:flex;align-items:flex-start;gap:11px;text-align:left;border:1px solid var(--account-line);background:#faf7f1;padding:14px 12px;border-radius:12px;min-width:0;min-height:84px;color:var(--account-ink)}.account-export:hover{border-color:#c7a38d;background:#f6efe5}.account-export>svg{width:20px;height:20px;margin-top:3px;flex:none;stroke-linecap:round;stroke-linejoin:round;color:#9c6149}.account-export>span{min-width:0;display:grid;gap:3px}.account-export strong{font-size:15px;font-weight:650;line-height:1.5}.account-export small{font-size:13px;line-height:1.5;color:var(--account-muted)}
.account-delete-entry{display:block;width:100%;margin:20px 0 0;padding:14px 0 0;border:0;border-top:1px solid var(--account-line);background:none;text-align:left;color:#9e4835;font-size:15px;line-height:1.5}.account-delete-entry:hover{text-decoration:underline}.account-owner-note{margin:18px 0 0;padding:12px 13px;background:#f4f0e8;border-radius:9px}
.account-signout{margin-top:24px;min-height:48px;background:#fffdf9;color:#805444}.account-signout:hover{background:#f3ede5}
.account-back{border:0;background:none;color:#8b5843;padding:0 0 22px;font-size:15px;text-align:left}.account-back:hover{text-decoration:underline}
.account-delete-review>.account-eyebrow{font-size:12px;margin:0 0 10px}.account-delete-review h3{font:normal 28px/1.2 Georgia,serif;letter-spacing:-.5px;margin:0 0 16px}.account-delete-warning{font-size:14px;line-height:1.7;color:#904c3d;background:#fbefe9;border:1px solid #eed6c9;border-radius:12px;padding:14px;margin:18px 0 22px}.account-danger{min-height:48px;border:1px solid #a24735;background:#a24735;color:#fffaf5;padding:13px 15px;border-radius:10px;line-height:1.5;font-size:16px;font-weight:600}.account-danger:hover{background:#853b2b}.account-danger:disabled{background:#f4e9e3;color:#a47e6d;border-color:#e9d8cd;cursor:not-allowed;opacity:1}
.account-reauthentication{padding:14px;border:1px solid #e4d9c5;background:#f7f1e6;border-radius:12px;font-size:14px}.account-reauthentication p{margin:0 0 12px;line-height:1.7}.account-reauthentication button{width:100%}
.account-dialog summary:focus-visible{outline:2px solid var(--account-rust);outline-offset:-3px;border-radius:10px}
@media(max-width:520px){.account-dialog{padding:23px 19px}.account-section>summary{padding:16px 13px;gap:10px}.account-section-body{padding:17px 13px}.account-section-heading>span{font-size:13px}.account-export-options{grid-template-columns:1fr}.account-export{min-height:74px;padding:13px 14px}.account-identity{gap:11px;padding:15px}.account-dialog h2{font-size:30px}.account-section-icon{width:34px;height:34px;border-radius:10px}}
@media(prefers-reduced-motion:reduce){.account-section-chevron{transition:none}}
/* The header is outside the scrolling content, so no section can slide behind it. */
.account-dialog{overflow:hidden;scrollbar-gutter:auto}
.account-dialog[open]{display:flex;flex-direction:column}
.account-dialog-header{position:static;flex:none;padding:0;margin:0 0 24px;background:transparent}
.account-dialog-content{min-height:0;overflow:auto;overscroll-behavior:contain;padding:2px;margin:-2px;scrollbar-gutter:stable}
.account-delete-review h3:focus{outline:none}

/* Confirmation and recovery remain part of the same quiet, readable login card. */
/* Recovery actions share one quiet surface and the same icon language as Mon compte. */
.auth-assistance{margin-top:22px}
.auth-assistance>p{margin:0 0 9px;padding:0 2px;font-size:var(--text-secondary);line-height:1.5;color:var(--account-muted)}
.auth-assistance-actions{padding:3px 10px;border:1px solid var(--account-line);border-radius:13px;background:#f7f3ec}
.auth-assistance-action{display:flex;align-items:center;gap:11px;width:100%;min-height:53px;padding:9px 2px;border:0;border-radius:0;background:transparent;color:var(--account-ink);text-align:left;line-height:1.45;transition:color .15s ease}
.auth-assistance-action+.auth-assistance-action{border-top:1px solid var(--account-line)}
.auth-assistance-action>span:not(.auth-assistance-icon){flex:1;min-width:0}
.auth-assistance-icon{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:10px;background:#ede5d8;color:#95654e;transition:background .15s ease,color .15s ease}
.auth-assistance-icon svg{width:18px;height:18px;stroke-linecap:round;stroke-linejoin:round}
.auth-assistance-chevron{width:15px;height:15px;flex:none;color:#9a8b7e;stroke-linecap:round;stroke-linejoin:round}
.auth-assistance-action:hover{color:var(--account-rust)}
.auth-assistance-action:hover .auth-assistance-icon{background:#e9dacb;color:var(--account-rust)}
.auth-assistance-action:focus-visible{border-radius:7px}
@media(prefers-reduced-motion:reduce){.auth-assistance-action,.auth-assistance-icon{transition:none}}
.auth-mail-help{display:flex;align-items:flex-start;gap:11px;margin-top:20px;padding:14px;border:1px solid var(--account-line);border-radius:12px;background:#f5f0e8;color:var(--account-muted)}
.auth-mail-help>svg{width:20px;height:20px;flex:none;margin-top:3px;stroke-linecap:round;stroke-linejoin:round;color:#9c6b53}
.auth-mail-help>p{margin:0;font-size:var(--text-secondary);line-height:1.65}
.auth-back{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;margin-top:15px;border:0;border-radius:8px;background:transparent;color:var(--account-rust);font-size:var(--text-secondary);line-height:1.5;padding:10px 8px}
.auth-back:hover{text-decoration:underline}
.auth-card button:focus-visible{outline:2px solid var(--account-rust);outline-offset:3px}
.auth-card .account-primary{min-height:48px;line-height:1.5}
