/* Modern responsive composition for the existing spiritual growth check-in. */
.checkin-page{padding:clamp(1.5rem,3vw,3.25rem) 0 6rem;background:radial-gradient(circle at 82% 2%,rgba(211,238,220,.9),transparent 28rem),linear-gradient(180deg,#f3faf5 0,#f8faf8 100%);font-family:"Noto Sans Arabic",Inter,sans-serif}
.checkin-page .container-sm{width:min(1180px,calc(100% - 2rem));max-width:1180px}
.growth-checkin-hero{max-width:none;padding:clamp(2rem,4vw,3.25rem);border-radius:32px;background:linear-gradient(125deg,#102f25 0,#176044 58%,#2b855f 100%);box-shadow:0 24px 60px rgba(18,66,47,.2);text-align:start}
.growth-checkin-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.04),transparent 55%);pointer-events:none}
.growth-checkin-hero h1{font-family:"Noto Kufi Arabic","Noto Sans Arabic",sans-serif;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.45;margin:.45rem 0 .35rem;letter-spacing:-.02em;color:#fff}
.growth-checkin-hero p{font-size:1rem;max-width:720px;margin:.35rem 0}
.growth-name-badge{margin:0 0 .45rem;padding:.45rem .9rem}
.growth-person-name{font-size:1rem;color:#fff}
.growth-verse{max-width:680px;margin:1.25rem 0 .7rem;padding:1rem 1.15rem;border-radius:14px;border-inline-start:4px solid #f0c65c;background:rgba(255,255,255,.09);line-height:1.8}
.checkin-page #checkinForm{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.15rem;margin-top:1.35rem}
.checkin-page #checkinForm>.form-group{padding:clamp(1.2rem,2vw,1.65rem);border-radius:20px;border:1px solid #dce9e0;box-shadow:0 10px 32px rgba(20,64,47,.065)}
.checkin-page #checkinForm>.form-group:nth-of-type(1),.checkin-page #checkinForm>.form-group:nth-of-type(2),.checkin-page #checkinForm>.form-group:nth-of-type(5){grid-column:1/-1}
.growth-section-title{font-size:1.05rem;line-height:1.6;margin-bottom:1rem}
.growth-section-title>span{width:34px;height:34px;border-radius:11px;font-size:.78rem;font-family:Inter,sans-serif}
.growth-section-heading{align-items:center;margin-bottom:1rem}
.growth-section-heading small{margin:.05rem 0 0;font-size:.82rem;line-height:1.6}
.growth-section-heading .btn{min-height:42px;border-radius:12px;padding:.65rem 1rem;font-weight:700;white-space:nowrap}
.checkin-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem}
.checkin-option-inner{min-height:104px;padding:1rem .65rem;border-radius:16px!important;display:flex!important;flex-direction:column;justify-content:center;gap:.45rem;transition:transform .2s,box-shadow .2s,border-color .2s}
.checkin-option:hover .checkin-option-inner{transform:translateY(-2px);box-shadow:0 10px 20px rgba(20,70,50,.09)}
.checkin-icon{font-size:1.6rem}.checkin-text{font-weight:700;line-height:1.45}
.growth-habit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.growth-habit-card{min-height:94px;border-radius:16px}.growth-habit-card>label{padding:1rem}.growth-habit-copy{width:100%;gap:.3rem}.growth-habit-copy b{font-size:.96rem}.growth-habit-copy small{font-size:.76rem}
.mood-options,.need-options{gap:.55rem}.mood-option span{min-height:48px;border-radius:12px!important;display:grid;place-items:center;font-weight:700}
.urge-slider{margin-top:1.1rem}.urge-value{display:inline-grid;place-items:center;min-width:32px;height:32px;border-radius:9px;background:#e4f3e9;color:#17623f;font-weight:800}
.habits-checklist{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}
.habit-check,.custom-activity-item{min-height:52px;border:1px solid #e0ebe3;border-radius:13px;background:#fbfdfb;transition:border-color .2s,background .2s,transform .2s}
.habit-check{padding:.8rem .9rem;font-size:.9rem}.habit-check:hover{border-color:#83b99a;background:#f0f8f3;transform:translateY(-1px)}
.habit-check input{width:18px;height:18px;accent-color:#1d714c}.custom-activity-item .habit-check{border:0;background:transparent}
.checkin-page textarea.form-control{min-height:112px;resize:vertical;border-radius:13px;padding:1rem;line-height:1.7}
.checkin-page #checkinSubmit{grid-column:1/-1;width:min(520px,100%);min-height:54px;justify-self:center;border-radius:15px;font-size:1rem;font-weight:800;box-shadow:0 12px 25px rgba(24,113,75,.2)}
.growth-dialog-card{width:min(100%,600px);padding:clamp(1.35rem,3vw,2rem);border-radius:24px}.growth-dialog-card h2{font-family:"Noto Kufi Arabic","Noto Sans Arabic",sans-serif;font-size:1.35rem}.growth-dialog-card .form-label{display:block;margin:.85rem 0 .4rem}.growth-dialog-card .form-control{display:block;width:100%;box-sizing:border-box;min-height:48px;border-radius:12px}.growth-target-options{gap:.7rem}.growth-target-options>label>span{padding:.85rem;border-radius:13px}
[data-theme="dark"] .checkin-page{background:radial-gradient(circle at 82% 2%,rgba(38,83,61,.5),transparent 28rem),#0f1712}[data-theme="dark"] .habit-check,[data-theme="dark"] .custom-activity-item{background:#19281f;border-color:#324b3c}[data-theme="dark"] .habit-check:hover{background:#20362a;border-color:#4f8063}
@media(max-width:980px){.checkin-page .container-sm{width:min(920px,calc(100% - 2rem))}.checkin-options{grid-template-columns:repeat(3,minmax(0,1fr))}.habits-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}.growth-habit-grid{grid-template-columns:1fr}}
@media(max-width:760px){.checkin-page #checkinForm{grid-template-columns:1fr}.checkin-page #checkinForm>.form-group{grid-column:1!important}.growth-checkin-hero{text-align:center}.growth-name-badge{margin-inline:auto}.growth-verse{margin-inline:auto}.checkin-options{grid-template-columns:repeat(2,minmax(0,1fr))}.growth-section-heading{align-items:flex-start}.habits-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.checkin-page .container-sm{width:calc(100% - 1rem)}.growth-checkin-hero{border-radius:20px;margin:0;padding:1.4rem 1rem}.growth-checkin-hero h1{font-size:1.55rem}.checkin-page #checkinForm>.form-group{padding:1rem;border-radius:16px}.checkin-option-inner{min-height:88px;padding:.75rem .4rem}.habits-checklist{grid-template-columns:1fr}.growth-target-options{grid-template-columns:1fr 1fr}.growth-section-heading{flex-wrap:wrap}}
