#tycg-app{--accent:#40583d;max-width:1250px;margin:28px auto;font-family:Arial,sans-serif;color:#172033}.tycg-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.tycg-kicker{font-size:11px;font-weight:800;letter-spacing:2px;opacity:.55}.tycg-head h2{margin:5px 0;font-size:30px}.tycg-head p,.tycg-muted{margin:0;color:#667085}.tycg-reset,.tycg-primary,.tycg-secondary,.platform,.design-card,.layout-choice,.outline-choice,.step{cursor:pointer;font:inherit;position:relative;overflow:hidden;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.tycg-reset{background:#fff;color:#111827;border:1px solid #cfd4dc;padding:11px 17px;border-radius:10px;font-weight:700}.tycg-reset:hover,.tycg-primary:hover,.tycg-secondary:hover,.platform:hover,.design-card:hover,.layout-choice:hover,.outline-choice:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(16,24,40,.12)}.tycg-reset:active,.tycg-primary.tycg-clicked,.tycg-secondary.tycg-clicked,.platform.tycg-clicked,.design-card.tycg-clicked,.layout-choice.tycg-clicked,.outline-choice.tycg-clicked{transform:scale(.96)}.tycg-ripple:before{content:"";position:absolute;left:var(--rx,50%);top:var(--ry,50%);width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);transform:translate(-50%,-50%) scale(0);animation:tycg-ripple .45s ease-out;pointer-events:none}.tycg-secondary.tycg-ripple:before,.tycg-reset.tycg-ripple:before,.layout-choice.tycg-ripple:before,.outline-choice.tycg-ripple:before{background:rgba(17,24,39,.12)}@keyframes tycg-ripple{to{transform:translate(-50%,-50%) scale(24);opacity:0}}
.tycg-steps{display:flex;align-items:center;gap:10px;margin:0 0 24px;color:#98a2b3}.tycg-steps i{height:2px;width:45px;background:#dfe3ea}.tycg-steps .step{border:0;background:transparent;color:#98a2b3;font-weight:700;padding:5px 4px;display:flex;gap:7px;align-items:center}.tycg-steps .step span{width:24px;height:24px;border:1px solid #dfe3ea;border-radius:50%;display:grid;place-items:center;font-size:12px}.tycg-steps .step.active{color:#111827}.tycg-steps .step.active span{background:#ff512f;color:#fff;border-color:#ff512f}.tycg-step-panel{display:none}.tycg-step-panel.active{display:block}.tycg-panel{background:#fff;border:1px solid #e7e9ee;border-radius:18px;box-shadow:0 10px 35px #1018280b;padding:20px}.tycg-upload-grid,.tycg-custom-grid,.tycg-print-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:20px}.tycg-upload-panel{min-height:500px}.tycg-panel h3{margin:0 0 5px;font-size:20px}.tycg-platforms{display:flex;gap:10px;margin:22px 0}.platform{flex:0 0 auto;border:1px solid #dfe3ea;background:#fff;border-radius:10px;padding:11px 18px;font-weight:700;display:flex;gap:8px;align-items:center}.platform.active{border-color:#ff512f;box-shadow:0 0 0 2px #ff512f22}.platform-icon{width:23px;height:23px;border-radius:5px;background:#111827;color:#fff;display:grid;place-items:center;font-size:11px}.tycg-dropzone{min-height:180px;border:2px dashed #ff512f;border-radius:15px;background:#fff9f6;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;cursor:pointer;text-align:center}.tycg-dropzone.drag{background:#fff0eb;transform:scale(1.01)}.upload-icon{font-size:30px;color:#98a2b3}.tycg-dropzone strong{font-size:16px;color:#111827}.tycg-dropzone small{color:#98a2b3}.tycg-file-info{min-height:22px;margin:10px 0;color:#667085;font-size:13px}.tycg-primary{background:#111827;color:#fff;border:1px solid #111827;border-radius:10px;padding:13px 17px;font-weight:800}.tycg-secondary{background:#fff;color:#111827;border:1px solid #cfd4dc;border-radius:10px;padding:12px 16px;font-weight:700}.tycg-wide{width:100%}.tycg-status-box{margin-top:12px;min-height:22px;font-size:13px;color:#167c3a}.tycg-how{padding:28px}.tycg-preview-title{font-size:11px;letter-spacing:1px;font-weight:800;color:#98a2b3}.tycg-mini-card{height:250px;border-radius:10px;margin:20px 0;background:linear-gradient(135deg,#f7f5ed,#e7eadf);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#40583d;box-shadow:0 14px 35px #00000012}.tycg-mini-card span{font:italic 50px Georgia}.tycg-mini-card small{letter-spacing:3px;margin:5px}.tycg-mini-card b{margin-top:30px}.tycg-how p,.tycg-how li{color:#667085;line-height:1.55}.tycg-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px}.tycg-designs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:900px;margin:0 auto}.design-card{background:#fff;border:1px solid #dfe3ea;border-radius:14px;padding:10px;text-align:left}.design-card.active{border-color:#ff512f;box-shadow:0 0 0 2px #ff512f22}.design-art{height:300px;border-radius:10px;display:flex;align-items:center;justify-content:center;font:italic 34px Georgia;position:relative;overflow:hidden;background:#f7f7f8}.image-design-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.design-card{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.design-card:hover{transform:translateY(-2px)}.design-art small{font:10px Arial;letter-spacing:2px;font-style:normal;margin-top:8px}.floral-art{background:radial-gradient(circle at 20% 20%,#d8e0d0,transparent 25%),#f7f5ed;color:#40583d}.modern-art{background:#fff0eb;color:#6f4037}.pink-art{background:linear-gradient(135deg,#fff5f2,#f9dfdc);color:#6e4947}.ink-art{background:#fff;color:#111827;border:1px solid #eee}.design-card b{display:block;margin:12px 5px 5px}.design-card>small{display:block;color:#98a2b3;margin:0 5px 7px}.tycg-next-row{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.tycg-stage{padding:0;overflow:hidden;background:#f5f6f8}.tycg-toolbar{height:48px;padding:0 18px;display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid #e7e9ee;font-size:11px;font-weight:800;letter-spacing:1px}.tycg-toolbar span:last-child{font-weight:600;letter-spacing:0;color:#667085}.tycg-card-wrap{display:flex;align-items:center;justify-content:center;padding:28px;min-height:480px}.tycg-card{position:relative;width:min(650px,100%);aspect-ratio:3/2;overflow:hidden;border-radius:7px;box-shadow:0 20px 50px #00000025;color:#40583d;background:#f7f5ed}.tycg-decor{position:absolute;inset:20px;border:1px solid currentColor;opacity:.18}.tycg-botanical{position:absolute;left:35px;top:30px;font-size:100px;opacity:.22}.tycg-content{position:absolute;inset:0;padding:50px 70px 35px;display:flex;flex-direction:column;align-items:center;text-align:center}.tycg-brand{font-size:13px;letter-spacing:3px;font-weight:800;margin-bottom:35px}.tycg-heading{font-size:44px;font-weight:500;line-height:1}.tycg-subheading{font-size:11px;letter-spacing:3px;margin-top:10px;font-weight:700}.tycg-line{width:55px;height:2px;background:currentColor;margin:17px 0}.tycg-message{font-size:16px;line-height:1.5;max-width:480px}.tycg-name{font-size:20px;font-weight:700;margin-top:24px}.tycg-review{font-size:12px;margin-top:12px;opacity:.78}.tycg-social{font-size:11px;margin-top:auto;font-weight:700}.design-modern{background:#fff0eb!important}.design-pink{background:#fff5f2!important}.design-ink{background:#fff!important}.tycg-customer-nav{display:flex;justify-content:space-between;align-items:center;padding:0 20px 18px}.tycg-customer-nav strong{font-size:13px}.tycg-controls{height:max-content}.tycg-controls label{display:block;font-size:12px;font-weight:800;margin:13px 0 7px}.tycg-controls input[type=text],.tycg-controls input:not([type]),.tycg-controls textarea,.tycg-controls select{width:100%;box-sizing:border-box;border:1px solid #dfe3ea;border-radius:9px;padding:10px;background:#fff;font:inherit}.tycg-controls textarea{min-height:82px;resize:vertical}.tycg-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tycg-control-grid input[type=color]{width:100%;height:42px;border:1px solid #dfe3ea;border-radius:9px;background:#fff}.tycg-control-grid output{display:block;color:#667085;font-size:12px;margin-top:5px}.tycg-print-preview{overflow:auto}.print-sheet{display:flex;flex-direction:column;gap:20px}.print-page{width:210mm;min-height:297mm;box-sizing:border-box;padding:5mm;background:#fff;display:grid;gap:2mm;align-content:stretch;box-shadow:0 10px 25px #00000012}.print-page img{width:100%;height:100%;object-fit:fill;min-width:0;min-height:0}.print-page img.with-border{outline:1px dashed #aab0b8;outline-offset:-2px}.tycg-success{color:#159447;font-weight:700;font-size:14px;margin:5px 0 28px}.tycg-stats>div{display:flex;justify-content:space-between;padding:10px 0;color:#667085;border-bottom:1px solid #f0f1f3}.tycg-stats b{color:#111827}.tycg-print-controls h4{font-size:11px;letter-spacing:1px;color:#98a2b3;margin:25px 0 10px}.choice-row{display:flex;gap:10px}.layout-choice,.outline-choice{background:#fff;border:1px solid #dfe3ea;border-radius:10px;padding:11px 16px;font-weight:700}.layout-choice.active,.outline-choice.active{border-color:#ff512f;color:#ff512f;box-shadow:0 0 0 2px #ff512f18}.tycg-download{margin-top:10px;width:100%}.tycg-loading{pointer-events:none!important;color:transparent!important}.tycg-loading:after{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .65s linear infinite;color:#fff}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:950px){.tycg-upload-grid,.tycg-custom-grid,.tycg-print-grid{grid-template-columns:1fr}.tycg-designs{grid-template-columns:repeat(2,minmax(0,1fr))}.print-page{transform-origin:top left}.tycg-print-preview{overflow:auto}}@media(max-width:600px){.tycg-designs{grid-template-columns:1fr}.image-design-art{height:240px}.tycg-head{gap:12px}.tycg-head h2{font-size:24px}.tycg-steps{gap:3px}.tycg-steps i{width:14px}.tycg-designs{grid-template-columns:1fr}.tycg-control-grid{grid-template-columns:1fr}.tycg-content{padding:35px 35px 25px}.tycg-card-wrap{padding:12px}.tycg-customer-nav strong{font-size:11px}}

/* v2.2: keep every control visible and clickable at all times */
#tycg-app button,
#tycg-app .tycg-primary,
#tycg-app .tycg-secondary,
#tycg-app .platform,
#tycg-app .design-card,
#tycg-app .layout-choice,
#tycg-app .outline-choice,
#tycg-app .step,
#tycg-app .tycg-reset{
  visibility:visible !important;
  opacity:1 !important;
}
#tycg-app button:not([disabled]){pointer-events:auto;}
#tycg-app .tycg-loading{pointer-events:none !important;}
#tycg-app .tycg-loading{color:#fff !important;}
#tycg-app .tycg-loading::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px;border:2px solid rgba(255,255,255,.95);border-right-color:transparent;border-radius:50%;animation:spin .65s linear infinite;}

