/* Planning overview: dates and allocations lead; goal details stay one step away. */
.planning-overview{min-width:0;color:#173650}
.planning-overview button{font:inherit}
.planning-overview button:focus-visible{outline:3px solid #86b5df;outline-offset:2px}
.planning-overview__section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 11px}
.planning-overview__section-head h2{margin:0;color:#173650;font-size:18px;font-weight:650;line-height:1.4}
.planning-overview__section-head p{margin:3px 0 0;color:#64788a;font-size:13px;line-height:1.55}
.planning-overview__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;min-width:0;align-items:start}
.planning-overview__day-selector,.planning-overview__selected-day{display:none}
.planning-overview__day{min-width:0;padding:9px 8px 6px;border:1px solid #dfe6ed;border-radius:8px;background:#fff}
.planning-overview__day.is-today{border-color:#8daecb;box-shadow:inset 0 2px #477ca8}
.planning-overview__day>header{display:flex;align-items:center;justify-content:space-between;gap:3px;min-width:0;margin-bottom:5px;padding-bottom:5px;border-bottom:1px solid #e7edf2}
.planning-overview__date{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:50px;min-height:44px;padding:3px;border:0;border-radius:5px;background:transparent;color:#60778a;text-align:left;cursor:pointer}
.planning-overview__date span{font-size:13px;line-height:1.4}
.planning-overview__date strong{color:#1d3d58;font-size:14px;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.45}
.planning-overview__day-add{display:flex;align-items:center;justify-content:center;gap:2px;min-width:44px;min-height:44px;padding:2px;border:0;border-radius:5px;background:transparent;color:#316b9b;font-size:13px;cursor:pointer}
.planning-overview__day-add img{filter:invert(32%) sepia(20%) saturate(1817%) hue-rotate(164deg) brightness(88%)}
.planning-overview__date:hover,.planning-overview__day-add:hover{background:#f0f6fb;color:#174e7e}
.planning-overview__tasks{min-width:0}
.planning-overview .planning-route__task-row{display:grid;grid-template-columns:minmax(0,1fr) 14px;align-items:center;min-height:44px;gap:1px 6px;padding:5px 0;color:#294a63;font-size:13px!important;line-height:1.5}
.planning-overview__task-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;grid-column:1;min-width:0;overflow:hidden;font-size:13px;overflow-wrap:anywhere}
.planning-overview__task-link{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;grid-column:1;min-width:0;overflow:hidden;color:#5e7689;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.planning-overview .planning-route__task-state{grid-column:1;font-size:13px;color:#65798a}
.planning-overview .planning-route__task-row>img{width:14px;height:14px}
.planning-overview .planning-route__task-row>img{grid-column:2;grid-row:1 / span 3;align-self:center}
.planning-overview .planning-route__task-state{font-size:13px;color:#65798a}
.planning-overview__day-empty,.planning-overview__empty{margin:0;padding:5px 0;color:#64788a;font-size:13px;line-height:1.55}
.planning-overview__day-more{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin-top:4px;padding:4px 6px;border:0;border-top:1px solid #e7edf2;border-radius:0 0 5px 5px;background:transparent;color:#316b9b;font-size:13px;line-height:1.35;cursor:pointer}
.planning-overview__day-more:hover{background:#f0f6fb;color:#174e7e}
.planning-overview__goals{margin-top:27px}
.planning-overview__goal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.planning-overview__goal{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:7px;min-width:0;min-height:72px;padding:11px 13px;border:1px solid #dfe6ed;border-radius:7px;background:#fff;color:#173650;text-align:left;cursor:pointer}
.planning-overview__goal:hover{border-color:#a8c0d5;background:#f8fbfd}
.planning-overview__goal.is-unsplit{border-style:dashed;border-color:#a9bfd2;background:#f8fbfd;box-shadow:inset 3px 0 #6d94b5}
.planning-overview__goal-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-width:0;overflow:hidden;font-size:15px;font-weight:570;line-height:1.5;overflow-wrap:anywhere}
.planning-overview__goal-meta{display:flex;align-items:center;gap:8px;min-width:0;color:#61788b;font-size:13px;line-height:1.5;flex-wrap:wrap}
.planning-overview__goal-meta>span:first-child{min-width:0;overflow-wrap:anywhere}
.planning-overview__relation{min-width:0;color:#647b8e;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.planning-overview__state{color:#5f7486;font-size:13px}
.planning-overview__split{margin-left:auto;color:#526d83;font-size:13px;font-weight:550;white-space:nowrap}
.planning-overview--month{display:block}
.planning-overview__month-goals{margin-bottom:24px}
.planning-overview--month .planning-overview__goal-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.planning-overview__weeks{min-width:0}
.planning-overview__week-list{display:block;border-top:1px solid #e3e9ee}
.planning-overview__month-week{min-width:0;padding:0;border-bottom:1px solid #e3e9ee}
.planning-overview__month-week.has-goals{padding:8px 0 10px}
.planning-overview__month-week.is-current-week{border-left:2px solid #8daecb;padding-left:8px;background:#f8fbfd}
.planning-overview__month-week>header{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;margin:0}
.planning-overview__month-week h3{margin:0;color:#37566f;font-size:14px;font-weight:650;line-height:1.45}
.planning-overview__open-week{flex:0 0 auto;min-width:44px;min-height:44px;padding:4px 7px;border:0;border-radius:5px;background:transparent;color:#316b9b;font-size:13px;line-height:1.35;cursor:pointer}
.planning-overview__open-week:hover{background:#f0f6fb;color:#174e7e}
.planning-overview__open-week:focus-visible{outline:3px solid #86b5df;outline-offset:2px}
.planning-overview__month-week>header>span{flex:0 0 auto;color:#65798a;font-size:13px}
.planning-overview__week-goals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0}
.planning-overview__week-goals .planning-overview__goal{min-height:60px;margin-top:5px;padding:8px 10px}
.planning-overview__week-goals .planning-overview__goal-title{font-size:14px}
.planning-overview__week-goals .planning-overview__goal-meta{font-size:13px}
.planning-overview__week-goals .planning-overview__split{display:none}
.planning-overview--month .planning-overview__week-goals .planning-overview__empty{padding:6px 0}
/* Goal detail is a document section, without another tinted card inside its frame. */
.planning-route .plan-detail{padding:20px;background:#fff}
.planning-route .plan-detail-head{padding:0 0 16px;border:0;border-bottom:1px solid #dfe6ed;border-radius:0;background:transparent}
.planning-route .plan-detail-meta{font-size:13px}
.planning-route .plan-detail-meta>span:last-child{font-size:13px}
.planning-route .plan-detail-subject{font-size:13px}
.planning-route .plan-criterion{margin-top:13px;padding:0;border:0}
.planning-route .plan-criterion>span{font-size:13px;color:#65798a}
.planning-route .plan-criterion p{margin:3px 0 0;font-size:14px;color:#3e596f}
.planning-route .planning-node-connector{height:10px;margin:1px 0 1px 18px;background:#d5e0e8}
.planning-route .planning-parent-node{min-height:48px;padding:5px 0;border:0;border-radius:0;background:transparent}
.planning-route .planning-parent-node.is-independent{background:transparent;border:0;border-bottom:1px dashed #dfe6ed}
.planning-route .plan-card{min-height:64px;padding:11px 12px;gap:7px;border-radius:7px}
.planning-route .plan-card>strong{font-size:15px;font-weight:570}
.planning-route .plan-card-open{min-height:22px;margin:0;font-size:13px}
.planning-route .plan-card-state{font-size:13px}
.planning-route .plan-card-open>img{margin-left:auto}
.planning-route .plan-child-state,.planning-route .plan-readonly,.planning-route .plan-text-action{font-size:13px!important}
.planning-route .planning-route__day-label{font-size:13px!important}
.planning-route .planning-route__day-label strong{font-size:13px}
.planning-route .planning-route__task-state{font-size:13px;color:#65798a}
@media(max-width:1099px){
  .planning-overview__days{grid-template-columns:repeat(4,minmax(0,1fr))}
  .planning-overview--month{grid-template-columns:minmax(0,1fr);gap:25px}
  .planning-overview--month .planning-overview__goal-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:899px){
  .planning-overview__week-goals{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-route .plan-detail{padding:18px 16px}
}
@media(max-width:679px){.planning-overview__week-goals{grid-template-columns:minmax(0,1fr)}}
@media(max-width:899px){
  .planning-overview__section-head{margin-bottom:8px}
  .planning-overview__section-head h2{font-size:17px}
  .planning-overview__days{display:none}
  .planning-overview__day-selector{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;min-width:0;margin:0 0 8px}
  .planning-overview__day-choice{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;min-height:52px;padding:3px 0;border:1px solid transparent;border-radius:6px;background:transparent;color:#5d7488;font:inherit;cursor:pointer}
  .planning-overview__day-choice>span:first-child{font-size:13px;line-height:1.35}
  .planning-overview__day-choice>strong{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.4}
  .planning-overview__day-choice.is-selected{border-color:#9fb8ce;background:#edf4f9;color:#173f60}
  .planning-overview__day-choice.is-today:not(.is-selected){border-color:#d2dfe9}
  .planning-overview__presence{width:5px;height:5px;border-radius:50%;background:transparent}
  .planning-overview__presence.has-tasks{background:#638baa}
  .planning-overview__selected-day{display:block;min-width:0;padding:10px 12px;border:1px solid #dfe6ed;border-radius:8px;background:#fff}
  .planning-overview__selected-day>header{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-bottom:5px;padding-bottom:7px;border-bottom:1px solid #e7edf2}
  .planning-overview__selected-day h3{margin:0;color:#264963;font-size:15px;font-weight:650;line-height:1.45}
  .planning-overview__selected-actions{display:flex;gap:5px;align-items:center;flex-shrink:0}
  .planning-overview__selected-actions button{min-width:44px;min-height:44px;padding:5px 7px;border:1px solid #d8e3ec;border-radius:6px;background:#fff;color:#315d7e;font-size:13px;line-height:1.35}
  .planning-overview__selected-actions button:last-child{border-color:#245f9d;background:#245f9d;color:#fff}
  .planning-overview__selected-day .planning-overview__day-empty{padding:7px 0}
  .planning-overview__tasks{padding-top:1px}
  .planning-overview__goal-list,.planning-overview--month .planning-overview__goal-list{grid-template-columns:minmax(0,1fr)}
  .planning-overview__week-list{grid-template-columns:minmax(0,1fr)}
  .planning-overview__month-week{padding:8px 0}
  .planning-overview__goals{margin-top:22px}
  .planning-overview__split{margin-left:0}
  .planning-overview .planning-route__task-row{padding:3px 0}
  .planning-route .plan-detail{padding:16px 0;border:0;border-radius:0;background:transparent}
  .planning-route .plan-detail-head{padding-bottom:14px}
}
@media(prefers-reduced-motion:reduce){
  .planning-overview *, .planning-route .plan-card{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
