/* Kabbalah Clock dial (js/clock.js) */
.kc-dial { width: 100%; max-width: 520px; display: block; margin: 0 auto; filter: drop-shadow(0 18px 30px rgba(20, 32, 54, .28)); user-select: none; -webkit-user-select: none; }
.kc-dial text { pointer-events: none; }
.kc-ring { transform-box: view-box; transform-origin: 300px 300px; transition-property: transform; transition-timing-function: cubic-bezier(.3, 1.25, .45, 1); cursor: grab; touch-action: none; outline: none; }
.kc-ring.kc-intro { transition-timing-function: cubic-bezier(.16, .9, .3, 1.04); }
.kc-ring.kc-dragging { cursor: grabbing; }
.kc-focus { fill: none; stroke: #ecd29a; stroke-width: 2; stroke-dasharray: 4 6; opacity: 0; pointer-events: none; }
.kc-ring:focus-visible .kc-focus { opacity: .9; }

.kc-seg { fill-opacity: .5; stroke: rgba(236, 210, 154, .35); stroke-width: 1; transition: fill-opacity .5s ease; }
.kc-on .kc-seg { fill-opacity: 1; }
.kc-seg.kc-night { fill: #0c1526; fill-opacity: .9; }
.kc-seg.kc-day { fill: #34496d; fill-opacity: .9; }
.kc-on .kc-seg.kc-night, .kc-on .kc-seg.kc-day { fill: #c9a45c; fill-opacity: 1; }

.kc-lbl { fill: #f3ead7; font: 600 13px Inter, -apple-system, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.kc-lbl-sm { fill: #f3ead7; opacity: .75; font: 500 11px Inter, -apple-system, sans-serif; letter-spacing: .08em; }
.kc-lbl-serif { fill: #f3ead7; font: 600 17px 'Cormorant Garamond', Georgia, serif; letter-spacing: .04em; }
.kc-lbl-num { fill: #f3ead7; font: 600 10.5px Inter, -apple-system, sans-serif; opacity: .85; }
.kc-on.kc-light text { fill: #1b2333; opacity: 1; }
.kc-tick { stroke: #c9a45c; stroke-width: 1; opacity: .55; }
.kc-tick.kc-major { stroke-width: 2; opacity: .9; }

.kc-c-title { font: 600 34px 'Cormorant Garamond', Georgia, serif; fill: #f3ead7; }
.kc-c-sub { font: italic 500 20px 'Cormorant Garamond', Georgia, serif; fill: #ecd29a; }
.kc-c-heb { font: 400 21px 'Frank Ruhl Libre', 'Times New Roman', serif; fill: #f3ead7; opacity: .9; }
.kc-c-time { font: 600 11px Inter, -apple-system, sans-serif; letter-spacing: .16em; fill: #c9a45c; }
.kc-center { transition: opacity .5s ease; }
.kc-center.kc-hide { opacity: 0; }
.kc-glow { opacity: 0; pointer-events: none; }
.kc-glow.kc-pulse { animation: kc-pulse 1.4s ease-out; }
@keyframes kc-pulse { 0% { opacity: 0; } 25% { opacity: .55; } 100% { opacity: 0; } }
.kc-pure { opacity: 0; transition: opacity .8s ease; }
.kc-pure.kc-show { opacity: 1; animation: kc-breathe 3.5s ease-in-out infinite; }
@keyframes kc-breathe { 50% { opacity: .45; } }
@media (prefers-reduced-motion: reduce) {
  .kc-ring, .kc-seg, .kc-center { transition-duration: 0s !important; }
  .kc-glow.kc-pulse, .kc-pure.kc-show { animation: none; }
}
