@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--ink:#20213a;--muted:#72748a;--gold:#bd9554;--gold2:#e3c58f;--navy:#17172d;--paper:#fbfaf7;--line:#e9e5dc;--white:#fff;--lav:#f0edf8}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin:auto}
.site-header{height:78px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.3px;font-size:17px}.brand small{display:block;font-size:9px;letter-spacing:2.5px;color:var(--gold);line-height:1.2}.brand-mark{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold2);font-size:22px}.main-nav{display:flex;align-items:center;gap:25px;font-size:13px;color:#4e5065}.main-nav a:hover{color:var(--gold)}.nav-premium{border:1px solid var(--gold);padding:8px 14px;border-radius:30px;color:#8b682f!important}.menu-toggle{display:none;background:none;border:0;font-size:25px;color:var(--ink)}
.hero{background:radial-gradient(circle at 80% 42%,#393453 0,#20203b 35%,#17172d 75%);color:white;overflow:hidden;position:relative}.hero-grid{min-height:550px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:30px;padding-top:50px;padding-bottom:55px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.2px;color:var(--gold);display:block;margin-bottom:14px}.hero h1{font:600 clamp(42px,5.2vw,66px)/1.12 'Playfair Display',serif;letter-spacing:-1.4px;margin:0 0 22px}.hero h1 em,.guidance-band h2 em{color:var(--gold2);font-weight:500}.hero-lead{font-size:16px;line-height:1.8;color:#d1cfdd;max-width:550px}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:16px;padding:13px 21px;border-radius:4px;font-weight:600;font-size:13px;transition:.2s}.btn-primary{background:var(--gold2);color:#27223a}.btn-primary:hover{background:#f0d9ae;transform:translateY(-2px)}.btn-outline{border:1px solid #77738b;color:white}.btn-outline:hover{border-color:var(--gold2)}.hero-note{margin-top:22px;color:#c0bdce;font-size:11px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#9dc5a4;margin-right:8px}.hero-art{height:410px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid rgba(227,197,143,.22);border-radius:50%;transform:rotate(-25deg)}.orbit-one{width:390px;height:300px}.orbit-two{width:300px;height:390px;transform:rotate(35deg)}.zodiac-wheel{width:270px;height:270px;border:1px solid rgba(227,197,143,.6);border-radius:50%;display:grid;place-items:center;color:var(--gold2);font-size:75px;position:relative;box-shadow:0 0 70px rgba(189,149,84,.12),inset 0 0 50px rgba(189,149,84,.08)}.zodiac-wheel:before,.zodiac-wheel:after{content:"";position:absolute;border:1px dashed rgba(227,197,143,.45);border-radius:50%;inset:17px}.zodiac-wheel:after{inset:48px}.zodiac-wheel span{position:absolute;top:27px;left:48px;font-size:27px}.zodiac-wheel b{position:absolute;right:33px;top:70px;font-size:32px}.zodiac-wheel i{position:absolute;bottom:35px;left:50px;font-size:30px;font-style:normal}.floating-card{position:absolute;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px);border-radius:7px;padding:13px 17px;color:var(--gold2);font-size:19px;box-shadow:0 10px 40px #10102055}.floating-card span{font-size:9px;letter-spacing:1.4px;color:#eee}.card-top{top:44px;right:0}.card-bottom{bottom:45px;left:0;display:flex;align-items:center;gap:12px}.card-bottom strong,.card-bottom small{display:block}.card-bottom strong{font-size:12px;color:white}.card-bottom small{font-size:10px;color:#cbc8d8}.mini-star{font-size:24px!important;color:var(--gold2)!important}
.trust-strip{background:#fff;border-bottom:1px solid var(--line)}.trust-items{display:flex;justify-content:space-between;gap:20px;padding:18px 0;color:#777487;font-size:12px;flex-wrap:wrap}.trust-items span:first-letter{color:var(--gold)}
.section{padding-top:82px;padding-bottom:82px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-heading h2,.guidance-band h2{font:600 36px/1.2 'Playfair Display',serif;margin:0}.section-heading p{max-width:390px;color:var(--muted);font-size:13px;margin:0 0 4px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature-card{min-height:245px;background:#fff;border:1px solid var(--line);border-radius:7px;padding:25px;display:flex;flex-direction:column;align-items:flex-start;transition:.25s}.feature-card:hover,.premium-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #29213d0c;border-color:#d9c49f}.feature-large{background:var(--lav);border-color:#e3dcef}.feature-icon{font-size:29px;color:var(--gold);margin-bottom:14px}.card-kicker{font-size:9px;letter-spacing:1.8px;color:#9a8055;font-weight:700}.feature-card h3,.premium-card h3{font:600 22px 'Playfair Display',serif;margin:7px 0}.feature-card p,.premium-card p{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 18px}.card-link,.premium-card a{font-size:11px;font-weight:700;color:#96713a;margin-top:auto}
.guidance-band{background:var(--navy);color:white;overflow:hidden}.guidance-grid{min-height:350px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding-top:55px;padding-bottom:55px}.guidance-band h2{font-size:39px}.guidance-band p{color:#c5c3d0;max-width:460px;font-size:13px;margin:18px 0 24px}.btn-light{background:#fff;color:var(--navy)}.guidance-visual{height:250px;position:relative;display:grid;place-items:center}.profile-orbit{height:210px;width:210px;border:1px solid #b9975b88;border-radius:50%;display:grid;place-items:center;color:var(--gold2);font-size:65px;position:relative}.profile-orbit:before{content:"";position:absolute;inset:20px;border:1px dashed #b9975b77;border-radius:50%}.profile-orbit span{position:absolute;top:10px;right:35px;font-size:24px}.profile-orbit b{position:absolute;bottom:25px;left:28px;font-size:26px}.profile-chip{position:absolute;bottom:15px;right:5%;padding:12px 17px;border-radius:5px;background:#ffffff17;border:1px solid #ffffff30;font-size:11px}
.premium-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.premium-card{background:white;border:1px solid var(--line);border-radius:7px;padding:25px;min-height:220px;display:flex;flex-direction:column;transition:.25s}.premium-symbol{font-size:25px;color:var(--gold)}.disclaimer{border-top:1px solid var(--line);padding-top:22px;padding-bottom:35px;color:var(--muted);font-size:11px}.disclaimer strong{color:var(--ink)}.disclaimer p{margin:5px 0}
.site-footer{background:#111121;color:#c6c4d1;padding:48px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px}.footer-brand{color:white}.footer-grid p{max-width:300px;color:#9897a8;font-size:11px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px;font-size:11px}.footer-grid strong{color:#fff;margin-bottom:5px}.footer-grid a:hover{color:var(--gold2)}.footer-bottom{border-top:1px solid #ffffff1b;margin-top:35px;padding-top:17px;color:#888799;font-size:10px}
.form-wrap{max-width:480px;margin:65px auto;padding:32px;background:#fff;border:1px solid var(--line);border-radius:8px}.form-wrap h1{font:600 32px 'Playfair Display',serif;margin:0 0 8px}.form-wrap p{color:var(--muted);font-size:13px}.form-group{margin:17px 0}.form-group label{display:block;font-size:12px;font-weight:600;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid #dedbe3;border-radius:4px;font:inherit;background:#fff}.form-group input:focus{outline:2px solid #e8d8b9;border-color:var(--gold)}.btn-block{width:100%;justify-content:center;border:0;cursor:pointer}.alert{padding:12px 14px;border-radius:5px;background:#f2eee5;color:#65512e;font-size:12px;margin:15px 0}.alert.error{background:#f9eaea;color:#8b3333}.dashboard{padding:55px 0 80px}.dashboard-panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:25px;margin-top:20px}.dashboard-links{display:flex;gap:12px;flex-wrap:wrap}.dashboard-links a{padding:12px 15px;background:#f4f1eb;border-radius:5px;font-size:12px}.admin-shell{display:grid;grid-template-columns:230px 1fr;min-height:75vh}.admin-side{background:#1b1b31;padding:25px 16px;color:white}.admin-side a{display:block;padding:10px;border-radius:4px;color:#d5d3df;font-size:12px}.admin-side a:hover{background:#ffffff15}.admin-main{padding:35px}.admin-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stat-card{background:#fff;border:1px solid var(--line);padding:20px;border-radius:7px}.stat-card strong{font-size:25px;display:block}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:12px}th{background:#f7f5f0}
@media(max-width:900px){.main-nav{gap:13px;font-size:11px}.hero-grid{grid-template-columns:1fr 1fr}.hero-art{transform:scale(.85)}.footer-grid{grid-template-columns:2fr 1fr 1fr}.footer-grid>div:last-child{display:none}}
@media(max-width:700px){.container{width:min(100% - 30px,560px)}.site-header{height:68px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:white;padding:15px 22px 22px;box-shadow:0 15px 20px #17172d12;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:11px 4px;border-bottom:1px solid var(--line);font-size:13px}.nav-premium{border:0;padding-left:4px}.hero-grid{grid-template-columns:1fr;padding-top:65px}.hero h1{font-size:46px}.hero-art{height:310px;transform:scale(.78);margin:-10px 0}.card-top{right:2%}.card-bottom{left:2%}.trust-items{justify-content:center;gap:12px 25px}.section{padding-top:58px;padding-bottom:58px}.section-heading{display:block}.section-heading p{margin-top:13px}.section-heading h2{font-size:31px}.feature-grid,.premium-grid{grid-template-columns:1fr}.feature-card{min-height:210px}.guidance-grid{grid-template-columns:1fr;gap:5px}.guidance-band h2{font-size:34px}.guidance-visual{height:220px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{display:flex}.admin-shell{grid-template-columns:1fr}.admin-side{display:flex;overflow:auto;gap:5px}.admin-side a{white-space:nowrap}.admin-main{padding:20px}.admin-cards{grid-template-columns:1fr}.form-wrap{margin:35px 15px;padding:24px}}

/* DesignGeneX Astrology — bright, youthful visual refresh */
:root{
  --ink:#30264f;
  --muted:#716b85;
  --gold:#f08a5d;
  --gold2:#ffbd69;
  --navy:#6c4bd8;
  --paper:#fffdfb;
  --line:#eee8f7;
  --white:#fff;
  --lav:#f4efff;
  --dgx-violet:#7655e8;
  --dgx-coral:#ff7b75;
  --dgx-mint:#41c9ae;
  --dgx-sun:#ffd166;
}
body{background:var(--paper);color:var(--ink)}
.site-header{background:rgba(255,255,255,.96);border-bottom-color:#eee8f7}
.brand-mark{background:linear-gradient(135deg,#8b6cf0,#ff8c83);color:#fff;box-shadow:0 6px 16px #8b6cf033}
.brand small{color:#8b6cf0}
.main-nav a:hover{color:var(--dgx-coral)}
.nav-premium{background:#fff3ee;border-color:#ffd0c5;color:#d65d63!important}
.hero{background:radial-gradient(circle at 82% 22%,#ffe2d8 0,transparent 29%),radial-gradient(circle at 68% 88%,#d9f8ef 0,transparent 31%),linear-gradient(115deg,#f4efff 0%,#fff4ed 53%,#effcf8 100%);color:var(--ink)}
.hero:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:#ffd16624;right:-130px;top:-160px;pointer-events:none}
.eyebrow{color:#8b6cf0}
.hero h1{color:#30264f}
.hero h1 em,.guidance-band h2 em{color:#e87573}
.hero-lead{color:#68617c}
.btn-primary{background:linear-gradient(135deg,#8b6cf0,#6e55d9);color:#fff;box-shadow:0 8px 20px #7655e833}
.btn-primary:hover{background:linear-gradient(135deg,#9b80f5,#765de3)}
.btn-outline{border:1px solid #b9a9ee;color:#5d48a9;background:#ffffff75}
.btn-outline:hover{border-color:#ff9188;background:#fff7f3}
.hero-note{color:#766f87}
.dot{background:#41c9ae}
.orbit{border-color:#b69df177}
.zodiac-wheel{border-color:#b69df1;color:#8b6cf0;box-shadow:0 0 70px #8b6cf022,inset 0 0 50px #ffbd6922}
.zodiac-wheel:before,.zodiac-wheel:after{border-color:#b69df177}
.floating-card{background:#ffffffd9;border:1px solid #ffffff;color:#7655d9;box-shadow:0 12px 35px #53427a1c}
.floating-card span{color:#766f87}
.card-bottom strong{color:#30264f}.card-bottom small{color:#766f87}.mini-star{color:#f08a5d!important}
.trust-strip{background:#fff;border-color:var(--line)}
.trust-items{color:#777087}.trust-items span:first-letter{color:#8b6cf0}
.section-heading h2{color:#30264f}
.feature-card{border-color:#eee8f7;box-shadow:0 7px 24px #5d477b08}
.feature-card:nth-child(3n+1){background:linear-gradient(145deg,#fff,#f6f1ff)}
.feature-card:nth-child(3n+2){background:linear-gradient(145deg,#fff,#fff3ed)}
.feature-card:nth-child(3n){background:linear-gradient(145deg,#fff,#effbf7)}
.feature-large{background:linear-gradient(145deg,#f1eaff,#fff0ed);border-color:#e7dcff}
.feature-icon{color:#8b6cf0}
.card-kicker{color:#e07870}
.card-link,.premium-card a{color:#7655d9}
.feature-card:hover,.premium-card:hover{box-shadow:0 16px 35px #6d55a51a;border-color:#d9c9ff}
.guidance-band{background:linear-gradient(115deg,#f0eaff 0%,#fff0e9 55%,#eafaf5 100%);color:var(--ink)}
.guidance-band h2{color:#30264f}
.guidance-band p{color:#6d6680}
.btn-light{background:#fff;color:#7655d9;border:1px solid #e6dcff;box-shadow:0 7px 18px #6d55a514}
.profile-orbit{border-color:#a88df0;color:#8b6cf0}
.profile-orbit:before{border-color:#ff9d8b}
.profile-chip{background:#ffffffc9;border:1px solid #fff;color:#665b7d;box-shadow:0 8px 25px #57417a12}
.premium-card{border-color:#eee8f7;box-shadow:0 7px 24px #5d477b08}
.premium-card:nth-child(3n+1){background:linear-gradient(145deg,#fff,#f4efff)}
.premium-card:nth-child(3n+2){background:linear-gradient(145deg,#fff,#fff1ec)}
.premium-card:nth-child(3n){background:linear-gradient(145deg,#fff,#effbf7)}
.premium-symbol{color:#ed8275}
.disclaimer{border-color:var(--line)}
.site-footer{background:linear-gradient(120deg,#f1edff,#fff2ed 58%,#eefaf6);color:#655d79}
.footer-brand{color:#30264f}.footer-grid p{color:#777087}.footer-grid strong{color:#30264f}.footer-grid a:hover{color:#e87573}.footer-bottom{border-color:#ded6ed;color:#827a94}
.form-wrap,.dashboard-panel,.stat-card{border-color:#eee8f7;box-shadow:0 10px 30px #5d477b0a}
.form-group input:focus{outline:2px solid #e6dcff;border-color:#8b6cf0}
.alert{background:#fff7df;color:#806222}.alert.error{background:#fff0ef;color:#a94444}
.dashboard-links a{background:#f3efff;color:#654bc0}.dashboard-links a:hover{background:#e9e1ff}
.admin-side{background:#f3efff;color:#30264f;border-right:1px solid #e7def8}
.admin-side a{color:#665b82}.admin-side a:hover{background:#e7def8;color:#563eb0}
th{background:#f5f1ff;color:#55458b}
@media(max-width:700px){.main-nav{background:#fff}.main-nav a{border-color:#eee8f7}}

/* Milestone 2: birth profile workspace */
.birth-page{padding:58px 0 85px}.birth-intro{text-align:center;max-width:760px;margin:0 auto 34px}.birth-intro h1{font:600 clamp(34px,4vw,50px)/1.12 'Playfair Display',serif;margin:0 0 14px;color:var(--ink)}.birth-intro h1 span{color:#8b6cf0;font-style:italic}.birth-intro>p{color:var(--muted);font-size:14px;line-height:1.8;margin:0 auto;max-width:650px}.birth-steps{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:23px;flex-wrap:wrap;color:#7655d9;font-size:11px;font-weight:700}.birth-steps i{height:1px;width:32px;background:#ded4fb}.birth-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.75fr);gap:22px;align-items:start}.birth-form-card,.birth-tip-card,.profile-card{background:#fff;border:1px solid #eee8f7;border-radius:16px;box-shadow:0 12px 34px #5d477b0b}.birth-form-card{padding:28px}.birth-card-heading,.saved-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.birth-card-heading h2,.saved-heading h2{font:600 27px 'Playfair Display',serif;margin:0;color:var(--ink)}.birth-card-heading .eyebrow,.saved-heading .eyebrow{margin-bottom:6px}.birth-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#f0eaff;color:#8b6cf0;font-size:23px}.birth-form{margin-top:20px}.birth-form .form-group{margin:13px 0}.birth-form .form-group label{font-size:12px;color:#42415b}.birth-form .form-group input,.birth-form .form-group select,.birth-form .form-group textarea{border-color:#e8e2f1;border-radius:9px;padding:12px 13px;color:#282842}.birth-form .form-group input:focus,.birth-form .form-group select:focus,.birth-form .form-group textarea:focus{outline:3px solid #eee8ff;border-color:#9b80f5}.birth-form .form-group small{display:block;color:#89869a;font-size:10px;margin-top:5px}.birth-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.birth-divider{border-top:1px solid #f0ebf7;margin:19px 0 8px;padding-top:16px;color:#8b6cf0;font-size:10px;font-weight:800;letter-spacing:1.7px}.birth-help{font-size:11px;line-height:1.6;color:#77758b;background:#f8f5ff;border-radius:9px;padding:11px 13px;margin:2px 0 15px}.birth-form textarea{resize:vertical}.birth-cancel{display:block;text-align:center;margin-top:12px;font-size:12px;color:#7655d9}.birth-side{display:grid;gap:14px}.birth-tip-card{padding:22px;background:linear-gradient(135deg,#f4efff,#fff)}.birth-tip-card.mint{background:linear-gradient(135deg,#eafaf5,#fff)}.birth-tip-card.peach{background:linear-gradient(135deg,#fff0eb,#fff)}.birth-tip-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#fff;color:#8b6cf0;font-size:22px;box-shadow:0 5px 15px #8b6cf018}.birth-tip-card h3{font:600 19px 'Playfair Display',serif;margin:13px 0 7px}.birth-tip-card p{font-size:12px;line-height:1.75;color:#77758b;margin:0}.saved-profiles{margin-top:50px}.saved-heading{margin-bottom:17px}.profile-count{font-size:11px;font-weight:700;color:#7655d9;background:#f1ebff;border-radius:20px;padding:8px 12px}.empty-profiles{text-align:center;padding:38px 20px;background:#fff;border:1px dashed #d9cef4;border-radius:14px}.empty-profiles>span{font-size:32px;color:#9b80f5}.empty-profiles h3{font:600 21px 'Playfair Display',serif;margin:8px 0}.empty-profiles p{font-size:12px;color:var(--muted)}.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.profile-card{padding:20px}.profile-card-top{display:flex;justify-content:space-between;align-items:center}.profile-avatar{width:38px;height:38px;border-radius:12px;background:#f0eaff;color:#8b6cf0;display:grid;place-items:center;font-size:20px}.profile-relation{font-size:10px;font-weight:700;color:#7655d9;background:#f6f1ff;padding:6px 9px;border-radius:20px}.profile-card h3{font:600 19px 'Playfair Display',serif;margin:13px 0 4px}.profile-card>p{font-size:11px;color:#858296;margin:0 0 14px}.profile-meta{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #f0ebf7;padding-top:12px;color:#68667e;font-size:10px}.profile-actions{display:flex;flex-direction:column;gap:8px;margin-top:15px}.profile-actions a{display:block;text-align:center;padding:9px;border-radius:8px;background:#8b6cf0;color:white;font-size:11px;font-weight:700}.profile-coming{text-align:center;color:#9a94aa;font-size:10px}.delete-profile-form{text-align:right;margin-top:8px}.delete-profile-form button{border:0;background:transparent;color:#c66d78;font-size:10px;cursor:pointer;padding:5px}.alert.success{background:#e9f9f2;color:#24785a}
@media(max-width:850px){.birth-layout{grid-template-columns:1fr}.birth-side{grid-template-columns:repeat(3,1fr)}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.birth-page{padding:38px 0 60px}.birth-form-card{padding:19px}.birth-two-col{grid-template-columns:1fr;gap:0}.birth-side{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}.birth-steps{gap:7px}.birth-steps i{width:15px}.birth-card-heading h2,.saved-heading h2{font-size:23px}}


/* Simple birthplace coordinate finder */
.birth-location-finder{margin:14px 0 8px;padding:16px;background:linear-gradient(135deg,#f6f1ff,#f0fbf8);border:1px solid #e8e0fb;border-radius:12px}
.birth-location-finder-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.birth-location-finder-head strong{display:block;color:#34304f;font-size:13px}
.birth-location-finder-head small{display:block;color:#77758b;font-size:11px;margin-top:4px}
.birth-location-finder .btn{padding:10px 15px;font-size:11px;white-space:nowrap}
.birth-location-finder .btn:disabled{opacity:.65;cursor:wait}
.birthplace-status{font-size:11px;color:#6f668b;margin-top:12px;line-height:1.5}
.birthplace-results{display:grid;gap:8px;margin-top:10px}
.birthplace-result{display:block;width:100%;text-align:left;padding:11px 13px;border:1px solid #e6def5;border-radius:9px;background:#fff;cursor:pointer;color:#393451}
.birthplace-result:hover,.birthplace-result:focus{border-color:#8b6cf0;background:#fbf9ff;outline:2px solid #eee8ff}
.birthplace-result strong{display:block;font-size:12px}
.birthplace-result small{display:block;margin-top:4px;font-size:10px;color:#858196;line-height:1.45}
.location-attribution{display:block;margin-top:10px;color:#8b879a;font-size:9px}
.birth-form .form-group input[readonly]{background:#faf9fd;color:#716b85;cursor:default}
@media(max-width:600px){.birth-location-finder-head{align-items:stretch}.birth-location-finder-head .btn{width:100%;justify-content:center}}

/* Milestone 2B – birth chart experience */
.profile-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.profile-chart-link{font-weight:700;color:#7454d6!important}
.chart-page{padding-top:46px;padding-bottom:76px}
.chart-page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}
.chart-page-heading h1{font:600 38px 'Playfair Display',serif;margin:8px 0}
.chart-page-heading h1 span{color:#8b6cf0}
.chart-page-heading p{color:var(--muted);font-size:13px;margin:0}
.chart-notice{background:#fff8df;border:1px solid #f5e4a7;color:#765c18;border-radius:12px;padding:14px 17px;font-size:12px;line-height:1.6;margin-bottom:20px}
.chart-loading{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#57418e}
.chart-loading small{color:var(--muted)}
.chart-loading-orbit{font-size:36px;color:#8b6cf0;animation:chartPulse 1.7s ease-in-out infinite}
@keyframes chartPulse{50%{transform:rotate(45deg) scale(1.15);opacity:.6}}
.chart-tabs{display:flex;gap:8px;padding:6px;background:#f5f0ff;border-radius:13px;width:max-content;max-width:100%;margin-bottom:20px}
.chart-tab{border:0;background:transparent;padding:11px 18px;border-radius:9px;color:#71658b;cursor:pointer;font-weight:600;font-size:12px}
.chart-tab.active{background:#fff;color:#6548c5;box-shadow:0 3px 12px #4e367414}
.chart-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:18px}
.chart-summary-card{background:linear-gradient(135deg,#f7f2ff,#f0fbf8);border:1px solid #eee6fb;border-radius:14px;padding:17px}
.chart-summary-card small{display:block;color:#817895;font-size:11px;margin-bottom:6px}
.chart-summary-card strong{font:600 20px 'Playfair Display',serif;color:#4d397e}
.chart-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:18px}
.chart-panel{background:#fff;border:1px solid #eee7f6;border-radius:17px;padding:22px;box-shadow:0 8px 28px #55427b08;margin-bottom:18px;min-width:0}
.chart-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.chart-panel-heading h2,.chart-explain h2{font:600 21px 'Playfair Display',serif;color:var(--heading);margin:5px 0 0}
.chart-pill{background:#f3edff;color:#7655ce;padding:7px 10px;border-radius:30px;font-size:10px;white-space:nowrap}
.chart-wheel{max-width:380px;margin:0 auto}
.chart-wheel svg{display:block;width:100%;height:auto}
.chart-caption{font-size:11px;color:var(--muted);text-align:center}
.chart-table-wrap{overflow-x:auto}
.chart-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}
.chart-table th{text-align:left;color:#9188a4;font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:10px 8px;border-bottom:1px solid #eee8f6}
.chart-table td{padding:11px 8px;border-bottom:1px solid #f2eef7;color:#554e68}
.planet-select{border:0;background:transparent;color:#6349b4;font-weight:600;font-size:12px;padding:0;cursor:pointer}
.planet-select:hover{text-decoration:underline}
.sign-glyph{color:#8b6cf0;font-size:16px;vertical-align:middle}
.chart-explain{background:linear-gradient(120deg,#fff,#fbf8ff)}
.chart-explain>p{font-size:12px;line-height:1.7;color:var(--muted)}
.planet-detail{background:#f4efff;border-radius:11px;padding:14px;color:#59418e;font-size:12px;line-height:1.6}
.planet-detail p{margin:5px 0;color:#655b7b}
.planet-detail small{color:#8a7ea8}
.chart-method-note{font-size:10px;color:#938ba2;line-height:1.6;padding:0 3px}
@media(max-width:850px){.chart-main-grid{grid-template-columns:1fr}.chart-wheel{max-width:340px}}
@media(max-width:600px){.chart-page{padding-top:28px}.chart-page-heading{align-items:flex-start;flex-direction:column}.chart-page-heading h1{font-size:30px}.chart-tabs{width:100%}.chart-tab{flex:1;padding:10px 8px;font-size:11px}.chart-summary-grid{gap:8px}.chart-summary-card{padding:12px}.chart-summary-card strong{font-size:16px}.chart-panel{padding:15px}.chart-panel-heading h2{font-size:18px}}
