.calendar-page{padding:24px 12px}.calendar-page>header{margin-bottom:32px}.calendar-page h1{font-size:clamp(28px,3vw,44px);line-height:1.2}.calendar-toolbar{flex-direction:column;gap:24px;margin-bottom:16px;display:flex}.calendar-filters{order:2}.calendar-filters button{text-overflow:ellipsis;max-width:100%;overflow:hidden}.calendar-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.calendar-modes{order:2;gap:4px}.calendar-controls button{min-width:44px;min-height:44px}.calendar-modes button{color:hsl(var(--ink-strong));border-radius:8px;padding-inline:20px}.calendar-modes button[aria-pressed=true],.calendar-filters button[aria-pressed=true]{background:hsl(var(--shell-canvas));border-color:hsl(var(--shell-border));color:hsl(var(--ink-strong));box-shadow:inset 0 -2px hsl(var(--text-tertiary))}.calendar-range{background:hsl(var(--shell-panel-warm));color:hsl(var(--ink-strong));border:1px solid hsl(var(--shell-border-soft));border-radius:8px}.calendar-range button{color:inherit;border-radius:6px}.calendar-range button:hover{background:hsl(var(--shell-canvas));color:inherit}.calendar-task{border-top:8px solid hsl(var(--ink-strong) / .05);--tw-shadow:0 4px 6px #0000000f;--tw-shadow-colored:0 4px 6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);overflow-wrap:anywhere;border-radius:4px;padding:16px 18px 20px;font-size:15px;transition:filter .15s;display:block}.calendar-task:hover{filter:brightness(.97)}.calendar-task:focus-visible{outline:2px solid hsl(var(--ink-strong));outline-offset:3px}.calendar-task-compact{border-radius:4px;padding:12px;font-size:13px}.calendar-filters button,.calendar-modes,.calendar-week>div>div>p{border-radius:8px}.calendar-task.bg-shell-yellow{background-color:hsl(var(--shell-yellow) / .6)}.calendar-task.bg-shell-blue{background-color:hsl(var(--shell-blue) / .6)}.calendar-task.bg-shell-pink{background-color:hsl(var(--shell-pink) / .6)}.calendar-task.bg-shell-green{background-color:hsl(var(--shell-green) / .6)}.calendar-task>div:first-child>span:first-child{background:0 0;border-radius:4px}.calendar-task-compact>div:first-child{margin-bottom:8px}.calendar-week>div{box-shadow:none;--tw-ring-shadow:0 0 transparent;background:0 0;min-width:0;padding:0}.calendar-week .calendar-day-heading{background:hsl(var(--shell-panel-warm));min-height:88px;color:hsl(var(--text-secondary));border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.calendar-week .calendar-day-heading p{color:hsl(var(--ink-strong));font-size:16px}.calendar-week .calendar-day-heading.calendar-day-today{background:hsl(var(--shell-yellow) / .35);color:hsl(var(--ink-strong));box-shadow:inset 0 -2px hsl(var(--shell-yellow))}.calendar-week .calendar-day-today p{color:inherit}.calendar-week>div:last-child .calendar-day-heading:not(.calendar-day-today){color:hsl(var(--primary))}.calendar-month .calendar-day-heading.calendar-day-today{background:hsl(var(--shell-yellow) / .35);border-radius:6px;padding:8px}.calendar-month .calendar-day-today p{color:hsl(var(--ink-strong))}@media (max-width:1023px){.calendar-page{padding:12px 0}.calendar-page>header{margin-bottom:24px}.calendar-controls{gap:12px}.calendar-task{padding:16px;font-size:14px}}
