:root {
	--hc-horo-blue: #1d4ed8;
	--hc-horo-blue-dark: #153eaa;
	--hc-horo-blue-soft: #eaf1ff;
	--hc-horo-ink: #10213f;
	--hc-horo-muted: #66758f;
	--hc-horo-line: #dfe7f3;
	--hc-horo-surface: #ffffff;
	--hc-horo-bg: #f4f7fc;
	--hc-horo-gold: #f5b83d;
}

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;
}

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

.hc-horoscope-app {
	position: relative;
	left: 50%;
	width: 100vw;
	margin: 0 0 0 -50vw;
	padding: clamp(24px, 4vw, 54px) 20px clamp(46px, 6vw, 84px);
	overflow: hidden;
	background:
		radial-gradient(circle at 8% 7%, rgba(29, 78, 216, .08), transparent 23rem),
		radial-gradient(circle at 95% 42%, rgba(245, 184, 61, .11), transparent 20rem),
		var(--hc-horo-bg);
	color: var(--hc-horo-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 iframe {
	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: flex-end;
	justify-content: space-between;
	min-height: 315px;
	padding: clamp(30px, 5vw, 66px);
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 30px;
	background:
		linear-gradient(118deg, rgba(255, 255, 255, .08), transparent 40%),
		linear-gradient(135deg, var(--hc-horo-blue-dark), #2563eb 58%, #3b82f6);
	box-shadow: 0 24px 70px rgba(19, 58, 141, .2);
	color: #fff;
}

.hc-horo-hero::before,
.hc-horo-hero::after {
	position: absolute;
	content: "";
	border-radius: 999px;
}

.hc-horo-hero::before {
	top: -165px;
	right: -85px;
	width: 390px;
	height: 390px;
	border: 1px solid rgba(255, 255, 255, .15);
	box-shadow: 0 0 0 70px rgba(255, 255, 255, .045), 0 0 0 140px rgba(255, 255, 255, .025);
}

.hc-horo-hero::after {
	right: 14%;
	bottom: -115px;
	width: 240px;
	height: 240px;
	background: rgba(245, 184, 61, .14);
	filter: blur(2px);
}

.hc-horo-hero__content,
.hc-horo-hero__actions {
	position: relative;
	z-index: 2;
}

.hc-horo-eyebrow,
.hc-horo-kicker {
	margin: 0 0 10px;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.hc-horo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: #dce8ff;
}

.hc-horo-eyebrow span {
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--hc-horo-gold);
	box-shadow: 0 0 0 5px rgba(245, 184, 61, .16);
}

.hc-horo-hero h1 {
	max-width: 760px;
	margin: 0;
	color: #fff;
	font-size: clamp(38px, 6vw, 72px);
	font-weight: 850;
	line-height: 1.03;
	letter-spacing: -.045em;
}

.hc-horo-hero h1 small {
	display: block;
	margin-top: 13px;
	color: #cfe0ff;
	font-size: clamp(17px, 2.1vw, 25px);
	font-weight: 650;
	letter-spacing: -.015em;
}

.hc-horo-lead {
	max-width: 650px;
	margin: 22px 0 0;
	color: #eaf1ff;
	font-size: clamp(15px, 1.6vw, 18px);
}

.hc-horo-dates {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 24px;
}

.hc-horo-date {
	display: inline-flex;
	align-items: center;
	min-height: 37px;
	padding: 7px 13px;
	border: 1px solid rgba(255, 255, 255, .24);
	border-radius: 999px;
	background: rgba(255, 255, 255, .13);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	backdrop-filter: blur(9px);
}

.hc-horo-date--muted {
	color: #dce8ff;
}

.hc-horo-date--bs {
	min-width: 210px;
	padding: 6px 10px;
}

.hc-horo-date--bs iframe {
	display: block;
	width: 190px;
	height: 24px;
	margin: 0;
	border: 0;
	background: transparent;
	pointer-events: none;
}

.hc-horo-action {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	min-height: 46px;
	padding: 10px 17px;
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 14px;
	background: rgba(255, 255, 255, .13);
	box-shadow: 0 10px 30px rgba(5, 27, 84, .12);
	color: #fff;
	cursor: pointer;
	transition: transform .18s ease, background .18s ease;
	backdrop-filter: blur(9px);
}

.hc-horo-action:hover {
	transform: translateY(-2px);
	background: rgba(255, 255, 255, .2);
}

.hc-horo-action svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.hc-horo-hero__stars span {
	position: absolute;
	z-index: 1;
	color: rgba(255, 255, 255, .48);
}

.hc-horo-hero__stars span:nth-child(1) { top: 24%; right: 30%; font-size: 25px; }
.hc-horo-hero__stars span:nth-child(2) { top: 19%; right: 13%; font-size: 38px; color: rgba(245, 184, 61, .7); }
.hc-horo-hero__stars span:nth-child(3) { right: 22%; bottom: 19%; font-size: 18px; }

.hc-horo-ad {
	margin: 26px 0;
	padding: 10px;
	overflow: hidden;
	border: 1px solid var(--hc-horo-line);
	border-radius: 18px;
	background: #fff;
	text-align: center;
}

.hc-horo-section,
.hc-horo-explainer,
.hc-horo-faq {
	border: 1px solid var(--hc-horo-line);
	border-radius: 24px;
	background: rgba(255, 255, 255, .94);
	box-shadow: 0 15px 45px rgba(34, 63, 112, .07);
}

.hc-horo-section {
	margin-top: 28px;
	padding: clamp(23px, 3.5vw, 42px);
}

.hc-horo-section__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 27px;
}

.hc-horo-section__heading h2,
.hc-horo-widget-card__header h2,
.hc-horo-explainer h2,
.hc-horo-faq h2 {
	margin: 0;
	color: var(--hc-horo-ink);
	font-size: clamp(23px, 3vw, 34px);
	font-weight: 820;
	line-height: 1.2;
	letter-spacing: -.025em;
}

.hc-horo-section__heading > div > p:last-child {
	margin: 8px 0 0;
	color: var(--hc-horo-muted);
}

.hc-horo-kicker {
	color: var(--hc-horo-blue);
}

.hc-horo-save-panel {
	display: grid;
	grid-template-columns: 38px minmax(110px, 1fr) auto auto;
	grid-template-rows: auto auto;
	align-items: center;
	gap: 2px 10px;
	min-width: 430px;
	padding: 13px 14px;
	border: 1px solid #cddcf8;
	border-radius: 16px;
	background: var(--hc-horo-blue-soft);
}

.hc-horo-save-panel__label {
	grid-column: 2;
	grid-row: 1;
	color: var(--hc-horo-muted);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.hc-horo-save-panel strong {
	grid-column: 2;
	grid-row: 2;
	font-size: 14px;
}

.hc-horo-save-panel__glyph {
	display: grid;
	grid-column: 1;
	grid-row: 1 / 3;
	width: 36px;
	height: 36px;
	place-items: center;
	border-radius: 11px;
	background: #fff;
	color: var(--hc-horo-blue);
	font-size: 22px;
	line-height: 1;
}

.hc-horo-save-panel #hc-save-sign {
	grid-column: 3;
	grid-row: 1 / 3;
}

.hc-horo-save-panel #hc-toggle-signs {
	grid-column: 4;
	grid-row: 1 / 3;
}

