@font-face{font-family:CMPhotoJakarta;src:url('./fonts/PlusJakartaSans-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:CMPhotoJakarta;src:url('./fonts/PlusJakartaSans-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:CMPhotoJakarta;src:url('./fonts/PlusJakartaSans-Bold.woff2') format('woff2');font-weight:700 900;font-display:swap}
@font-face{font-family:CMPhotoMontserrat;src:url('./fonts/Montserrat-Bold.woff2') format('woff2');font-weight:700 900;font-display:swap}

/* The original page and hero-copy stylesheet is retained. These rules only
   style the crystal preview and its own full customization interface. */
.cm-studio .cm-preview-column{font-family:CMPhotoJakarta,Arial,sans-serif}
/* Reserve the former preview + shape-strip height so surrounding content
   keeps its original position when the shape controls move into the viewer. */
.cm-studio .cm-hero-visual{min-height:632.65px}
.cm-studio .cm-photo-viewer{border:1px solid #454b56;border-radius:8px;background:linear-gradient(180deg,#123a54 0%,#11232f 50%,#14191c 100%);min-height:570px}
.cm-studio .cm-hero .cm-photo-viewer{min-height:550px}
.cm-studio .cm-viewer-shapes{position:absolute;z-index:3;left:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px}
.cm-studio .cm-shape-tool{position:relative;width:62px;height:62px;display:grid;place-items:center;color:#fff;opacity:.45;padding:9px;border:0;background:none;border-radius:50%;transition:opacity .15s,background .15s}
.cm-studio .cm-shape-tool svg{width:100%;height:100%}
.cm-studio .cm-shape-tool:hover,.cm-studio .cm-shape-tool.is-active,.cm-studio .cm-shape-tool:focus-visible{opacity:1;background:transparent}
.cm-studio .cm-shape-tool.is-active:before{content:'';position:absolute;left:0;width:3px;height:25px;border-radius:3px;background:#e34db7}
.cm-studio .cm-shape-tool:focus-visible{outline:2px solid white;outline-offset:0}
.cm-studio .cm-photo-viewer .cm-preview-shape,.cm-studio .cm-photo-viewer .cm-preview-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cm-studio .cm-photo-viewer .cm-preview-tools{top:20px;right:18px;opacity:.15;transition:opacity .2s}
.cm-studio .cm-photo-viewer:hover .cm-preview-tools,.cm-studio .cm-photo-viewer:focus-within .cm-preview-tools{opacity:1}
.cm-studio .cm-photo-viewer .cm-preview-tools button{background:#ffffff0a;border:1px solid #ffffff30}
.cm-studio .cm-photo-viewer .cm-preview-bottom{bottom:28px;right:28px;left:auto;max-width:calc(100% - 88px)}
.cm-studio .cm-photo-viewer .cm-preview-bottom button{justify-content:center;min-width:200px;border-radius:7px;padding:14px 26px;background:linear-gradient(105deg,#e83cb6,#bd41e0);color:#fff;font-family:CMPhotoJakarta,Arial,sans-serif;font-size:17px;font-weight:700;box-shadow:0 8px 18px #312a4e3d;transition:filter .2s,transform .2s;line-height:1.35}
.cm-studio .cm-photo-viewer .cm-preview-bottom button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.cm-studio .cm-photo-viewer.is-preparing:after{content:'';position:absolute;inset:0;background:#13203a44;pointer-events:none;z-index:4}
.cm-studio .cm-photo-viewer.is-preparing .cm-preview-status{z-index:5;clip-path:none;overflow:visible;width:auto;height:auto;max-width:90%;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);padding:15px 20px;border:1px solid #ffffff55;border-radius:10px;background:#18223dd9;font-size:14px;color:white;white-space:nowrap}
.cm-studio .cm-preview-note{font-family:CMPhotoJakarta,Arial,sans-serif;font-size:12px;line-height:1.7;padding:0 3px;margin-top:13px!important;color:#66626d}
.cm-studio .cm-preview-note span{font-size:11px;line-height:1.6;max-width:none;color:#827d87}
.cm-studio .cm-hero .cm-preview-note{font-size:11px}
.cm-studio .cm-photo-actions{display:flex;flex-wrap:wrap;gap:9px 16px;align-items:center;justify-content:center;padding:12px 0 4px;font-family:CMPhotoJakarta,Arial,sans-serif}
.cm-studio .cm-photo-actions button{font-size:12px;color:#875093;text-decoration:underline;text-underline-offset:3px}
.cm-studio .cm-photo-actions .cm-continue-photo{display:flex;justify-content:center;width:100%;font-size:13px;font-weight:700;color:#af4db7;padding:8px}

.cm-studio[data-mode=full]{max-width:1230px;background:#fafafa;font-family:CMPhotoJakarta,Arial,sans-serif;color:#333;font-size:14px;--cm-accent:#b755b8;--cm-line:#dedde1}
.cm-studio[data-mode=full] .cm-page-heading{text-align:left;padding:28px 30px 24px}
.cm-studio[data-mode=full] .cm-page-heading>a{position:static;display:inline-block;margin-bottom:20px;font-size:12px;color:#777}
.cm-studio[data-mode=full] .cm-page-heading h1{font-family:CMPhotoMontserrat,Arial,sans-serif;font-size:31px;font-weight:700;line-height:1.3;letter-spacing:-.8px}
.cm-studio[data-mode=full] .cm-product-start-price{font-size:23px;color:#b755b8;font-weight:700;margin-top:12px}
.cm-studio[data-mode=full] .cm-workspace{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;padding:10px 30px 70px}
.cm-studio[data-mode=full] .cm-preview-column{grid-column:2;grid-row:1;top:150px}
.cm-studio[data-mode=full] .cm-editor{grid-column:1;grid-row:1}
.cm-studio[data-mode=full] .cm-photo-viewer{min-height:500px}
.cm-studio[data-mode=full] .cm-section{border-bottom:0;margin:0 0 36px;padding:0}
.cm-studio[data-mode=full] .cm-section h2{font-family:CMPhotoMontserrat,Arial,sans-serif;font-weight:700;font-size:20px;line-height:1.4;letter-spacing:-.4px;display:flex;align-items:center;gap:12px;margin-bottom:16px}
.cm-studio[data-mode=full] .cm-section h2 .cm-size-name{font:400 12px CMPhotoJakarta,Arial,sans-serif;color:#9b969d;border:0;padding:0}
.cm-studio[data-mode=full] .cm-field-description{font-size:13px;line-height:1.7;color:#77717d;margin:0 0 16px}
.cm-studio[data-mode=full] .cm-upload-options{display:flex;align-items:stretch;gap:12px}
.cm-studio[data-mode=full] .cm-upload{border:1px solid #b955b9!important;background:#fff!important;border-radius:5px!important;padding:16px 20px!important;min-height:78px;gap:4px;flex:1;position:relative}
.cm-studio[data-mode=full] .cm-upload svg{display:none}
.cm-studio[data-mode=full] .cm-upload strong{font:700 15px CMPhotoJakarta,Arial,sans-serif;color:#ae50b4}
.cm-studio[data-mode=full] .cm-upload small{font-size:10px;color:#97919c;margin:0}
.cm-studio[data-mode=full] .cm-send-later{padding:12px 16px;border:1px solid #d5d1d8;border-radius:5px;background:#fff;color:#5f5964;font-size:13px}
.cm-studio[data-mode=full] .cm-send-later.is-active{border-color:#b755b8;background:#f5eaf8;color:#a342ad}
.cm-studio[data-mode=full] .cm-later-note{font-size:12px;line-height:1.65;padding:10px 12px;background:#f3edf5;color:#74677c;margin-top:10px}
.cm-studio[data-mode=full] .cm-later-status{font-size:12px;margin-top:12px}
.cm-studio[data-mode=full] .cm-label{font-size:13px;font-weight:600;margin-top:23px;margin-bottom:10px}
.cm-studio[data-mode=full] textarea,.cm-studio[data-mode=full] select{border-radius:3px;border-color:#d7d4db;background:#fff;padding:12px 14px;min-height:48px;font-family:CMPhotoJakarta,Arial,sans-serif;font-size:14px;color:#45404b}
.cm-studio[data-mode=full] textarea::placeholder{font-size:12px;color:#a19aa6}
.cm-studio[data-mode=full] input[type=checkbox]{accent-color:#b755b8}
.cm-studio[data-mode=full] .cm-form-shapes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #e1dfe4;background:#fff}
.cm-studio[data-mode=full] .cm-form-shape{padding:13px 4px;border-right:1px solid #e1dfe4;display:flex;align-items:center;flex-direction:column;gap:6px;color:#8c8492;font-size:10px}
.cm-studio[data-mode=full] .cm-form-shape:last-child{border-right:0}
.cm-studio[data-mode=full] .cm-form-shape svg{width:39px;height:39px}
.cm-studio[data-mode=full] .cm-form-shape.is-active{box-shadow:inset 0 -3px #b755b8;background:#faf3fc;color:#b755b8}
.cm-studio[data-mode=full] .cm-sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-left:1px solid #dedde1;border-top:1px solid #dedde1;background:#fff}
.cm-studio[data-mode=full] .cm-size{border:0!important;border-right:1px solid #dedde1!important;border-bottom:1px solid #dedde1!important;border-radius:0!important;padding:14px 9px!important;gap:9px;background:#fff!important;position:relative}
.cm-studio[data-mode=full] .cm-size img{width:100%;height:85px;object-fit:contain;mix-blend-mode:multiply}
.cm-studio[data-mode=full] .cm-size>span{font-size:13px;font-weight:700;color:#49454c;line-height:1.4}
.cm-studio[data-mode=full] .cm-size small{font-size:16px;color:#b755b8;font-weight:700}
.cm-studio[data-mode=full] .cm-size.is-active{background:#fcf8fd!important}
.cm-studio .cm-radio{display:block;width:19px;height:19px;border:1px solid #8d8893;border-radius:50%;margin:2px auto;flex-shrink:0;background:#fff}
.cm-studio .is-active>.cm-radio{border:5px solid #b755b8}
.cm-studio[data-mode=full] .cm-bases{gap:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-left:1px solid #dedde1;border-top:1px solid #dedde1}
.cm-studio[data-mode=full] .cm-base{border:0!important;border-right:1px solid #dedde1!important;border-bottom:1px solid #dedde1!important;border-radius:0!important;background:white!important;padding:14px 8px!important;gap:10px}
.cm-studio[data-mode=full] .cm-base img{height:90px;width:100%;border-radius:0;object-fit:contain}
.cm-studio[data-mode=full] .cm-base span{font-size:12px;line-height:1.5;font-weight:600;min-height:37px}
.cm-studio[data-mode=full] .cm-base strong{font-size:16px;color:#b755b8;margin-top:auto;font-weight:700}
.cm-studio[data-mode=full] .cm-base[data-base="0"] strong{visibility:hidden}
.cm-studio[data-mode=full] .cm-base.is-active{background:#fcf8fd!important}
.cm-studio[data-mode=full] .cm-text-tabs{display:flex;border-bottom:1px solid #d9d5de;margin-top:20px}
.cm-studio[data-mode=full] .cm-text-tabs button{font-size:12px;padding:12px 17px;border-bottom:3px solid transparent;color:#807587}
.cm-studio[data-mode=full] .cm-text-tabs button.is-active{color:#b755b8;border-bottom-color:#b755b8;font-weight:700}
.cm-studio[data-mode=full] .cm-message-ideas{padding:0 16px 16px;background:#f4eff7;border:1px solid #e6dce9;border-top:0}
.cm-studio[data-mode=full] .cm-idea-options{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0 8px}
.cm-studio[data-mode=full] .cm-idea-options button{padding:8px 10px;border:1px solid #dbcbe2;background:#fff;border-radius:5px;font-size:11px;color:#8d4a9a}
.cm-studio[data-mode=full] .cm-message-ideas>small{font-size:10px;color:#9c8da4}
.cm-studio[data-mode=full] .cm-font-preview{text-align:center;border:1px solid #e1dde5;border-top:0;padding:20px 10px;background:#fff;font:25px Georgia,serif;overflow-wrap:anywhere;white-space:pre-wrap}
.cm-studio[data-mode=full] .cm-proof{margin-top:28px;border-top:1px solid #e2dfe6;padding-top:23px;gap:5px}
.cm-studio[data-mode=full] .cm-proof strong{display:block;font-size:14px;color:#4c4653;font-weight:700}
.cm-studio[data-mode=full] .cm-proof small{display:block;font-size:11px;line-height:1.7;color:#8b828f;margin-top:6px}
.cm-studio[data-mode=full] .cm-selection-summary{margin-top:28px;border-top:1px solid #d9d5df}
.cm-studio[data-mode=full] .cm-selection-summary>div{padding:17px 0;border-bottom:1px solid #d9d5df;display:flex;flex-direction:column;gap:6px}
.cm-studio[data-mode=full] .cm-selection-summary strong{font-size:13px;font-weight:700;color:#49434f}
.cm-studio[data-mode=full] .cm-selection-summary span{font-size:13px;color:#8d8494;white-space:pre-wrap;overflow-wrap:anywhere}
.cm-studio[data-mode=full] .cm-selection-summary b{font-size:22px;color:#b755b8;font-weight:700}
.cm-studio[data-mode=full] .cm-order-panel{border:0;border-top:1px solid #d9d3df;border-radius:0;background:none;padding:22px 0 0}
.cm-studio[data-mode=full] .cm-summary{font-size:13px;color:#77707e}
.cm-studio[data-mode=full] .cm-total{font-size:14px}
.cm-studio[data-mode=full] .cm-total strong{font:700 26px CMPhotoJakarta,Arial,sans-serif;color:#b755b8}
.cm-studio[data-mode=full] .cm-primary.cm-add{background:linear-gradient(105deg,#e83cb6,#bd41e0)!important;border-radius:5px!important;font-family:CMPhotoJakarta,Arial,sans-serif;font-size:16px!important}

.cm-studio .cm-photo-dialog{width:min(580px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto;border:0;border-radius:12px;background:#faf9fc;color:#39313f;padding:24px;box-shadow:0 25px 90px #10142655;font-family:CMPhotoJakarta,Arial,sans-serif;text-align:left}
.cm-studio .cm-photo-dialog::backdrop{background:#111b2bbf;backdrop-filter:blur(3px)}
.cm-studio .cm-photo-dialog h2{font:700 21px CMPhotoJakarta,Arial,sans-serif;margin:0 25px 8px 0}
.cm-studio .cm-photo-dialog>p{font-size:12px;line-height:1.6;color:#8c8194;margin-bottom:16px}
.cm-studio .cm-adjust-close{position:absolute;right:16px;top:10px;font:30px Arial,sans-serif;color:#8d7d98}
.cm-studio .cm-adjust-image{display:block;width:100%;height:260px;object-fit:contain;border-radius:7px;background:linear-gradient(#343536,#5d6e88)}
.cm-studio .cm-photo-dialog .cm-photo-adjust{padding:20px 0;gap:15px}
.cm-studio .cm-photo-dialog .cm-photo-adjust label{font-size:11px;color:#74667f}
.cm-studio .cm-photo-dialog input[type=range]{accent-color:#bb52bc;padding:0;border:0;min-height:25px}
.cm-studio .cm-adjust-footer{display:flex;justify-content:space-between;gap:15px;align-items:center}
.cm-studio .cm-adjust-footer button{font-size:12px;padding:12px 20px;color:#9864a5}
.cm-studio .cm-adjust-footer [data-action=photo-done]{background:#b755b8;color:white;border-radius:5px;min-width:110px;font-weight:700}

.cm-studio[data-mode=full] .cm-photo-upload-card{display:grid;grid-template-columns:24% 1fr;background:#fff;min-height:165px}
.cm-studio[data-mode=full] .cm-photo-thumbnail{background:#ddecf7;display:grid;place-items:center;min-height:150px;overflow:hidden}
.cm-studio[data-mode=full] .cm-photo-thumbnail>svg{color:#a1c9e8;width:38px;height:38px}
.cm-studio[data-mode=full] .cm-photo-thumbnail>img{width:100%;height:100%;max-height:200px;object-fit:cover}
.cm-studio[data-mode=full] .cm-photo-upload-copy{padding:20px 22px}
.cm-studio[data-mode=full] .cm-photo-upload-copy>p{font-size:12px;line-height:1.7;color:#6f6876;margin-bottom:12px}
.cm-studio[data-mode=full] .cm-photo-upload-copy .cm-upload{display:inline-flex;width:auto;min-height:38px;border:0!important;background:#315ed3!important;border-radius:5px!important;padding:10px 20px!important}
.cm-studio[data-mode=full] .cm-photo-upload-copy .cm-upload strong{color:white;font-size:12px}
.cm-studio[data-mode=full] .cm-photo-upload-copy>small{display:block;margin-top:8px;font-size:9px;color:#aaa2b1}
.cm-studio[data-mode=full] .cm-later-card{background:#fff;border:1px solid #aca6b0;border-radius:7px;padding:16px;margin-top:16px}
.cm-studio[data-mode=full] .cm-later-card>p{font-size:12px;line-height:1.65;color:#6e6576;margin-bottom:12px}
.cm-studio[data-mode=full] .cm-later-card .cm-send-later{border:1px solid #315ed3;color:#315ed3;font-weight:600;padding:10px 16px;font-size:12px}
.cm-studio[data-mode=full] .cm-later-card .cm-send-later.is-active{background:#edf1fe}
.cm-studio[data-mode=full] .cm-special-instructions{margin-top:32px}
.cm-studio[data-mode=full] .cm-special-instructions summary{cursor:pointer;list-style:none;font:700 15px CMPhotoMontserrat,Arial,sans-serif;display:flex;align-items:center;gap:15px;padding:10px 0}
.cm-studio[data-mode=full] .cm-special-instructions summary:after{content:'⌄';font:19px Arial,sans-serif;transition:transform .15s}
.cm-studio[data-mode=full] .cm-special-instructions:not([open]) summary:after{transform:rotate(-90deg)}
.cm-studio[data-mode=full] .cm-special-instructions summary::-webkit-details-marker{display:none}
.cm-studio[data-mode=full] .cm-special-instructions>div{background:#fff;padding:20px;margin-top:12px}
@media(max-width:1100px){
 .cm-studio .cm-hero-visual{min-height:572.65px}
 .cm-studio .cm-hero .cm-photo-viewer{min-height:480px}
 .cm-studio[data-mode=full] .cm-workspace{gap:28px;padding-left:22px;padding-right:22px}
 .cm-studio .cm-shape-tool{width:51px;height:51px;padding:7px}
 .cm-studio[data-mode=full] .cm-photo-viewer{min-height:480px}
 .cm-studio[data-mode=full] .cm-base{padding:10px 5px!important}
 .cm-studio[data-mode=full] .cm-base img{height:65px}
 .cm-studio .cm-photo-viewer .cm-preview-bottom{right:20px;bottom:20px}
 .cm-studio .cm-photo-viewer .cm-preview-bottom button{min-width:175px;font-size:14px;padding:14px 20px}
}
@media(max-width:767px){
 .cm-studio .cm-hero-visual{min-height:520.75px}
 .cm-studio .cm-hero .cm-photo-viewer{min-height:420px}
 .cm-studio .cm-viewer-shapes{left:5px;gap:1px}
 .cm-studio .cm-shape-tool{width:46px;height:49px;padding:7px}
 .cm-studio .cm-shape-tool.is-active:before{width:3px;height:21px}
 .cm-studio .cm-photo-viewer .cm-preview-tools{right:10px;top:12px;opacity:.55}
 .cm-studio .cm-photo-viewer .cm-preview-tools button{height:28px;width:28px}
 .cm-studio .cm-photo-viewer .cm-preview-bottom{bottom:18px;right:14px}
 .cm-studio .cm-photo-viewer .cm-preview-bottom button{min-width:175px;font-size:13px;padding:13px 17px}
 .cm-studio .cm-preview-note,.cm-studio .cm-hero .cm-preview-note{font-size:10px;line-height:1.7;margin-top:12px!important}
 .cm-studio .cm-preview-note span{font-size:10px}
 .cm-studio .cm-photo-actions{gap:10px 15px}
 .cm-studio .cm-photo-actions button{font-size:11px}
 .cm-studio[data-mode=full] .cm-page-heading{padding:22px 18px}
 .cm-studio[data-mode=full] .cm-page-heading h1{font-size:25px;letter-spacing:-.5px}
 .cm-studio[data-mode=full] .cm-product-start-price{font-size:21px;margin-top:9px}
 .cm-studio[data-mode=full] .cm-workspace{display:flex;flex-direction:column;padding:0 18px 40px;gap:28px}
 .cm-studio[data-mode=full] .cm-preview-column,.cm-studio[data-mode=full] .cm-editor{width:100%;position:static}
 .cm-studio[data-mode=full] .cm-photo-viewer{min-height:420px}
 .cm-studio[data-mode=full] .cm-selection-summary{display:none}
 .cm-studio[data-mode=full] .cm-section{margin-bottom:32px}
 .cm-studio[data-mode=full] .cm-section h2{font-size:18px;margin-bottom:13px}
 .cm-studio[data-mode=full] .cm-field-description{font-size:12px;line-height:1.75;margin-bottom:15px}
 .cm-studio[data-mode=full] .cm-upload-options{gap:8px}
 .cm-studio[data-mode=full] .cm-upload{padding:13px 8px!important;min-height:75px}
 .cm-studio[data-mode=full] .cm-upload strong{font-size:13px}
 .cm-studio[data-mode=full] .cm-upload small{font-size:9px}
 .cm-studio[data-mode=full] .cm-send-later{font-size:11px;padding:11px}
 .cm-studio[data-mode=full] .cm-later-status{font-size:11px}
 .cm-studio[data-mode=full] .cm-photo-upload-copy{padding:15px}
 .cm-studio[data-mode=full] .cm-photo-upload-copy>p{font-size:11px}
 .cm-studio[data-mode=full] .cm-photo-upload-copy .cm-upload{padding:10px 14px!important}
 .cm-studio[data-mode=full] .cm-photo-thumbnail{min-height:150px}
 .cm-studio[data-mode=full] .cm-form-shape{font-size:9px;padding:11px 2px}
 .cm-studio[data-mode=full] .cm-form-shape svg{width:35px;height:35px}
 .cm-studio[data-mode=full] .cm-size{padding:12px 6px!important;gap:8px}
 .cm-studio[data-mode=full] .cm-size img{height:72px}
 .cm-studio[data-mode=full] .cm-size>span{font-size:12px}
 .cm-studio[data-mode=full] .cm-size small{font-size:14px}
 .cm-studio[data-mode=full] .cm-bases{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cm-studio[data-mode=full] .cm-base{padding:14px 10px!important}
 .cm-studio[data-mode=full] .cm-base img{height:100px}
 .cm-studio[data-mode=full] .cm-base span{font-size:12px;min-height:20px}
 .cm-studio[data-mode=full] .cm-base strong{font-size:16px}
 .cm-studio[data-mode=full] textarea,.cm-studio[data-mode=full] select{font-size:16px}
 .cm-studio .cm-photo-dialog{padding:20px 16px}
 .cm-studio .cm-photo-dialog h2{font-size:19px}
 .cm-studio .cm-adjust-image{height:220px}
 .cm-studio .cm-photo-dialog .cm-photo-adjust{grid-template-columns:1fr;gap:10px;padding:15px 0}
 .cm-studio .cm-photo-dialog .cm-photo-adjust label{display:flex;align-items:center;gap:15px;justify-content:space-between;font-size:11px}
 .cm-studio .cm-photo-dialog .cm-photo-adjust input{width:60%;margin:0}
}
@media(prefers-reduced-motion:reduce){.cm-studio .cm-photo-viewer button{transition:none!important}}

/* Homepage crystal chooser: a bottom sheet; the surrounding page keeps its layout. */
.cm-studio .cm-shape-picker{position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:88vh;max-height:88dvh;margin:0;padding:0;border:0;border-radius:0;background:#fff;color:#333;overflow-y:auto;overscroll-behavior:contain;font-family:CMPhotoJakarta,Arial,sans-serif;text-align:left;box-shadow:0 -8px 40px #27233606}
.cm-studio .cm-shape-picker::backdrop{background:transparent}
.cm-studio .cm-picker-inner{max-width:1260px;margin:auto;padding:40px 40px 24px}
.cm-studio .cm-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.cm-studio .cm-picker-heading h2{font:700 clamp(20px,2vw,29px)/1.35 CMPhotoJakarta,Arial,sans-serif;letter-spacing:-.5px;color:#333;margin:0}
.cm-studio .cm-picker-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid #e8e7ec;border-radius:50%;background:#fff;color:#5a5a5a;font:300 30px/1 Arial,sans-serif;box-shadow:0 7px 25px #322c4212}
.cm-studio .cm-picker-close:hover{background:#f7f4fa;color:#ad49bd}
.cm-studio .cm-picker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.cm-studio .cm-picker-option{text-align:left;min-width:0;border-radius:8px;background:none;color:#333;padding:0}
.cm-studio .cm-picker-card{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;min-height:248px;padding:18px 12px 24px;border-radius:7px;background:linear-gradient(135deg,#6183dd,#4e238c);color:white;opacity:.43;transition:opacity .16s,box-shadow .16s}
.cm-studio .cm-picker-option.is-selected .cm-picker-card,.cm-studio .cm-picker-option:hover .cm-picker-card,.cm-studio .cm-picker-option:focus-visible .cm-picker-card{opacity:1}
.cm-studio .cm-picker-option.is-selected .cm-picker-card{box-shadow:inset 0 0 0 1px #ffffff26}
.cm-studio .cm-picker-art{display:grid;place-items:center;width:100%;height:174px;position:relative;overflow:hidden}
.cm-studio .cm-picker-art svg{width:90%;height:100%;max-width:175px;stroke-width:.7}
.cm-studio .cm-picker-art img{display:none;width:150%;height:150%;max-width:none;position:absolute;top:-25%;left:-25%;object-fit:contain;pointer-events:none}
.cm-studio .is-selected .cm-picker-art.has-preview img{display:block}
.cm-studio .is-selected .cm-picker-art.has-preview svg{visibility:hidden}
.cm-studio .cm-picker-card strong{font-size:15px;line-height:1.4;font-weight:700;text-align:center}
.cm-studio .cm-picker-price{display:flex;flex-direction:column;gap:0;padding-top:12px;opacity:.43}
.cm-studio .is-selected .cm-picker-price{opacity:1}
.cm-studio .cm-picker-price small{font-size:12px;line-height:1.5;color:#333}
.cm-studio .cm-picker-price b{font-size:21px;line-height:1.35;font-weight:700;color:#bc5ab9}
.cm-studio .cm-picker-footer{margin-top:28px}
.cm-studio .cm-picker-continue{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:212px;padding:17px 27px;border-radius:7px;background:linear-gradient(105deg,#e83cb6,#bd41e0);color:#fff;font-size:16px;font-weight:700;line-height:1.5;box-shadow:0 7px 20px #6f40883d}
.cm-studio .cm-picker-continue:hover{filter:brightness(1.07);color:#fff}
.cm-studio .cm-picker-continue span{font-size:22px;line-height:1}
.cm-studio .cm-picker-footer p{font-size:10px;color:#68616e;margin:10px 0 0;line-height:1.7}
.cm-studio .cm-picker-selection{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:900px){
 .cm-studio .cm-picker-inner{padding:28px 24px 22px}
 .cm-studio .cm-picker-grid{gap:12px}
 .cm-studio .cm-picker-card{min-height:208px;padding:15px 8px 17px}
 .cm-studio .cm-picker-art{height:142px}
 .cm-studio .cm-picker-card strong{font-size:12px}
}
@media(max-width:600px){
 .cm-studio .cm-shape-picker{border-radius:16px 16px 0 0;max-height:86vh;max-height:86dvh}
 .cm-studio .cm-picker-inner{padding:22px 18px max(18px,env(safe-area-inset-bottom))}
 .cm-studio .cm-picker-heading{gap:12px;margin-bottom:18px;align-items:flex-start}
 .cm-studio .cm-picker-heading h2{font-size:20px;line-height:1.4;max-width:285px}
 .cm-studio .cm-picker-close{flex-basis:34px;width:34px;height:34px;font-size:25px}
 .cm-studio .cm-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 12px}
 .cm-studio .cm-picker-card{min-height:165px;padding:12px 8px 15px;gap:6px}
 .cm-studio .cm-picker-art{height:112px}
 .cm-studio .cm-picker-card strong{font-size:12px}
 .cm-studio .cm-picker-price{padding-top:7px}
 .cm-studio .cm-picker-price b{font-size:19px}
 .cm-studio .cm-picker-price small{font-size:10px}
 .cm-studio .cm-picker-footer{position:sticky;bottom:-18px;margin:20px -18px -18px;padding:14px 18px max(18px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #eeeaf1;z-index:1}
 .cm-studio .cm-picker-continue{display:flex;width:100%;padding:13px 20px;font-size:15px}
 .cm-studio .cm-picker-footer p{font-size:9px;margin-top:7px}
}
@media(prefers-reduced-motion:reduce){.cm-studio .cm-picker-card{transition:none}}

.cm-studio .cm-preview-note .cm-preview-note-text{display:block;font-size:inherit;color:inherit}
.cm-studio .cm-canvas:not(.cm-has-photo) canvas{cursor:grab}
.cm-studio .cm-canvas:not(.cm-has-photo) canvas:active{cursor:grabbing}
.cm-studio .cm-canvas.cm-has-photo canvas{touch-action:none;cursor:grab}
.cm-studio .cm-canvas.cm-photo-editing canvas{cursor:grabbing}
.cm-studio .cm-picker-art .cm-picker-frame{display:block;width:100%;height:100%;top:0;left:0;max-width:100%}
.cm-studio .is-selected .cm-picker-art.has-preview .cm-picker-frame{display:none}
.cm-studio-reviews{max-width:1320px;margin:0 auto 78px;padding:0 40px;color:#25313c;font-family:Arial,Helvetica,sans-serif}.cm-reviews-intro{display:flex;align-items:end;justify-content:space-between;gap:32px;padding:34px 38px;border:1px solid #e7e1eb;border-bottom:0;border-radius:18px 18px 0 0;background:linear-gradient(120deg,#fcfaf8,#f5f1fa)}.cm-reviews-eyebrow{display:block;color:#80659d;font-size:10px;font-weight:700;letter-spacing:1.9px;margin-bottom:10px}.cm-reviews-intro h2,.cm-review-form h3{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.6px}.cm-reviews-intro h2{font-size:31px;line-height:1.16}.cm-reviews-intro p,.cm-review-form p{margin:10px 0 0;color:#777481;font-size:12px;line-height:1.7}.cm-reviews-summary{min-width:175px;padding:15px 18px;border:1px solid #dfd4e9;border-radius:11px;background:#fff;text-align:center}.cm-reviews-stars,.cm-review-card-stars{display:block;color:#8a66aa;letter-spacing:2px}.cm-reviews-summary strong{display:block;font-size:21px;margin-top:3px}.cm-reviews-summary small{display:block;color:#85808b;font-size:10px;margin-top:2px}.cm-reviews-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:0;border:1px solid #e7e1eb;border-radius:0 0 18px 18px;overflow:hidden;background:#fff}.cm-review-list{padding:28px 34px;border-right:1px solid #ece7ef}.cm-review-empty{padding:35px 8px;color:#7e7985;font-size:14px;line-height:1.7;text-align:center}.cm-review-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;padding:0 0 23px;margin:0 0 23px;border-bottom:1px solid #eeeaf1}.cm-review-card:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}.cm-review-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eee7f5;color:#765593;font-size:12px;font-weight:700}.cm-review-card-top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.cm-review-card-top strong{font-size:13px}.cm-review-card time{color:#96909b;font-size:10px}.cm-review-card-stars{font-size:13px;margin:3px 0 7px}.cm-review-copy{color:#605c67;font-size:12px;line-height:1.7}.cm-review-copy p{margin:0}.cm-review-form{padding:30px 34px;background:#fbfafc}.cm-review-form h3{font-size:24px;line-height:1.2}.cm-review-rating{border:0;padding:0;margin:24px 0 17px}.cm-review-rating legend,.cm-review-fields label,.cm-review-text{display:block;color:#5f5968;font-size:11px;font-weight:600}.cm-review-rating>div{display:flex;gap:8px;margin-top:9px}.cm-review-rating label{position:relative;display:grid;place-items:center;width:37px;height:37px;border:1px solid #ddd4e6;border-radius:8px;background:#fff;color:#a49aaE;cursor:pointer}.cm-review-rating input{position:absolute;opacity:0}.cm-review-rating span{font-size:18px;line-height:1}.cm-review-rating small{position:absolute;right:4px;bottom:2px;font-size:8px}.cm-review-rating label:has(input:checked){background:#765795;border-color:#765795;color:#fff}.cm-review-rating label:focus-within{outline:3px solid #dcd0e9;outline-offset:2px}.cm-review-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 14px}.cm-review-fields input,.cm-review-text textarea{display:block;width:100%;margin-top:6px;border:1px solid #ded9e3;border-radius:7px;padding:10px 11px;background:#fff;color:#3f3947;font:inherit;font-size:13px}.cm-review-text textarea{min-height:105px;resize:vertical;line-height:1.55}.cm-review-fields input:focus,.cm-review-text textarea:focus{border-color:#9d88b2;outline:2px solid #ded4e940}.cm-review-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}.cm-review-submit{display:flex;align-items:center;justify-content:center;width:100%;margin-top:18px;padding:13px 18px;border:0;border-radius:8px;background:#7253a0;color:#fff;font:600 13px Arial,Helvetica,sans-serif;cursor:pointer}.cm-review-submit:hover{background:#5b407f}.cm-review-submit:disabled{opacity:.58;cursor:wait}.cm-review-message{margin:12px 0 0!important;padding:10px 12px;border-radius:7px;background:#eef5ef;color:#506e58!important;font-size:11px!important}.cm-review-message.is-error{background:#f9ebed;color:#843f4a!important}@media(max-width:767px){.cm-studio-reviews{margin-bottom:42px;padding:0 18px}.cm-reviews-intro{display:block;padding:26px 20px}.cm-reviews-intro h2{font-size:25px}.cm-reviews-summary{margin-top:20px;min-width:0;text-align:left}.cm-reviews-grid{grid-template-columns:1fr}.cm-review-list{padding:24px 20px;border-right:0;border-bottom:1px solid #ece7ef}.cm-review-form{padding:26px 20px}.cm-review-form h3{font-size:22px}.cm-review-fields{grid-template-columns:1fr;gap:13px}.cm-review-rating>div{gap:7px}.cm-review-rating label{width:35px;height:35px}}
