/* A small physical photo pack: closed enough to belong to one object, open
   enough that every sample has a visible, tappable edge. The upright poses
   adapt the Playbook's card-fan geometry without its rotation. */
html:not(.has-prints) .wordmark-plus { display:none; }
.sample-fan { top:calc(100% + 72px);width:min(420px,calc(100vw - 24px));height:195px;gap:0;isolation:isolate;padding:0; }
.sample-fan::before { content:"";position:absolute;left:8%;right:8%;top:79px;height:78px;border-radius:50%;background:#263c5b40;filter:blur(23px);pointer-events:none; }
.sample-photo,
html[data-tool=sticker]:not(.has-prints) .sample-photo {
  position:absolute;left:50%;top:12px;width:164px;height:126px;margin:0;padding:6px;
  transform:translate3d(calc(-50% + var(--slot-x)),var(--slot-y),0) scale(var(--card-scale,1));
  border:1px solid #fffefa;border-radius:9px;z-index:var(--sample-z,1);
  background:#fffdfa;box-shadow:0 1px 0 #fff inset,0 8px 15px #27344a25,0 23px 34px #27344a25;
  transition:transform .57s cubic-bezier(.2,.85,.24,1),box-shadow .35s ease;
  animation:sample-deal-flat .68s cubic-bezier(.16,1,.3,1) backwards;
}
.sample-photo:first-child { --slot-x:0px;--slot-y:34px;--card-scale:1;--sample-z:4; }
.sample-photo:nth-child(2) { --slot-x:-104px;--slot-y:5px;--card-scale:.95;--sample-z:2; }
.sample-photo:nth-child(3) { --slot-x:0px;--slot-y:-45px;--card-scale:.96;--sample-z:1; }
.sample-photo:nth-child(4) { --slot-x:104px;--slot-y:5px;--card-scale:.95;--sample-z:3; }
.sample-photo:nth-child(2) { animation-delay:.06s; }
.sample-photo:nth-child(3) { animation-delay:.12s; }
.sample-photo:nth-child(4) { animation-delay:.18s; }
@keyframes sample-deal-flat { from { opacity:0;transform:translate3d(calc(-50% + var(--slot-x)),calc(var(--slot-y) + 25px),0) scale(.82); } to { opacity:1;transform:translate3d(calc(-50% + var(--slot-x)),var(--slot-y),0) scale(var(--card-scale,1)); } }
.sample-photo:hover,.sample-photo:focus-visible,
html:not(.has-prints) .wordmark:has(.wordmark-action:hover) ~ .sample-fan .sample-photo:first-child {
  z-index:8;transform:translate3d(calc(-50% + var(--slot-x)),calc(var(--slot-y) - 14px),0) scale(1.045);
  box-shadow:0 2px 0 #fff inset,0 17px 25px #1b2c4738,0 30px 44px #1b2c4727;
}
.sample-photo:focus-visible { outline:3px solid #4e63d7;outline-offset:4px; }
.sample-photo img { border-radius:5px; }
.sample-upload,
html[data-tool=sticker]:not(.has-prints) .sample-upload {
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  border:1px solid #f9f7f2;background:linear-gradient(140deg,#fffcf4f7,#eceaf0f2);
  box-shadow:0 1px 0 #fff inset,0 8px 15px #27344a25,0 23px 34px #27344a25;
  color:#263c62;
}
.sample-upload::before { content:"";position:absolute;inset:6px;border:1px dashed #b7bfd0;border-radius:5px;pointer-events:none; }
.sample-upload-mark { position:relative;display:block;width:39px;height:39px;border:1px solid #a8b8d5;border-radius:12px;background:#ffffffd9;box-shadow:0 2px 6px #28385c1d; }
.sample-upload-mark i { position:absolute;left:50%;top:50%;width:18px;height:2px;border-radius:3px;background:#3554a7;transform:translate(-50%,-50%); }
.sample-upload-mark i:last-child { transform:translate(-50%,-50%) rotate(90deg); }
.sample-upload-label { font:700 11px/1 var(--font);letter-spacing:.015em; }
html.upload-awaiting:not(.has-prints) .sample-upload { z-index:9;transform:translate3d(calc(-50% + var(--slot-x)),calc(var(--slot-y) - 22px),0) scale(1.1);border-color:#7589d3;box-shadow:0 0 0 5px #f9fbffad,0 12px 25px #283e5a55; }
html.upload-awaiting:not(.has-prints) .sample-upload-mark { animation:upload-breathe 1.6s ease-in-out infinite; }
@keyframes upload-breathe { 50% { box-shadow:0 0 0 6px #7e96e635,0 2px 5px #28385c1d; } }
html.dragging:not(.has-prints) .sample-upload { transform:translate3d(calc(-50% + var(--slot-x)),calc(var(--slot-y) - 18px),0) scale(1.13);border-color:var(--accent,#5164d3); }
html.dragging:not(.has-prints) .sample-upload-label { font-size:0; }
html.dragging:not(.has-prints) .sample-upload-label::after { content:'Drop here';font-size:9px; }

/* Generated images share one upright surface. Extra versions peek out in
   parallel layers, then open as a flat contact sheet without clipping. */
.table .print.deck-front:not(.free):not(.deck-open) .sheet::before,
.table .print.deck-front:not(.free):not(.deck-open) .sheet::after { display:none; }
.table .print .sheet { border-radius:12px!important; }
.table .print .img-wrap { border-radius:7px!important; }
.print .version-underlay { border-radius:12px;clip-path:polygon(0 0,100% 0,100% 16px,16px 16px,16px 100%,0 100%);transform:translate(calc(var(--layer) * -7px),calc(var(--layer) * -7px)); }
.print.free .version-underlay img { opacity:0; }
.print[data-result-tool=sticker].free .img-wrap::before { content:"";position:absolute;inset:8% 14%;border-radius:50%;background:radial-gradient(ellipse at 50% 54%,#aab9d777 0%,#c8bff350 43%,transparent 73%);filter:blur(18px);pointer-events:none; }
.print[data-result-tool=sticker].free .faceA { filter:drop-shadow(0 2px 1px #fff8) drop-shadow(0 11px 16px #4d527d52) drop-shadow(0 0 9px #b3a7df7a); }
.print.has-versions:not(.deck-open):hover .version-underlay { transform:translate(calc(var(--layer) * -10px),calc(var(--layer) * -10px)); }
.print.deck-open.has-versions .version-underlay { transform:translate(calc(var(--layer) * -24px),calc(var(--layer) * -17px)) scale(.97); }
.version-current-label { animation:filename-arrive-flat .48s cubic-bezier(.16,1,.3,1) both; }
@keyframes filename-arrive-flat { from { opacity:0;transform:translateY(7px); } to { opacity:1;transform:none; } }
.version-slide { border-radius:10px; }
.version-photo { border-radius:5px;object-fit:contain; }
.version-slide[data-tool=cutout] { --version-accent:#8299cb; }
.version-slide[data-tool=portrait] { --version-accent:#d6a890; }
.version-slide[data-tool=backdrop] { --version-accent:#8bbbae; }
.version-slide[data-tool=sticker] { --version-accent:#b79bd4; }
.version-slide[data-tool=blur] { --version-accent:#aab1d5; }
.version-slide[data-tool=depth] { --version-accent:#89b8c3; }
.version-slide[data-tool=parallax] { --version-accent:#8eaacf; }
.version-slide[data-tool=relight] { --version-accent:#d4b476; }
.version-slide[data-tool=upscale] { --version-accent:#a6a1d5; }
.version-slide[data-tool=erase] { --version-accent:#d4a8a9; }
.version-slide[data-tool]:not([data-tool=original]) { border-color:var(--version-accent,#dfe3eb);box-shadow:0 1px 0 #fff inset,0 2px 2px #26324c13,0 18px 34px #26324c2b; }
.version-slide[data-tool=cutout] .version-photo,.version-slide[data-tool=portrait] .version-photo { background:radial-gradient(ellipse at 50% 45%,#fff 15%,#ebf0f7 100%); }
.version-slide[data-tool=sticker] .version-photo { background:radial-gradient(ellipse at 50% 45%,#fbf9ff 0%,#e9e3f4 100%);filter:drop-shadow(0 5px 9px #5149684f); }
.version-map-item img,.deck-thumb img { object-fit:contain;background:#f3f5f8; }
.version-slide.ratio-wide { flex-basis:88%; }
.version-slide.ratio-landscape { flex-basis:84%; }
.version-slide.ratio-square { flex-basis:72%; }
.version-slide.ratio-portrait { flex-basis:56%; }
.version-before-layer { position:absolute;inset:9px;z-index:1;overflow:hidden;clip-path:inset(0 calc(100% - var(--compare,50%)) 0 0);opacity:0;pointer-events:none; }
.version-before-layer img { display:block;width:100%;height:100%;object-fit:contain;border-radius:5px; }
.version-compare-line { position:absolute;top:9px;bottom:9px;left:var(--compare,50%);z-index:2;width:2px;background:#fff;box-shadow:0 0 0 1px #1b2a5666,0 0 8px #1118;opacity:0;pointer-events:none; }
.version-compare-line b { position:absolute;top:50%;left:50%;display:grid;place-items:center;width:31px;height:31px;transform:translate(-50%,-50%);border:1px solid #dce3ee;border-radius:50%;background:#fff;box-shadow:0 3px 9px #1e2a4566;color:#293f75;font:16px/1 var(--font); }
.version-compare-range { position:absolute;inset:9px;z-index:3;width:calc(100% - 18px);height:calc(100% - 18px);margin:0;opacity:0;pointer-events:none;touch-action:none;cursor:ew-resize; }
.version-slide.is-comparing .version-before-layer,.version-slide.is-comparing .version-compare-line { opacity:1; }
.version-slide.is-comparing .version-compare-range { pointer-events:auto; }
.version-compare { position:absolute;left:16px;bottom:16px;z-index:4;padding:9px 13px;border:1px solid #d9dfeb;border-radius:999px;background:#fffffff2;box-shadow:0 2px 10px #1d2c4b21;color:#263966;font:650 11px var(--font);cursor:pointer; }
.version-compare:hover,.version-compare[aria-pressed=true] { background:#e8edfc; }
.version-compare:focus-visible,.version-compare-range:focus-visible { outline:2px solid #4254e6;outline-offset:2px; }
.version-slide:not([aria-current=true]) .version-compare { opacity:0;pointer-events:none; }
/* Keep the model's short status alongside the work instead of printing it on
   top of the pixels. The logo and version controls retain their own space. */
@media(min-width:720px) {
  html.has-prints .talk { top:190px!important;left:78px;width:min(20vw,320px);transform:none;text-align:left;font-size:clamp(17px,1.45vw,23px);line-height:1.12; }
  html.has-prints .talk .sub { margin-top:7px;font-size:12px;line-height:1.35; }
  .print.deck-open.has-versions .version-toolbar { top:90px;right:50%;transform:translateX(50%); }
}
.version-kind { position:absolute;top:55px;left:18px;z-index:4;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid #ced8ed;border-radius:999px;background:#f8fbfff0;box-shadow:0 2px 8px #26324c20;color:#314b82;font:700 10px/1 var(--font);letter-spacing:.01em; }
.version-kind::before { content:"";width:6px;height:6px;border-radius:50%;background:#6d86e8;box-shadow:0 0 0 3px #6d86e833; }
.version-slide:not([aria-current=true]) .version-kind { opacity:0; }
@media(min-width:720px) and (max-width:1100px) { html.has-prints .talk { top:168px!important;left:72px;width:165px;font-size:16px; } }
/* The guide previews obey the same straight-on grammar as the real deck. */
.story .story-mode-ticket,.story .story-frame,.story .story-version-back,.story .story-version-front { rotate:0deg; }
.story .story-mode-ticket { transform:none; }
.story .story-frame { transform:translateY(0); }
.story .story-frame:hover,.story .story-frame[aria-pressed=true] { transform:translateY(-10px) scale(1.015); }
.story .story-version-back { transform:translate(-5%,-4%); }
.story .story-version-front { transform:translate(4%,3%); }
.story .story-frame-last:hover .story-version-back,.story .story-frame-last[aria-pressed=true] .story-version-back { transform:translate(-8%,-5%); }
.story .story-frame-last:hover .story-version-front,.story .story-frame-last[aria-pressed=true] .story-version-front { transform:translate(7%,4%); }
.story[data-layout=lighttable] .story-frame { transform:translateX(80px) scale(.9); }

@media(max-width:719px) {
  html:not(.has-prints) .wheel .tool-title { touch-action:pan-y; }
  html:not(.has-prints) .arrive { top:39%;width:min(90vw,380px); }
  html:not(.has-prints) .wordmark { width:min(82vw,350px); }
  .sample-fan { top:calc(100% + 60px);width:min(340px,calc(100vw - 20px));height:175px;gap:0;padding:0; }
  .sample-fan::before { top:67px;height:73px; }
  .sample-photo,
  html[data-tool=sticker]:not(.has-prints) .sample-photo { width:136px;height:108px;padding:5px;border-radius:8px;margin:0; }
  .sample-photo:first-child { --slot-x:0px;--slot-y:29px; }
  .sample-photo:nth-child(2) { --slot-x:-87px;--slot-y:3px; }
  .sample-photo:nth-child(3) { --slot-x:0px;--slot-y:-43px; }
  .sample-photo:nth-child(4) { --slot-x:87px;--slot-y:3px; }
  .sample-upload-mark { width:32px;height:32px; }
  .sample-upload-label { font-size:9px; }
  html.has-prints .studio-header .header-actions { top:77px;left:auto;right:8px;display:flex;flex-direction:row;width:auto;height:36px;gap:5px; }
  html.has-prints .studio-header .header-deck { display:none; }
  html.has-prints .talks { opacity:0;pointer-events:none; }
  html.has-prints .model-status { top:132px;width:calc(100vw - 24px); }
  .table .print .sheet { border-radius:10px!important; }
  .table .print .img-wrap { border-radius:5px!important; }
  .print .version-underlay { transform:translate(calc(var(--layer) * -4px),calc(var(--layer) * -5px)); }
  .print.has-versions:not(.deck-open):hover .version-underlay { transform:translate(calc(var(--layer) * -5px),calc(var(--layer) * -6px)); }
  .print .version-scroll { gap:7px;padding:7px 8% 13px;scroll-padding-inline:8%; }
  .version-slide { min-width:0;padding:5px;border-radius:8px; }
  .version-slide.ratio-wide { flex-basis:88%; }
  .version-slide.ratio-landscape { flex-basis:84%; }
  .version-slide.ratio-square { flex-basis:86%; }
  .version-slide.ratio-portrait { flex-basis:60%; }
  .version-map-item img,.deck-thumb img { object-fit:contain; }
  .version-before-layer { inset:5px; }
  .version-compare-line { top:5px;bottom:5px; }
  .version-compare-range { inset:5px;width:calc(100% - 10px);height:calc(100% - 10px); }
  .version-compare { left:9px;bottom:9px;padding:7px 10px;font-size:9px; }
  .print.deck-open.has-versions .version-toolbar { right:50%;top:-8px;transform:translateX(50%);padding:5px 7px;gap:5px; }
  .version-toolbar button { min-width:33px;min-height:33px; }
  .version-toolbar .version-save-all { white-space:nowrap; }
  .version-toolbar .version-prev,.version-toolbar .version-next,.version-toolbar .version-close { width:33px;height:33px; }
  .version-map { bottom:-63px; }
  .version-map-item { flex-basis:44px;width:44px;height:42px; }
  .version-kind { top:42px;left:10px;padding:4px 7px;font-size:8px; }
  .deck-rail,html.deck-expanded .deck-rail { max-width:calc(100vw - 24px); }
}
@media(prefers-reduced-motion:reduce) { .sample-photo,.sample-upload-mark,.version-current-label { animation:none!important; } }
