.today-panel{margin:0;background:#fff;border:1px solid #dce7e2;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(12,43,34,.045);display:flex;flex-direction:column;min-height:0}
.today-head{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.8fr);gap:16px;padding:14px 16px;background:#0f4b3b;color:#fff;align-items:center}
.today-head .section-kicker{color:#b8f249;font-size:10px}.today-head h2{margin:3px 0 0;font-size:20px;line-height:1.08}.today-head p{display:none}
.today-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.today-summary-item{min-width:0;display:flex;align-items:center;gap:8px;padding:8px 9px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.05);color:#fff;text-align:left;font:inherit}
.today-summary-action{cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.today-summary-action:hover{background:rgba(255,255,255,.1);border-color:rgba(184,242,73,.45);transform:translateY(-1px)}
.today-summary-icon{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border-radius:8px;background:rgba(184,242,73,.12);color:#b8f249;font-size:13px;font-weight:900}
.today-summary-item div{min-width:0}.today-summary-item small{display:block;color:#a9beb6;font-size:7px;letter-spacing:.1em;font-weight:900}.today-summary-item b{display:block;margin-top:1px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-summary-item em{display:block;margin-top:1px;color:#d0dfd9;font-style:normal;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.today-missions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 12px;background:#fff}
.today-mission{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;min-height:68px;padding:9px 10px 18px;border:1px solid #dfe8e4;border-radius:11px;background:#fbfdfc;color:#103f33;text-align:left;font:inherit;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}
.today-mission:hover{border-color:#9ac4b3;box-shadow:0 5px 12px rgba(15,75,59,.055);transform:translateY(-1px)}
.today-mission.done{background:#0f4b3b;border-color:#0f4b3b;color:#fff}.today-mission.done:hover{background:#125442}
.today-mission-status{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#e8f3ee;color:#16775b;font-size:12px;font-weight:900}.today-mission.done .today-mission-status{background:rgba(184,242,73,.14);color:#b8f249}
.today-mission-copy{min-width:0}.today-mission-copy small{display:block;font-size:7px;letter-spacing:.09em;font-weight:900;color:#789387}.today-mission.done .today-mission-copy small{color:#a8c0b7}.today-mission-copy b{display:block;margin-top:2px;font-size:13px}.today-mission-copy em{display:none}
.today-mission-progress{position:absolute;left:10px;right:10px;bottom:7px;height:3px;border-radius:999px;background:#e3ebe7;overflow:visible}.today-mission-progress i{display:block;height:100%;border-radius:inherit;background:#75a98f}.today-mission.done .today-mission-progress{background:rgba(255,255,255,.16)}.today-mission.done .today-mission-progress i{background:#b8f249}.today-mission-progress small{position:absolute;right:0;bottom:4px;color:#82978e;font-size:7px}.today-mission.done .today-mission-progress small{color:#c7d9d2}
.today-footer{display:none}

/* Компактна головна: KPI → короткий ритм дня → курси. */
.portal-shell.home-balanced .portal-content{padding-top:24px;padding-bottom:30px}
.portal-shell.home-balanced .dash-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}
.portal-shell.home-balanced .dash-stat.home-stat-hidden{display:flex!important}
.portal-shell.home-balanced .dash-stat{min-height:92px;padding:14px 16px;gap:13px}
.portal-shell.home-balanced .dash-stat-icon{width:42px;height:42px;font-size:20px}
.portal-shell.home-balanced .dash-stat b{font-size:24px;margin:2px 0}
.portal-shell.home-balanced .dash-stat span{font-size:11px}
.portal-shell.home-balanced .dash-stat small{font-size:10px}
.portal-shell.home-balanced .gam-rank-chip{display:none!important}
.portal-shell.home-balanced .home-focus-grid{display:block;margin-bottom:12px}
.portal-shell.home-balanced .home-focus-grid>.quick-card{display:none!important}
.portal-shell.home-balanced .home-focus-grid>.today-panel{width:100%;min-height:0}
.portal-shell.home-balanced .home-layout{grid-template-columns:minmax(0,1fr)!important;gap:0}
.portal-shell.home-balanced .home-layout>.quick-card{display:none!important}
.portal-shell.home-balanced .home-route{width:100%;padding:18px 24px}
.portal-shell.home-balanced .home-route .section-head h2{font-size:25px;margin:5px 0}
.portal-shell.home-balanced .home-route .section-kicker{font-size:10px}
.portal-shell.home-balanced .route-list{margin-top:10px}
.portal-shell.home-balanced .route-row{grid-template-columns:42px 1fr 18px;gap:12px;padding:12px 0}
.portal-shell.home-balanced .route-num{width:38px;height:38px;border-radius:9px}
.portal-shell.home-balanced .route-row b{font-size:13px}
.portal-shell.home-balanced .route-row small{font-size:10px;margin-top:2px}
.portal-shell.home-balanced .route-row strong{font-size:19px}
.portal-shell.home-balanced .route-track{margin-top:6px;height:4px}
.portal-shell.home-balanced .side-progress{display:block!important}
.portal-shell.home-balanced .portal-side-bottom{margin-top:auto}
.portal-shell.home-balanced .side-logout{margin-top:12px}

@media(max-width:1250px){.today-head{grid-template-columns:1fr}.today-missions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.portal-shell.home-balanced .dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.today-missions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.portal-shell.home-balanced .portal-content{padding-top:18px}.portal-shell.home-balanced .dash-grid{grid-template-columns:1fr}.portal-shell.home-balanced .home-route{padding:18px}.today-head{padding:14px}.today-summary,.today-missions{grid-template-columns:1fr}.today-missions{padding:9px}.today-mission{min-height:64px}}
@media(max-width:520px){.today-panel{border-radius:14px}.today-head h2{font-size:19px}.today-summary-item{padding:8px 9px}}
