/* A clipped page is not a responsive chart. Each surface owns its scroll range. */
.aurum-diagram-open { overflow: hidden; }
html[data-theme] .sigilarium-page .aurum-diagram { display: flex; flex-direction: column; min-width: 0; width: 100%; max-width: 100%; margin: 0; gap: 8px; }
.aurum-diagram-tools { display: flex; align-items: center; justify-content: flex-end; gap: 6px; flex-wrap: wrap; flex: 0 0 auto; }
html[data-theme] .sigilarium-page .aurum-diagram-button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; min-height: 44px; padding: 10px; border: 1px solid #e8bb6959 !important; border-radius: 6px !important; background: #071217 !important; color: #f5ead4 !important; -webkit-text-fill-color: #f5ead4 !important; box-shadow: none !important; touch-action: manipulation; }
.aurum-diagram-button:disabled { opacity: .45; cursor: default; }
.aurum-diagram-tools output { width: 48px; flex: 0 0 48px; text-align: center; color: #c5ad83; font: 600 12px/1.4 'Sigilarium Manrope',sans-serif; }
.aurum-ui-icon--zoom-in { mask-image: url('../icons/mobile/zoom-in.svg'); }
.aurum-ui-icon--zoom-out { mask-image: url('../icons/mobile/zoom-out.svg'); }
.aurum-ui-icon--scan { mask-image: url('../icons/mobile/scan.svg'); }
.aurum-ui-icon--maximize { mask-image: url('../icons/mobile/maximize.svg'); }
html[data-theme] .sigilarium-page .aurum-diagram-viewport { position: relative; width: 100%; min-width: 0; max-width: 100%; padding: 0; overflow: auto; overscroll-behavior: auto; touch-action: pan-x pan-y pinch-zoom; scrollbar-width: thin; scrollbar-color: #806c45 #071217; border: 1px solid #e8bb694d; border-radius: 6px; background: #071217; box-sizing: border-box; }
.aurum-diagram-viewport:focus-visible { outline: 2px solid #4fbf91; outline-offset: 2px; }
.aurum-diagram-spacer { position: relative; overflow: clip; }
.aurum-diagram-canvas { position: absolute; transform-origin: 0 0; box-sizing: border-box; }
html[data-theme] .sigilarium-page [data-aurum-diagram="matrix"] .aurum-diagram-canvas { padding: 20px; }
html[data-theme] .sigilarium-page .aurum-diagram #matrixMap { width: 720px !important; height: 720px !important; min-width: 0 !important; min-height: 0 !important; max-width: none !important; aspect-ratio: 1; margin: 0; border: 0; border-radius: 0; background: transparent; }
.aurum-diagram .matrix-node { width: 40px; height: 40px; margin: -20px 0 0 -20px; }
.aurum-diagram .matrix-node strong { font-size: 20px; }
.aurum-diagram .matrix-node.main { width: 54px; height: 54px; margin: -27px 0 0 -27px; }
.aurum-diagram .matrix-node.main strong { font-size: 30px; }
.aurum-diagram .matrix-node.corner { width: 48px; height: 48px; margin: -24px 0 0 -24px; }
.aurum-diagram .matrix-node.corner strong { font-size: 26px; }
.aurum-diagram .matrix-node.mid { width: 36px; height: 36px; margin: -18px 0 0 -18px; }
.aurum-diagram .matrix-node.small { width: 28px; height: 28px; margin: -14px 0 0 -14px; }
.aurum-diagram .matrix-node.small strong { font-size: 16px; }
.aurum-diagram .matrix-node.extra { width: 32px; height: 32px; margin: -16px 0 0 -16px; }
.aurum-diagram .matrix-node.extra strong { font-size: 18px; }
.aurum-diagram .matrix-node.center { width: 60px; height: 60px; margin: -30px 0 0 -30px; }
.aurum-diagram .matrix-node.center strong { font-size: 32px; }
.aurum-diagram .line-label { font-size: 12px; transform-origin: center; }
.aurum-diagram .line-label.male { left: 36%; top: 40%; transform: translate(-50%,-50%) rotate(45deg); }
.aurum-diagram .line-label.female { left: 64%; top: 40%; transform: translate(-50%,-50%) rotate(-45deg); }
html[data-theme] .sigilarium-page .aurum-diagram .perimeter-tick { color: #f5ead4; }
html[data-theme] .sigilarium-page .aurum-diagram .perimeter-tick strong { color: #f5ead4; -webkit-text-fill-color: #f5ead4; font-size: 13px; }
html[data-theme] .sigilarium-page .aurum-diagram .perimeter-tick small { color: #c5ad83; -webkit-text-fill-color: #c5ad83; font-size: 8px; }
html[data-theme] .sigilarium-page .aurum-diagram .aurum-hd-chart-canvas { width: 480px !important; height: 780px; margin: 0; background: #01080b url('../images/aurum-human-design-stage.png') center top / auto var(--aurum-hd-scene-height,1240px) no-repeat; }
html[data-theme] .sigilarium-calculator-page--aurum .sigilarium-hd-bodygraph-stage.aurum-diagram-viewport { background: #01080b !important; }
html[data-theme] .sigilarium-page .aurum-diagram .hd-bodygraph-svg { display: block; width: 480px !important; height: 780px !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; }
html[data-theme] .sigilarium-page .aurum-diagram-dialog { position: fixed; inset: 0; margin: auto; padding: max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left)); width: min(1200px,100%); height: 100dvh; max-width: 100%; max-height: 100dvh; box-sizing: border-box; border: 1px solid #806c45; border-radius: 0; background: #071217; color: #f5ead4; overflow: hidden; }
.aurum-diagram-dialog:not([open]) { display: none; }
.aurum-diagram-dialog[open] { display: flex; flex-direction: column; gap: 8px; }
.aurum-diagram-dialog::backdrop { background: #000b; }
.aurum-diagram-dialog > header { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex: 0 0 auto; }
html[data-theme] .sigilarium-page .aurum-diagram-dialog h2 { font: 600 28px/1.15 'Sigilarium Cormorant',serif; margin: 0; }
.aurum-diagram-dialog .aurum-diagram { flex: 1; min-height: 0; }
.aurum-diagram-dialog .sigilarium-hd-bodygraph-legend { display: none; }
/* The health table needs its own reachable overflow, not page-wide clipping. */
html[data-theme] .sigilarium-calculator-page--aurum :is(.matrix-dashboard,.health-panel,.health-table-wrap,.rashi-chart,.aurum-bazi-workbench) { min-width: 0; max-width: 100%; }
html[data-theme] .sigilarium-calculator-page--aurum .health-table-wrap { overflow-x: auto; overscroll-behavior-x: contain; }
@media (max-width: 1100px) {
  html[data-theme] .sigilarium-page .hd-mini-grid { grid-template-columns: minmax(0,1fr); min-width: 0; }
  html[data-theme] .sigilarium-page .hd-info-card { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
  html[data-theme] .sigilarium-page .hd-info-card :is(.aurum-hd-center-item,.aurum-hd-channel-item) > span { min-width: 0; }
  html[data-theme] .sigilarium-page .overview-card-grid { grid-template-columns: minmax(0,1fr); min-width: 0; }
  html[data-theme] .sigilarium-page .overview-card { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
}
@media (max-width: 480px) {
  html[data-theme] .sigilarium-page .aurum-bazi-workbench { grid-template-columns: minmax(0,1fr); }
  html[data-theme] .sigilarium-page .aurum-bazi-element-node { width: 64px; height: 76px; }
}
