/* ==========================
   LOVE LIFE TEST
========================== */

#llt-app{
    max-width:900px;
    margin:40px auto;
    }

.love-test-hero{
    background:#fff5f7;
    padding:60px 10px;
    border-radius:18px;
}

.love-test-box{
    max-width:700px;
    margin:auto;
    background:#fff;
    padding:40px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.love-icon{
    font-size:60px;
    margin-bottom:15px;
}

.love-test-box h2{
    margin-bottom:15px;
    font-size:34px;
}

.subtitle{
    color:#666;
    font-size:18px;
    line-height:1.7;
}

.love-features{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
    margin:30px 0;
}

.feature{
    background:#fff5f8;
    border:1px solid #ffd7e4;
    padding:15px;
    border-radius:12px;
    font-weight:600;
}

.start-btn{
    background:#ff2d6f;
    color:#fff;
    border:none;
    padding:16px 35px;
    border-radius:40px;
    cursor:pointer;
    font-size:18px;
    font-weight:700;
}

.start-btn:hover{
    background:#e40058;
}

.note{
    margin-top:20px;
    color:#888;
}

/* Stage Cards */

.llt-stage{

    background:#fff;

    border:2px solid #eee;

    border-radius:14px;

    padding:18px;

    margin:15px 0;

    cursor:pointer;

    font-size:18px;

    font-weight:600;

    transition:.25s;

}

.llt-stage:hover{

    border-color:#ff2d6f;

    background:#fff5f8;

}

.llt-stage.active{

    background:#ff2d6f;

    color:#fff;

    border-color:#ff2d6f;

}

#llt-continue-btn{

    margin-top:25px;

}

/* Mobile */

@media(max-width:768px){

.love-test-box{

padding:25px;

}

.love-test-box h2{

font-size:28px;

}

.love-features{

grid-template-columns:1fr;

}

.start-btn{

width:100%;

}

}

.llt-option{
    background:#fff5f8;
    border:2px solid #ffd7e4;
    padding:15px;
    margin:12px 0;
    border-radius:12px;
    cursor:pointer;
    font-weight:600;
}

.llt-option.active{
    background:#ff2d6f;
    color:#fff;
    border-color:#ff2d6f;
}




/* ==========================
   Question Screen Arena GPT
========================== */

#llt-progress{

    font-size:16px;
    font-weight:700;
    color:#ff2d6f;
    margin-bottom:20px;

}

#llt-question-title{

    font-size:30px;
    line-height:1.5;
    margin-bottom:30px;

}

#llt-options{

    margin-top:20px;

}

.llt-option{

    transition:.25s;
    user-select:none;

}

.llt-option:hover{

    transform:translateY(-2px);
    box-shadow:0 8px 18px rgba(0,0,0,.08);

}


/* =====================================================
   Neutral Blue Option Icon
   Same icon for every answer
===================================================== */

.llt-option {
    position: relative !important;
    padding-left: 48px !important;
    text-align: left !important;
}

.llt-option::before {
    content: "\2192"; /* Unicode Right Arrow */

    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);

    width: 22px;
    height: 22px;

    border-radius: 50%;

    background: #0079ff;
    color: #ffffff;

    font-size: 14px;
    font-weight: 800;
    line-height: 22px;
    text-align: center;

    transition: all .25s ease;
}

/* Selected Active Option Icon */
.llt-option.active::before {
    background: #fff;
    color: #ff2d6f;
}







/* ==========================
   Navigation
========================== */

.llt-navigation{

    display:flex;
    justify-content:space-between;
    gap:15px;
    margin-top:30px;

}

.llt-navigation .start-btn{

    flex:1;

}

#llt-prev-btn{

    background:#777;

}

#llt-prev-btn:hover{

    background:#555;

}

#llt-prev-btn:disabled{

    opacity:.5;
    cursor:not-allowed;

}

/* ==========================
   Result
========================== */

.llt-score{

    font-size:30px;
    margin:25px 0;
    color:#ff2d6f;
    font-weight:700;

}

#llt-love-type{

    font-size:24px;
    font-weight:700;
    margin-bottom:25px;

}

.llt-tips{

    text-align:left;
    max-width:500px;
    margin:20px auto 30px;
    padding-left:20px;

}

.llt-tips li{

    margin-bottom:12px;
    line-height:1.7;

}

/* ==========================
   Button Animation
========================== */

.start-btn{

    transition:.25s;

}

.start-btn:hover{

    transform:translateY(-2px);

}

/* ==========================
   Mobile
========================== */

@media(max-width:768px){

    .llt-navigation{

        flex-direction:column;

    }

    #llt-question-title{

        font-size:24px;

    }

    .llt-score{

        font-size:24px;

    }

    #llt-love-type{

        font-size:20px;

    }

}


/* ==========================
   Premium Result Card
========================== */

.llt-result-card{

    padding:50px 35px;

}

.llt-result-header{

    margin-bottom:30px;

}

.llt-result-header h2{

    font-size:34px;
    margin-bottom:10px;
    color:#222;

}

.llt-result-header p{

    color:#777;
    font-size:18px;

}

