/* Esami temos žetonai išlaiko terracotta ir šalavijo akcentus. */
.today { gap: 16px; padding-bottom: 160px; }
.today h1, .today h2, .today h3, .today p { margin: 0; }
.today h1 { font-size: 23px; line-height: 1.15; }
.today h2 { font-size: 16px; }
.today-header { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.today-header > div:nth-child(2) { flex: 1; }
.today-pill { border: 1px solid var(--color-border); border-radius: var(--radius-pill); padding: 8px 12px; font-weight: 800; }
.today-balance { color: var(--color-points); }
.today-xp { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; color: var(--color-accent); font-weight: 800; }
.today progress { width: 100%; height: 10px; accent-color: var(--color-accent); }
.today-segments { display: flex; padding: 4px; border: 1px solid var(--color-border); border-radius: var(--radius-pill); }
.today-segments button { flex: 1; min-width: 0; }
.today .ui-card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 22px; padding: 16px; }
.today .today-hero { border: 2px dashed var(--color-primary); padding: 18px; border-radius: 28px; }
.today-hero h3 { font-size: 24px; }
.today-eyebrow { color: var(--color-primary); letter-spacing: .12em; font-size: 12px; font-weight: 800; }
.today-hero button { min-height: 56px; font-size: 19px; }
.today-mission { position: relative; }
.today-mission .ui-btn--secondary { background: transparent; border: 2px solid var(--color-primary); color: var(--color-primary); }
.today button { transition: transform 80ms; }
.today button:active { transform: scale(.96); }
.today .today-warning { color: var(--color-warning); font-weight: 800; }
.today-track { height: 14px; background: var(--color-border); border-radius: var(--radius-pill); position: relative; margin: 8px 12px 8px 0; }
.today-fill { height: 100%; background: var(--color-accent); border-radius: inherit; position: relative; transition: width 420ms ease-out; }
.today-fill > span { position: absolute; right: -12px; top: -8px; font-size: 22px; }
.today-segment-progress { display: flex; gap: 4px; }
.today-segment-progress > span { flex: 1; height: 8px; border-radius: var(--radius-pill); background: var(--color-border); }
.today-segment-progress > .is-done { background: var(--color-accent); }
.today-done-tag { text-decoration: line-through; padding: 6px 12px; border: 1px solid var(--color-border); border-radius: var(--radius-pill); color: var(--color-text-muted); }
.today-add { position: fixed; bottom: calc(var(--nav-height) + 18px); right: max(20px, calc((100vw - 700px) / 2)); z-index: 10; box-shadow: var(--shadow-md); }
.today select { min-height: 44px; background: var(--color-surface); color: var(--color-text); border: 2px solid var(--color-border); border-radius: 8px; font: inherit; }
.today button:focus-visible, .today input:focus-visible, .today select:focus-visible { outline: 3px solid var(--color-primary); outline-offset: 3px; }
.today-coin { position: fixed; z-index: 1100; pointer-events: none; font-weight: 900; color: var(--color-points); animation: today-flight 1s both; }
.today-bump { animation: today-bump 800ms both; }
.today-collapse { animation: today-collapse 500ms 200ms both; }
.today-party-modal .ui-modal__title { font-size: 32px; text-align: center; color: var(--color-primary); }
.today-party { position: relative; height: 140px; display: grid; place-items: center; overflow: hidden; }
.today-party span { position: absolute; color: var(--color-primary); font-size: 28px; transform: rotate(0deg) translateY(-50px); animation: today-star 900ms both; }
@keyframes today-flight { 0% { opacity: 0; } 12% { opacity: 1; } 60% { opacity: 1; transform: translate(-15vw, -40px) scale(1.1); } 85%, 100% { opacity: 0; transform: translate(0, 0) scale(.7); } }
@keyframes today-bump { 60% { transform: scale(1); } 80% { transform: scale(1.2); } }
@keyframes today-collapse { to { opacity: 0; transform: translateY(12px) scale(.85); } }
@keyframes today-star { from { opacity: 0; transform: rotate(0deg) translateY(0) scale(.3); } to { opacity: 1; transform: rotate(0deg) translateY(-50px); } }
@media (prefers-reduced-motion: reduce) {
  .today *, .today-coin, .today-party *, .today-party-modal *, .ui-toast { animation: none !important; transition: none !important; }
}

/* Dienų perjungiklis: užrašai nesilaužo, mygtukai dalijasi plotį. */
.today-segments .ui-btn { white-space: nowrap; padding-inline: var(--space-sm); min-width: 0; flex: 1 1 0; }

/* Įrankių eilutė: filtras ir atnaujinimas greta, ne per visą plotį. */
.today-tools { display: flex; flex-wrap: wrap; gap: var(--space-sm); align-items: center; }
.today-tools .ui-btn:not(.today-add) { flex: 0 1 auto; width: auto; padding-inline: var(--space-md); }