.hc-horo-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 12px;
	background: var(--hc-horo-blue);
	color: #fff;
	font-weight: 800;
	cursor: pointer;
	transition: background .18s ease, transform .18s ease, opacity .18s ease;
}

.hc-horo-button:hover:not(:disabled) {
	transform: translateY(-1px);
	background: var(--hc-horo-blue-dark);
}

.hc-horo-button:disabled {
	opacity: .48;
	cursor: not-allowed;
}

.hc-horo-button--small {
	min-height: 39px;
	padding: 8px 13px;
	font-size: 12px;
}

.hc-horo-button--outline {
	border: 1px solid #b9cdf3;
	background: #fff;
	color: var(--hc-horo-blue);
}

.hc-horo-button--outline:hover:not(:disabled) {
	background: #f5f8ff;
	color: var(--hc-horo-blue-dark);
}

.hc-horo-sign-picker.is-collapsed {
	padding: 16px 20px;
}

.hc-horo-sign-picker.is-collapsed .hc-horo-section__heading {
	align-items: center;
	margin: 0;
}

.hc-horo-sign-picker.is-collapsed .hc-horo-section__heading > div > h2,
.hc-horo-sign-picker.is-collapsed .hc-horo-section__heading > div > p:last-child,
.hc-horo-sign-picker.is-collapsed .hc-zodiac-grid,
.hc-horo-sign-picker.is-collapsed #hc-save-sign {
	display: none;
}

