/* LOA Workspace 3: task boards, editing and calendar. */
dialog{overflow:hidden}#editor{display:flex;flex-direction:column;max-height:88vh}.modal-heading,.modal-footer{flex-shrink:0}.form-body{overflow-y:auto;min-height:0;flex:1}.modal-footer{background:white}.project-tabs{scroll-margin-top:12px}
[hidden]{display:none!important}
.page-heading h1{font-size:1.875rem}.page-heading{margin-bottom:26px}.task-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0}.status-legend{display:flex;gap:15px;flex-wrap:wrap;font-size:0.875rem;color:#7c8d79}.status-legend>span{display:flex;align-items:center;gap:6px}.legend-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#9cae97;flex-shrink:0}.legend-dot.waiting{background:#d6ae58}.legend-dot.approved{background:#79a16a}.legend-dot.completed{background:#3f8065}.legend-dot.rejected{background:#ca8075}.kanban{display:grid;grid-template-columns:repeat(4,minmax(225px,1fr));gap:15px;overflow-x:auto;align-items:start;padding:0 0 15px;scroll-snap-type:x proximity}.kanban-column{background:#eef1eb;border:1px solid #e4e9df;border-radius:12px;padding:12px;min-width:0;scroll-snap-align:start}.kanban-heading{display:flex;align-items:center;justify-content:space-between;padding:7px 3px 16px;font-size:0.875rem;color:#63795b}.kanban-heading>span{display:flex;align-items:center;gap:8px;font-weight:600}.kanban-heading>b{font-size:0.875rem;background:#e0e8d8;color:#78876b;padding:4px 7px;border-radius:6px}.kanban-stack{display:flex;flex-direction:column;gap:13px}.column-empty{text-align:center;padding:30px 10px;font-size:0.875rem;color:#a0ad95;border:1px dashed #d6dfcc;border-radius:8px}.task-card{min-width:0;background:#fff;border:1px solid #dfe6d9;border-top:4px solid #d3ad53;border-radius:9px;padding:15px;box-shadow:0 2px 6px #304d2c05;transition:box-shadow .15s,transform .15s}.task-card:hover{box-shadow:0 8px 18px #31552c0f;transform:translateY(-1px)}.task-approved{border-top-color:#7e9f6a;background:linear-gradient(#f8fcf5,#fff 100px)}.task-waiting{border-top-color:#d5af54;background:linear-gradient(#fffdf6,#fff 100px)}.task-rejected{border-top-color:#c97d72;background:linear-gradient(#fff9f7,#fff 100px)}.task-completed{border-top-color:#47806a;background:linear-gradient(#f3faf6,#fff 100px)}.task-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.task-kind{font-size:0.875rem;letter-spacing:1.4px;color:#8c9c82}.task-card .priority{font-size:0.875rem;margin:0}.task-title{background:none;text-align:left;color:#385333;padding:0;font-size:0.875rem;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.task-title:hover{text-decoration:underline}.task-project{font-size:0.875rem;display:block;color:#8b9e7c;margin-top:7px}.task-excerpt{font-size:0.875rem;line-height:1.7;color:#94a089;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:12px 0}.task-date{font-size:0.875rem;line-height:1.7;color:#859777;margin-top:15px}.task-person{display:flex;align-items:center;gap:7px;margin-top:16px;font-size:0.875rem;color:#758969;min-width:0}.task-person>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-reminder{margin-left:auto;color:#8fa77b}.task-card-footer{border-top:1px solid #eaf0e4;padding-top:12px;margin-top:13px;display:flex;gap:5px;align-items:center}.task-card-footer>select{flex:1;min-width:0;min-height:30px;padding:6px 7px;border-color:#e1e7db;color:#738a65;font-size:0.875rem;background:#ffffffa0}.task-card-footer .icon-button{font-size:0.9375rem;padding:4px 5px}.check-progress{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:0.875rem;color:#8ba07a;margin-top:17px;gap:7px}.check-progress b{font-weight:500}.check-progress progress{width:100%;height:3px}.task-list{display:flex;flex-direction:column;gap:12px}.task-list .task-card{display:grid;grid-template-columns:minmax(180px,1fr) 160px 170px;gap:6px 20px;align-items:center}.task-list .task-card-heading{grid-column:1;grid-row:1;margin:0}.task-list .task-title{grid-column:1;grid-row:2}.task-list .task-project{grid-column:1;grid-row:3;margin:0}.task-list .task-excerpt{display:none}.task-list .task-date{grid-column:2;grid-row:1/3;margin:0}.task-list .task-person{grid-column:2;grid-row:3;margin:0}.task-list .task-card-footer{grid-column:3;grid-row:1/4;padding:0;margin:0;border:0}.task-list .check-progress{grid-column:1;grid-row:4;margin-top:5px}.project-hub{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:22px;margin:25px 0}.project-work-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;min-width:0}.project-work-panel .section-title{margin:0 0 20px}.project-work-panel .section-title h2{font-size:1.0rem}.project-work-panel .primary{font-size:0.875rem;padding:10px 12px;min-height:35px}.project-next-tasks{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.next-task{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #e6ecdf;background:#fafcf7;border-radius:8px;text-align:left;color:#59704f;min-width:0}.next-task>span:nth-child(2){flex:1;min-width:0}.next-task strong{display:block;font-size:0.875rem;font-weight:550;line-height:1.5;overflow-wrap:anywhere}.next-task small{display:block;font-size:0.875rem;color:#91a082;margin-top:5px}.next-task>span:last-child{font-size:0.875rem}.next-task:hover{border-color:#b1c5a0}.calendar-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin-top:24px;min-width:0}.calendar-panel.compact{margin:0;padding:20px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.calendar-heading h2{font-size:1.25rem;text-transform:capitalize;margin-top:7px;font-weight:550}.calendar-actions{display:flex;gap:4px;align-items:center}.calendar-actions .secondary{min-height:30px;padding:7px 11px;font-size:0.875rem}.calendar-actions .icon-button{font-size:1.5rem;padding:3px 10px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding-bottom:12px}.calendar-weekdays span{text-align:center;font-size:0.875rem;letter-spacing:.5px;color:#8fa27e}.calendar-grid{border-left:1px solid #e8eddf;border-top:1px solid #e8eddf}.calendar-day{border-right:1px solid #e8eddf;border-bottom:1px solid #e8eddf;padding:7px;min-height:112px;min-width:0}.calendar-day.outside{background:#fafbf7}.calendar-day.outside .day-number{color:#bdc8b2}.calendar-day.is-today{background:#f1f7e8;box-shadow:inset 0 0 0 1px #b4c99e}.day-number{background:none;color:#7b926a;padding:0;min-width:24px;height:24px;font-size:0.875rem;text-align:left;display:flex;align-items:center;gap:5px}.day-number small{font-size:0.875rem;padding:2px 4px;background:#e9f0df;color:#91a47d;border-radius:3px}.is-today .day-number{color:#356039;font-weight:700}.day-events{display:flex;flex-direction:column;gap:3px;margin-top:6px}.calendar-event{background:#f9f3df;color:#9b8249;border:0;border-top:2px solid #d5af54;border-radius:3px;padding:4px 5px;font-size:0.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;max-width:100%;width:100%;min-width:0}.event-approved{background:#edf5e6;color:#718b53;border-color:#8fae72}.event-completed{background:#e7f3ec;color:#488066;border-color:#5c927b}.event-rejected{background:#fcece7;color:#b67b6b;border-color:#ce9786}.calendar-event:hover{filter:brightness(.96)}.day-more{font-size:0.875rem;background:none;color:#8c9c7c;padding:3px;text-align:left}.compact .calendar-heading h2{font-size:1.0rem}.compact .calendar-day{min-height:62px;padding:4px}.compact .calendar-event{font-size:0.875rem;padding:3px}.compact .day-number{font-size:0.875rem;height:17px}.compact .calendar-weekdays{padding-bottom:7px}.compact .calendar-weekdays span{font-size:0.875rem}.compact .calendar-heading{margin-bottom:14px}.compact .editor-label{font-size:0.875rem}.calendar-options{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;font-size:0.875rem;color:#8ca17b}.calendar-options .check{margin:0;font-size:0.875rem}.editor-section{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:23px}.editor-section:last-child{border:0;margin-bottom:0}.editor-label{font-size:0.875rem;letter-spacing:1.5px;color:#97a88a;display:block;margin-bottom:14px}.editor-section .field{font-size:0.875rem}.editor-section textarea{min-height:95px}.checklist-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.checklist-heading .editor-label{margin:0}.checklist-row{display:flex;gap:10px;align-items:center;margin-bottom:10px}.checklist-row>input[type=text]{flex:1;min-width:0}.checklist-row>input[type=checkbox]{width:15px;height:15px;flex-shrink:0}.checklist-row .icon-button{font-size:1.125rem}.day-agenda{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.day-agenda-event{border:0;border-left:3px solid #d5af54;padding:15px;text-align:left;border-radius:7px;background:#faf8f0;color:#647958}.day-agenda-event span{display:block;font-size:0.875rem;letter-spacing:1px;margin-bottom:6px}.day-agenda-event strong{display:block;font-size:0.875rem;font-weight:550}.day-agenda-event small{display:block;font-size:0.875rem;margin-top:8px;opacity:.7}.check-readonly{font-size:0.875rem;line-height:1.8;color:#77916a}.mail-panel{margin-top:24px;max-width:850px}.mail-panel h2{font-size:1.1875rem}.mail-panel p{font-size:0.875rem;color:#8c9d7b;line-height:1.8}.mail-panel .details-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-tabs{background:#ffffff70;border-radius:7px 7px 0 0}.project-tabs button{font-size:0.875rem}
@media(max-width:1250px){.project-hub{grid-template-columns:1fr 1fr;gap:16px}.compact .calendar-day{min-height:56px}.compact .calendar-event{display:none}.compact .day-number{justify-content:center}.compact .day-more{font-size:0.875rem}.project-work-panel{padding:20px}.project-hub .next-task{padding:10px}.project-hub .next-task strong{font-size:0.875rem}.task-list .task-card{grid-template-columns:minmax(150px,1fr) 130px 145px;gap:6px 12px}}
@media(max-width:950px){.project-hub{grid-template-columns:1fr}.compact .calendar-day{min-height:72px}.compact .calendar-event{display:block}.calendar-panel{padding:18px}.calendar-day{min-height:94px;padding:5px}.calendar-event{font-size:0.875rem;padding:4px}.calendar-options>span{display:none}.task-list .task-card{display:block}.task-list .task-date,.task-list .task-person{margin-top:13px}.task-list .task-card-footer{margin-top:12px;border-top:1px solid #eaf0e4;padding-top:10px}.mail-panel .details-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.page-heading h1{font-size:1.5625rem}.task-toolbar{align-items:start}.status-legend{gap:8px;font-size:0.875rem;max-width:205px}.task-toolbar .view-switch button{font-size:0.875rem;padding:8px}.kanban{grid-template-columns:repeat(4,245px);gap:12px}.kanban-column{padding:10px}.task-card{padding:15px}.calendar-panel{padding:13px}.calendar-heading{gap:7px}.calendar-heading h2{font-size:1.0625rem}.calendar-actions .icon-button{padding:3px 6px}.calendar-actions .secondary{padding:7px 9px;font-size:0.875rem}.calendar-options .check{font-size:0.875rem}.calendar-weekdays span{font-size:0.875rem}.calendar-day{min-height:85px;padding:3px}.calendar-event{font-size:0.875rem;padding:4px 2px}.day-number{font-size:0.875rem;gap:2px}.day-number small{font-size:0.875rem;padding:2px}.day-more{font-size:0.875rem}.compact .calendar-day{min-height:57px}.compact .calendar-event{display:none}.compact .calendar-heading h2{font-size:1.0rem}.project-work-panel{padding:19px}.project-hub{gap:15px;margin-top:20px}.project-next-tasks{gap:8px}.next-task{padding:12px}.mail-panel .details-grid{grid-template-columns:1fr}.checklist-row{gap:6px}.checklist-row .icon-button{padding:5px}.project-tabs button{font-size:0.875rem;padding:13px 11px}.task-list .task-card{display:block}.task-title{font-size:0.875rem}}
