:root { --player-height: 92px; }
body { padding-bottom: var(--player-height); }
.global-player { position: fixed; z-index: 1000; left: 18px; right: 18px; bottom: 14px; min-height: 76px; display: grid; grid-template-columns: minmax(190px, 1fr) auto minmax(280px, 620px) auto; align-items: center; gap: 14px; padding: 10px 18px; color: #f7f0e4; background: rgba(10, 9, 8, .94); border: 1px solid rgba(216, 176, 100, .35); border-radius: 20px; box-shadow: 0 18px 50px rgba(0,0,0,.46); backdrop-filter: blur(18px); }
.global-player-copy { min-width: 0; display: flex; flex-direction: column; }
.global-player-copy small { color: #d7ac5c; font-size: 10px; letter-spacing: .18em; }
.global-player-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: Georgia, serif; font-size: 18px; }
.global-player-copy span { color: #a8a19a; font-size: 11px; }
.global-player audio { width: min(46vw, 620px); height: 40px; }
.player-step { width: 42px; height: 42px; border: 1px solid rgba(216,176,100,.35); border-radius: 50%; color: #f6d596; background: transparent; cursor: pointer; font-size: 17px; }
.player-step:hover { background: #c89b4b; color: #080706; }
.track-list button.enhanced-active { border-color: #d7ac5c !important; background: rgba(211,165,75,.13) !important; }
.now-playing { cursor: pointer; }
.cindy-modal { width: min(900px, calc(100vw - 34px)); max-height: min(86vh, 880px); padding: 0; color: #eee7dc; background: #100e0d; border: 1px solid rgba(216,176,100,.45); border-radius: 24px; box-shadow: 0 30px 100px #000; }
.cindy-modal::backdrop { background: rgba(0,0,0,.82); backdrop-filter: blur(8px); }
.cindy-modal-content { padding: clamp(34px, 6vw, 76px); overflow: auto; }
.cindy-modal-content h2 { max-width: 760px; margin: 8px 0 22px; font-family: Georgia, serif; font-size: clamp(38px, 6vw, 74px); font-weight: 400; line-height: .98; }
.cindy-modal-content h3 { color: #d7ac5c; font-size: 13px; letter-spacing: .15em; text-transform: uppercase; }
.cindy-modal-content p { color: #c8c0b6; font-size: clamp(16px, 2vw, 20px); line-height: 1.7; }
.cindy-modal-content blockquote { margin: 36px 0 0; color: #e5c480; font-family: Georgia, serif; font-size: clamp(25px, 4vw, 42px); line-height: 1.2; }
.modal-kicker { margin: 0 !important; color: #d7ac5c !important; font-size: 11px !important; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.modal-intro { max-width: 690px; color: #f0ebe4 !important; font-size: clamp(19px, 2.5vw, 25px) !important; }
.modal-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 34px; margin-top: 38px; }
.modal-listen { margin: 12px 0 4px; padding: 14px 20px; border: 0; border-radius: 999px; color: #15100a; background: #d7ac5c; font-weight: 800; cursor: pointer; }
.modal-close { position: sticky; z-index: 2; float: right; top: 16px; margin: 16px 16px 0 0; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; color: white; background: rgba(0,0,0,.45); font-size: 28px; cursor: pointer; }
.modal-signature { margin-top: 38px; color: #e6c57f !important; font-family: Georgia, serif; }
.modal-contact a { color: #e6c57f; }
.modal-open { overflow: hidden; }
@media (max-width: 760px) {
  :root { --player-height: 136px; }
  .global-player { left: 8px; right: 8px; bottom: 8px; grid-template-columns: 1fr auto auto; gap: 8px; padding: 10px 12px; border-radius: 16px; }
  .global-player-copy { grid-column: 1 / 4; }
  .global-player audio { width: 100%; min-width: 0; }
  .player-step { width: 38px; height: 38px; }
  .modal-story-grid { grid-template-columns: 1fr; gap: 12px; }
  .cindy-modal-content { padding: 58px 24px 34px; }
}
