/* Approved PlanIQ unit views. CI 8 screen aliases; existing analytical palette stays intact. */
/* Planned session: the same sequence/detail hierarchy as documentation and timer. */
.unit-planned .session-overview-layout{display:grid;grid-template-columns:minmax(232px,.85fr) minmax(0,1.55fr);gap:24px;align-items:start}
.unit-planned[data-overview]{container-type:inline-size}
@container(max-width:650px){.unit-planned .session-overview-layout{grid-template-columns:minmax(0,1fr);gap:20px}}
.unit-planned .session-overview-nav{border:1px solid var(--fliq8-divider);border-radius:16px;overflow:hidden;min-width:0}
.unit-planned .session-overview-nav-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--fliq8-divider)}
.unit-planned .session-overview-nav-heading h3{font-size:.95rem;margin:0}.session-overview-nav-heading>span{font-size:.8rem;color:var(--fliq8-secondary)}
.unit-planned .session-overview-phase{padding:16px 12px;border-bottom:1px solid var(--fliq8-divider)}.unit-planned .session-overview-phase:last-child{border-bottom:0}
.unit-planned .session-overview-phase>h3{margin:0 8px 8px;font-size:.85rem;font-weight:500;color:var(--fliq8-secondary)}
.unit-planned button.session-overview-block{display:grid;gap:4px;width:100%;min-height:56px;height:auto;text-align:left;white-space:normal;padding:12px;border:0;border-inline-start:4px solid transparent;border-radius:8px;background:var(--fliq8-surface);color:var(--fliq8-text);box-shadow:none;cursor:pointer;font:inherit}
.unit-planned button.session-overview-block:hover{background:var(--fliq8-muted)}.unit-planned button.session-overview-block[aria-pressed=true]{background:var(--fliq8-selected);border-inline-start-color:var(--fliq8-text)}
.unit-planned button.session-overview-block:focus-visible{outline:3px solid var(--fliq8-focus);outline-offset:-3px}
.session-overview-block>strong{font-size:.95rem;line-height:1.4}.session-overview-block>small{font-size:.8rem;color:var(--fliq8-secondary)}.session-overview-block>em{font-size:.75rem;font-style:normal;margin-top:4px}
.session-overview-block em[hidden],.session-overview-panel[hidden]{display:none!important}
.session-overview-stage,.session-overview-panel{min-width:0}.unit-planned .session-overview-panel>h2{font-size:1.5rem;margin:8px 0 16px;overflow-wrap:anywhere}
.session-overview-eyebrow{font-size:.75rem;font-weight:600;color:var(--fliq8-secondary)}
.session-overview-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:20px;padding:20px 0;margin:16px 0;border-block:1px solid var(--fliq8-divider);align-items:start}
.session-overview-volume{display:grid;gap:8px;min-width:0}.session-overview-volume>span{color:var(--fliq8-secondary);font-size:.8rem}.session-overview-volume>strong{font-size:1.5rem;line-height:1.35;overflow-wrap:anywhere}
.session-overview-facts .effort-route{margin:0;padding:0;border:0;background:transparent}.session-overview-facts .effort-route strong{font-size:1.75rem}.session-overview-facts .effort-route small{font-weight:500}
.session-overview-compact .effort-route{margin:4px 0 0;font-size:.8rem}.session-overview-compact .effort-route strong{font-size:.85rem}.session-overview-compact .effort-route-point small{font-size:.75rem}
.session-overview-rests{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:12px;margin:16px 0 20px}.session-overview-rests>div{display:grid;gap:8px;border-radius:8px;padding:16px;background:var(--fliq8-muted)}.session-overview-rests span{font-size:.8rem;color:var(--fliq8-secondary)}.session-overview-rests strong{font-size:1.25rem}
.session-overview-details{border-top:1px solid var(--fliq8-divider)}.session-overview-details>summary{min-height:48px}.session-overview-details .planned-block{border:0;padding:0;background:var(--fliq8-surface);box-shadow:none}.session-overview-details .planned-block-facts{grid-template-columns:1fr}.session-overview-details .legacy-session-text{white-space:pre-wrap;overflow-wrap:anywhere}
.session-overview-set{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-top:1px solid var(--fliq8-divider);font-size:.85rem}.session-overview-set strong{font-weight:500}
.unit-planned[data-overview] .unit-plan-stats{display:flex;flex-wrap:wrap;gap:24px;padding:16px 0 24px}.unit-planned[data-overview] .unit-plan-stats>div{display:flex;flex-direction:column;gap:4px}.unit-planned[data-overview] .unit-plan-stats strong{font-size:1.5rem}
.session-overview-videos{border-top:1px solid var(--fliq8-divider);margin-top:24px}.session-overview-videos>summary{min-height:48px;padding:12px 0;cursor:pointer;font-weight:500}.session-overview-videos>section{margin-top:0}
@media(max-width:700px){.unit-planned .session-overview-layout{grid-template-columns:minmax(0,1fr);gap:20px}.session-overview-facts{gap:16px}.unit-planned .session-overview-panel>h2{font-size:1.25rem}}
@media print{.unit-planned .session-overview-layout{display:block}.session-overview-nav{display:none}.session-overview-panel[hidden]{display:block!important}.session-overview-details::details-content{content-visibility:visible!important;display:block!important}.session-overview-details:not([open])>*:not(summary){display:block!important}.session-overview-details>summary{display:none}.session-overview-panel{break-inside:avoid}}
.unit-view{color:var(--fliq8-text);font-family:Inter,Arial,sans-serif;font-variant-numeric:tabular-nums;min-width:0}
.unit-view h2{font-size:1rem;margin:24px 0 12px;font-weight:600}.unit-view h3{font-size:1rem;font-weight:600}.unit-view>h2:first-child{margin-top:0}
.unit-view .session-section{background:var(--fliq8-surface);border:0;border-top:1px solid var(--fliq8-divider);border-radius:0;padding:16px 0;margin:0}
.unit-view .session-section h3{display:flex;align-items:center;gap:12px;margin:0 0 12px}.unit-phase-index{background:var(--fliq8-muted);color:var(--fliq8-secondary);border-radius:6px;padding:4px 8px;font-size:.75rem}
.unit-view .legacy-session-text{white-space:pre-wrap;color:var(--fliq8-secondary)}
.unit-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:24px 0;border-bottom:1px solid var(--fliq8-divider)}
.unit-stats>div{display:grid;gap:8px;align-content:start}.unit-stats span,.unit-stats small{color:var(--fliq8-secondary);font-size:.8rem}.unit-stats strong{font-size:1.75rem;font-weight:600;line-height:1.2}
.unit-state-line{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:var(--fliq8-secondary);font-size:.85rem}
.unit-card-values{display:flex;gap:4px 12px;flex-wrap:wrap;grid-column:1;min-width:0;font-size:.8rem;color:var(--fliq8-text)}.unit-card-values>span{color:var(--fliq8-secondary)}
.unit-card-completion{display:inline-flex;align-items:center;max-width:100%;padding:4px 8px;border-radius:6px;background:var(--fliq8-muted);color:var(--fliq8-secondary);font-size:.75rem;line-height:1.4;white-space:normal;grid-column:1}
.unit-card-completion[data-completion=completed]{color:var(--fliq8-success);background:var(--fliq8-successSurface)}.unit-card-completion[data-completion=partially_completed]{color:var(--fliq8-warning);background:var(--fliq8-warningSurface)}.unit-card-completion[data-completion=not_completed]{color:var(--fliq8-danger);background:var(--fliq8-dangerSurface)}
.unit-view .unit-comparison{width:100%;border-collapse:collapse;font-size:.85rem;table-layout:fixed}.unit-comparison th,.unit-comparison td{padding:12px;text-align:left;border:0;border-bottom:1px solid var(--fliq8-divider);vertical-align:top;overflow-wrap:anywhere}.unit-comparison thead th{font-weight:500;color:var(--fliq8-secondary);background:var(--fliq8-muted)}.unit-comparison tbody th{font-weight:500}.unit-comparison .unit-actual{font-weight:600;background:var(--fliq8-muted)}
.unit-individual-values,.unit-original-plan{border-top:1px solid var(--fliq8-divider);margin-top:24px}.unit-view summary{cursor:pointer;min-height:48px;padding:12px 0;font-weight:600;font-size:.9rem}.unit-values-phase{margin-bottom:24px}.unit-value-item{border-top:1px solid var(--fliq8-divider);padding:16px 0}.unit-value-item header{display:flex;gap:12px;align-items:start;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap}.unit-value-item header strong{font-weight:600}.unit-source{font-size:.75rem;color:var(--fliq8-secondary);overflow-wrap:anywhere}.unit-feedback{border-left:3px solid var(--fliq8-divider);padding-left:16px;white-space:pre-wrap;font-size:.9rem}.unit-review{display:flex;gap:16px;align-items:center;justify-content:space-between;padding-top:24px;margin-top:24px;border-top:1px solid var(--fliq8-divider);flex-wrap:wrap}.unit-review h3{margin:0 0 4px;font-size:.9rem}.unit-review p{margin:0;font-size:.8rem;color:var(--fliq8-secondary)}
.session-card .unit-card-values,.month-session .unit-card-values{white-space:normal}.session-card .session-card-trigger{row-gap:8px}.session-card .session-card-indicators{grid-row:auto}.session-card .session-card-meta{grid-row:auto}.session-card .session-title{font-size:.9rem;line-height:1.4}.session-card .session-card-indicators>.training-type-badge{font-size:.75rem}.session-card.compact .session-duration{display:inline}
.unit-detail-dialog{width:min(1000px,calc(100vw - 32px))}.unit-detail-dialog .unit-detail-meta{background:var(--fliq8-surface);border:0;border-radius:0;padding:0 0 16px;color:var(--fliq8-secondary)}.unit-detail-dialog .unit-detail-body{display:block;margin-top:16px}.unit-detail-dialog .unit-detail-shell{padding:24px}.unit-detail-dialog .session-review-layout{display:block}
.unit-video-badge{display:inline-flex;gap:8px;align-items:center;color:var(--fliq8-text);background:var(--fliq8-muted);padding:4px 8px;border-radius:6px;font-size:.8rem;max-width:100%;grid-column:1}.unit-video-badge svg{width:20px;height:20px;flex:none}.unit-video-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--fliq8-control);border-radius:6px;color:var(--fliq8-text);background:var(--fliq8-surface);font:inherit;cursor:pointer}.unit-video-link svg{width:20px;height:20px}.unit-video-notice{font-size:.8rem;color:var(--fliq8-secondary)}
@media(max-width:620px){.unit-stats{gap:16px}.unit-stats strong{font-size:1.25rem}.unit-detail-dialog{width:calc(100vw - 16px)}.unit-detail-dialog .unit-detail-shell{padding:16px}.unit-comparison thead{display:none}.unit-comparison tr{display:block;border-bottom:1px solid var(--fliq8-divider);padding:12px 0}.unit-comparison th,.unit-comparison td{display:flex;justify-content:space-between;gap:16px;border:0;padding:4px 8px}.unit-comparison td:before{content:attr(data-label);font-weight:400;color:var(--fliq8-secondary);flex:none}.unit-review{align-items:stretch;flex-direction:column}.unit-view .planned-block-head{display:block}.unit-view .planned-block-facts{grid-template-columns:1fr}}
@media(max-width:380px){.unit-stats{grid-template-columns:1fr}.unit-stats>div{grid-template-columns:1fr 1fr}.unit-stats small{grid-column:1/-1}.unit-stats strong{font-size:1.25rem}}
.unit-view table.unit-comparison{min-width:0;max-width:100%}
.unit-detail-dialog .dialog-heading>h2,.unit-detail-dialog .dialog-heading>div{min-width:0;overflow-wrap:anywhere}.unit-detail-dialog .dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}.unit-detail-dialog .unit-detail-shell{min-width:0;max-width:100%}

