@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@400;500;600;700&family=Playfair+Display:wght@500;700&display=swap');
:root{color-scheme:dark;--gold:#e2c47e;--muted:#aaa4bb}body{background:radial-gradient(ellipse at 75% 0,#30204c 0,transparent 42%),#100c1d;color:#f7f3fa;font-family:'Noto Sans Thai',sans-serif}a{color:inherit;text-decoration:none}nav{border-bottom:1px solid #ffffff15}nav .container{min-height:72px}nav a, .link-button{font-size:.85rem}.brand{font-family:'Playfair Display',serif;color:var(--gold);font-size:1.4rem;letter-spacing:.13em}.brand small{font: .7rem 'Noto Sans Thai';letter-spacing:0;color:#ddd}.link-button{border:0;background:none;color:#fff;padding:0}.hero{padding:6rem 0 7rem;max-width:760px}.eyebrow{font-size:.7rem;letter-spacing:.24em;color:var(--gold);font-weight:700}.hero h1{font-size:clamp(2.5rem,7vw,5rem);line-height:1.25;font-weight:600}.hero h1 span{color:var(--gold)}.lead,.muted{color:var(--muted)}.lead{max-width:540px;margin:1.5rem 0 2rem;font-size:1.05rem;line-height:1.9}.btn-gold{background:var(--gold);color:#1c132a;border:0;padding:.8rem 1.35rem;font-weight:700}.btn-gold:hover{background:#f1dca3;color:#1c132a}.section-title{margin:2rem 0}.section-title h2,h2{font-size:1.5rem}.module-card,.panel{background:#ffffff08;border:1px solid #ffffff18;border-radius:16px;padding:1.5rem}.module-card{min-height:160px}.module-card h3{font-size:1rem;margin:1rem 0}.module-card span{font-size:.65rem;letter-spacing:.1em;color:#c6a96f}.star{color:var(--gold);font-size:1.5rem}.panel{margin-top:1.5rem}.compact{padding:1rem;margin-top:.5rem}.form-control{background:#1d1730;color:#fff;border-color:#4d405f}.form-control:focus{background:#201a32;color:#fff;border-color:var(--gold);box-shadow:none}footer{border-top:1px solid #ffffff15;margin-top:5rem;font-size:.8rem}@media(max-width:600px){nav .container{gap:1rem;padding-top:1rem;padding-bottom:1rem}nav .d-flex{flex-wrap:wrap;gap:.7rem!important}.hero{padding:4rem 0}.module-card{padding:1rem;min-height:140px}}
/* Mobile application shell */
:root{--surface:#21182f;--line:rgba(233,211,161,.14)}
body{min-height:100vh;background:radial-gradient(ellipse at 82% 0%,#35244f 0,transparent 42%),#100c1d}
.navbar{backdrop-filter:blur(16px);background:rgba(16,12,29,.72)}
.panel,.module-card{background:linear-gradient(145deg,rgba(54,40,73,.8),rgba(28,21,43,.9));border-color:var(--line);box-shadow:0 14px 35px rgba(0,0,0,.12)}
.btn{border-radius:12px}.btn-gold{background:linear-gradient(135deg,#eed99e,#caa766)}
.app-greeting{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem}.app-greeting h1{font-size:clamp(1.5rem,4vw,2.2rem);margin:0 0 .35rem}.profile-avatar{height:68px;width:68px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);background:#30243f}.avatar-fallback{display:grid;place-items:center;color:var(--gold);font-size:2rem}
.app-bottom-nav{display:none}
@media(max-width:767.98px){body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.main-navbar .main-nav-links{display:none!important}nav .container{min-height:62px;flex-wrap:nowrap}.brand{font-size:1.2rem}main.container.py-5{padding-top:1.75rem!important;padding-bottom:2rem!important}.hero{padding:3rem 0 3.5rem}.hero h1{font-size:clamp(2.3rem,10vw,3.5rem)}.hero .lead{font-size:.98rem}.module-card{min-height:140px}.panel{padding:1.25rem;border-radius:20px}.section-title{margin:2rem 0 1rem}.app-bottom-nav{display:flex;position:fixed;z-index:1000;left:0;right:0;bottom:0;justify-content:space-around;padding:.65rem .5rem calc(.6rem + env(safe-area-inset-bottom));border-top:1px solid rgba(226,196,126,.16);background:rgba(22,16,34,.96);backdrop-filter:blur(18px)}.app-nav-item{min-width:64px;display:flex;flex-direction:column;align-items:center;gap:.2rem;color:#a6a0b5;font-size:.67rem}.app-nav-item i{font-size:1.3rem;line-height:1.2}.app-nav-item.is-active{color:var(--gold)}footer.container{margin-top:2rem}}
.admin-login{max-width:440px;margin:clamp(2rem,8vh,6rem) auto;padding:2rem;border-radius:24px;background:linear-gradient(145deg,rgba(54,40,73,.9),rgba(28,21,43,.95));border:1px solid var(--line);text-align:center}.admin-login h1{font-size:1.8rem;margin:.5rem 0 1rem}.admin-login-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 1.5rem;border-radius:20px;background:rgba(226,196,126,.1);color:var(--gold);font-size:1.8rem}.admin-back{display:inline-block;margin-top:1.25rem;color:var(--muted);font-size:.85rem}@media(max-width:767.98px){.admin-login{margin:2rem auto;padding:1.5rem}}
.admin-password-form{text-align:left}.admin-password-form .form-label{font-size:.85rem;color:#d6cedd}.admin-divider{display:flex;align-items:center;gap:.75rem;color:var(--muted);font-size:.8rem;margin:1.25rem 0}.admin-divider:before,.admin-divider:after{content:"";height:1px;background:var(--line);flex:1}
/* Admin overview */
.admin-header,.admin-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.admin-header h1{font-size:clamp(1.8rem,4vw,2.5rem)}.admin-shortcuts,.admin-module-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.5rem 0}.admin-overview>div{padding:1rem 1.1rem;border:1px solid var(--line);border-radius:16px;background:rgba(54,40,73,.45)}.admin-overview span{display:block;color:var(--muted);font-size:.75rem}.admin-overview strong{display:block;color:var(--gold);font-size:1.6rem;margin-top:.25rem}.admin-settings .input-group-text{background:#30243f;color:#e6d8b4;border-color:#4d405f}.admin-switches{display:flex;flex-wrap:wrap;gap:1.2rem;margin:1.25rem 0}.admin-switches label{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.admin-module-list{display:grid;gap:.75rem}.admin-module-row{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:16px;background:rgba(40,30,55,.72)}.admin-module-icon{flex:0 0 46px;height:46px;display:grid;place-items:center;border-radius:14px;color:var(--gold);background:rgba(226,196,126,.1);font-size:1.25rem}.admin-module-info{flex:1;min-width:0}.admin-module-info h3{font-size:1rem;margin:0 0 .25rem}.admin-module-info p{font-size:.8rem;color:var(--muted);margin:0 0 .5rem}.admin-badges{display:flex;gap:.4rem;flex-wrap:wrap}.admin-badge{font-size:.65rem;padding:.25rem .55rem;border-radius:999px;background:rgba(255,255,255,.07);color:#d9c18d}.badge-open{color:#9ee2bb;background:rgba(62,157,103,.16)}.badge-closed{color:#c3bdcb}.admin-module-actions{justify-content:flex-end}.admin-module-actions form{margin:0}@media(max-width:767.98px){.admin-header{display:block}.admin-shortcuts{margin-top:1rem}.admin-overview{gap:.4rem}.admin-overview>div{padding:.75rem .55rem}.admin-overview span{font-size:.65rem}.admin-overview strong{font-size:1.3rem}.admin-module-row{align-items:flex-start;flex-wrap:wrap}.admin-module-info{flex:1 1 calc(100% - 62px)}.admin-module-actions{flex:1 1 100%;justify-content:flex-start;padding-left:0}.admin-module-actions .btn{font-size:.75rem}}
.bulk-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:1rem 0}.bulk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.4rem;max-height:350px;overflow:auto;padding:.25rem}.bulk-item{display:flex;align-items:center;gap:.35rem;padding:.5rem;background:#ffffff0a;border:1px solid var(--line);border-radius:8px;font-size:.8rem}.bulk-item small{color:var(--muted);margin-left:auto}details>summary{cursor:pointer;font-weight:600}
.admin-search{display:flex;gap:.6rem;max-width:560px}.admin-member-card{padding:1.25rem;border:1px solid var(--line);background:rgba(40,30,55,.72);border-radius:16px}.admin-member-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.admin-member-heading h2{font-size:1.05rem;margin:0 0 .25rem}.admin-member-form{margin:1rem 0;max-width:360px}.admin-member-form label{font-size:.85rem;margin-bottom:.4rem}.admin-member-form .btn{white-space:nowrap}
/* Dedicated back office */
.backoffice-header{background:#181121;border-bottom:1px solid var(--line);position:relative;z-index:20}.backoffice-top,.backoffice-nav{max-width:1320px;margin:auto;padding:.85rem 1rem;display:flex;align-items:center;gap:1.2rem}.backoffice-top{justify-content:space-between;border-bottom:1px solid #ffffff0c}.backoffice-brand{font-family:'Playfair Display',serif;color:var(--gold);font-size:1.2rem;letter-spacing:.1em}.backoffice-brand small{font:600 .56rem 'Noto Sans Thai';letter-spacing:.14em;color:#aaa4bb;margin-left:.5rem}.backoffice-logout{border:0;background:none;color:#d6cedd;font-size:.8rem}.backoffice-nav{flex-wrap:wrap;padding-top:.6rem;padding-bottom:.6rem}.backoffice-nav>a,.backoffice-dropdown summary{color:#d6cedd;font-size:.8rem}.backoffice-nav a:hover,.backoffice-dropdown summary:hover{color:var(--gold)}.backoffice-dropdown{position:relative}.backoffice-dropdown summary{list-style:none;cursor:pointer}.backoffice-dropdown>div{position:absolute;min-width:180px;top:calc(100% + .7rem);left:0;display:grid;gap:.7rem;padding:1rem;background:#2a2038;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 30px #0007}.backoffice-dropdown>div a{font-size:.8rem}@media(max-width:767.98px){.backoffice-nav{gap:.85rem;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}.backoffice-dropdown>div{position:fixed;top:auto;left:1rem;right:1rem;z-index:30;white-space:normal}}
.dashboard-module-card{display:flex;flex-direction:column;align-items:flex-start;min-height:168px;height:100%;transition:border-color .2s,transform .2s}.dashboard-module-card:hover{border-color:rgba(226,196,126,.55);transform:translateY(-2px);color:inherit}.dashboard-module-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(226,196,126,.12);color:var(--gold);font-size:1.35rem!important;letter-spacing:0!important}.dashboard-module-card h3{margin:1rem 0 .75rem}.dashboard-module-arrow{margin-top:auto;font-size:1rem!important;color:var(--gold)}@media(max-width:767.98px){.dashboard-module-card{min-height:150px}}
/* Front-end visual refresh */
body:not(:has(.dashboard-shell)){--front-gold:#e9d4a0;--front-muted:#b4aabc;background:radial-gradient(ellipse at 85% -10%,#403055 0,transparent 38%),#100c1a;color:#faf7ff}
body:not(:has(.dashboard-shell)) .main-navbar{border-bottom:1px solid #e9d4a018;background:#110d1bd9}
body:not(:has(.dashboard-shell)) .brand{font-size:1.25rem;color:#f0dca9}body:not(:has(.dashboard-shell)) .main-nav-links a{color:#d4cbdc;transition:color .2s}body:not(:has(.dashboard-shell)) .main-nav-links a:hover{color:#f4dda2}
body:not(:has(.dashboard-shell)) .hero{position:relative;isolation:isolate;max-width:none;min-height:480px;display:flex;align-items:center;margin:1rem 0 4.5rem;padding:4.5rem clamp(1.5rem,5vw,5rem);border:1px solid #d8b97b25;border-radius:32px;overflow:hidden;background:radial-gradient(circle at 77% 46%,#66507580 0,transparent 26%),linear-gradient(120deg,#29203b 0%,#1a1429 62%,#21182f 100%)}
body:not(:has(.dashboard-shell)) .hero:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.35;background-image:radial-gradient(#f7e2b5 1px,transparent 1px),radial-gradient(#f7e2b5 1px,transparent 1px);background-size:95px 95px,137px 137px;background-position:10px 16px,55px 60px}
.hero-content{position:relative;z-index:2;max-width:620px}.hero-kicker{display:inline-flex;align-items:center;gap:.6rem;color:#ddc998;font-size:.78rem;font-weight:600;letter-spacing:.03em}.hero-kicker span{font-size:1rem}.hero h1{font-size:clamp(2.6rem,5.3vw,4.7rem);letter-spacing:-.035em;line-height:1.27}.hero h1 span{background:linear-gradient(90deg,#f7e8bd,#c7a671);background-clip:text;-webkit-background-clip:text;color:transparent}.hero .lead{color:#c3b8ce;line-height:1.9;max-width:460px}.hero-note{display:flex;gap:.5rem;align-items:center;margin-top:1.5rem;color:#a99cb4;font-size:.75rem}.hero-note i{color:#dec48d}.hero-art{position:absolute;width:390px;height:390px;right:7%;top:50%;transform:translateY(-50%);display:grid;place-items:center}.orbit{position:absolute;border:1px solid #e8cf9b35;border-radius:50%}.orbit-outer{inset:0}.orbit-middle{inset:32px;border-style:dashed;animation:orbit-turn 80s linear infinite}.orbit-inner{inset:78px;background:radial-gradient(circle,#d7be8f20,transparent 68%)}.hero-moon{font-family:serif;font-size:11rem;line-height:1;color:#eedbae;text-shadow:0 0 45px #e9d4a050;transform:rotate(-18deg)}.hero-star{position:absolute;color:#e9d4a0}.star-one{top:12%;right:24%;font-size:1.5rem}.star-two{bottom:24%;left:10%;font-size:2rem}.star-three{bottom:18%;right:19%;font-size:.9rem}.hero-art-label{position:absolute;bottom:8%;font-size:.55rem;letter-spacing:.25em;color:#d4bf96}@keyframes orbit-turn{to{transform:rotate(360deg)}}
body:not(:has(.dashboard-shell)) .section-title{margin:2rem 0 1.25rem}body:not(:has(.dashboard-shell)) .section-title h2{font-size:clamp(1.4rem,2.2vw,2rem);margin-bottom:.4rem}body:not(:has(.dashboard-shell)) .section-title .muted{font-size:.9rem}body:not(:has(.dashboard-shell)) .module-card,body:not(:has(.dashboard-shell)) .panel{border-color:#e7ce9e20;background:linear-gradient(145deg,#302340,#21192d);box-shadow:0 12px 30px #08051020}body:not(:has(.dashboard-shell)) .dashboard-module-card{position:relative;padding:1.4rem;min-height:178px;border-radius:20px}body:not(:has(.dashboard-shell)) .dashboard-module-card:hover{background:linear-gradient(145deg,#392b49,#271d35);box-shadow:0 15px 35px #08051040}body:not(:has(.dashboard-shell)) .dashboard-module-icon{width:48px;height:48px;border:1px solid #e7ce9e1c;background:#e7ce9e12}body:not(:has(.dashboard-shell)) .dashboard-module-card h3{font-size:1rem;font-weight:600;line-height:1.45}body:not(:has(.dashboard-shell)) .dashboard-module-arrow{position:absolute;right:1.4rem;bottom:1.25rem;font-size:1rem!important;color:#b9a476}
body:not(:has(.dashboard-shell)) .app-greeting{padding:.6rem 0 1rem;gap:1.1rem}body:not(:has(.dashboard-shell)) .app-greeting .profile-avatar{height:72px;width:72px;border-color:#e6ce9a}.member-summary{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.6rem!important;border-radius:22px!important}.member-summary-main{display:flex;align-items:center;gap:1rem}.member-summary-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#e6ce9a18;color:#ead29c;font-size:1.35rem;flex-shrink:0}.member-summary-label{font-size:.75rem;color:#b9adc3;margin:0 0 .2rem}.member-summary h2{font-size:1.15rem;margin:0 0 .3rem}.member-summary-main .muted{font-size:.8rem}.member-summary-actions{display:flex;gap:.6rem;flex-wrap:wrap}.member-summary-actions .btn{font-size:.8rem}
body:not(:has(.dashboard-shell)) .form-control{border-radius:12px;min-height:46px}body:not(:has(.dashboard-shell)) .form-label{font-size:.86rem;color:#e8dfed}body:not(:has(.dashboard-shell)) .btn{font-weight:600}body:not(:has(.dashboard-shell)) footer.container{border-color:#e9d4a018;color:#9e93a8!important}
@media(max-width:767.98px){body:not(:has(.dashboard-shell)) .hero{min-height:0;margin:.5rem 0 3rem;padding:2.5rem 1.5rem 2rem;border-radius:24px}.hero-content{max-width:100%}.hero h1{font-size:clamp(2.35rem,10.5vw,3.25rem)}.hero .lead{font-size:.9rem;max-width:85%;margin:1rem 0 1.5rem}.hero-art{width:195px;height:195px;right:-80px;top:28%;opacity:.4}.orbit-middle{inset:18px}.orbit-inner{inset:40px}.hero-moon{font-size:6rem}.hero-art-label{display:none}.hero-note{margin-top:1rem}.member-summary{align-items:flex-start;flex-direction:column;padding:1.2rem!important}.member-summary-actions{width:100%}.member-summary-actions .btn{flex:1;text-align:center}.app-greeting h1{font-size:1.4rem}.dashboard-module-card h3{font-size:.92rem!important}body:not(:has(.dashboard-shell)) .dashboard-module-card{padding:1.15rem;min-height:152px}.dashboard-module-icon{width:42px!important;height:42px!important}.app-bottom-nav{border-radius:18px 18px 0 0;box-shadow:0 -8px 30px #0003}}
@media(prefers-reduced-motion:reduce){.orbit-middle{animation:none}.dashboard-module-card{transition:none}}
.onboarding-card{max-width:520px;margin:2rem auto 4rem;padding:clamp(1.5rem,4vw,2.5rem);border:1px solid #e7ce9e28;border-radius:24px;background:linear-gradient(145deg,#302340,#21192d);box-shadow:0 20px 50px #0003}.onboarding-card h1{font-size:clamp(1.55rem,4vw,2rem)}.onboarding-icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:1.25rem;border-radius:18px;background:#e7ce9e18;color:#e9d4a0;font-size:1.5rem}.onboarding-form{margin-top:1.5rem}.onboarding-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.83rem;color:#d8cede}.onboarding-consent input{margin-top:.25rem;accent-color:#e9d4a0}.birth-time-editor{display:flex;gap:.6rem;max-width:360px}.birth-time-editor .btn{white-space:nowrap}@media(max-width:767.98px){.onboarding-card{margin:.5rem auto 2rem}}
.vehicle-result-total{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0;padding:1rem 1.2rem;border:1px solid #e9d4a040;border-radius:16px;background:#e9d4a012}.vehicle-result-total span{color:#e5d4ae}.vehicle-result-total strong{font-size:2rem;line-height:1;color:#f1dba8}.vehicle-history-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.vehicle-history-actions{display:flex;gap:.5rem;align-items:center}.vehicle-history-actions form{margin:0}@media(max-width:480px){.vehicle-history-row{align-items:flex-start;flex-direction:column}.vehicle-history-actions{width:100%}}
/* Bright purple and gold member theme */
body:not(:has(.dashboard-shell)){--gold:#ffdc78;--front-gold:#ffdc78;--muted:#e2d9f4;--front-muted:#e2d9f4;--line:rgba(255,232,167,.25);background:radial-gradient(ellipse at 85% 0,#9871db 0,transparent 38%),radial-gradient(ellipse at 0 45%,#603aa5 0,transparent 42%),#382260;color:#fff}
body:not(:has(.dashboard-shell)) .navbar{background:rgba(67,39,107,.88);border-color:#ffffff24}
body:not(:has(.dashboard-shell)) .brand,body:not(:has(.dashboard-shell)) .main-nav-links a:hover{color:#ffe5a0}
body:not(:has(.dashboard-shell)) .main-nav-links a{color:#f2eafc}
body:not(:has(.dashboard-shell)) .muted,body:not(:has(.dashboard-shell)) .lead{color:#e2d9f4}
body:not(:has(.dashboard-shell)) .eyebrow,body:not(:has(.dashboard-shell)) .hero-kicker{color:#ffe09a}
body:not(:has(.dashboard-shell)) .hero{background:radial-gradient(circle at 77% 46%,#d0a7ff80 0,transparent 29%),linear-gradient(120deg,#8354c1 0%,#6841a5 58%,#7752b2 100%);border-color:#ffe5ac55;box-shadow:0 18px 46px #28144940}
body:not(:has(.dashboard-shell)) .hero h1 span{background:linear-gradient(90deg,#fff3bf,#ffd365);background-clip:text;-webkit-background-clip:text;color:transparent}
body:not(:has(.dashboard-shell)) .hero .lead{color:#f0e9ff}body:not(:has(.dashboard-shell)) .hero-note{color:#efe4fc}body:not(:has(.dashboard-shell)) .hero-note i{color:#ffe08a}
body:not(:has(.dashboard-shell)) .hero-moon{color:#ffefbd;text-shadow:0 0 45px #fff1bd80}body:not(:has(.dashboard-shell)) .orbit{border-color:#fff1be70}body:not(:has(.dashboard-shell)) .hero-star,body:not(:has(.dashboard-shell)) .hero-art-label{color:#fff0bf}
body:not(:has(.dashboard-shell)) .panel,body:not(:has(.dashboard-shell)) .module-card,body:not(:has(.dashboard-shell)) .onboarding-card{background:linear-gradient(145deg,#7450ad,#5a388f);border-color:#ffe5ac45;box-shadow:0 12px 30px #23114335;color:#fff}
body:not(:has(.dashboard-shell)) .dashboard-module-card:hover{background:linear-gradient(145deg,#8961c1,#69459d);border-color:#ffe9ad}
body:not(:has(.dashboard-shell)) .dashboard-module-icon,body:not(:has(.dashboard-shell)) .member-summary-icon,body:not(:has(.dashboard-shell)) .onboarding-icon{background:#ffe29a22;border-color:#ffe5ac45;color:#ffe7a8}
body:not(:has(.dashboard-shell)) .dashboard-module-arrow,body:not(:has(.dashboard-shell)) .star{color:#ffe29a}
body:not(:has(.dashboard-shell)) .member-summary-label,body:not(:has(.dashboard-shell)) .member-summary-main .muted{color:#e8dcf6}
body:not(:has(.dashboard-shell)) .btn-gold{background:linear-gradient(135deg,#fff0b2,#ffce62);color:#35215c;border:0;box-shadow:0 5px 16px #24113f30}
body:not(:has(.dashboard-shell)) .btn-gold:hover{background:#fff0b2;color:#35215c}
body:not(:has(.dashboard-shell)) .btn-outline-light{color:#fff;border-color:#ffffffaa}body:not(:has(.dashboard-shell)) .btn-outline-light:hover{background:#fff;color:#523187}
body:not(:has(.dashboard-shell)) .form-control,body:not(:has(.dashboard-shell)) select.form-control{background:#43276e;color:#fff;border-color:#d4bce8}body:not(:has(.dashboard-shell)) .form-control:focus{background:#4b2d79;color:#fff;border-color:#ffe19a;box-shadow:0 0 0 .2rem #ffe19a30}body:not(:has(.dashboard-shell)) .form-control::placeholder{color:#d1c0df}
body:not(:has(.dashboard-shell)) .app-bottom-nav{background:rgba(72,43,112,.97);border-color:#ffe5ac55}body:not(:has(.dashboard-shell)) .app-nav-item{color:#dfd2ee}body:not(:has(.dashboard-shell)) .app-nav-item.is-active{color:#ffe18a}
body:not(:has(.dashboard-shell)) .vehicle-result-total{background:#ffdf8b20;border-color:#ffdf8b70}body:not(:has(.dashboard-shell)) .vehicle-result-total span{color:#fff0c5}body:not(:has(.dashboard-shell)) .vehicle-result-total strong{color:#ffe393}
body:not(:has(.dashboard-shell)) footer.container{border-color:#ffffff30;color:#e0d4ed!important}
/* Taksa member form */
.taksa-page{max-width:760px;margin:0 auto 3rem}.taksa-back{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;color:#eee3fb;margin-bottom:1.75rem}.taksa-intro{text-align:center;max-width:500px;margin:0 auto 1.75rem}.taksa-intro-icon{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 1rem;border-radius:20px;background:#ffe6a026;border:1px solid #ffe6a052;color:#ffe5a0;font-size:1.5rem}.taksa-intro .eyebrow{margin-bottom:.4rem}.taksa-intro h1{font-size:clamp(1.9rem,5vw,2.5rem);font-weight:700}.taksa-intro>p:last-child{color:#e4d8f3;line-height:1.7;font-size:.9rem}.taksa-form-card{padding:clamp(1.25rem,4vw,2rem)!important;border-radius:24px!important}.taksa-step{padding-bottom:1.6rem;margin-bottom:1.6rem;border-bottom:1px solid #ffffff25}.taksa-step-title{display:flex;gap:.85rem;align-items:flex-start;margin-bottom:1.25rem}.taksa-step-title>span{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:12px;background:#ffe39a;color:#4b2b77;font-weight:700}.taksa-step-title h2{font-size:1.05rem;font-weight:700;margin:.05rem 0 .25rem}.taksa-step-title p{margin:0;color:#e3d6f2;font-size:.78rem}.taksa-form-card .form-label{font-weight:600;font-size:.83rem}.taksa-form-card .taksa-input{min-height:50px}.taksa-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.taksa-optional{font-weight:400;font-size:.73rem;color:#e2d6f1}.taksa-help{display:flex;gap:.6rem;padding:.8rem 1rem;margin-top:1rem;background:#ffffff12;border:1px solid #ffffff1c;border-radius:12px;color:#f1e8fb;font-size:.78rem;line-height:1.6}.taksa-help i{color:#ffe4a1}.taksa-hint{font-size:.76rem;color:#e2d6f1;margin:.55rem 0 0;line-height:1.65}.taksa-hint a{color:#ffe5a0;text-decoration:underline}.taksa-advanced{padding:0 0 1.3rem;border-bottom:1px solid #ffffff25}.taksa-advanced summary{font-size:.88rem;color:#fff;cursor:pointer}.taksa-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.8rem;color:#f1e9fa;margin-top:1.4rem}.taksa-consent input{margin-top:.22rem;accent-color:#ffe39a}.taksa-submit{width:100%;margin-top:1.25rem;min-height:52px}.taksa-submit i{margin-left:.4rem}.taksa-privacy{text-align:center;color:#e1d4ed;font-size:.72rem;margin:1rem 0 0}.taksa-disclaimer{text-align:center;color:#e1d4ed;font-size:.75rem;line-height:1.6;margin:1.2rem 0}#taksa-manual-fields[hidden],#taksa-profile-fields[hidden],#taksa-planet-fields[hidden]{display:none!important}@media(max-width:575px){.taksa-page{margin-bottom:2rem}.taksa-back{margin-bottom:1.25rem}.taksa-intro{margin-bottom:1.25rem}.taksa-date-grid{grid-template-columns:1fr;gap:0}.taksa-form-card{padding:1.25rem!important}.taksa-step{padding-bottom:1.3rem;margin-bottom:1.3rem}}
/* Taksa results */
.taksa-result{max-width:1100px;margin:3rem auto 0;padding:clamp(1.25rem,4vw,2.5rem);background:linear-gradient(145deg,#7450ad,#5a388f);border:1px solid #ffe5ac45;border-radius:26px;box-shadow:0 18px 45px #25133e35}.taksa-result-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.taksa-result-heading .eyebrow{margin-bottom:.4rem}.taksa-result-heading h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:.4rem}.taksa-result-heading p:not(.eyebrow){font-size:.83rem;color:#e7dbf3;margin:0}.taksa-result-star,.taksa-house-icon{display:grid;place-items:center;flex-shrink:0;color:#ffe1a0;background:#ffe1a01c;border:1px solid #ffe1a02a}.taksa-result-star{width:50px;height:50px;border-radius:16px;font-size:1.3rem}.taksa-chart-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.taksa-house{padding:1rem;background:#ffffff0c;border:1px solid #ffffff21;border-radius:16px}.taksa-house-caution{background:#ffe0a017;border-color:#ffe0a045}.taksa-house-icon{width:34px;height:34px;border-radius:11px;margin-bottom:.8rem}.taksa-house-caption{font-size:.65rem;color:#e6d6ef}.taksa-house h3{font-size:1rem;margin:.25rem 0 .35rem}.taksa-house p{font-size:.78rem;color:#f7e2aa;margin:0}.taksa-initial{display:flex;align-items:center;gap:.85rem;padding:1rem;margin-top:1.2rem;border-radius:16px;background:#ffffff12}.taksa-initial-char{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#ffe3a2;color:#4a2a6e;font-size:1.4rem;font-weight:700}.taksa-initial span:not(.taksa-initial-char){display:block;color:#e2d5ed;font-size:.72rem}.taksa-initial strong{display:block;font-size:.92rem;margin-top:.15rem}.taksa-breakdown{margin-top:1.8rem}.taksa-breakdown h3{font-size:1.05rem;margin-bottom:.35rem}.taksa-breakdown>p{font-size:.78rem;color:#e2d5ed}.taksa-result-table{--bs-table-bg:transparent;--bs-table-color:#fff;--bs-table-border-color:#ffffff24;min-width:520px;font-size:.84rem}.taksa-result-table th{color:#e7d7f3;font-size:.75rem;font-weight:500}.taksa-result-table td,.taksa-result-table th{padding:.8rem .65rem}.taksa-result-note{display:flex;gap:.8rem;margin-top:1.3rem;padding:1rem;border:1px solid #ffe1a040;border-radius:14px;background:#ffe1a012;font-size:.84rem}.taksa-result-note i{color:#ffe1a0}.taksa-result-note p{margin:.25rem 0 0;color:#f4e8fa}.taksa-exclusions,.taksa-source{margin:1rem 0 0;color:#e5d8ee;font-size:.75rem}.taksa-source a{color:#ffe4a3;text-decoration:underline}.taksa-exclusions p{margin:.5rem 0}.taksa-meanings{max-width:1100px;margin:2rem auto}.taksa-meaning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.taksa-meaning{margin:0!important}.taksa-meaning-label{font-size:.72rem;color:#ffe4a3}.taksa-meaning h3{font-size:1rem;margin:.45rem 0 .65rem}.taksa-meaning p{font-size:.82rem;line-height:1.7;color:#f0e6f7}.taksa-meaning strong{font-size:.75rem;color:#ffe4a3}@media(max-width:767.98px){.taksa-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.taksa-meaning-grid{grid-template-columns:1fr}.taksa-result{margin-top:2rem}.taksa-house{padding:.9rem}}
/* Shared astrology service layout */
.service-page{max-width:760px;margin:0 auto 2.5rem}.service-page-wide{max-width:1100px}.service-page .taksa-form-card{margin-top:0}.service-page .taksa-step:last-of-type{margin-bottom:0}.service-page .taksa-submit{min-height:52px}.service-page .taksa-intro h1{font-size:clamp(1.8rem,5vw,2.5rem)}body:not(:has(.dashboard-shell)) main.container>h2.mt-5{max-width:1100px;margin-left:auto;margin-right:auto}body:not(:has(.dashboard-shell)) main.container>.panel{max-width:1100px;margin-left:auto;margin-right:auto}body:not(:has(.dashboard-shell)) main.container>.panel h2{font-size:1.2rem}body:not(:has(.dashboard-shell)) .table-dark{--bs-table-bg:transparent;--bs-table-color:#fff;--bs-table-border-color:#ffffff30;--bs-table-striped-bg:#ffffff0a;--bs-table-striped-color:#fff}body:not(:has(.dashboard-shell)) .table-dark th{color:#efe1fa;font-size:.78rem}body:not(:has(.dashboard-shell)) .table-dark td,body:not(:has(.dashboard-shell)) .table-dark th{padding:.8rem .65rem}body:not(:has(.dashboard-shell)) .badge.text-bg-secondary{background:#ffe6a025!important;color:#fff1c6!important;border:1px solid #ffe6a03a;padding:.55rem .7rem;border-radius:10px;font-weight:600}@media(max-width:575px){.service-page{margin-bottom:2rem}.service-page .taksa-intro{margin-bottom:1.25rem}}
/* Match member result tables to the purple and gold theme. */
body:not(:has(.dashboard-shell)) .taksa-result-table,body:not(:has(.dashboard-shell)) .table-dark{--bs-table-color:#fff;--bs-table-bg:transparent;--bs-table-border-color:rgba(255,255,255,.2);--bs-table-striped-color:#fff;--bs-table-striped-bg:rgba(255,255,255,.035);--bs-table-hover-color:#fff;--bs-table-hover-bg:rgba(255,255,255,.08);color:#fff;background:transparent;border-color:rgba(255,255,255,.2)}
body:not(:has(.dashboard-shell)) .taksa-result-table>:not(caption)>*>*,body:not(:has(.dashboard-shell)) .table-dark>:not(caption)>*>*{color:#fff;background-color:transparent;box-shadow:none;border-bottom-color:rgba(255,255,255,.2)}
body:not(:has(.dashboard-shell)) .taksa-result-table thead th,body:not(:has(.dashboard-shell)) .table-dark thead th{background:rgba(53,30,92,.45);color:#ffe9b1;font-weight:600}body:not(:has(.dashboard-shell)) .taksa-result-table tbody tr:hover>*,body:not(:has(.dashboard-shell)) .table-dark tbody tr:hover>*{background:rgba(255,255,255,.06)}
/* Phone total interpretation */
body:not(:has(.dashboard-shell)) .phone-sum-reading{position:relative;overflow:hidden;padding:clamp(1.4rem,4vw,2.2rem);border:1px solid #ffe49b80;border-radius:24px;background:radial-gradient(circle at 92% 4%,#f8d77b2c,transparent 30%),linear-gradient(135deg,#8058bd,#58348b);box-shadow:0 18px 45px #2c154f55}
.phone-sum-reading-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.phone-sum-kicker{display:flex;align-items:center;gap:.45rem;color:#ffe8ad;font-size:.72rem;font-weight:700;letter-spacing:.04em;margin:0 0 .45rem}.phone-sum-reading h2{font-size:clamp(1.3rem,3vw,1.7rem);margin:0}.phone-sum-source{font-size:.73rem;color:#e8dcf3;margin:.45rem 0 0}.phone-sum-number{display:grid;place-items:center;width:78px;height:78px;flex-shrink:0;border-radius:22px;background:linear-gradient(145deg,#fff0bd,#ffcf6d);color:#54327d;font-size:2.4rem;font-weight:700;box-shadow:0 8px 22px #2d16494d}.phone-sum-main{padding:1.35rem 0;margin-top:1.25rem;border-top:1px solid #ffe8ad35}.phone-sum-main h3{font-size:1.2rem;font-weight:700;margin:0 0 .6rem;color:#fff1c9}.phone-sum-main p{margin:0;color:#fff;line-height:1.8}.phone-sum-insights{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.phone-sum-insights>div{padding:1rem;border-radius:14px;background:#ffffff13;border:1px solid #ffffff20}.phone-sum-insights span{display:block;color:#ffe5a6;font-size:.78rem;font-weight:700;margin-bottom:.4rem}.phone-sum-insights p,.phone-sum-empty{margin:0;color:#fff;line-height:1.7;font-size:.88rem}.phone-sum-empty{margin-top:1.5rem}@media(max-width:575px){.phone-sum-number{width:62px;height:62px;border-radius:18px;font-size:1.9rem}.phone-sum-insights{grid-template-columns:1fr}}
.site-logo{display:block;width:auto;max-width:160px;height:42px;object-fit:contain;object-position:left center}@media(max-width:767.98px){.site-logo{height:36px;max-width:138px}}
/* About page */
.about-page{max-width:1100px;margin:0 auto 4rem}.about-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(1.75rem,5vw,4rem);border:1px solid #ffe5ac55;border-radius:28px;background:radial-gradient(circle at 85% 40%,#e3bcff5c,transparent 28%),linear-gradient(120deg,#8354c1,#5f399c)}.about-hero-content{max-width:640px;position:relative;z-index:1}.about-hero h1{font-size:clamp(2.1rem,5vw,3.7rem);font-weight:700;line-height:1.3;letter-spacing:-.025em}.about-hero h1 span{color:#ffe3a0}.about-hero-content>p:not(.eyebrow){max-width:520px;color:#f2eaff;line-height:1.9;margin:1.2rem 0 1.6rem}.about-hero-mark{display:grid;place-items:center;flex:0 0 190px;height:190px;border:1px solid #ffeab85c;border-radius:50%;color:#ffe5a0;background:#ffffff12;font-size:4.8rem}.about-section{margin-top:4rem}.about-section-heading{max-width:620px;margin-bottom:1.4rem}.about-section-heading h2,.about-cta h2{font-size:clamp(1.45rem,3vw,2rem)}.about-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.about-card{padding:1.5rem;border:1px solid #ffe5ac45;border-radius:20px;background:linear-gradient(145deg,#7450ad,#5a388f)}.about-card>span{display:grid;place-items:center;width:46px;height:46px;margin-bottom:1.2rem;border-radius:14px;background:#ffe29a22;color:#ffe7a8;font-size:1.2rem}.about-card h3{font-size:1rem;margin-bottom:.6rem}.about-card p{font-size:.85rem;color:#f1e9fa;line-height:1.8;margin:0}.about-note{display:flex;gap:.9rem;margin-top:2rem;padding:1.4rem;border:1px solid #ffe5ac40;border-radius:18px;background:#ffffff10}.about-note>i{color:#ffe5a0;font-size:1.25rem}.about-note h2{font-size:1rem}.about-note p{font-size:.84rem;color:#eee3f8;line-height:1.8;margin:0}.about-cta{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:1.6rem;border-radius:20px;background:#ffffff12;border:1px solid #ffe5ac35}.about-cta p:not(.eyebrow){color:#eee3f8;margin:0;font-size:.84rem}.front-footer{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.front-footer a{color:#ffe5a0}@media(max-width:767.98px){.about-hero{padding:1.75rem}.about-hero-mark{position:absolute;right:-55px;top:20px;width:150px;height:150px;opacity:.35}.about-section{margin-top:2.5rem}.about-grid{grid-template-columns:1fr}.about-cta{align-items:flex-start;flex-direction:column}.about-cta .btn{width:100%}}
/* Terms page */
.terms-page{max-width:860px;margin:0 auto 4rem}.terms-header{text-align:center;max-width:600px;margin:0 auto 2rem}.terms-header h1{font-size:clamp(1.9rem,5vw,2.7rem);font-weight:700}.terms-header>p:last-child{color:#e7dbf3;line-height:1.7}.terms-content{padding:clamp(1.4rem,4vw,2.75rem)!important;border-radius:24px!important}.terms-content section+section{padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid #ffffff24}.terms-content h2{font-size:1.05rem;font-weight:700;color:#ffe4a1;margin-bottom:.7rem}.terms-content p{font-size:.9rem;line-height:1.9;color:#f5effa;margin-bottom:.75rem}.terms-content p:last-child{margin-bottom:0}.front-footer-links{display:flex;gap:1.25rem;flex-wrap:wrap}@media(max-width:575px){.terms-page{margin-bottom:2rem}.terms-header{margin-bottom:1.4rem}.terms-content{padding:1.25rem!important}.terms-content p{font-size:.85rem}}
