.deadline-section{margin:0 0 22px}.deadline-section-heading{display:flex;align-items:baseline;gap:14px;margin-bottom:11px;flex-wrap:wrap}.deadline-section-heading h2{font-size:16px;font-weight:650;color:var(--muted)}.deadline-section-heading>span{font-size:14px;color:var(--muted)}.deadline-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.deadline-panel{min-width:0;background:#fff;border:1px solid #e5e8ef;border-top:2px solid #d1a77a;border-radius:8px;overflow:hidden}.deadline-panel.is-overdue{border-top-color:#c78082}.deadline-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border-bottom:1px solid #eef0f4}.deadline-panel h3{font-size:15px;font-weight:600;display:flex;align-items:center;gap:9px;color:var(--amber)}.deadline-panel.is-overdue h3{color:var(--danger-text)}.deadline-panel h3 strong{font-size:16px}.deadline-panel header>span{font-size:14px;color:var(--muted)}.deadline-panel select{font-size:14px;color:var(--amber);background:transparent;border:1px solid #ece4d9;padding:4px 5px;border-radius:4px}.deadline-list{max-height:208px;overflow-y:auto;scrollbar-width:thin}.deadline-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 56px 64px;align-items:center;gap:10px;padding:12px 16px;text-align:left;border-bottom:1px solid #f0f1f5;background:#fff}.deadline-row:last-child{border-bottom:0}.deadline-row:hover{background:#faf8fc}.deadline-row-main{min-width:0}.deadline-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;color:var(--muted);font-weight:600}.deadline-row small{display:block;font-size:14px;color:var(--muted);margin-top:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.deadline-owner{font-size:14px;color:var(--muted);overflow-wrap:anywhere;text-align:right}.deadline-distance{font-size:14px;color:var(--amber);text-align:right;white-space:nowrap}.is-overdue .deadline-distance{color:var(--danger-text)}.deadline-empty{font-size:14px;color:var(--muted);padding:18px 16px;line-height:1.8}
.work-schedule{display:grid;grid-template-columns:minmax(0,1fr) 300px;border:1px solid var(--border);border-radius:9px;background:#fff;margin:0 0 22px;overflow:hidden;min-width:0}.calendar-main{min-width:0}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 20px 17px}.calendar-header h2{font-size:18px;color:var(--muted);font-weight:650}.calendar-header p{font-size:14px;color:var(--muted);margin-top:7px;line-height:1.6}.calendar-controls{display:flex;gap:5px;align-items:center;flex-shrink:0}.calendar-controls>.icon-button{font-size:26px;color:var(--muted);width:26px;min-width:26px;height:30px;padding:0}.calendar-month{position:relative;min-width:0}.calendar-month input{border:0;color:var(--muted);background:transparent;font:inherit;font-size:15px;font-weight:600;max-width:145px;padding:5px 2px}.calendar-controls .button{font-size:14px;padding:6px 9px;margin-left:4px}.calendar-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;min-width:0;position:relative}.calendar-month-grid{min-width:0}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;border-top:1px solid #eaecf2;border-bottom:1px solid #eaecf2;padding:10px 0;color:var(--muted);font-size:14px;background:#fbfcfd}.is-sunday{color:var(--danger-text)}.is-saturday{color:var(--info-text)}.calendar-week{height:104px;position:relative;border-bottom:1px solid #e9ecf2}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:100%}.calendar-day{min-width:0;position:relative;padding:0;border-right:1px solid #edf0f5;background:#fff;text-align:left;color:var(--muted)}.calendar-day:last-child{border-right:0}.calendar-day:hover{background:#faf8fe}.calendar-day.is-selected{background:#f5f1fb;box-shadow:inset 0 0 0 1.5px #baa8dc}.calendar-day.outside-month{background:#fafbfd;color:var(--muted)}.calendar-day.is-selected.outside-month{background:#f5f1fb}.calendar-day.is-sunday{color:var(--danger-text)}.calendar-day.is-saturday{color:var(--info-text)}.calendar-date-number{position:absolute;top:5px;left:7px;display:flex;align-items:center;justify-content:center;width:25px;height:24px;font-size:14px;border-radius:50%}.calendar-day.is-today .calendar-date-number{background:#7863b0;color:#fff;font-weight:650}.calendar-more{position:absolute;bottom:5px;left:8px;font-size:14px;color:var(--purple-text)}.calendar-week-events{position:absolute;top:34px;left:0;right:0;pointer-events:none}.calendar-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:4px;min-height:23px}.calendar-bar{min-width:0;height:22px;padding:3px 6px;line-height:16px;font-size:14px;text-align:left;border-radius:4px;margin:0 3px;border:1px solid transparent;pointer-events:auto;overflow:hidden}.calendar-bar>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-bar:hover{filter:brightness(.97);border-color:currentColor}.calendar-bar-owner{opacity:1}.calendar-bar.continues-before{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.calendar-bar.continues-after{margin-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.tone-todo{background:#f0f1f5;color:#3f4757;border-color:#e2e5eb}.tone-doing{background:#e3ebfb;color:var(--info-text)}.tone-review{background:#ede7f7;color:var(--purple-text)}.tone-soon{background:#faf0df;color:var(--amber)}.tone-overdue{background:#f8e6e8;color:var(--danger-text)}.tone-done{background:#e8f1ec;color:var(--success-text)}.cal-start-1{grid-column-start:1}.cal-start-2{grid-column-start:2}.cal-start-3{grid-column-start:3}.cal-start-4{grid-column-start:4}.cal-start-5{grid-column-start:5}.cal-start-6{grid-column-start:6}.cal-start-7{grid-column-start:7}.cal-span-1{grid-column-end:span 1}.cal-span-2{grid-column-end:span 2}.cal-span-3{grid-column-end:span 3}.cal-span-4{grid-column-end:span 4}.cal-span-5{grid-column-end:span 5}.cal-span-6{grid-column-end:span 6}.cal-span-7{grid-column-end:span 7}
.calendar-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--muted);padding:14px 18px}.calendar-legend span{display:inline-flex;align-items:center;gap:5px}.calendar-legend i{width:7px;height:7px;border:1px solid currentColor;border-radius:2px}.calendar-legend small{font-size:13px;margin-left:auto;color:var(--muted)}.calendar-partial-note{font-size:14px;color:var(--muted);line-height:1.8;padding:0 18px 14px}.calendar-agenda{border-left:1px solid #e6e9f1;background:#fcfcfe;min-width:0;padding:21px 18px;display:flex;flex-direction:column;gap:16px}.calendar-agenda>header>small{font-size:14px;color:var(--muted)}.calendar-agenda h3{font-size:18px;color:var(--muted);margin-top:8px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.calendar-agenda h3>span{font-size:14px;font-weight:500;color:var(--purple-text);margin-left:auto}.agenda-list{display:flex;flex-direction:column;gap:10px;max-height:510px;overflow-y:auto;scrollbar-width:thin}.day-task{display:block;width:100%;border:1px solid #e6e7ef;background:#fff;border-radius:7px;text-align:left;padding:14px 13px}.day-task:hover{border-color:#c1b4d8}.day-task-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.day-task-head .badge{font-size:13px;padding:3px 7px}.day-task-head .day-due{background:none;font-size:14px}.day-task>strong{display:block;font-weight:600;font-size:16px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.day-task-owner{display:flex;gap:8px;align-items:baseline;justify-content:space-between;font-size:14px;color:var(--muted);margin-top:12px;line-height:1.6}.day-task-owner>b{font-size:14px;color:var(--muted);font-weight:500;flex-shrink:0;max-width:40%;overflow-wrap:anywhere}.day-task-period{display:flex;align-items:center;gap:5px;margin-top:8px;font-size:14px;color:var(--muted)}.day-task-period svg{height:12px;width:12px;flex-shrink:0}.day-task-next{display:block;border-top:1px solid #eff0f6;font-size:14px;color:var(--muted);line-height:1.75;margin-top:10px;padding-top:9px;overflow-wrap:anywhere;white-space:pre-wrap}.agenda-empty{padding:22px 3px;font-size:15px;color:var(--muted);line-height:1.8}.agenda-empty>small{display:block;font-size:14px;color:var(--muted);margin-top:10px}.agenda-note{font-size:14px;color:var(--muted);line-height:1.8;margin-top:auto;padding-top:6px}.agenda-completed summary{font-size:14px;color:var(--success-text);cursor:pointer;padding:5px 0}.agenda-completed .day-task{margin-top:9px}.kanban-date-button{display:flex;align-items:center;gap:5px;font:inherit;color:inherit;padding:0;text-align:left;line-height:1.6}.kanban-date-button:hover{text-decoration:underline}.kanban-date-button svg{flex-shrink:0}.kanban-date>span{overflow-wrap:anywhere}
@media(max-width:1150px){.work-schedule{grid-template-columns:minmax(0,1fr) 260px}.calendar-header{align-items:flex-start;flex-direction:column;gap:12px}.calendar-controls{width:100%;justify-content:flex-end}.calendar-agenda{padding:18px 14px}.calendar-legend{gap:10px}.calendar-header p{display:none}}
@media(max-width:900px){.work-schedule{grid-template-columns:minmax(0,1fr)}.calendar-agenda{border-left:0;border-top:1px solid #e6e9f1}.agenda-list{max-height:400px}.calendar-header{flex-direction:row;align-items:center}.calendar-controls{width:auto}.deadline-row{grid-template-columns:minmax(0,1fr) 40px 54px;gap:7px;padding:12px}.deadline-owner{font-size:14px}}
@media(max-width:760px){.deadline-grid{grid-template-columns:minmax(0,1fr);gap:10px}.deadline-section{margin-bottom:17px}.deadline-section-heading{gap:8px}.deadline-section-heading h2{font-size:16px}.deadline-section-heading>span{font-size:13px}.deadline-panel>header{padding:11px 12px}.deadline-list{max-height:155px}.deadline-row{grid-template-columns:minmax(0,1fr) 48px 58px;padding:11px 12px}.deadline-empty{padding:13px 12px;font-size:14px}.deadline-row strong{font-size:14px}.deadline-row small{font-size:13px}.calendar-header{padding:16px 13px;flex-direction:column;align-items:flex-start;gap:12px}.calendar-header h2{font-size:17px}.calendar-controls{width:100%;justify-content:space-between}.calendar-month input{max-width:175px}.calendar-month-grid{min-width:0}.calendar-week{height:96px}.calendar-bar{font-size:13px;padding:2px 3px;height:20px;line-height:15px;margin-left:1px;margin-right:1px}.calendar-track{min-height:20px;margin-bottom:3px}.calendar-date-number{left:4px;width:23px;height:23px;font-size:14px}.calendar-week-events{top:28px}.calendar-more{font-size:13px;left:5px;bottom:6px}.calendar-bar-owner{display:none}.calendar-legend{padding:12px;font-size:13px;gap:9px}.calendar-legend small{width:100%;margin-left:0}.calendar-agenda{padding:18px 14px}.calendar-agenda h3{font-size:17px}.calendar-partial-note{padding:0 12px 12px;font-size:13px}.work-schedule{margin:0 0 18px}}
@media(prefers-reduced-motion:reduce){.calendar-bar,.calendar-day,.day-task{transition:none}}
.calendar-bar{grid-row:1}
.calendar-day-trigger{position:absolute;top:0;left:0;width:100%;height:32px;color:inherit;text-align:left;padding:0;background:transparent}.calendar-day{cursor:pointer}.calendar-more{padding:0;background:transparent;line-height:15px}

/* Keep the current month's calendar above team navigation, even when it has no tasks. */
.calendar-eyebrow{display:block;font-size:14px;color:var(--purple-text);margin-bottom:7px}.calendar-header h2{font-size:26px;letter-spacing:-.5px}.calendar-header p{display:block;font-size:14px;margin-top:6px}.calendar-header p strong{color:var(--purple-text);font-weight:600}.calendar-header{padding:16px 18px;gap:12px}.calendar-controls{gap:3px}.calendar-agenda{padding-top:18px}.calendar-day-trigger{height:28px}.calendar-unscheduled{border-top:1px solid #e8e8f0;padding-top:16px}.calendar-unscheduled h4{font-size:15px;color:var(--muted);margin:0;display:flex;align-items:center;gap:8px}.calendar-unscheduled h4 span{color:var(--purple-text);font-size:14px}.calendar-unscheduled>p{font-size:14px;color:var(--muted);line-height:1.8;margin-top:7px}.unscheduled-list{max-height:230px;overflow-y:auto;margin-top:10px}.unscheduled-row{display:flex;width:100%;align-items:center;gap:10px;padding:12px 0;text-align:left;border-top:1px solid #ececf2}.unscheduled-row:first-child{border-top:0}.unscheduled-row>span{flex:1;min-width:0}.unscheduled-row strong{display:block;font-size:14px;font-weight:600;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.unscheduled-row small{display:block;font-size:14px;color:var(--muted);margin-top:5px;line-height:1.6}.unscheduled-row>b{color:var(--purple-text);white-space:nowrap;font-size:14px;font-weight:500}.unscheduled-row:hover strong{text-decoration:underline}.calendar-controls .button{min-height:30px}.calendar-more{line-height:13px}
@media(max-width:1150px) and (min-width:901px){.calendar-header{flex-direction:row}.calendar-controls{width:auto;flex-wrap:wrap;justify-content:flex-end;max-width:220px}.calendar-month input{max-width:132px}}
@media(max-width:760px){.calendar-header{padding:15px 12px;gap:12px}.calendar-header h2{font-size:22px}.calendar-header p{font-size:14px}.calendar-eyebrow{font-size:13px;margin-bottom:5px}.calendar-controls{margin-top:0}.calendar-week-events{top:28px}.calendar-more{bottom:5px}.calendar-date-number{top:3px}.calendar-controls>.icon-button{height:30px}.calendar-legend{padding-top:10px;padding-bottom:10px}}

/* Schedule labels use the same readable scale as the rest of the workspace. */
.calendar-header{gap:14px;flex-wrap:wrap}.calendar-header h2{font-size:28px}.calendar-header p{font-size:15px;line-height:1.6}.calendar-eyebrow{font-size:14px}
.calendar-controls{gap:5px}.calendar-controls>.icon-button{width:36px;min-width:36px;height:38px;line-height:1;font-size:28px}.calendar-month input{font-size:16px;max-width:175px;min-height:38px}.calendar-controls .button{font-size:14px;min-height:38px}
.calendar-weekdays{font-size:15px;font-weight:600}.calendar-week{height:132px}.calendar-date-number{font-size:16px;font-weight:600;width:30px;height:30px;top:3px;left:6px}.calendar-day-trigger{height:36px}
.calendar-day.outside-month{color:#64728a}.calendar-day.is-today .calendar-date-number{background:var(--accent)}
.calendar-week-events{top:37px}.calendar-track{min-height:28px;margin-bottom:5px}.calendar-bar{height:28px;line-height:20px;font-size:14px;font-weight:600;padding:3px 6px}.calendar-more{font-size:14px;line-height:20px;bottom:5px;font-weight:600}
.calendar-legend{font-size:14px;gap:14px}.calendar-legend small,.calendar-partial-note{font-size:14px;line-height:1.6}.calendar-legend i{width:9px;height:9px}
.calendar-agenda h3{font-size:20px;line-height:1.5}.calendar-agenda>header>small,.calendar-agenda h3>span{font-size:14px}.day-task>strong{font-size:17px;line-height:1.6}.day-task-head .badge,.day-task-head .day-due{font-size:14px}.day-task-owner,.day-task-owner>b,.day-task-period,.day-task-next,.agenda-note{font-size:14px;line-height:1.6}.day-task-owner{align-items:flex-start;gap:8px}.day-task-owner>span{min-width:0;overflow-wrap:anywhere}.day-task-owner>b{font-weight:650}.agenda-empty{font-size:16px}.agenda-empty>small{font-size:14px}.agenda-completed summary{font-size:15px}
.calendar-unscheduled h4{font-size:16px}.calendar-unscheduled h4 span,.calendar-unscheduled>p{font-size:14px}.unscheduled-row{flex-wrap:wrap}.unscheduled-row strong{font-size:15px}.unscheduled-row small,.unscheduled-row>b{font-size:14px}.unscheduled-row>span{flex-basis:100%}.unscheduled-row>b{margin-left:auto}
.deadline-section-heading h2{font-size:18px}.deadline-section-heading>span{font-size:14px}.deadline-panel h3{font-size:16px}.deadline-panel h3 strong{font-size:18px}.deadline-panel header>span,.deadline-panel select{font-size:14px}.deadline-panel>header{flex-wrap:wrap}.deadline-row{grid-template-columns:minmax(0,1fr) 70px 82px;gap:12px}.deadline-row strong{font-size:16px;white-space:normal;line-height:1.55;overflow-wrap:anywhere}.deadline-row small,.deadline-owner,.deadline-distance{font-size:14px;line-height:1.6}.deadline-list{max-height:288px}.deadline-empty{font-size:15px;line-height:1.7}
@media(max-width:1150px) and (min-width:901px){.calendar-header{flex-direction:column;align-items:flex-start}.calendar-controls{max-width:none;width:100%}}
@media(max-width:760px){.calendar-header{padding:16px 12px;gap:12px}.calendar-header h2{font-size:26px}.calendar-header p{font-size:14px}.calendar-eyebrow{font-size:14px}.calendar-controls{width:100%;gap:3px}.calendar-month input{font-size:16px;max-width:164px}.calendar-controls .button{font-size:14px}.calendar-week{height:130px}.calendar-week-events{top:37px}.calendar-bar{height:28px;line-height:20px;font-size:14px;padding:3px}.calendar-track{min-height:28px;margin-bottom:5px}.calendar-date-number{font-size:16px;left:3px}.calendar-more{font-size:13px;line-height:20px;left:4px;bottom:4px}.calendar-legend,.calendar-legend small,.calendar-partial-note{font-size:14px}.calendar-agenda h3{font-size:20px}.deadline-row{grid-template-columns:minmax(0,1fr) 55px 70px;gap:8px}.deadline-panel>header{gap:9px}.deadline-panel select{font-size:15px}.deadline-list{max-height:270px}.deadline-row strong{font-size:16px}.deadline-row small,.deadline-owner,.deadline-distance{font-size:14px}.deadline-empty{font-size:15px}}

.agenda-list{max-height:630px}.agenda-empty,.agenda-note,.day-task-next,.calendar-partial-note{word-break:keep-all;overflow-wrap:anywhere}.day-task>strong{color:var(--ink)}
@media(max-width:900px){.agenda-list{max-height:520px}}

@media(max-width:380px){.calendar-controls{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.calendar-controls .calendar-month input{width:100%;min-width:0;max-width:100%}.calendar-controls .button{grid-column:1 / -1;justify-self:end;margin-left:0}}

/* Due-date view: one compact chip per task on its deadline, most urgent first; spans stay in the day pane. */
.calendar-mode{display:inline-flex;border:1px solid var(--border);border-radius:7px;overflow:hidden;margin-right:8px}.calendar-mode button{white-space:nowrap;min-height:38px;padding:6px 13px;font-size:14px;font-weight:600;color:var(--muted);background:#fff}.calendar-mode button+button{border-left:1px solid var(--border)}.calendar-mode button.selected{background:#efe9fa;color:var(--purple-text)}
.calendar-week.due-mode{height:auto}.calendar-week.due-mode .calendar-days{height:auto}.calendar-day.due-mode{display:flex;flex-direction:column;gap:3px;min-height:148px;padding:38px 4px 6px}
.cal-chips{display:flex;flex-direction:column;gap:3px;min-width:0}.cal-chip{display:flex;align-items:flex-start;gap:5px;width:100%;min-width:0;min-height:26px;padding:2px 7px;border-radius:5px;border:1px solid transparent;font-size:14px;font-weight:600;line-height:20px;text-align:left}.cal-chip:hover{border-color:currentColor}.cal-chip-title{flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.cal-chip-owner{flex-shrink:0;font-size:13px;font-weight:500;display:none}
.calendar-day.due-mode .calendar-more{position:static;align-self:flex-start;padding:0 6px;font-size:14px;line-height:20px}.cal-count{display:none}
@media(min-width:1700px){.cal-chip-owner{display:inline}}
@media(max-width:760px){.calendar-controls{flex-wrap:wrap}.calendar-mode{width:100%;margin:0 0 6px;grid-column:1 / -1}.calendar-mode button{flex:1}}
/* Narrow calendar (phones, or tablets with the side pane) shows a count per day instead of unreadable chips. */
.calendar-main{container-type:inline-size}@container (max-width:700px){.calendar-day.due-mode{min-height:74px;padding:34px 2px 4px}.cal-chips,.calendar-day.due-mode .calendar-more{display:none}.cal-count{display:inline-flex;align-self:flex-start;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;margin-left:3px;border-radius:12px;font-size:13px;font-weight:700}}
/* 기간 미지정 업무: its own tinted box so it reads apart from the day list and the calendar; rows are white cards. */
.calendar-unscheduled{margin-top:18px;padding:14px 14px 12px;border:1px solid #ecdcbf;border-radius:10px;background:#fffaf1}.calendar-unscheduled h4{font-size:16px;color:var(--ink);font-weight:700}.calendar-unscheduled h4 span{min-width:24px;height:22px;padding:0 8px;border-radius:11px;background:#f6e7c8;color:var(--amber);font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.calendar-unscheduled>p{font-size:13px;margin-top:4px;line-height:1.6}
.unscheduled-list{display:flex;flex-direction:column;gap:6px;max-height:280px;margin-top:10px;padding-right:2px}.unscheduled-row,.unscheduled-row:first-child{flex-wrap:nowrap;padding:10px 12px;border:1px solid #efe6d6;border-radius:8px;background:#fff}.unscheduled-row>span{flex-basis:auto}.unscheduled-row strong{font-size:14px;color:var(--ink);line-height:1.5}.unscheduled-row small{font-size:13px;margin-top:2px}.unscheduled-row>b{font-size:20px;line-height:1;color:var(--purple-text);margin-left:0}.unscheduled-row:hover{border-color:#d9c6a0}

/* Start date in front of a calendar chip title ("10.6~"). */
.cal-chip-from{font-size:12px;font-weight:600;opacity:.75;margin-right:4px}
.cal-chip.tone-todo{border-color:#e2e5eb}
