/* Home: today's tasks followed by one full-width input form. */
[hidden]{display:none!important}
.shell{width:min(calc(100% - 32px),760px);padding-top:max(16px,env(safe-area-inset-top))}
.tabs{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}
.view-heading{flex-wrap:wrap}.view-heading h2{font-size:26px}
.task-list{max-height:32svh;overflow-y:auto;padding:3px}
.task-row{grid-template-columns:24px minmax(0,1fr) auto;gap:10px}
.task-title{white-space:normal;overflow-wrap:anywhere;line-height:1.6}
.task-meta{font-size:14px;overflow-wrap:anywhere;line-height:1.5}
.task-actions button{min-height:44px;font-size:14px;padding:6px}
.task-group-heading{margin:12px 0 0;font-size:16px}
.empty-state{padding:16px 8px}.empty-icon{display:none}.empty-state p{margin-bottom:8px}
.quick-add{margin:22px 0 28px;padding:20px;min-width:0}
.quick-add h3{margin:0 0 16px;font-size:22px;line-height:1.5;overflow-wrap:anywhere}
.quick-add form{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.quick-add input,.quick-add textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:52px;padding:12px;border:1px solid #c8c8c8;border-radius:12px;background:white;color:#17324d;font:inherit;font-size:16px}
.quick-add textarea{min-height:128px;line-height:1.7;resize:vertical;overflow-wrap:anywhere}
.quick-add label{font-size:16px;line-height:1.5}
.deadline-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.deadline-pill{min-height:48px;padding:10px 6px;border:1px solid #c8c8c8;border-radius:12px;background:white;color:#17324d;font-size:16px;line-height:1.4;white-space:normal}
.deadline-pill.active{background:#102a43;color:white;border-color:#102a43}
.quick-add .primary-button{min-height:52px;font-size:16px}
#quick-custom-wrap label{display:block;margin-bottom:8px}
.calendar-title-row{flex-wrap:wrap}.month-controls{flex-shrink:0}
.dialog-form input{min-width:0;max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:600px){.deadline-pills{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* One continuous lane per task; weekly rows expand to fit every lane. */
.calendar-grid{column-gap:0;row-gap:8px}
.calendar-day{min-width:0;min-height:calc(44px + var(--lanes,0)*16px);padding:0;border:0;border-radius:8px;position:relative;overflow:visible}
.calendar-day.today{box-shadow:inset 0 0 0 1px #b5891c}
.calendar-day .day-number{position:absolute;top:8px;left:0;right:0;font-size:16px;line-height:24px}
.range-mark{position:absolute;top:calc(39px + var(--lane)*16px);left:0;right:0;height:10px;color:var(--range-color);pointer-events:none}
.range-mark::before{content:'';position:absolute;top:4px;height:2px;background:currentColor;left:50%;right:50%}
.range-mark.joins-left::before{left:0}.range-mark.joins-right::before{right:0}
.range-mark::after{content:'';position:absolute;left:calc(50% - 4px);top:1px;width:8px;height:8px;border-radius:50%;background:currentColor}
.selected .range-mark{color:#ffda85}
.range-done{opacity:.45}

.creator-credit{margin:16px 0 0;padding-top:18px;border-top:1px solid #ddd4c4;font-size:12px;color:#9b968e;font-weight:400;text-align:center}.settings-description{font-size:14px;line-height:1.6;margin:4px 0;color:#52616d}