.hc-horo-sign-picker.is-collapsed .hc-horo-section__heading > div > .hc-horo-kicker {
	margin: 0;
}

.hc-horo-sign-picker.is-collapsed .hc-horo-save-panel {
	grid-template-columns: 38px minmax(120px, 1fr) auto;
	min-width: 340px;
	padding-block: 9px;
}

.hc-horo-sign-picker.is-collapsed #hc-toggle-signs {
	grid-column: 3;
}

.hc-zodiac-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 11px;
}

.hc-zodiac-card {
	position: relative;
	display: flex;
	align-items: center;
	gap: 11px;
	min-width: 0;
	min-height: 72px;
	padding: 12px;
	overflow: hidden;
	border: 1px solid var(--hc-horo-line);
	border-radius: 16px;
	background: #fff;
	color: var(--hc-horo-ink);
	text-align: left;
	cursor: pointer;
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.hc-zodiac-card:hover {
	transform: translateY(-2px);
	border-color: #a9c2f2;
	box-shadow: 0 10px 25px rgba(29, 78, 216, .1);
}

.hc-zodiac-card[aria-pressed="true"] {
	border-color: var(--hc-horo-blue);
	background: linear-gradient(135deg, #f6f9ff, #e9f1ff);
	box-shadow: inset 0 0 0 1px var(--hc-horo-blue), 0 10px 26px rgba(29, 78, 216, .12);
}

.hc-zodiac-card__glyph {
	display: grid;
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 13px;
	background: var(--hc-horo-blue-soft);
	color: var(--hc-horo-blue);
	font-size: 25px;
	line-height: 1;
}

.hc-zodiac-card__name {
	display: grid;
	min-width: 0;
	line-height: 1.25;
}

.hc-zodiac-card__name strong {
	overflow: hidden;
	font-size: 14px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hc-zodiac-card__name small {
	margin-top: 4px;
	color: var(--hc-horo-muted);
	font-size: 11px;
}

.hc-zodiac-card__check {
	position: absolute;
	top: 6px;
	right: 7px;
	display: grid;
	width: 18px;
	height: 18px;
	place-items: center;
	border-radius: 999px;
	background: var(--hc-horo-blue);
	color: #fff;
	font-size: 11px;
	opacity: 0;
	transform: scale(.7);
	transition: opacity .18s ease, transform .18s ease;
}

.hc-zodiac-card[aria-pressed="true"] .hc-zodiac-card__check {
	opacity: 1;
	transform: scale(1);
}

.hc-horo-live-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.9fr) minmax(310px, 1fr);
	align-items: start;
	gap: 20px;
	margin-top: 28px;
}

.hc-horo-widget-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--hc-horo-line);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 15px 45px rgba(34, 63, 112, .08);
}

