/* Réglages et rendu de la création — aperçu local uniquement. */
@font-face{font-family:Parisienne;src:url('assets/parisienne-regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:Caveat;src:url('assets/caveat-variable.ttf') format('truetype');font-weight:400 700;font-display:swap}
@font-face{font-family:SpaceMono;src:url('assets/space-mono-regular.ttf') format('truetype');font-display:swap}

.history-tools{display:flex;gap:8px;justify-content:flex-end;margin:-7px 0 15px}
.history-tools button{min-height:36px;padding:6px 14px;background:transparent;border:1px solid #c9bfa9;border-radius:999px;font-size:11px;color:#455141}
.history-tools button:not(:disabled):hover{background:#e9ecdf;border-color:#687a60}
.history-tools button:disabled,.style-choice:disabled{cursor:default;opacity:.42}
.style-controls{display:grid;gap:12px;min-width:0}
.style-section{border:1px solid #d5cbb6;border-radius:7px;background:#fcf9f2;min-width:0}
.style-section>summary{position:relative;cursor:pointer;list-style:none;min-height:58px;padding:17px 42px 17px 19px;font-size:13px;font-weight:600;color:#314838}
.style-section>summary::-webkit-details-marker{display:none}
.style-section>summary:after{content:'+';position:absolute;right:19px;top:15px;font:23px/1 var(--serif);color:#9d7846}
.style-section[open]>summary:after{content:'−'}
.style-section[open]>summary{border-bottom:1px solid #e5ddcd}
.style-section-body{padding:20px 18px 8px;min-width:0}
.style-section .label{display:block;font-size:11px;font-weight:600;margin:0 0 12px}
.style-text-target,.preview-faces{display:flex;gap:4px;background:#eee8da;border:1px solid #ddd2bc;padding:4px;border-radius:999px}
.style-text-target{margin:0 0 22px}
.style-text-target button,.preview-faces button{flex:1;min-height:36px;padding:7px 13px;border-radius:999px;font-size:11px;background:transparent;color:#69715f}
.style-text-target button[aria-pressed="true"],.preview-faces button[aria-pressed="true"]{background:#2b4435;color:#fff9ed;box-shadow:0 2px 6px #24392c16}
.style-choice{min-width:0;border:1px solid #d6ccb7;border-radius:5px;background:#fffdf8;color:#3a4939;padding:12px 10px;font-size:11px;text-align:center;transition:background .18s,border-color .18s}
.style-choice:not(:disabled):hover{border-color:#9d8558;background:#f2eddf}
.style-choice.active{background:#e8ecdf;border-color:#314e3b;box-shadow:inset 0 0 0 1px #314e3b}
.font-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 0 24px}
.font-choices .style-choice{text-align:left;padding:12px 13px;min-height:88px;display:flex;flex-direction:column;justify-content:center;gap:9px;overflow:hidden}
.font-name{font:9px/1.3 var(--sans);color:#7d715b}
.font-specimen{font-size:24px;line-height:1.25;display:block;overflow-wrap:anywhere}
.font-choices [data-value="handwritten"] .font-specimen,.font-choices [data-value="calligraphy"] .font-specimen{font-size:28px}
.font-choices [data-value="typewriter"] .font-specimen{font-size:15px;line-height:1.6}
.size-choices{display:flex;gap:7px;margin:0 0 23px}
.size-choices>.style-choice{flex:1;min-height:40px}
.ink-choices{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.ink-choices>.style-choice{width:36px;height:36px;min-height:36px;padding:4px;border-radius:50%;display:grid;place-items:center;font-size:9px}
.ink-choices>.style-choice:first-child{width:44px;border-radius:6px}
.ink-choices i{display:block;width:24px;height:24px;border:1px solid #51462c2b;border-radius:50%}
.ink-choices>.style-choice.active{outline:1px solid #314e3b;outline-offset:2px}
.custom-ink{display:flex;align-items:center;gap:10px;font-size:11px;margin:0 0 10px;flex-wrap:wrap}
.custom-ink input{width:38px;height:36px;padding:3px;border:1px solid #cbbb9a;border-radius:5px;background:#fffdf8;cursor:pointer}
.custom-ink output{font-size:10px;color:#8b7858;margin-left:auto}
.style-help{font-size:10px;color:#777b6a;line-height:1.65;margin:9px 0 16px}
.style-contrast-note{font-size:11px;color:#855826;background:#f5e9ce;border-left:2px solid #b08c4d;padding:10px 12px;margin:12px 0 16px}
.layout-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:21px}
.layout-choices .style-choice{display:flex;flex-direction:column;align-items:center;gap:7px;min-height:145px;padding:15px 10px}
.layout-choices strong{font-size:11px;font-weight:600}
.layout-choices small{font-size:9px;color:#7d7b6b;line-height:1.4}
.layout-sample{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:69px;height:51px;margin-bottom:4px;background:#f5efdf;border:1px solid #c2b28d;box-shadow:2px 3px 0 #d9ceb7;overflow:hidden}
.layout-sample i,.layout-sample b,.layout-sample em{display:block;flex:none;height:2px;width:29px;background:#7d8e76;margin:0}
.layout-sample b{width:36px;height:3px;background:#526c52}
.layout-sample em{width:22px}
.layout-sample-left{align-items:flex-start;padding-left:10px}
.layout-sample-photo-top{padding-top:23px;gap:3px}
.layout-sample-photo-top i{position:absolute;inset:0 0 auto;height:22px;width:100%;background:linear-gradient(150deg,#b4b99a,#799984)}
.layout-sample-photo-full{background:linear-gradient(145deg,#a0ae89,#4a6c55)}
.layout-sample-photo-full :is(i,b,em){background:#fff9e8;position:relative}
.style-section-body>.text-button{font-size:10px;line-height:1.6;margin:0 0 24px;text-align:left}
.paper-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:15px}
.paper-choices .style-choice{display:flex;align-items:center;justify-content:center;gap:9px;min-height:45px}
.style-section .swatches{gap:13px}
.decoration-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:23px}
.decoration-choices .style-choice{display:flex;flex-direction:column;align-items:center;gap:7px;min-height:76px;padding:11px 5px}
.decoration-choices .style-choice>span{font:25px/1.1 Georgia,serif;color:#94713f}
.decoration-choices .style-choice[data-value="universe"]>span{font-size:24px}
.decoration-choices small{font:8px/1.35 var(--sans)}
.atelier-symbol,.miniature .ornament .atelier-symbol{display:inline-block;width:1em;height:1em;vertical-align:-.075em;overflow:visible}
.effect-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:18px}
.effect-choices .style-choice{min-height:74px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.effect-specimen{font:30px/1 var(--serif)}
.effect-choices small{font:10px/1.3 var(--sans)}
.restore-model{padding:9px 4px 0}
.restore-model .text-button{font-size:11px;text-align:left}
.restore-model p{font-size:10px;color:#7a7c6c;line-height:1.6;margin:9px 0 0}

/* Les choix sont communs à la maquette, à l’ouverture et au courrier reçu. */
.miniature[data-styled]>.card-copy{display:flex;flex:1;min-height:0;width:100%;flex-direction:column;align-items:inherit;justify-content:inherit;text-align:inherit;position:relative}
.miniature[data-styled] .card-heading{font-family:var(--cardfont);font-size:calc(var(--title-base,27px)*var(--title-scale,1));color:var(--cover-ink);line-height:1.08;letter-spacing:var(--title-tracking,-.02em)}
.miniature[data-styled] .card-heading em{color:var(--cover-accent)}
.miniature[data-styled] .tiny,.miniature[data-styled] .card-sub{color:var(--cover-ink)}
.miniature[data-styled] .chosen-ornament{display:block;width:auto;height:auto;align-self:center;text-align:center;font:27px/1.1 Georgia,serif;margin-bottom:9px;flex:none;color:var(--cover-accent);position:relative;z-index:1}
.miniature[data-styled].has-photo .chosen-ornament{color:var(--cover-ink)}
.miniature[data-styled].layout-left{align-items:flex-start;text-align:left}
.miniature[data-styled].layout-left :is(.card-heading,.tiny,.card-sub){align-self:flex-start;text-align:left;max-width:100%}
.miniature[data-styled].layout-left .chosen-ornament{align-self:flex-start}
.miniature[data-styled].layout-center :is(.card-heading,.tiny,.card-sub),.miniature[data-styled].layout-photo-full :is(.card-heading,.tiny,.card-sub){align-self:center;text-align:center;max-width:100%}
.miniature[data-styled].layout-photo-full.has-photo{justify-content:center}
.miniature[data-styled].layout-photo-full.has-photo:after{background:linear-gradient(180deg,#13291c77,#10251ba6);opacity:1}
.miniature[data-styled].layout-photo-top.has-photo{justify-content:flex-end;padding:0!important;color:var(--text-ink)}
.miniature[data-styled].layout-photo-top.has-photo>.card-copy{flex:0 0 57%;height:57%;padding:10px 14px;justify-content:center}
.miniature[data-styled].layout-photo-top.has-photo .card-photo{inset:0 0 auto;height:43%;z-index:0}
.miniature[data-styled].layout-photo-top.has-photo:after{background:url('assets/papier-grain.svg');opacity:.35;z-index:-1}
.miniature[data-styled].layout-photo-top.has-photo :is(.card-heading,.tiny,.card-sub){color:var(--text-ink);align-self:center;text-align:center;max-width:100%}
.miniature[data-styled].layout-photo-top.has-photo .card-heading em{color:var(--letter-accent)}
.miniature[data-styled].layout-photo-top.has-photo .card-heading{margin:5px 0}
.miniature[data-styled].layout-photo-top.has-photo .chosen-ornament{display:block;font-size:18px;margin-bottom:4px}
/* Une même présence du symbole et de l’accroche, de l’aperçu au courrier reçu. */
.miniature[data-styled]:not(.fp-atelier-miniature) .ornament{font-size:var(--cover-symbol-size,42px);line-height:1;margin-bottom:4px}
.miniature[data-styled]:not(.fp-atelier-miniature) .tiny{font-size:var(--cover-note-size,11px);font-weight:600;line-height:1.4;letter-spacing:.1em;overflow-wrap:anywhere}
.miniature[data-styled]:not(.fp-atelier-miniature) .card-heading{margin-block:8px}
.miniature[data-styled]:not(.fp-atelier-miniature) .card-sub{font:500 var(--cover-signature-size,12px)/1.45 var(--sans);letter-spacing:.02em;overflow-wrap:anywhere}
:is(.model-art,.hero-art) .miniature[data-styled]:not(.fp-atelier-miniature){--cover-signature-size:11px}
:is(.model-art,.hero-art) .miniature[data-styled]:not(.fp-atelier-miniature){--cover-symbol-size:32px;--cover-note-size:10px}
.preview-desk>.miniature[data-styled]{--title-base:43px}
.editor-preview .preview-desk>.miniature[data-styled]{width:min(92%,390px);height:auto;min-height:0;max-height:none;aspect-ratio:1.48}
.editor-preview .preview-desk>.miniature[data-styled].card-square{width:min(80%,320px)}
.editor-preview .preview-desk>.miniature[data-styled].card-portrait{width:min(68%,270px)}
.model-art .miniature[data-styled]{--title-base:27px}
.order-tile .miniature[data-styled]{--title-base:24px}
.detail-layout .preview-desk>.miniature[data-styled]{--title-base:33px}
.discovery .env-paper .miniature[data-styled]{--title-base:27px}
.recipient-letter[data-styled]{color:var(--text-ink)}
.recipient-letter[data-styled] h2{font-family:var(--cardfont);font-size:calc(var(--title-base,46px)*var(--title-scale,1));color:var(--text-ink);overflow-wrap:anywhere;letter-spacing:var(--title-tracking,-.02em)}
.recipient-letter[data-styled] h2 em{color:var(--letter-accent)}
.recipient-letter[data-styled] .letter-text{font-family:var(--bodyfont);font-size:var(--body-size,14px);line-height:1.85;overflow-wrap:anywhere}
.recipient-letter[data-styled] .signature{font-family:var(--cardfont);color:var(--letter-accent)}
.recipient-letter[data-styled]>.chosen-ornament{display:block;font:32px/1.2 Georgia,serif;color:var(--letter-accent);margin-bottom:16px}
.recipient-letter[data-styled].layout-left>:is(h2,.eyebrow,.signature,.chosen-ornament){text-align:left}
.recipient-letter[data-styled]:not(.layout-left)>:is(h2,.eyebrow,.signature,.chosen-ornament){text-align:center}
/* The choice specimen and the real title share the same finish. */
.effect-specimen-gold,.miniature[data-styled].effect-gold .card-heading,.recipient-letter[data-styled].effect-gold h2{color:#967544;text-shadow:0 .5px 0 #fff7e366}
.miniature[data-styled].effect-gold .card-heading em,.recipient-letter[data-styled].effect-gold h2 em{color:inherit}
@supports (background-clip:text){
 .effect-specimen-gold,.miniature[data-styled].effect-gold .card-heading,.recipient-letter[data-styled].effect-gold h2{background:linear-gradient(116deg,#80603b 3%,#b99b65 25%,#e5d4ad 42%,#a1834e 57%,#d8c49a 76%,#876b3f 97%);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}
 .miniature[data-styled].effect-gold .card-heading em,.recipient-letter[data-styled].effect-gold h2 em{color:transparent}
}
.effect-specimen-emboss,.miniature[data-styled].effect-emboss .card-heading,.recipient-letter[data-styled].effect-emboss h2{text-shadow:0 -.65px 0 #fff9,0 .8px 0 #5a42233d,0 1.4px 1.8px #5a422314}
.effect-specimen-reveal,.miniature[data-styled].effect-reveal .card-heading,.recipient-letter[data-styled].effect-reveal h2{animation:atelier-soft-reveal .9s cubic-bezier(.22,1,.36,1) both}
@keyframes atelier-soft-reveal{from{opacity:0;transform:translateY(3px);filter:blur(1.2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}

.preview-faces{width:fit-content;min-width:210px;margin:0 0 12px auto}
.preview-faces button{min-width:95px}
.editor-preview .showing-message{display:block;min-height:0;padding:24px;max-height:none}
.message-preview-scroll{position:relative;z-index:1;max-height:430px;overflow:auto;padding:3px 8px 14px 3px;scrollbar-width:thin;scrollbar-color:#bca781 transparent}
.recipient-letter.editor-letter-sample{padding:32px 27px;--title-base:35px;min-width:0}
.recipient-letter.editor-letter-sample h2{margin:14px 0 22px}
.recipient-letter.editor-letter-sample .eyebrow{font-size:8px;overflow-wrap:anywhere}
.recipient-letter.editor-letter-sample .signature{font-size:26px}
.editor-preview{top:calc(var(--ac-header-height,94px) + 15px)}
@media(max-width:1050px){
 .preview-desk>.miniature[data-styled]{--title-base:34px}
 .font-choices .style-choice{padding-inline:10px}
 .font-specimen{font-size:22px}
}
@media(max-width:760px){
 .history-tools{margin:0 0 10px;justify-content:flex-start}
 .history-tools button{min-height:36px;font-size:10px}
 .style-section>summary{font-size:12px;padding-left:16px}
 .style-section-body{padding:17px 14px 6px}
 .font-choices{gap:8px}
 .font-choices .style-choice{min-height:82px}
 .style-text-target button{min-height:40px}
 .custom-ink input{width:44px;height:40px}
 .style-section .swatches{gap:13px}
 .decoration-choices{grid-template-columns:repeat(3,minmax(0,1fr))}
 .decoration-choices small{font-size:9px}
 .style-choice{min-height:40px}
 .layout-choices{gap:8px}
 .layout-choices .style-choice{min-height:137px}
 .preview-faces{margin:0 0 10px auto;min-width:200px}
 .editor-preview .preview-desk:not(.showing-message){padding:25px 22px;min-height:240px;max-height:none}
 .editor-preview .preview-desk>.miniature[data-styled]{--title-base:30px;width:min(100%,310px);padding:20px}
 .editor-preview .preview-desk>.miniature[data-styled].card-square{width:min(83%,230px)}
 .editor-preview .preview-desk>.miniature[data-styled].card-portrait{width:min(65%,190px)}
 .discovery .env-paper .miniature[data-styled]{--title-base:23px}
 .recipient-letter[data-styled]{--title-base:39px}
 .editor-preview .showing-message{padding:15px;max-height:none;min-height:0}
 .message-preview-scroll{max-height:300px}
 .recipient-letter.editor-letter-sample{padding:27px 22px;--title-base:30px}
}
@media(max-width:370px){
 .font-specimen{font-size:20px}
 .font-choices [data-value="typewriter"] .font-specimen{font-size:13px}
 .custom-ink output{width:100%;margin-left:0}
 .style-section-body{padding-inline:12px}
 .discovery .env-paper .miniature[data-styled]{--title-base:21px}
}
@media(prefers-reduced-motion:reduce){
 .effect-specimen-reveal,.miniature[data-styled].effect-reveal .card-heading,.recipient-letter[data-styled].effect-reveal h2{animation:none}
}
.reduced-motion .effect-specimen-reveal,.reduced-motion .miniature[data-styled].effect-reveal .card-heading,.reduced-motion .recipient-letter[data-styled].effect-reveal h2{animation:none!important}
