/* Shared ocean palette; queue styles stay independent of legacy effect overrides. */
body.is-queue-route { background: radial-gradient(ellipse at 12% 2%, #48304799, transparent 48%), linear-gradient(165deg, #142835, #091725 65%, #071320) !important; background-attachment: scroll !important; }
body.is-queue-route .site-footer { background: transparent !important; margin-top: 0 !important; }
body.is-queue-route .aqua-pop-bubbles { position: fixed !important; overflow: hidden; }
.queue-page { width: min(1360px, calc(100% - 80px)); padding: 36px 0 80px; color: #f9f2ed; }
.queue-nav { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-bottom: 42px; font-size: 13px; color: #b8c9cb; }
.queue-nav a { color: inherit; text-decoration: none; }
.queue-nav a:hover { color: #f1b7cb; }
.queue-hero { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 48px; align-items: center; padding: 20px 0 45px; }
.queue-hero h1 { font: 600 clamp(3.4rem, 5.5vw, 5.6rem)/1.04 var(--font-body); letter-spacing: -.055em; margin: 14px 0 24px; }
.queue-hero h1 em { color: #f1b7cb; font-style: normal; }
.queue-intro { max-width: 530px; color: #c3cbd2; font-size: 16px; line-height: 1.85; margin: 0 0 28px; }
.queue-availability { display: inline-flex; align-items: center; gap: 10px; border: 1px solid #c2e5df30; border-radius: 999px; padding: 10px 16px; color: #c5d7c6; font-size: 12px; }
.queue-availability i { width: 7px; height: 7px; border-radius: 50%; background: #b7d4b4; box-shadow: 0 0 12px #b7d4b455; }
.queue-availability[data-availability=closed] { color: #f1b7cb; }
.queue-availability[data-availability=closed] i { background: #f1b7cb; }
.queue-orbit { position: relative; display: grid; place-items: center; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle at 30% 20%, #f1b7cb28, transparent 52%), radial-gradient(circle at 80% 85%, #93d6da24, #15303b55 62%); border: 1px solid #c7e8e437; box-shadow: inset -8px -12px 30px #06182788, 0 0 90px #a4dde40b; }
.queue-orbit::before { content: ''; position: absolute; top: 25px; left: 47px; width: 44px; height: 20px; border-radius: 50%; background: #ffebf04a; filter: blur(8px); transform: rotate(-35deg); }
.queue-orbit > span { position: absolute; inset: -17px; border: 1px solid #d3c0d128; border-radius: 48% 52% 46% 54%; transform: rotate(-25deg) scaleY(.88); }
.queue-orbit > span + span { inset: -33px; transform: rotate(32deg) scaleY(.8); border-color: #b7d4b422; }
.queue-orbit b { font: 500 76px/1.1 var(--font-body); text-align: center; letter-spacing: -.05em; }
.queue-orbit small { display: block; margin-top: 10px; font: 500 11px/1.5 var(--font-body); letter-spacing: .13em; text-transform: uppercase; color: #bed6d5; }
.queue-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 38px; padding: 24px 0; border-block: 1px solid #c1dad824; color: #aebfc7; font-size: 13px; }
.queue-summary p { margin: 0; }
.queue-summary strong { color: #f6e8ec; font-size: 22px; margin-right: 7px; font-weight: 500; }
.queue-summary .queue-updated { margin-left: auto; font-size: 11px; }
.queue-group { margin-top: 44px; }
.queue-group-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.queue-group-heading h2 { font: 500 24px/1.4 var(--font-body); letter-spacing: -.025em; margin: 0; }
.queue-group-heading > span { color: #b7d4b4; border: 1px solid #b7d4b433; border-radius: 30px; font-size: 11px; padding: 2px 9px; }
.queue-orders { display: grid; gap: 14px; list-style: none; margin: 0; padding: 0; }
.queue-card { display: grid; grid-template-columns: 40px minmax(0, 1fr) minmax(160px, 25%); align-items: center; gap: 24px; padding: 26px 30px; border: 1px solid #c1dfe225; border-radius: 22px; background: linear-gradient(115deg, #a2769b10, #70b8c90c); }
.queue-card[data-status=working] { border-color: #d6b6d03b; background: linear-gradient(115deg, #a2769b1c, #70b8c912); }
.queue-position { font: 400 19px/1 var(--font-body); color: #8799a6; font-variant-numeric: tabular-nums; }
.queue-card h3 { font: 600 18px/1.5 var(--font-body); margin: 0; overflow-wrap: anywhere; color: #f4ebef; }
.queue-card-copy > p { font-size: 13px; line-height: 1.7; color: #aabdc7; margin: 7px 0; overflow-wrap: anywhere; }
.queue-card-meta { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; color: #8fa6b4; font-size: 11px; margin-top: 10px; }
.queue-card-meta:empty { display: none; }
.queue-payment { color: #c7d6c0; background: #b7d4b40c; border: 1px solid #b7d4b42b; padding: 3px 10px; border-radius: 30px; }
.queue-progress > div { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px; color: #acbfc8; font-size: 11px; }
.queue-progress strong { font-size: 26px; font-weight: 500; color: #f1b7cb; font-variant-numeric: tabular-nums; }
.queue-progress strong small { font-size: 13px; margin-left: 2px; }
.queue-progress progress { appearance: none; display: block; width: 100%; height: 6px; border: 0; border-radius: 8px; overflow: hidden; background: #040e1880; color: #dbb2cd; }
.queue-progress progress::-webkit-progress-bar { background: #040e1880; border-radius: 8px; }
.queue-progress progress::-webkit-progress-value { border-radius: 8px; background: linear-gradient(90deg, #b692b9, #edb7ce 60%, #a4d7d5); }
.queue-progress progress::-moz-progress-bar { border-radius: 8px; background: linear-gradient(90deg, #b692b9, #a4d7d5); }
.queue-card[data-status=completed] .queue-progress strong { color: #b7d4b4; }
.queue-empty { padding: 28px; border: 1px dashed #c1dfe224; border-radius: 20px; color: #9bb1bd; font-size: 14px; }
.queue-bottom { display: flex; gap: 24px; align-items: center; justify-content: space-between; border-top: 1px solid #c1dad824; padding-top: 32px; margin-top: 52px; }
.queue-bottom p { color: #b8c9cb; }
.queue-link { display: inline-flex; gap: 24px; align-items: center; justify-content: space-between; padding: 12px 20px; border-radius: 999px; border: 1px solid #f1b7cb66; background: linear-gradient(135deg, #f1b7cb1c, #b7d4b40e); color: #faecf2; text-decoration: none; font: 600 13px/1.5 var(--font-body); transition: background .2s, border-color .2s; }
.queue-link:hover { background: #f1b7cb25; border-color: #f1b7cba0; }
.queue-link:focus-visible, .queue-nav a:focus-visible { outline: 2px solid #b7d4b4; outline-offset: 5px; }
body.is-home-page .hero-schedule-wave .weekly-status-popover { grid-template-columns: minmax(120px, 160px) minmax(280px, 1fr) auto !important; }
.schedule-queue-link { grid-column: 3; justify-self: start; margin-top: -8px; margin-bottom: 4px; white-space: nowrap; }
.queue-admin { max-width: 1200px; }
.queue-admin h1 { font-size: clamp(28px, 4vw, 44px); }
.queue-admin .queue-nav { margin-bottom: 24px; }
.queue-admin :is(input, select, textarea, button) { font: inherit; }
.queue-admin label { display: grid; gap: 9px; font-size: 13px; color: #d1d8e1; }
.queue-admin :is(input:not([type=range]):not([type=hidden]), select, textarea) { width: 100%; min-width: 0; border: 1px solid #a6c5d53b; border-radius: 10px; background: #101b2b; color: #eef1f6; padding: 11px 12px; }
.queue-admin :is(input, select, textarea, button):focus-visible { outline: 2px solid #a6dedb; outline-offset: 3px; }
.queue-availability-editor { max-width: 400px; margin: 28px 0 12px; }
.queue-editor-help { font-size: 12px; color: #a7b7c8; line-height: 1.8; margin: 0 0 26px; }
.queue-editor-row { padding: 24px; margin: 0 0 18px; border: 1px solid #b7d7dc30; border-radius: 20px; background: linear-gradient(120deg, #44304866, #132535aa); }
.queue-editor-row.is-archived { border-style: dashed; background: #142132; }
.queue-row-toolbar { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin-bottom: 22px; }
.queue-row-toolbar > strong { overflow-wrap: anywhere; min-width: 0; font-size: 15px; }
.queue-row-toolbar > div { display: flex; flex-shrink: 0; gap: 6px; }
.queue-row-toolbar button { border: 1px solid #b7d7dc40; color: #dde9ed; background: #152837; border-radius: 9px; min-width: 38px; min-height: 38px; padding: 5px 10px; cursor: pointer; }
.queue-row-toolbar button:disabled { opacity: .35; cursor: default; }
.queue-row-toolbar button[hidden] { display: none; }
.queue-row-toolbar > div { flex-wrap: wrap; }
.queue-editor-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 24px; }
.queue-editor-title, .queue-editor-progress, .queue-editor-note { grid-column: 1 / -1; }
.queue-editor-progress { position: relative; }
.queue-editor-progress output { position: absolute; right: 0; top: -7px; font-size: 24px; color: #efbbd1; font-variant-numeric: tabular-nums; }
.queue-admin input[type=range] { appearance: none; width: 100%; height: 8px; border: 0; padding: 0; margin: 12px 0; border-radius: 10px; background: linear-gradient(90deg, #d5afd1 var(--queue-fill, 0%), #061421 var(--queue-fill, 0%)); cursor: pointer; touch-action: pan-y; }
.queue-admin input[type=range]::-webkit-slider-thumb { appearance: none; width: 24px; height: 24px; border-radius: 50%; border: 2px solid #eddded; background: #c29bc7; box-shadow: 0 0 14px #edb1d233; }
.queue-admin input[type=range]::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; border: 2px solid #eddded; background: #c29bc7; }
.queue-editor-actions { position: sticky; bottom: 12px; z-index: 30; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding: 16px; margin-top: 24px; border: 1px solid #a9cbd640; border-radius: 16px; background: #142333f5; box-shadow: 0 10px 25px #030a1540; }
.queue-editor-actions [role=status] { flex: 1; font-size: 12px; color: #bfd2d8; }
@media (max-width: 760px) {
  .queue-page { width: calc(100% - 36px); padding-top: 24px; padding-bottom: 40px; }
  .queue-nav { font-size: 11px; gap: 12px; margin-bottom: 24px; }
  .queue-hero { grid-template-columns: minmax(0, 1fr); padding-top: 12px; gap: 0; }
  .queue-orbit { display: none; }
  .queue-hero h1 { font-size: clamp(3.1rem, 12vw, 4.2rem); }
  .queue-intro { font-size: 14px; }
  .queue-summary { gap: 14px 24px; font-size: 11px; }
  .queue-summary .queue-updated { margin: 0; flex-basis: 100%; }
  .queue-group { margin-top: 32px; }
  .queue-card { grid-template-columns: 26px minmax(0, 1fr); gap: 14px; padding: 20px; border-radius: 18px; }
  .queue-progress { grid-column: 2; }
  .queue-card h3 { font-size: 16px; }
  .queue-empty { padding: 20px; font-size: 13px; }
  .queue-bottom { flex-direction: column; align-items: flex-start; gap: 8px; }
  body.is-home-page .hero-schedule-wave .weekly-status-popover { grid-template-columns: 1fr !important; }
  .schedule-queue-link { grid-column: 1; justify-self: center; margin: 8px 0 0; }
  .queue-editor-row { padding: 16px; }
  .queue-row-toolbar { flex-wrap: wrap; }
  .queue-editor-fields { grid-template-columns: 1fr; }
  .queue-editor-actions { bottom: 6px; gap: 10px; padding: 12px; }
  .queue-editor-actions [role=status] { order: 3; flex-basis: 100%; }
  .queue-editor-actions .btn { flex: 1; font-size: 12px; padding-inline: 12px; }
}