.hc-horo-widget-card__header {
	display: flex;
	align-items: center;
	gap: 13px;
	min-height: 92px;
	padding: 19px 21px;
	border-bottom: 1px solid var(--hc-horo-line);
	background: linear-gradient(180deg, #fff, #f9fbff);
}

.hc-horo-widget-card__header .hc-horo-kicker {
	margin-bottom: 5px;
	font-size: 10px;
}

.hc-horo-widget-card__header h2 {
	font-size: 20px;
}

.hc-horo-widget-icon {
	display: grid;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 15px;
	background: #fff4d9;
	color: #ad7100;
	font-size: 25px;
}

.hc-horo-widget-icon--moon {
	background: var(--hc-horo-blue-soft);
	color: var(--hc-horo-blue);
}

.hc-horo-live {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-left: auto;
	padding: 5px 9px;
	border-radius: 999px;
	background: #ebfbf2;
	color: #137a43;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.hc-horo-live i {
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: #25a75f;
	box-shadow: 0 0 0 4px rgba(37, 167, 95, .13);
}

.hc-horo-frame-wrap {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: #fff;
}

.hc-horo-frame {
	display: block;
	width: 100%;
	border: 0;
	background: #fff;
}

.hc-horo-frame--rashifal { height: 610px; }
.hc-horo-frame--panchang { height: 390px; }

.hc-horo-credit {
	margin: 0;
	padding: 10px 17px 13px;
	border-top: 1px solid #edf1f7;
	color: #8290a5;
	font-size: 10px;
}

.hc-horo-credit a {
	color: #64748b;
	text-decoration: none;
}

.hc-horo-credit a:hover {
	color: var(--hc-horo-blue);
	text-decoration: underline;
}

.hc-horo-guide {
	margin-top: 28px;
}

.hc-horo-section__heading--simple {
	align-items: center;
}

.hc-trait-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.hc-trait-card {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
	padding: 14px;
	border: 1px solid var(--hc-horo-line);
	border-radius: 16px;
	background: #fff;
}

.hc-trait-card > span {
	display: grid;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	place-items: center;
	border-radius: 13px;
	background: var(--hc-horo-blue-soft);
	color: var(--hc-horo-blue);
	font-size: 23px;
}

.hc-trait-card div {
	min-width: 0;
}

.hc-trait-card h3 {
	margin: 0;
	overflow: hidden;
	color: var(--hc-horo-ink);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.35;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hc-trait-card p {
	margin: 4px 0 0;
	overflow: hidden;
	color: var(--hc-horo-muted);
	font-size: 10px;
	line-height: 1.4;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.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: 18px;
	margin: 26px 0 0;
	padding: 0;
	list-style: none;
}

.hc-horo-explainer li {
	display: flex;
	gap: 14px;
	align-items: flex-start;
}

.hc-horo-explainer li > span {
	display: grid;
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	place-items: center;
	border-radius: 11px;
	background: var(--hc-horo-blue);
	color: #fff;
	font-size: 13px;
	font-weight: 850;
}

.hc-horo-explainer li strong {
	display: block;
	font-size: 14px;
}

.hc-horo-explainer li p {
	margin: 4px 0 0;
	color: var(--hc-horo-muted);
	font-size: 13px;
}

.hc-horo-faq details {
	border-bottom: 1px solid var(--hc-horo-line);
}

.hc-horo-faq details:last-child {
	border-bottom: 0;
}

.hc-horo-faq summary {
	position: relative;
	padding: 18px 34px 18px 0;
	color: var(--hc-horo-ink);
	font-size: 14px;
	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: 4px;
	content: "+";
	color: var(--hc-horo-blue);
	font-size: 22px;
	font-weight: 500;
	transform: translateY(-50%);
}

.hc-horo-faq details[open] summary::after { content: "−"; }

.hc-horo-faq details p {
	margin: -3px 0 19px;
	padding-right: 25px;
	color: var(--hc-horo-muted);
	font-size: 13px;
}

.hc-horo-notice {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-top: 20px;
	padding: 17px 19px;
	border: 1px solid #d6e1f5;
	border-radius: 17px;
	background: #f7faff;
	color: #53627a;
}

.hc-horo-notice > span {
	display: grid;
	flex: 0 0 25px;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 999px;
	background: var(--hc-horo-blue);
	color: #fff;
	font-family: Georgia, serif;
	font-size: 14px;
	font-weight: 700;
}

.hc-horo-notice p {
	margin: 0;
	font-size: 12px;
}

.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: #10213f;
	box-shadow: 0 16px 45px rgba(15, 31, 61, .28);
	color: #fff;
	font-size: 13px;
	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-zodiac-wrap,
.hc-profile-zodiac-wrap * {
	box-sizing: border-box;
}

.hc-profile-zodiac-wrap {
	width: min(1180px, calc(100% - 40px));
	margin: 24px auto 42px;
	font-family: Inter, "Noto Sans Devanagari", "Noto Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.hc-profile-zodiac-card {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 20px;
	border: 1px solid #d9e4f7;
	border-radius: 20px;
	background: linear-gradient(135deg, #fff, #f4f8ff);
	box-shadow: 0 14px 38px rgba(34, 63, 112, .08);
	color: var(--hc-horo-ink);
}

.hc-profile-zodiac-card__icon {
	display: grid;
	flex: 0 0 58px;
	width: 58px;
	height: 58px;
	place-items: center;
	border-radius: 17px;
	background: linear-gradient(145deg, var(--hc-horo-blue), #4f7ff2);
	box-shadow: 0 10px 24px rgba(29, 78, 216, .2);
	color: #fff;
	font-size: 32px;
	line-height: 1;
}

.hc-profile-zodiac-card__content {
	min-width: 0;
}

.hc-profile-zodiac-card__eyebrow {
	margin: 0 0 3px;
	color: var(--hc-horo-blue);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.hc-profile-zodiac-card h2 {
	margin: 0;
	color: var(--hc-horo-ink);
	font-size: 22px;
	font-weight: 820;
	line-height: 1.25;
}

.hc-profile-zodiac-card h2 span {
	margin-left: 5px;
	color: #6b7890;
	font-size: 14px;
	font-weight: 650;
}

.hc-profile-zodiac-card__content > p:last-child {
	margin: 5px 0 0;
	color: var(--hc-horo-muted);
	font-size: 12px;
}

.hc-profile-zodiac-card__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 43px;
	margin-left: auto;
	padding: 9px 15px;
	border-radius: 12px;
	background: var(--hc-horo-blue);
	color: #fff !important;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none !important;
	white-space: nowrap;
	transition: transform .18s ease, background .18s ease;
}

.hc-profile-zodiac-card__action:hover {
	transform: translateY(-1px);
	background: var(--hc-horo-blue-dark);
}

.hc-zodiac-card:focus-visible,
.hc-horo-button:focus-visible,
.hc-horo-action:focus-visible,
.hc-horo-faq summary:focus-visible {
	outline: 3px solid rgba(59, 130, 246, .45);
	outline-offset: 3px;
}

@media (max-width: 1040px) {
	.hc-zodiac-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.hc-horo-live-grid { grid-template-columns: 1fr; }
	.hc-horo-frame--panchang { height: 390px; }
}

@media (max-width: 820px) {
	.hc-horo-hero {
		align-items: flex-start;
		min-height: 350px;
	}

	.hc-horo-hero__actions {
		position: absolute;
		top: 26px;
		right: 26px;
	}

	.hc-horo-action span { display: none; }
	.hc-horo-action { padding: 11px 12px; }
	.hc-horo-hero__stars span:nth-child(1) { display: none; }
	.hc-trait-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hc-horo-info-grid { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
	.hc-horoscope-app { padding-inline: 14px; }
	.hc-horo-hero { border-radius: 23px; }
	.hc-horo-section,
	.hc-horo-widget-card,
	.hc-horo-explainer,
	.hc-horo-faq { border-radius: 20px; }
	.hc-horo-section__heading { align-items: stretch; flex-direction: column; }
	.hc-horo-sign-picker.is-collapsed .hc-horo-section__heading { align-items: center; flex-direction: row; }
	.hc-horo-sign-picker.is-collapsed .hc-horo-section__heading > div:first-child { display: none; }
	.hc-horo-sign-picker.is-collapsed .hc-horo-save-panel { width: 100%; min-width: 0; margin: 0; }
	.hc-horo-save-panel { width: 100%; min-width: 0; }
	.hc-zodiac-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hc-zodiac-card { flex-direction: column; justify-content: center; gap: 7px; min-height: 95px; text-align: center; }
	.hc-zodiac-card__name small { margin-top: 2px; }
	.hc-zodiac-card__glyph { width: 39px; height: 39px; flex-basis: 39px; }
	.hc-trait-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hc-profile-zodiac-card { align-items: flex-start; flex-wrap: wrap; }
	.hc-profile-zodiac-card__content { flex: 1 1 calc(100% - 78px); }
	.hc-profile-zodiac-card__action { width: 100%; margin: 2px 0 0; }
}

@media (max-width: 520px) {
	.hc-horoscope-app { padding-top: 14px; }
	.hc-horo-hero { min-height: 390px; padding: 28px 22px; }
	.hc-horo-hero::before { right: -210px; }
	.hc-horo-hero h1 { padding-top: 42px; }
	.hc-horo-hero__actions { top: 20px; right: 20px; }
	.hc-horo-lead { font-size: 14px; }
	.hc-horo-date { font-size: 11px; }
	.hc-horo-section { padding: 21px 16px; }
	.hc-horo-save-panel { grid-template-columns: 36px 1fr auto; }
	.hc-horo-save-panel #hc-save-sign { grid-column: 3; }
	.hc-horo-save-panel #hc-toggle-signs { grid-column: 1 / 4; grid-row: 3; width: 100%; margin-top: 6px; }
	.hc-horo-sign-picker.is-collapsed #hc-toggle-signs { grid-column: 3; grid-row: 1 / 3; width: auto; margin-top: 0; }
	.hc-horo-widget-card__header { padding: 16px; }
	.hc-horo-widget-icon { width: 43px; height: 43px; flex-basis: 43px; }
	.hc-horo-widget-card__header h2 { font-size: 17px; }
	.hc-horo-live { padding-inline: 7px; }
	.hc-horo-frame--rashifal { height: 1080px; }
	.hc-horo-frame--panchang { height: 390px; }
	.hc-trait-grid { grid-template-columns: 1fr; }
	.hc-trait-card p { white-space: normal; }
	.hc-horo-explainer,
	.hc-horo-faq { padding: 22px 18px; }
	.hc-horo-toast { right: 14px; bottom: 14px; }
}

@media (max-width: 380px) {
	.hc-zodiac-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hc-horo-save-panel { grid-template-columns: 36px 1fr; }
	.hc-horo-save-panel #hc-save-sign,
	.hc-horo-save-panel #hc-toggle-signs { grid-column: 1 / 3; grid-row: auto; width: 100%; margin-top: 8px; }
	.hc-horo-sign-picker.is-collapsed .hc-horo-save-panel { grid-template-columns: 36px 1fr auto; }
	.hc-horo-sign-picker.is-collapsed .hc-horo-save-panel__glyph { grid-column: 1; grid-row: 1 / 3; }
	.hc-horo-sign-picker.is-collapsed .hc-horo-save-panel__label,
	.hc-horo-sign-picker.is-collapsed .hc-horo-save-panel strong { grid-column: 2; }
	.hc-horo-sign-picker.is-collapsed #hc-toggle-signs { grid-column: 3; grid-row: 1 / 3; margin-top: 0; }
}

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