/* v2.3 FIX: strong scoped marketplace + print button visibility */
#tycg-app .tycg-platforms .platform{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:5 !important;
  min-width:130px !important;
  width:auto !important;
  min-height:44px !important;
  padding:11px 20px !important;
  align-items:center !important;
  justify-content:center !important;
  background:#111827 !important;
  color:#ffffff !important;
  border:2px solid #111827 !important;
  border-radius:10px !important;
  cursor:pointer !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}
#tycg-app .tycg-platforms .platform.active{
  background:#ff512f !important;
  color:#fff !important;
  border-color:#ff512f !important;
}
#tycg-app .tycg-platforms .platform-icon{background:#fff !important;color:#111827 !important;flex:0 0 23px !important}

#tycg-app .tycg-secondary,
#tycg-app .tycg-reset,
#tycg-app .layout-choice,
#tycg-app .outline-choice{
  background:#e2e8f0 !important;
  color:#0f172a !important;
  border:1px solid #94a3b8 !important;
  box-shadow:0 2px 6px rgba(15,23,42,.12) !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:4 !important;
  cursor:pointer !important;
}
#tycg-app .layout-choice.active,
#tycg-app .outline-choice.active{
  background:#111827 !important;
  color:#fff !important;
  border-color:#111827 !important;
}
#tycg-app .tycg-primary{
  background:#ff512f !important;
  color:#fff !important;
  border-color:#ff512f !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:4 !important;
}
#tycg-app .tycg-platforms{position:relative;z-index:10;display:flex !important;flex-wrap:wrap !important}