/* ==========================
   Animated Score Circle
========================== */

.llt-score-circle{

    --progress:0deg;

    width:190px;
    height:190px;

    margin:35px auto;

    border-radius:50%;

    background:conic-gradient(
        #ff2d6f var(--progress),
        #ffd6e4 var(--progress)
    );

    display:flex;
    justify-content:center;
    align-items:center;

    transition:all .8s ease;

    box-shadow:0 15px 35px rgba(255,45,111,.25);

}

.llt-score-inner{

    width:150px;
    height:150px;

    border-radius:50%;

    background:#fff;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    font-size: 40px;

}

#llt-score{

    font-size:42px;
    font-weight:700;
    color:#ff2d6f;

}

.llt-score-inner small{

    color:#777;
    margin-top:2px;
    font-size:20px;

}

/* Love Type Badge */

.llt-love-badge{

    display:inline-block;

    background:#ffe5ee;

    color:#ff2d6f;

    padding:12px 28px;

    border-radius:50px;

    font-size:26px;

    font-weight:700;

    margin:25px 0;

}

/* Analysis */

.llt-result-message{

    max-width:650px;

    margin:0 auto 35px;

    font-size:18px;

    line-height:1.8;

    color:#555;

}

/* Tips */

.llt-tips-box{

    background:#fff8fb;

    border:1px solid #ffd6e4;

    border-radius:18px;

    padding:25px;

    margin-top:20px;

    text-align:left;

}

.llt-tips-box h3{

    margin-bottom:20px;

    color:#ff2d6f;

}

.llt-tips{

    margin:0;

    padding-left:22px;

}

.llt-tips li{

    margin-bottom:12px;

    font-size:17px;

}

/* Buttons */

.llt-result-buttons{

    margin-top:35px;

    display:flex;

    justify-content:center;

    gap:15px;

    flex-wrap:wrap;

}

.llt-read-btn{

    background:#222;

    color:#fff;

    padding:16px 28px;

    border-radius:40px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;

}

.llt-read-btn:hover{

    background:#000;

    color:#fff;

}

/* Mobile */

@media(max-width:768px){

    .llt-score-circle{

        width:200px;
        height:200px;

    }

    .llt-score-inner{

        width:160px;
        height:160px;
        font-size: 35px;
        font-weight: 700;

    }

    #llt-score{

        font-size:34px;

    }

    .llt-result-header h2{

        font-size:28px;

    }

    .llt-result-buttons{

        flex-direction:column;

    }

    .llt-read-btn{

        display:block;
        width:100%;
        text-align:center;

    }

}


/* =====================================================
   Name Entry Screen
===================================================== */

.llt-input-group{

    margin:25px 0;
    text-align:left;

}

.llt-input-group label{

    display:block;
    margin-bottom:8px;
    font-size:16px;
    font-weight:700;
    color:#333;

}

.llt-input-group input{

    width:100%;
    padding:15px 18px;
    border:2px solid #ffd6e4;
    border-radius:12px;
    font-size:16px;
    transition:.3s;
    box-sizing:border-box;

}

.llt-input-group input:focus{

    outline:none;
    border-color:#ff2d6f;
    box-shadow:0 0 0 4px rgba(255,45,111,.12);

}

#llt-see-result-btn{

    width:100%;
    margin-top:20px;

}



/* =====================================================
   Share Button Section
===================================================== */

.llt-share-section{

    margin:35px 0;

}

.llt-share-btn{

    background:#25D366;

    color:#fff;

    border:none;

    border-radius:50px;

    padding:16px 35px;

    cursor:pointer;

    font-size:18px;

    font-weight:700;

    transition:.3s;

}

.llt-share-btn:hover{

    background:#128C7E;

    transform:translateY(-2px);

}

/* =====================================================
   Mobile
===================================================== */

@media(max-width:768px){

    .llt-share-btn{

        width:100%;

    }

}




/* =====================================================
   Share Love Report Modal
===================================================== */

.llt-share-modal{

	position:fixed;

	inset:0;

	z-index:999999;

	display:flex;

	align-items:center;

	justify-content:center;

	padding:20px;

	box-sizing:border-box;

}


/* =====================================================
   Modal Dark Background Overlay
===================================================== */

.llt-share-modal-overlay{

	position:absolute;

	inset:0;

	background:rgba(0,0,0,.55);

	backdrop-filter:blur(3px);

}


/* =====================================================
   Share Modal Box
===================================================== */

.llt-share-modal-box{

	position:relative;

	z-index:2;

	width:100%;

	max-width:480px;

	background:#fff;

	border-radius:20px;

	padding:35px;

	text-align:center;

	box-shadow:0 20px 60px rgba(0,0,0,.22);

	box-sizing:border-box;

}


/* =====================================================
   Share Modal Heading
===================================================== */

.llt-share-modal-box h2{

	font-size:28px;

	margin:0 0 10px;

	color:#222;

}


/* =====================================================
   Share Name Field
===================================================== */

.llt-share-name-field{

	margin:25px 0;

	text-align:left;

}

.llt-share-name-field label{

	display:block;

	font-size:15px;

	font-weight:700;

	color:#333;

	margin-bottom:8px;

}

