/* Light editorial theme. Hero artwork and scroll sequence remain unchanged. */
:root{--ink:#243f39;--accent:#357565;--muted:#74817b;--line:#e5ebe6;--wash:#f5f8f4;--text-dark-muted:#74817b}
html,body{background:#fff;color:var(--ink);min-width:0}html{scroll-padding-top:110px}body{overflow-x:clip}button,input,select,textarea{font-family:var(--font-ui)}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #7fac96;outline-offset:5px}::selection{background:#d9eadd;color:#243f39}::-webkit-scrollbar-track{background:#fff}::-webkit-scrollbar-thumb{background:#b5c8bb;border-color:#fff}.spiritual-bg-atmosphere{display:none}
.spiritual-navbar{height:76px;top:16px;width:min(1240px,94%);border:1px solid #ffffff80;background:#ffffffed;border-radius:20px;box-shadow:0 8px 32px #173d3010;padding:0 26px}.brand-logo-img{height:56px;filter:none}.brand-logo-img:hover{filter:none}.nav-link{font-size:12px;color:#56675e}.nav-link:hover,.nav-link.is-current{color:var(--accent);text-shadow:none}.nav-link::after{background:var(--accent)}.btn-nav-cta{background:var(--accent);border:0;border-radius:12px;box-shadow:none;font-size:12px;padding:13px 20px}.btn-nav-cta:hover{box-shadow:0 7px 18px #35756525}
/* Typography only within the original hero. */
.hero-quran-title{font-size:clamp(1.85rem,3.4vw,3.2rem)!important;line-height:1.85!important;text-shadow:0 3px 20px #08283670}.final-hero-title{font-size:clamp(2.4rem,4.5vw,4.2rem)!important;line-height:1.6!important;text-shadow:0 3px 20px #08283670}.hero-step-desc{font-family:'Tajawal',sans-serif;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:2;color:#e4eee9;max-width:510px}.spiritual-badge{font-size:11px;letter-spacing:.5px;background:transparent;border:0;border-right:2px solid #a9c7b4;border-radius:0;padding:3px 15px;box-shadow:none;color:#d4e6dc}.spiritual-badge .pulse-dot{display:none}
main{position:relative;z-index:20;background:#fff}.journey-strip{max-width:1200px;margin:auto;padding:48px 24px;display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:30px;align-items:center;border-bottom:1px solid var(--line)}.eyebrow{font-size:10px;font-weight:500;color:var(--accent);display:block;margin-bottom:7px}.journey-intro h2{font:700 26px var(--font-majestic)}.journey-strip>a{display:flex;align-items:center;gap:15px;text-decoration:none;color:var(--ink)}.journey-number{font:400 32px var(--font-majestic);color:#a9bbab}.journey-strip strong{font-size:12px;font-weight:500;display:block}.journey-strip a div>span{font-size:10px;color:var(--muted);display:block;margin-top:5px}.journey-strip a:hover .journey-number{color:var(--accent)}
.form-section{background:#fff;padding:95px 24px 100px}.section-title-wrap{max-width:650px;margin:0 auto 48px}.section-tag{font-size:11px;color:var(--accent);letter-spacing:0;text-shadow:none;font-weight:500;margin-bottom:14px}.section-main-title{font:700 clamp(36px,4vw,52px)/1.4 var(--font-majestic);color:var(--ink);text-shadow:none;margin-bottom:18px}.section-main-title em{font-style:normal;color:var(--accent)}.section-subtitle{font-size:12px;line-height:2.2;color:var(--muted);max-width:480px;margin:auto}.worship-layout{max-width:1100px;margin:auto;display:grid;grid-template-columns:340px minmax(0,1fr);gap:36px;align-items:start}.daily-companion{position:sticky;top:120px;background:#f3f6ee;border:1px solid #e6ebdf;border-radius:24px;padding:30px;text-align:center;overflow:hidden}.companion-top{display:flex;justify-content:space-between;align-items:center}.companion-top>span:last-child{font-size:28px;color:#9bad89}.companion-top .section-tag{margin:0}.verse-art{width:164px;height:185px;border:1px solid #c8d4bb;border-radius:100px 100px 12px 12px;margin:26px auto 22px;display:grid;place-items:center;position:relative;background:repeating-radial-gradient(ellipse at 50% 100%,transparent 0 15px,#dde5d533 16px 17px)}.verse-art:before{content:'';position:absolute;inset:9px;border:1px solid #d3ddc8;border-radius:100px 100px 8px 8px}.verse-art span{font:400 66px var(--font-majestic);color:#5c7859}.daily-companion blockquote{font:400 31px/1.8 var(--font-majestic);color:#36543e}.verse-source{font-size:10px;color:#89917e}.companion-note{margin-top:28px;padding-top:24px;border-top:1px solid #dfe6d6;text-align:right}.companion-note strong{font-size:12px;font-weight:500}.companion-note p{font-size:11px;line-height:2.2;color:#78816e;margin-top:8px}.privacy-note{display:flex;gap:12px;text-align:right;border-top:1px solid #dfe6d6;margin-top:22px;padding-top:22px;color:#78816e}.privacy-note>span{font-size:25px}.privacy-note p{font-size:10px;line-height:2}
.form-wrapper-card{width:100%;padding:32px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 14px 55px #243f3907;backdrop-filter:none}.form-wrapper-card:after{display:none}.form-card-heading{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:28px}.form-card-heading h3{font-size:19px;font-weight:500}.form-heading-icon{width:43px;height:43px;border-radius:13px;background:#f1f6f1;color:var(--accent);display:grid;place-items:center;font-size:24px}.worship-form-grid{gap:25px}.form-label{font-size:11px;color:var(--ink);font-weight:500}.form-label>span:first-child{display:none}.label-hint{font-size:9px;color:var(--muted)}.form-label-row{gap:10px;flex-wrap:wrap}.form-input,.form-select{background-color:#fafbf9;border:1px solid #e2e8e1;color:var(--ink);font-size:11px;padding:15px;border-radius:10px;min-width:0}.form-input:focus,.form-select:focus{background-color:#fff;border-color:#82a68d;box-shadow:0 0 0 3px #82a68d18}.form-input::placeholder{color:#969e96;font-size:10px}.form-select{padding-left:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2374817b' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.form-select option{background:#fff;color:var(--ink)}.input-with-action{gap:8px;align-items:stretch}.btn-incognito{position:static;flex-shrink:0;background:#f1f5ee;color:#62775f;border:1px solid #e0e7db;font-size:9px;padding:8px 12px;border-radius:10px}.btn-incognito span:first-child{display:none}.btn-incognito:hover,.btn-incognito.active{background:#e0ecdf;color:#365d40;border-color:#b5cdb4;box-shadow:none}.dhikr-pill{font-size:10px;border-radius:8px;padding:8px 11px;background:#fff;border-color:var(--line);color:#7a857b}.dhikr-pill:hover,.dhikr-pill.active{background:#edf4ec;border-color:#b9ceb5;color:#416a42;box-shadow:none}.quick-pills-row{gap:7px;margin-top:2px}.counter-control-card{background:#f8faf6;border:1px solid #e5ebdf;border-radius:14px;padding:20px;gap:14px}.count-display-input{background:transparent;border:0!important;font-size:38px;color:var(--accent);padding:3px;box-shadow:none!important;font-weight:500;appearance:textfield}.count-display-input::-webkit-inner-spin-button{appearance:none}.stepper-btn{background:#fff;color:var(--accent);border-color:#e0e8db;padding:10px 14px;font-size:13px;min-width:60px;border-radius:9px;direction:ltr}.stepper-btn:hover{background:#e9f0e4;border-color:#b5cbb0}.add-pill{background:#fff;color:#73846c;border-color:#e2e8dc;font-size:10px;min-width:45px;padding:7px;direction:ltr}.add-pill:hover{background:#edf4e9;color:#3e6541;border-color:#abc19f}.digital-ring-clicker{width:100%;background:#eaf1e4;border:1px solid #dce6d3;border-radius:10px;padding:13px}.digital-ring-icon{font-size:0}.digital-ring-icon:after{content:'＋';font-size:20px;color:#4b7045}.digital-ring-text{font-size:10px;color:#507146;font-weight:400}.digital-ring-clicker:active{box-shadow:0 0 0 4px #dce6d370}.upload-drop-zone{background:#fff;border:1px dashed #cdd9ca;border-radius:12px;padding:20px}.upload-drop-zone:hover,.upload-drop-zone.dragover{background:#f6f9f3;border-color:#7f9e73;box-shadow:none}.upload-icon{font-size:0;margin-bottom:8px}.upload-icon:after{content:'↥';display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f0f4ec;color:#79906e;font-size:22px}.upload-title{font-size:10px;color:#65725e;font-weight:400}.upload-subtitle{font-size:9px;color:#99a090;margin-top:5px}.upload-preview-card{background:#f6f9f3;border-color:var(--line)}.preview-name{color:var(--ink);max-width:160px}.preview-compression-badge{color:#487344;background:#e9f1e3}.btn-remove-preview{color:#a34b42;background:#fff1ec;border-color:#f4dcd6}.form-textarea{min-height:95px}.btn-submit-worship{background:var(--accent);border:0;box-shadow:none;border-radius:11px;padding:16px;font-size:13px;font-weight:500}.btn-submit-worship:hover{background:#2c6556;box-shadow:0 8px 22px #35756525;transform:translateY(-2px)}.save-note{text-align:center;color:#97a092;font-size:9px;margin-top:-12px}.btn-spinner{width:17px;height:17px}@keyframes spinRing{to{transform:rotate(360deg)}}
.leaderboard-section{background:#fff;padding:65px 24px 100px;border-top:1px solid var(--line)}.leaderboard-container{width:min(1100px,100%)}.leaderboard-section .section-title-wrap{margin-bottom:24px}.leaderboard-tabs{width:fit-content;margin:0 auto 13px;padding:5px;gap:3px;background:#f3f6f1;border-radius:12px;border:1px solid #e9eee5}.tab-btn{background:transparent;border:0;border-radius:8px;font-size:11px;padding:10px 30px;color:#84907c}.tab-btn:hover{color:var(--accent)}.tab-btn.active{background:#fff;color:var(--accent);box-shadow:0 2px 5px #243f3909}.board-note{text-align:center;font-size:9px;color:#929b8b;margin-bottom:45px}.podium-wrap{gap:20px;align-items:stretch;margin-bottom:28px;padding-top:12px}.podium-card{background:#fff;border:1px solid var(--line);padding:27px 20px;border-radius:20px;box-shadow:none;backdrop-filter:none;transition:transform .3s,box-shadow .3s}.podium-card:hover{box-shadow:0 12px 30px #243f3909;transform:translateY(-5px)}.podium-rank-1{background:#f2f6ed;border-color:#d5e1c9;transform:none;margin-top:-12px;padding-top:39px;box-shadow:none}.podium-crown{position:absolute;top:17px;right:20px;font-size:21px}.podium-avatar{width:59px;height:59px;border:1px solid #e5eadd;background:#f6f8f0;font-family:var(--font-majestic);color:#798b61;font-size:26px}.podium-rank-1 .podium-avatar{border-color:#c3d3b0;background:#e7efd9;box-shadow:none}.podium-name{font:700 22px var(--font-majestic);color:var(--ink);margin:10px 0 5px}.podium-dhikr-type{font-size:10px;color:#839177;margin-bottom:20px}.podium-score{font-size:29px;font-weight:500;color:var(--accent);text-shadow:none;line-height:1.3}.podium-score-label{font-size:9px;color:#91a082}.leaderboard-table-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:none;overflow-x:auto;backdrop-filter:none}.leaderboard-table th{background:#f7f9f5;color:#829078;font-size:10px;font-weight:400;border-color:var(--line);padding:17px 20px;white-space:nowrap}.leaderboard-table td{font-size:11px;color:var(--ink);border-color:#eef1ea;padding:20px}.leaderboard-table tr:last-child td{border-bottom:0}.leaderboard-table tr:hover td{background:#fafbf7;color:var(--ink)}.rank-badge{background:#f5f7f0;border:0;color:#8a9779;font-size:11px;border-radius:9px;width:30px;height:30px}.proof-verified-badge{background:#f0f5eb;border:0;color:#7b916c;font-size:9px;white-space:nowrap;padding:5px 9px}.competitor-reflection{display:block;max-width:200px;font-size:10px;color:#8b9681}.spiritual-footer{background:#fff;border-top:1px solid var(--line);padding:45px 24px 30px}.footer-logo-img{height:65px;filter:none;margin-bottom:14px}.footer-hadith{color:#6b8162;font-size:21px;max-width:630px;margin-bottom:22px}.footer-copy{font-size:9px;color:#9ba391;padding-top:22px;border-top:1px solid #f0f2ed}.toast-success-modal{background:#fff;border-color:#c5d9bd;box-shadow:0 12px 55px #1e452126;max-width:calc(100% - 32px);width:490px;padding:20px}.toast-title{color:var(--ink)}.toast-desc{color:#7c8b72;font-size:10px}.toast-icon{filter:none}.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal-ready.is-visible{opacity:1;transform:none}
@media(max-width:900px){.worship-layout{grid-template-columns:260px minmax(0,1fr);gap:20px}.daily-companion{padding:22px}.form-wrapper-card{padding:24px}.journey-strip{grid-template-columns:repeat(3,1fr);gap:20px}.journey-intro{grid-column:1/-1;text-align:center}.nav-links{gap:16px}.nav-link{font-size:10px}.input-with-action{flex-wrap:wrap}.btn-incognito{padding:10px}.hero-text-wrapper{max-width:60%;margin-right:0}.hero-cta-group{flex-wrap:wrap}}
@media(max-width:640px){.spiritual-navbar{height:64px;top:10px;padding:0 14px;border-radius:15px}.brand-logo-img{height:42px}.nav-links{gap:13px}.nav-links li:first-child{display:none}.nav-link{font-size:9px}.btn-nav-cta{padding:11px;font-size:9px}.nav-actions{gap:0}.journey-strip{padding:30px 20px;gap:20px 10px}.journey-strip>a{flex-direction:column;gap:2px;text-align:center}.journey-number{font-size:27px}.journey-strip strong{font-size:10px}.journey-strip a div>span{font-size:8px}.journey-intro h2{font-size:25px}.form-section{padding:58px 16px}.section-main-title{font-size:36px}.section-subtitle{font-size:11px}.section-title-wrap{margin-bottom:30px}.worship-layout{grid-template-columns:1fr;gap:20px}.daily-companion{position:relative;top:auto;padding:20px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10px}.companion-top{grid-column:1/-1}.verse-art{display:none}.daily-companion blockquote{font-size:25px;grid-row:2/4}.verse-source{grid-column:1;grid-row:4}.companion-note{margin:0;padding:0;border:0;grid-column:2;grid-row:2/5}.privacy-note{grid-column:1/-1;margin-top:5px;padding-top:12px;justify-content:center}.privacy-note p{font-size:9px}.form-wrapper-card{padding:22px 18px;border-radius:18px}.form-card-heading h3{font-size:17px}.form-label{font-size:10px}.label-hint{font-size:8px}.counter-control-card{padding:15px}.digital-ring-text{font-size:9px}.leaderboard-section{padding:48px 16px 60px}.podium-wrap{gap:8px}.podium-card{padding:24px 8px 20px;border-radius:14px}.podium-rank-1{padding-top:36px}.podium-crown{font-size:16px;top:8px;right:8px}.podium-avatar{width:42px;height:42px;font-size:21px;margin-bottom:8px}.podium-name{font-size:16px;min-height:46px;display:grid;place-items:center}.podium-dhikr-type{font-size:8px;min-height:28px;margin-bottom:8px}.podium-score{font-size:21px}.podium-score-label{font-size:7px}.leaderboard-table{min-width:680px}.hero-text-wrapper{max-width:94%;margin-right:0}.hero-quran-title{font-size:24px!important}.final-hero-title{font-size:34px!important}.hero-step-desc{font-size:16px;max-width:350px}.hero-large-logo{max-width:340px}.hero-content-stage{width:90%}.hero-cta-group a{font-size:11px;padding:12px}.spiritual-badge{font-size:9px}.scroll-guide-indicator{font-size:10px}.footer-hadith{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
/* Give the existing pale logo enough contrast on white surfaces. */
.spiritual-navbar .brand-logo-img,.spiritual-footer .footer-logo-img{filter:brightness(.68) saturate(.6)}

/* A quiet garden closes the page; the logo and hadith sit above it. */
.spiritual-footer {
  padding: 58px 0 0;
  border-top: 0;
  overflow: hidden;
  isolation: isolate;
}
.footer-content {
  position: relative;
  z-index: 1;
  width: min(720px, 100%);
  margin: 0 auto;
  padding: 0 24px;
}
.spiritual-footer .footer-logo-img {
  width: 170px;
  height: auto;
  margin-bottom: 22px;
}
.spiritual-footer .footer-hadith {
  font-size: clamp(22px, 2.4vw, 30px);
  line-height: 1.95;
  color: #476f65;
  margin-bottom: 20px;
}
.spiritual-footer .footer-copy {
  border: 0;
  padding: 0;
  color: #7c918a;
  font-size: 10px;
  line-height: 2;
}
.footer-landscape {
  position: relative;
  margin-top: -65px;
  z-index: 0;
}
.footer-landscape::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, #fff 0%, rgba(255,255,255,.8) 13%, transparent 43%);
  pointer-events: none;
}
.footer-landscape img {
  display: block;
  width: 100%;
  height: clamp(300px, 45vw, 640px);
  object-fit: cover;
  object-position: center bottom;
}
@media (max-width: 640px) {
  .spiritual-footer { padding-top: 38px; }
  .spiritual-footer .footer-logo-img { width: 140px; margin-bottom: 16px; }
  .footer-content { padding: 0 22px; }
  .footer-landscape { margin-top: -25px; }
  .footer-landscape img { height: 280px; }
  .spiritual-footer .footer-copy { font-size: 9px; }
}

/* The single weekly registration form. */
.weekly-section { padding: 90px 20px 65px; }
.weekly-card { max-width: 640px; margin: auto; padding: 34px; }
.weekly-schedule { display: flex; gap: 14px; align-items: center; padding-bottom: 23px; border-bottom: 1px solid var(--line); }
.weekly-schedule > span { font-size: 30px; color: var(--accent); }
.weekly-schedule strong { font-size: 12px; font-weight: 500; }
.weekly-schedule p { font-size: 10px; color: var(--muted); margin-top: 6px; }
.registration-status { padding: 15px; background: #f5f7f1; border-radius: 10px; font-size: 11px; line-height: 2; color: #67765e; margin: 22px 0 26px; }
.registration-status.is-open { background: #eaf5ee; color: #286149; }
.registration-countdown { margin: -14px 0 26px; padding: 16px; border: 1px solid #e5ebdf; border-radius: 12px; background: #fafbf9; text-align: center; }
.registration-countdown .countdown-label { display: block; font-size: 11px; color: #67765e; margin-bottom: 10px; }
.registration-countdown.is-open .countdown-label { color: #286149; }
.countdown-units { display: flex; flex-direction: row-reverse; justify-content: center; gap: 8px; }
.countdown-units span { min-width: 58px; padding: 8px 4px; border-radius: 10px; background: #fff; border: 1px solid #e2e8e1; display: flex; flex-direction: column; gap: 2px; }
.countdown-units b { font-size: 20px; font-weight: 500; color: var(--accent); font-variant-numeric: tabular-nums; }
.countdown-units small { font-size: 9px; color: var(--muted); }
#registrationFields { border: 0; padding: 0; margin: 0; min-width: 0; display: grid; gap: 24px; }
#registrationFields:disabled .form-input { background: #f7f8f5; cursor: not-allowed; color: #818b80; }
#registrationFields:disabled .btn-submit-worship { background: #bbc8be; box-shadow: none; cursor: not-allowed; transform: none; }
.weekly-card .form-label { font-size: 12px; }
.weekly-card .form-input { font-size: 13px; padding: 16px; }
.weekly-card .form-input::placeholder { font-size: 11px; }
.required-hint { color: var(--accent); font-size: 10px; }
.field-hint { font-size: 10px; color: #7c887d; line-height: 1.9; }
.submission-feedback { font-size: 12px; color: var(--accent); line-height: 2; }
.submission-feedback:empty { display: none; }
.submission-feedback.is-error { color: #a33b32; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media(max-width:640px) { .weekly-section { padding: 55px 16px 35px; } .weekly-card { padding: 24px 20px; } .weekly-schedule strong { font-size: 11px; } .weekly-schedule p { font-size: 9px; } }

.suggestions-section { background:#fff; padding:28px 24px 32px; text-align:right; }
.suggestions-form { max-width:640px; margin:auto; }
.suggestions-form label { display:block; color:var(--ink); font-size:13px; margin-bottom:12px; }
.suggestions-row { display:flex; gap:10px; }
.suggestions-row .btn-submit-worship { width:auto; min-width:90px; font-size:12px; padding:12px 22px; }
#suggestionFeedback { font-size:11px; line-height:2; color:var(--accent); margin-top:10px; }
#adminDashboard { width:min(960px,calc(100% - 32px)); max-height:85vh; margin:auto; padding:32px; border:1px solid var(--line); border-radius:22px; color:var(--ink); background:#fff; box-shadow:0 30px 100px #183c392b; }
#adminDashboard::backdrop { background:#163b3459; backdrop-filter:blur(5px); }
.dashboard-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.dashboard-heading h2 { font-family:var(--font-majestic); font-size:32px; }
#closeDashboard { border:0; border-radius:50%; background:#f1f5ef; color:var(--ink); width:40px; height:40px; font-size:26px; cursor:pointer; }
.dashboard-notice { font-size:11px; line-height:2; color:#74817b; margin:16px 0 18px; }
.dashboard-test-mode-card { display:flex; align-items:center; justify-content:space-between; gap:16px; background:#f4f8f4; border:1px solid #dbe6dc; border-radius:14px; padding:16px 20px; margin-bottom:20px; }
.test-mode-title-row { display:flex; align-items:center; gap:10px; margin-bottom:4px; }
.test-mode-title-row strong { font-size:13px; color:var(--ink); font-weight:600; }
.test-mode-badge { font-size:10px; padding:3px 9px; border-radius:6px; background:#e2e8e2; color:#55675c; font-weight:500; transition:all .25s ease; }
.test-mode-badge.is-active { background:#d1fae5; color:#065f46; border:1px solid #a7f3d0; }
.dashboard-test-mode-card p { font-size:11px; line-height:1.9; color:#63756b; margin:0; }
.switch-toggle { position:relative; display:inline-block; width:52px; height:28px; flex-shrink:0; cursor:pointer; }
.switch-toggle input { opacity:0; width:0; height:0; }
.toggle-slider { position:absolute; inset:0; background-color:#cbd5e1; transition:.3s; border-radius:28px; }
.toggle-slider:before { position:absolute; content:""; height:22px; width:22px; left:3px; bottom:3px; background-color:white; transition:.3s; border-radius:50%; box-shadow:0 2px 6px rgba(0,0,0,.18); }
.switch-toggle input:checked + .toggle-slider { background-color:var(--accent); }
.switch-toggle input:checked + .toggle-slider:before { transform:translateX(24px); }
.dashboard-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.dashboard-stats>div { padding:20px 12px; background:#f3f7ef; border-radius:12px; text-align:center; }
.dashboard-stats strong { display:block; color:var(--accent); font-size:28px; }
.dashboard-stats span { font-size:10px; }
#adminDashboard h3 { font-size:14px; font-weight:500; margin:28px 0 14px; }
.dashboard-section-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; margin:28px 0 14px; }
.dashboard-section-header h3 { margin:0 !important; }
.dashboard-sort-controls { display:flex; align-items:center; gap:8px; font-size:11px; color:#5b6e65; }
.dashboard-sort-select { background:#fff; border:1px solid var(--line); border-radius:8px; padding:6px 10px; font-size:11px; font-family:inherit; color:var(--text); cursor:pointer; outline:none; transition:border-color .2s; }
.dashboard-sort-select:focus { border-color:var(--accent); }
.dashboard-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:12px; }
.dashboard-table { width:100%; border-collapse:collapse; min-width:570px; text-align:right; }
.dashboard-table th,.dashboard-table td { padding:14px; border-bottom:1px solid var(--line); font-size:11px; }
.dashboard-table th { background:#f6f8f3; font-weight:500; }
.dashboard-table th.sortable-th { cursor:pointer; user-select:none; transition:background .15s; }
.dashboard-table th.sortable-th:hover { background:#e8eee4; color:var(--accent); }
.dashboard-table th.sortable-th .sort-icon { display:inline-block; margin-inline-start:4px; font-size:10px; opacity:.75; }
.dashboard-table td { overflow-wrap:anywhere; max-width:220px; }
.dashboard-weeks { display:grid; gap:12px; }
.dashboard-week { border:1px solid var(--line); border-radius:12px; background:#fff; overflow:hidden; }
.dashboard-week > summary { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; padding:14px 16px; background:#f6f8f3; cursor:pointer; list-style:none; font-size:12px; user-select:none; }
.dashboard-week > summary::-webkit-details-marker { display:none; }
.dashboard-week > summary::before { content:'◂'; color:var(--accent); transition:transform .2s; margin-inline-end:4px; }
.dashboard-week[open] > summary::before { transform:rotate(-90deg); }
.dashboard-week > summary:hover { background:#e8eee4; }
.dashboard-week-title { flex:1; font-weight:500; color:var(--text); }
.dashboard-week-badge { display:inline-block; background:var(--accent); color:#fff; border-radius:999px; padding:2px 8px; font-size:10px; margin-inline-start:6px; }
.dashboard-week-meta { font-size:11px; color:#5b6e65; }
.dashboard-week .dashboard-table-wrap { border:0; border-top:1px solid var(--line); border-radius:0; }
.dashboard-week .dashboard-table tr:last-child td { border-bottom:0; }
.dashboard-empty { text-align:center; padding:20px; font-size:12px; color:#5b6e65; border:1px dashed var(--line); border-radius:12px; margin:0; }
.dashboard-error { display:none; margin:0 0 16px; padding:12px 14px; border-radius:10px; background:#fdecea; border:1px solid #f3c2bd; color:#9b2c22; font-size:12px; }
.dashboard-error.is-visible { display:block; }
#dashboardSuggestions { list-style:none; padding:0; }
#dashboardSuggestions li { white-space:pre-wrap; overflow-wrap:anywhere; padding:14px; background:#f8faf6; border-radius:10px; margin-bottom:8px; font-size:12px; line-height:2; }
#dashboardError { color:#a34b42; font-size:12px; }

/* أدوات الإدارة في شريط التنقل */
.admin-nav-controls { display:flex; align-items:center; gap:6px; }
.btn-admin-nav { background:#eef6ef; color:var(--accent); border:1px solid #c8dfcf; font-size:11px; font-weight:600; padding:10px 14px; border-radius:10px; cursor:pointer; transition:all .25s ease; }
.btn-admin-nav:hover { background:var(--accent); color:#fff; box-shadow:0 4px 14px #35756525; }
.btn-admin-logout { background:#fff1ee; color:#a34b42; border:1px solid #f2d1ca; font-size:10px; padding:10px 12px; border-radius:10px; cursor:pointer; transition:all .25s ease; }
.btn-admin-logout:hover { background:#a34b42; color:#fff; }

/* شريط الإدارة السريع فوق خانة الاقتراحات */
.admin-suggestions-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#f2f7f2; border:1px solid #cbe0ce; border-radius:12px; padding:12px 18px; margin-bottom:8px; }
.admin-logged-tag { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--accent); font-weight:600; }
.admin-status-dot { width:8px; height:8px; border-radius:50%; background:#10b981; box-shadow:0 0 8px #10b981; animation:pulseAdminDot 2s infinite ease-in-out; }
@keyframes pulseAdminDot { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(.8)} }
.admin-suggestions-actions { display:flex; gap:8px; }
.btn-admin-pill { background:var(--accent); color:#fff; border:0; border-radius:9px; font-size:11px; padding:8px 16px; cursor:pointer; font-weight:500; }
.btn-admin-pill:hover { background:#2c6556; }
.btn-admin-logout-pill { background:#fff; color:#a34b42; border:1px solid #e5c5be; border-radius:9px; font-size:11px; padding:8px 14px; cursor:pointer; }
.btn-admin-logout-pill:hover { background:#fff1ee; }

/* زر الخروج داخل رأس نافذة الإدارة */
.dashboard-header-actions { display:flex; align-items:center; gap:10px; }
.btn-dashboard-logout { background:#fff1ee; color:#a34b42; border:1px solid #f4d4ce; border-radius:10px; font-size:11px; padding:9px 15px; cursor:pointer; font-weight:500; transition:all .25s ease; }
.btn-dashboard-logout:hover { background:#a34b42; color:#fff; }

/* نافذة نجاح التسجيل المنبثقة */
.success-popup-dialog { border:1px solid #d1e2d4; border-radius:24px; background:#fff; padding:0; max-width:480px; width:calc(100% - 32px); box-shadow:0 25px 80px rgba(22,59,52,.22); margin:auto; }
.success-popup-dialog::backdrop { background:#163b3459; backdrop-filter:blur(5px); }
.success-popup-card { padding:36px 26px 30px; text-align:center; display:flex; flex-direction:column; align-items:center; }
.success-popup-icon-wrap { width:70px; height:70px; border-radius:50%; background:#f0f7f2; display:grid; place-items:center; margin-bottom:16px; border:1px solid #d4e7d8; }
.success-popup-flower { font-size:36px; }
.success-popup-title { font-family:var(--font-majestic); font-size:32px; color:var(--ink); margin-bottom:8px; }
.success-popup-message { font-size:14px; font-weight:500; color:var(--accent); margin-bottom:16px; }
.success-popup-details { width:100%; background:#f7faf6; border:1px solid #e3ede3; border-radius:14px; padding:14px 18px; display:flex; flex-direction:column; gap:8px; margin-bottom:16px; text-align:right; }
.success-detail-item { display:flex; justify-content:space-between; align-items:center; font-size:12px; color:#5d6f65; }
.success-detail-item strong { color:var(--ink); font-weight:600; }
.success-count-badge { color:var(--accent)!important; font-size:15px!important; font-weight:700!important; }
.success-popup-sub { font-size:11px; line-height:2; color:#7a8880; margin-bottom:24px; max-width:380px; }
.btn-success-close { width:100%; justify-content:center; border-radius:12px; padding:15px; font-size:14px; font-weight:500; }

/* أزرار اختصار الواتساب */
.whatsapp-shortcut-btn { display:inline-flex; align-items:center; gap:5px; background:#eaf7ee; color:#167332; border:1px solid #bce6c6; border-radius:8px; padding:4px 9px; font-size:11px; font-weight:500; text-decoration:none; direction:ltr; transition:all .2s ease; }
.whatsapp-shortcut-btn:hover { background:#25d366; color:#fff; border-color:#25d366; box-shadow:0 3px 10px rgba(37,211,102,.25); transform:translateY(-1px); }
.whatsapp-shortcut-btn .wa-icon { flex-shrink:0; fill:currentColor; }

.phone-input-wrap { position:relative; display:flex; align-items:center; width:100%; }
.phone-input-wrap .form-input { width:100%; padding-right:105px; padding-left:14px; }
.btn-wa-input-shortcut { position:absolute; right:8px; display:inline-flex; align-items:center; gap:5px; background:#eaf7ee; color:#167332; border:1px solid #bce6c6; border-radius:8px; padding:5px 10px; font-size:11px; font-weight:600; text-decoration:none; direction:rtl; transition:all .2s ease; z-index:2; }
.btn-wa-input-shortcut:hover { background:#25d366; color:#fff; border-color:#25d366; box-shadow:0 3px 10px rgba(37,211,102,.25); }

@media(max-width:640px) {
  #adminDashboard { padding:22px 16px; }
  .dashboard-stats span { font-size:8px; }
  .suggestions-section { padding:24px 16px; }
  .btn-admin-nav { font-size:9px; padding:8px 10px; }
  .btn-admin-logout { font-size:9px; padding:8px 8px; }
  .admin-suggestions-bar { flex-direction:column; align-items:stretch; text-align:center; }
  .admin-logged-tag { justify-content:center; }
  .admin-suggestions-actions { justify-content:center; }
  .success-popup-dialog { border-radius:20px; }
  .success-popup-card { padding:28px 18px 22px; }
  .success-popup-title { font-size:26px; }
  .btn-dashboard-logout { font-size:9px; padding:7px 10px; }
}

/* خلفية الهيرو المخصصة لشاشات الهاتف */
.hero-mobile-bg {
  display: none;
}

/* وضع التلفون (Mobile): استخدام صورة الهيرو العمودية المخصصة مع اللوجو في الأعلى */
@media(max-width:768px) {
  #hero-section {
    height: 100vh;
    height: 100dvh;
    min-height: 520px;
    position: relative;
    background: #082836;
    overflow: hidden;
  }
  .hero-mobile-bg {
    display: block !important;
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
  }
  .hero-mobile-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
    display: block;
  }
  #hero-canvas,
  .hero-vignette-overlay,
  .scroll-guide-indicator,
  #hero-step-1,
  #hero-step-2 {
    display: none !important;
  }
  .hero-sticky-viewport {
    height: 100% !important;
    width: 100% !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
  }
  .hero-content-stage {
    position: relative;
    z-index: 3;
    width: 90%;
    margin: 0 auto;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 92px;
    pointer-events: auto;
  }
  .hero-text-wrapper {
    width: 100%;
    max-width: 380px;
    margin: 0 auto;
    padding: 0;
    text-align: center;
  }
  /* إظهار الفريم الأول فقط (شعار سبق المفردون في الأعلى) */
  #hero-step-0 {
    opacity: 1 !important;
    visibility: visible !important;
    position: relative !important;
    top: auto !important;
    transform: none !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    pointer-events: auto !important;
  }
  .hero-main-logo-wrap {
    justify-content: center !important;
    width: 100% !important;
    padding: 0;
    display: flex;
  }
  .hero-large-logo {
    max-width: min(300px, 80vw) !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 10px 30px rgba(0, 0, 0, 0.7));
  }
}
