
.kch-panel,.kch-reading-card,.kch-reading{box-sizing:border-box;color:var(--ci-ui-text,var(--global-palette3,#1f2937));font-family:inherit}
.kch-panel *,.kch-reading-card *,.kch-reading *{box-sizing:border-box}

/* Compact, width-aware City Insights panel shell. */
.kch-panel{--kch-background:var(--ci-ui-background,var(--global-palette8,#fff));--kch-panel:var(--ci-ui-panel,var(--global-palette9,#fff));--kch-text:var(--ci-ui-text,var(--global-palette3,#1f2937));--kch-muted:var(--ci-ui-muted,var(--global-palette4,#667085));--kch-border:var(--ci-ui-border,var(--global-palette7,#dcdcde));--kch-radius:var(--ci-ui-radius,14px);--kch-shadow:var(--ci-ui-shadow,0 12px 30px rgba(0,0,0,.08));--kch-accent:var(--kch-highlight,var(--global-palette11,#7c3aed));position:relative;display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden;border:1px solid var(--kch-border);border-radius:var(--kch-radius);background:var(--kch-panel);box-shadow:var(--kch-shadow);color:var(--kch-text);container-type:inline-size}
.kch-panel::before,.kch-reading-card::before{position:absolute;top:0;left:0;right:0;height:4px;content:"";background:var(--kch-accent,var(--global-palette11,#7c3aed))}
.kch-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 16px 10px;border-bottom:1px solid var(--kch-border)}
.kch-panel__header h3{margin:0!important;font-size:1rem;line-height:1.2}.kch-panel__header p{margin:3px 0 0!important;color:var(--kch-muted);font-size:.75rem;line-height:1.25}
.kch-panel__all{flex:0 0 auto;margin:1px 0 0!important;color:var(--kch-muted);font-size:.72rem;font-weight:600;line-height:1.3;text-decoration:none;white-space:nowrap}
.kch-panel__all:hover{color:var(--kch-text)}
.kch-panel__body{display:block;flex:1 1 auto;padding:14px 16px}
.kch-panel__personalized{display:grid;gap:11px;min-width:0}
.kch-panel__content{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:9px;min-width:0}
.kch-panel__sign{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 12px;border-radius:calc(var(--kch-radius)*.72);background:color-mix(in srgb,var(--kch-accent) 26%,transparent)}
.kch-panel__sign>div{display:grid;gap:1px;min-width:0}.kch-panel__sign-name{font-size:1.05rem;line-height:1.15}.kch-panel__sign-dates{color:var(--kch-muted);font-size:.74rem;line-height:1.25}
.kch-panel__reading{display:grid;width:100%;gap:3px;padding:10px 12px;border:1px solid var(--kch-border);border-radius:calc(var(--kch-radius)*.65);background:color-mix(in srgb,var(--kch-accent) 22%,transparent)}
.kch-panel__reading strong{font-size:.88rem;line-height:1.3}.kch-panel__reading span{color:var(--kch-muted);font-size:.79rem;line-height:1.35}
.kch-panel__summary{width:100%;margin:0!important;font-size:.88rem;line-height:1.45}
.kch-panel__luck{display:flex;flex-wrap:wrap;gap:7px;margin:0!important}
.kch-panel__luck span{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid color-mix(in srgb,var(--kch-accent) 24%,var(--kch-border));border-radius:999px;background:color-mix(in srgb,var(--kch-accent) 13%,transparent);font-size:.77rem;line-height:1.2}
.kch-panel__luck b{color:var(--kch-muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.04em}
.kch-panel__primary{display:inline-flex;align-items:center;margin:0!important;font-size:.88rem;font-weight:700;line-height:1.3;text-decoration:none}
.kch-panel__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0!important}.kch-panel__secondary{display:inline-flex;align-items:center;margin:0!important;color:var(--kch-muted);font-size:.78rem;font-weight:600;line-height:1.3;text-decoration:none}.kch-panel__secondary:hover{color:var(--kch-text)}
.kch-panel__fallback,.kch-fallback-note{font-size:.78rem;line-height:1.4;padding:8px 10px;border-radius:calc(var(--kch-radius)*.6);background:color-mix(in srgb,var(--kch-panel) 82%,var(--kch-text) 6%);color:var(--kch-muted);margin:0!important}.kch-fallback-note{margin:0 0 20px!important}

/* Use the panel's own width, not the viewport, so it works in 4/6/8/12-column layouts. */
@container (min-width:620px){.kch-panel__personalized{grid-template-columns:minmax(175px,220px) minmax(0,1fr);align-items:start}.kch-panel__sign{height:100%;min-height:76px}.kch-panel__content{padding:1px 0}.kch-panel__summary{font-size:.9rem}.kch-panel__primary{margin-top:1px!important}}
@container (max-width:380px){.kch-panel__header{padding-left:13px;padding-right:13px}.kch-panel__body{padding:12px 13px}.kch-panel__all{font-size:.68rem}.kch-panel__sign{padding:9px 10px}.kch-panel__luck{gap:5px}.kch-panel__luck span{padding:5px 8px}}

/* Sign icons: default zodiac glyph, Font Awesome, or a Media Library image. */
.kch-sign-icon{display:inline-grid;place-items:center;flex:0 0 auto;width:46px;height:46px;font-size:2rem;line-height:1;color:inherit}
.kch-sign-icon i{line-height:1}.kch-sign-icon img{display:block;width:100%;height:100%;object-fit:contain;border-radius:calc(var(--ci-ui-radius,14px)*.55)}
.kch-panel__symbol{width:42px;height:42px;font-size:1.9rem}

.kch-wrap{width:min(1160px,calc(100% - 36px));margin:44px auto 64px}.kch-page-head{text-align:center;margin-bottom:30px}.kch-page-head h1{margin-bottom:8px}.kch-page-head p{color:var(--ci-ui-muted,var(--global-palette4,#667085));margin-top:0}
.kch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kch-reading-card{--kch-accent:var(--kch-highlight,var(--global-palette11,#7c3aed));position:relative;display:flex;flex-direction:column;overflow:hidden;min-height:100%;border:1px solid var(--ci-ui-border,var(--global-palette7,#dcdcde));border-radius:var(--ci-ui-radius,14px);padding:20px;background:var(--ci-ui-panel,var(--global-palette9,#fff));box-shadow:var(--ci-ui-shadow,none)}.kch-reading-card__head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.kch-reading-card__symbol{width:42px;height:42px;font-size:1.85rem;color:var(--kch-accent)}.kch-reading-card h2{font-size:1.25rem;margin:0}.kch-reading-card__dates{font-size:.8rem;color:var(--ci-ui-muted,var(--global-palette4,#667085))}.kch-reading-card p{line-height:1.55}.kch-reading-card a{align-self:flex-end;margin-top:auto;padding-top:12px;color:var(--kch-accent);font-weight:700;text-decoration:none}
.kch-reading{max-width:860px;margin:44px auto 64px;padding:0 24px}.kch-reading__hero{text-align:center;margin-bottom:30px}.kch-reading__symbol{width:82px;height:82px;margin:0 auto;font-size:4rem;color:var(--kch-highlight,var(--global-palette11,#7c3aed))}.kch-reading__hero h1{margin:8px 0 4px}.kch-reading__date{color:var(--ci-ui-muted,var(--global-palette4,#667085))}.kch-reading__section{border-top:1px solid var(--ci-ui-border,var(--global-palette7,#dcdcde));padding:22px 0}.kch-reading__section h2{font-size:1.2rem;margin:0 0 10px}.kch-reading__section p{font-size:1.05rem;line-height:1.7;margin:0}.kch-reading__meta{display:flex;gap:14px;flex-wrap:wrap;margin:20px 0}.kch-reading__pill{padding:8px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--kch-highlight,var(--global-palette11,#7c3aed)) 22%,var(--ci-ui-border,var(--global-palette7,#dcdcde)));background:color-mix(in srgb,var(--ci-ui-panel,var(--global-palette9,#f3f4f6)) 82%,var(--ci-ui-text,var(--global-palette3,#1f2937)) 6%)}.kch-reading__nav{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--ci-ui-border,var(--global-palette7,#dcdcde));padding-top:22px}.kch-reading__nav a{color:var(--kch-highlight,var(--global-palette11,#7c3aed));text-decoration:none;font-weight:700}
@media(max-width:900px){.kch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.kch-grid{grid-template-columns:1fr}.kch-wrap{width:min(100% - 24px,1160px);margin-top:28px}.kch-reading{padding:0 16px;margin-top:28px}}
