/* CC3 sticker presentation; generation/model/export remain shared and unchanged. */
:root{--cc3-page:#FAF9F6;--cc3-ink3:#7A7973;--cc3-seam:rgb(17 17 17/.45);--cc3-edge:1.5px;--cc3-warn:#D9661F;--cc3-warn-tint:#FCE9DC;--cc3-coral-tint:#FDE7EA;--cc3-cream-tint:#FBF3D2;--cc3-toast:#1C1C1B}
html,body{background:var(--cc3-page)}.num,.work-stats,.color-list,.size-readout{font-family:"Space Mono",ui-monospace,"SF Mono",Menlo,monospace;font-variant-numeric:tabular-nums}
#app{padding-top:0;background:var(--cc3-page);height:100dvh;min-height:0!important;overflow:hidden;padding-bottom:env(safe-area-inset-bottom)}.page-body{min-height:0;overflow-y:auto;overflow-x:hidden;padding-bottom:12px}.v-booth .bt-nav{background:#F5E293;margin:0 -16px;padding:8px 16px 12px;border-bottom:1px solid var(--cc3-seam);min-height:62px}.v-booth .bt-brand{font-size:22px;font-weight:800;display:flex;align-items:center;gap:8px}.bt-brand img{width:32px;height:32px;background:white;border:1.5px solid #111;border-radius:8px;padding:3px}.v-booth .bt-pill{background:white;border:1.5px solid #111;border-radius:12px;box-shadow:none;font-size:14px;padding:0 10px}.v-booth .bt-ttl{padding:12px 0 10px;gap:8px;flex-wrap:nowrap}.v-booth .bt-ttl>div{flex:1;min-width:0}.v-booth .bt-name{font-size:20px;display:flex;align-items:center;gap:5px;max-width:100%;overflow-wrap:anywhere}.pencil{width:18px;height:18px;flex:none}.v-booth .bt-ttl small{font-size:11px;color:#7a7973}.v-booth .bt-stage.compact{padding:4px 6px 0}.v-booth .bt-paper{margin:-3px 22px 0;padding:14px 14px 10px;box-shadow:0 0 0 1px #1111;gap:14px}.v-booth .bt-slotline{height:8px;border-radius:4px;background:#111}.v-booth .bt-light{display:none}.v-booth .bt-fr{border:0;box-shadow:none}.v-booth .bt-img{border:0;box-shadow:none}.v-booth .bt-fr.failed .bt-img{box-shadow:0 0 0 1.5px #D9661F}.v-booth .bt-fr.pending .bt-img{box-shadow:0 0 0 3px #F5E293}.v-booth .bt-cap{min-height:30px;gap:8px}.v-booth .bt-plus{background:#F14F63!important;color:#fff!important;border:1.5px solid #111;border-radius:14px;box-shadow:none!important}.v-booth .bt-after{padding:10px 0 0;display:grid;gap:10px}.page-home .page-body:has(.bt-after){padding-bottom:190px}.page-home .bt-after{position:fixed;bottom:calc(64px + env(safe-area-inset-bottom));left:16px;right:16px;max-width:448px;margin:auto;background:var(--cc3-page);z-index:4}.home-dock{flex-shrink:0;background:var(--cc3-page);min-height:64px;z-index:4}.v-booth .bt-count{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 0;font-size:12px;white-space:nowrap}.bt-count svg{flex:none}.v-booth .bt-sq{display:flex;gap:4px}.v-booth .bt-sq i{width:10px;height:10px;border:1px solid #1117;background:transparent}.v-booth .bt-sq i.on{background:#111}.v-booth .bt-sq i.pend{background:#F14F63}.v-booth .bt-next{display:flex;align-items:center;justify-content:initial;gap:12px;padding:10px 12px;min-height:64px;background:white;border:1.5px dashed #1115;border-radius:0}.v-booth .bt-next .bt-plus{width:40px;height:40px;min-width:40px;border-radius:10px}.v-booth .bt-next small{margin-left:auto;font-size:12px;color:#7a7973}.v-booth .bt-next b{font-size:15px}.waiting{display:flex;align-items:center;gap:8px;min-height:52px;font-size:12px;color:#55544f}.waiting>span:last-child{flex:1}.status-chip{display:inline-flex!important;align-items:center;gap:5px;min-height:22px;padding:0 7px;border-radius:4px;background:#EFEFEC;color:#55544f!important;font-size:12px!important;white-space:nowrap}.status-chip i{width:7px;height:7px;background:#111;flex:none}.status-chip.coral{background:#FDE7EA}.status-chip.coral i{background:#F14F63}.status-chip.cream{background:#FBF3D2}.status-chip.cream i{background:#D9B937}.status-chip.warn{background:#FCE9DC}.status-chip.warn i{background:#D9661F}.status-chip .num{font-size:11px}
.o-btn,.v-booth .bt-finish{height:52px;min-height:52px;border:1.5px solid #111;border-radius:12px;box-shadow:none!important;color:#111;font-weight:700}.pri,.v-booth .bt-finish{background:#F14F63;color:#111}.sec{background:#fff}.dock{flex-shrink:0;margin:0!important;padding:10px 0 max(12px,env(safe-area-inset-bottom))!important;background:var(--cc3-page)!important;border-top:1px solid #1111;min-height:0!important}.o-top{background:white;margin:0 -16px 10px;padding:0 12px;min-height:56px}.o-mid b{font-size:17px}.o-mid small{font-size:11.5px}.o-ib{display:grid;place-items:center;min-height:44px}.o-ib.undo{font-size:14px;font-weight:650}.v-booth .bt-bezel{border:0;border-radius:16px;padding:0;box-shadow:none;background:transparent;overflow:hidden}.bt-cam{display:none}.v-booth .bt-tools{display:grid;grid-template-columns:repeat(5,1fr);border:1.5px solid #111;border-radius:12px;background:white;overflow:hidden;padding:0;margin-top:14px;gap:0}.bt-tools button{min-height:58px;padding:6px 0}.bt-tools button+button{border-left:1px solid #1111}.crop-indicator{text-align:left;font-size:13px;line-height:1.55;color:#55544f;margin-top:12px}.scan::after{animation:none;transform:none;background:#ffffff6b;border-top:3px solid #F14F63}.v-booth .bt-slotline.printing *{animation:none}.v-booth .bt-two-m{display:grid;grid-template-columns:repeat(3,1fr);margin:14px 0 4px}.v-booth .bt-two-m>div{border:0;display:grid;justify-items:center}.v-booth .bt-two-m>div+div{border-left:1px solid #1111}.v-booth .bt-two-m b{font-size:20px}.v-booth .bt-bezel.sm{padding:10px;background:white;box-shadow:0 0 0 1px #1111;border-radius:0;margin:4px 28px 0}.v-booth .bt-film{background:transparent;padding:10px 0;color:#111;border:0;margin:0}.version-label{display:block;font-size:15px;margin-bottom:10px}.v-booth .bt-frames{gap:8px;padding:3px;align-items:stretch}.v-booth .bt-ff{background:white;color:#111;padding:0;border:0;box-shadow:none;border-radius:0}.v-booth .bt-ff canvas{border:1px solid #1112}.v-booth .bt-ff.on{background:transparent;box-shadow:none}.v-booth .bt-ff.on canvas{border:2.5px solid #111}.v-booth .bt-ff.more{border:1.5px dashed #1115}.v-booth .bt-ff small{color:#55544f;display:block}.o-chips{gap:0;min-height:48px}.o-chips>span{margin-right:auto}.o-chip{min-height:34px;height:34px;border:1.5px solid #111;border-radius:0;background:white;font-size:13px}.o-chip:first-of-type{border-radius:10px 0 0 10px}.o-chip:last-of-type{border-radius:0 10px 10px 0}.o-chip+ .o-chip{border-left:0}.o-chip.on{background:#111;color:white;border-width:1.5px}.palette-select,.repair-link{border-top:1px solid #1111;min-height:48px;font-size:15px;width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between}.repair-frame{position:relative}.repair-viewport{border-radius:16px;max-height:40dvh}.repair-zoom{position:absolute;bottom:10px;right:10px;display:flex;background:white;border:1.5px solid #111;border-radius:10px;overflow:hidden}.repair-zoom button+button{border-left:1px solid #1112}.brushes{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px 4px;overflow:visible;padding:5px}.brush{min-width:0;font-size:10px;min-height:48px}.brush i{width:32px;height:32px;border-radius:7px;display:grid;place-items:center;border:1px solid #1112}.brush.on{background:transparent}.brush.on i{outline:2px solid #111;outline-offset:2px}.work-mount{transform:none;box-shadow:0 0 0 1px #1111;margin:4px 0 12px;padding:12px}.work-mount canvas{border:0}.work-stats{border-top:1px solid #1111}.library-title{font-size:22px;margin:16px 0 4px}.library-title small{font-size:12px;color:#7a7973;font-weight:400}.page-library .o-chips{gap:6px}.page-library .o-chip{border:0;background:transparent;border-radius:10px;color:#55544f}.page-library .o-chip.on{border:1.5px solid #111;background:#F5E293;color:#111}.library-card small{white-space:normal}.size-nav{display:grid;grid-template-columns:64px 1fr 64px;align-items:center;text-align:center}.size-nav h2{margin:0}.size-nav .cancel{margin:0}.size-readout{display:flex;align-items:center;justify-content:space-between;padding:22px 0}.size-readout b{font-size:36px}.size-readout button{width:48px;height:48px;border:1.5px solid #111;border-radius:12px;font-size:24px}.size-pills{gap:0;overflow:hidden;border:1.5px solid #111;border-radius:10px}.size-pills button{border:0;border-radius:0;min-height:34px}.size-pills button+button{border-left:1px solid #1111}.size-pills .on{background:#111;color:white}#size-apply{display:none}#toast{background:#1C1C1B;border-radius:12px;pointer-events:auto}#toast button{color:#F5E293}.page-library .page-body,.page-home .page-body{scrollbar-width:none}
/* Override legacy high-specificity selected states. */
.v-booth .o-chip.on{background:#111;color:white;box-shadow:none}.v-booth .bt-ff.on canvas{outline:none;border:2.5px solid #111}.v-booth .bt-ff.on small{color:#111}.v-booth .bt-cap .mark{background:transparent;padding:0}.v-booth .bt-cap{align-items:center;padding:5px 2px 0;height:auto;min-height:32px}.v-booth .bt-ok{background:white;color:#111;border:1.5px solid #111;border-radius:5px;box-shadow:none}.v-booth .bt-paper{background:white}.v-booth .bt-paper::before,.v-booth .bt-lip::after{display:none}.v-booth .bt-lip{left:10px;right:10px;background:#3a3a38;height:2px}.v-booth .bt-slotline.printing .bt-lip{background:#F14F63}.page-library .o-chip.on{background:#F5E293;color:#111}.v-booth .bt-dot{display:none}
.page-body{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.v-booth .bt-name{border-bottom:0;cursor:pointer}.v-booth .bt-tools i{width:auto;height:auto;border-radius:0;background:transparent;box-shadow:none}.v-booth .bt-next{height:64px;outline:0}.v-booth .bt-next small{margin-top:0}.v-booth .bt-fr.printing .bt-img{box-shadow:none}.v-booth .paper-pol .bt-paper{background:#fff}.v-booth .paper-pol .bt-fr{padding:0;box-shadow:none}.v-booth .bt-sq i{border-radius:0;box-shadow:none}.v-booth .bt-line{height:1px;background:#1112;margin:10px 0 0}.v-booth .bt-ms{transform:none;box-shadow:0 0 0 1px #1111}.v-booth .bt-gal-h{margin:0}
.size-readout>div{display:grid;text-align:center;gap:4px}.size-readout small{font-size:13px;color:#7a7973}
/* CC3.2: one scroll owner and a sibling footer, never fixed inside scrolling content. */
html,body{height:100%;overflow:hidden;overscroll-behavior:none}
#app{height:100dvh;max-height:100dvh}.page-body{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
.page-home .page-body{padding-bottom:12px!important}.page-home .home-dock{position:relative;flex:none;z-index:4;padding:8px 0 0!important}
.page-home .bt-after{position:static;max-width:none;margin:0;padding:0;display:grid;gap:8px}.home-dock .bt-count{padding:10px 0;min-height:44px}.home-dock .bt-next{height:56px;min-height:56px}.home-dock .bt-next small{font-size:11px}
.v-booth .bt-ttl .bt-pill{display:flex;align-items:center;gap:4px;white-space:nowrap}.size-chevron{flex:none}
.result-summary{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #1111;font-size:14px}.result-summary b{font-size:22px}.result-size{padding:0 10px;border:1.5px solid #111;border-radius:10px;background:white;font-size:13px}
.result-history{margin:10px 0}.result-history summary{min-height:44px;cursor:pointer;padding:12px 0;font-size:14px}.per-photo-colors h3{font-size:15px;margin:16px 0 8px}.photo-colors{border-top:1px solid #1112}.photo-colors summary{min-height:54px;display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px}.photo-colors summary::after{content:'⌄';margin-left:auto}.photo-colors[open] summary::after{content:'⌃'}.usage-thumb{width:38px;height:38px;display:block}.usage-thumb canvas{width:100%;height:100%}.photo-colors .color-list{padding-top:6px}.frame-usage{font-size:13px;line-height:1.5;padding:12px 0;color:#55544f}

/* CC3.3: explicit per-photo exports. */
.photo-export{padding-bottom:12px}.export-tile{width:100%;margin-top:4px;min-height:44px}.share-preview{height:auto!important;aspect-ratio:auto!important}

.library-card .library-name{display:flex;align-items:center;gap:6px;min-width:0;flex:1;min-height:44px;text-align:left;font-size:13px;font-weight:700;overflow-wrap:anywhere}.library-name .pencil{flex:none;width:16px;height:16px}

.library-caption{display:flex;align-items:center;gap:4px}.library-caption .options{float:none;flex:none}
