 :root{
    --black:#050505;
    --black2:#101015;
    --gold:#d99a21;
    --gold2:#f7c85a;
    --gold3:#fff1b8;
    --blue:#0789ef;
    --blue2:#00c2ff;
    --orange:#f08a18;
    --ink:#15120a;
    --muted:#6f6657;
    --line:#eadcc4;
    --soft:#fff8e9;
    --white:#fff;
    --green:#16a34a;
    --purple:#17110a;
    --purple2:#d99a21;
    --purple3:#f7c85a;
}
*{box-sizing:border-box}
body{
    margin:0;
    font-family:'Inter',Arial,sans-serif;
    color:var(--ink);
    background:linear-gradient(135deg,#fff8e9 0%,#ffffff 42%,#eef8ff 100%);
    font-size:15px;
}
a{color:inherit}
.site-shell{width:100%;}
.container{
    max-width:760px;
    margin:34px auto;
    padding:30px;
    background:#fff;
    border:1px solid rgba(217,154,33,.25);
    border-radius:26px;
    box-shadow:0 18px 55px rgba(28,18,6,.10);
}
.form-container h2{
    margin:0 0 10px;
    text-align:center;
    color:var(--purple);
    font-size:28px;
    letter-spacing:.02em;
}
.subtitle{margin:0 auto 22px;max-width:610px;text-align:center;color:var(--muted);line-height:1.6}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-group{margin-bottom:14px}
.form-group label,.choice-block>label{display:block;font-weight:700;color:#251707;margin-bottom:8px;font-size:13px}
.optional{font-weight:500;color:#8b85a6}
input,select{
    width:100%;
    border:1.5px solid #eadcc4;
    border-radius:14px;
    padding:13px 14px;
    font:inherit;
    color:#17123f;
    outline:none;
    background:#fff;
    transition:.2s;
}
select{appearance:auto}
input:focus,select:focus{border-color:var(--purple2);box-shadow:0 0 0 4px rgba(124,58,237,.11)}
input.is-valid,select.is-valid{border-color:#86efac}
input.is-invalid,select.is-invalid{border-color:#fb7185;background:#fff7f7}
.field-error{display:block;min-height:18px;margin-top:5px;color:#e11d48;font-size:12px;font-weight:600}
.hint{display:block;margin-top:6px;color:#8b85a6;font-size:12px}
.choice-block{margin:4px 0 16px}.chips{display:flex;flex-wrap:wrap;gap:9px}.chip input{display:none}.chip span{display:inline-flex;padding:9px 12px;border-radius:999px;background:#fff8e9;border:1px solid #eadcc4;color:#5b3a08;font-weight:650;font-size:13px;cursor:pointer;transition:.2s}.chip input:checked+span{background:linear-gradient(135deg,#d99a21,#f7c85a);color:#fff;border-color:transparent;box-shadow:0 8px 20px rgba(124,58,237,.24)}
button,.btn-download-pdf,.btn-again{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    border:0;border-radius:999px;padding:14px 24px;
    background:linear-gradient(135deg,#d99a21,#0b83e6);
    color:#fff;text-decoration:none;font-weight:800;font-size:15px;
    box-shadow:0 12px 28px rgba(217,154,33,.30);cursor:pointer;
}
button{width:100%;margin-top:8px}button:disabled{opacity:.75;cursor:wait}
.error-message{padding:13px 15px;background:#fff1f2;border:1px solid #fecdd3;color:#be123c;border-radius:14px;margin-bottom:16px;font-weight:700}
.loading-box{margin:18px 0;padding:18px;background:#fff8e9;border:1px solid #eadcc4;border-radius:18px;text-align:center}.loading-spinner{width:34px;height:34px;margin:0 auto 10px;border-radius:50%;border:4px solid #ddd6fe;border-top-color:var(--gold);animation:spin .9s linear infinite}.loading-title{font-weight:800;color:var(--purple)}.loading-text{font-size:13px;color:var(--muted);margin-top:4px}@keyframes spin{to{transform:rotate(360deg)}}
.footer-menu{max-width:1180px;margin:24px auto 34px;text-align:center;color:#7c7899;font-size:13px}.footer-menu a{margin:0 8px;color:#5b21b6;text-decoration:none;font-weight:600}
.success-screen{max-width:920px;margin:26px auto;text-align:center}.success-icon{font-size:56px}.success-title{font-size:28px;font-weight:900;color:#16a34a}.success-subtitle{color:#6b7280;line-height:1.6;margin:8px 0 14px}.success-actions-bottom{text-align:center;margin:22px 0 30px}.btn-again{background:#fff;color:var(--purple);border:1px solid #eadcc4;box-shadow:0 8px 20px rgba(76,29,149,.08)}
.report-wrap{max-width:1180px;margin:0 auto 30px;padding:0 18px}.report-header{display:grid;grid-template-columns:240px 1fr 220px;align-items:center;gap:20px;background:radial-gradient(circle at 15% 0%,#2b1b08 0%,#050505 52%,#0a335a 100%);color:#fff;border-radius:0 0 34px 34px;padding:28px 34px 26px;box-shadow:0 18px 55px rgba(0,0,0,.32)}.brand-block img{width:180px;max-height:88px;object-fit:contain}.report-title{text-align:center}.report-title h1{font-family:'Playfair Display',serif;text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:32px}.report-title p{margin:8px 0;color:#fff1b8}.spark{color:#f5d37b}.report-id{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:14px 16px}.report-id div+div{margin-top:10px}.report-id small{display:block;color:#f7c85a;font-size:11px;font-weight:700}.report-id strong{font-size:13px}
.dashboard-grid{display:grid;grid-template-columns:250px 1fr;gap:18px;margin-top:20px}.card{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:22px;box-shadow:0 15px 45px rgba(33,20,4,.08)}.profile-panel{padding:22px}.avatar-lotus{width:78px;height:78px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#fff1b8,#eef8ff);color:var(--purple2);font-size:32px}.profile-panel h2{text-align:center;margin:0 0 15px;color:#342105}.profile-line{font-size:13px;color:#36325c;margin:9px 0;word-break:break-word}.profile-panel blockquote{margin:20px 0;padding:22px 18px;border-radius:18px;background:linear-gradient(135deg,#080808,#d99a21);color:#fff;text-align:center;line-height:1.65;font-weight:650}.category-box{padding:16px;border-radius:18px;background:#fffaf0;text-align:center}.category-box small{display:block;color:var(--purple);font-weight:800;text-transform:uppercase}.category-box strong{display:block;color:#0b83e6;font-size:20px;margin:8px 0}.category-box p{margin:0;color:#5f5a7c;font-size:13px;line-height:1.5}.score-bars{margin-top:18px}.score-row{margin-bottom:14px}.score-row span{font-size:12px}.score-row b{float:right;font-size:12px}.score-row i{display:block;clear:both;height:6px;background:#eadcc4;border-radius:20px;overflow:hidden;margin-top:7px}.score-row em{display:block;height:100%;background:linear-gradient(90deg,#d99a21,#00aaf5);border-radius:20px}
.main-panel{min-width:0}.hero-card{display:grid;grid-template-columns:1fr 220px;gap:22px;padding:28px}.eyebrow{display:block;color:#342105;font-size:13px;font-weight:900;text-transform:uppercase}.hero-card h2{font-family:'Playfair Display',serif;font-size:44px;line-height:1.05;margin:10px 0;color:#d99a21}.hero-card p{line-height:1.75;color:#312e63;margin:0}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.tags span{padding:9px 13px;border-radius:12px;background:#fff8e9;color:#0b83e6;font-weight:800;font-size:13px}.gauge{--score:80;align-self:center;justify-self:center;width:178px;height:178px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#d99a21 0%,#f7c85a calc(var(--score)*.70%),#0789ef calc(var(--score)*1%),#eadcc4 0);position:relative}.gauge:before{content:'';position:absolute;inset:16px;background:#fff;border-radius:50%}.gauge-inner{position:relative;text-align:center}.gauge-inner small{display:block;text-transform:uppercase;font-weight:900;font-size:11px}.gauge-inner strong{font-size:58px;line-height:1;color:#1d1607}.gauge-inner span{display:block;color:#6b6b8f}.gauge p{position:absolute;bottom:-35px;margin:0;color:#0b83e6;font-weight:900}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.chart-card,.energy-card,.list-card{padding:24px}.card h3{margin:0 0 18px;color:#342105;text-transform:uppercase;font-size:15px;letter-spacing:.02em}.chart-card canvas{width:100%!important;height:250px!important}.legend-line{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px;background:#fffaf0;border:1px solid #ede9fe;border-radius:14px;padding:12px;font-size:11px;color:#5c5345}.energy-boxes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.energy-boxes>div{border-radius:18px;padding:20px 14px;text-align:center;min-height:220px}.energy-dominant{background:linear-gradient(135deg,#effdf4,#fff)}.energy-watch{background:linear-gradient(135deg,#fff7ed,#fff)}.energy-icon{width:62px;height:62px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.08);font-size:26px}.energy-boxes small{display:block;font-weight:900;color:#15803d}.energy-watch small{color:#ea580c}.energy-boxes strong{display:block;margin:12px 0 8px;font-size:17px}.energy-boxes p{font-size:12.5px;line-height:1.55;color:#4b486a;margin:0}.soft-note{margin-top:12px;border-radius:14px;background:#fff8e9;color:#0b83e6;padding:13px 15px;font-size:12.5px;line-height:1.55}.insight-list{list-style:none;margin:0;padding:0}.insight-list li{display:flex;gap:12px;margin:0 0 14px;align-items:flex-start}.num{flex:0 0 26px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900;font-size:12px}.num.purple{background:#d99a21}.num.orange{background:#0789ef}.insight-list strong{display:block;color:#251707;font-size:13px}.insight-list p{margin:3px 0 0;color:#585274;font-size:12.5px;line-height:1.45}.recommendation-card{padding:26px;margin-top:18px}.recommendation-card h3{text-align:center}.recommend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.recommend-grid>div{border-left:1px solid #ede9fe;padding-left:18px}.recommend-grid>div:first-child{border-left:0}.recommend-grid h4{margin:0 0 12px;color:#0b83e6}.mini-bullets{margin:0;padding-left:18px;color:#251707;line-height:1.7;font-size:13px}.report-footer-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:20px 24px}.report-footer-card p{margin:0;color:#6b5fa4;line-height:1.6;font-size:13px}.cta-text{text-align:right;color:#2d275c}
@media(max-width:980px){.report-header{grid-template-columns:1fr;text-align:center}.brand-block img{margin:auto}.dashboard-grid,.hero-card,.two-col,.recommend-grid{grid-template-columns:1fr}.gauge{margin:0 auto 34px}.report-footer-card{display:block;text-align:center}.cta-text{text-align:center;margin-top:12px}.form-row{grid-template-columns:1fr}}
@media(max-width:560px){.container{margin:18px 12px;padding:22px}.report-wrap{padding:0 10px}.report-header{border-radius:0 0 24px 24px;padding:24px 18px}.report-title h1{font-size:25px}.hero-card h2{font-size:36px}.recommend-grid>div{border-left:0;border-top:1px solid #ede9fe;padding:14px 0 0}.success-title{font-size:23px}.product-actions{flex-direction:column}.product-actions a{width:100%}}
@media print{.success-screen,.success-actions-bottom,.footer-menu,.btn-download-pdf{display:none!important}.report-wrap{max-width:none}.card{box-shadow:none}.report-header{box-shadow:none}}


/* === Revisi branding Levitache: gold, blue, black === */
.container.form-container{max-width:820px;background:linear-gradient(180deg,#ffffff 0%,#fffaf0 100%);border-color:rgba(217,154,33,.35)}
.container.form-container:before{content:'';display:block;width:180px;height:70px;margin:0 auto 18px;background:url('../images/logo_levitache.png') center/contain no-repeat;filter:drop-shadow(0 8px 16px rgba(0,0,0,.18));}
.form-container h2{color:#201305;letter-spacing:.08em}.subtitle strong{color:#0b83e6}.chip span:hover{border-color:#d99a21;box-shadow:0 8px 18px rgba(217,154,33,.14)}
input:focus,select:focus{border-color:#d99a21;box-shadow:0 0 0 4px rgba(217,154,33,.14)}
input.is-valid,select.is-valid{border-color:#0789ef}button:hover,.btn-download-pdf:hover{transform:translateY(-1px);filter:saturate(1.04)}
.report-wrap{max-width:1220px}.report-header{border-top:6px solid #d99a21}.brand-block img{width:210px;max-height:105px;object-fit:contain}.report-title h1{color:#fff6d2;text-shadow:0 2px 18px rgba(217,154,33,.24)}.spark{color:#00bfff}.card{background:rgba(255,255,255,.96)}.avatar-lotus{color:#d99a21}.category-box strong,.hero-card h2{background:linear-gradient(90deg,#d99a21,#0b83e6);-webkit-background-clip:text;background-clip:text;color:transparent}.tags span{background:linear-gradient(135deg,#fff8e9,#eef8ff);border:1px solid #eadcc4;color:#76500d}.gauge-inner small{color:#6b4a0f}.energy-dominant{background:linear-gradient(135deg,#eef8ff,#fff)}.energy-watch{background:linear-gradient(135deg,#fff7e5,#fff)}.energy-dominant .energy-icon{color:#0789ef}.energy-watch .energy-icon{color:#d99a21}.soft-note{border:1px solid #eadcc4;background:linear-gradient(135deg,#fff8e9,#eef8ff);color:#69470b}.recommend-grid h4:nth-child(n){color:#0b83e6}.report-footer-card{background:linear-gradient(135deg,#fffaf0,#ffffff)}.footer-menu a{color:#9a6a12}.btn-download-pdf{background:linear-gradient(135deg,#d99a21,#0b83e6)}
@media(max-width:700px){.container.form-container:before{width:150px;height:58px}.brand-block img{width:180px}}

/* Revisi disclaimer hasil pembacaan */
.disclaimer-card{align-items:flex-start}
.disclaimer-text{margin:0;color:#15120a;line-height:1.65;font-size:12.5px;max-width:880px}
.disclaimer-text strong{color:#15120a;font-weight:900}
.disclaimer-text .disclaimer-title{color:#342105;font-weight:900}
.cta-text{color:#2d275c}
.cta-text .cta-strong{color:#2d275c;font-weight:900}

.form-container.is-loading form{opacity:.65;pointer-events:none}
.loading-box{display:none}


/* Levitache Platform v3 */
.platform-hero,.product-landing{max-width:1120px;margin:40px auto;padding:36px 24px}.platform-hero{text-align:center}.platform-logo{width:170px;max-height:90px;object-fit:contain}.eyebrow,.product-kicker{font-size:.78rem;font-weight:800;letter-spacing:.13em;color:#b27720}.platform-hero h1,.product-landing h1{font-family:'Playfair Display',serif;color:#102f50;font-size:clamp(2rem,5vw,3.5rem);line-height:1.08}.platform-hero p{max-width:720px;margin:auto;color:#665744;line-height:1.7}.product-grid{max-width:1120px;margin:0 auto 60px;padding:0 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.product-card{background:#fff;border:1px solid #eadcc4;border-radius:24px;padding:28px;box-shadow:0 18px 45px rgba(43,30,15,.08);display:flex;flex-direction:column}.product-icon{font-size:2.3rem}.product-card h2{color:#102f50;margin:.5rem 0}.product-card p{color:#665744;line-height:1.65}.product-card ul{list-style:none;padding:0;line-height:1.9;flex:1}.product-footer{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:18px}
.product-price{font-size:1.35rem;font-weight:800;color:#b07114;text-align:center}
.product-actions{display:flex;gap:10px}
.product-actions a{flex:1;text-align:center;padding:13px 10px;border-radius:999px;font-weight:800;font-size:.88rem;text-decoration:none;transition:.2s}
.btn-primary{background:#16a34a;color:#fff!important;border:2px solid #16a34a}
.btn-primary:hover{background:#15803d;border-color:#15803d;transform:translateY(-1px)}
.btn-secondary{background:#fff;color:#dc2626!important;border:2px solid #dc2626}
.btn-secondary:hover{background:#dc2626;color:#fff!important;transform:translateY(-1px)}
.product-button,.primary-cta{display:inline-block;background:#081f3b;color:white!important;text-decoration:none;padding:13px 20px;border-radius:999px;font-weight:700}.product-landing{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center}.landing-copy p{font-size:1.08rem;line-height:1.75;color:#665744}.landing-panel{background:#fff;border:1px solid #eadcc4;border-radius:24px;padding:28px;box-shadow:0 18px 45px rgba(43,30,15,.08)}.landing-panel ul{list-style:none;padding:0;line-height:2}.price-line{display:flex;gap:14px;align-items:center;margin:24px 0}.price-line strong{font-size:1.5rem;color:#b07114}.notice{font-size:.85rem;color:#765f43;background:#fff6e4;padding:12px;border-radius:12px}.wide-form{max-width:980px}.form-section-title{margin-top:34px;padding-bottom:10px;border-bottom:2px solid #eadcc4;color:#102f50}.scale-help{text-align:center;background:#fff6e4;padding:12px;border-radius:12px}.likert-row{display:grid;grid-template-columns:1fr 280px;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid #eee0ca}.likert-question{line-height:1.55}.likert-options{display:flex;justify-content:space-between}.likert-options label input{position:absolute;opacity:0}.likert-options span{display:grid;place-items:center;width:40px;height:40px;border:1px solid #d8c7aa;border-radius:50%;cursor:pointer;background:#fff}.likert-options input:checked+span{background:#102f50;color:#fff;border-color:#102f50}.form-group textarea{width:100%;border:1px solid #d9c9ae;border-radius:12px;padding:12px;font:inherit;box-sizing:border-box}.relationship-report{max-width:980px;margin:24px auto 60px;padding:0 18px}.relationship-report section,.report-score-card{background:#fff;border:1px solid #eadcc4;border-radius:20px;padding:24px;margin:18px 0}.report-score-card{display:flex;align-items:center;justify-content:space-between;background:#102f50;color:#fff}.report-score-card span{display:block;color:#f7c85a}.report-score-card strong{font-size:2.4rem}.dimension-item{margin:14px 0}.dimension-item>div:first-child{display:flex;justify-content:space-between}.dimension-track{height:10px;background:#efe7da;border-radius:99px;overflow:hidden;margin-top:6px}.dimension-track i{display:block;height:100%;background:#d99a21;border-radius:99px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.factor-highlight{font-size:1.3rem;font-weight:700;color:#b07114}.report-disclaimer{font-size:.82rem;color:#6d6255;line-height:1.6}@media(max-width:760px){.product-landing{grid-template-columns:1fr}.likert-row{grid-template-columns:1fr}.likert-options{max-width:320px}.two-columns{grid-template-columns:1fr}.report-score-card{display:block}.product-footer{align-items:stretch;flex-direction:column}}

/* Relationship form validation consistency */
.form-group textarea.is-invalid{border-color:#fb7185;background:#fff7f7;box-shadow:0 0 0 3px rgba(244,63,94,.08)}
.question-group.is-invalid-group{border:1px solid #fecdd3;background:#fffafa;border-radius:16px;padding:0 16px 14px;margin-top:12px}
.likert-row.is-unanswered{background:#fff1f2;border-radius:12px;padding-left:12px;padding-right:12px;border-bottom-color:#fecdd3}
.likert-row.is-unanswered .likert-question{color:#be123c;font-weight:700}
.group-error{min-height:0;margin-top:12px}
.likert-options input:focus-visible+span{outline:3px solid rgba(16,47,80,.22);outline-offset:2px}

/* Relationship Result v2 */
.relationship-report-v2 section{overflow:visible}
.relationship-report-v2 .dimension-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px}
.relationship-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.insight-list{display:flex;flex-direction:column;gap:14px}
.insight-list article{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #eadcc4}
.insight-list article:last-child{border-bottom:0}
.insight-list article>span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;color:#fff;font-weight:700;border-radius:4px}
.strength-list article>span{background:#d99a21}.improve-list article>span{background:#0789ef}
.insight-list h4{margin:0 0 4px;color:#0b335a;font-size:1rem}.insight-list p{margin:0;font-size:.92rem;line-height:1.5}
.factor-section{background:#fff3d8}.factor-highlight{font-size:1.35rem;font-weight:700;color:#b07114;line-height:1.35}
.clean-bullet-list,.clean-number-list{margin:0;padding-left:22px}.clean-bullet-list li,.clean-number-list li{margin:0 0 10px;line-height:1.5}
.monthly-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.week-card{border:1px solid #eadcc4;background:#fff;padding:20px;border-radius:8px}
.week-card .week-label{display:inline-block;background:#0b335a;color:#fff;font-size:.78rem;font-weight:700;padding:6px 10px;border-radius:4px;margin-bottom:10px}
.week-card h4{margin:0 0 12px;color:#b07114;font-size:1.05rem}.week-card ul{margin:0;padding-left:20px}.week-card li{margin-bottom:8px;line-height:1.45}
.closing-section{background:#fffaf0;border-left:4px solid #d99a21}
@media(max-width:760px){.relationship-report-v2 .dimension-grid,.relationship-two-column,.monthly-plan-grid{grid-template-columns:1fr}}


/* Patch v3: tombol JPG + validasi real-time */
.btn-save-jpg{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:6px 4px;border:0;border-radius:999px;padding:13px 22px;font:inherit;font-weight:800;color:#fff;background:linear-gradient(135deg,#d99a21,#0b83e6);box-shadow:0 10px 24px rgba(11,51,90,.18);cursor:pointer;text-decoration:none;transition:.2s ease}
.btn-save-jpg:hover{transform:translateY(-1px);filter:saturate(1.04)}
.btn-save-jpg:disabled,.btn-save-jpg.is-exporting{opacity:.72;cursor:wait;transform:none}
.form-group input.is-invalid,.form-group select.is-invalid,.form-group textarea.is-invalid{border-color:#e11d48!important;background:#fff7f7!important;box-shadow:0 0 0 3px rgba(225,29,72,.08)}
.form-group input.is-valid,.form-group select.is-valid,.form-group textarea.is-valid{border-color:#0789ef!important}
.field-error:empty{min-height:0;margin-top:0}
@media print{.btn-save-jpg{display:none!important}}
@media(max-width:560px){.success-screen .btn-download-pdf,.success-screen .btn-save-jpg{display:flex;width:calc(100% - 32px);margin:9px auto;box-sizing:border-box}}


/* Harmony result: identity of participant and partner */
.harmony-couple-heading{margin:8px auto 2px;font-size:clamp(1.15rem,2.4vw,1.55rem);font-weight:800;color:#102f50;line-height:1.3}
.harmony-couple-meta{margin:0 auto 8px;font-size:.92rem;font-weight:600;color:#9a6818}
.harmony-couple-card{background:linear-gradient(135deg,#fff8e9,#eef8ff);border:1px solid #eadcc4;border-radius:20px;padding:20px 24px;margin:18px 0;text-align:center}
.harmony-couple-card span{display:block;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#a96f17;margin-bottom:5px}
.harmony-couple-card strong{display:block;font-size:clamp(1.25rem,2.5vw,1.7rem);line-height:1.3;color:#102f50}
.harmony-couple-card small{display:block;margin-top:6px;font-size:.9rem;color:#665744}
@media(max-width:760px){.harmony-couple-card{padding:17px 16px}.harmony-couple-heading{padding:0 12px}}

/* Patch v7: pengunci ukuran tombol hasil untuk semua produk.
   Harus berada paling akhir agar tidak dikalahkan button{width:100%}. */
.success-screen .btn-download-pdf,
.success-screen button.btn-save-jpg,
.compact-success .btn-download-pdf,
.compact-success button.btn-save-jpg {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 8px 5px !important;
    padding: 13px 24px !important;
    box-sizing: border-box !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

/* Hilangkan margin global button yang membuat posisi berbeda dari link PDF. */
.success-screen button.btn-save-jpg,
.compact-success button.btn-save-jpg {
    margin-top: 8px !important;
}

/* Pada HP tombol boleh menjadi lebar penuh agar teks tidak terpotong. */
@media (max-width: 560px) {
    .success-screen .btn-download-pdf,
    .success-screen button.btn-save-jpg,
    .compact-success .btn-download-pdf,
    .compact-success button.btn-save-jpg {
        display: flex !important;
        width: calc(100% - 32px) !important;
        max-width: 420px !important;
        margin: 9px auto !important;
        white-space: normal !important;
    }
}


/* Patch v9: identitas peserta pada hasil Relationship Readiness */
.readiness-profile-card {
    background: linear-gradient(135deg, #fff8e9, #eef8ff);
    border: 1px solid #eadcc4;
    border-radius: 20px;
    padding: 20px 24px;
    margin: 18px 0;
    text-align: center;
}
.readiness-profile-card > span {
    display: block;
    margin-bottom: 5px;
    color: #a96f17;
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.readiness-profile-card > strong {
    display: block;
    color: #102f50;
    font-size: clamp(1.3rem, 2.5vw, 1.75rem);
    line-height: 1.3;
}
.readiness-profile-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
    text-align: left;
}
.readiness-profile-item {
    min-width: 0;
    padding: 11px 13px;
    background: rgba(255,255,255,.76);
    border: 1px solid rgba(218,193,151,.58);
    border-radius: 12px;
}
.readiness-profile-item small {
    display: block;
    margin-bottom: 3px;
    color: #806b4e;
    font-size: .75rem;
    font-weight: 700;
}
.readiness-profile-item b {
    display: block;
    overflow-wrap: anywhere;
    color: #102f50;
    font-size: .94rem;
    line-height: 1.35;
}
@media (max-width: 760px) {
    .readiness-profile-card { padding: 17px 16px; }
    .readiness-profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 460px) {
    .readiness-profile-grid { grid-template-columns: 1fr; }
}

/* --- AI Narrative Sections --- */
.ai-insight-card,
.ai-advice-card,
.ai-reflection-card {
    border-left: 4px solid #d99a21;
    padding: 28px 28px 24px;
    margin-bottom: 20px;
}
.ai-insight-card h3,
.ai-advice-card h3,
.ai-reflection-card h3 {
    font-size: 1.1rem;
    color: #0b335a;
    margin: 0 0 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eadcc4;
    font-weight: 700;
}
.ai-paragraph {
    font-size: .94rem;
    line-height: 1.78;
    color: #2e2b3a;
    text-align: justify;
}
.ai-advice-list {
    margin: 4px 0 0;
    padding: 0;
    list-style: none;
    counter-reset: ai-advice;
}
.ai-advice-list li {
    counter-increment: ai-advice;
    font-size: .94rem;
    line-height: 1.72;
    color: #2e2b3a;
    padding: 12px 0 12px 30px;
    border-bottom: 1px solid #f0ebe0;
    position: relative;
}
.ai-advice-list li:last-child {
    border-bottom: none;
    padding-bottom: 4px;
}
.ai-advice-list li::before {
    content: counter(ai-advice) ".";
    position: absolute;
    left: 2px;
    top: 12px;
    color: #d99a21;
    font-weight: 700;
    font-size: .94rem;
}