/* Uploaded template gallery */
.tycg-template-box{margin-top:24px;padding-top:20px;border-top:1px solid #e7e9ee}
.tycg-template-title{font-size:11px;letter-spacing:1px;font-weight:800;color:#667085}
.tycg-template-gallery{display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));gap:12px;margin-top:12px}
.tycg-template-item{border:2px solid #dfe3ea !important;background:#fff !important;color:#111827 !important;border-radius:12px !important;padding:7px !important;cursor:pointer !important;text-align:center !important;overflow:hidden;position:relative}
.tycg-template-item img{display:block;width:100%;height:100px;object-fit:cover;border-radius:8px;margin-bottom:6px}
.tycg-template-item span{font-size:11px;font-weight:700}
.tycg-template-item.active{border-color:#ff512f !important;box-shadow:0 0 0 3px #ff512f22 !important}

/* 5-star customize control */
.tycg-stars-toggle{display:flex !important;align-items:center;gap:8px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;padding:11px 12px;margin-top:14px !important;color:#0f172a !important}
.tycg-stars-toggle input{width:18px;height:18px;accent-color:#ff512f}
.tycg-stars-toggle b{letter-spacing:2px;color:#5a4a42;margin-left:auto}
.tycg-stars{display:none;font-size:22px;letter-spacing:4px;margin-top:8px;color:inherit !important}

@media(max-width:700px){.tycg-template-gallery{grid-template-columns:repeat(2,1fr)}#tycg-app .tycg-platforms .platform{min-width:120px !important}}


/* v2.4 MULTI PDF upload */
#tycg-file-info span{display:block;margin-top:5px;line-height:1.5;word-break:break-word;color:#667085;font-size:11px}
#tycg-dropzone.drag{border-color:#ff512f!important;background:#fff5f2!important;transform:scale(1.01);}
#tycg-dropzone{transition:all .18s ease;}

/* v2.7: uploaded Pink Cherry Blossom template */
.design-pink-cherry-blossom{background:#fffdfc!important;color:#5b4a4a}

/* v2.8.1: render the selected design as a real preview layer so every template
   (including Pink Cherry Blossom) appears in Customize exactly like the others. */
.tycg-card{isolation:isolate}
.tycg-card-template{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:none;z-index:0}
.tycg-card.has-template .tycg-card-template{display:block}
.tycg-card.has-template .tycg-decor,.tycg-card.has-template .tycg-botanical{display:none}
.tycg-card .tycg-content{z-index:2}
