/* Your Day Today */
.td { max-width: 1120px; margin: 0 auto; padding: 26px 28px 40px; color: #14286E; }
.td-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; }
.td-head h1 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: 34px; color: #14286E; font-weight: 600; }
.td-head-tools { display: flex; gap: 10px; align-items: flex-end; }
.td-date { display: flex; flex-direction: column; font-size: 13px; color: #4B5A85; gap: 4px; }
.td-date input { height: 40px; border: 1px solid #D6DCE8; border-radius: 10px; padding: 0 10px; font: inherit; color: #14286E; }
.td-btn { display: inline-flex; align-items: center; height: 40px; padding: 0 18px; border-radius: 10px; background: #F2600C; color: #FFF; font-weight: 700; text-decoration: none; }
.td-btn.is-light { background: #FFF; color: #14286E; border: 1px solid #D6DCE8; }
.td-who { margin: 0 0 14px; font-size: 14px; color: #4B5A85; }
.td-muted { color: #5B678A; font-size: 14px; margin: 8px 0 0; }
.td-muted a { color: #C2410C; font-weight: 600; }
.td-card { background: #FFF; border: 1px solid #ECEFF5; border-radius: 16px; padding: 18px 20px; margin-bottom: 16px; box-shadow: 0 4px 14px rgba(15,31,92,.05); }
.td-card h3 { margin: 0 0 12px; font-size: 18px; color: #14286E; }
.td-hero { border-left: 6px solid #F59E0B; }
.td-hero.is-g { border-left-color: #16A34A; } .td-hero.is-w { border-left-color: #DC2626; }
.td-hero-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.td-hero small { color: #5B678A; font-size: 14px; }
.td-hero h2 { margin: 4px 0 6px; font-size: 26px; color: #14286E; }
.td-short { margin: 4px 0 0; font-size: 17px; line-height: 1.55; color: #1F2A44; }
.td-badge { padding: 6px 12px; border-radius: 999px; font-weight: 700; font-size: 13px; white-space: nowrap; background: #FEF3C7; color: #92400E; }
.td-badge.is-g { background: #DCFCE7; color: #166534; } .td-badge.is-w { background: #FEE2E2; color: #991B1B; }
.td-boxes { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.td-box { background: #FFF8F2; border: 1px solid #FDE3CF; border-radius: 12px; padding: 10px 12px; }
.td-box small { display: block; font-size: 12px; color: #6B5A4A; margin-bottom: 3px; }
.td-box b { font-size: 15px; color: #14286E; display: flex; align-items: center; gap: 6px; }
.td-box i { width: 14px; height: 14px; border-radius: 50%; border: 1px solid #CBD2E0; display: inline-block; }
.td-favs { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 10px; }
.td-fav { border: 1px solid #ECEFF5; border-radius: 12px; padding: 12px; }
.td-fav-top { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.td-fav-top b { font-size: 15px; }
.td-fav p { margin: 6px 0 0; font-size: 14px; color: #374151; line-height: 1.5; }
.td-fav .lvl, .td-time em { font-style: normal; font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 999px; background: #FEF3C7; color: #92400E; }
.td-fav .lvl.g, .td-time.is-g em { background: #DCFCE7; color: #166534; }
.td-fav .lvl.w, .td-time.is-w em { background: #FEE2E2; color: #991B1B; }
.td-two { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.td-list { margin: 0; padding-left: 18px; line-height: 1.7; font-size: 15px; color: #1F2A44; }
.td-list.is-do li::marker { color: #16A34A; } .td-list.is-dont li::marker { color: #DC2626; }
.td-times { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 8px; margin-top: 12px; }
.td-time { display: grid; grid-template-columns: 1fr auto; gap: 2px 8px; border: 1px solid #ECEFF5; border-radius: 10px; padding: 8px 10px; }
.td-time b { font-size: 14px; } .td-time span { grid-column: 1; font-size: 13px; color: #4B5A85; } .td-time em { grid-row: 1 / span 2; grid-column: 2; align-self: center; }
.td-hours { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.td-hour { border: 1px solid #ECEFF5; border-radius: 10px; padding: 8px 10px; display: flex; flex-direction: column; }
.td-hour span { font-size: 13px; color: #4B5A85; } .td-hour b { font-size: 15px; color: #C2410C; } .td-hour small { font-size: 12px; color: #4B5563; }
@media (max-width: 720px) { .td { padding: 16px; } .td-two { grid-template-columns: 1fr; } .td-head h1 { font-size: 28px; } }
