/* Pointer interaction stays quiet. Keyboard focus remains visible. */
input:focus:not(:focus-visible),textarea:focus:not(:focus-visible),select:focus:not(:focus-visible),button:focus:not(:focus-visible),a:focus:not(:focus-visible),summary:focus:not(:focus-visible) {outline:0;box-shadow:none;}
.dashboard-note textarea:focus:not(:focus-visible) {outline:0;}
:root:not([data-input-method=keyboard]) :is(input,textarea,select):focus {outline:0;box-shadow:none;}
.task-card:focus-within,.project-card:focus-within {outline:0;}
.task-card:has(:focus-visible),.project-card:has(:focus-visible) {outline:2px solid var(--accent);outline-offset:2px;}
.task-inline-value:hover {outline:0;background:var(--input);text-decoration:none;}
.task-table .task-inline-value>span:first-child {overflow-wrap:normal;white-space:nowrap;}
.task-table .task-inline-value>span:first-child {max-width:220px;overflow:hidden;text-overflow:ellipsis;}
.task-table td:nth-child(3) {min-width:200px;}
.task-table .task-inline-cell {min-width:110px;}
.task-table .task-inline-cell:last-child {min-width:140px;}
.task-table .status-pill {white-space:nowrap;}
.task-table .task-inline-value {font-size:12px;}
.kanban-column[data-drop-active] .kanban-column-tasks::after {content:attr(data-drop-label);display:grid;place-items:center;min-height:170px;border:2px dashed var(--accent);border-radius:18px;background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent);font-size:12px;margin-top:10px;}
.kanban-column[data-drop-active] .kanban-empty {display:none;}
[data-floating-field],.task-properties-dialog .assignee-menu[popover],.assignee-menu[popover] {position:fixed;inset:auto;margin:0;width:280px;max-width:calc(100vw - 16px);padding:12px;background:var(--solid);color:var(--text);border:1px solid var(--divider);border-radius:16px;box-shadow:0 12px 40px #0003;overflow:auto;z-index:1000;box-sizing:border-box;transform:none;}
[data-floating-field]::backdrop {background:transparent;backdrop-filter:none;}
.floating-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;}
.floating-heading h3,.floating-heading h2 {margin:0;font-size:13px;}
.floating-heading .icon-button {width:28px;height:28px;min-height:28px;padding:6px;}
.floating-field-form {display:grid;gap:10px;margin:0;}
.floating-field-form .dialog-actions {display:flex;justify-content:flex-end;gap:8px;}
.floating-field-form .button {font-size:12px;min-height:34px;padding:7px 12px;}
.field-options {display:grid;gap:3px;border:0;padding:0;margin:0;max-height:290px;overflow:auto;}
.field-options {min-width:0;max-width:100%;}
.field-options label>span,.assignee-option>[data-person-name] {min-width:0;overflow-wrap:anywhere;}
.field-options label,.task-inline-form .task-inline-person,.assignee-menu .assignee-option {position:relative;display:flex!important;flex-direction:row!important;align-items:center;gap:10px;min-height:40px;margin:0!important;padding:8px 10px;border-radius:10px;cursor:pointer;background:transparent;font-size:13px;line-height:1.4;}
.field-options input,.task-inline-form .task-inline-person input,.assignee-menu .assignee-option input {position:absolute;width:1px!important;height:1px!important;opacity:0;margin:0;}
.field-options label:has(input:checked),.task-inline-form .task-inline-person:has(input:checked),.assignee-menu .assignee-option:has(input:checked) {background:color-mix(in srgb,var(--accent) 17%,var(--solid));color:var(--text);box-shadow:inset 3px 0 var(--accent);}
.field-options label:has(input:focus-visible),.task-inline-form .task-inline-person:has(input:focus-visible),.assignee-menu .assignee-option:has(input:focus-visible) {outline:2px solid var(--accent);outline-offset:-2px;}
.field-options label:hover,.task-inline-form .task-inline-person:hover,.assignee-menu .assignee-option:hover {background:var(--input);}
.task-inline-form .task-inline-people {display:grid;gap:3px;padding:2px;max-height:260px;}
.task-inline-form .task-inline-person .avatar {width:28px;height:28px;flex:none;}
.task-inline-dialog {position:fixed;inset:auto;margin:0;width:280px;max-height:calc(100dvh - 16px);padding:12px;border-radius:16px;z-index:1000;background:var(--solid);}
.task-inline-dialog .task-inline-form {gap:10px;}
.task-inline-dialog .task-inline-header h2 {font-size:13px;}
.task-inline-dialog .task-inline-header .eyebrow {display:none;}
.task-inline-dialog .task-inline-header>.icon-button {width:28px;height:28px;min-height:28px;}
.task-inline-dialog .task-inline-actions>.button {font-size:12px;min-height:34px;padding:7px 12px;}
.assignee-menu[popover] .assignee-options {max-height:240px;overflow:auto;}
.assignee-menu[popover]>input[type=search] {width:100%;min-width:0;margin-bottom:8px;}
.date-picker-head {display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px;}
.date-picker-head strong {font-size:13px;text-transform:capitalize;}
.date-picker-head button {min-width:30px;min-height:30px;padding:4px;border:0;border-radius:8px;background:var(--input);color:var(--text);}
.date-picker-grid {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center;}
.date-picker-grid>span {font-size:10px;color:var(--muted);padding:5px 0;}
.date-picker-grid>button {border:0;border-radius:8px;background:none;color:var(--text);min-width:0;min-height:30px;padding:4px;font-size:12px;}
.date-picker-grid>button:hover {background:var(--input);}
.date-picker-grid>button[aria-pressed=true] {background:var(--accent);color:#fff;}
.date-picker-grid>button[data-today] {box-shadow:inset 0 0 0 1px var(--accent);}
.date-picker input[type=date] {width:100%;font-size:13px;margin:10px 0 6px;}
.date-picker-clear {font-size:12px;}
.field-options label[hidden],.task-inline-form .task-inline-person[hidden],.assignee-menu .assignee-option[hidden] {display:none!important;}
.task-create-dialog {width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);}
.task-create-form {display:flex;flex-direction:column;gap:12px;}
.task-create-form>label {font-size:12px;margin:0;}
.task-create-form .field-hint {margin:0;line-height:1.5;}
.task-create-form .task-property-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.task-create-form .task-property-fields>div:not([data-create-options]),.task-create-form [data-create-options]>div {display:grid;gap:7px;min-width:0;}
.task-create-form [data-create-options] {display:contents;}
.task-create-form .task-property-fields>div:not([data-create-options]),.task-create-form [data-create-options]>div {align-content:start;}
.task-create-form .task-property-fields label,.task-create-form .assignee-field>span {margin:0;font-size:12px;line-height:18px;}
.task-create-form .task-property-fields input[type=date],.task-create-form .task-property-fields select,.task-create-form .assignee-chooser>summary {height:44px;min-height:44px;}
.task-create-form .dialog-actions {display:flex;justify-content:flex-end;gap:10px;margin-top:6px;}
.task-create-page {max-width:690px;}
.task-create-page [data-task-create-close] {display:none;}
.calendar-workspace .calendar-entry,.calendar-day-details .calendar-entry {width:100%;background:var(--event-color);border:0;color:var(--event-ink,#fff);}
.calendar-entry.calendar-task {--event-color:#005bea;--event-ink:#fff;}
.calendar-entry small,.calendar-entry strong {color:inherit;}
.calendar-entry:hover {filter:brightness(.94);}
.calendar-entry:focus-visible {outline:2px solid var(--text);outline-offset:1px;}
.calendar-event-summary[data-floating-field] {width:420px;padding:20px;}
.calendar-event-summary .floating-heading {align-items:flex-start;}
.calendar-event-summary .floating-heading h2 {font-size:20px;line-height:1.35;overflow-wrap:anywhere;min-width:0;}
.calendar-event-summary .icon-button {flex:none;}
.calendar-summary-date {font-size:13px;line-height:1.6;display:flex;gap:8px;align-items:flex-start;}
.calendar-summary-date>.icon {flex:none;margin-top:3px;width:16px;height:16px;}
.calendar-summary-source {font-size:12px;color:var(--muted);overflow-wrap:anywhere;}
.calendar-summary-properties {display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:10px 16px;font-size:12px;margin:18px 0;}
.calendar-summary-properties dt {color:var(--muted);}
.calendar-summary-properties dd {margin:0;overflow-wrap:anywhere;}
.calendar-summary-description {font-size:13px;white-space:pre-wrap;line-height:1.6;overflow-wrap:anywhere;max-height:180px;overflow:auto;}
.calendar-event-summary .button {font-size:12px;margin-top:4px;}
.calendar-tasks-link>.icon {display:none;}
.task-sheet .comment-create .comment-mention-tools {display:flex;flex-wrap:nowrap;width:auto;max-width:none;top:8px;height:34px;}
.task-sheet .comment-create .comment-composer-actions {width:auto;flex:0 0 auto;}
.task-sheet .comment-create .comment-mention-editor>textarea {min-height:50px;height:50px;line-height:22px;}
.task-sheet .comment-bubble {padding-inline-end:0;}
.task-sheet .comment-bubble-header,.task-sheet .comment-bubble:has(.comment-edit) .comment-bubble-header {padding-inline-end:64px;}
.task-sheet .comment-icon-actions,.task-sheet .comment-bubble:has(.comment-edit) .comment-icon-actions {top:0;right:32px;inset-inline-end:32px;}
@media(pointer:coarse){.task-sheet .comment-icon-actions .icon-button,.task-sheet .comment-edit>summary{width:44px;height:44px;min-width:44px;min-height:44px;padding:12px;}.task-sheet .comment-icon-actions,.task-sheet .comment-bubble:has(.comment-edit) .comment-icon-actions{right:48px;inset-inline-end:48px;}.task-sheet .comment-bubble-header,.task-sheet .comment-bubble:has(.comment-edit) .comment-bubble-header{min-height:44px;padding-inline-end:96px;}}
@media(max-width:640px){.task-sheet .comment-create .comment-mention-editor>textarea{min-height:56px;height:56px;}.task-sheet .comment-create .comment-mention-tools{top:6px;height:44px;}}
@media(max-width:440px){.calendar-workspace .work-heading h1{white-space:nowrap;overflow-wrap:normal;font-size:26px;}.calendar-workspace .calendar-tasks-link{width:36px;padding:8px;}.calendar-tasks-link>span:not(.icon){display:none;}.calendar-tasks-link>.icon{display:block;width:18px;height:18px;}}
@media(max-width:440px){.task-create-form .task-property-fields{grid-template-columns:minmax(0,1fr);}.task-create-form input,.task-create-form select,.task-create-form textarea{font-size:16px;}}
@media(pointer:coarse) {.field-options label,.task-inline-form .task-inline-person,.assignee-menu .assignee-option {min-height:44px;}.date-picker-grid>button{min-height:34px;}}
