/* Clue Morning presentation pass v1 — Today screen, navigation, completion states */
.presentation-pass-v1 .app{width:min(1120px,100%);padding-top:14px}

/* Keep every game reachable without turning the sticky navigation into two crowded rows. */
.presentation-pass-v1 .tabs{
  display:flex!important;grid-template-columns:none!important;gap:7px;overflow-x:auto;overflow-y:hidden;
  padding:11px 2px 13px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  mask-image:linear-gradient(90deg,transparent 0,#000 10px,#000 calc(100% - 10px),transparent 100%);
}
.presentation-pass-v1 .tabs::-webkit-scrollbar{display:none}
.presentation-pass-v1 .tab{flex:0 0 auto;min-height:42px;padding:9px 13px;scroll-snap-align:start;white-space:nowrap}
.presentation-pass-v1 .tab[data-tab="today"]{padding-inline:16px}
.presentation-pass-v1 .tab.nav-extra{border-color:color-mix(in srgb,var(--sun) 18%,transparent)}
.presentation-pass-v1 .tab.nav-utility{opacity:.78}
.presentation-pass-v1 .tab.nav-utility.active{opacity:1}

/* The daily set is the product. Give it the strongest hierarchy on the page. */
.presentation-pass-v1 #today .today-hero{
  position:relative;overflow:hidden;align-items:center;margin-top:14px;padding:26px 28px;
  border-radius:26px;background:
    radial-gradient(circle at 86% 20%,color-mix(in srgb,var(--sun2) 65%,transparent),transparent 15rem),
    linear-gradient(145deg,color-mix(in srgb,var(--card) 94%,white),color-mix(in srgb,var(--paper2) 38%,var(--card)));
  box-shadow:0 16px 38px rgba(66,52,31,.08);
}
.presentation-pass-v1 #today .today-hero::after{
  content:"";position:absolute;inset:auto 0 0;height:4px;pointer-events:none;
  background:linear-gradient(90deg,var(--dark),var(--sun) 52%,color-mix(in srgb,var(--green) 72%,var(--sun)));
  opacity:.72;
}
.presentation-pass-v1 #today .today-hero h2{font-size:clamp(2.55rem,7vw,4rem);margin-top:.22rem}
.presentation-pass-v1 #today .today-hero p{margin:.45rem 0 0;font-size:1rem}
.presentation-pass-v1 #today .date-kicker{display:inline-flex;align-items:center;gap:8px}
.presentation-pass-v1 #today .date-kicker::before{content:"";width:18px;height:2px;border-radius:2px;background:var(--sun)}
.presentation-pass-v1 #today .daily-total{min-width:180px;text-align:left;padding:15px 17px;border-radius:18px;background:color-mix(in srgb,var(--card) 78%,transparent);backdrop-filter:blur(8px)}
.presentation-pass-v1 #today .daily-total strong{font-size:2.15rem}
.presentation-pass-v1 .hero-complete{display:flex;align-items:center;gap:7px;margin-top:8px;color:var(--muted);font-size:.72rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.presentation-pass-v1 .hero-complete i{width:8px;height:8px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 4px color-mix(in srgb,var(--sun) 14%,transparent)}

/* Daily progress should read like a morning ritual, not an admin dashboard. */
.presentation-pass-v1 .daily-run-card{
  margin:14px 0 20px;padding:14px 17px 15px;border-radius:17px;background:color-mix(in srgb,var(--card) 68%,transparent);box-shadow:none;
}
.presentation-pass-v1 .daily-run-head strong{font-size:1.08rem}
.presentation-pass-v1 .daily-run-track{height:6px;background:color-mix(in srgb,var(--paper2) 78%,var(--card))}
.presentation-pass-v1 .daily-run-milestones{gap:7px}
.presentation-pass-v1 .daily-run-chip{padding:7px 9px;border-radius:10px;background:transparent;opacity:.46}
.presentation-pass-v1 .daily-run-chip.earned{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 20%,transparent)}

.daily-grid-heading,.more-play-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:5px 2px 10px}
.daily-grid-heading>div,.more-play-heading>div{display:grid;gap:2px}
.daily-grid-heading span,.more-play-heading span{font-size:.66rem;letter-spacing:.16em;font-weight:900;color:var(--muted);text-transform:uppercase}
.daily-grid-heading h2,.more-play-heading h2{font-size:clamp(1.55rem,4vw,2rem);margin:0}
.daily-grid-heading p,.more-play-heading p{margin:0;color:var(--muted);font-size:.82rem;text-align:right}

