/* Atelier V0.9.325 — Le Puzzle des histoires. Styles isolés à cet outil. */
.artwork-puzzle{background:linear-gradient(135deg,#e9e2f4,#e6eef1);display:grid;place-items:center}
.puz-art{width:min(78%,290px);height:80%;filter:drop-shadow(0 9px 11px #39516c24)}

/* Préparation commune : bibliothèque, aperçu paginé, paramètres, sans ancien formulaire d'entrée. */
#view-puzzle:not([hidden]){display:flex;flex-direction:column;height:100%;min-height:0}
.puz-config{flex:1;display:flex;min-height:0;overflow:hidden}
.puz-workspace{display:grid;gap:12px;flex:1;min-height:0}
.puz-page-choice[aria-pressed=true]{border-color:#daa83c;background:#fff8e6}
/* Éditeur Puzzle : afficher la découpe elle-même, pas une fausse feuille A4.
   Le format physique du puzzle reste exclusivement piloté par Mise en page. */
#puz-prep-board{width:960px;height:679px;position:relative;box-sizing:border-box;
  padding:20px;display:grid;place-items:center}
#puz-prep-preview{width:100%;height:100%;min-width:0;min-height:0;display:grid;place-items:center}
.puz-prep-art{border:0;padding:0;background:transparent;position:relative;display:block;
  max-width:100%;max-height:100%;box-sizing:border-box;cursor:pointer;
  box-shadow:0 3px 17px #1f354527}
.puz-prep-art img{display:block;width:100%;height:100%;object-fit:fill}
.puz-prep-art svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.puz-prep-empty{max-width:480px;padding:23px;border:2px dashed #cedbe3;border-radius:14px;background:#fff;font-size:30px;text-align:center;color:#657988;line-height:1.5}
.puz-settings-panel [data-puz-panel][hidden]{display:none!important}
.puz-settings-panel .memory-version{width:100%;margin-top:12px}
.puz-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.puz-levels button{border:1px solid #dce5e6;border-radius:10px;padding:12px 7px;background:#f8fbfa;color:#284b60;font:inherit;font-weight:700;font-size:12px;cursor:pointer}.puz-levels button small{display:block;font-weight:400;font-size:10px;margin-top:4px;color:#697e89}
.puz-levels button[aria-pressed=true]{border-color:#dcad4e;background:#fff5df;color:#74501e;box-shadow:0 0 0 1px #dcad4e inset}
.puz-model-option{font-size:12px;display:flex;align-items:center;gap:8px;margin-top:14px;color:#405d6e;cursor:pointer}.puz-model-option input{width:17px;height:17px;accent-color:#1e5570}
.puz-help{font-size:11px;line-height:1.5;color:#627a89;margin:8px 0 0}.puz-error{color:#ac4040!important}
.puz-status{min-height:16px;margin:6px 0 0;font-size:11px;color:#627988}
body.el-memory-immersive #view-puzzle{height:100%;min-height:0;display:flex;flex-direction:column}
.puz-screen:not([hidden]){display:flex;flex-direction:column;gap:8px;min-height:0;flex:1 1 auto}.puz-play-layout{flex:1 1 auto;min-height:0;min-width:0;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,28%);gap:12px;align-items:stretch}
.puz-board-shell{max-width:100%;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden;background:#ecf2f0;border-radius:15px;padding:10px}
.puz-board{position:relative;flex:0 0 auto;background:#fffcf3;border:2px solid #fff;box-shadow:0 3px 13px #173d5119;overflow:visible;max-width:100%;max-height:100%}
.puz-board.is-model{background-color:#fff}.puz-board-model{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;opacity:.42;pointer-events:none}
.puz-board-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(var(--puz-cols),minmax(0,1fr));grid-template-rows:repeat(var(--puz-cols),minmax(0,1fr))}
.puz-target{border:1px dashed #9eb3b1;background:transparent;cursor:crosshair;min-width:0;min-height:0;padding:0;position:relative}
.puz-target:focus-visible{outline:3px solid #d7a43c;z-index:6}.puz-target.placed{pointer-events:none;border-color:transparent}.puz-target.is-active{background:#e7cf8e44}
.puz-placed-layer{position:absolute;inset:0;pointer-events:none}.puz-placed{position:absolute;pointer-events:none;z-index:2}
.puz-piece-svg{display:block;overflow:hidden;width:100%;height:100%}.puz-piece-svg .puz-piece-line{fill:none;stroke:#fff;stroke-width:1;pointer-events:none}
.puz-tray-panel{display:flex;flex-direction:column;min-height:0;min-width:0;max-width:100%;overflow:hidden;gap:7px;padding:10px;background:#fff;border:1px solid #dce6e5;border-radius:15px}
.puz-tray-panel strong{font-size:12px}.puz-tray-panel p{font-size:11px;color:#647b87;margin:0}.puz-tray{min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:6px;padding:4px}
.puz-tray-piece{display:grid;place-items:center;min-width:0;aspect-ratio:1/1;border:1px solid #dfe7e7;border-radius:10px;background:#f9faf7;cursor:grab;touch-action:none;padding:3px;user-select:none}
.puz-tray-piece[aria-pressed=true]{background:#fff5d8;border-color:#d8a438;box-shadow:0 0 0 1px #d8a438}.puz-tray-piece svg{width:100%;height:100%}
.puz-drag-preview{position:fixed;z-index:9999;pointer-events:none;width:106px;height:106px;filter:drop-shadow(0 8px 12px #17364f77);transform:translate(-50%,-50%)}
.puz-result{font-size:11px;line-height:1.5;color:#5a7585;min-height:18px}

@media(max-width:700px){.puz-play-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(105px,27%);gap:5px}.puz-tray-panel{padding:5px}.puz-tray-panel p{display:none}.puz-tray{display:flex;gap:7px;overflow-x:auto;overflow-y:hidden;align-items:center}.puz-tray-piece{width:clamp(66px,14vw,92px);min-width:clamp(66px,14vw,92px);height:92%;aspect-ratio:1;flex:0 0 auto}.puz-levels button{padding:9px 5px}}
@media(max-height:510px){.puz-play-layout{grid-template-columns:minmax(0,1fr) minmax(100px,23%);grid-template-rows:minmax(0,1fr)}.puz-tray{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow-y:auto}.puz-tray-piece{width:100%;height:auto;min-width:0;aspect-ratio:1}}

#view-puzzle .puz-settings-content h2:first-child{padding-left:28px;min-height:22px}

/* Pièces entières : rendu commun preview/PDF/print, sans ancienne planche découpée. */
.puz-print-piece svg{display:block;width:100%;height:100%;overflow:hidden}
.puz-model-art img{display:block;width:100%;height:100%;object-fit:contain;opacity:.6}
.puz-print-model-control{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.4;color:#25445b;margin-top:12px}
.puz-print-model-control input{width:18px;height:18px;flex:0 0 auto;accent-color:#edb638}
@media print{#print-stage.efpv-native-print .puz-print-piece, #print-stage.efpv-native-print .puz-print-piece svg{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}}
