.cmv{--cmv-accent:#7043a5;box-sizing:border-box;max-width:520px;margin:24px auto;padding:30px;border:1px solid #e9e1f2;border-radius:20px;background:#fff;color:#30263b;box-shadow:0 12px 40px #3c235310;font-family:inherit;line-height:1.6;text-align:center}
.cmv *{box-sizing:border-box}.cmv .cmv-title{font-size:clamp(24px,5vw,32px);line-height:1.2;color:#30263b;margin:0 0 12px;padding:0}.cmv p{margin:0 0 18px;padding:0}.cmv-fields{display:grid;grid-template-columns:1fr 1.6fr 1.2fr;gap:10px;text-align:left}.cmv label{font-size:14px;font-weight:600}.cmv select{display:block;width:100%;min-height:48px;margin-top:6px;padding:8px;border:1px solid #cfc3dc;border-radius:8px;background:#fff;color:#30263b;font:inherit;font-size:16px}.cmv-calendar{margin:20px 0;padding:16px;background:#faf7fd;border-radius:12px}.cmv .cmv-calendar-title{font-size:14px;margin:0 0 12px}.cmv-weekdays,.cmv-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cmv-weekdays{font-size:12px;color:#71647e;margin-bottom:8px}.cmv .cmv-days button{min-height:38px;border:0;border-radius:8px;background:transparent;color:#30263b;font:inherit;cursor:pointer;padding:4px}.cmv .cmv-days button:hover{background:#e9def5}.cmv .cmv-days button[aria-pressed=true]{background:var(--cmv-accent);color:#fff}.cmv .cmv-days button:disabled{opacity:.3;cursor:default}.cmv .cmv-submit{display:block;width:100%;min-height:50px;padding:12px 16px;background:var(--cmv-accent);border:0;border-radius:10px;color:#fff;font:inherit;font-weight:700;cursor:pointer;line-height:1.4}.cmv .cmv-submit:hover{background:#583183}.cmv :is(button,select):focus-visible{outline:3px solid #ac7fd6;outline-offset:3px}.cmv .cmv-result{margin-top:24px;padding:22px 16px;border-radius:12px;background:#f5eefa}.cmv .cmv-result p:last-child{margin-bottom:0}.cmv .cmv-number{display:block;font-size:64px;line-height:1.1;color:var(--cmv-accent);margin-bottom:16px}.cmv .cmv-note{font-size:12px;color:#756a7c;margin:18px 0 0}.cmv .cmv-error{color:#a12535;margin:12px 0 0}.cmv [hidden]{display:none!important}@media(max-width:400px){.cmv{padding:20px 14px}.cmv-fields{gap:6px}.cmv select{padding:6px}}
.cmv-experience{container-type:inline-size;max-width:1080px;margin:24px auto;font-family:inherit;color:#30263b;line-height:1.6}
.cmv-experience .cmv-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}
.cmv-experience .cmv{width:100%;margin:0 auto;min-width:0}
.cmv-map{--cmv-map-purple:#321238;--cmv-map-success:#73ad87;box-sizing:border-box;width:100%;max-width:520px;min-width:0;margin:0 auto;padding:24px 10px;text-align:center}
.cmv-map *{box-sizing:border-box}.cmv-map [hidden]{display:none!important}
.cmv-map p,.cmv-map h2,.cmv-map h3{padding:0;margin:0}.cmv-map .cmv-map-eyebrow{font-size:11px;letter-spacing:.15em;font-weight:700;color:#806620;margin-bottom:10px}
.cmv-map .cmv-map-title{font-size:clamp(22px,4vw,28px);line-height:1.3;color:var(--cmv-map-purple);margin-bottom:12px}
.cmv-map .cmv-map-subtitle{font-size:14px;line-height:1.6;margin-bottom:22px;color:#6a5e6d}
.cmv-map-first{padding:18px;border:1px solid #e3dde6;background:#f7f4f8;border-radius:16px;text-align:left;transition:border-color .5s,background-color .5s,box-shadow .5s}
.cmv-map-first-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.cmv-map .cmv-map-first-heading h3{font-size:12px;line-height:1.5;font-weight:700;color:var(--cmv-map-purple)}
.cmv-map-state{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:20px;background:#eee8f1;color:#625467;font-size:10px;letter-spacing:.04em}
.cmv-map-first.cmv-map-discovered{border-color:var(--cmv-map-success);background:#f5fcf6;box-shadow:0 5px 20px #28603d12}
.cmv-map-discovered .cmv-map-state{background:#dff2e4;color:#24633a}.cmv-map-discovery{text-align:center;margin-top:18px}
.cmv-map-number{display:block;font-size:60px;line-height:1.1;color:var(--cmv-map-purple);font-weight:700;margin-bottom:12px}
.cmv-map .cmv-map-number-title{font-size:13px;letter-spacing:.06em;font-weight:700;color:var(--cmv-map-purple);margin-bottom:10px}
.cmv-map .cmv-map-meaning{font-size:14px;line-height:1.7;color:#625467}
.cmv-map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.cmv-map-locked{min-width:0;padding:14px 12px;background:#f4f1f5;border:1px solid #e5dfe8;border-radius:12px;text-align:left;color:#756b78}
.cmv-map-locked-top{display:flex;justify-content:space-between;gap:8px;font-size:11px;margin-bottom:8px;color:#827585}
.cmv-map .cmv-map-locked h3{font-size:11px;line-height:1.5;font-weight:600;color:#625768;overflow-wrap:anywhere;margin-bottom:10px}
.cmv-map .cmv-map-locked p{font-size:9px;letter-spacing:.05em;color:#776b7a}
.cmv-map-transition{margin-top:22px}.cmv-map .cmv-map-transition>p{font-size:14px;line-height:1.7;margin-bottom:16px;color:#625467}


.cmv-map-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cmv-map-unlock{animation:cmv-map-unlock .55s ease-out}.cmv-map-unlock .cmv-map-discovery{animation:cmv-map-reveal .55s ease-out}
@keyframes cmv-map-unlock{from{box-shadow:0 0 0 3px #73ad8755}to{box-shadow:0 5px 20px #28603d12}}
@keyframes cmv-map-reveal{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@container(min-width:900px){.cmv-experience .cmv-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.cmv-map{padding-top:12px}}
@media(prefers-reduced-motion:reduce){.cmv-map-first{transition:none}.cmv-map-unlock,.cmv-map-unlock .cmv-map-discovery{animation:none}}
.cmv .cmv-reading{text-align:left;margin-top:22px;padding-top:20px;border-top:1px solid #dfd2e8;overflow-wrap:anywhere}
.cmv .cmv-reading h3{font-size:21px;line-height:1.35;color:#30263b;margin:0 0 16px;padding:0}
.cmv .cmv-reading p{font-size:15px;line-height:1.8;margin:0 0 16px;padding:0}
.cmv .cmv-reading .cmv-reflection{margin:20px 0;font-size:15px;color:#432857}
.cmv .cmv-ritual{padding:18px 16px;border:1px solid #e2d7ea;border-radius:12px;background:#fffdf9;margin-top:20px}
.cmv .cmv-ritual h4{font-size:16px;line-height:1.5;color:#432857;margin:0 0 12px;padding:0}
.cmv .cmv-ritual ol{list-style:decimal outside;margin:0;padding:0 0 0 22px;line-height:1.8;font-size:15px}
.cmv .cmv-ritual li{padding-left:3px;margin-bottom:10px}.cmv .cmv-ritual li:last-child{margin-bottom:0}
