.presentation-shell { min-height: 100vh; background: var(--color-navy-950); color: var(--color-white); }
.presentation-shell__top { display: flex; height: 76px; align-items: center; justify-content: space-between; gap: 24px; padding: 0 42px; border-bottom: 1px solid rgba(255,255,255,.11); }
.presentation-shell__brand { display: flex; align-items: center; gap: 12px; }
.presentation-shell__logo { width: 34px; height: 34px; border-radius: 7px; background: var(--color-white); object-fit: contain; }
.presentation-shell__brand-text { color: var(--color-white); font-size: 13px; font-weight: 750; }
.presentation-shell__brand-meta { margin-top: 1px; color: rgba(255,255,255,.47); font-size: 9px; }
.presentation-shell__actions { display: flex; align-items: center; gap: 8px; }
.presentation-shell__actions .btn--secondary { border-color: rgba(255,255,255,.18); background: transparent; color: rgba(255,255,255,.8); }
.presentation-shell__actions .btn--secondary:hover { border-color: var(--color-teal-600); color: var(--color-white); }
.presentation-shell__body { display: grid; min-height: calc(100vh - 76px); grid-template-columns: 250px minmax(0, 1fr); }
.presentation-shell__rail { padding: 32px 25px; border-right: 1px solid rgba(255,255,255,.11); }
.presentation-shell__eyebrow { color: var(--color-yellow-500); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.presentation-shell__rail h2 { margin-top: 10px; color: var(--color-white); font-size: 21px; }
.presentation-shell__rail p { margin-top: 9px; color: rgba(255,255,255,.55); font-size: 11px; line-height: 1.6; }
.presentation-progress { display: flex; flex-direction: column; gap: 0; margin-top: 34px; }
.presentation-progress__item { display: grid; position: relative; grid-template-columns: 24px minmax(0, 1fr); gap: 10px; align-items: start; padding-bottom: 18px; }
.presentation-progress__item:not(:last-child)::after { position: absolute; top: 22px; bottom: 0; left: 9px; width: 1px; background: rgba(255,255,255,.15); content: ""; }
.presentation-progress__node { z-index: 1; display: grid; width: 20px; height: 20px; place-items: center; border: 2px solid rgba(255,255,255,.25); border-radius: 50%; color: rgba(255,255,255,.4); font-size: 9px; font-weight: 750; }
.presentation-progress__item.is-current .presentation-progress__node { border-color: var(--color-yellow-500); background: var(--color-yellow-500); color: var(--color-navy-950); box-shadow: 0 0 0 4px rgba(244,185,66,.15); }
.presentation-progress__item.is-complete .presentation-progress__node { border-color: var(--color-teal-600); background: var(--color-teal-600); color: var(--color-white); }
.presentation-progress__label { padding-top: 2px; color: rgba(255,255,255,.46); font-size: 10px; line-height: 1.35; }
.presentation-progress__item.is-current .presentation-progress__label { color: var(--color-white); font-weight: 700; }
.presentation-progress__item.is-complete .presentation-progress__label { color: rgba(255,255,255,.68); }
.presentation-shell__stage { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 42px clamp(30px, 6vw, 100px); }
.presentation-stage__eyebrow { color: var(--color-teal-600); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.presentation-stage__title { max-width: 760px; margin-top: 13px; color: var(--color-white); font-size: clamp(32px, 4vw, 58px); line-height: 1.08; letter-spacing: -.055em; }
.presentation-stage__description { max-width: 680px; margin-top: 18px; color: rgba(255,255,255,.64); font-size: 15px; line-height: 1.7; }
.presentation-stage__panel { display: grid; max-width: 820px; grid-template-columns: minmax(0, 1.2fr) minmax(230px, .8fr); gap: 16px; margin-top: 34px; }
.presentation-card { padding: 18px; border: 1px solid rgba(255,255,255,.13); border-radius: var(--radius-lg); background: rgba(255,255,255,.055); }
.presentation-card__label { color: rgba(255,255,255,.45); font-size: 10px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.presentation-card__value { margin-top: 8px; color: var(--color-white); font-size: 20px; font-weight: 750; }
.presentation-card__meta { margin-top: 4px; color: rgba(255,255,255,.55); font-size: 10px; }
.presentation-stage__footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: 820px; margin-top: 38px; }
.presentation-stage__counter { color: rgba(255,255,255,.46); font-size: 11px; }
.presentation-stage__nav { display: flex; gap: 8px; }
.presentation-stage__nav .btn--secondary { border-color: rgba(255,255,255,.2); background: transparent; color: var(--color-white); }
.presentation-stage__nav .btn--secondary:hover { border-color: var(--color-teal-600); background: rgba(16,165,156,.12); }
.presentation-note { display: flex; gap: 8px; max-width: 820px; margin-top: 28px; color: rgba(255,255,255,.38); font-size: 10px; line-height: 1.5; }
.presentation-note svg { flex: 0 0 14px; color: var(--color-yellow-500); }

@media (max-width: 860px) { .presentation-shell__top { padding: 0 20px; } .presentation-shell__body { display: block; } .presentation-shell__rail { display: none; } .presentation-shell__stage { min-height: calc(100vh - 76px); padding: 34px 24px; } .presentation-stage__panel { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .presentation-shell__brand-text { display: none; } .presentation-shell__actions .btn--secondary:first-child { display: none; } .presentation-stage__title { font-size: 34px; } .presentation-stage__footer { align-items: flex-start; flex-direction: column; } }

.presentation-stage__panel .progress { background: rgba(255,255,255,.12); }
.presentation-stage__panel .progress__bar { background: var(--color-yellow-500); }