.llt-share-name-field input{

	width:100%;

	padding:14px 16px;

	border:2px solid #ffd6e4;

	border-radius:12px;

	font-size:17px;

	box-sizing:border-box;

	transition:.25s;

}

.llt-share-name-field input:focus{

	outline:none;

	border-color:#ff2d6f;

	box-shadow:0 0 0 4px rgba(255,45,111,.10);

}


/* =====================================================
   Share Modal Buttons
===================================================== */

.llt-share-modal-actions{

	display:flex;

	flex-direction:column;

	gap:12px;

}

.llt-share-modal-actions .start-btn{

	width:100%;

}

.llt-cancel-share-btn{

	width:100%;

	padding:13px 25px;

	border:1px solid #ddd;

	border-radius:40px;

	background:#f5f5f5;

	color:#555;

	font-size:16px;

	font-weight:600;

	cursor:pointer;

	transition:.2s;

}

.llt-cancel-share-btn:hover{

	background:#e9e9e9;

	color:#222;

}


/* =====================================================
   Share Modal Mobile
===================================================== */

@media(max-width:600px){

	.llt-share-modal-box{

		padding:28px 20px;

	}

	.llt-share-modal-box h2{

		font-size:24px;

	}

}


/* =====================================================
   Shared Report Final Actions
===================================================== */

.llt-shared-actions{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:15px;
    margin-top:25px;
}

.llt-shared-actions .start-btn,
.llt-shared-actions .llt-share-btn{
    flex:1;
    max-width:280px;
    box-sizing:border-box;
    text-align:center;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
}

/* =====================================================
   Shared Actions - Mobile
===================================================== */

@media(max-width:600px){

    .llt-shared-actions{
        flex-direction:column;
    }

    .llt-shared-actions .start-btn,
    .llt-shared-actions .llt-share-btn{
        width:100%;
        max-width:none;
    }
}


/* =====================================================
   Shared Report CTA - Final Design Fix
===================================================== */

.llt-shared-cta{
    margin-top:40px;
    padding:28px 24px;
    background:#fff5f8;
    border:1px solid #ffd6e4;
    border-radius:18px;
    text-align:center;
}

.llt-shared-cta h3{
    margin:0 0 10px;
    color:#222;
    font-size:22px;
    font-weight:700;
    line-height:1.4;
}

.llt-shared-cta p{
    max-width:560px;
    margin:0 auto;
    color:#666;
    font-size:16px;
    line-height:1.7;
}


/* =====================================================
   Shared Report Buttons
===================================================== */

.llt-shared-actions{
    display:flex;
    align-items:stretch;
    justify-content:center;
    gap:14px;
    margin-top:24px;
}

.llt-shared-actions .start-btn,
.llt-shared-actions .llt-share-btn{
    flex:1 1 0;
    width:100%;
    max-width:285px;
    min-height:56px;

    padding:14px 18px;

    display:flex;
    align-items:center;
    justify-content:center;

    box-sizing:border-box;
    border-radius:40px;

    font-size:16px;
    font-weight:700;
    line-height:1.35;

    text-align:center;
    text-decoration:none;

    white-space:normal;
}


/* =====================================================
   Mobile
===================================================== */

@media(max-width:600px){

    .llt-shared-cta{
        margin-top:30px;
        padding:24px 16px;
    }

    .llt-shared-cta h3{
        font-size:20px;
    }

    .llt-shared-cta p{
        font-size:15px;
    }

    .llt-shared-actions{
        flex-direction:column;
        gap:12px;
    }

    .llt-shared-actions .start-btn,
    .llt-shared-actions .llt-share-btn{
        width:100%;
        max-width:none;
        min-height:55px;
        font-size:16px;
        padding:14px 18px;
    }
}

.llt-shared-actions .llt-btn-icon{
    display:inline-flex;
    flex:0 0 auto;
    margin-right:8px;
    font-size:18px;
    line-height:1;
}



/* =====================================================
   Shared CTA Buttons - Icon + Text Final Fix
===================================================== */

.llt-shared-actions .start-btn,
.llt-shared-actions .llt-share-btn{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;

    min-height:56px;
    padding:14px 20px !important;

    font-size:16px !important;
    font-weight:700 !important;
    line-height:1.3 !important;

    border-radius:40px;
}


/* Icon common style */

.llt-shared-actions .llt-btn-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    flex:0 0 auto;

    width:28px;
    height:28px;

    border-radius:50%;

    font-size:18px;
    font-weight:800;
    line-height:1;
}


/* Start Test icon */

.llt-shared-actions .llt-start-icon{
    background:rgba(255,255,255,.20);
    color:#fff;
}


/* WhatsApp Share icon */

.llt-shared-actions .llt-share-icon{
    background:rgba(255,255,255,.20);
    color:#fff;
}


/* Button text */

.llt-shared-actions .llt-btn-text{
    display:inline-block;
}


/* Mobile */

@media(max-width:600px){

    .llt-shared-actions .start-btn,
    .llt-shared-actions .llt-share-btn{
        font-size:16px !important;
        gap:10px !important;
    }

}