.unit-comparison tbody th{background:var(--fliq8-surface)}.unit-comparison .unit-actual{background:var(--fliq8-muted)}.unit-effort-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.unit-cell-values{display:grid;gap:8px}.unit-cell-values small{display:block;font-size:.75rem;color:var(--fliq8-secondary);font-weight:400}.unit-comparison .unit-source{font-weight:400;margin:8px 0}.unit-view .unit-value-item{margin:0}

.documentation-item strong .unit-video-badge{margin-inline-start:8px;vertical-align:middle;font-weight:400}.month-session .unit-card-facts,.month-session .unit-video-badge{grid-column:1/-1}

/* A planned unit uses the same hierarchy as a documented unit. Full prescriptions remain expandable. */
.unit-planned .unit-plan-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px 0;max-width:100%}
.unit-plan-flow{display:grid;gap:16px}.unit-plan-flow .session-section{border:1px solid var(--fliq8-divider);border-radius:12px;padding:16px;background:var(--fliq8-surface)}
.unit-plan-flow .session-section h3{font-size:.85rem;letter-spacing:0;text-transform:none;margin:0 0 12px;color:var(--fliq8-secondary)}
.unit-plan-flow .planned-block{background:var(--fliq8-surface);box-shadow:none;border-top:0;border-right:0;border-bottom:0;border-radius:0;padding:12px;margin:0;min-width:0}
.unit-plan-flow .planned-blocks{gap:8px}.unit-plan-flow .planned-block-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,16rem);align-items:start;gap:16px}.unit-plan-flow .planned-block-head strong{font-size:1rem}.unit-plan-flow .planned-block-primary{font-size:1.5rem;font-weight:600;line-height:1.35;text-align:left;white-space:normal;overflow-wrap:anywhere;color:var(--fliq8-text)}
.unit-plan-prescription{margin-top:8px}.unit-plan-prescription>summary{min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--fliq8-secondary);font-size:.85rem;font-weight:500;list-style:none}.unit-plan-prescription>summary::before{content:'+';font-size:1.1rem}.unit-plan-prescription[open]>summary::before{content:'−'}.unit-plan-prescription>summary:focus-visible{outline:2px solid var(--fliq8-text);outline-offset:2px}.unit-plan-prescription .planned-block-facts{margin-top:8px}.unit-plan-flow .legacy-session-text{margin:0;line-height:1.6}
@media(max-width:620px){.unit-plan-flow .planned-block-head{grid-template-columns:minmax(0,1fr);gap:8px}.unit-plan-flow .planned-block-primary{font-size:1.25rem}.unit-plan-flow .session-section{padding:12px}.unit-planned .unit-plan-stats strong{font-size:1.25rem}}

