#today-dialog{position:fixed;inset:0;margin:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0;padding:0;background:#f8f7fb;color:#272232;box-sizing:border-box;overflow:auto;overscroll-behavior:contain}
#today-dialog::backdrop{background:#f8f7fb}
body.today-is-open{overflow:hidden}
#today-dialog .today-header{position:sticky;top:0;height:auto;min-height:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(16px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 14px max(18px,env(safe-area-inset-left));background:#29213e;color:white;border:0}
#today-dialog h2{margin:0;font-size:clamp(20px,4vw,28px)}
#today-dialog .today-header p{color:#e1d9ee;font-size:14px;margin:6px 0 0}
#today-dialog .today-header button{flex-shrink:0;background:#fff;color:#29213e}
#today-dialog button,#today-dialog a{min-height:44px}
#today-dialog .today-content{max-width:860px;margin:0 auto;padding:16px max(18px,env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));min-width:0}
#today-mode{font-weight:700;color:#6938a5}#today-warning{color:#665575}
#today-events{list-style:none;margin:20px 0;padding:0;display:grid;gap:12px}
#today-events .today-event{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;background:white;border:1px solid #e3dcea;border-radius:14px;padding:18px;overflow-wrap:anywhere}
#today-events time{font-variant-numeric:tabular-nums;font-weight:700;color:#6938a5}
#today-events h3{margin:0;font-size:18px}#today-events p{margin:7px 0;color:#5e5668}
#today-events .today-travel{background:#eeebf5;border-color:transparent;padding:12px 18px}
#today-events .today-note{white-space:pre-wrap}
.today-links{display:flex;flex-wrap:wrap;gap:8px}.today-links a{display:inline-flex;align-items:center;padding:5px 10px;border-radius:8px;background:#f1ecf8;color:#533180;text-decoration:none;box-sizing:border-box}
@media(max-width:480px){#today-events .today-event{grid-template-columns:1fr;gap:6px;padding:14px}#today-dialog .today-header{align-items:flex-start}#today-events .today-travel{padding:10px 14px}}

/* Shared alignment and typography for the full-screen field view. */
#today-dialog .today-header{display:block;padding:env(safe-area-inset-top) 0 0;font-size:14px;letter-spacing:normal}
#today-dialog .today-header-inner{max-width:860px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px max(18px,env(safe-area-inset-right)) 22px max(18px,env(safe-area-inset-left))}
#today-dialog .today-header p{max-width:none;line-height:1.5;letter-spacing:normal}
#today-dialog button{font-size:14px;line-height:1.4;min-height:44px;border-radius:10px;padding:11px 16px}
#today-dialog .today-content{padding-top:24px}
#today-dialog .today-overview{background:#fff;border:1px solid #e3dcea;border-radius:14px;padding:22px;margin:0 0 20px}
#today-dialog #today-empty{margin:0 0 20px;color:#5e5668;font-size:16px;line-height:1.6}
#today-dialog #field-next>p:first-child{margin-top:0}
#today-dialog .field-next-card{border:0;border-radius:0;padding:0;margin:0 0 22px}
#today-dialog #field-day-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 0}
#today-dialog #field-day-actions button{width:100%;height:100%;min-width:0}
#today-dialog #today-details{background:white;border:1px solid #e3dcea;border-radius:14px;padding:0 22px;margin:0 0 20px}
#today-dialog #today-details summary{padding:18px 0;min-height:44px}
#today-dialog .today-footer{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:18px 0 0;border-top:1px solid #e3dcea}
#today-dialog .today-footer p{margin:0;font-size:14px}
#today-dialog #today-warning:empty,#today-dialog #today-feedback:empty{display:none}
@media(max-width:600px){
 #today-dialog .today-header-inner{padding-top:16px;padding-bottom:16px;gap:12px}
 #today-dialog .today-overview{padding:18px}
 #today-dialog #field-day-actions{grid-template-columns:1fr}
 #today-dialog #today-details{padding:0 18px}
 #today-dialog .today-footer button{width:100%}
}
#today-dialog button:focus-visible,#today-dialog a:focus-visible,#today-dialog summary:focus-visible{outline:3px solid #bca6db;outline-offset:3px}
