/* ── TEMPLATE PICKER (wizard new step 1) ── */
.tpl-pick-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap: 10px;
  margin-top: 4px;
}
.tpl-pick-card {
  cursor: pointer;
  border: 2px solid #e2e8f0;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  transition: border-color .15s, box-shadow .15s;
  user-select: none;
}
.tpl-pick-card:hover {
  border-color: #1e1b4b;
  box-shadow: 0 4px 16px rgba(99,102,241,.15);
}
.tpl-pick-card.selected {
  border-color: #1e293b;
  box-shadow: 0 0 0 3px rgba(99,102,241,.25);
}
.tpl-pick-thumb {
  width: 100%;
  height: 90px;
  overflow: hidden;
  position: relative;
}
.tpl-pick-thumb > * {
  height: 100%;
  min-height: 90px;
}
.tpl-pick-label {
  padding: 5px 7px;
  background: #fff;
  border-top: 1px solid #e2e8f0;
}
.tpl-pick-label strong {
  font-size: 10.5px;
  display: block;
  color: #1e293b;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ── WIZARD FULL-WIDTH STEP 1 ── */
.wizard-shell.new-step1 .wizard-body {
  grid-template-columns: 1fr !important;
}
.wizard-shell.new-step1 .wizard-preview {
  display: none !important;
}
.wizard-shell.new-step1 .wizard-panel {
  border-right: 0;
  max-width: 100%;
}

/* ── 50 TEMPLATE THUMBNAIL STYLES ── */

/* 1. Modern Professional — dark slate sidebar */
.thumb-modern { background: #fff; display: flex; height: 100%; }
.thumb-modern .t-side { width: 36%; background: #1e293b; padding: 10px 8px; }
.thumb-modern .t-side .t-avatar { width: 36px; height: 36px; border-radius: 50%; background: #475569; margin: 0 auto 8px; }
.thumb-modern .t-side .t-line { height: 4px; border-radius: 2px; background: rgba(255,255,255,.2); margin: 4px 0; }
.thumb-modern .t-side .t-line.w60 { width: 60%; }
.thumb-modern .t-side .t-line.w80 { width: 80%; }
.thumb-modern .t-side .t-line.w45 { width: 45%; }
.thumb-modern .t-main { flex: 1; padding: 10px 8px; }
.thumb-modern .t-main .t-line { height: 4px; border-radius: 2px; background: #e2e8f0; margin: 5px 0; }
.thumb-modern .t-main .t-line.w90 { width: 90%; }
.thumb-modern .t-main .t-line.w70 { width: 70%; }
.thumb-modern .t-main .t-line.w55 { width: 55%; }
.thumb-modern .t-main .t-accent { height: 3px; border-radius: 1px; background: #1e1b4b; width: 30%; margin: 6px 0 3px; }

/* 2. Minimalist — clean single col */
.thumb-minimal { background: #fff; padding: 12px; height: 100%; }
.thumb-minimal .t-name { height: 8px; border-radius: 3px; background: #0f172a; width: 60%; margin-bottom: 5px; }
.thumb-minimal .t-role { height: 4px; border-radius: 2px; background: #94a3b8; width: 40%; margin-bottom: 12px; }
.thumb-minimal .t-divider { height: 1px; background: #e2e8f0; margin: 7px 0; }
.thumb-minimal .t-line { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 4px 0; }
.thumb-minimal .t-line.w90 { width: 90%; }
.thumb-minimal .t-line.w75 { width: 75%; }
.thumb-minimal .t-line.w60 { width: 60%; }

/* 3. Creative Tech — gradient purple sidebar */
.thumb-creative { background: #fff; display: flex; height: 100%; }
.thumb-creative .t-side { width: 38%; background: linear-gradient(180deg, #1e1b4b, #8b5cf6); padding: 10px 6px; }
.thumb-creative .t-side .t-dot { width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.3); margin: 0 auto 8px; }
.thumb-creative .t-side .t-line { height: 3px; border-radius: 2px; background: rgba(255,255,255,.4); margin: 5px 0; }
.thumb-creative .t-side .t-badge { height: 10px; border-radius: 4px; background: rgba(255,255,255,.25); margin: 5px 0; width: 80%; }
.thumb-creative .t-main { flex: 1; padding: 10px 8px; }
.thumb-creative .t-main .t-line { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 5px 0; }
.thumb-creative .t-main .t-line.w90 { width: 90%; }
.thumb-creative .t-main .t-line.w70 { width: 70%; }
.thumb-creative .t-main .t-line.w55 { width: 55%; }

/* 4. Executive — formal, dark header */
.thumb-exec { background: #fff; height: 100%; display: flex; flex-direction: column; }
.thumb-exec .t-header { background: #0f172a; padding: 12px; }
.thumb-exec .t-header .t-name { height: 7px; border-radius: 2px; background: #fff; width: 55%; margin-bottom: 5px; }
.thumb-exec .t-header .t-role { height: 4px; border-radius: 2px; background: #94a3b8; width: 38%; }
.thumb-exec .t-body { flex: 1; padding: 10px; }
.thumb-exec .t-divider { height: 2px; background: #0f172a; margin: 7px 0 4px; width: 100%; }
.thumb-exec .t-line { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 4px 0; }
.thumb-exec .t-line.w90 { width: 90%; }
.thumb-exec .t-line.w70 { width: 70%; }
.thumb-exec .t-line.w50 { width: 50%; }

/* 5. Junior Developer — blue top bar, badges */
.thumb-junior { background: #fff; height: 100%; display: flex; flex-direction: column; }
.thumb-junior .t-header { background: #1e1b4b; padding: 12px 10px; }
.thumb-junior .t-header .t-name { height: 7px; border-radius: 2px; background: #fff; width: 58%; margin-bottom: 5px; }
.thumb-junior .t-header .t-role { height: 4px; border-radius: 2px; background: rgba(255,255,255,.5); width: 42%; }
.thumb-junior .t-body { flex: 1; padding: 10px; }
.thumb-junior .t-badges { display: flex; gap: 4px; flex-wrap: wrap; margin: 6px 0; }
.thumb-junior .t-badge { height: 10px; border-radius: 4px; background: #e0e7ff; width: 28px; }
.thumb-junior .t-line { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 4px 0; }
.thumb-junior .t-line.w90 { width: 90%; }
.thumb-junior .t-line.w65 { width: 65%; }

/* 6. Product Designer — warm off-white, teal accent */
.thumb-designer { background: #fafaf9; height: 100%; display: flex; flex-direction: column; }
.thumb-designer .t-top { padding: 12px; border-bottom: 2px solid #14b8a6; }
.thumb-designer .t-top .t-name { height: 7px; border-radius: 2px; background: #0f172a; width: 55%; margin-bottom: 5px; }
.thumb-designer .t-top .t-role { height: 4px; border-radius: 2px; background: #14b8a6; width: 38%; }
.thumb-designer .t-body { flex: 1; padding: 10px; }
.thumb-designer .t-img { height: 28px; border-radius: 6px; background: #e5e7eb; margin-bottom: 8px; }
.thumb-designer .t-line { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 4px 0; }
.thumb-designer .t-line.w90 { width: 90%; }
.thumb-designer .t-line.w65 { width: 65%; }

/* 8. Nina Lane — dark bg, yellow accents */
.thumb-nina { background: #111827; height: 100%; display: flex; flex-direction: column; padding: 12px; }
.thumb-nina .t-navatar { width: 22px; height: 22px; border-radius: 50%; background: rgba(255,255,255,.2); margin-bottom: 8px; }
.thumb-nina .t-name { height: 7px; border-radius: 2px; background: #fff; width: 58%; margin-bottom: 5px; }
.thumb-nina .t-role { height: 4px; border-radius: 2px; background: #fbbf24; width: 40%; margin-bottom: 12px; }
.thumb-nina .t-divider { height: 1px; background: rgba(251,191,36,.3); margin: 6px 0; }
.thumb-nina .t-dot-row { display: flex; align-items: center; gap: 5px; margin: 5px 0; }
.thumb-nina .t-dot { width: 5px; height: 5px; border-radius: 50%; background: #fbbf24; flex-shrink: 0; }
.thumb-nina .t-line { height: 3px; border-radius: 1.5px; background: rgba(255,255,255,.15); flex: 1; }

/* 9. Markus Johnson — light + green sidebar */
.thumb-markus { background: #fff; display: flex; height: 100%; }
.thumb-markus .t-side { width: 36%; background: #166534; padding: 10px 6px; }
.thumb-markus .t-side .t-dot { width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.25); margin: 0 auto 8px; }
.thumb-markus .t-side .t-dot-row { display: flex; align-items: center; gap: 3px; margin: 5px 0; }
.thumb-markus .t-side .t-sdot { width: 6px; height: 6px; border-radius: 50%; background: #4ade80; flex-shrink: 0; }
.thumb-markus .t-side .t-sline { height: 3px; border-radius: 1.5px; background: rgba(255,255,255,.3); flex: 1; }
.thumb-markus .t-main { flex: 1; padding: 10px 8px; }
.thumb-markus .t-main .t-line { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 5px 0; }
.thumb-markus .t-main .t-line.w90 { width: 90%; }
.thumb-markus .t-main .t-line.w70 { width: 70%; }
.thumb-markus .t-main .t-line.w55 { width: 55%; }
.thumb-markus .t-main .t-accent { height: 3px; background: #166534; width: 32%; margin: 6px 0 3px; border-radius: 1px; }

/* 10. Software Engineer — navy sidebar, skill chips */
.thumb-se { background: #fff; display: flex; height: 100%; }
.thumb-se .t-side { width: 36%; background: #1e3a5f; padding: 10px 6px; }
.thumb-se .t-side .t-dot { width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.2); margin: 0 auto 8px; }
.thumb-se .t-side .t-chip { height: 9px; border-radius: 3px; background: rgba(96,165,250,.5); margin: 5px 0; }
.thumb-se .t-side .t-chip.w70 { width: 70%; }
.thumb-se .t-side .t-chip.w55 { width: 55%; }
.thumb-se .t-side .t-chip.w80 { width: 80%; }
.thumb-se .t-main { flex: 1; padding: 10px 8px; }
.thumb-se .t-main .t-line { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 5px 0; }
.thumb-se .t-main .t-line.w90 { width: 90%; }
.thumb-se .t-main .t-line.w70 { width: 70%; }
.thumb-se .t-main .t-accent { height: 2px; background: #4338ca; width: 28%; margin: 6px 0 3px; border-radius: 1px; }

/* 11. Coral Pop */
.thumb-coral { background: #fff; height: 100%; display: flex; flex-direction: column; }
.thumb-coral .t-header { background: linear-gradient(135deg,#f97316,#ef4444); padding: 12px 10px; display: flex; align-items: center; gap: 8px; }
.thumb-coral .t-header .t-havatar { width: 22px; height: 22px; border-radius: 50%; background: rgba(255,255,255,.3); flex-shrink: 0; }
.thumb-coral .t-header .t-name { height: 7px; border-radius: 2px; background: #fff; width: 58%; margin-bottom: 5px; }
.thumb-coral .t-header .t-role { height: 4px; border-radius: 2px; background: rgba(255,255,255,.55); width: 40%; }
.thumb-coral .t-body { flex: 1; padding: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.thumb-coral .t-card { border: 1px solid #fde8d8; border-radius: 5px; padding: 5px; }
.thumb-coral .t-cline { height: 3px; border-radius: 1.5px; background: #fde8d8; margin: 3px 0; }
.thumb-coral .t-cline.w90 { width: 90%; } .thumb-coral .t-cline.w65 { width: 65%; } .thumb-coral .t-cline.w75 { width: 75%; }

/* 12. Rose Gold */
.thumb-rose { background: #fff7f7; display: flex; height: 100%; }
.thumb-rose .t-side { width: 36%; background: linear-gradient(180deg,#be185d,#9d174d); padding: 10px 6px; }
.thumb-rose .t-side .t-circle { width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.3); margin: 0 auto 8px; }
.thumb-rose .t-side .t-rline { height: 3px; border-radius: 2px; background: rgba(255,255,255,.4); margin: 5px 0; }
.thumb-rose .t-side .t-rline.w80 { width: 80%; } .thumb-rose .t-side .t-rline.w60 { width: 60%; }
.thumb-rose .t-main { flex: 1; padding: 10px 8px; }
.thumb-rose .t-main .t-raccent { height: 2px; background: #be185d; width: 35%; margin: 6px 0 3px; border-radius: 1px; }
.thumb-rose .t-main .t-rline { height: 3px; border-radius: 1.5px; background: #fce7f3; margin: 4px 0; }
.thumb-rose .t-main .t-rline.w90 { width: 90%; } .thumb-rose .t-main .t-rline.w70 { width: 70%; } .thumb-rose .t-main .t-rline.w55 { width: 55%; }

/* 13. Forest */
.thumb-forest { background: #f0fdf4; display: flex; height:100%; }
.thumb-forest .t-side { width: 38%; background: #14532d; padding: 10px 6px; }
.thumb-forest .t-side .t-leaf { width: 24px; height: 24px; border-radius: 50% 0 50% 0; background: rgba(255,255,255,.2); margin: 0 auto 8px; }
.thumb-forest .t-side .t-fline { height: 3px; border-radius: 2px; background: rgba(255,255,255,.3); margin: 5px 0; }
.thumb-forest .t-side .t-fline.w80 { width:80%; } .thumb-forest .t-side .t-fline.w60 { width:60%; } .thumb-forest .t-side .t-fline.w70 { width:70%; }
.thumb-forest .t-main { flex: 1; padding: 10px 8px; }
.thumb-forest .t-main .t-faccent { height: 2px; background: #16a34a; width: 32%; margin: 6px 0 3px; border-radius: 1px; }
.thumb-forest .t-main .t-fline { height: 3px; border-radius: 1.5px; background: #dcfce7; margin: 4px 0; }
.thumb-forest .t-main .t-fline.w90 { width:90%; } .thumb-forest .t-main .t-fline.w70 { width:70%; } .thumb-forest .t-main .t-fline.w55 { width:55%; }

/* 14. Midnight */
.thumb-midnight { background: #0a0f1e; height: 100%; display: flex; flex-direction: column; padding: 12px; }
.thumb-midnight .t-name { height: 7px; border-radius: 2px; background: #e2e8f0; width: 58%; margin-bottom: 5px; }
.thumb-midnight .t-role { height: 4px; border-radius: 2px; background: #818cf8; width: 40%; margin-bottom: 10px; }
.thumb-midnight .t-section { height: 3px; border-radius: 1.5px; background: #818cf8; width: 28%; margin: 7px 0 4px; }
.thumb-midnight .t-mline { height: 3px; border-radius: 1.5px; background: rgba(255,255,255,.12); margin: 4px 0; }
.thumb-midnight .t-mline.w90 { width:90%; } .thumb-midnight .t-mline.w75 { width:75%; } .thumb-midnight .t-mline.w60 { width:60%; }

/* 15. Amber */
.thumb-amber { background: #fffbeb; height: 100%; display: flex; flex-direction: column; }
.thumb-amber .t-band { height: 8px; background: linear-gradient(90deg,#f59e0b,#d97706); }
.thumb-amber .t-body { flex: 1; padding: 10px; display: flex; gap: 8px; }
.thumb-amber .t-left { width: 40%; border-right: 1px solid #fde68a; padding-right: 6px; }
.thumb-amber .t-left .t-aname { height: 6px; border-radius: 2px; background: #92400e; width: 90%; margin-bottom: 4px; }
.thumb-amber .t-left .t-arole { height: 4px; border-radius: 2px; background: #f59e0b; width: 70%; margin-bottom: 8px; }
.thumb-amber .t-left .t-aline { height: 3px; border-radius: 1.5px; background: #fde68a; margin: 4px 0; }
.thumb-amber .t-right { flex: 1; }
.thumb-amber .t-right .t-ambavatar { width: 18px; height: 18px; border-radius: 50%; background: rgba(245,158,11,.3); border: 1.5px solid #f59e0b; margin: 0 0 6px auto; }
.thumb-amber .t-right .t-aline { height: 3px; border-radius: 1.5px; background: #fde68a; margin: 5px 0; }
.thumb-amber .t-right .t-aline.w90 { width:90%; } .thumb-amber .t-right .t-aline.w70 { width:70%; }

/* 16. Sky */
.thumb-sky { background: #eef2ff; height:100%; display: flex; flex-direction: column; }
.thumb-sky .t-header { background: #1e1b4b; padding: 12px 10px; display: flex; align-items: center; gap: 8px; }
.thumb-sky .t-header .t-havatar { width: 22px; height: 22px; border-radius: 50%; background: rgba(255,255,255,.3); flex-shrink: 0; }
.thumb-sky .t-header .t-name { height: 7px; border-radius: 2px; background: #fff; width: 55%; margin-bottom: 5px; }
.thumb-sky .t-header .t-role { height: 4px; border-radius: 2px; background: rgba(255,255,255,.5); width: 38%; }
.thumb-sky .t-body { flex:1; padding: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 5px; align-content: start; }
.thumb-sky .t-skill { height: 18px; border-radius: 6px; background: #e0e7ff; }
.thumb-sky .t-sline { height: 3px; border-radius: 1.5px; background: #c7d2fe; margin: 4px 0; grid-column: 1/-1; }
.thumb-sky .t-sline.w90 { width:90%; } .thumb-sky .t-sline.w70 { width:70%; }

/* 17. Olive */
.thumb-olive { background: #fefce8; display: flex; height:100%; }
.thumb-olive .t-side { width: 36%; background: #4d7c0f; padding: 10px 6px; }
.thumb-olive .t-side .t-sq { width: 26px; height: 26px; border-radius: 4px; background: rgba(255,255,255,.2); margin: 0 auto 8px; }
.thumb-olive .t-side .t-oline { height: 3px; border-radius: 2px; background: rgba(255,255,255,.35); margin: 5px 0; }
.thumb-olive .t-side .t-oline.w80 { width:80%; } .thumb-olive .t-side .t-oline.w60 { width:60%; } .thumb-olive .t-side .t-oline.w70 { width:70%; }
.thumb-olive .t-main { flex:1; padding: 10px 8px; }
.thumb-olive .t-main .t-oaccent { height: 2px; background: #65a30d; width: 30%; margin: 6px 0 3px; border-radius: 1px; }
.thumb-olive .t-main .t-oline { height: 3px; border-radius: 1.5px; background: #d9f99d; margin: 4px 0; }
.thumb-olive .t-main .t-oline.w90 { width:90%; } .thumb-olive .t-main .t-oline.w70 { width:70%; } .thumb-olive .t-main .t-oline.w55 { width:55%; }

/* 18. Monochrome */
.thumb-mono { background: #fff; height:100%; display: flex; flex-direction: column; }
.thumb-mono .t-bar { height: 4px; background: #000; }
.thumb-mono .t-body { flex:1; padding: 10px 12px; }
.thumb-mono .t-big { height: 10px; border-radius: 2px; background: #0f172a; width: 65%; margin-bottom: 4px; }
.thumb-mono .t-med { height: 5px; border-radius: 1.5px; background: #475569; width: 42%; margin-bottom: 12px; }
.thumb-mono .t-rule { height: 1.5px; background: #0f172a; margin: 7px 0 5px; }
.thumb-mono .t-moline { height: 3px; border-radius: 1.5px; background: #e2e8f0; margin: 4px 0; }
.thumb-mono .t-moline.w90 { width:90%; } .thumb-mono .t-moline.w75 { width:75%; } .thumb-mono .t-moline.w60 { width:60%; }

/* 19. Violet Dusk */
.thumb-violet { background: #faf5ff; height:100%; display: flex; flex-direction: column; }
.thumb-violet .t-header { background: linear-gradient(135deg,#5b21b6,#7c3aed); padding: 12px 10px; display: flex; align-items: center; gap: 8px; }
.thumb-violet .t-header .t-havatar { width: 22px; height: 22px; border-radius: 50%; background: rgba(255,255,255,.3); flex-shrink: 0; }
.thumb-violet .t-header .t-name { height: 7px; border-radius: 2px; background: #fff; width: 56%; margin-bottom: 5px; }
.thumb-violet .t-header .t-role { height: 4px; border-radius: 2px; background: rgba(255,255,255,.5); width: 38%; }
.thumb-violet .t-body { flex:1; padding: 10px; }
.thumb-violet .t-vaccent { height: 2px; background: #7c3aed; width: 30%; margin: 6px 0 3px; border-radius: 1px; }
.thumb-violet .t-vline { height: 3px; border-radius: 1.5px; background: #ede9fe; margin: 4px 0; }
.thumb-violet .t-vline.w90 { width:90%; } .thumb-violet .t-vline.w70 { width:70%; } .thumb-violet .t-vline.w55 { width:55%; }
.thumb-violet .t-vtag { display:inline-block; height: 9px; border-radius: 3px; background: #ddd6fe; margin: 3px 2px 0 0; }

/* 20. Terracotta */
.thumb-terra { background: #fff7ed; display: flex; height:100%; }
.thumb-terra .t-side { width: 38%; background: #9a3412; padding: 10px 6px; }
.thumb-terra .t-side .t-tcirc { width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.2); margin: 0 auto 8px; }
.thumb-terra .t-side .t-tline { height: 3px; border-radius: 2px; background: rgba(255,255,255,.35); margin: 5px 0; }
.thumb-terra .t-side .t-tline.w80 { width:80%; } .thumb-terra .t-side .t-tline.w60 { width:60%; } .thumb-terra .t-side .t-tline.w70 { width:70%; }
.thumb-terra .t-main { flex:1; padding: 10px 8px; }
.thumb-terra .t-main .t-taccent { height: 3px; background: #ea580c; width: 32%; margin: 6px 0 3px; border-radius: 1px; }
.thumb-terra .t-main .t-tline { height: 3px; border-radius: 1.5px; background: #fed7aa; margin: 4px 0; }
.thumb-terra .t-main .t-tline.w90 { width:90%; } .thumb-terra .t-main .t-tline.w70 { width:70%; } .thumb-terra .t-main .t-tline.w55 { width:55%; }

/* 21. Teal Wave */
.thumb-teal { background: #f0fdfa; height:100%; display:flex; flex-direction:column; }
.thumb-teal .t-wave { height: 38px; background: linear-gradient(135deg,#1e1b4b,#4338ca); border-radius: 0 0 60% 60%/0 0 30px 30px; position:relative; }
.thumb-teal .t-wave .t-wname { position:absolute; bottom:8px; left:10px; height:6px; border-radius:2px; background:#fff; width:50%; }
.thumb-teal .t-wave .t-wrole { position:absolute; bottom:2px; left:10px; height:3px; border-radius:1.5px; background:rgba(255,255,255,.5); width:35%; }
.thumb-teal .t-wbody { flex:1; padding:10px; }
.thumb-teal .t-waccent { height:2px; background:#1e1b4b; width:32%; border-radius:1px; margin:6px 0 3px; }
.thumb-teal .t-wline { height:3px; border-radius:1.5px; background:#ccfbf1; margin:4px 0; }
.thumb-teal .t-wline.w90{width:90%;} .thumb-teal .t-wline.w70{width:70%;} .thumb-teal .t-wline.w55{width:55%;}

/* 22. Sand Dune */
.thumb-sand { background: #fefce8; height:100%; display:flex; flex-direction:column; }
.thumb-sand .t-header { background: #78350f; padding:12px 10px; }
.thumb-sand .t-header .t-name { height:7px; border-radius:2px; background:#fef3c7; width:55%; margin-bottom:5px; }
.thumb-sand .t-header .t-role { height:4px; border-radius:2px; background:rgba(254,243,199,.5); width:38%; }
.thumb-sand .t-sbody { flex:1; padding:10px; display:flex; gap:8px; }
.thumb-sand .t-sleft { width:35%; border-right:1px solid #fde68a; padding-right:6px; }
.thumb-sand .t-sline { height:3px; border-radius:1.5px; background:#fde68a; margin:5px 0; }
.thumb-sand .t-sline.w90{width:90%;} .thumb-sand .t-sline.w70{width:70%;}
.thumb-sand .t-sright { flex:1; }

/* 23. Indigo Sharp */
.thumb-indigo { background: #eef2ff; height:100%; display:flex; flex-direction:column; }
.thumb-indigo .t-header { background:#4338ca; padding:12px 10px; }
.thumb-indigo .t-header .t-name { height:7px; border-radius:2px; background:#fff; width:56%; margin-bottom:5px; }
.thumb-indigo .t-header .t-role { height:4px; border-radius:2px; background:rgba(255,255,255,.5); width:38%; }
.thumb-indigo .t-ibody { flex:1; padding:10px; }
.thumb-indigo .t-irow { display:flex; gap:5px; margin:6px 0; }
.thumb-indigo .t-idot { width:5px; height:5px; border-radius:50%; background:#4338ca; flex-shrink:0; margin-top:2px; }
.thumb-indigo .t-ilines { flex:1; }
.thumb-indigo .t-iline { height:3px; border-radius:1.5px; background:#c7d2fe; margin:3px 0; }
.thumb-indigo .t-iline.w90{width:90%;} .thumb-indigo .t-iline.w70{width:70%;} .thumb-indigo .t-iline.w55{width:55%;}

/* 24. Cherry Blossom */
.thumb-cherry { background: #fff1f2; display:flex; height:100%; }
.thumb-cherry .t-side { width:8px; background:linear-gradient(180deg,#fb7185,#e11d48); flex-shrink:0; }
.thumb-cherry .t-cbody { flex:1; padding:10px 8px; }
.thumb-cherry .t-cname { height:7px; border-radius:2px; background:#9f1239; width:55%; margin-bottom:4px; }
.thumb-cherry .t-crole { height:4px; border-radius:2px; background:#fb7185; width:38%; margin-bottom:12px; }
.thumb-cherry .t-caccent { height:2px; background:#fb7185; width:30%; border-radius:1px; margin:6px 0 3px; }
.thumb-cherry .t-cline { height:3px; border-radius:1.5px; background:#fecdd3; margin:4px 0; }
.thumb-cherry .t-cline.w90{width:90%;} .thumb-cherry .t-cline.w70{width:70%;} .thumb-cherry .t-cline.w55{width:55%;}

/* 25. Slate Pro */
.thumb-slate { background: #f8fafc; display:flex; height:100%; }
.thumb-slate .t-side { width:38%; background:#334155; padding:10px 6px; }
.thumb-slate .t-side .t-spcircle { width:26px; height:26px; border-radius:50%; background:rgba(255,255,255,.2); margin:0 auto 8px; }
.thumb-slate .t-side .t-spline { height:3px; border-radius:2px; background:rgba(255,255,255,.3); margin:5px 0; }
.thumb-slate .t-side .t-spline.w80{width:80%;} .thumb-slate .t-side .t-spline.w60{width:60%;} .thumb-slate .t-side .t-spline.w70{width:70%;}
.thumb-slate .t-main { flex:1; padding:10px 8px; }
.thumb-slate .t-main .t-spacc { height:2px; background:#475569; width:32%; margin:6px 0 3px; border-radius:1px; }
.thumb-slate .t-main .t-spline { height:3px; border-radius:1.5px; background:#e2e8f0; margin:4px 0; }
.thumb-slate .t-main .t-spline.w90{width:90%;} .thumb-slate .t-main .t-spline.w70{width:70%;} .thumb-slate .t-main .t-spline.w55{width:55%;}

/* 26. Mint Fresh */
.thumb-mint { background: #f0fdf4; height:100%; display:flex; flex-direction:column; }
.thumb-mint .t-topbar { background:#10b981; height:6px; }
.thumb-mint .t-mbody { flex:1; padding:10px; }
.thumb-mint .t-mname { height:7px; border-radius:2px; background:#064e3b; width:55%; margin-bottom:4px; }
.thumb-mint .t-mrole { height:4px; border-radius:2px; background:#10b981; width:38%; margin-bottom:10px; }
.thumb-mint .t-macc { height:2px; background:#10b981; width:30%; border-radius:1px; margin:6px 0 3px; }
.thumb-mint .t-mline { height:3px; border-radius:1.5px; background:#d1fae5; margin:4px 0; }
.thumb-mint .t-mline.w90{width:90%;} .thumb-mint .t-mline.w70{width:70%;} .thumb-mint .t-mline.w55{width:55%;}
.thumb-mint .t-mtags { display:flex; gap:3px; margin-top:6px; }
.thumb-mint .t-mtag { height:9px; border-radius:3px; background:#6ee7b7; }

/* 27. Gold Rush */
.thumb-gold { background: #1c1917; height:100%; display:flex; flex-direction:column; padding:12px; }
.thumb-gold .t-gname { height:7px; border-radius:2px; background:#fef3c7; width:58%; margin-bottom:5px; }
.thumb-gold .t-grole { height:4px; border-radius:2px; background:#f59e0b; width:40%; margin-bottom:10px; }
.thumb-gold .t-gsec { height:3px; border-radius:1.5px; background:#f59e0b; width:28%; margin:7px 0 4px; }
.thumb-gold .t-gline { height:3px; border-radius:1.5px; background:rgba(255,255,255,.12); margin:4px 0; }
.thumb-gold .t-gline.w90{width:90%;} .thumb-gold .t-gline.w75{width:75%;} .thumb-gold .t-gline.w60{width:60%;}

/* 28. Crimson Edge */
.thumb-crimson { background: #fff; display:flex; height:100%; }
.thumb-crimson .t-ceside { width:7px; background:linear-gradient(180deg,#dc2626,#991b1b); flex-shrink:0; }
.thumb-crimson .t-cemain { flex:1; padding:10px 8px; }
.thumb-crimson .t-cename { height:8px; border-radius:2px; background:#1e293b; width:58%; margin-bottom:4px; }
.thumb-crimson .t-cerole { height:4px; border-radius:2px; background:#dc2626; width:40%; margin-bottom:12px; }
.thumb-crimson .t-ceacc { height:1.5px; background:#dc2626; width:32%; margin:7px 0 4px; }
.thumb-crimson .t-celine { height:3px; border-radius:1.5px; background:#f1f5f9; margin:4px 0; }
.thumb-crimson .t-celine.w90{width:90%;} .thumb-crimson .t-celine.w70{width:70%;} .thumb-crimson .t-celine.w55{width:55%;}

/* 29. Aqua Marine */
.thumb-aqua { background: #ecfeff; height:100%; display:flex; flex-direction:column; }
.thumb-aqua .t-header { background: linear-gradient(135deg,#312e81,#0f172a); padding:12px 10px; }
.thumb-aqua .t-header .t-name { height:7px; border-radius:2px; background:#fff; width:55%; margin-bottom:5px; }
.thumb-aqua .t-header .t-role { height:4px; border-radius:2px; background:rgba(255,255,255,.5); width:38%; }
.thumb-aqua .t-abody { flex:1; padding:10px; display:grid; grid-template-columns:1fr 1fr; gap:5px; align-content:start; }
.thumb-aqua .t-acard { border-radius:4px; background:#eef2ff; padding:5px; }
.thumb-aqua .t-acline { height:3px; border-radius:1.5px; background:#c7d2fe; margin:3px 0; }
.thumb-aqua .t-acfull { grid-column:1/-1; height:3px; border-radius:1.5px; background:#c7d2fe; }

/* 30. Charcoal Ink */
.thumb-charcoal { background: #18181b; display:flex; height:100%; }
.thumb-charcoal .t-side { width:38%; background:#09090b; padding:10px 6px; }
.thumb-charcoal .t-side .t-chline { height:3px; border-radius:2px; background:rgba(255,255,255,.2); margin:5px 0; }
.thumb-charcoal .t-side .t-chline.w80{width:80%;} .thumb-charcoal .t-side .t-chline.w60{width:60%;} .thumb-charcoal .t-side .t-chline.w70{width:70%;}
.thumb-charcoal .t-side .t-chcirc { width:26px; height:26px; border-radius:50%; background:rgba(255,255,255,.1); margin:0 auto 8px; }
.thumb-charcoal .t-main { flex:1; padding:10px 8px; }
.thumb-charcoal .t-main .t-chacc { height:2px; background:#52525b; width:30%; margin:6px 0 3px; border-radius:1px; }
.thumb-charcoal .t-main .t-chline { height:3px; border-radius:1.5px; background:rgba(255,255,255,.1); margin:4px 0; }
.thumb-charcoal .t-main .t-chline.w90{width:90%;} .thumb-charcoal .t-main .t-chline.w70{width:70%;} .thumb-charcoal .t-main .t-chline.w55{width:55%;}

/* 31. Neon Grid */
.thumb-neon { background:#0d0d0d; height:100%; display:flex; flex-direction:column; padding:10px; position:relative; overflow:hidden; }
.thumb-neon::before { content:''; position:absolute; inset:0; background:repeating-linear-gradient(0deg,transparent,transparent 10px,rgba(0,255,136,.05) 10px,rgba(0,255,136,.05) 11px),repeating-linear-gradient(90deg,transparent,transparent 10px,rgba(0,255,136,.05) 10px,rgba(0,255,136,.05) 11px); pointer-events:none; }
.thumb-neon .t-ntitle { height:7px; border-radius:2px; background:#00ff88; width:55%; margin-bottom:4px; }
.thumb-neon .t-nrole { height:3px; border-radius:1.5px; background:#00ccaa; width:38%; margin-bottom:12px; }
.thumb-neon .t-nsec { height:2px; background:#00ff88; width:24%; margin:7px 0 4px; }
.thumb-neon .t-nline { height:3px; border-radius:1.5px; background:rgba(0,255,136,.15); margin:4px 0; }
.thumb-neon .t-nline.w90{width:90%;} .thumb-neon .t-nline.w75{width:75%;} .thumb-neon .t-nline.w60{width:60%;}

/* 32. Pastel Columns */
.thumb-pastel { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-pastel .t-pheader { display:flex; height:32px; }
.thumb-pastel .t-pheader .t-pc1 { flex:1; background:#a5b4fc; }
.thumb-pastel .t-pheader .t-pc2 { flex:1; background:#fbcfe8; }
.thumb-pastel .t-pheader .t-pc3 { flex:1; background:#6ee7b7; }
.thumb-pastel .t-pbody { flex:1; padding:8px 10px; }
.thumb-pastel .t-pname { height:7px; border-radius:2px; background:#312e81; width:55%; margin-bottom:4px; }
.thumb-pastel .t-prole { height:4px; border-radius:2px; background:#a5b4fc; width:38%; margin-bottom:10px; }
.thumb-pastel .t-pline { height:3px; border-radius:1.5px; background:#e0e7ff; margin:4px 0; }
.thumb-pastel .t-pline.w90{width:90%;} .thumb-pastel .t-pline.w70{width:70%;} .thumb-pastel .t-pline.w55{width:55%;}

/* 33. Blueprint */
.thumb-blueprint { background:#1e3a5f; height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-blueprint .t-bpgrid { position:absolute; inset:0; background:repeating-linear-gradient(0deg,transparent,transparent 8px,rgba(255,255,255,.04) 8px,rgba(255,255,255,.04) 9px),repeating-linear-gradient(90deg,transparent,transparent 8px,rgba(255,255,255,.04) 8px,rgba(255,255,255,.04) 9px); pointer-events:none; }
.thumb-blueprint .t-bpname { height:7px; border-radius:1px; background:rgba(255,255,255,.9); width:55%; margin-bottom:4px; }
.thumb-blueprint .t-bprole { height:3px; border-radius:1px; background:rgba(255,255,255,.45); width:38%; margin-bottom:8px; }
.thumb-blueprint .t-bprule { height:1px; background:rgba(255,255,255,.25); margin:7px 0; }
.thumb-blueprint .t-bpline { height:3px; border-radius:1px; background:rgba(255,255,255,.15); margin:4px 0; }
.thumb-blueprint .t-bpline.w90{width:90%;} .thumb-blueprint .t-bpline.w70{width:70%;} .thumb-blueprint .t-bpline.w55{width:55%;}

/* 34. Retro Type */
.thumb-retro { background:#fdf6e3; height:100%; display:flex; }
.thumb-retro .t-rmargin { width:4px; background:#e74c3c; flex-shrink:0; margin:8px 0; border-radius:2px; }
.thumb-retro .t-rbody { flex:1; padding:10px 8px; }
.thumb-retro .t-rtitle { height:8px; border-radius:1px; background:#2c2c2c; width:62%; margin-bottom:4px; }
.thumb-retro .t-rrole { height:4px; border-radius:1px; background:#888; width:42%; margin-bottom:10px; }
.thumb-retro .t-rhrule { height:1px; background:#ccc; margin:6px 0; }
.thumb-retro .t-rline { height:3px; border-radius:1px; background:#ddd; margin:5px 0; }
.thumb-retro .t-rline.w90{width:90%;} .thumb-retro .t-rline.w70{width:70%;} .thumb-retro .t-rline.w55{width:55%;}

/* 35. Gradient Flow */
.thumb-gflow { background:linear-gradient(135deg,#1e1b4b 0%,#8b5cf6 40%,#ec4899 100%); height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-gflow .t-gfcard { background:rgba(255,255,255,.15); border-radius:8px; padding:8px; margin-bottom:6px; backdrop-filter:blur(2px); }
.thumb-gflow .t-gfname { height:6px; border-radius:2px; background:#fff; width:55%; margin-bottom:4px; }
.thumb-gflow .t-gfrole { height:3px; border-radius:1.5px; background:rgba(255,255,255,.6); width:38%; }
.thumb-gflow .t-gfline { height:3px; border-radius:1.5px; background:rgba(255,255,255,.25); margin:4px 0; }
.thumb-gflow .t-gfline.w90{width:90%;} .thumb-gflow .t-gfline.w70{width:70%;} .thumb-gflow .t-gfline.w55{width:55%;}

/* 36. Magazine */
.thumb-mag { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-mag .t-mtop { display:flex; height:42px; }
.thumb-mag .t-mtop .t-mleft { width:60%; background:#111; display:flex; align-items:flex-end; padding:6px 8px; }
.thumb-mag .t-mtop .t-mleft .t-mname { height:7px; border-radius:2px; background:#fff; width:80%; }
.thumb-mag .t-mtop .t-mright { flex:1; background:#f59e0b; }
.thumb-mag .t-mbodycols { flex:1; display:flex; gap:0; }
.thumb-mag .t-mcol1 { width:55%; padding:8px; border-right:1px solid #f1f5f9; }
.thumb-mag .t-mcol2 { flex:1; padding:8px; }
.thumb-mag .t-mgline { height:3px; border-radius:1.5px; background:#f1f5f9; margin:4px 0; }
.thumb-mag .t-mgline.w90{width:90%;} .thumb-mag .t-mgline.w70{width:70%;} .thumb-mag .t-mgline.w55{width:55%;}

/* 37. Deco Art */
.thumb-deco { background:#fafaf7; height:100%; display:flex; flex-direction:column; border:2px solid #b8931f; padding:8px; }
.thumb-deco .t-dtop { display:flex; justify-content:center; margin-bottom:6px; }
.thumb-deco .t-ddiamond { width:14px; height:14px; background:#b8931f; transform:rotate(45deg); }
.thumb-deco .t-dname { height:7px; border-radius:1px; background:#1a1a1a; width:60%; margin:0 auto 4px; }
.thumb-deco .t-drole { height:3px; border-radius:1px; background:#b8931f; width:40%; margin:0 auto 8px; }
.thumb-deco .t-dhrule { height:1px; background:#b8931f; margin:5px 0; }
.thumb-deco .t-dline { height:3px; border-radius:1px; background:#e8e4d9; margin:4px 0; }
.thumb-deco .t-dline.w90{width:90%;} .thumb-deco .t-dline.w70{width:70%;} .thumb-deco .t-dline.w55{width:55%;}

/* 38. Split Horizon */
.thumb-split { background:#fff; height:100%; display:flex; }
.thumb-split .t-shleft { width:45%; background:#fff; padding:10px 8px; border-right:2px solid #1e293b; }
.thumb-split .t-shleft .t-shname { height:7px; border-radius:2px; background:#1e293b; width:90%; margin-bottom:4px; }
.thumb-split .t-shleft .t-shrole { height:4px; border-radius:2px; background:#94a3b8; width:70%; margin-bottom:10px; }
.thumb-split .t-shleft .t-shline { height:3px; border-radius:1.5px; background:#e2e8f0; margin:5px 0; }
.thumb-split .t-shright { flex:1; background:#1e293b; padding:10px 8px; }
.thumb-split .t-shright .t-shdline { height:3px; border-radius:1.5px; background:rgba(255,255,255,.15); margin:5px 0; }
.thumb-split .t-shright .t-shdline.w90{width:90%;} .thumb-split .t-shright .t-shdline.w70{width:70%;}

/* 40. Sunrise */
.thumb-sunrise { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-sunrise .t-srband { height:10px; background:linear-gradient(90deg,#ef4444,#f97316,#facc15); }
.thumb-sunrise .t-srhalf { flex:1; display:flex; }
.thumb-sunrise .t-srleft { width:38%; background:#fff7ed; padding:10px 8px; border-right:1px solid #fed7aa; }
.thumb-sunrise .t-srleft .t-srname { height:6px; border-radius:2px; background:#9a3412; width:90%; margin-bottom:3px; }
.thumb-sunrise .t-srleft .t-srrole { height:3px; border-radius:1.5px; background:#f97316; width:70%; margin-bottom:8px; }
.thumb-sunrise .t-srleft .t-srline { height:3px; border-radius:1.5px; background:#fed7aa; margin:4px 0; }
.thumb-sunrise .t-srright { flex:1; padding:10px 8px; }
.thumb-sunrise .t-srright .t-srrline { height:3px; border-radius:1.5px; background:#f3f4f6; margin:5px 0; }
.thumb-sunrise .t-srright .t-srrline.w90{width:90%;} .thumb-sunrise .t-srright .t-srrline.w70{width:70%;}

/* 41. Origami Fold */
.thumb-origami { background:#f9fafb; height:100%; display:flex; flex-direction:column; position:relative; overflow:hidden; }
.thumb-origami::after { content:''; position:absolute; top:0; right:0; width:0; height:0; border-style:solid; border-width:0 36px 36px 0; border-color:transparent #1e1b4b transparent transparent; }
.thumb-origami .t-oibody { flex:1; padding:12px 10px; }
.thumb-origami .t-oiname { height:7px; border-radius:2px; background:#1e293b; width:55%; margin-bottom:4px; }
.thumb-origami .t-oirole { height:4px; border-radius:2px; background:#1e1b4b; width:38%; margin-bottom:12px; }
.thumb-origami .t-oiacc { height:2px; background:#1e1b4b; width:30%; border-radius:1px; margin:7px 0 4px; }
.thumb-origami .t-oiline { height:3px; border-radius:1.5px; background:#e2e8f0; margin:4px 0; }
.thumb-origami .t-oiline.w90{width:90%;} .thumb-origami .t-oiline.w70{width:70%;} .thumb-origami .t-oiline.w55{width:55%;}

/* 42. Mosaic Tiles */
.thumb-mosaic { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-mosaic .t-mtiles { display:grid; grid-template-columns:1fr 1fr 1fr; grid-template-rows:1fr 1fr; height:44px; gap:2px; }
.thumb-mosaic .t-mtile1{background:#1e1b4b;} .thumb-mosaic .t-mtile2{background:#ec4899;} .thumb-mosaic .t-mtile3{background:#f59e0b;}
.thumb-mosaic .t-mtile4{background:#10b981;} .thumb-mosaic .t-mtile5{background:#4338ca;} .thumb-mosaic .t-mtile6{background:#8b5cf6;}
.thumb-mosaic .t-msbody { flex:1; padding:8px 10px; }
.thumb-mosaic .t-msname { height:6px; border-radius:2px; background:#1e293b; width:55%; margin-bottom:3px; }
.thumb-mosaic .t-msrole { height:3px; border-radius:1.5px; background:#1e1b4b; width:38%; margin-bottom:8px; }
.thumb-mosaic .t-msline { height:3px; border-radius:1.5px; background:#f1f5f9; margin:4px 0; }
.thumb-mosaic .t-msline.w90{width:90%;} .thumb-mosaic .t-msline.w70{width:70%;} .thumb-mosaic .t-msline.w55{width:55%;}

/* 43. Skill Chips */
.thumb-chips { background:#fafafa; height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-chips .t-chname { height:7px; border-radius:2px; background:#111; width:55%; margin-bottom:3px; }
.thumb-chips .t-chrole { height:4px; border-radius:1.5px; background:#1e1b4b; width:38%; margin-bottom:10px; }
.thumb-chips .t-chrow { display:flex; flex-wrap:wrap; gap:3px; margin-bottom:5px; }
.thumb-chips .t-chip { height:10px; border-radius:5px; background:#e0e7ff; }
.thumb-chips .t-chsec { height:2px; background:#1e1b4b; width:28%; margin:6px 0 5px; border-radius:1px; }
.thumb-chips .t-chline { height:3px; border-radius:1.5px; background:#e5e7eb; margin:4px 0; }
.thumb-chips .t-chline.w90{width:90%;} .thumb-chips .t-chline.w70{width:70%;}

/* 44. Newspaper */
.thumb-news { background:#fffef7; height:100%; display:flex; flex-direction:column; }
.thumb-news .t-newsbanner { background:#111; padding:6px 10px; display:flex; align-items:center; justify-content:center; }
.thumb-news .t-newsbanner .t-nbname { height:8px; border-radius:1px; background:#fff; width:50%; }
.thumb-news .t-newshrule { height:2px; background:#111; margin:6px 10px 4px; }
.thumb-news .t-newsbody { flex:1; padding:4px 10px 8px; display:grid; grid-template-columns:1fr 1fr 1fr; gap:6px; }
.thumb-news .t-newscol .t-ncline { height:3px; border-radius:1px; background:#e5e7eb; margin:4px 0; }
.thumb-news .t-newscol .t-nccap { height:5px; border-radius:1px; background:#d1d5db; margin-bottom:5px; }

/* 45. Timeline Left */
.thumb-timeline { background:#fff; height:100%; display:flex; }
.thumb-timeline .t-tl { width:18px; display:flex; flex-direction:column; align-items:center; padding:10px 0; gap:0; flex-shrink:0; }
.thumb-timeline .t-tline-v { width:2px; flex:1; background:#e0e7ff; }
.thumb-timeline .t-tdot { width:8px; height:8px; border-radius:50%; background:#1e1b4b; flex-shrink:0; margin:4px 0; }
.thumb-timeline .t-tlbody { flex:1; padding:10px 8px; }
.thumb-timeline .t-tlname { height:7px; border-radius:2px; background:#1e293b; width:58%; margin-bottom:4px; }
.thumb-timeline .t-tlrole { height:3px; border-radius:1.5px; background:#1e1b4b; width:40%; margin-bottom:10px; }
.thumb-timeline .t-tlblock { margin-bottom:8px; }
.thumb-timeline .t-tlblock .t-tldate { height:3px; border-radius:1px; background:#c7d2fe; width:32%; margin-bottom:3px; }
.thumb-timeline .t-tlblock .t-tlline { height:3px; border-radius:1.5px; background:#f1f5f9; margin:3px 0; }
.thumb-timeline .t-tlblock .t-tlline.w90{width:90%;} .thumb-timeline .t-tlblock .t-tlline.w70{width:70%;}

/* 46. Coral Diagonal */
.thumb-diag { background:#fff; height:100%; display:flex; flex-direction:column; position:relative; overflow:hidden; }
.thumb-diag::before { content:''; position:absolute; top:-10px; left:-10px; width:80px; height:80px; background:linear-gradient(135deg,#f97316,#ef4444); transform:rotate(0deg); clip-path:polygon(0 0,100% 0,0 100%); }
.thumb-diag .t-dgbody { flex:1; padding:12px 10px 10px 16px; }
.thumb-diag .t-dgname { height:7px; border-radius:2px; background:#1e293b; width:55%; margin-bottom:4px; }
.thumb-diag .t-dgrole { height:4px; border-radius:2px; background:#f97316; width:38%; margin-bottom:12px; margin-top:6px; }
.thumb-diag .t-dgacc { height:2px; background:#f97316; width:30%; border-radius:1px; margin:7px 0 4px; }
.thumb-diag .t-dgline { height:3px; border-radius:1.5px; background:#f3f4f6; margin:4px 0; }
.thumb-diag .t-dgline.w90{width:90%;} .thumb-diag .t-dgline.w70{width:70%;} .thumb-diag .t-dgline.w55{width:55%;}

/* 47. Ice Nordic */
.thumb-nordic { background:#f8fafc; height:100%; display:flex; flex-direction:column; padding:12px; }
.thumb-nordic .t-ndname { height:9px; border-radius:1.5px; background:#0f172a; width:62%; margin-bottom:5px; }
.thumb-nordic .t-ndrole { height:4px; border-radius:1.5px; background:#94a3b8; width:42%; margin-bottom:5px; }
.thumb-nordic .t-nddots { display:flex; gap:3px; margin-bottom:12px; }
.thumb-nordic .t-nddot { width:5px; height:5px; border-radius:50%; background:#cbd5e1; }
.thumb-nordic .t-ndsec { height:1.5px; background:#1e293b; width:100%; margin:6px 0 5px; }
.thumb-nordic .t-ndline { height:2.5px; border-radius:1.5px; background:#e2e8f0; margin:5px 0; }
.thumb-nordic .t-ndline.w90{width:90%;} .thumb-nordic .t-ndline.w70{width:70%;} .thumb-nordic .t-ndline.w50{width:50%;}

/* 48. Circuit Board */
.thumb-circuit { background:#052e16; height:100%; display:flex; flex-direction:column; padding:10px; position:relative; overflow:hidden; }
.thumb-circuit::before { content:''; position:absolute; inset:0; background:repeating-linear-gradient(0deg,transparent,transparent 12px,rgba(74,222,128,.06) 12px,rgba(74,222,128,.06) 13px),repeating-linear-gradient(90deg,transparent,transparent 12px,rgba(74,222,128,.06) 12px,rgba(74,222,128,.06) 13px); pointer-events:none;}
.thumb-circuit .t-ccname { height:6px; border-radius:1px; background:#4ade80; width:55%; margin-bottom:4px; }
.thumb-circuit .t-ccrole { height:3px; border-radius:1px; background:rgba(74,222,128,.5); width:38%; margin-bottom:10px; }
.thumb-circuit .t-ccsec { height:1.5px; background:#4ade80; width:26%; margin:6px 0 4px; }
.thumb-circuit .t-ccline { height:3px; border-radius:1px; background:rgba(74,222,128,.12); margin:4px 0; }
.thumb-circuit .t-ccline.w90{width:90%;} .thumb-circuit .t-ccline.w70{width:70%;} .thumb-circuit .t-ccline.w55{width:55%;}
.thumb-circuit .t-ccnode { display:inline-block; width:5px; height:5px; border-radius:50%; background:#4ade80; margin:4px 3px 0 0; }

/* 49. Washi Tape */
.thumb-washi { background:#fffdf5; height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-washi .t-wtape1 { height:10px; background:repeating-linear-gradient(45deg,#fde68a,#fde68a 4px,#fbbf24 4px,#fbbf24 8px); border-radius:1px; width:60%; margin-bottom:8px; }
.thumb-washi .t-wtape2 { height:8px; background:repeating-linear-gradient(45deg,#fbcfe8,#fbcfe8 4px,#f9a8d4 4px,#f9a8d4 8px); border-radius:1px; width:40%; margin-left:auto; margin-bottom:6px; }
.thumb-washi .t-wbname { height:6px; border-radius:2px; background:#4b3a1a; width:55%; margin-bottom:4px; }
.thumb-washi .t-wbrole { height:3px; border-radius:1.5px; background:#d97706; width:38%; margin-bottom:10px; }
.thumb-washi .t-wbline { height:3px; border-radius:1.5px; background:#fef3c7; margin:5px 0; }
.thumb-washi .t-wbline.w90{width:90%;} .thumb-washi .t-wbline.w70{width:70%;} .thumb-washi .t-wbline.w55{width:55%;}

/* 50. Holographic */
.thumb-holo { height:100%; display:flex; flex-direction:column; background:linear-gradient(135deg,#fce7f3 0%,#e0e7ff 25%,#d1fae5 50%,#fef3c7 75%,#fce7f3 100%); background-size:200% 200%; padding:10px; }
.thumb-holo .t-honame { height:8px; border-radius:2px; background:rgba(30,27,75,.75); width:58%; margin-bottom:4px; }
.thumb-holo .t-horole { height:4px; border-radius:2px; background:rgba(139,92,246,.6); width:40%; margin-bottom:12px; }
.thumb-holo .t-hocard { background:rgba(255,255,255,.55); border-radius:6px; padding:6px 8px; margin-bottom:5px; backdrop-filter:blur(4px); border:1px solid rgba(255,255,255,.7); }
.thumb-holo .t-hocard .t-holine { height:3px; border-radius:1.5px; background:rgba(99,102,241,.3); margin:3px 0; }
.thumb-holo .t-hocard .t-holine.w80{width:80%;} .thumb-holo .t-hocard .t-holine.w60{width:60%;}

/* ── Template Sidebar ── */
.tpl-toggle-btn {
  display: flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: 999px;
  border: 1px solid rgba(255,255,255,.2);
  background: rgba(255,255,255,.1); color: #fff; font-size: 13px; font-weight: 600;
  cursor: pointer; transition: background .15s, border-color .15s;
}
.tpl-toggle-btn:hover { background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.3); }

/* When sidebar is open, let clicks on the preview iframe pass through to the wrapper */
body.tpl-sidebar-open #live-preview-stack iframe { pointer-events: none; }

.tpl-sidebar-overlay {
  position: fixed; inset: 0;
  background: transparent;
  z-index: 9002; opacity: 0; pointer-events: none;
  transition: opacity 0.28s ease;
}
.tpl-sidebar-overlay.open {
  opacity: 1; pointer-events: all;
  background: rgba(10,15,30,0.6);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.tpl-sidebar {
  position: fixed; top: 0; left: 0; height: 100vh; width: 340px;
  background: #fff;
  box-shadow: 8px 0 40px rgba(10,15,30,0.22);
  z-index: 9003; transform: translateX(-100%);
  transition: transform 0.28s cubic-bezier(.4,0,.2,1);
  display: flex; flex-direction: column;
  border-right: 1px solid rgba(99,102,241,.12);
}
.tpl-sidebar.open { transform: translateX(0); }

/* ── Desktop: fixed panel flush with left screen edge (Firebase-style) ── */
@media (min-width: 961px), (pointer: fine) {
  .tpl-sidebar {
    position: fixed;
    left: 0;
    top: 0; /* flush with top of screen — no global header in wizard */
    height: 100vh;
    width: 340px;
    transform: none !important;
    overflow: hidden;
    border-right: 1px solid #e5edf7;
    border-radius: 0;
    box-shadow: 2px 0 16px rgba(15,23,42,.07);
    z-index: 9003;
    transition: width 0.25s cubic-bezier(.4,0,.2,1);
  }
  .tpl-sidebar.collapsed { width: 110px; }
  .tpl-sidebar-overlay { display: none !important; pointer-events: none !important; }

  /* ── Collapsed / small mode ── */
  /* Hide search bar and header text */
  .tpl-sidebar.collapsed .tpl-sidebar-search { display: none; }
  .tpl-sidebar.collapsed .tpl-sidebar-head {
    padding: 0;
    gap: 0;
  }
  .tpl-sidebar.collapsed .tpl-sidebar-toggle-btn,
  .tpl-sidebar.collapsed .tpl-sidebar-close {
    flex: 1;
    width: 50%;
    min-width: 0;
    height: 56px;
    margin: 0;
    border-radius: 0;
    border: none;
    background: transparent;
    justify-content: center;
    color: rgba(255,255,255,.6);
  }
  .tpl-sidebar.collapsed .tpl-sidebar-toggle-btn:hover,
  .tpl-sidebar.collapsed .tpl-sidebar-close:hover {
    background: rgba(255,255,255,.1);
    color: #fff;
  }
  .tpl-sidebar.collapsed .tpl-sidebar-head strong {
    opacity: 0;
    pointer-events: none;
    max-width: 0;
    overflow: hidden;
    transform: translateX(-8px);
    flex: 0;
  }

  /* Close button stays visible; its inner chevron rotates < → > */
  .tpl-close-desktop-icon {
    transition: transform 0.25s cubic-bezier(.4,0,.2,1);
  }
  .tpl-sidebar.collapsed .tpl-close-desktop-icon {
    transform: rotate(180deg);
  }

  /* Single-column mini thumbnails, no label */
  .tpl-sidebar.collapsed .tpl-sidebar-body {
    padding: 6px 6px;
  }
  .tpl-sidebar.collapsed .tpl-sidebar-body .tpl-pick-grid {
    grid-template-columns: 1fr !important;
    gap: 5px;
  }
  .tpl-sidebar.collapsed .tpl-pick-label { display: none; }
  .tpl-sidebar.collapsed .tpl-pick-thumb {
    height: 80px;
  }
  .tpl-sidebar.collapsed .tpl-pick-thumb > * {
    min-height: 80px;
  }

  /* Expand all template groups in small mode (group toggles are hidden) */
  .tpl-sidebar.collapsed .tpl-group-header { display: none; }
  .tpl-sidebar.collapsed .tpl-group-body {
    max-height: none !important;
    overflow: visible !important;
  }
}

/* Sidebar header — dark to match app header */
.tpl-sidebar-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 16px;
  height: 56px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: #0f172a;
  flex-shrink: 0; gap: 12px;
}
.tpl-sidebar-head strong {
  font-size: 14px; color: #f1f5f9; font-weight: 700; flex: 1;
  letter-spacing: -.01em;
  overflow: hidden;
  white-space: nowrap;
  transition: opacity 0.2s, max-width 0.25s cubic-bezier(.4,0,.2,1), transform 0.25s cubic-bezier(.4,0,.2,1);
  max-width: 300px;
  transform: translateX(0);
}
.tpl-sidebar-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  width: 32px;
  height: 32px;
  min-width: 32px;
  font-size: 15px;
  line-height: 1;
  color: #94a3b8;
  font-weight: 500;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  border-radius: 999px;
  transition: background .15s, color .15s;
}
.tpl-sidebar-close:hover { background: rgba(255,255,255,.16); color: #fff; }


.tpl-sidebar-body {
  overflow-y: auto;
  flex: 1;
  min-height: 0; /* allow flex child to shrink so the list scrolls inside 100vh */
  padding: 8px 10px 16px;
  scrollbar-width: thin;
  scrollbar-color: #e2e8f0 transparent;
}
.tpl-sidebar-body::-webkit-scrollbar { width: 4px; }
.tpl-sidebar-body::-webkit-scrollbar-track { background: transparent; }
.tpl-sidebar-body::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }

.tpl-sidebar-body .tpl-pick-grid {
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 8px;
  margin-bottom: 4px;
}
.tpl-head-mobile { display: none; }

@media (max-width: 768px) {
  .tpl-sidebar { width: 88vw; max-width: 340px; }
  .tpl-sidebar-body .tpl-pick-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .tpl-head-desktop { display: none; }
  .tpl-head-mobile { display: inline; }
}
.tpl-sidebar-body .tpl-pick-thumb { height: 190px; }
.tpl-sidebar-body .tpl-pick-thumb > * { min-height: 190px; }

/* Sidebar card overrides */
.tpl-sidebar-body .tpl-pick-card {
  border-radius: 10px;
  border-color: #e8eef6;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.tpl-sidebar-body .tpl-pick-card:hover {
  border-color: #1e1b4b;
  box-shadow: 0 6px 20px rgba(99,102,241,.18);
  transform: translateY(-2px);
}
.tpl-sidebar-body .tpl-pick-card.selected {
  border-color: #0f172a;
  box-shadow: 0 0 0 3px rgba(99,102,241,.28);
}

.tpl-sidebar-body .tpl-pick-label {
  padding: 5px 8px 6px;
  background: #fafbff;
  border-top: 1px solid #eef2ff;
}
.tpl-sidebar-body .tpl-pick-label strong {
  font-size: 10.5px;
  color: #334155;
}

/* Selected checkmark badge */
.tpl-sidebar-body .tpl-pick-card.selected .tpl-pick-thumb::after {
  content: '✓';
  position: absolute;
  top: 6px; right: 6px;
  width: 20px; height: 20px;
  background: #0f172a;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 20px;
  text-align: center;
}

/* Group headers — clean, subtle */
.tpl-group-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #64748b;
  padding: 6px 10px;
  background: transparent;
  border-radius: 7px;
  margin-bottom: 6px;
  margin-top: 14px;
  cursor: pointer;
  user-select: none;
  transition: color .15s, background .15s;
  border-left: 3px solid #e2e8f0;
}
.tpl-group-header:first-child { margin-top: 4px; }
.tpl-group-header:hover {
  color: #0f172a;
  background: #f5f3ff;
  border-left-color: #1e1b4b;
}
.tpl-group-header.collapsed { border-left-color: #e2e8f0; color: #94a3b8; }
.tpl-group-header .tpl-group-count {
  font-size: 10px;
  font-weight: 600;
  background: #eef2ff;
  color: #1e1b4b;
  border-radius: 999px;
  padding: 1px 7px;
  letter-spacing: 0;
  flex-shrink: 0;
}
.tpl-group-header:hover .tpl-group-count { background: #e0e7ff; }
.tpl-group-header .tpl-group-arrow {
  font-size: 10px;
  transition: transform .2s ease;
  flex-shrink: 0;
  line-height: 1;
  color: #94a3b8;
}
.tpl-group-header.collapsed .tpl-group-arrow { transform: rotate(-90deg); }
.tpl-group-body {
  overflow: hidden;
  transition: max-height .25s ease;
}
.tpl-group-body.collapsed { max-height: 0 !important; }

/* ═════════════════════���════════════════════
   AI PHOTO PANEL
   ══════════════════════════════════════════ */

/* Page wrap */
.photo-step-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  padding: 8px 0 4px;
}

/* Avatar ring */
.photo-avatar-wrap {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}
.photo-avatar-ring {
  position: relative;
  /* 512px source scales down crisply; cap size on narrow screens */
  width: min(130px, 88vw);
  height: min(130px, 88vw);
  border-radius: 50%;
  background: #fff;
  border: 3px solid #e2e8f0;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: border-color .2s, box-shadow .2s;
}
.photo-avatar-ring.has-photo {
  border-color: #1e1b4b;
  box-shadow: 0 0 0 4px rgba(99,102,241,.15);
}
.photo-dl-icon {
  position: absolute;
  bottom: 4px;
  right: 4px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1e1b4b, #8b5cf6);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(99,102,241,.45);
  transition: opacity .15s, transform .15s;
  cursor: pointer;
}
.photo-dl-icon:hover { opacity: .88; transform: scale(1.08); }
.photo-avatar-img { width: 100%; height: 100%; object-fit: cover; display: block; background: #fff; }
.photo-avatar-placeholder { width: 72%; height: 72%; }
.photo-avatar-badge {
  position: absolute;
  bottom: 6px;
  right: 6px;
  width: 22px;
  height: 22px;
  background: #22c55e;
  border: 2px solid #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}

/* Upload action row */
.photo-upload-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
}
.photo-upload-actions .btn-primary,
.photo-upload-actions .btn-secondary {
  flex: 1 1 0;
  min-width: 0;
  padding: 0 16px;
  white-space: nowrap;
  justify-content: center;
  border-radius: 6px !important;
}
.photo-upload-actions .btn-primary svg,
.photo-upload-actions .btn-secondary svg {
  flex-shrink: 0;
}
@media (max-width: 960px) {
  .photo-upload-actions {
    flex-wrap: nowrap;
    gap: 8px;
  }
  .photo-upload-actions .btn-primary,
  .photo-upload-actions .btn-secondary {
    font-size: 13px;
    height: 36px;
  }
}
.photo-upload-label {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

/* AI Photo Panel card */
.aip-card {
  width: 100%;
  align-self: stretch;
  border: 1px solid #e0e7ff;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 24px rgba(99,102,241,.10);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

/* Card header */
.aip-header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 18px 14px;
  background: linear-gradient(135deg, #eef2ff 0%, #f5f3ff 100%);
  border-bottom: 1px solid #e0e7ff;
}
.aip-header-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: linear-gradient(135deg, #1e1b4b, #8b5cf6);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(99,102,241,.35);
}
.aip-header-title { font-size: 14px; font-weight: 700; color: #1e1b4b; line-height: 1.3; }
.aip-header-sub { font-size: 12px; color: #64748b; margin-top: 2px; line-height: 1.4; }

/* Section */
.aip-section { padding: 14px 18px 0; }
.aip-section:last-of-type { padding-bottom: 4px; }
.aip-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #64748b;
  margin-bottom: 8px;
}

/* Gender segmented tray */
.aip-gender-tray {
  display: flex;
  background: #f1f5f9;
  border-radius: 10px;
  padding: 3px;
  gap: 3px;
}
.aip-gender-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 0;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background .15s, color .15s, box-shadow .15s;
  font-family: inherit;
}
.aip-gender-btn:hover { background: rgba(255,255,255,.7); color: #1e293b; }
.aip-gender-btn.active-male {
  background: #fff;
  color: #1e1b4b;
  font-weight: 700;
  box-shadow: 0 1px 6px rgba(30, 27, 75,.18);
}
.aip-gender-btn.active-female {
  background: #fff;
  color: #db2777;
  font-weight: 700;
  box-shadow: 0 1px 6px rgba(219,39,119,.18);
}

/* Style grid */
.aip-style-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px;
}
.aip-style-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 8px 4px 7px;
  border-radius: 10px;
  border: 2px solid #e2e8f0;
  background: #fafbff;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .15s, box-shadow .15s;
  font-family: inherit;
}
.aip-style-btn:hover {
  border-color: #a5b4fc;
  background: #f0f4ff;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(99,102,241,.12);
}
.aip-style-btn.selected {
  border-color: #1e1b4b;
  background: #eef2ff;
  box-shadow: 0 0 0 3px rgba(99,102,241,.18);
}
.aip-style-icon { width: 40px; height: 52px; }
.aip-style-name {
  font-size: 9.5px;
  font-weight: 600;
  color: #475569;
  text-align: center;
  line-height: 1.2;
}
.aip-style-btn.selected .aip-style-name { color: #0f172a; }
.aip-style-desc {
  font-size: 8.5px;
  color: #94a3b8;
  text-align: center;
  line-height: 1.2;
}
.aip-style-btn.selected .aip-style-desc { color: #818cf8; }

.aip-custom-block {
  padding: 12px 0 4px;
  margin-top: 4px;
  border-top: 1px dashed #e2e8f0;
}
.aip-label--sub {
  margin-top: 8px;
  margin-bottom: 6px;
  font-size: 10px;
  letter-spacing: 0.06em;
}
.aip-custom-textarea {
  width: 100%;
  min-height: 72px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1.5px solid #e2e8f0;
  font-family: inherit;
  font-size: 12.5px;
  line-height: 1.45;
  color: #0f172a;
  resize: vertical;
  box-sizing: border-box;
  background: #fff;
}
.aip-custom-textarea:focus {
  outline: none;
  border-color: #818cf8;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15);
}
.aip-custom-hint {
  margin: 8px 0 0;
  font-size: 11px;
  line-height: 1.45;
  color: #64748b;
}
.aip-suggest-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
  margin-bottom: 2px;
}
.aip-suggest-chip {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid #c7d2fe;
  background: #f5f7ff;
  color: #3730a3;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  font-family: inherit;
  max-width: 100%;
  text-align: left;
  transition: background 0.15s, border-color 0.15s;
}
.aip-suggest-chip:hover {
  background: #eef2ff;
  border-color: #818cf8;
}

/* CTA area */
.aip-cta-wrap {
  padding: 14px 18px 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.aip-btn-row {
  display: flex;
  gap: 8px;
  align-items: stretch;
}
.aip-btn-row .aip-transform-btn,
.aip-btn-row .btn-step-next,
.step-bottom-row .aip-transform-btn {
  flex: 1;
  width: auto;
}
.aip-transform-btn {
  width: 100%;
  padding: 11px 20px;
  border-radius: 6px;
  background: linear-gradient(135deg, #1e1b4b 0%, #8b5cf6 100%);
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-shadow: 0 4px 16px rgba(99,102,241,.40);
  transition: opacity .15s, box-shadow .15s, transform .15s;
  font-family: inherit;
}
.aip-transform-btn:hover {
  opacity: .93;
  box-shadow: 0 6px 24px rgba(99,102,241,.50);
  transform: translateY(-1px);
}
.aip-transform-btn:active { transform: translateY(0); }

/* Status area */
.aip-status { font-size: 12px; text-align: center; min-height: 18px; }

/* AI photo transform success: before → after reveal popup */
.photo-transform-reveal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 200100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 16px;
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  animation: ptr-backdrop-in 0.28s ease-out both;
}
@keyframes ptr-backdrop-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
/* Uses shared Save CV modal shell from header partial (.sh-draft-modal, gradient header, .sh-draft-save-btn) */
.photo-transform-ptr-modal.sh-draft-modal {
  max-width: 400px;
}
.photo-transform-ptr-modal .sh-draft-modal-header h3,
.photo-transform-ptr-modal .sh-draft-modal-header p {
  padding-right: 40px;
  box-sizing: border-box;
}
.photo-transform-ptr-body {
  padding-top: 20px;
}
.photo-transform-ptr-actions {
  margin-top: 4px;
  margin-bottom: 0;
}
.photo-transform-ptr-actions .sh-draft-save-btn {
  flex: 1 1 0;
  min-width: 0;
}
.photo-transform-ptr-actions a.ptr-transform-download {
  text-decoration: none;
  color: #fff;
}
@media (max-width: 480px) {
  .photo-transform-ptr-actions .sh-draft-save-btn {
    flex: unset;
    width: 100%;
  }
}
.photo-transform-ptr-modal .photo-transform-reveal-stage {
  margin-bottom: 0;
}
.photo-transform-reveal-stage {
  position: relative;
  width: 100%;
  max-width: 600px;
  margin: 0 auto 18px;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.12), 0 12px 40px rgba(99, 102, 241, 0.22);
}
/* While API runs: glow + shimmer over current photo */
.photo-transform-reveal-stage.ptr-processing {
  animation: ptr-stage-pulse 2s ease-in-out infinite;
}
@keyframes ptr-stage-pulse {
  0%, 100% {
    box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.28), 0 12px 40px rgba(99, 102, 241, 0.22);
  }
  50% {
    box-shadow: 0 0 0 7px rgba(139, 92, 246, 0.4), 0 14px 48px rgba(99, 102, 241, 0.32);
  }
}
.ptr-processing-shimmer {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  pointer-events: none;
  z-index: 2;
  background: linear-gradient(
    105deg,
    transparent 38%,
    rgba(255, 255, 255, 0.38) 50%,
    transparent 62%
  );
  background-size: 220% 100%;
  animation: ptr-shimmer-move 2.4s ease-in-out infinite;
}
@keyframes ptr-shimmer-move {
  0% { background-position: 130% 0; }
  100% { background-position: -130% 0; }
}
.photo-transform-reveal-stage.ptr-processing .photo-transform-reveal-before {
  animation: ptr-processing-breathe 2.6s ease-in-out infinite;
}
@keyframes ptr-processing-breathe {
  0%, 100% { filter: brightness(1) saturate(1); transform: scale(1); }
  50% { filter: brightness(1.07) saturate(1.1); transform: scale(1.03); }
}
.photo-transform-reveal-before,
.photo-transform-reveal-after {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.photo-transform-reveal-after-wrap {
  position: absolute;
  inset: 0;
  clip-path: inset(0 100% 0 0);
}
.photo-transform-reveal-after-wrap.ptr-reveal-animate {
  animation: ptr-photo-wipe 1.35s cubic-bezier(0.45, 0, 0.2, 1) 0.15s forwards;
}
@keyframes ptr-photo-wipe {
  from { clip-path: inset(0 100% 0 0); }
  to { clip-path: inset(0 0 0 0); }
}
@media (prefers-reduced-motion: reduce) {
  .photo-transform-reveal-backdrop { animation: none; }
  .photo-transform-reveal-after-wrap.ptr-reveal-animate {
    animation: none;
    clip-path: inset(0 0 0 0);
  }
  .photo-transform-reveal-stage.ptr-processing,
  .ptr-processing-shimmer,
  .photo-transform-reveal-stage.ptr-processing .photo-transform-reveal-before {
    animation: none !important;
  }
  .photo-transform-reveal-stage.ptr-processing {
    box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.12), 0 12px 40px rgba(99, 102, 241, 0.22);
  }
}

/* ══════════════════════════════════════════
  BOLD & GRAPHIC  (51–60)
  ══════════════════════════════════════════ */

/* 51. Bold Stripe */
.thumb-bhdr { background:#111827; height:100%; display:flex; flex-direction:column; }
.thumb-bhdr .t-bh-band { background:#111827; padding:10px 12px 8px; flex-shrink:0; }
.thumb-bhdr .t-bh-name { height:8px; border-radius:1.5px; background:#fff; width:62%; margin-bottom:4px; }
.thumb-bhdr .t-bh-role { height:3.5px; border-radius:1.5px; background:#dc2626; width:42%; }
.thumb-bhdr .t-bh-body { flex:1; background:#fff; padding:8px 12px; display:flex; flex-direction:column; gap:4px; }
.thumb-bhdr .t-bh-acc { display:flex; align-items:center; gap:5px; }
.thumb-bhdr .t-bh-acc::before { content:''; width:3px; height:10px; background:#dc2626; border-radius:1.5px; flex-shrink:0; }
.thumb-bhdr .t-bh-acc::after { content:''; flex:1; height:1.5px; background:#e5e7eb; }
.thumb-bhdr .t-bh-line { height:3px; border-radius:1.5px; background:#f3f4f6; margin:3px 0; }
.thumb-bhdr .t-bh-line.w90{width:90%;} .thumb-bhdr .t-bh-line.w70{width:70%;} .thumb-bhdr .t-bh-line.w55{width:55%;}

/* 52. Side Rail */
.thumb-srail { background:#fff; height:100%; display:flex; }
.thumb-srail .t-sr-rail { width:8px; background:#0f172a; flex-shrink:0; position:relative; }
.thumb-srail .t-sr-rail::before { content:''; position:absolute; top:14px; left:50%; transform:translateX(-50%); width:3px; height:calc(100% - 22px); background:rgba(255,255,255,.28); border-radius:1.5px; }
.thumb-srail .t-sr-rail .t-sr-rdot { width:6px; height:6px; border-radius:50%; background:#fff; margin:12px auto 0; }
.thumb-srail .t-sr-rline { height:2.5px; border-radius:1.5px; background:rgba(255,255,255,.35); margin:5px 2px; }
.thumb-srail .t-sr-sb { width:56px; background:#f5f3ff; padding:10px 8px; flex-shrink:0; border-right:1px solid #ede9fe; }
.thumb-srail .t-sr-sname { height:6px; border-radius:1.5px; background:#0f172a; width:80%; margin-bottom:3px; }
.thumb-srail .t-sr-srole { height:3px; border-radius:1.5px; background:#c7d2fe; width:60%; margin-bottom:8px; }
.thumb-srail .t-sr-sline { height:2.5px; border-radius:1.5px; background:#ddd6fe; margin:3px 0; }
.thumb-srail .t-sr-main { flex:1; padding:10px 8px; }
.thumb-srail .t-sr-acc { height:1.5px; background:#0f172a; width:24%; margin:7px 0 4px; }
.thumb-srail .t-sr-line { height:3px; border-radius:1.5px; background:#f3f4f6; margin:4px 0; }
.thumb-srail .t-sr-line.w90{width:90%;} .thumb-srail .t-sr-line.w70{width:70%;}

/* 53. Card Stack */
.thumb-cstack { background:#f0fdfa; height:100%; display:flex; flex-direction:column; }
.thumb-cstack .t-cs-hdr { background:#1e1b4b; padding:8px 10px; flex-shrink:0; }
.thumb-cstack .t-cs-title { height:7px; border-radius:1.5px; background:#fff; width:58%; margin-bottom:3px; }
.thumb-cstack .t-cs-role { height:3px; border-radius:1.5px; background:rgba(255,255,255,.6); width:40%; }
.thumb-cstack .t-cs-body { flex:1; padding:6px 8px; display:flex; flex-direction:column; gap:5px; }
.thumb-cstack .t-cs-card { background:#fff; border:1px solid #ccfbf1; border-radius:5px; padding:5px 7px; box-shadow:0 1px 4px rgba(13,148,136,.08); }
.thumb-cstack .t-cs-cname { height:4px; border-radius:1px; background:#134e4a; width:60%; margin-bottom:3px; }
.thumb-cstack .t-cs-cline { height:3px; border-radius:1.5px; background:#e5e7eb; margin:2px 0; }
.thumb-cstack .t-cs-cline.w90{width:90%;} .thumb-cstack .t-cs-cline.w60{width:60%;}

/* 54. Ink Draft */
.thumb-inkd { background:#faf6f0; height:100%; display:flex; flex-direction:column; padding:10px 12px; font-family:monospace; }
.thumb-inkd .t-id-name { height:9px; border-radius:1px; background:#18181b; width:62%; margin-bottom:4px; }
.thumb-inkd .t-id-role { height:3.5px; border-radius:1px; background:#57534e; width:44%; font-style:italic; margin-bottom:4px; }
.thumb-inkd .t-id-dbl { height:0; border-top:2px double #18181b; margin-bottom:8px; }
.thumb-inkd .t-id-rule { height:2px; background:#18181b; margin:7px 0 4px; }
.thumb-inkd .t-id-line { height:3px; border-radius:1px; background:#e7e5e4; margin:4px 0; }
.thumb-inkd .t-id-line.w90{width:90%;} .thumb-inkd .t-id-line.w70{width:70%;} .thumb-inkd .t-id-line.w55{width:55%;}

/* 55. Dual Column */
.thumb-dcol { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-dcol .t-dc-head { background:#1e1b4b; padding:8px 10px; flex-shrink:0; }
.thumb-dcol .t-dc-name { height:8px; border-radius:1.5px; background:#fff; width:55%; margin-bottom:3px; }
.thumb-dcol .t-dc-role { height:3px; border-radius:1.5px; background:#a5b4fc; width:38%; }
.thumb-dcol .t-dc-cols { flex:1; display:flex; }
.thumb-dcol .t-dc-left { flex:1.4; padding:8px 8px 8px 10px; border-right:1px solid #e0e7ff; display:flex; flex-direction:column; gap:3px; }
.thumb-dcol .t-dc-right { flex:1; padding:8px 8px; display:flex; flex-direction:column; gap:3px; }
.thumb-dcol .t-dc-acc { height:1.5px; background:#1e1b4b; width:24%; margin:5px 0 3px; }
.thumb-dcol .t-dc-line { height:3px; border-radius:1.5px; background:#f3f4f6; margin:2.5px 0; }
.thumb-dcol .t-dc-line.w90{width:90%;} .thumb-dcol .t-dc-line.w70{width:70%;}
.thumb-dcol .t-dc-sline { height:3px; border-radius:1.5px; background:#e0e7ff; margin:3px 0; }

/* 56. Rule Lines */
.thumb-rlns { background:#fff; height:100%; display:flex; flex-direction:column; padding:10px 12px; }
.thumb-rlns .t-rl-top { margin-bottom:8px; padding-bottom:6px; border-bottom:3px solid #111827; }
.thumb-rlns .t-rl-name { height:8px; border-radius:1.5px; background:#111827; width:60%; margin-bottom:3px; }
.thumb-rlns .t-rl-role { height:3.5px; border-radius:1.5px; background:#d97706; width:42%; }
.thumb-rlns .t-rl-sec { display:flex; align-items:center; margin:5px 0 3px; gap:4px; }
.thumb-rlns .t-rl-slab { height:12px; background:#111827; padding:0 6px; display:flex; align-items:center; clip-path:polygon(0 0, calc(100% - 5px) 0, 100% 50%, calc(100% - 5px) 100%, 0 100%); }
.thumb-rlns .t-rl-slab::after { content:''; display:block; width:18px; height:2.5px; background:#fff; border-radius:1px; }
.thumb-rlns .t-rl-sline { flex:1; height:1.5px; background:#111827; }
.thumb-rlns .t-rl-line { height:3px; border-radius:1.5px; background:#f3f4f6; margin:3px 0; }
.thumb-rlns .t-rl-line.w90{width:90%;} .thumb-rlns .t-rl-line.w70{width:70%;} .thumb-rlns .t-rl-line.w55{width:55%;}

/* 57. Arch Top */
.thumb-archt { background:#fff; height:100%; display:flex; flex-direction:column; overflow:hidden; }
.thumb-archt .t-at-arch { background:linear-gradient(135deg,#7c3aed,#4338ca); padding:10px 12px 26px; position:relative; flex-shrink:0; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
.thumb-archt .t-at-arch::after { content:''; position:absolute; bottom:0; left:0; right:0; height:22px; background:#fff; border-radius:50% 50% 0 0 / 22px 22px 0 0; }
.thumb-archt .t-at-name { height:7px; border-radius:1.5px; background:#fff; width:58%; margin-bottom:3px; }
.thumb-archt .t-at-role { height:3px; border-radius:1.5px; background:rgba(255,255,255,.6); width:40%; }
.thumb-archt .t-at-body { flex:1; padding:4px 12px 8px; display:flex; flex-direction:column; gap:4px; }
.thumb-archt .t-at-acc { height:1.5px; background:#7c3aed; width:24%; margin:5px 0 3px; }
.thumb-archt .t-at-line { height:3px; border-radius:1.5px; background:#f5f3ff; margin:4px 0; }
.thumb-archt .t-at-line.w90{width:90%;} .thumb-archt .t-at-line.w70{width:70%;} .thumb-archt .t-at-line.w55{width:55%;}

/* 58. Chip Tag */
.thumb-chtag { background:#fafafa; height:100%; display:flex; flex-direction:column; padding:10px 12px; }
.thumb-chtag .t-ct-name { height:8px; border-radius:2px; background:#0f172a; width:60%; margin-bottom:3px; }
.thumb-chtag .t-ct-role { height:3.5px; border-radius:1.5px; background:#1e1b4b; width:42%; margin-bottom:8px; }
.thumb-chtag .t-ct-chips { display:flex; flex-wrap:wrap; gap:3px; margin-bottom:8px; }
.thumb-chtag .t-ct-chip { height:10px; border-radius:5px; }
.thumb-chtag .t-ct-chip:nth-child(1){background:#e0e7ff;width:28px;} .thumb-chtag .t-ct-chip:nth-child(2){background:#fce7f3;width:20px;}
.thumb-chtag .t-ct-chip:nth-child(3){background:#dcfce7;width:32px;} .thumb-chtag .t-ct-chip:nth-child(4){background:#fff7ed;width:18px;}
.thumb-chtag .t-ct-chip:nth-child(5){background:#f5f3ff;width:24px;}
.thumb-chtag .t-ct-acc { height:1.5px; background:#0f172a; width:22%; margin:5px 0 4px; }
.thumb-chtag .t-ct-line { height:3px; border-radius:1.5px; background:#e5e7eb; margin:4px 0; }
.thumb-chtag .t-ct-line.w90{width:90%;} .thumb-chtag .t-ct-line.w70{width:70%;}

/* 59. Slash Cut */
.thumb-slcut { background:#fff; height:100%; display:flex; flex-direction:column; overflow:hidden; position:relative; }
.thumb-slcut .t-sl-top { position:relative; overflow:hidden; padding:12px 14px 10px; flex-shrink:0; min-height:52px; }
.thumb-slcut .t-sl-top::before { content:''; position:absolute; top:0; left:0; width:58%; height:100%; background:#ef4444; clip-path:polygon(0 0, 100% 0, 75% 100%, 0 100%); z-index:0; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
.thumb-slcut .t-sl-name { height:7px; border-radius:1.5px; background:#fff; width:56%; margin-bottom:3px; position:relative; z-index:1; }
.thumb-slcut .t-sl-role { height:3px; border-radius:1.5px; background:rgba(255,255,255,.75); width:36%; position:relative; z-index:1; }
.thumb-slcut .t-sl-body { flex:1; padding:8px 12px; display:flex; flex-direction:column; gap:4px; }
.thumb-slcut .t-sl-acc { display:flex; align-items:center; gap:4px; }
.thumb-slcut .t-sl-acc::before { content:''; width:10px; height:2px; background:#ef4444; border-radius:1px; flex-shrink:0; }
.thumb-slcut .t-sl-acc::after { content:''; flex:1; height:1px; background:#fee2e2; }
.thumb-slcut .t-sl-line { height:3px; border-radius:1.5px; background:#f3f4f6; margin:3px 0; }
.thumb-slcut .t-sl-line.w90{width:90%;} .thumb-slcut .t-sl-line.w70{width:70%;} .thumb-slcut .t-sl-line.w55{width:55%;}

/* 60. Border Frame */
.thumb-bfr { height:100%; background:#0f172a; padding:4px; }
.thumb-bfr .t-bf-inner { height:100%; background:#fff; display:flex; flex-direction:column; overflow:hidden; }
.thumb-bfr .t-bf-head { background:#0f172a; padding:8px 10px; text-align:center; }
.thumb-bfr .t-bf-name { height:7px; border-radius:1px; background:#f8fafc; width:56%; margin:0 auto 3px; }
.thumb-bfr .t-bf-role { height:3px; border-radius:1px; background:rgba(248,250,252,.5); width:38%; margin:0 auto; }
.thumb-bfr .t-bf-body { flex:1; padding:7px 10px; display:flex; flex-direction:column; gap:4px; }
.thumb-bfr .t-bf-sec { display:flex; align-items:center; gap:4px; margin-top:3px; }
.thumb-bfr .t-bf-sec::before { content:''; width:10px; height:1.5px; background:#0f172a; }
.thumb-bfr .t-bf-sec::after { content:''; flex:1; height:1px; background:#e2e8f0; }
.thumb-bfr .t-bf-line { height:3px; border-radius:1.5px; background:#f1f5f9; margin:3px 0; }
.thumb-bfr .t-bf-line.w90{width:90%;} .thumb-bfr .t-bf-line.w70{width:70%;} .thumb-bfr .t-bf-line.w55{width:55%;}

/* ══════════════════════════════════════════
  EDITORIAL & SOFT  (61–70)
  ══════════════════════════════════════════ */

/* 61. Pastel Ribbon */
.thumb-prib { background:#fff7fb; height:100%; display:flex; flex-direction:column; }
.thumb-prib .t-pr-top { background:linear-gradient(90deg,#f9a8d4,#c4b5fd); padding:9px 11px; }
.thumb-prib .t-pr-name { height:7px; border-radius:2px; background:#fff; width:58%; margin-bottom:3px; }
.thumb-prib .t-pr-role { height:3px; border-radius:1.5px; background:rgba(255,255,255,.65); width:38%; }
.thumb-prib .t-pr-body { flex:1; padding:9px 11px; }
.thumb-prib .t-pr-acc { height:2px; background:#f472b6; width:26%; margin:5px 0 4px; }
.thumb-prib .t-pr-line { height:3px; border-radius:1.5px; background:#f1f5f9; margin:4px 0; }
.thumb-prib .t-pr-line.w90{width:90%;} .thumb-prib .t-pr-line.w70{width:70%;} .thumb-prib .t-pr-line.w55{width:55%;}

/* 62. Linen Rail */
.thumb-lrail { background:#fff; height:100%; display:flex; }
.thumb-lrail .t-lr-rail { width:26%; background:#f5f5f4; padding:10px 6px; border-right:1px solid #e7e5e4; }
.thumb-lrail .t-lr-dot { width:22px; height:22px; border-radius:50%; background:#d6d3d1; margin:0 auto 8px; }
.thumb-lrail .t-lr-rline { height:3px; border-radius:1.5px; background:#d6d3d1; margin:4px 0; }
.thumb-lrail .t-lr-main { flex:1; padding:10px 8px; }
.thumb-lrail .t-lr-name { height:6px; border-radius:2px; background:#57534e; width:56%; margin-bottom:3px; }
.thumb-lrail .t-lr-role { height:3px; border-radius:1.5px; background:#a8a29e; width:36%; margin-bottom:6px; }
.thumb-lrail .t-lr-acc { height:1.5px; background:#78716c; width:24%; margin:5px 0 3px; }
.thumb-lrail .t-lr-line { height:3px; border-radius:1.5px; background:#f3f4f6; margin:3px 0; }
.thumb-lrail .t-lr-line.w90{width:90%;} .thumb-lrail .t-lr-line.w70{width:70%;} .thumb-lrail .t-lr-line.w55{width:55%;}

/* 63. Paper Cards */
.thumb-pcards { background:#f8fafc; height:100%; display:flex; flex-direction:column; padding:9px; gap:4px; }
.thumb-pcards .t-pc-title { height:7px; border-radius:2px; background:#334155; width:52%; margin-bottom:2px; }
.thumb-pcards .t-pc-card { background:#fff; border:1px solid #e2e8f0; border-radius:5px; padding:5px 6px; }
.thumb-pcards .t-pc-cname { height:4px; border-radius:1px; background:#64748b; width:62%; margin-bottom:3px; }
.thumb-pcards .t-pc-line { height:3px; border-radius:1.5px; background:#e2e8f0; margin:2px 0; }
.thumb-pcards .t-pc-line.w90{width:90%;} .thumb-pcards .t-pc-line.w60{width:60%;}

/* 64. Serif Note */
.thumb-snote { background:#fffaf0; height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-snote .t-sn-name { height:8px; border-radius:1px; background:#292524; width:58%; margin-bottom:3px; }
.thumb-snote .t-sn-role { height:3px; border-radius:1px; background:#a8a29e; width:38%; margin-bottom:6px; }
.thumb-snote .t-sn-rule { height:1.5px; background:#78716c; margin:5px 0 4px; }
.thumb-snote .t-sn-line { height:3px; border-radius:1px; background:#e7e5e4; margin:3px 0; }
.thumb-snote .t-sn-line.w90{width:90%;} .thumb-snote .t-sn-line.w70{width:70%;} .thumb-snote .t-sn-line.w55{width:55%;}

/* 65. Duo Balance */
.thumb-dbal { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-dbal .t-db-head { background:#e0e7ff; padding:8px 10px; }
.thumb-dbal .t-db-name { height:7px; border-radius:2px; background:#0f172a; width:56%; margin-bottom:3px; }
.thumb-dbal .t-db-role { height:3px; border-radius:1.5px; background:#818cf8; width:36%; }
.thumb-dbal .t-db-cols { flex:1; display:flex; }
.thumb-dbal .t-db-left, .thumb-dbal .t-db-right { flex:1; padding:8px 7px; }
.thumb-dbal .t-db-left { border-right:1px solid #e0e7ff; }
.thumb-dbal .t-db-acc { height:1.5px; background:#1e1b4b; width:24%; margin:4px 0 3px; }
.thumb-dbal .t-db-line { height:3px; border-radius:1.5px; background:#f1f5f9; margin:3px 0; }
.thumb-dbal .t-db-line.w90{width:90%;} .thumb-dbal .t-db-line.w70{width:70%;} .thumb-dbal .t-db-line.w50{width:50%;}

/* 66. Fine Rules */
.thumb-frules { background:#fff; height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-frules .t-fr-top { margin-bottom:6px; }
.thumb-frules .t-fr-name { height:7px; border-radius:2px; background:#1f2937; width:58%; margin-bottom:3px; }
.thumb-frules .t-fr-role { height:3px; border-radius:1.5px; background:#9ca3af; width:36%; }
.thumb-frules .t-fr-sec { display:flex; align-items:center; gap:4px; margin:4px 0 3px; }
.thumb-frules .t-fr-slab { width:16px; height:2px; background:#6b7280; }
.thumb-frules .t-fr-sline { flex:1; height:1px; background:#d1d5db; }
.thumb-frules .t-fr-line { height:3px; border-radius:1.5px; background:#f3f4f6; margin:3px 0; }
.thumb-frules .t-fr-line.w90{width:90%;} .thumb-frules .t-fr-line.w70{width:70%;} .thumb-frules .t-fr-line.w55{width:55%;}

/* 67. Halo Arch */
.thumb-harch { background:#fff; height:100%; display:flex; flex-direction:column; overflow:hidden; }
.thumb-harch .t-ha-arch { background:linear-gradient(135deg,#c4b5fd,#a5b4fc); padding:10px 11px 22px; position:relative; }
.thumb-harch .t-ha-arch::after { content:''; position:absolute; left:0; right:0; bottom:0; height:18px; background:#fff; border-radius:50% 50% 0 0 / 18px 18px 0 0; }
.thumb-harch .t-ha-name { height:7px; border-radius:2px; background:#fff; width:56%; margin-bottom:3px; }
.thumb-harch .t-ha-role { height:3px; border-radius:1.5px; background:rgba(255,255,255,.65); width:36%; }
.thumb-harch .t-ha-body { flex:1; padding:5px 11px 8px; }
.thumb-harch .t-ha-acc { height:1.5px; background:#818cf8; width:24%; margin:5px 0 3px; }
.thumb-harch .t-ha-line { height:3px; border-radius:1.5px; background:#eef2ff; margin:3px 0; }
.thumb-harch .t-ha-line.w90{width:90%;} .thumb-harch .t-ha-line.w70{width:70%;} .thumb-harch .t-ha-line.w55{width:55%;}

/* 68. Pastel Chip */
.thumb-pchip { background:#fff; height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-pchip .t-pch-name { height:7px; border-radius:2px; background:#334155; width:56%; margin-bottom:3px; }
.thumb-pchip .t-pch-role { height:3px; border-radius:1.5px; background:#94a3b8; width:36%; margin-bottom:6px; }
.thumb-pchip .t-pch-chips { display:flex; flex-wrap:wrap; gap:3px; margin-bottom:6px; }
.thumb-pchip .t-pch-chip { height:10px; border-radius:5px; }
.thumb-pchip .t-pch-chip:nth-child(1){background:#e0e7ff;} .thumb-pchip .t-pch-chip:nth-child(2){background:#fce7f3;}
.thumb-pchip .t-pch-chip:nth-child(3){background:#dcfce7;} .thumb-pchip .t-pch-chip:nth-child(4){background:#fef3c7;}
.thumb-pchip .t-pch-chip:nth-child(5){background:#e0e7ff;}
.thumb-pchip .t-pch-sec { height:1.5px; background:#94a3b8; width:24%; margin:4px 0 3px; }
.thumb-pchip .t-pch-line { height:3px; border-radius:1.5px; background:#e5e7eb; margin:3px 0; }
.thumb-pchip .t-pch-line.w90{width:90%;} .thumb-pchip .t-pch-line.w70{width:70%;}

/* 70. Thin Frame */
.thumb-tframe { background:#f8fafc; height:100%; padding:3px; }
.thumb-tframe .t-tf-inner { height:100%; border:1px solid #cbd5e1; background:#fff; display:flex; flex-direction:column; }
.thumb-tframe .t-tf-head { padding:8px 10px; text-align:center; border-bottom:1px solid #e2e8f0; }
.thumb-tframe .t-tf-name { height:7px; border-radius:1px; background:#334155; width:54%; margin:0 auto 3px; }
.thumb-tframe .t-tf-role { height:3px; border-radius:1px; background:#94a3b8; width:34%; margin:0 auto; }
.thumb-tframe .t-tf-sec { display:flex; align-items:center; gap:4px; margin:5px 0 3px; }
.thumb-tframe .t-tf-sec::before { content:''; width:8px; height:1.5px; background:#94a3b8; }
.thumb-tframe .t-tf-sec::after { content:''; flex:1; height:1px; background:#e2e8f0; }
.thumb-tframe .t-tf-line { height:3px; border-radius:1.5px; background:#f1f5f9; margin:3px 8px; }
.thumb-tframe .t-tf-line.w90{width:90%;} .thumb-tframe .t-tf-line.w70{width:70%;} .thumb-tframe .t-tf-line.w55{width:55%;}

/* ── Part 8: Stitch-inspired templates (71-80) ── */

/* 71. Essential Standard */
.thumb-estd { background:#fff; height:100%; display:flex; }
.thumb-estd .t-es-side { width:32%; background:#162032; padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-estd .t-es-dot { width:18px; height:18px; border-radius:50%; background:#1e1b4b; opacity:.5; margin:0 auto 4px; }
.thumb-estd .t-es-sline { height:3px; border-radius:1.5px; background:rgba(255,255,255,.2); margin:2px 0; }
.thumb-estd .t-es-sline.w80{width:80%;} .thumb-estd .t-es-sline.w60{width:60%;} .thumb-estd .t-es-sline.w70{width:70%;}
.thumb-estd .t-es-main { flex:1; padding:8px; }
.thumb-estd .t-es-acc { height:2px; background:#1e1b4b; width:28%; margin:4px 0 3px; }
.thumb-estd .t-es-line { height:3px; border-radius:1.5px; background:#f1f5f9; margin:3px 0; }
.thumb-estd .t-es-line.w90{width:90%;} .thumb-estd .t-es-line.w70{width:70%;} .thumb-estd .t-es-line.w60{width:60%;}

/* 72. Outcome Specialist */
.thumb-outsp { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-outsp .t-os-head { padding:8px 10px 6px; border-bottom:2.5px solid #059669; }
.thumb-outsp .t-os-name { height:7px; border-radius:2px; background:#0f172a; width:52%; margin-bottom:3px; }
.thumb-outsp .t-os-role { height:3px; border-radius:1.5px; background:#059669; width:32%; }
.thumb-outsp .t-os-body { flex:1; padding:7px 10px; }
.thumb-outsp .t-os-chips { display:flex; gap:3px; margin-bottom:5px; }
.thumb-outsp .t-os-chip { height:8px; border-radius:4px; background:#d1fae5; flex:1; }
.thumb-outsp .t-os-acc { height:1.5px; background:#059669; width:22%; margin:3px 0 2px; }
.thumb-outsp .t-os-line { height:3px; border-radius:1.5px; background:#f0fdf4; margin:3px 0; }
.thumb-outsp .t-os-line.w90{width:90%;} .thumb-outsp .t-os-line.w80{width:80%;} .thumb-outsp .t-os-line.w70{width:70%;}
.thumb-outsp .t-os-chk { width:7px; height:7px; border-radius:50%; background:#059669; display:inline-block; margin:3px 0 1px; }

/* 73. Academic Scholar */
.thumb-acs { background:#fff; height:100%; display:flex; flex-direction:column; padding:10px; }
.thumb-acs .t-ac-name { height:8px; border-radius:1px; background:#1a1a1a; width:56%; margin:0 auto 3px; }
.thumb-acs .t-ac-role { height:3px; border-radius:1px; background:#9ca3af; width:38%; margin:0 auto 5px; font-style:italic; }
.thumb-acs .t-ac-rule { height:2px; border-style:double; border-color:#1e3a5f; background:transparent; border-top:2px solid #1e3a5f; margin:4px 0 5px; }
.thumb-acs .t-ac-sec { height:3px; border-radius:1px; background:#1e3a5f; width:30%; margin:4px 0 3px; }
.thumb-acs .t-ac-line { height:3px; border-radius:1px; background:#e7e5e4; margin:3px 0; }
.thumb-acs .t-ac-line.w90{width:90%;} .thumb-acs .t-ac-line.w75{width:75%;} .thumb-acs .t-ac-line.w60{width:60%;}

/* 74. Technical Architect */
.thumb-tarch { background:#0f172a; height:100%; display:flex; }
.thumb-tarch .t-ta-side { width:30%; background:#080d18; border-right:1px solid rgba(67, 56, 202,.15); padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-tarch .t-ta-dot { width:16px; height:16px; border-radius:3px; border:1.5px solid rgba(67, 56, 202,.5); margin:0 auto 5px; }
.thumb-tarch .t-ta-chip { height:8px; border-radius:3px; background:rgba(67, 56, 202,.15); margin:2px 0; }
.thumb-tarch .t-ta-main { flex:1; padding:8px; }
.thumb-tarch .t-ta-acc { height:1.5px; background:#4338ca; width:24%; margin:3px 0 2px; }
.thumb-tarch .t-ta-line { height:3px; border-radius:1.5px; background:rgba(255,255,255,.08); margin:3px 0; }
.thumb-tarch .t-ta-line.w90{width:90%;} .thumb-tarch .t-ta-line.w70{width:70%;}
.thumb-tarch .t-ta-tags { display:flex; gap:3px; margin-top:4px; }
.thumb-tarch .t-ta-tag { height:7px; width:20px; border-radius:2px; background:rgba(67, 56, 202,.2); }

/* 76. Skill First */
.thumb-skf { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-skf .t-sf-head { padding:8px 10px 5px; }
.thumb-skf .t-sf-name { height:7px; border-radius:2px; background:#1e1b4b; width:52%; margin-bottom:2px; }
.thumb-skf .t-sf-banner { background:#f5f3ff; padding:5px 10px; display:flex; gap:3px; flex-wrap:wrap; }
.thumb-skf .t-sf-pill { height:9px; border-radius:5px; background:#e0e7ff; }
.thumb-skf .t-sf-pill:first-child{width:28%;} .thumb-skf .t-sf-pill:nth-child(2){width:30%;} .thumb-skf .t-sf-pill:nth-child(3){width:25%;}
.thumb-skf .t-sf-body { flex:1; padding:7px 10px; }
.thumb-skf .t-sf-acc { height:2px; background:#1e1b4b; width:22%; margin:3px 0 2px; }
.thumb-skf .t-sf-line { height:3px; border-radius:1.5px; background:#f1f5f9; margin:3px 0; }
.thumb-skf .t-sf-line.w90{width:90%;} .thumb-skf .t-sf-line.w70{width:70%;} .thumb-skf .t-sf-line.w55{width:55%;}

/* 77. Pure White */
.thumb-purw { background:#fff; height:100%; display:flex; flex-direction:column; padding:12px 14px; }
.thumb-purw .t-pw-name { height:9px; border-radius:2px; background:#111827; width:54%; margin-bottom:3px; }
.thumb-purw .t-pw-role { height:3px; border-radius:1.5px; background:#9ca3af; width:36%; margin-bottom:8px; }
.thumb-purw .t-pw-sec { height:2px; border-radius:1px; background:#e5e7eb; width:20%; margin:5px 0 4px; }
.thumb-purw .t-pw-line { height:3px; border-radius:1.5px; background:#f9fafb; margin:3px 0; border:1px solid #f3f4f6; }
.thumb-purw .t-pw-line.w90{width:90%;} .thumb-purw .t-pw-line.w75{width:75%;} .thumb-purw .t-pw-line.w60{width:60%;}

/* 78. Global Pro */
.thumb-gpro { background:#fff; height:100%; display:flex; }
.thumb-gpro .t-gp-side { width:34%; background:#1e3a5f; padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-gpro .t-gp-circ { width:18px; height:18px; border-radius:50%; background:rgba(255,255,255,.2); border:2px solid rgba(255,255,255,.3); margin:0 auto 5px; }
.thumb-gpro .t-gp-sline { height:3px; border-radius:1.5px; background:rgba(255,255,255,.2); margin:2px 0; }
.thumb-gpro .t-gp-sline.w80{width:80%;} .thumb-gpro .t-gp-sline.w60{width:60%;}
.thumb-gpro .t-gp-dot-item { height:5px; background:rgba(96,165,250,.3); border-radius:1.5px; margin:2px 0; }
.thumb-gpro .t-gp-main { flex:1; padding:8px; }
.thumb-gpro .t-gp-acc { height:2px; background:#1e3a5f; width:26%; margin:4px 0 3px; }
.thumb-gpro .t-gp-line { height:3px; border-radius:1.5px; background:#f1f5f9; margin:3px 0; }
.thumb-gpro .t-gp-line.w90{width:90%;} .thumb-gpro .t-gp-line.w70{width:70%;}

/* 79. Creative Writer */
.thumb-crw { background:#fff; height:100%; display:flex; flex-direction:column; }
.thumb-crw .t-cw-hero { padding:10px 12px 8px; border-bottom:2.5px solid #fed7aa; border-left:4px solid #ea580c; }
.thumb-crw .t-cw-name { height:10px; border-radius:1px; background:#1c1917; width:60%; margin-bottom:3px; }
.thumb-crw .t-cw-role { height:3px; border-radius:1.5px; background:#ea580c; width:36%; }
.thumb-crw .t-cw-body { flex:1; padding:7px 12px; }
.thumb-crw .t-cw-sec { display:flex; align-items:center; gap:4px; margin:4px 0 3px; }
.thumb-crw .t-cw-sec::before { content:''; width:3px; height:11px; background:#ea580c; border-radius:2px; }
.thumb-crw .t-cw-sec::after { content:''; height:1.5px; flex:1; background:#fed7aa; }
.thumb-crw .t-cw-line { height:3px; border-radius:1.5px; background:#fff7ed; border:1px solid #fed7aa; margin:3px 0; }
.thumb-crw .t-cw-line.w90{width:90%;} .thumb-crw .t-cw-line.w75{width:75%;} .thumb-crw .t-cw-line.w60{width:60%;}

/* 80. Executive Gold */
.thumb-exgold { background:#111; height:100%; display:flex; flex-direction:column; }
.thumb-exgold .t-eg-head { background:#0d0d0d; padding:9px 10px 7px; border-bottom:1px solid rgba(202,138,4,.3); }
.thumb-exgold .t-eg-name { height:7px; border-radius:1px; background:#fafafa; width:52%; margin-bottom:3px; }
.thumb-exgold .t-eg-role { height:2.5px; border-radius:1px; background:#ca8a04; width:34%; margin-bottom:4px; }
.thumb-exgold .t-eg-line-acc { height:1px; background:linear-gradient(90deg,#ca8a04,transparent); width:60%; }
.thumb-exgold .t-eg-body { flex:1; display:flex; }
.thumb-exgold .t-eg-left { width:36%; border-right:1px solid rgba(255,255,255,.06); padding:6px 5px; }
.thumb-exgold .t-eg-skill { height:5px; background:rgba(255,255,255,.08); border-radius:1.5px; margin:3px 0; }
.thumb-exgold .t-eg-right { flex:1; padding:6px 7px; }
.thumb-exgold .t-eg-acc { height:1.5px; background:#ca8a04; width:22%; margin:3px 0 2px; }
.thumb-exgold .t-eg-line { height:3px; border-radius:1.5px; background:rgba(255,255,255,.08); margin:3px 0; }
.thumb-exgold .t-eg-line.w90{width:90%;} .thumb-exgold .t-eg-line.w80{width:80%;}
.thumb-exgold .t-eg-diamond { width:6px; height:6px; background:#ca8a04; transform:rotate(45deg); margin:4px 0 2px; }

/* 83. Zinc Divide 1 */
.thumb-zd1 { background:#fff; height:100%; display:flex; }
.thumb-zd1 .t-zd1-side { width:36%; background:linear-gradient(160deg,#0c0f0f,#5c5b5e); padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-zd1 .t-zd1-name { height:7px; border-radius:1px; background:rgba(255,255,255,.9); width:80%; }
.thumb-zd1 .t-zd1-role { height:3px; border-radius:1.5px; background:rgba(255,255,255,.45); width:60%; }
.thumb-zd1 .t-zd1-sline { height:3px; border-radius:1.5px; background:rgba(255,255,255,.18); margin-top:3px; }
.thumb-zd1 .t-zd1-sline.w80{width:80%;} .thumb-zd1 .t-zd1-sline.w60{width:60%;} .thumb-zd1 .t-zd1-sline.w70{width:70%;}
.thumb-zd1 .t-zd1-main { flex:1; padding:8px 7px; display:flex; flex-direction:column; gap:3px; }
.thumb-zd1 .t-zd1-sec { height:2px; background:#5c5b5e; width:28%; border-radius:1px; margin:3px 0 2px; }
.thumb-zd1 .t-zd1-line { height:3px; border-radius:1.5px; background:#e5e5e5; margin:2px 0; }
.thumb-zd1 .t-zd1-line.w90{width:90%;} .thumb-zd1 .t-zd1-line.w70{width:70%;} .thumb-zd1 .t-zd1-line.w60{width:60%;}

/* 84. Sage Column 1 */
.thumb-sc1 { background:#fff; height:100%; display:flex; }
.thumb-sc1 .t-sc1-side { width:36%; background:#4a7c59; padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-sc1 .t-sc1-name { height:7px; border-radius:1px; background:rgba(255,255,255,.9); width:80%; }
.thumb-sc1 .t-sc1-role { height:3px; border-radius:1.5px; background:#9dd3aa; width:60%; }
.thumb-sc1 .t-sc1-chip { height:5px; border-radius:9999px; background:rgba(255,255,255,.25); width:70%; margin-top:3px; }
.thumb-sc1 .t-sc1-main { flex:1; padding:8px 7px; display:flex; flex-direction:column; gap:3px; }
.thumb-sc1 .t-sc1-sec { height:2px; background:#316342; width:28%; border-radius:1px; margin:3px 0 2px; }
.thumb-sc1 .t-sc1-line { height:3px; border-radius:1.5px; background:#e5e5e5; margin:2px 0; }
.thumb-sc1 .t-sc1-line.w90{width:90%;} .thumb-sc1 .t-sc1-line.w70{width:70%;} .thumb-sc1 .t-sc1-line.w65{width:65%;}

/* 85. Sage Column 2 */
.thumb-sc2 { background:#faf9f6; height:100%; display:flex; }
.thumb-sc2 .t-sc2-side { width:36%; background:#4a7c59; padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-sc2 .t-sc2-name { height:7px; border-radius:2px; background:rgba(255,255,255,.9); width:80%; }
.thumb-sc2 .t-sc2-role { height:3px; border-radius:9999px; background:#9dd3aa; width:60%; }
.thumb-sc2 .t-sc2-chip { height:5px; border-radius:9999px; background:rgba(255,255,255,.2); width:70%; margin-top:3px; }
.thumb-sc2 .t-sc2-main { flex:1; padding:8px 7px; display:flex; flex-direction:column; gap:3px; }
.thumb-sc2 .t-sc2-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:2px; }
.thumb-sc2 .t-sc2-pos { height:5px; border-radius:1px; background:#1a1c1a; width:50%; }
.thumb-sc2 .t-sc2-badge { height:5px; border-radius:9999px; background:#e9e8e5; width:22%; }
.thumb-sc2 .t-sc2-co { height:3px; border-radius:1.5px; background:#4a7c59; width:40%; margin-bottom:3px; }
.thumb-sc2 .t-sc2-line { height:3px; border-radius:1.5px; background:#e5e5e5; margin:2px 0; }
.thumb-sc2 .t-sc2-line.w90{width:90%;} .thumb-sc2 .t-sc2-line.w70{width:70%;}

/* 86. Frost Line 1 */
.thumb-fl1 { background:#fff; height:100%; display:flex; }
.thumb-fl1 .t-fl1-side { width:36%; background:#e8f6ff; padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-fl1 .t-fl1-name { height:7px; border-radius:1px; background:#001d31; width:80%; }
.thumb-fl1 .t-fl1-role { height:3px; border-radius:1.5px; background:#006194; width:60%; }
.thumb-fl1 .t-fl1-sline { height:3px; border-radius:1.5px; background:#b0d4e8; margin-top:3px; }
.thumb-fl1 .t-fl1-sline.w80{width:80%;} .thumb-fl1 .t-fl1-sline.w60{width:60%;}
.thumb-fl1 .t-fl1-main { flex:1; padding:8px 7px; display:flex; flex-direction:column; gap:5px; }
.thumb-fl1 .t-fl1-row { display:flex; align-items:flex-start; gap:4px; }
.thumb-fl1 .t-fl1-bar { width:3px; height:100%; min-height:18px; background:#006194; border-radius:9999px; flex-shrink:0; }
.thumb-fl1 .t-fl1-lines { display:flex; flex-direction:column; gap:2px; flex:1; }
.thumb-fl1 .t-fl1-line { height:3px; border-radius:1.5px; background:#e2e8f0; }
.thumb-fl1 .t-fl1-line.w90{width:90%;} .thumb-fl1 .t-fl1-line.w70{width:70%;} .thumb-fl1 .t-fl1-line.w60{width:60%;}

/* 88. Copper Edge 1 */
.thumb-ce1 { background:#fff; height:100%; display:flex; }
.thumb-ce1 .t-ce1-side { width:36%; background:#f3f4f5; border-left:3px solid #903f00; padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-ce1 .t-ce1-name { height:7px; border-radius:1px; background:#231914; width:80%; }
.thumb-ce1 .t-ce1-role { height:3px; border-radius:1.5px; background:#903f00; width:60%; }
.thumb-ce1 .t-ce1-chip { height:5px; border-radius:2px; background:#ffdbca; width:70%; margin-top:3px; }
.thumb-ce1 .t-ce1-main { flex:1; padding:8px 7px; display:flex; flex-direction:column; gap:3px; }
.thumb-ce1 .t-ce1-sec { height:3px; background:linear-gradient(90deg,#903f00,transparent); width:40%; border-radius:1px; margin:3px 0 2px; }
.thumb-ce1 .t-ce1-line { height:3px; border-radius:1.5px; background:#e5e5e5; margin:2px 0; }
.thumb-ce1 .t-ce1-line.w90{width:90%;} .thumb-ce1 .t-ce1-line.w70{width:70%;} .thumb-ce1 .t-ce1-line.w55{width:55%;}

/* 89. Copper Edge 2 */
.thumb-ce2 { background:#feeae1; height:100%; display:flex; }
.thumb-ce2 .t-ce2-side { width:36%; background:#fff8f6; border-left:3px solid #b45309; padding:8px 6px; display:flex; flex-direction:column; gap:4px; }
.thumb-ce2 .t-ce2-name { height:7px; border-radius:1px; background:#903f00; width:80%; }
.thumb-ce2 .t-ce2-role { height:3px; border-radius:1.5px; background:#b45309; width:60%; }
.thumb-ce2 .t-ce2-chip { height:5px; border-radius:9999px; background:#feeae1; width:70%; margin-top:3px; }
.thumb-ce2 .t-ce2-main { flex:1; background:#f9fafb; padding:8px 7px; display:flex; flex-direction:column; gap:3px; }
.thumb-ce2 .t-ce2-sec { height:5px; border-radius:1px; background:#903f00; width:28%; margin:3px 0 2px; }
.thumb-ce2 .t-ce2-line { height:3px; border-radius:1.5px; background:#e5e5e5; margin:2px 0; }
.thumb-ce2 .t-ce2-line.w90{width:90%;} .thumb-ce2 .t-ce2-line.w70{width:70%;} .thumb-ce2 .t-ce2-line.w60{width:60%;}

