.ccps3,.ccps3 *{box-sizing:border-box}.ccps3{--ink:#442b29;--red:#891e2c;--sand:#f8f2e8;--gold:#bd9461;position:relative;left:50%;transform:translateX(-50%);width:min(1450px,calc(100vw - 42px));max-width:none!important;margin:1.5rem 0 3rem!important;padding:22px;color:var(--ink);font-family:inherit;background:radial-gradient(ellipse at top,#fff0da 0%,#faf7f1 43%,#fff 90%);border:1px solid #eedbc7;border-radius:20px;box-shadow:0 18px 48px #70432115;overflow:visible}.ccps3-head{text-align:center;padding:18px 0 12px}.ccps3-kicker{letter-spacing:.24em;font-size:11px;font-weight:700;color:#aa6570}.ccps3-head h2{font:normal clamp(2rem,3.8vw,3.7rem)/1.1 Georgia,serif!important;color:#5e1828!important;margin:12px 0!important}.ccps3-head p{margin:0!important;font-size:1rem;color:#6b5751}.ccps3-occasions{display:flex;justify-content:center;gap:12px;margin:20px 0 24px}.ccps3-occasions button{border:1px solid #e2cfc0!important;background:#fffaf5!important;color:var(--ink)!important;border-radius:99px!important;padding:13px 23px!important;cursor:pointer;min-width:180px;font-weight:700;box-shadow:0 4px 10px #381c1110}.ccps3-occasions button small{display:block;font-weight:400;font-size:.71rem;opacity:.7}.ccps3-occasions button.is-active{background:linear-gradient(135deg,#a92b3b,#71101e)!important;color:#fff!important;border-color:#8c1c2d!important}.ccps3-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.83fr) minmax(0,1.08fr);gap:14px;align-items:start}.ccps3-panel{background:#fffefb;border:1px solid #eadbd0;border-radius:15px;padding:19px;min-width:0;box-shadow:0 3px 17px #34231a09}.ccps3-panel h3{font:600 1.25rem/1.2 Georgia,serif!important;color:#5c2931!important;margin:0 0 16px!important}.ccps3-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:5px}.ccps3-section-head span{font-size:.72rem;color:#8d746a}.ccps3-design-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ccps3-design{appearance:none;background:#fff!important;border:2px solid transparent!important;border-radius:11px!important;padding:5px 5px 9px!important;cursor:pointer;box-shadow:0 3px 11px #36201915;color:#49312c!important;min-width:0;text-align:center;transition:transform .15s,border-color .15s}.ccps3-design:hover{transform:translateY(-3px)}.ccps3-design.is-selected{border-color:#9f2536!important;box-shadow:0 0 0 2px #a62a381f,0 4px 13px #5824222a}.ccps3-design img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;border-radius:7px;box-shadow:0 2px 6px #0002}.ccps3-design span{display:block;margin-top:7px;font-size:.75rem;line-height:1.25;font-weight:600}.ccps3-footer-note{padding:16px 8px 0;text-align:center;font-style:italic;font-size:.78rem;color:#806a60}.ccps3-editor label{display:block;font-size:.79rem;font-weight:700;margin:0 0 12px}.ccps3-editor select,.ccps3-editor textarea,.ccps3-editor input{display:block;min-width:0;width:100%;max-width:100%;min-height:43px;padding:10px 12px!important;margin-top:5px;background:#fff!important;border:1px solid #d6c8c2!important;border-radius:8px!important;font:normal .9rem/1.4 inherit!important;color:#43312f!important}.ccps3-editor textarea{resize:vertical;min-height:113px}.ccps3-editor fieldset{border:0;margin:0 0 12px;padding:0}.ccps3-editor legend{font-size:.8rem;font-weight:700;margin-bottom:6px}.ccps3-color-options{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.ccps3-swatch{width:27px;height:27px;min-width:27px;border:2px solid #fff!important;outline:1px solid #baa79e!important;border-radius:99px!important;padding:0!important;cursor:pointer}.ccps3-swatch.is-selected{outline:3px solid #a72a3c!important;outline-offset:2px}.ccps3-copy{background:#fff!important;border:1px solid #9d7774!important;color:#683c3a!important;border-radius:8px!important;padding:9px 14px!important;font-size:.85rem;cursor:pointer}.ccps3-preview-stage{background:linear-gradient(145deg,#f8f0e5,#fffaf4);padding:12px;border-radius:12px;box-shadow:inset 0 0 0 1px #ede1d5}.ccps3-output{width:100%;display:block}.ccps3-card{width:100%;aspect-ratio:1200/1560;display:block;position:relative;isolation:isolate;overflow:hidden;background:#fff8e9;box-shadow:0 5px 15px #2b18212b;border:4px solid white}.ccps3-card>img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;z-index:-1}.ccps3-card-copy{color:var(--ccps3-ink,#851c2d);position:absolute;inset:31% 14% 20%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4%;overflow:hidden}.ccps3-brand{font-family:Arial,sans-serif;letter-spacing:.23em;font-size:clamp(6px,.65vw,10px);font-weight:800}.ccps3-card h4{font:italic 600 clamp(20px,2vw,33px)/1.17 Georgia,serif!important;color:inherit!important;margin:0!important;overflow-wrap:break-word}.ccps3-to{font-size:clamp(10px,1vw,16px);font-weight:600}.ccps3-card p{font:normal clamp(12px,1.07vw,19px)/1.5 Georgia,serif!important;color:inherit!important;margin:0!important;white-space:pre-wrap;overflow-wrap:break-word;max-height:55%;overflow:hidden}.ccps3-from{font:italic clamp(10px,1vw,16px) Georgia,serif}.ccps3-card[data-font=elegant] h4{font-family:Palatino,Georgia,serif!important;font-style:normal}.ccps3-card[data-font=handwritten] p,.ccps3-card[data-font=handwritten] h4{font-family:cursive!important;font-style:italic}.ccps3-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}.ccps3-actions button{flex:1;border:1px solid #a13b48!important;color:#782235!important;background:#fff!important;min-height:42px;border-radius:8px!important;padding:10px!important;font-size:.78rem;font-weight:700;cursor:pointer}.ccps3-actions .ccps3-main-action{background:linear-gradient(135deg,#a8293a,#751525)!important;color:white!important}.ccps3-status{font-size:.76rem;color:#8c746b;line-height:1.5;margin:11px 0 0!important}.ccps3-output.is-tags{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ccps3-output.is-tags .ccps3-card{border-width:2px}.ccps3-output.is-tags .ccps3-card-copy{inset:29% 14% 18%}.ccps3-output.is-tags .ccps3-brand{font-size:4px}.ccps3-output.is-tags h4{font-size:12px!important}.ccps3-output.is-tags .ccps3-to,.ccps3-output.is-tags .ccps3-from{font-size:6px}.ccps3-output.is-tags p{font-size:7px!important;line-height:1.2!important}.ccps3-output.is-coupon .ccps3-card{aspect-ratio:1.55}.ccps3-output.is-coupon .ccps3-card-copy{inset:25% 15% 17%}.ccps3-output.is-coupon h4{font-size:21px!important}.ccps3-output.is-coupon p{font-size:12px!important}@media(max-width:1200px){.ccps3-grid{grid-template-columns:1fr 1fr}.ccps3-preview-panel{grid-column:1/-1;max-width:600px;margin:0 auto;width:100%}.ccps3-card h4{font-size:clamp(22px,4vw,37px)!important}.ccps3-card p{font-size:clamp(13px,2.1vw,21px)!important}}@media(max-width:710px){.ccps3{width:calc(100vw - 18px)!important;padding:10px;border-radius:10px}.ccps3-grid{grid-template-columns:1fr}.ccps3-panel{padding:13px}.ccps3-occasions button{min-width:0;flex:1;padding:9px!important}.ccps3-design-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ccps3-preview-panel{grid-column:auto}.ccps3-card h4{font-size:clamp(20px,6vw,32px)!important}.ccps3-card p{font-size:clamp(10px,3vw,18px)!important}}@media print{body.ccps3-printing{margin:0!important;padding:0!important}body.ccps3-printing *{visibility:hidden!important}body.ccps3-printing .ccps3-preview-stage,body.ccps3-printing .ccps3-output,body.ccps3-printing .ccps3-output *,body.ccps3-printing .ccps3-card,body.ccps3-printing .ccps3-card *{visibility:visible!important}body.ccps3-printing .ccps3-preview-stage{position:absolute!important;left:0!important;top:0!important;width:190mm!important;height:auto!important;margin:0!important;border:0!important;padding:0!important;box-shadow:none!important;background:#fff!important}body.ccps3-printing .ccps3-card{width:100%!important;height:auto!important;break-inside:avoid!important;box-shadow:none!important;border:0!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body.ccps3-printing .ccps3-output.is-tags{height:260mm!important}body.ccps3-printing .ccps3-output.is-tags .ccps3-card{height:85mm!important;aspect-ratio:auto}body.ccps3-printing .ccps3-output.is-coupon .ccps3-card{width:180mm!important}body.ccps3-printing .ccps3-card>img{print-color-adjust:exact!important}}

/* v3.2: text colors must be inherited from the selected print card, not hard-coded in inner copy. */
.ccps3-card-copy{--ccps3-ink:inherit}
.ccps3-swatch[data-recommended]{position:relative}
.ccps3-swatch[data-recommended]::after{content:"★";font:700 11px/1 Arial,sans-serif;color:#fff;text-shadow:0 1px 3px #0009;position:absolute;inset:0;display:grid;place-items:center}

/* Print card at the full printable width instead of the preview column width. */
@media print {body.ccps3-printing .ccps3-preview-stage{width:190mm!important;max-width:none!important}body.ccps3-printing .ccps3-output{width:100%!important;max-width:none!important}body.ccps3-printing .ccps3-card{width:100%!important;max-width:none!important}}

/* v3.3 artwork + live output: the image is the entire design and text is drawn on canvas. */
.ccps3-output{display:block!important;width:100%;}
.ccps3-output canvas{display:block;width:100%;height:auto;max-width:100%;background:#f9f0e4;border-radius:6px;box-shadow:0 10px 28px rgba(38,18,22,.14)}
.ccps3-preview-stage{padding:12px;background:linear-gradient(160deg,#fff8ed,#f5e9dd)}
.ccps3-design img{aspect-ratio:1200/1560;object-fit:cover;}
.ccps3-design.is-selected{border-color:#a42438!important}
.ccps3 .ccps3-output[data-format="coupon"] canvas{aspect-ratio:1200/780;}
.ccps3-panel{box-shadow:0 6px 22px rgba(69,42,31,.06)}
.ccps3-editor textarea{line-height:1.5!important}

/* V3.4: clean artwork and live canvas; never draw an inset text rectangle. */
.ccps3-kicker{color:#ab5b68!important}.ccps3-design{position:relative}.ccps3-design.is-selected:after{content:"✓";position:absolute;right:0;top:0;background:#9a2032;color:#fff;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font:800 15px Arial;transform:translate(6px,-6px)}
.ccps3-preview-stage{background:#fff6ed}.ccps3-output{overflow:hidden!important}.ccps3-output canvas{border:0;box-shadow:0 8px 22px #381b2527}.ccps3-editor input,.ccps3-editor textarea,.ccps3-editor select{font-family:Arial,sans-serif!important;font-size:14px!important}.ccps3-status{font-size:12px!important}.ccps3-head h2{font-weight:500!important}
.ccps3-footer-note{line-height:1.5}.ccps3-card-headline{font-style:italic}
@media(max-width:920px){.ccps3-grid{grid-template-columns:1fr}.ccps3-preview-panel{grid-column:auto;width:100%;max-width:560px}}
/* 4.0 occasion browser and safe collection hubs */
.ccps4-toolbar{display:grid;grid-template-columns:1.35fr .85fr 1.3fr;gap:12px;max-width:1110px;margin:10px auto 22px;background:#fffaf5;border:1px solid #ebdacd;border-radius:13px;padding:14px 18px}
.ccps4-toolbar label{font-size:12px;color:#66514a;font-weight:700;margin:0;display:block}
.ccps4-toolbar input,.ccps4-toolbar select{margin-top:6px;display:block;width:100%;max-width:100%;min-height:40px;background:#fff!important;border:1px solid #d7c5b8!important;color:#3e3030!important;border-radius:7px;padding:7px 10px!important;font:14px Arial,sans-serif!important}
.ccps3-occasions{flex-wrap:wrap}.ccps3-occasions button{min-width:145px!important}.ccps3-editor [hidden]{display:none!important}.ccps3-gallery .ccps3-design-grid{max-height:920px;overflow-y:auto;padding:5px 8px 10px 2px;scrollbar-color:#dcc1b9 #fff7f2;scrollbar-width:thin}
.ccps4-hub{margin:22px auto}.ccps4-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.ccps4-hub-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;border:1px solid #e7d6ce;border-radius:12px;background:#fffaf5;color:#6b2334;text-decoration:none!important;box-shadow:0 3px 12px #3020130a;gap:6px}
.ccps4-hub-item:hover{background:#f8e9df;transform:translateY(-2px)}.ccps4-hub-item>span{font-size:23px}.ccps4-hub-item strong{font:600 15px Georgia,serif}.ccps4-hub-item small{font-size:12px;color:#886d65}.ccps4-cta{padding:20px;margin:22px auto;border-top:1px solid #eedcd0}.ccps4-cta h2{font:500 28px Georgia,serif!important;color:#663243}
@media(max-width:900px){.ccps4-toolbar{grid-template-columns:1fr 1fr}.ccps4-toolbar label:last-child{grid-column:1/-1}}
@media(max-width:560px){.ccps4-toolbar{grid-template-columns:1fr}.ccps4-toolbar label:last-child{grid-column:auto}.ccps3-occasions{display:grid;grid-template-columns:1fr 1fr}.ccps3-occasions button{min-width:0!important}.ccps3-grid{display:block}.ccps3-panel{margin-bottom:12px}.ccps4-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
