.people-list{display:grid;gap:10px}
.person-row{display:grid;grid-template-columns:1fr 110px 110px;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px}
.person-row strong,.person-row small{display:block}
.person-row small{margin-top:3px;color:var(--muted)}
.person-row select{border:1px solid var(--line);border-radius:8px;padding:7px;background:#0f131a;color:var(--text)}
@media(max-width:560px){.person-row{grid-template-columns:1fr}.person-row select{width:100%}}

/* Restored task assignee dropdown */
.assignee-field{position:relative;display:grid;gap:7px;align-content:start;overflow:visible}
.field-label{color:#c8cfda;font-size:13px;font-weight:700}
.assignee-dropdown{position:relative;overflow:visible}
.assignee-dropdown[open]{z-index:60}
.assignee-dropdown>summary{min-height:43px;display:flex;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#0f131a;color:var(--text);font-size:13px;font-weight:700;list-style:none;cursor:pointer}
.assignee-dropdown>summary::-webkit-details-marker{display:none}
.assignee-dropdown>summary::after{content:"⌄";margin-left:auto;color:var(--muted)}
.assignee-dropdown[open]>summary{border-color:rgba(142,123,255,.65)}
.assignee-options{position:absolute;z-index:70;top:calc(100% + 6px);left:0;right:0;display:grid;gap:5px;min-width:230px;max-height:220px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:12px;background:#10141c;box-shadow:0 18px 48px rgba(0,0,0,.58)}
.form-grid .assignee-option{display:flex;grid-template-columns:none;align-items:center;gap:9px;padding:9px 10px;border:1px solid transparent;border-radius:9px;color:#dce2eb;font-size:13px;cursor:pointer}
.assignee-option:hover{background:#1d2330}
.assignee-option:has(input:checked){border-color:rgba(142,123,255,.45);background:#292548;color:#eeeaff}
.form-grid .assignee-option input{width:auto;flex:0 0 auto;accent-color:var(--accent)}

/* Status identity is consistent in every view */
.card,.calendar-card{border-left-width:3px}
.card.status-backlog,.calendar-card.status-backlog{border-left-color:#7c8795}
.card.status-not-started,.calendar-card.status-not-started{border-left-color:#69a7ff}
.card.status-in-progress,.calendar-card.status-in-progress{border-left-color:#f3bd65}
.card.status-completed,.calendar-card.status-completed{border-left-color:#55d6a5}
.chip.status-backlog{background:rgba(124,135,149,.22);color:#c5cbd4}
.chip.status-not-started{background:rgba(105,167,255,.22);color:#a9ccff}
.chip.status-in-progress{background:rgba(243,189,101,.22);color:#f7d596}
.chip.status-completed{background:rgba(85,214,165,.22);color:#9ce9c9}
.card.dragging{opacity:.42}
.column.drag-over{border-color:var(--accent);background:rgba(142,123,255,.08)}
.toast.error{border-color:rgba(255,105,117,.5);color:#ffb0b7}
.calendar-nav{display:flex;align-items:center;gap:6px}
.calendar-nav button{min-width:36px;height:36px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:#151a23;color:var(--muted);font-weight:750}
.calendar-nav button:hover{border-color:#586274;color:var(--text)}

/* Collision-free duration calendar with movable, two-ended cards */
.calendar-scroll{max-height:calc(100vh - 205px);overflow:auto;border-radius:16px}
.calendar-week{border-bottom:1px solid var(--line)}
.calendar-week:last-child{border-bottom:0}
.events{--lanes:1;grid-template-rows:repeat(var(--lanes),minmax(86px,auto));grid-auto-rows:unset;min-height:102px;gap:7px 0;padding:8px 4px;background:
linear-gradient(to right,
transparent calc(14.285% - 1px),var(--line) calc(14.285% - 1px),var(--line) 14.285%,transparent 14.285%,
transparent calc(28.57% - 1px),var(--line) calc(28.57% - 1px),var(--line) 28.57%,transparent 28.57%,
transparent calc(42.855% - 1px),var(--line) calc(42.855% - 1px),var(--line) 42.855%,transparent 42.855%,
transparent calc(57.14% - 1px),var(--line) calc(57.14% - 1px),var(--line) 57.14%,transparent 57.14%,
transparent calc(71.425% - 1px),var(--line) calc(71.425% - 1px),var(--line) 71.425%,transparent 71.425%,
transparent calc(85.71% - 1px),var(--line) calc(85.71% - 1px),var(--line) 85.71%,transparent 85.71%)}
.calendar-card{position:relative;min-width:0;min-height:78px;margin:0 3px;padding:10px 22px;overflow:visible;cursor:grab;touch-action:none;user-select:none}
.calendar-card:hover{z-index:3;border-color:#596475;background:#2b323d}
.calendar-card.no-resize{padding:10px;cursor:pointer;touch-action:auto}
.calendar-card.is-resizing,.calendar-card.is-moving{z-index:10;opacity:.72;outline:2px solid var(--accent)}
.calendar-card.is-moving{cursor:grabbing}
.calendar-card h3{white-space:normal;overflow-wrap:anywhere}
.calendar-assignees{margin-top:7px;color:#c5cbd5;font-size:10px}
.resize-handle{position:absolute;top:0;bottom:0;width:14px;cursor:ew-resize;touch-action:none}
.resize-head{left:0;border-radius:9px 0 0 9px}
.resize-tail{right:0;border-radius:0 9px 9px 0}
.resize-handle::after{content:"";position:absolute;top:50%;width:3px;height:24px;transform:translateY(-50%);border-radius:3px;background:transparent}
.resize-head::after{left:4px}
.resize-tail::after{right:4px}
.calendar-card:hover .resize-handle::after{background:#818998}
.calendar-card.no-resize .resize-handle{display:none}
.overdue-card:not(.is-completed){box-shadow:inset 0 0 0 1px rgba(255,83,96,.18)}
.is-completed{filter:saturate(.55)}
.weekly-calendar .events{grid-template-rows:repeat(var(--lanes),minmax(118px,auto));min-height:140px}
.weekly-calendar .calendar-card{min-height:110px}
.weekly-calendar .calendar-card h3{font-size:14px}

@media(max-width:760px){
  .assignee-options{position:fixed;top:auto;right:12px;bottom:18px;left:12px;max-height:45vh}
  .calendar-scroll{max-height:calc(100vh - 250px)}
}
