.plan-intro{margin-bottom:20px}.plan-intro p{margin:8px 0 0}.plan-list-filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin:20px 0}.plan-list-filters label{margin:0;min-width:150px}.plan-list-filters label:first-child{flex:1}.plan-list-filters>span{padding-bottom:10px}.plan-table .cell-value>strong{display:block;margin-bottom:4px}.plan-form h4{margin:0;font-size:14px}.plan-repeat-switch{display:flex;gap:24px;margin:16px 0 8px;flex-wrap:wrap}.plan-time-box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:16px}.plan-field-title{font-size:13px;font-weight:600}.plan-weekdays{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}.plan-weekdays .option{margin:0;padding:8px 10px}.plan-time-box>.cols label{margin-bottom:0}.plan-selection{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;margin:16px 0}.plan-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.plan-choice-list{max-height:240px;overflow:auto;margin:10px 0;padding-right:3px}.plan-choice-list .option{margin:7px 0;font-size:14px}.plan-choice-list .option input{flex-shrink:0}.plan-selection .help{margin-bottom:0}.plan-target-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.plan-target-pager button{font-size:12px;padding:7px 10px;min-height:36px}.plan-target-pager>span{text-align:center}.plan-assignment-hint{background:#efefff;border-radius:10px;padding:12px 14px;color:#4843c0;font-weight:600;margin:16px 0 10px}.plan-form-footer{display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:var(--bg);border-top:1px solid var(--line);padding:14px 0 0}.plan-selected-targets{margin-top:12px}.task-shortcuts{margin:-6px 0 18px}.task-filter-card{margin-bottom:20px}.task-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 16px}.task-filter-grid .task-keyword{grid-column:span 2}.task-current-owner{display:flex;flex-direction:column;gap:5px;margin-bottom:14px;justify-content:center}.task-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:24px}.task-stats .card{padding:16px 18px;display:flex;flex-direction:column;gap:2px}.task-stats strong{font-size:27px;line-height:1.4}.task-stats span{font-size:13px;color:var(--muted)}.task-stats .completed strong{color:#24845d}.task-stats .overdue strong{color:#bb3c50}.task-stats .pending strong{color:#aa7620}.task-section{margin:24px 0 32px}.task-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.task-section-head h3{margin-bottom:4px}.task-section-head p{margin-bottom:0}.task-section-head>span{padding-top:2px}.task-status.completed{background:#e7f6ef;color:#207b55}.task-status.pending{background:#fff4dc;color:#966819}.task-status.overdue{background:#ffe9ed;color:#bb3c50}.task-status.cancelled{background:#eceef2;color:#737887}.task-clickable{cursor:pointer}.task-clickable:hover td{background:#fafaff}.task-table th,.task-table td{min-width:100px}.task-table td:nth-child(1),.task-table td:nth-child(2){min-width:180px}.task-table .actions{flex-wrap:nowrap}.task-blocked{color:#a84825;font-size:12px;margin-top:6px;white-space:pre-wrap}.task-blocked-box{background:#fff2e8;border:1px solid #f5dac6;border-radius:10px;padding:12px;font-size:13px;margin:16px 0}.task-record-count{margin-top:12px}.task-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:18px;margin-bottom:18px}.task-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task-detail-meta>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.task-detail-meta span{font-size:12px;color:var(--muted)}.task-detail-meta strong{font-size:14px}.task-detail-actions{margin:18px 0 10px}.task-linked-heading{margin:24px 0 12px}.task-detail-record{margin-bottom:20px}.task-detail-record h4{margin:12px 0 7px;font-size:15px}.task-detail-record h4 .muted{font-weight:400}.task-detail-photo{width:120px;max-width:100%;height:120px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
@media(max-width:900px){.task-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-stats{gap:8px}.task-stats .card{padding:14px}.task-table .actions{flex-wrap:wrap}}
@media(max-width:600px){.plan-list-filters{gap:12px;align-items:stretch}.plan-list-filters label:first-child{flex-basis:100%}.plan-list-filters>span{padding:10px 0 0}.plan-time-box,.plan-selection{padding:14px}.plan-time-box .cols{gap:12px}.plan-repeat-switch{gap:8px 16px}.plan-weekdays{gap:6px}.plan-weekdays .option{font-size:12px;padding:7px 9px}.plan-target-pager{gap:7px}.plan-target-pager>span{font-size:11px}.plan-form-footer button{flex:1}.task-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.task-filter-grid .task-keyword{grid-column:1/-1}.task-filter-card{padding:15px}.task-filter-card .actions{gap:8px}.task-filter-card .actions>span{width:100%;margin-top:4px}.task-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.task-stats .card{padding:12px}.task-stats strong{font-size:24px}.task-stats span{font-size:12px}.task-section-head{flex-direction:column;gap:10px}.task-section-head button{width:100%}.task-shortcuts{gap:7px}.task-shortcuts button{padding:8px 11px}.task-table{min-width:0!important}.task-table td:nth-child(1),.task-table td:nth-child(2),.task-table th,.task-table td{min-width:0}.task-table .actions{flex-wrap:wrap}.task-record-table{min-width:0!important}.task-detail-meta{grid-template-columns:1fr}.task-detail-head{font-size:16px;align-items:flex-start}.task-detail-record .card{padding:14px}.task-detail-photo{width:100px;height:100px}}

.task-calendar{margin:0 0 22px;padding:22px;background:#fff}.task-calendar-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px}.task-calendar-head h3{font-size:22px;line-height:1.4;margin-bottom:4px}.task-calendar-head p{margin-bottom:0}.task-calendar-controls{gap:8px;flex-wrap:nowrap}.task-calendar-controls button{white-space:nowrap;font-size:13px;padding:8px 12px}.task-calendar-overview{display:flex;flex-wrap:wrap;gap:12px 22px;padding:10px 0 18px;font-size:13px}.task-calendar-overview strong{font-size:18px;margin-left:5px}.task-calendar-overview .completed{color:#217b56}.task-calendar-overview .incomplete{color:#ad7430}.task-calendar-overview>.muted{margin-left:auto;align-self:center}.task-calendar-weekdays,.task-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.task-calendar-weekdays{padding-bottom:8px;color:var(--muted);font-size:12px;text-align:center}.task-calendar-day{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:7px;min-width:0;min-height:116px;padding:10px 11px;background:#fafbfe;border:1px solid #e8ebf3;border-radius:10px;text-align:left;color:var(--ink);transition:background .15s,border-color .15s}.task-calendar-day:hover{background:#f0f1ff;border-color:#b9b8f2;color:var(--ink)}.task-calendar-date{display:flex;align-items:center;justify-content:space-between;gap:4px;line-height:1.4}.task-calendar-date>strong{font-size:16px}.task-calendar-date>span{font-size:10px;padding:1px 4px;border-radius:4px;background:#e9edff;color:#4a53a6}.task-calendar-metrics{display:flex;flex-direction:column;gap:3px;width:100%}.task-calendar-metric{display:flex;align-items:center;justify-content:space-between;gap:3px;font-size:11px;line-height:1.5;color:#85899b}.task-calendar-metric strong{font-size:13px;font-weight:600}.task-calendar-metric.completed{color:#418367}.task-calendar-metric.incomplete{color:#a58350}.task-calendar-day.has-checks .scheduled{color:#42475f}.task-calendar-day.has-checks .completed{color:#228357}.task-calendar-day.has-checks .incomplete{color:#aa7130}.task-calendar-short-label{display:none}.task-calendar-temporary{font-size:10px;line-height:1.4;color:#6f68aa;padding-top:2px}.task-calendar-outside{padding:10px 11px;min-height:116px;color:#c3c6d0;line-height:1.4}.task-calendar-outside>span{font-size:16px}.task-calendar-day.is-today{border-color:#a1b2ed;box-shadow:inset 0 0 0 1px #a1b2ed}.task-calendar-day.is-in-range{background:#f0f2fc;border-color:#d6def5}.task-calendar-day.is-selected{background:#eeedff;border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.task-calendar-day.is-selected .task-calendar-date>strong{color:#514bcc}.task-calendar-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:15px}.task-calendar-legend>span{display:inline-flex;align-items:center;gap:5px}.task-calendar-legend i{display:inline-block;width:10px;height:10px;border-radius:3px}.task-calendar-legend .today{background:#fff;border:1px solid #91a5e5}.task-calendar-legend .selected{background:#eeedff;border:1px solid var(--brand)}.task-calendar-legend .range{background:#f0f2fc;border:1px solid #d6def5}.task-calendar-error{background:#fff5ed;border:1px solid #f1dbc9;border-radius:8px;padding:10px 12px;margin-bottom:16px;font-size:12px}.task-calendar-error button{min-height:30px;font-size:12px;margin-left:8px}.task-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.task-check-card{min-width:0;padding:20px;border:1px solid #e3e6ef;border-top:3px solid #e4c48c;border-radius:13px;background:#fff;display:flex;flex-direction:column;box-shadow:0 4px 15px #27325204;overflow-wrap:anywhere}.task-card-completed{border-top-color:#53a281}.task-card-overdue{border-top-color:#d77a86}.task-card-cancelled{border-top-color:#bac1cd;background:#fafbfc}.task-check-card-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;margin-bottom:13px}.task-card-template{font-size:13px;color:#757b92;line-height:1.6}.task-check-card-head .badge{white-space:nowrap;flex-shrink:0;font-size:11px}.task-check-card h4{margin:0 0 14px;font-size:18px;line-height:1.5;font-weight:650;letter-spacing:.1px}.task-card-plan{margin:-5px 0 14px;font-size:12px}.task-card-meta{margin:0 0 18px;display:flex;flex-direction:column;gap:11px}.task-card-meta>div{display:grid;grid-template-columns:65px minmax(0,1fr);gap:8px;align-items:baseline}.task-card-meta dt{color:var(--muted);font-size:12px}.task-card-meta dd{margin:0;font-size:13px}.task-card-meta time strong{font-weight:600;white-space:nowrap}.task-card-blocked{border-radius:8px;background:#fff3e8;padding:9px 10px;margin:0 0 12px}.task-card-bottom{margin-top:auto;padding-top:13px;border-top:1px solid #eef0f5}.task-card-bottom>p{font-size:11px;margin-bottom:10px}.task-card-bottom .actions{display:flex;gap:8px;flex-wrap:nowrap}.task-card-bottom .actions button{flex:1;min-width:0;min-height:38px;padding:7px 10px;font-size:12px}.task-card-bottom .actions button:first-child:last-child{flex:0 1 auto;min-width:110px}
@media(max-width:1000px){.task-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-calendar-head{align-items:flex-start}.task-calendar-overview>.muted{width:100%;margin-left:0}.task-calendar-day{padding:9px;min-height:112px}.task-calendar-outside{padding:9px;min-height:112px}}
@media(max-width:650px){.task-card-grid{grid-template-columns:1fr;gap:12px}.task-check-card{padding:18px}.task-calendar{padding:15px 10px}.task-calendar-head{flex-direction:column;gap:12px;margin-bottom:10px;padding:0 4px}.task-calendar-head h3{font-size:20px}.task-calendar-head p{font-size:11px}.task-calendar-controls{width:100%;justify-content:space-between}.task-calendar-controls button{flex:1;padding:7px 8px;font-size:12px;min-height:36px}.task-calendar-overview{gap:8px 13px;font-size:11px;padding:8px 4px 14px}.task-calendar-overview strong{font-size:16px;margin-left:3px}.task-calendar-overview>.muted{font-size:10px}.task-calendar-grid,.task-calendar-weekdays{gap:4px}.task-calendar-weekdays{font-size:10px;padding-bottom:6px}.task-calendar-day{padding:6px 4px;gap:5px;border-radius:7px;min-height:101px}.task-calendar-outside{padding:6px 4px;min-height:101px}.task-calendar-date>strong,.task-calendar-outside>span{font-size:13px}.task-calendar-date{gap:1px;align-items:flex-start}.task-calendar-date>span{font-size:8px;padding:1px 2px;line-height:1.5}.task-calendar-metric{font-size:9px;line-height:1.5;gap:1px}.task-calendar-metric strong{font-size:10px}.task-calendar-full-label{display:none}.task-calendar-short-label{display:inline}.task-calendar-temporary{font-size:8px;padding-top:1px}.task-calendar-legend{gap:9px;font-size:10px;margin-top:12px;padding:0 4px}.task-card-meta>div{grid-template-columns:65px minmax(0,1fr)}.task-card-bottom .actions button{min-height:42px;font-size:13px}.task-card-bottom .actions button:first-child:last-child{flex:1}}
.plan-template-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.plan-template-intro h3{margin-bottom:6px}.plan-template-intro p{margin-bottom:0}.plan-template-intro>button{flex-shrink:0}.template-plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.template-plan-card{min-width:0;overflow-wrap:anywhere}.template-plan-card>.row{justify-content:space-between;align-items:flex-start;margin-bottom:14px}.template-plan-card h3{margin:0}.template-plan-card p{font-size:14px}.template-plan-card .actions{margin-top:18px}.template-plan-list>.empty{grid-column:1/-1}.plan-inline-card{max-width:1000px;margin:0 auto}.plan-inline-form .plan-form-footer{padding-bottom:12px;background:#fff}.plan-date-settings{margin:18px 0;border:1px solid var(--line);border-radius:12px;padding:15px 16px}.plan-date-settings>summary{font-weight:600;cursor:pointer}.plan-date-settings[open]>summary{margin-bottom:12px}.plan-date-settings>label:last-child{margin-bottom:0}.plan-flow-steps{display:flex;list-style:none;padding:0;margin:0 auto 24px;max-width:1000px;gap:14px}.plan-flow-steps li{flex:1;display:flex;align-items:center;gap:10px;padding:14px 18px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:#fff;font-size:14px}.plan-flow-steps span{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border-radius:50%;background:#f0f1f6;font-weight:600}.plan-flow-steps .complete{color:#267a57}.plan-flow-steps .complete span{background:#e7f5ee}.plan-flow-steps .current{border-color:#b9b5f1;background:#f5f4ff;color:#5146bd}.plan-flow-steps .current span{background:#5e5ce6;color:#fff}@media(max-width:650px){.plan-template-intro{align-items:stretch;flex-direction:column;gap:14px}.template-plan-list{grid-template-columns:1fr;gap:12px}.plan-inline-card{padding:16px}.plan-flow-steps{flex-direction:column;gap:8px;margin-bottom:16px}.plan-flow-steps li{padding:11px 14px;font-size:13px}.plan-date-settings{padding:13px}.plan-inline-form .plan-form-footer{margin:0 -2px}}
.task-display-bar{display:flex;align-items:center;gap:18px;margin:0 0 18px}.task-display-toggle{display:flex;gap:6px;flex-shrink:0;padding:5px;border:1px solid var(--line);border-radius:12px;background:#fff}.task-display-toggle button{min-width:94px}.task-display-bar p{margin:0;font-size:13px;line-height:1.7}.task-stats button.card{text-align:left;color:var(--ink);cursor:pointer;margin:0;min-width:0;align-items:flex-start}.task-stats button.card:hover,.task-stats button.card.is-selected{border-color:var(--brand);background:#f7f6ff}.task-stats small{font-size:10px;font-weight:400;color:var(--muted);margin-top:5px}.task-check-card[role=button]{cursor:pointer;transition:border-color .15s,box-shadow .15s}.task-check-card[role=button]:hover{border-color:#aaa6e8;box-shadow:0 5px 18px #514bcc0d}.task-check-card[role=button]:focus-visible{outline:3px solid #aaa6e8;outline-offset:3px}.task-group-card h4{margin-bottom:5px}.task-group-progress{margin:6px 0 12px}.task-group-progress>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:9px}.task-group-progress strong{font-size:24px}.task-group-progress span{font-size:12px;color:var(--muted)}.task-group-progress progress{width:100%;height:7px;border:0;border-radius:8px;overflow:hidden;accent-color:#6b64d7}.task-group-progress progress::-webkit-progress-bar{background:#eeedf7}.task-group-progress progress::-webkit-progress-value{background:#6b64d7}.task-card-completed progress{accent-color:#2e9670}.task-card-completed progress::-webkit-progress-value{background:#2e9670}.task-group-card .task-card-bottom{display:flex;justify-content:space-between;gap:8px;font-size:11px}.task-detail-link{color:var(--brand);font-weight:600;white-space:nowrap}.task-group-detail-summary{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#f0efff;border-radius:12px;padding:16px;margin:18px 0}.task-group-detail-summary span{color:var(--muted);font-size:13px}.task-group-check-list{display:flex;flex-direction:column;gap:10px}.task-group-check{border:1px solid var(--line);border-radius:10px;padding:14px;display:flex;justify-content:space-between;gap:16px;align-items:center}.task-group-check>div:first-child>.badge{margin-left:10px}.task-group-check .actions{flex-shrink:0;gap:6px}.task-group-check .actions button{font-size:12px;padding:7px 10px}
@media(max-width:650px){.task-display-bar{display:block}.task-display-toggle{width:max-content;margin-bottom:10px}.task-display-bar p{font-size:12px}.task-stats small{font-size:9px}.task-stats button.card{padding:12px 10px}.task-group-check{align-items:stretch;flex-direction:column;gap:12px}.task-group-check .actions button{flex:1;min-height:40px}.task-group-detail-summary{flex-direction:column}.task-group-progress strong{font-size:25px}}
.task-day-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 24px}.task-day-summary>div{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--line);padding:15px;border-radius:11px}.task-day-summary strong{font-size:23px;color:var(--brand)}.task-day-summary span{color:var(--muted);font-size:12px}.task-day-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.task-day-group{display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:9px;padding:16px;min-width:0;font-size:12px;overflow-wrap:anywhere}.task-day-group-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.task-day-group-heading strong{font-size:14px}.task-day-group-heading .badge{white-space:nowrap;flex-shrink:0}.task-day-record-heading{margin-top:24px;align-items:center}.task-day-detail h4{margin:0}.task-day-detail .task-record-table{font-size:12px}
@media(max-width:600px){.task-day-groups{grid-template-columns:1fr}.task-day-summary{gap:7px}.task-day-summary>div{padding:11px}.task-day-summary strong{font-size:20px}.task-day-summary span{font-size:11px}}