/* The entire prescription heading is a native disclosure, including keyboard toggling. */
.effort-route{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;grid-column:1/-1;min-width:0;margin:16px 0;padding:16px;border:1px solid var(--fliq8-control);border-inline-start:4px solid var(--fliq8-text);border-radius:8px;background:var(--fliq8-muted);color:var(--fliq8-text);text-align:left}
.effort-route .effort-route-point{display:grid;gap:4px;min-width:0}
.effort-route .effort-route-point small{font-size:.8rem;line-height:1.4;font-weight:600;color:var(--fliq8-secondary)}
.effort-route .effort-route-point strong{font-size:1.5rem;line-height:1.25;font-weight:750;white-space:normal;overflow-wrap:anywhere;color:var(--fliq8-text)}
.effort-route .effort-route-arrow{font-size:1.5rem;color:var(--fliq8-text)}
.effort-route-length,.effort-route-warning{grid-column:1/-1;font-size:.9rem;font-weight:600;line-height:1.5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.effort-route-compact{padding:0;margin:8px 0;border:0;border-radius:0;background:transparent;gap:8px}
.effort-route-compact .effort-route-point strong{font-size:1rem}
.effort-route-compact .effort-route-point small{font-size:.75rem}
.effort-route.effort-prescription{grid-template-columns:minmax(0,1fr)}
.effort-prescription.effort-route-compact .effort-route-point{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
@media(max-width:480px){.effort-route:not(.effort-route-compact){grid-template-columns:minmax(0,1fr);gap:8px}.effort-route:not(.effort-route-compact) .effort-route-arrow{width:max-content;transform:rotate(90deg)}}
.unit-effort-prescription{margin:16px 0}
#sessionTimerDialog .session-timer-layout,#sessionTimerDialog .session-timer-stage,#sessionTimerDialog .session-timer-step-grid,#sessionTimerDialog .session-timer-step-card{min-width:0}
#sessionTimerDialog .session-workspace-footer,#sessionTimerDialog .session-footer-actions{flex-wrap:wrap;min-width:0}
@media(max-width:1100px){#sessionTimerDialog .session-timer-layout{grid-template-columns:minmax(0,1fr)}}
.unit-plan-prescription{margin-top:0}
.unit-plan-prescription>summary{display:list-item;list-style:disclosure-closed outside;padding:12px 0;margin-inline-start:24px;color:var(--fliq8-text)}
.unit-plan-prescription[open]>summary{list-style-type:disclosure-open}
.unit-plan-prescription>summary::before{content:none}
.unit-plan-prescription[open]>summary::before{content:none}
.unit-plan-prescription>summary::marker{color:var(--fliq8-secondary);font-size:1rem}
.unit-plan-prescription>summary .planned-block-head{display:grid;width:100%}
.unit-prescription-label{display:block;margin-top:8px;color:var(--fliq8-secondary)}
.unit-plan-prescription:not([open])>.unit-prescription-body{display:none}

/* Keep all four metrics compact; the detail card floats beside its trigger. */
.daily-training-state-value:has(.freshness-breakdown){position:relative;min-height:44px;align-content:start}
.daily-training-state-value .freshness-trigger{position:static;display:flex;align-items:baseline;gap:4px;cursor:pointer;min-width:44px;min-height:0;border:0;padding:0;background:transparent;box-shadow:none;color:inherit;font:inherit}
.freshness-trigger::before{content:"▸"}
.freshness-trigger[aria-expanded="true"]::before{content:"▾"}
.freshness-trigger::after{content:"";position:absolute;inset:0;border-radius:inherit}
.freshness-trigger:focus-visible{outline:3px solid var(--fliq8-focus);outline-offset:2px}
.freshness-popover[hidden]{display:none}
.freshness-popover{position:fixed;inset:auto;margin:0;box-sizing:border-box;width:360px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;padding:20px;border:1px solid var(--fliq8-control);border-radius:8px;background:var(--fliq8-surface);color:var(--fliq8-text);box-shadow:var(--fliq-ui-float);font:400 .85rem/1.5 Inter,Arial,sans-serif;text-align:left;z-index:1000}
.freshness-popover::backdrop{background:transparent;pointer-events:none}
.freshness-popover>dl{display:grid;gap:12px;margin:0;font-variant-numeric:tabular-nums}
.freshness-popover>dl>div{display:flex;align-items:baseline;gap:16px;justify-content:space-between}
.freshness-popover>dl dt{font-size:.85rem;font-weight:600;color:var(--fliq8-secondary)}
.freshness-popover>dl dd{font-size:1rem;margin:0;font-weight:600;white-space:nowrap;color:var(--fliq8-text)}
.freshness-popover>p{font:400 .8rem/1.5 Inter,Arial,sans-serif;color:var(--fliq8-secondary);margin:16px 0 0;overflow-wrap:anywhere}

.video-analysis-dialog{width:min(1040px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--fliq8-divider);border-radius:12px;background:var(--fliq8-surface);color:var(--fliq8-text)}
.video-analysis-dialog::backdrop{background:var(--fliq8-overlay,rgba(0,0,0,.65))}
.video-analysis-shell{padding:24px;display:grid;gap:16px;min-width:0}
.video-analysis-shell>header{display:flex;gap:16px;align-items:start;justify-content:space-between;flex-wrap:wrap}
.video-analysis-shell h2{margin:0;font-size:1.25rem}.video-analysis-shell p{margin:8px 0 0;overflow-wrap:anywhere}
.video-analysis-stage{position:relative;min-height:120px}.video-analysis-stage video{width:100%;max-height:60dvh;display:block}.video-analysis-stage canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.video-analysis-stage canvas[hidden]{display:none}
.video-analysis-stage:has(canvas:not([hidden])) video{visibility:hidden}
.video-analysis-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.video-analysis-controls label{display:grid;gap:8px}.video-analysis-controls button,.video-analysis-controls select{min-height:56px;min-width:56px}.video-analysis-controls output{padding:16px 0;font-variant-numeric:tabular-nums}
@media(max-width:620px){.video-analysis-dialog{width:calc(100vw - 16px)}.video-analysis-shell{padding:16px}.video-analysis-controls{gap:8px}}

/* Shared session workspace: overview, documentation and timer retain their own controls. */
html :is(.session-overview-dialog,.session-documentation-dialog,.session-timer-dialog){width:min(1680px,calc(100vw - 16px));max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:0;overflow:auto;overscroll-behavior:contain;border-radius:16px}
html .session-overview-dialog .unit-detail-shell{padding:0;display:grid;gap:0;min-width:0}
html :is(.session-overview-dialog .unit-detail-shell,#executionForm,.session-timer-shell)>.dialog-heading{min-height:72px;margin:0;padding:20px 32px 12px}
html .session-overview-dialog .dialog-heading .eyebrow{display:none}
html :is(.session-overview-dialog .dialog-heading h2,#executionDialogTitle,#sessionTimerTitle){font-size:1.35rem;margin:0;overflow-wrap:anywhere}
html .session-overview-dialog .dialog-heading>.icon-button{flex-shrink:0;width:44px;height:44px;min-height:44px}
html :is(.session-overview-dialog .unit-detail-shell,#executionForm,.session-timer-shell)>.session-workspace-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 32px 24px;padding:8px;border:1px solid var(--fliq8-divider);border-radius:12px;background:var(--fliq8-surface);overflow:visible;min-width:0}
html :is(.session-overview-dialog,.session-documentation-dialog,.session-timer-dialog) .session-workspace-tabs button{flex:1 1 160px;width:auto;max-width:300px;min-width:0;min-height:52px;padding:12px;border:0;border-radius:8px;background:transparent;color:var(--fliq8-text);font-size:.92rem;white-space:normal;overflow-wrap:anywhere;box-shadow:none}
html :is(.session-overview-dialog,.session-documentation-dialog,.session-timer-dialog) .session-workspace-tabs button[aria-selected=true]{background:var(--fliq-product-tint);color:var(--fliq-product-accent);box-shadow:inset 0 -4px var(--fliq-product-accent)}
html :is(.session-overview-dialog,.session-documentation-dialog,.session-timer-dialog) .session-workspace-tabs button[hidden]{display:none}
html .session-overview-dialog .session-workspace-summary{display:flex;align-items:center;flex-wrap:wrap;gap:0;margin:0;padding:0 32px 24px}
html .session-overview-dialog .session-workspace-summary dd{font-size:.9rem;font-weight:700;color:var(--fliq8-text);margin:0}
html .session-overview-dialog .unit-detail-meta{margin:0 32px 16px;padding:0;border:0;background:transparent;gap:8px 16px}
html .session-overview-dialog .unit-detail-meta:empty{display:none}
html .session-overview-dialog .unit-detail-body{margin:0;padding:0 32px 24px;min-width:0}
html .session-overview-dialog .unit-state-line{margin-top:0}
html .unit-planned[data-overview] .unit-plan-stats{padding:12px 0 20px;border:0;gap:24px}
html .unit-planned[data-overview] .unit-plan-stats strong{font-size:1.25rem}
html :is(.session-overview-dialog .session-overview-layout,.session-documentation-layout,.session-timer-layout){display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:20px;align-items:start}
html .unit-planned .session-overview-nav,html .session-overview-stage{border:1px solid var(--fliq8-divider);border-radius:20px;background:var(--fliq8-surface);overflow:hidden;min-width:0}
html .unit-planned .session-overview-nav-heading{min-height:68px;padding:12px 20px}
html .unit-planned .session-overview-nav-heading h3{font-size:1rem}
html .unit-planned .session-overview-phase{padding:12px 16px}
html .unit-planned .session-overview-phase>h3{font-size:.8rem;font-weight:700;color:var(--fliq8-text);min-height:44px;display:flex;align-items:center;margin:0 4px}
html .session-overview-panel{padding:32px;min-height:640px}
html :is(.session-overview-panel>h2,.documentation-editor-heading h3,.session-timer-step-card h3){font-size:1.55rem;line-height:1.3}
html .session-overview-eyebrow{font-size:.75rem;font-weight:700;text-transform:uppercase}
html .unit-planned button.session-overview-block{padding:8px;border-radius:8px}
html .unit-planned button.session-overview-block[aria-pressed=true]{background:var(--fliq-product-tint);border-inline-start-color:var(--fliq-product-accent)}
html :is(.session-overview-block,.documentation-item,.session-timer-progress-item){font-size:.85rem;line-height:1.5}
html :is(.session-overview-block>strong,.documentation-item strong,.session-timer-progress-item strong){font-size:.85rem}
html .session-overview-facts{display:grid;grid-template-columns:1fr;margin:20px 0 16px;padding:0;border:0;gap:12px}
html .session-overview-facts .effort-route{margin:0;padding:16px;border:1px solid var(--fliq8-control);border-inline-start:4px solid var(--fliq8-text);border-radius:8px;background:var(--fliq8-muted)}
html .session-overview-facts .effort-route strong{font-size:1.5rem}
html .session-overview-volume{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;padding:8px 12px;border:1px solid var(--fliq8-divider);border-radius:8px;background:var(--fliq8-muted);width:fit-content;max-width:100%}
html .session-overview-volume>strong{font-size:.9rem}
html .session-overview-rests{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
html .session-overview-rests>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 12px;border:1px solid var(--fliq8-divider);border-radius:8px}
html .session-overview-rests strong{font-size:.9rem}
html :is(.documentation-editor-card,.session-timer-stage) .session-timer-step-meta{gap:8px;font-size:.8rem;line-height:1.4}
html :is(.documentation-editor-card,.session-timer-stage) .session-timer-step-meta>span{padding:8px 12px}
html .session-timer-stage{align-content:start}
html :is(#sessionTimerStartButton,#sessionTimerFinishStepButton){background:var(--fliq8-action);color:var(--fliq8-onAction);box-shadow:none}
html :is(#sessionTimerStartButton,#sessionTimerFinishStepButton):hover:not(:disabled){background:var(--fliq8-hover);color:var(--fliq8-onHover)}
html :is(#sessionTimerStartButton,#sessionTimerFinishStepButton):disabled{background:var(--fliq8-disabled);color:var(--fliq8-onDisabled)}
html .session-overview-dialog .unit-detail-shell>.dialog-actions{position:sticky;bottom:0;z-index:3;display:flex;flex-flow:row wrap;gap:12px;min-height:96px;margin:0;padding:16px 32px;background:var(--fliq8-surface);border-top:1px solid var(--fliq8-divider)}
html .session-overview-dialog .dialog-actions .button{min-height:56px}
html :is(#executionForm>.session-documentation-actions,.session-workspace-footer){position:sticky;bottom:0;padding:16px 32px;gap:12px}
html #executionForm .session-footer-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}
html #executionForm .session-footer-actions .button{width:auto;min-width:0;flex:0 1 auto}
html .session-footer-actions .primary{min-width:0}
html .session-documentation-actions>.session-footer-actions>.secondary{display:block}
/* Offline has no run controls; retain its edit action and use visible metadata labels. */
html #offlineUnitDetail .session-workspace-summary>div{padding:8px 16px 8px 0;min-width:0}
html #offlineUnitDetail .session-workspace-summary dt{position:static;width:auto;height:auto;clip:auto;clip-path:none;white-space:normal;font-size:.75rem;color:var(--fliq8-secondary)}
@media(max-width:1100px){html :is(.session-overview-dialog .session-overview-layout,.session-documentation-layout,.session-timer-layout){grid-template-columns:minmax(240px,300px) minmax(0,1fr)}}
@media(max-width:900px){
 html :is(.session-overview-dialog .session-overview-layout,.session-documentation-layout,.session-timer-layout),html #sessionTimerDialog .session-timer-layout{grid-template-columns:minmax(0,1fr);gap:16px}
 html .session-overview-panel{min-height:0;padding:20px}
 html :is(.session-overview-dialog .unit-detail-shell,#executionForm,.session-timer-shell)>.dialog-heading{padding-inline:20px}
 html :is(.session-overview-dialog .unit-detail-shell,#executionForm,.session-timer-shell)>.session-workspace-tabs{margin-inline:20px}
 html .session-overview-dialog :is(.unit-detail-body,.session-workspace-summary){padding-inline:20px}
 html .session-overview-dialog .unit-detail-meta{margin-inline:20px}
}
@container(max-width:650px){html .unit-planned .session-overview-layout{grid-template-columns:minmax(0,1fr)}html .session-overview-panel{min-height:0}}
@media(max-width:600px){
 html :is(.session-overview-dialog .unit-detail-shell,#executionForm,.session-timer-shell)>.dialog-heading{padding-inline:16px}
 html :is(.session-overview-dialog .unit-detail-shell,#executionForm,.session-timer-shell)>.session-workspace-tabs{margin-inline:16px;gap:4px;padding:4px}
 html :is(.session-overview-dialog,.session-documentation-dialog,.session-timer-dialog) .session-workspace-tabs button{flex-basis:160px;font-size:.8rem;max-width:none;padding:8px;overflow-wrap:normal}
 html .session-overview-dialog :is(.unit-detail-body,.session-workspace-summary){padding-inline:16px}
 html .session-overview-dialog .unit-detail-meta{margin-inline:16px}
 html .session-overview-panel{padding:16px}
 html :is(.session-overview-dialog .unit-detail-shell>.dialog-actions,#executionForm>.session-documentation-actions,.session-workspace-footer){position:static;padding:16px;flex-wrap:wrap}
 html :is(.session-overview-dialog .dialog-actions,#executionForm .session-footer-actions) .button{flex:1 1 100%;width:100%}
}
@media print{
 html .session-overview-dialog{width:100%;max-width:none;max-height:none;overflow:visible}
 html .session-overview-dialog :is(.session-overview-switcher,.dialog-actions){display:none}
 html .unit-planned .session-overview-layout{display:block}
 html .session-overview-stage{border:0;overflow:visible}
 html .session-overview-panel{min-height:0;padding:16px 0}
}

html .session-overview-dialog .unit-detail-meta{align-items:baseline;flex-direction:row;flex-wrap:wrap}
html .session-overview-dialog .unit-detail-meta .unit-state-line{display:flex;gap:8px;flex-wrap:wrap;margin:0;font-size:.8rem}
html .session-overview-dialog .unit-detail-meta .unit-plan-stats{display:flex;flex-wrap:wrap;gap:16px;padding:0;border:0}
html .session-overview-dialog .unit-detail-meta .unit-plan-stats>div{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}
html .session-overview-dialog .unit-detail-meta .unit-plan-stats strong{font-size:.9rem}
html .session-overview-dialog .unit-detail-meta .unit-plan-stats span{font-size:.8rem}

/* The active step is the timer's primary action; completion remains available. */
html #sessionTimerDialog :is(#sessionTimerSaveStepDocumentationButton,#sessionTimerCompleteDocumentationButton){background:var(--fliq8-surface);color:var(--fliq8-text);border:1px solid var(--fliq8-control);box-shadow:none}
html #sessionTimerDialog :is(#sessionTimerSaveStepDocumentationButton,#sessionTimerCompleteDocumentationButton):hover:not(:disabled){background:var(--fliq8-muted)}
html #sessionTimerDialog :is(#sessionTimerSaveStepDocumentationButton,#sessionTimerCompleteDocumentationButton):disabled{background:var(--fliq8-disabled);color:var(--fliq8-onDisabled)}

@media(max-width:600px){
 html :is(.session-overview-dialog .unit-detail-shell,#executionForm,.session-timer-shell)>.session-workspace-summary{display:flex;flex-wrap:wrap;gap:0}
 html :is(.session-overview-dialog,.session-documentation-dialog,.session-timer-dialog) .session-workspace-summary>div{flex:1 1 100%;min-width:0}
}
