.hs-main { min-width: 0; }
.hs-crumb { padding: 4px 0 12px; color: var(--muted); font-size: 15px; }
.hs-crumb a { text-decoration: underline; }
.hs-crumb span { padding: 0 4px; }
.hs-header { background: #f5f0ec; border-left: 4px solid var(--red); padding: clamp(17px,4vw,45px); margin-bottom: 24px; }
.hs-header h1 { margin: 0 0 10px; max-width: 25ch; font: 800 clamp(40px,6vw,75px)/.98 var(--head); letter-spacing: -.024em; }
.hs-header p { margin: 0; max-width: 66ch; font-size: clamp(17px,2.2vw,23px); }
.hs-main :is(h2,h3,h4), .hs-home h2 { margin: .65em 0 .25em; font: 800 34px/1.04 var(--head); }
.hs-main h3 { font-size: 28px; }
.hs-main h4 { font-size: 23px; }
.hs-home { border-top: 1px solid var(--line); padding-top: 12px; margin-top: 24px; }
.hs-home h2 { font-size: clamp(33px,5vw,59px); }
.hs-home .hs-home-boxy { grid-template-columns: repeat(3,minmax(0,1fr)); margin-bottom: 18px; }
.hs-home .hs-home-boxy a { border-left: 0; gap: 10px; }
.hs-home .hs-home-boxy a:not(:nth-child(3n+1)) { border-left: 1px solid var(--line); }
.hs-home .hs-home-boxy a:nth-child(n+4) { border-top: 1px solid var(--line); }
.hs-home-boxy svg { width: clamp(22px,3vw,33px); height: auto; fill: none; stroke: var(--red); stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.hs-box-text { display: grid; gap: 5px; overflow-wrap: anywhere; }
.hs-box-text strong { font-weight: inherit; }
.hs-box-text small { font: 400 15px/1.2 var(--body); color: var(--muted); }
@media (max-width: 760px) {
  .hs-home .hs-home-boxy { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hs-home .hs-home-boxy a:nth-child(n) { border-left: 0; }
  .hs-home .hs-home-boxy a:nth-child(even) { border-left: 1px solid var(--line); }
  .hs-home .hs-home-boxy a:nth-child(n+3) { border-top: 1px solid var(--line); }
}
@media (max-width: 420px) {
  .hs-home .hs-home-boxy a { gap: 5px; padding: 8px 6px; font-size: 19px; }
  .hs-home-boxy svg { width: 20px; }
  .hs-box-text small { font-size: 13px; }
}
.hs-main :is(a,button,input,select,summary,textarea):focus-visible,.hs-home :focus-visible { outline: 3px solid #146bc1; outline-offset: 3px; }
.hs-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(220px,100%),1fr)); gap: 10px; margin: 12px 0 16px; }
.hs-card, .hs-result { border: 1px solid var(--line); background: #faf7f4; padding: clamp(12px,2.3vw,22px); min-width: 0; }
.hs-card h2 { margin: 4px 0; font-size: 29px; }
.hs-card a { text-decoration: underline; text-decoration-color: #d7a89f; text-underline-offset: 2px; }
.hs-card small { color: var(--dark-red); font-weight: 600; }
.hs-card p { margin: 6px 0 0; }
.hs-main :is(button,select,input,textarea), .hs-home :is(button,input) { font: inherit; }
.hs-main :is(button,input,select,textarea), .hs-home :is(button,input) { min-height: 42px; }
.hs-main :is(input,select,textarea):not([type=hidden],[type=checkbox]), .hs-home input { width: 100%; max-width: 100%; min-width: 0; border: 1px solid #a69e95; background: white; color: var(--ink); padding: 7px 9px; border-radius: 0; }
.hs-main button, .hs-home button { background: var(--red); color: white; border: 0; padding: 8px 13px; font-weight: 600; }
.hs-main button:hover, .hs-home button:hover { background: var(--dark-red); }
.hs-search { position: relative; max-width: 690px; margin: 0 0 18px; }
.hs-search label { display: block; margin-bottom: 6px; font: 800 29px/1 var(--head); }
.hs-search-row { display: flex; gap: 6px; }
.hs-search-row button { flex: 0 0 auto; }
.hs-options { list-style: none; background: white; padding: 0; margin: 4px 0; border: 1px solid var(--line); max-height: 238px; overflow: auto; }
.hs-options li { cursor: pointer; display: flex; justify-content: space-between; gap: 4px 12px; padding: 9px; border-bottom: 1px solid var(--line); }
.hs-options li:hover, .hs-options li[aria-selected=true] { background: #f9e9e6; }
.hs-options small { color: var(--muted); }
.hs-status:empty,.hs-profile-actions p:empty { display: none; }
.hs-status { margin: 4px 0; font-size: .9em; color: var(--muted); }
.hs-filters, .hs-inline { display: flex; flex-wrap: wrap; align-items: end; gap: 8px 16px; margin: 10px 0 16px; }
.hs-filters nav { display: flex; flex-wrap: wrap; gap: 4px; }
.hs-filters :is(a,[aria-current=true]), .hs-links a, .hs-paging a { display: inline-block; border: 1px solid var(--line); padding: 7px 9px; text-decoration: none; background: #faf7f4; }
.hs-filters [aria-current=true], .hs-links a:hover, .hs-paging a:hover { color: var(--dark-red); border-color: var(--red); }
.hs-filters form { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; }
.hs-filters select, .hs-inline input { width: auto !important; }
.hs-paging, .hs-links { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 22px; }
.hs-links span { color: var(--red); }
.hs-reading { max-width: 72ch; font-size: 18px; line-height: 1.58; margin: 0 0 24px; }
.hs-calculator, .hs-person, .hs-place, .hs-extra { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 16px; }
.hs-calculator { margin: 20px 0; max-width: 900px; }
.hs-calculator > :is(fieldset,datalist,button,a,details) { grid-column: 1/-1; }
.hs-calculator > :is(button,a) { justify-self: start; }
.hs-calculator a, .hs-result > a { text-decoration: underline; }
.hs-person { margin: 0; border: 1px solid var(--line); padding: 14px; min-width: 0; background: #f9f6f3; }
.hs-person legend { font: 800 27px/1 var(--head); padding: 0 5px; }
.hs-person :is(label,input,select) { min-width: 0; }
.hs-person .hs-check { display: flex; align-items: center; gap: 5px; }
.hs-person input[type=checkbox] { min-height: 0; }
.hs-person .hs-place,.hs-person details,.hs-profile-actions { grid-column: 1/-1; }
.hs-extra { display: block; border-top: 1px solid var(--line); padding-top: 7px; }
.hs-extra label { display: inline-block; width: min(230px,100%); margin-right: 6px; }
.hs-profile-actions { display: flex; gap: 7px; flex-wrap: wrap; align-items: center; }
.hs-profile-actions select { width: auto !important; }
.hs-history { border-top: 1px solid var(--line); padding-top: 10px; }
.hs-history li { margin: 6px 0; }
.hs-history [role=status]:empty { display: none; }
.hs-note { border-left: 3px solid var(--red); background: #f8efea; padding: 10px; }
.hs-result { margin: 14px 0; }
.hs-reading-piece { border-top: 1px solid var(--line); }
.hs-chart-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 18px; align-items: start; }
.hs-table { overflow-x: auto; }
.hs-table table { width: 100%; border-collapse: collapse; }
.hs-table :is(th,td) { text-align: left; border-bottom: 1px solid var(--line); padding: 5px 8px 5px 3px; }
.hs-table thead { color: var(--dark-red); }
.hs-main [id]:target { scroll-margin-top: 16px; }
.hs-main tr:target { background: #f4e0d8; }
.hs-wheel { margin: 8px 0; width: min(100%,520px); }
.hs-wheel svg { width: 100%; height: auto; display: block; }
.hs-account-picker { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.hs-account-picker select { min-width: 0; max-width: 100%; }
.hs-account-picker p { margin: 0; font-size: .9rem; }
.hs-account-picker p:empty { display: none; }
.hs-person > .hs-account-picker { grid-column: 1 / -1; margin-bottom: 2px; }
.hs-main :is(.hs-inline, .num-zadani) [data-hs-ucet-vyber] { flex-basis: 100%; margin-bottom: 8px; }
.hs-asc-form { padding: clamp(12px, 2vw, 22px); border: 1px solid var(--line); }
.hs-asc-vysledek { display: grid; grid-template-columns: minmax(165px, .85fr) minmax(0, 2fr); border: 1px solid var(--line); }
.hs-asc-poloha { background: #251719; color: #fff; padding: clamp(17px, 3.2vw, 36px); display: grid; align-content: center; }
.hs-asc-poloha span { color: #ffd9ca; font-weight: 700; }
.hs-asc-poloha h2 { margin: 3px 0; color: #fff; font-size: clamp(34px, 6vw, 67px); line-height: 1; }
.hs-asc-poloha p { margin: 8px 0 0; font-variant-numeric: tabular-nums; }
.hs-asc-text { padding: clamp(16px, 3vw, 29px); background: #fff; }
.hs-asc-text h3 { margin-top: 0; }
.hs-asc-cas { margin-bottom: 0; }
.hs-asc-upravit { display: inline-block; margin-top: 10px; color: var(--red); text-decoration: underline; text-underline-offset: 3px; }
.hs-asc-osoba { margin: 0 0 8px; font-weight: 700; }
.hs-asc-detail > section { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line); }
.hs-asc-detail .hs-chart-grid { align-items: center; }
@media (max-width: 580px) {
  .hs-asc-vysledek { grid-template-columns: minmax(0, 1fr); }
}
.hs-wheel text { font: 13px/1 system-ui,sans-serif; dominant-baseline: central; text-anchor: middle; fill: var(--ink); }
.hs-wheel .hs-zodiac-symbol { font-size: 17px; fill: var(--red); }
.hs-ring-bg { fill: #fffcf9; }
.hs-ring { stroke: #bfb3a5; stroke-width: 1; fill: none; }
.hs-houses { stroke: #c9b5a8; stroke-width: 1; fill: none; }
.hs-wheel-point circle { fill: var(--red); }
.hs-wheel-point text { fill: #fff; font-weight: bold; }
.hs-layer-1 circle { fill: #29536d; }
.hs-aspect-line { stroke: #ab7266; opacity: .66; stroke-width: 1; }
.hs-wheel a:is(:hover,:focus-visible) .hs-aspect-line { stroke-width: 3; opacity: 1; }
.hs-house-list { columns: 3; }
.hs-footer { margin-top: 26px; }
.hs-numbers { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 5px 14px; }
.hs-numbers dd { margin: 0; }
.hs-number-grid { grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 340px; }
.hs-number-grid div { text-align: center; border: 1px solid var(--line); padding: 6px; }
.hs-number-grid span { display: block; }
@media (max-width:640px) {
  .hs-chart-grid { grid-template-columns: minmax(0,1fr); }
  .hs-person,.hs-calculator { grid-template-columns: minmax(0,1fr); }
  .hs-place { grid-template-columns: minmax(0,1fr); }
  .hs-options li { flex-wrap: wrap; }
  .hs-house-list { columns: 2; }
}
.hs-dream-situations { margin: 12px 0 0; padding: 0 0 0 16px; border-left: 2px solid var(--red); }
.hs-dream-situations dt { font-weight: 700; }
.hs-dream-situations dd { margin: 3px 0 14px; }