.presentation-pass-v1 #today .game-cards.daily-game-grid{margin-top:0;gap:12px}
.presentation-pass-v1 #today .daily-game-grid .game-card{
  --game-accent:var(--sun);min-height:112px;padding:16px 17px;border-radius:19px;grid-template-columns:60px 1fr auto;gap:14px;
  box-shadow:0 8px 22px rgba(66,52,31,.055),inset 3px 0 0 color-mix(in srgb,var(--game-accent) 52%,transparent);
}
.presentation-pass-v1 #today .daily-game-grid .game-card:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(66,52,31,.075),inset 3px 0 0 var(--game-accent)}
.presentation-pass-v1 #today .daily-game-grid .game-icon{width:58px;height:58px;border-radius:17px}
.presentation-pass-v1 #today .daily-game-grid .game-copy h3{font-size:1.28rem;margin:.15rem 0 .24rem}
.presentation-pass-v1 #today .daily-game-grid .game-copy p{font-size:.82rem;line-height:1.36;margin:0}
.presentation-pass-v1 #today .daily-game-grid .game-label{font-size:.61rem;letter-spacing:.14em}
.presentation-pass-v1 #today .daily-game-grid .game-status{min-width:68px;justify-content:center}
.presentation-pass-v1 #today .daily-game-grid [data-open="letter"]{--game-accent:var(--sun)}
.presentation-pass-v1 #today .daily-game-grid [data-open="groups"]{--game-accent:var(--green)}
.presentation-pass-v1 #today .daily-game-grid [data-open="trail"]{--game-accent:#879b72}
.presentation-pass-v1 #today .daily-game-grid [data-open="link"]{--game-accent:#8f7ca7}
.presentation-pass-v1 #today .daily-game-grid [data-open="steps"]{--game-accent:#7696a7}
.presentation-pass-v1 #today .daily-game-grid [data-open="deepcut"]{--game-accent:#b17863}
.presentation-pass-v1 #today .daily-game-grid [data-dailyx-open="situation"]{--game-accent:#b79055}
.presentation-pass-v1 #today .daily-game-grid [data-lastcall-home]{--game-accent:#9b6459}
.presentation-pass-v1 #today .daily-game-grid .game-card.presentation-complete{
  border-color:color-mix(in srgb,var(--green) 35%,var(--line));
  background:linear-gradient(180deg,color-mix(in srgb,var(--green2) 24%,var(--card)),color-mix(in srgb,var(--card) 92%,var(--green2)));
  box-shadow:0 5px 16px rgba(66,52,31,.04),inset 3px 0 0 var(--green);
}
.presentation-pass-v1 #today .daily-game-grid .game-card.presentation-complete .game-status{color:var(--green);background:color-mix(in srgb,var(--green2) 72%,var(--card));border-color:color-mix(in srgb,var(--green) 28%,var(--line))}
.presentation-pass-v1 #today .daily-game-grid .game-card.presentation-complete .game-icon{transform:scale(.96);opacity:.82}

/* Tileworks stays on the main screen, but it is clearly outside the eight-game daily run. */
.presentation-pass-v1 .more-play-section{margin:22px 0 4px;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent)}
.presentation-pass-v1 .more-play-grid{display:grid;grid-template-columns:1fr;gap:12px}
.presentation-pass-v1 .more-play-grid .tileworks-home-card{min-height:104px;margin:0;border-radius:19px;background:linear-gradient(110deg,color-mix(in srgb,#ead5aa 20%,var(--card)),var(--card));box-shadow:var(--shadow-soft)}
.presentation-pass-v1 .more-play-grid .tileworks-home-card .game-icon{width:56px;height:56px;border-radius:16px}
.presentation-pass-v1 .more-play-grid .tileworks-home-card::before{content:"FULL MATCH";position:absolute;right:16px;top:13px;font-size:.55rem;font-weight:900;letter-spacing:.12em;color:var(--muted)}

.presentation-pass-v1 #today .score-strip{margin-top:18px;border-radius:18px;overflow:hidden}
.presentation-pass-v1 #today .ritual-card{margin-top:18px}
.presentation-pass-v1 #today .about-blurb{margin-top:28px}

@media(max-width:760px){
  .presentation-pass-v1 .app{padding-inline:14px}
  .presentation-pass-v1 .masthead{gap:10px;padding-bottom:13px}.presentation-pass-v1 .brand-logo{width:62px;height:62px}
  .presentation-pass-v1 .tabs{margin-inline:-14px;padding-inline:14px;mask-image:none}
  .presentation-pass-v1 .tab{padding:8px 11px;font-size:.8rem}.presentation-pass-v1 .tab .icon{width:1em;height:1em}
  .presentation-pass-v1 #today .today-hero{align-items:flex-start;padding:21px 19px 22px;border-radius:22px}.presentation-pass-v1 #today .today-hero h2{font-size:clamp(2.25rem,12vw,3.25rem)}
  .presentation-pass-v1 #today .daily-total{min-width:128px;padding:12px 13px}.presentation-pass-v1 #today .daily-total strong{font-size:1.7rem}
  .daily-grid-heading,.more-play-heading{align-items:start;margin-top:2px}.daily-grid-heading p,.more-play-heading p{display:none}
  .presentation-pass-v1 #today .game-cards.daily-game-grid{grid-template-columns:1fr!important}
  .presentation-pass-v1 #today .daily-game-grid .game-card{min-height:98px;padding:14px;grid-template-columns:52px 1fr auto;gap:12px;border-radius:17px}
  .presentation-pass-v1 #today .daily-game-grid .game-icon{width:50px;height:50px;border-radius:15px}
  .presentation-pass-v1 #today .daily-game-grid .game-copy h3{font-size:1.16rem}.presentation-pass-v1 #today .daily-game-grid .game-copy p{font-size:.77rem}
  .presentation-pass-v1 #today .daily-game-grid .game-status{min-width:57px;padding-inline:8px;font-size:.65rem}
  .presentation-pass-v1 .daily-run-milestones{grid-template-columns:repeat(3,1fr)!important}.presentation-pass-v1 .daily-run-chip small{font-size:.57rem}
}
@media(max-width:520px){
  .presentation-pass-v1 #today .today-hero{display:grid;grid-template-columns:1fr auto;gap:12px}.presentation-pass-v1 #today .today-hero p{font-size:.84rem}
  .presentation-pass-v1 #today .daily-total{align-self:start}.presentation-pass-v1 #today .daily-total span{font-size:.6rem}
  .presentation-pass-v1 #today .daily-game-grid .game-copy p{display:none}
  .presentation-pass-v1 #today .daily-game-grid .game-card{min-height:82px;grid-template-columns:48px 1fr auto}.presentation-pass-v1 #today .daily-game-grid .game-icon{width:46px;height:46px}
  .presentation-pass-v1 .more-play-grid .tileworks-home-card .game-copy p{display:block;font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){.presentation-pass-v1 #today .daily-game-grid .game-card,.presentation-pass-v1 .tab{transition:none!important}}
