:root{--responsive-mobile-max:767px;--responsive-tablet-min:768px;--responsive-desktop-min:1024px;--responsive-touch-target:44px;--responsive-safe-block-end:env(safe-area-inset-bottom,0px)}html{background:var(--bg);min-height:100%}body,.app-shell-b{min-height:100dvh}.app-scroll{overscroll-behavior-y:contain;padding-block-end:var(--responsive-safe-block-end)}.responsive-system-touch-target{min-block-size:var(--responsive-touch-target);min-inline-size:var(--responsive-touch-target)}button,a,input,select,textarea,[role=button]{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.project-gantt__agenda,.pm-gantt__agenda,.task-calendar__agenda{display:none}.task-calendar__view-switcher{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;gap:4px;margin-inline-start:auto;padding:3px;display:inline-flex}.task-calendar__view-switcher button{min-block-size:var(--responsive-touch-target);color:var(--muted);font:inherit;background:0 0;border:0;border-radius:7px;padding-inline:10px;font-size:12px;font-weight:800}.task-calendar__view-switcher button[aria-pressed=true]{color:var(--text);background:var(--panel);box-shadow:0 1px 3px #0f172a1f}.task-calendar__agenda,.project-gantt__agenda,.pm-gantt__agenda{padding:14px}.task-calendar__agenda-heading,.project-gantt__agenda-heading,.pm-gantt__agenda-heading{color:var(--text);margin-block-end:10px;font-size:13px;font-weight:850}.task-calendar__agenda-day{border-block-start:1px solid var(--border-soft);padding-block:8px}.task-calendar__agenda-day h3{color:var(--muted);margin:0 0 6px;font-size:12px}.task-calendar__agenda-items{gap:6px;display:grid}.task-calendar__agenda-item,.project-gantt__agenda-item,.pm-gantt__agenda-item{width:100%;min-height:var(--responsive-touch-target);border:1px solid var(--border-soft);color:var(--text);background:var(--panel-2);text-align:start;font:inherit;border-radius:10px;padding:9px 11px}.task-calendar__agenda-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.task-calendar__agenda-item span,.project-gantt__agenda-open span,.pm-gantt__agenda-item span{overflow-wrap:anywhere;min-width:0;font-size:12.5px;font-weight:750}.task-calendar__agenda-item small,.project-gantt__agenda-open small,.pm-gantt__agenda-item small{color:var(--muted);flex:none;font-size:11px}.task-calendar__empty{color:var(--muted);padding:18px 4px;font-size:12px}.project-gantt__agenda-item{border-block-start:1px solid var(--border-soft);background:0 0;border-inline:0;border-radius:0;align-items:stretch;gap:6px;display:flex;position:relative}.project-gantt__agenda-open{min-width:0;color:var(--text);text-align:start;font:inherit;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:3px;display:flex}.project-gantt__agenda-dependency{flex:0 0 var(--responsive-touch-target);border:1px solid var(--border);color:var(--muted);background:var(--panel);border-radius:8px;align-self:center}.project-gantt__agenda-picker{z-index:3;inset-inline:8px;border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow-lg);border-radius:10px;padding:8px;position:absolute;top:calc(100% - 4px)}.project-gantt__agenda-picker>div{color:var(--muted);padding:2px 6px 5px;font-size:11px}.project-gantt__agenda-picker button{width:100%;min-height:var(--responsive-touch-target);color:var(--text);text-align:start;font:inherit;background:0 0;border:0;border-radius:7px;padding:7px 8px;font-size:12px;display:block}.pm-gantt__agenda-wbs{color:var(--muted);background:var(--panel-2);margin-block-start:8px;padding:8px 10px;font-size:12px;font-weight:850}.pm-gantt__agenda-item{border-block-start:1px solid var(--border-soft);background:0 0;border-inline:0;border-radius:0;flex-direction:column;align-items:flex-start;gap:3px;display:flex}.pm-gantt__agenda-item b{color:var(--muted);margin-inline-end:4px;font-family:monospace;font-size:11px}@media (max-width:767px){.modal-overlay{align-items:center;padding:max(16px, env(safe-area-inset-top,0px)) max(16px, env(safe-area-inset-right,0px)) max(16px, env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px))!important}.modal-card:not(.modal-sheet):not(.modal-page),.modal-card.modal-dialog{border-radius:16px!important;width:min(560px,100vw - 32px)!important;max-width:calc(100vw - 32px)!important;height:auto!important;max-height:calc(100dvh - 32px)!important}.modal-card.modal-sheet{align-self:end;margin-block-end:calc(-1 * max(16px, env(safe-area-inset-bottom,0px)));border-radius:16px 16px 0 0!important;width:min(640px,100vw)!important;max-width:100vw!important;height:auto!important;max-height:min(88dvh,900px)!important}.modal-card.modal-page{border-radius:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important}.modal-card:not(.modal-page)>div:last-child{min-height:0;overflow-y:auto}.modal-card.modal-dialog button,.modal-card.modal-sheet button,.modal-card.modal-page button{min-height:var(--responsive-touch-target)}.task-calendar__grid,.project-gantt__desktop,.pm-gantt__desktop{display:none!important}.task-calendar[data-view=grid] .task-calendar__grid,.task-calendar[data-view=grid] .task-calendar__agenda,.project-gantt__agenda,.pm-gantt__agenda{display:block!important}.task-calendar[data-view=grid] .task-calendar__agenda,.task-calendar[data-view=agenda] .task-calendar__grid{display:none!important}.task-calendar[data-view=agenda] .task-calendar__agenda,.task-calendar[data-view=auto] .task-calendar__agenda{display:block!important}.task-calendar[data-view=auto] .task-calendar__grid{display:none!important}.task-calendar__toolbar{flex-wrap:wrap}.task-calendar__toolbar>span{flex:1 0 100%;order:-1}}@media (min-width:768px){.task-calendar[data-view=agenda] .task-calendar__grid,.task-calendar[data-view=agenda] .task-calendar__agenda{display:none}.task-calendar[data-view=agenda] .task-calendar__agenda{display:block}}@media (hover:hover){.task-calendar__agenda-item:hover,.project-gantt__agenda-open:hover,.pm-gantt__agenda-item:hover,.project-gantt__agenda-picker button:hover{border-color:var(--primary);background:var(--primary-soft)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}button,a,input,select,textarea,[role=button],.modal-card,.task-calendar__agenda-item,.project-gantt__agenda-item,.pm-gantt__agenda-item{transition:none!important}}
