/* Approved compact Play and Today cards. Separate classes avoid legacy decorators. */
#screen-free,#quickPlayCard{container-type:inline-size;--paper:var(--td-paper,#fffcf5);--line:var(--td-line,#ddd7cc);--ink:var(--td-ink,#202b39);--muted:var(--td-muted,#586576);--track:#202b3912}
html[data-theme=dark] #screen-free,html[data-theme=dark] #quickPlayCard{--track:#ffffff12}
html #screen-free #difficultyCards{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
.cp-card{--accent:#257966;min-width:0;padding:12px 14px;background:var(--paper);border:1px solid var(--line);border-radius:18px;color:var(--ink)}.cp-card[data-diff=medium]{--accent:#315da8}.cp-card[data-diff=hard]{--accent:#ac4828}.cp-card[data-diff=hardcore]{--accent:#a93655}.cp-card[data-diff=mozkomor]{--accent:#7050a4}
.cp-top{display:flex;align-items:center;gap:10px;min-width:0}.cp-art{width:44px;height:44px;object-fit:contain;flex-shrink:0}.cp-top h2{font-size:21px;letter-spacing:-.025em;line-height:1.1;margin:0;font-weight:700;min-width:0}.cp-history{display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;margin-left:auto;padding:5px 0 5px 8px;background:none;border:0;color:var(--muted);white-space:nowrap;font:inherit;font-size:14px;cursor:pointer}.cp-history strong{color:var(--ink);font-weight:600}.cp-history svg{width:15px;height:15px}.cp-history:hover{text-decoration:underline}.cp-track{height:4px;margin:9px 0 11px;border-radius:8px;background:var(--track);overflow:hidden}.cp-track>span{display:block;height:100%;background:var(--accent);border-radius:inherit}.cp-play{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--accent);color:#fff;border:0;border-radius:10px;width:100%;min-height:44px;font:inherit;font-weight:600;font-size:17px;padding:10px 14px;cursor:pointer}.cp-play:hover{filter:brightness(1.12)}.cp-play:active{transform:translateY(1px)}
.cp-play:focus-visible,.cp-history:focus-visible,.today-card:focus-visible{outline:3px solid #88acff;outline-offset:3px}
/* Use the page's named container so nested layout containers cannot select the wrong width. */
#screen-free{container-name:play-page}
.cp-heading{min-width:0}.cp-xp{display:block;margin-top:5px;font-size:13px;font-weight:600;color:var(--accent)}
html[data-theme=dark] .cp-xp{color:color-mix(in srgb,var(--accent) 45%,white)}
.cp-card{background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 7%,var(--paper)),var(--paper) 80%)}
@container play-page (min-width:500px){html #screen-free #difficultyCards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}.cp-card{padding:16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.cp-top{display:contents}.cp-art{grid-column:1;grid-row:1;width:48px;height:48px}.cp-heading{grid-column:1/-1;grid-row:1;margin-left:60px}.cp-top h2{font-size:22px}.cp-history{grid-column:1;grid-row:2;margin:0;padding:0;justify-content:flex-start;font-size:13px}.cp-play{grid-column:2;grid-row:2;min-height:44px;width:auto;font-size:15px;padding:10px 14px}.cp-card>.cp-track{grid-column:1/-1;grid-row:3;margin:0}}
@container play-page (min-width:750px){.cp-card{padding:18px 20px;gap:14px}.cp-art{width:60px;height:60px}.cp-heading{margin-left:76px}.cp-top h2{font-size:24px}.cp-play{min-width:130px}.cp-history{font-size:14px}}
@container(max-width:350px){.cp-card{padding:12px}.cp-top{gap:8px}.cp-art{width:38px;height:38px}.cp-top h2{font-size:19px}.cp-history{font-size:12px;gap:3px}.cp-history svg{width:13px}}
.today-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.today-card{--accent:#72d7b2;display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:8px;row-gap:12px;padding:12px;text-align:left;border:1px solid var(--line);border-radius:16px;background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 7%,var(--paper)),var(--paper) 75%);min-width:0;color:var(--ink);transition:border-color .15s,background .15s}.today-card.medium{--accent:#98bcff}.today-card.hard{--accent:#ffad6c}.today-card.hardcore{--accent:#ff90a4}.today-art{width:40px;height:40px;object-fit:contain;align-self:center}.today-title{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;min-width:0}.today-title strong{font-size:17px;letter-spacing:-.025em;line-height:1.15}.today-xp{font-size:11px;font-weight:600;color:var(--accent)}.today-progress{grid-column:1/-1;display:flex;align-items:center;gap:9px}.today-count{font-size:12px;color:var(--muted);white-space:nowrap}.today-count b{color:var(--ink);font-weight:600}.today-track{height:4px;flex:1;min-width:20px;background:var(--track);border-radius:6px;overflow:hidden}.today-track>span{display:block;height:100%;background:var(--accent);border-radius:inherit}.today-action{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;color:var(--accent);font-size:13px;font-weight:600;margin-top:-3px}.today-arrow{font-size:20px;line-height:20px}.today-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--paper) 90%,var(--accent))}.today-card:active{transform:translateY(1px)}html[data-theme=light] .today-card{--accent:#14745a}html[data-theme=light] .today-card.medium{--accent:#315da8}html[data-theme=light] .today-card.hard{--accent:#ad461b}html[data-theme=light] .today-card.hardcore{--accent:#a93655}
@container(min-width:600px){.today-grid{gap:12px}.today-card{grid-template-columns:60px minmax(0,1fr) auto;grid-template-rows:auto auto;padding:16px;column-gap:14px;row-gap:10px;align-items:center}.today-art{width:60px;height:60px;grid-row:1/3}.today-title{grid-column:2;grid-row:1;gap:5px}.today-title strong{font-size:22px}.today-xp{font-size:12px}.today-progress{grid-column:2;grid-row:2;gap:10px}.today-count{font-size:12px}.today-action{grid-column:3;grid-row:1/3;flex-direction:column-reverse;gap:6px;margin:0;font-size:11px;min-width:58px}.today-arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--accent) 13%,transparent);font-size:23px}.section-heading h1{font-size:30px}}
@container(min-width:1000px){.today-card{grid-template-columns:64px minmax(0,1fr) auto;padding:18px 20px;column-gap:18px}.today-art{width:64px;height:64px}.today-title{flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.today-title strong{font-size:23px}.today-xp{font-size:13px}.today-count{font-size:14px}.today-action{min-width:76px;font-size:12px}.today-arrow{width:40px;height:40px}}
@container(max-width:350px){.today-card{padding:10px;grid-template-columns:30px minmax(0,1fr);column-gap:5px;row-gap:10px}.today-art{width:30px;height:34px}.today-title strong{font-size:15px}.today-xp{font-size:10px}.section-heading h1{font-size:23px}}

/* The fifth Today card uses the existing Mozkomor palette. */
.today-card.mozkomor{--accent:#c4a5ed}
html[data-theme=light] .today-card.mozkomor{--accent:#6b4897}
