:root {
	--hc-blue: #1557c0;
	--hc-blue-dark: #0d3f91;
	--hc-blue-bright: #2e70e8;
	--hc-blue-pale: #edf4ff;
	--hc-ink: #10213f;
	--hc-muted: #64738b;
	--hc-line: #dce6f4;
	--hc-bg: #f5f8fd;
	--hc-white: #fff;
	--hc-gold: #f3b63f;
	--hc-green: #17824b;
	--hc-red: #b44848;
}

body.hc-horoscope-page .entry-header .entry-title,
body.hc-horoscope-page .page-header .page-title,
body.hc-horoscope-page .entry-featured-image-url,
body.hc-horoscope-page .post-thumbnail { display: none !important; }
body.hc-horoscope-page .site-main,
body.hc-horoscope-page .content-area,
body.hc-horoscope-page article.page,
body.hc-horoscope-page .entry-content { max-width: none !important; width: 100% !important; padding-inline: 0 !important; }

.hc-horoscope-app,
.hc-horoscope-app *,
.hc-profile-astrology,
.hc-profile-astrology * { box-sizing: border-box; }

.hc-horoscope-app {
	position: relative;
	left: 50%;
	width: 100vw;
	margin-left: -50vw;
	padding: clamp(14px, 2.2vw, 28px) 20px clamp(48px, 6vw, 84px);
	overflow: hidden;
	background: radial-gradient(circle at 4% 4%, rgba(46,112,232,.10), transparent 25rem), radial-gradient(circle at 98% 42%, rgba(243,182,63,.12), transparent 23rem), var(--hc-bg);
	color: var(--hc-ink);
	font-family: Inter, "Noto Sans Devanagari", "Noto Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

.hc-horoscope-app button,
.hc-horoscope-app input { font: inherit; }
.hc-horoscope-app [hidden] { display: none !important; }
.hc-horo-shell { width: min(1180px, 100%); margin: 0 auto; }

.hc-horo-hero {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 245px;
	padding: clamp(28px, 3.7vw, 44px);
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.2);
	border-radius: 25px;
	background: linear-gradient(118deg, rgba(255,255,255,.08), transparent 40%), linear-gradient(135deg, var(--hc-blue-dark), var(--hc-blue-bright) 68%, #4d8df5);
	box-shadow: 0 26px 70px rgba(18,58,137,.22);
	color: #fff;
}
.hc-horo-hero::before { position:absolute; top:-190px; right:-95px; width:360px; height:360px; border:1px solid rgba(255,255,255,.16); border-radius:50%; box-shadow:0 0 0 65px rgba(255,255,255,.045),0 0 0 125px rgba(255,255,255,.025); content:""; }
.hc-horo-hero::after { position:absolute; right:18%; bottom:-125px; width:220px; height:220px; border-radius:50%; background:rgba(243,182,63,.15); content:""; }
.hc-horo-hero__content,
.hc-horo-action { position: relative; z-index: 2; }
.hc-horo-eyebrow,
.hc-horo-kicker { margin:0 0 10px; font-size:11px; font-weight:850; letter-spacing:.12em; line-height:1.2; text-transform:uppercase; }
.hc-horo-eyebrow { display:inline-flex; align-items:center; gap:9px; color:#dbe8ff; }
.hc-horo-eyebrow > span { width:8px; height:8px; border-radius:50%; background:var(--hc-gold); box-shadow:0 0 0 5px rgba(243,182,63,.16); }
.hc-horo-hero h1 { max-width:760px; margin:0; color:#fff !important; font-size:clamp(36px,4.4vw,54px); font-weight:850; line-height:1.02; letter-spacing:-.04em; }
.hc-horo-hero h1 small { display:block; margin-top:8px; color:#dce8ff; font-size:clamp(17px,1.8vw,22px); font-weight:650; letter-spacing:-.015em; }
.hc-horo-lead { max-width:690px; margin:14px 0 0; color:#edf4ff; font-size:clamp(13px,1.35vw,15px); }
.hc-horo-dates { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:17px; }
.hc-horo-date { display:inline-flex; min-height:34px; align-items:center; border:1px solid rgba(255,255,255,.22); border-radius:11px; background:rgba(255,255,255,.12); color:#fff; font-size:12px; font-weight:750; backdrop-filter:blur(8px); }
.hc-horo-date--bs { justify-content:center; min-width:220px; padding:3px 8px; overflow:hidden; }
.hc-horo-date--bs iframe { display:block; width:205px; height:28px; border:0; transform:translateX(12px); pointer-events:none; }
.hc-horo-date--muted { padding:7px 11px; color:#e3edff; font-size:11px; }
.hc-horo-action { display:inline-flex; align-items:center; gap:8px; min-height:41px; padding:8px 14px; border:1px solid rgba(255,255,255,.3); border-radius:12px; background:rgba(255,255,255,.14); color:#fff; cursor:pointer; backdrop-filter:blur(8px); }
.hc-horo-action:hover { background:rgba(255,255,255,.23); transform:translateY(-2px); }
.hc-horo-hero__stars span { position:absolute; z-index:1; color:rgba(255,255,255,.55); }
.hc-horo-hero__stars span:nth-child(1) { top:24%; right:30%; font-size:26px; }
.hc-horo-hero__stars span:nth-child(2) { top:18%; right:13%; color:rgba(243,182,63,.75); font-size:40px; }
.hc-horo-hero__stars span:nth-child(3) { right:24%; bottom:17%; font-size:19px; }

.hc-horo-ad { margin:26px 0; padding:10px; overflow:hidden; border:1px solid var(--hc-line); border-radius:17px; background:#fff; text-align:center; }
.hc-horo-section,
.hc-system-card,
.hc-reading-card,
.hc-accuracy-strip,
.hc-horo-explainer,
.hc-horo-faq { border:1px solid var(--hc-line); border-radius:24px; background:rgba(255,255,255,.97); box-shadow:0 15px 45px rgba(34,63,112,.07); }
.hc-horo-section { margin-top:28px; padding:clamp(24px,3.6vw,42px); }
.hc-horo-section__heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:26px; }
.hc-horo-section__heading h2,
.hc-accuracy-strip h2,
.hc-horo-explainer h2,
.hc-horo-faq h2 { margin:0; color:var(--hc-ink) !important; font-size:clamp(23px,3vw,34px); font-weight:830; line-height:1.2; letter-spacing:-.025em; }
.hc-horo-section__heading > div > p:last-child { margin:8px 0 0; color:var(--hc-muted); }
.hc-horo-kicker { color:var(--hc-blue); }
.hc-private-chip { flex:0 0 auto; padding:7px 11px; border:1px solid #c5d8f7; border-radius:999px; background:var(--hc-blue-pale); color:var(--hc-blue); font-size:11px; font-weight:800; }

.hc-birth-panel { position:relative; overflow:hidden; }
.hc-birth-panel::after { position:absolute; right:-70px; bottom:-90px; width:220px; height:220px; border-radius:50%; background:rgba(46,112,232,.045); content:""; pointer-events:none; }
.hc-birth-panel__tools { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; }
.hc-edit-birth,
.hc-minimize-birth { min-height:35px; padding:7px 12px; border:1px solid #bcd0f0; border-radius:10px; background:#fff; color:var(--hc-blue); font-size:10px; font-weight:800; cursor:pointer; }
.hc-edit-birth:hover,
.hc-minimize-birth:hover { border-color:var(--hc-blue); background:var(--hc-blue-pale); }
.hc-birth-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.hc-birth-summary { position:relative; z-index:1; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; }
.hc-birth-summary > div { display:grid; min-width:0; gap:3px; padding:12px 13px; border:1px solid #cfddf1; border-radius:13px; background:#f8fbff; }
.hc-birth-summary small { color:var(--hc-muted); font-size:9px; font-weight:750; text-transform:uppercase; }
.hc-birth-summary strong { overflow:hidden; color:var(--hc-ink); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.hc-birth-panel.is-collapsed { padding-block:18px; }
.hc-birth-panel.is-collapsed .hc-horo-section__heading { align-items:center; margin-bottom:12px; }
.hc-birth-panel.is-collapsed .hc-horo-section__heading > div > p:last-child,
.hc-birth-panel.is-collapsed .hc-birth-form { display:none; }
.hc-birth-panel.is-collapsed .hc-horo-section__heading h2 { font-size:20px; }
.hc-birth-panel.is-collapsed .hc-horo-kicker { margin-bottom:5px; }
.hc-birth-form { position:relative; z-index:1; }
.hc-form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.hc-form-grid label { display:flex; flex-direction:column; gap:7px; color:var(--hc-ink); font-size:12px; font-weight:800; }
.hc-form-grid label > span { margin-top:-5px; color:var(--hc-muted); font-size:10px; font-weight:600; }
.hc-form-grid input { width:100%; min-height:46px; padding:10px 12px; border:1px solid #cdd9ea; border-radius:12px; background:#fff; color:var(--hc-ink); outline:none; }
.hc-form-grid input:focus { border-color:var(--hc-blue-bright); box-shadow:0 0 0 3px rgba(46,112,232,.12); }
.hc-field-wide { grid-column:span 1; }
.hc-form-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:18px; padding-top:17px; border-top:1px solid var(--hc-line); }
.hc-form-footer p { max-width:720px; margin:0; color:var(--hc-muted); font-size:11px; }
.hc-horo-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 17px; border:0; border-radius:12px; background:var(--hc-blue); color:#fff; font-weight:800; cursor:pointer; transition:transform .18s ease,background .18s ease,opacity .18s ease; }
.hc-horo-button:hover:not(:disabled) { background:var(--hc-blue-dark); transform:translateY(-1px); }
.hc-horo-button:disabled { opacity:.55; cursor:wait; }
.hc-form-status { min-height:20px; margin:10px 0 -8px; color:var(--hc-green); font-size:11px; font-weight:750; }
.hc-form-status.is-error { color:var(--hc-red); }

.hc-system-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:28px; }
.hc-system-card { min-width:0; padding:24px; overflow:hidden; }
.hc-system-card > header { display:flex; align-items:center; gap:13px; padding-bottom:19px; border-bottom:1px solid var(--hc-line); }
.hc-system-card__icon { display:grid; flex:0 0 48px; width:48px; height:48px; place-items:center; border-radius:15px; background:#fff4d9; color:#a66d00; font-size:25px; }
.hc-system-card--rashi .hc-system-card__icon { background:var(--hc-blue-pale); color:var(--hc-blue); }
.hc-system-card header p { margin:0 0 2px; color:var(--hc-blue); font-size:10px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.hc-system-card header h2 { margin:0; color:var(--hc-ink) !important; font-size:23px; font-weight:830; line-height:1.2; }
.hc-system-card header small { color:var(--hc-muted); font-size:10px; }
.hc-change-sign { margin-left:auto; padding:7px 10px; border:1px solid #bfd1ef; border-radius:10px; background:#fff; color:var(--hc-blue); font-size:10px; font-weight:800; cursor:pointer; }
.hc-system-card__selection { display:flex; align-items:center; gap:11px; margin:18px 0; padding:11px 13px; border:1px solid #cbdcf7; border-radius:14px; background:var(--hc-blue-pale); }
.hc-system-card__selection > span { display:grid; flex:0 0 38px; width:38px; height:38px; place-items:center; border-radius:11px; background:#fff; color:var(--hc-blue); font-size:23px; }
.hc-system-card__selection div { display:grid; line-height:1.3; }
.hc-system-card__selection small { color:var(--hc-muted); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.hc-system-card__selection strong { margin-top:2px; font-size:13px; }
.hc-sign-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.hc-sign-button { position:relative; display:flex; align-items:center; gap:8px; min-width:0; min-height:58px; padding:9px; overflow:hidden; border:1px solid var(--hc-line); border-radius:13px; background:#fff; color:var(--hc-ink); text-align:left; cursor:pointer; transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.hc-sign-button:hover { border-color:#9dbbe9; transform:translateY(-1px); box-shadow:0 7px 18px rgba(21,87,192,.09); }
.hc-sign-button[aria-pressed="true"] { border-color:var(--hc-blue); background:#f4f8ff; box-shadow:inset 0 0 0 1px var(--hc-blue); }
.hc-sign-button__glyph { display:grid; flex:0 0 32px; width:32px; height:32px; place-items:center; border-radius:9px; background:var(--hc-blue-pale); color:var(--hc-blue); font-size:20px; }
.hc-sign-button > span:nth-child(2) { display:grid; min-width:0; line-height:1.25; }
.hc-sign-button strong { overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.hc-sign-button small { margin-top:2px; color:var(--hc-muted); font-size:9px; }
.hc-sign-button i { position:absolute; top:4px; right:5px; display:grid; width:16px; height:16px; place-items:center; border-radius:50%; background:var(--hc-blue); color:#fff; font-size:9px; font-style:normal; opacity:0; transform:scale(.7); }
.hc-sign-button[aria-pressed="true"] i { opacity:1; transform:scale(1); }
.hc-manual-note { margin:13px 0 0; color:var(--hc-muted); font-size:10px; }
.hc-system-card.is-collapsed .hc-sign-grid,
.hc-system-card.is-collapsed .hc-manual-note { display:none; }
.hc-system-card.is-collapsed { padding-bottom:17px; }
.hc-system-card.is-collapsed .hc-system-card__selection { margin-bottom:0; }

.hc-reading-switcher { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-top:28px; padding:20px 22px; border:1px solid var(--hc-line); border-radius:20px; background:linear-gradient(135deg,#fff,#f2f7ff); box-shadow:0 12px 34px rgba(34,63,112,.06); }
.hc-reading-switcher__intro { min-width:0; }
.hc-reading-switcher__intro .hc-horo-kicker { margin-bottom:5px; }
.hc-reading-switcher__intro h2 { margin:0; color:var(--hc-ink) !important; font-size:clamp(20px,2.6vw,28px); font-weight:830; line-height:1.25; }
.hc-reading-switcher__intro > p:last-child { margin:6px 0 0; color:var(--hc-muted); font-size:11px; }
.hc-reading-mode-tabs { display:grid; flex:0 0 auto; grid-template-columns:repeat(2,minmax(145px,1fr)); gap:5px; padding:5px; border:1px solid #cedbef; border-radius:15px; background:#eaf1fb; }
.hc-reading-mode-tabs button { display:flex; align-items:center; justify-content:center; gap:7px; min-height:46px; padding:8px 13px; border:0; border-radius:11px; background:transparent; color:#53647d; font-size:12px; font-weight:850; cursor:pointer; }
.hc-reading-mode-tabs button span { font-size:19px; line-height:1; }
.hc-reading-mode-tabs button small { color:inherit; font-size:9px; font-weight:700; opacity:.78; }
.hc-reading-mode-tabs button.is-active { background:var(--hc-blue); color:#fff; box-shadow:0 8px 18px rgba(21,87,192,.22); }
.hc-day-tabs { display:flex; justify-content:center; gap:6px; margin:13px auto 14px; }
.hc-day-tabs button { min-width:105px; padding:9px 14px; border:1px solid var(--hc-line); border-radius:11px; background:#fff; color:var(--hc-muted); font-size:11px; font-weight:800; cursor:pointer; }
.hc-day-tabs button.is-active { border-color:var(--hc-blue); background:var(--hc-blue); color:#fff; box-shadow:0 8px 20px rgba(21,87,192,.18); }
.hc-readings-grid { display:block; }
.hc-readings-grid [data-reading-view] { width:100%; }
.hc-reading-card { min-width:0; overflow:hidden; }
.hc-reading-card__head { display:flex; align-items:center; gap:12px; min-height:90px; padding:18px 20px; border-bottom:1px solid var(--hc-line); background:linear-gradient(180deg,#fff,#f9fbff); }
.hc-reading-icon { display:grid; flex:0 0 46px; width:46px; height:46px; place-items:center; border-radius:14px; background:#fff4d9; color:#a66d00; font-size:25px; }
.hc-reading-card--rashi .hc-reading-icon { background:var(--hc-blue-pale); color:var(--hc-blue); }
.hc-reading-card__head > div:nth-child(2) > span { color:var(--hc-blue); font-size:9px; font-weight:850; letter-spacing:.08em; }
.hc-reading-card__head h2 { margin:2px 0 0; color:var(--hc-ink) !important; font-size:20px; font-weight:830; line-height:1.2; }
.hc-reading-live { display:inline-flex; align-items:center; gap:6px; margin-left:auto; padding:5px 8px; border-radius:999px; background:#ebf9f1; color:var(--hc-green); font-size:9px; font-weight:850; text-transform:uppercase; }
.hc-reading-live i { width:7px; height:7px; border-radius:50%; background:#25a75f; box-shadow:0 0 0 4px rgba(37,167,95,.12); }
.hc-reading-card__body { padding:20px; }
.hc-reading-selected { display:flex; align-items:center; gap:11px; margin-bottom:17px; padding:10px 12px; border:1px solid var(--hc-line); border-radius:13px; background:#fafcff; }
.hc-reading-selected__glyph { display:grid; flex:0 0 36px; width:36px; height:36px; place-items:center; border-radius:10px; background:var(--hc-blue-pale); color:var(--hc-blue); font-size:22px; }
.hc-reading-selected div { display:grid; line-height:1.3; }
.hc-reading-selected small { color:var(--hc-muted); font-size:9px; font-weight:750; text-transform:uppercase; }
.hc-reading-selected strong { font-size:13px; }
.hc-reading-state { display:flex; min-height:185px; align-items:center; justify-content:center; flex-direction:column; gap:12px; padding:24px; border:1px dashed #cbd8eb; border-radius:16px; background:#fbfdff; color:var(--hc-muted); text-align:center; }
.hc-reading-state p { max-width:390px; margin:0; font-size:12px; }
.hc-reading-state.is-error { border-color:#edcccc; background:#fffafa; color:var(--hc-red); }
.hc-reading-settings-link { display:inline-flex; padding:8px 12px; border-radius:10px; background:var(--hc-blue); color:#fff !important; font-size:10px; font-weight:800; text-decoration:none !important; }
.hc-reading-settings-link:hover { background:var(--hc-blue-dark); }
.hc-spinner { width:26px; height:26px; border:3px solid #dce8fa; border-top-color:var(--hc-blue); border-radius:50%; animation:hc-spin .8s linear infinite; }
@keyframes hc-spin { to { transform:rotate(360deg); } }
.hc-reading-title > span { color:var(--hc-blue); font-size:10px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.hc-reading-title h3 { margin:5px 0 8px; color:var(--hc-ink) !important; font-size:24px; font-weight:830; line-height:1.2; }
.hc-reading-title p { margin:0; color:#46566f; font-size:13px; line-height:1.72; }
.hc-score-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-top:19px; }
.hc-score { padding:10px; border:1px solid var(--hc-line); border-radius:12px; background:#fff; }
.hc-score > div { display:flex; justify-content:space-between; gap:8px; margin-bottom:7px; line-height:1; }
.hc-score span { color:var(--hc-muted); font-size:9px; font-weight:800; text-transform:capitalize; }
.hc-score strong { color:var(--hc-blue); font-size:11px; }
.hc-score > i { display:block; height:5px; overflow:hidden; border-radius:999px; background:#e7edf6; }
.hc-score > i > b { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--hc-blue),#4d8df5); }
.hc-reading-details { display:grid; gap:9px; margin-top:16px; }
.hc-detail-box { padding:13px 14px; border:1px solid var(--hc-line); border-radius:13px; background:#fafcff; }
.hc-detail-box h4 { margin:0 0 5px; color:var(--hc-ink); font-size:11px; font-weight:850; }
.hc-detail-box p { margin:0; color:var(--hc-muted); font-size:11px; line-height:1.62; }
.hc-detail-box--good { border-color:#cae8d8; background:#f5fcf8; }
.hc-detail-box--caution { border-color:#f0d9bf; background:#fffbf5; }
.hc-detail-box--remedy { border-color:#d6cef5; background:#faf8ff; }
.hc-detail-box--panchang { border-color:#cbdcf8; background:#f4f8ff; }
.hc-keywords { display:flex; flex-wrap:wrap; gap:6px; }
.hc-keywords span { padding:5px 8px; border-radius:999px; background:var(--hc-blue-pale); color:var(--hc-blue); font-size:9px; font-weight:750; }
.hc-reading-card__foot { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:48px; padding:10px 20px; border-top:1px solid var(--hc-line); background:#fbfcff; color:var(--hc-muted); font-size:9px; }
.hc-reload-reading { border:0; background:transparent; color:var(--hc-blue); font-size:10px; font-weight:800; cursor:pointer; }

.hc-accuracy-strip { margin-top:28px; padding:clamp(24px,3.5vw,40px); background:linear-gradient(135deg,#102c62,#1557c0); color:#fff; }
.hc-accuracy-strip > div { display:flex; align-items:center; gap:12px; }
.hc-accuracy-strip > div > span { display:grid; width:42px; height:42px; place-items:center; border:1px solid rgba(255,255,255,.25); border-radius:13px; background:rgba(255,255,255,.1); color:var(--hc-gold); font-size:24px; }
.hc-accuracy-strip h2 { color:#fff !important; }
.hc-accuracy-strip ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:22px 0 0; padding:0; list-style:none; counter-reset:accuracy; }
.hc-accuracy-strip li { padding:15px; border:1px solid rgba(255,255,255,.15); border-radius:15px; background:rgba(255,255,255,.08); color:#dbe8ff; font-size:12px; }
.hc-accuracy-strip li strong { color:#fff; }
.hc-example-note { margin:14px 0 0; padding:12px 14px; border-radius:12px; background:rgba(243,182,63,.14); color:#f9e7bd; font-size:11px; }
.hc-example-note strong { color:#fff; }

.hc-essence-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.hc-essence-card { position:relative; min-width:0; padding:23px 20px; overflow:hidden; border:1px solid var(--hc-line); border-radius:17px; background:linear-gradient(145deg,#fff,#f7faff); }
.hc-essence-card__number { display:grid; width:34px; height:34px; margin-bottom:15px; place-items:center; border-radius:10px; background:var(--hc-blue); color:#fff; font-size:12px; font-weight:850; }
.hc-essence-card h3 { margin:0; color:var(--hc-ink); font-size:16px; font-weight:820; }
.hc-essence-card p { margin:9px 0 0; color:var(--hc-muted); font-size:12px; line-height:1.7; }
.hc-horo-section__heading--simple { align-items:center; }
.hc-trait-grid--detailed { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.hc-trait-card--detailed { display:flex; align-items:flex-start; gap:12px; min-width:0; padding:17px; border:1px solid var(--hc-line); border-radius:15px; background:#fff; }
.hc-trait-card--detailed > span { display:grid; flex:0 0 40px; width:40px; height:40px; place-items:center; border-radius:12px; background:var(--hc-blue-pale); color:var(--hc-blue); font-size:23px; }
.hc-trait-card--detailed h3 { margin:0; color:var(--hc-ink); font-size:14px; font-weight:820; }
.hc-trait-card__meta { margin:3px 0 0; color:var(--hc-blue); font-size:9px; font-weight:750; }
.hc-trait-card__description { margin:7px 0 0; color:var(--hc-muted); font-size:11px; line-height:1.62; }
.hc-horo-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:28px; }
.hc-horo-explainer,
.hc-horo-faq { padding:clamp(23px,3.5vw,38px); }
.hc-horo-explainer ol { display:grid; gap:17px; margin:24px 0 0; padding:0; list-style:none; }
.hc-horo-explainer li { display:flex; gap:13px; align-items:flex-start; }
.hc-horo-explainer li > span { display:grid; flex:0 0 33px; width:33px; height:33px; place-items:center; border-radius:10px; background:var(--hc-blue); color:#fff; font-size:12px; font-weight:850; }
.hc-horo-explainer li strong { display:block; font-size:13px; }
.hc-horo-explainer li p { margin:3px 0 0; color:var(--hc-muted); font-size:12px; }
.hc-horo-faq details { border-bottom:1px solid var(--hc-line); }
.hc-horo-faq details:last-child { border-bottom:0; }
.hc-horo-faq summary { position:relative; padding:16px 31px 16px 0; color:var(--hc-ink); font-size:12px; font-weight:800; cursor:pointer; list-style:none; }
.hc-horo-faq summary::-webkit-details-marker { display:none; }
.hc-horo-faq summary::after { position:absolute; top:50%; right:3px; color:var(--hc-blue); content:"+"; font-size:20px; transform:translateY(-50%); }
.hc-horo-faq details[open] summary::after { content:"−"; }
.hc-horo-faq details p { margin:-2px 0 17px; padding-right:20px; color:var(--hc-muted); font-size:11px; }

.hc-tools-showcase {
	margin-top:28px;
	padding:clamp(24px,3.4vw,38px);
	border:1px solid #cfdcf0;
	border-radius:24px;
	background:linear-gradient(145deg,#f9fbff,#edf4ff);
	box-shadow:0 15px 45px rgba(34,63,112,.07);
}
.hc-tools-showcase__header { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:22px; }
.hc-tools-brand { display:flex; align-items:center; gap:14px; min-width:0; }
.hc-tools-brand__mark { display:grid; flex:0 0 48px; width:48px; height:48px; place-items:center; border-radius:15px; background:linear-gradient(145deg,var(--hc-blue),var(--hc-blue-bright)); box-shadow:0 10px 24px rgba(21,87,192,.2); color:#fff; font-size:14px; font-weight:900; letter-spacing:-.02em; }
.hc-tools-brand p { margin:0 0 2px; color:var(--hc-blue); font-size:9px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.hc-tools-brand h2 { margin:0; color:var(--hc-ink) !important; font-size:clamp(21px,2.7vw,30px); font-weight:840; line-height:1.2; letter-spacing:-.025em; }
.hc-tools-brand div > span { display:block; margin-top:5px; color:var(--hc-muted); font-size:11px; }
.hc-tools-showcase__all { display:inline-flex; flex:0 0 auto; align-items:center; gap:8px; min-height:40px; padding:8px 13px; border:1px solid #b9ceed; border-radius:11px; background:#fff; color:var(--hc-blue) !important; font-size:10px; font-weight:850; text-decoration:none !important; transition:border-color .16s ease,background .16s ease,transform .16s ease; }
.hc-tools-showcase__all:hover { border-color:var(--hc-blue); background:#f7faff; transform:translateY(-1px); }
.hc-tools-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.hc-tool-card { position:relative; display:grid; grid-template-columns:42px minmax(0,1fr) 20px; align-items:center; gap:11px; min-width:0; min-height:104px; padding:15px; border:1px solid #d5e1f1; border-radius:16px; background:rgba(255,255,255,.9); color:var(--hc-ink) !important; text-decoration:none !important; transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease; }
.hc-tool-card:hover { border-color:#9fbbe5; box-shadow:0 10px 24px rgba(21,87,192,.1); transform:translateY(-2px); }
.hc-tool-card__mark { display:grid; width:42px; height:42px; place-items:center; border-radius:12px; background:var(--hc-blue-pale); color:var(--hc-blue); font-size:12px; font-weight:900; letter-spacing:-.04em; }
.hc-tool-card__content { display:grid; min-width:0; line-height:1.3; }
.hc-tool-card__content small { color:var(--hc-blue); font-size:8px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.hc-tool-card__content strong { margin-top:3px; overflow:hidden; color:var(--hc-ink); font-size:13px; font-weight:830; text-overflow:ellipsis; white-space:nowrap; }
.hc-tool-card__content > span { margin-top:5px; color:var(--hc-muted); font-size:9px; line-height:1.45; }
.hc-tool-card > i { color:#7d91ad; font-size:17px; font-style:normal; transition:color .16s ease,transform .16s ease; }
.hc-tool-card:hover > i { color:var(--hc-blue); transform:translateX(2px); }
.hc-horo-notice { display:flex; align-items:flex-start; gap:12px; margin-top:20px; padding:16px 18px; border:1px solid #d2e0f5; border-radius:16px; background:#f7faff; color:#53627a; }
.hc-horo-notice > span { display:grid; flex:0 0 25px; width:25px; height:25px; place-items:center; border-radius:50%; background:var(--hc-blue); color:#fff; font-family:Georgia,serif; font-size:14px; font-weight:700; }
.hc-horo-notice p { margin:0; font-size:11px; }
.hc-horo-toast { position:fixed; right:22px; bottom:22px; z-index:99999; max-width:min(390px,calc(100vw - 40px)); padding:13px 17px; border-radius:13px; background:var(--hc-ink); box-shadow:0 16px 45px rgba(15,31,61,.28); color:#fff; font-size:12px; font-weight:700; opacity:0; pointer-events:none; transform:translateY(12px); transition:opacity .2s ease,transform .2s ease; }
.hc-horo-toast.is-visible { opacity:1; transform:translateY(0); }

.hc-profile-astrology { font-family:Inter,"Noto Sans Devanagari",system-ui,sans-serif; }
.hc-profile-signs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:22px 0; }
.hc-profile-signs article { display:grid; grid-template-columns:50px 1fr; grid-template-rows:auto auto; gap:1px 12px; align-items:center; padding:15px; border:1px solid var(--hc-line); border-radius:16px; background:linear-gradient(135deg,#fff,#f4f8ff); }
.hc-profile-signs article > span { display:grid; grid-row:1/3; width:50px; height:50px; place-items:center; border-radius:14px; background:var(--hc-blue); color:#fff; font-size:28px; }
.hc-profile-signs small { color:var(--hc-muted); font-size:10px; }
.hc-profile-signs strong { color:var(--hc-ink); font-size:16px; }
.hc-profile-astrology .hc-birth-form { margin-top:18px; padding:18px; border:1px solid var(--hc-line); border-radius:17px; background:#fbfdff; }
.hc-profile-astrology .hc-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.hc-profile-daily-link { display:inline-flex; margin-top:10px; color:var(--hc-blue) !important; font-size:12px; font-weight:800; text-decoration:none !important; }

.hc-horo-action:focus-visible,
.hc-horo-button:focus-visible,
.hc-change-sign:focus-visible,
.hc-sign-button:focus-visible,
.hc-reading-mode-tabs button:focus-visible,
.hc-day-tabs button:focus-visible,
.hc-reload-reading:focus-visible,
.hc-horo-faq summary:focus-visible,
.hc-tools-showcase a:focus-visible { outline:3px solid rgba(46,112,232,.4); outline-offset:3px; }

/* Desktop legibility: keep supporting text comfortably readable on large screens. */
@media (min-width:761px) {
	.hc-horo-eyebrow,
	.hc-horo-kicker { font-size:12px; }
	.hc-horo-lead { font-size:clamp(14px,1.3vw,16px); }
	.hc-horo-date { font-size:13px; }
	.hc-horo-date--muted { font-size:12px; }

	.hc-private-chip,
	.hc-edit-birth,
	.hc-minimize-birth { font-size:12px; }
	.hc-birth-summary small { font-size:11px; }
	.hc-birth-summary strong { font-size:14px; }
	.hc-form-grid label { font-size:13px; }
	.hc-form-grid label > span { font-size:11px; }
	.hc-form-footer p,
	.hc-form-status { font-size:12px; }

	.hc-system-card header p { font-size:11px; }
	.hc-system-card header small { font-size:11px; }
	.hc-change-sign { font-size:12px; }
	.hc-system-card__selection small { font-size:10px; }
	.hc-system-card__selection strong { font-size:14px; }
	.hc-sign-button strong { font-size:12px; }
	.hc-sign-button small { font-size:10px; }
	.hc-manual-note { font-size:12px; }

	.hc-reading-switcher__intro > p:last-child { font-size:12px; }
	.hc-reading-mode-tabs button { font-size:13px; }
	.hc-reading-mode-tabs button small { font-size:10px; }
	.hc-day-tabs button { font-size:12px; }
	.hc-reading-card__head > div:nth-child(2) > span,
	.hc-reading-live { font-size:10px; }
	.hc-reading-selected small { font-size:10px; }
	.hc-reading-selected strong { font-size:14px; }
	.hc-reading-state p { font-size:13px; }
	.hc-reading-settings-link { font-size:12px; }
	.hc-reading-title > span { font-size:11px; }
	.hc-reading-title p { font-size:14px; }
	.hc-score span { font-size:11px; }
	.hc-score strong { font-size:12px; }
	.hc-detail-box h4 { font-size:13px; }
	.hc-detail-box p { font-size:13px; }
	.hc-keywords span { font-size:11px; }
	.hc-reading-card__foot { font-size:11px; }
	.hc-reload-reading { font-size:12px; }

	.hc-accuracy-strip li { font-size:13px; }
	.hc-example-note { font-size:12px; }
	.hc-essence-card h3 { font-size:17px; }
	.hc-essence-card p { font-size:13px; }
	.hc-trait-card--detailed h3 { font-size:15px; }
	.hc-trait-card__meta { font-size:11px; }
	.hc-trait-card__description { font-size:13px; }
	.hc-horo-explainer li strong { font-size:14px; }
	.hc-horo-explainer li p { font-size:13px; }
	.hc-horo-faq summary { font-size:14px; }
	.hc-horo-faq details p { font-size:13px; }
	.hc-horo-notice p { font-size:12px; }
	.hc-tools-brand p { font-size:11px; }
	.hc-tools-brand div > span { font-size:13px; }
	.hc-tools-showcase__all { font-size:12px; }
	.hc-tool-card__mark { font-size:13px; }
	.hc-tool-card__content small { font-size:10px; }
	.hc-tool-card__content strong { font-size:15px; }
	.hc-tool-card__content > span { font-size:12px; }
	.hc-profile-signs small { font-size:12px; }
	.hc-profile-signs strong { font-size:17px; }
	.hc-profile-daily-link { font-size:13px; }
}

@media (max-width:1040px) {
	.hc-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.hc-birth-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.hc-system-grid { grid-template-columns:1fr; }
	.hc-sign-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
	.hc-essence-grid { grid-template-columns:1fr; }
	.hc-tools-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:760px) {
	.hc-horoscope-app { padding-inline:12px; }
	.hc-horo-hero { min-height:0; align-items:flex-start; padding:28px 22px; }
	.hc-horo-action { position:absolute; top:20px; right:20px; min-height:38px; padding:7px 11px; }
	.hc-horo-eyebrow { padding-right:85px; }
	.hc-horo-hero h1 { margin-top:25px; font-size:38px; }
	.hc-horo-date--bs { min-width:220px; }
	.hc-horo-section__heading,
	.hc-form-footer { align-items:flex-start; flex-direction:column; }
	.hc-reading-switcher { align-items:flex-start; flex-direction:column; }
	.hc-reading-mode-tabs { width:100%; }
	.hc-birth-panel__tools { justify-content:flex-start; }
	.hc-birth-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.hc-form-grid,
	.hc-profile-astrology .hc-form-grid { grid-template-columns:1fr; }
	.hc-form-footer .hc-horo-button { width:100%; }
	.hc-sign-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.hc-accuracy-strip ol,
	.hc-trait-grid--detailed,
	.hc-horo-info-grid,
	.hc-profile-signs { grid-template-columns:1fr; }
	.hc-tools-showcase__header { align-items:flex-start; flex-direction:column; }
	.hc-tools-showcase__all { margin-left:62px; }
}

@media (max-width:480px) {
	.hc-horo-hero { min-height:0; border-radius:20px; }
	.hc-horo-hero h1 { font-size:32px; }
	.hc-horo-hero h1 small { font-size:16px; }
	.hc-horo-lead { font-size:12px; line-height:1.55; }
	.hc-horo-dates { align-items:flex-start; flex-direction:column; }
	.hc-horo-date--muted { padding-left:8px; }
	.hc-horo-section,
	.hc-system-card,
	.hc-accuracy-strip,
	.hc-horo-explainer,
	.hc-horo-faq { border-radius:19px; }
	.hc-system-card { padding:18px; }
	.hc-system-card > header { align-items:flex-start; }
	.hc-system-card__icon { flex-basis:42px; width:42px; height:42px; }
	.hc-sign-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.hc-reading-mode-tabs { grid-template-columns:1fr; }
	.hc-day-tabs { width:100%; }
	.hc-day-tabs button { min-width:0; flex:1; padding-inline:8px; }
	.hc-score-grid { grid-template-columns:1fr; }
	.hc-birth-summary { grid-template-columns:1fr; }
	.hc-reading-card__head { padding:16px; }
	.hc-reading-card__body { padding:16px; }
	.hc-tools-showcase { padding:20px 16px; border-radius:19px; }
	.hc-tools-brand { align-items:flex-start; }
	.hc-tools-brand__mark { flex-basis:42px; width:42px; height:42px; border-radius:13px; }
	.hc-tools-brand h2 { font-size:21px; }
	.hc-tools-showcase__all { width:100%; margin-left:0; justify-content:center; }
	.hc-tools-grid { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) {
	.hc-horoscope-app *,
	.hc-horoscope-app *::before,
	.hc-horoscope-app *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}
