:root {
  --academy-ink: #071a20;
  --academy-deep: #061317;
  --academy-teal: #113743;
  --academy-teal-light: #1d5962;
  --academy-sand: #e8dcc3;
  --academy-gold: #d9ad65;
  --academy-gold-light: #f1d5a2;
  --academy-mint: #9bc7a5;
  --academy-coral: #dd846e;
  --academy-cream: #f5f0e6;
  --academy-line: rgba(232, 220, 195, .14);
  --academy-muted: #a9bab5;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--academy-deep);
  color: var(--academy-cream);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { min-width: 320px; margin: 0; background: var(--academy-deep); }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; cursor: pointer; }
a { color: inherit; text-decoration: none; }
.academy-skip-link { position: fixed; top: -60px; left: 12px; z-index: 100; padding: 10px 13px; border-radius: 8px; color: var(--academy-deep); background: var(--academy-gold-light); font-size: 12px; font-weight: 800; }
.academy-skip-link:focus { top: 12px; }

.academy-auth-gate { display: grid; min-height: 100vh; place-items: center; padding: 34px; background: radial-gradient(ellipse at 18% 15%, rgba(217,173,101,.15), transparent 32%), radial-gradient(ellipse at 85% 90%, rgba(35,102,105,.28), transparent 35%), #06171c; }.academy-login-shell { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(330px,.72fr); width: min(100%, 1010px); overflow: hidden; border: 1px solid rgba(232,220,195,.16); border-radius: 22px; background: rgba(7,27,32,.89); box-shadow: 0 28px 85px rgba(0,0,0,.32); }.academy-login-intro { min-height: 570px; padding: 48px; background: linear-gradient(145deg, rgba(21,67,75,.94), rgba(6,25,30,.98)); }.academy-login-brand { margin: 0 0 76px; }.academy-login-intro h1 { margin: 9px 0 18px; color: #f6eddd; font-size: clamp(38px,4.4vw,57px); line-height: .95; letter-spacing: -3px; }.academy-login-intro h1 em { color: var(--academy-gold-light); font-family: Georgia, serif; font-weight: 500; }.academy-login-intro > p:not(.academy-kicker) { max-width: 470px; margin: 0; color: #bed0c8; font-size: 14px; line-height: 1.72; }.academy-login-promise { display: flex; align-items: center; gap: 11px; margin-top: 47px; padding: 14px; border: 1px solid rgba(232,220,195,.14); border-radius: 12px; background: rgba(0,0,0,.13); }.academy-login-promise > span { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 9px; color: #1d241f; background: var(--academy-gold-light); font-weight: 900; }.academy-login-promise p, .academy-login-promise strong, .academy-login-promise small { display: block; margin: 0; }.academy-login-promise strong { color: #f3ead9; font-size: 11px; }.academy-login-promise small { margin-top: 3px; color: #a4b7b0; font-size: 10px; }.academy-login-card { display: flex; flex-direction: column; justify-content: center; padding: 48px 42px; background: linear-gradient(180deg, rgba(14,42,48,.88), rgba(7,25,30,.98)); }.academy-login-card h2 { margin: 6px 0 7px; color: #f5ebdb; font-family: Georgia, serif; font-size: 29px; font-weight: 500; letter-spacing: -.6px; }.academy-login-card > div > p:not(.academy-kicker) { margin: 0; color: #a8bbb4; font-size: 11px; line-height: 1.55; }.academy-login-field { display: grid; gap: 7px; margin-top: 17px; }.academy-login-field > span { color: #b6c9c1; font-size: 9px; font-weight: 850; letter-spacing: .1em; }.academy-login-field input { width: 100%; height: 43px; padding: 0 12px; border: 1px solid rgba(232,220,195,.17); border-radius: 9px; outline: none; color: #f6eddd; background: rgba(0,0,0,.17); font: inherit; font-size: 12px; }.academy-login-field input:focus { border-color: rgba(241,213,162,.7); box-shadow: 0 0 0 3px rgba(217,173,101,.11); }.academy-login-field input::placeholder { color: #7f9690; }.academy-login-error { margin: 13px 0 0; padding: 9px 10px; border: 1px solid rgba(221,132,110,.35); border-radius: 8px; color: #f0c7bd; background: rgba(221,132,110,.1); font-size: 10px; line-height: 1.45; }.academy-login-submit { width: 100%; margin-top: 18px; }.academy-login-demo-note { margin: 18px 0 0; color: #9fb2aa; font-size: 9px; line-height: 1.65; }.academy-login-demo-note strong { color: #e4d2af; }.academy-login-demo-note span { color: #f2e7d4; font-weight: 800; }.academy-login-disclaimer { margin: 14px 0 0; color: #718680; font-size: 9px; line-height: 1.5; }
.academy-app { display: grid; grid-template-columns: 260px minmax(0, 1fr); min-height: 100vh; }
.academy-sidebar { position: sticky; top: 0; display: flex; flex-direction: column; height: 100vh; padding: 25px 16px 16px; overflow-y: auto; background: #061419; border-right: 1px solid rgba(232,220,195,.09); }
.academy-brand { display: inline-flex; align-items: center; gap: 9px; margin: 0 12px 30px; color: #f8f0df; font-size: 23px; font-weight: 780; letter-spacing: -1.35px; }
.academy-brand > span:last-child > span { color: var(--academy-gold); }
.academy-brand-mark { display: grid; width: 21px; gap: 3px; }
.academy-brand-mark i { display: block; height: 4px; border-radius: 6px; background: var(--academy-gold); }
.academy-brand-mark i:nth-child(2) { width: 78%; }.academy-brand-mark i:nth-child(3) { width: 52%; }
.academy-tenant-card { display: grid; grid-template-columns: 33px minmax(0, 1fr) 14px; align-items: center; gap: 9px; margin: 0 3px 30px; padding: 11px 10px; border: 1px solid rgba(232,220,195,.12); border-radius: 13px; background: linear-gradient(120deg, rgba(217,173,101,.12), rgba(255,255,255,.035)); }
.tenant-monogram { display: grid; width: 33px; height: 33px; place-items: center; color: #2c2820; border-radius: 9px; background: linear-gradient(135deg, #f2d9aa, #bc8554); font-family: Georgia, serif; font-size: 18px; font-weight: 700; }
.academy-tenant-card strong, .academy-profile strong { display: block; overflow: hidden; text-overflow: ellipsis; color: #f6efdf; font-size: 12px; white-space: nowrap; }
.academy-tenant-card small, .academy-profile small { display: block; margin-top: 3px; color: #829692; font-size: 9px; }
.tenant-switch { padding: 0; border: 0; color: #cfbea1; background: transparent; }
.academy-nav { display: grid; gap: 4px; }
.academy-nav p { margin: 0 12px 7px; color: #71837e; font-size: 9px; font-weight: 800; letter-spacing: .13em; }
.academy-nav p:nth-of-type(2) { margin-top: 23px; }
.academy-nav-item { display: flex; align-items: center; width: 100%; min-height: 40px; gap: 11px; padding: 0 12px; border: 0; border-radius: 9px; color: #b6c3bd; background: transparent; text-align: left; font-size: 13px; font-weight: 600; transition: .18s ease; }
.academy-nav-item > span { width: 17px; color: #9cb2ab; text-align: center; font-size: 16px; }.academy-nav-item:hover { color: #fff8ea; background: rgba(255,255,255,.06); }.academy-nav-item.is-active { color: #171811; background: var(--academy-gold-light); }.academy-nav-item.is-active > span { color: #4e3924; }.academy-nav-item em { margin-left: auto; padding: 2px 6px; border-radius: 99px; color: #ffeac4; background: rgba(217,173,101,.16); font-size: 8px; font-style: normal; font-weight: 800; }
.academy-nav-item.is-active em { color: #59422b; background: rgba(90,66,43,.14); }
.academy-sidebar-bottom { margin-top: 28px; padding-top: 30px; }.academy-app.is-manager-session .academy-sidebar-bottom { margin-top: auto; }
.academy-code-card { padding: 13px; border: 1px dashed rgba(232,220,195,.22); border-radius: 12px; background: rgba(255,255,255,.025); }.academy-code-card span { display: block; color: #869894; font-size: 8px; font-weight: 800; letter-spacing: .1em; }.academy-code-card strong { display: block; margin: 7px 0 4px; color: var(--academy-gold-light); font-size: 14px; letter-spacing: .08em; }.academy-code-card small { color: #81928e; font-size: 9px; }
.academy-profile { display: grid; grid-template-columns: 31px 1fr; gap: 9px; align-items: center; width: 100%; margin-top: 15px; padding: 7px 4px; border: 0; border-radius: 8px; color: inherit; background: transparent; text-align: left; }.academy-profile:hover { background: rgba(255,255,255,.045); }.profile-photo { display: grid; width: 31px; height: 31px; place-items: center; overflow: hidden; border-radius: 50%; color: #fff5e5; background: #376876; font-size: 9px; font-weight: 800; }.profile-photo img, .profile-avatar-large img { width: 100%; height: 100%; object-fit: cover; }.profile-photo img { border-radius: 50%; }

.academy-main { min-width: 0; padding: 0 clamp(22px, 5vw, 78px) 72px; background: radial-gradient(ellipse at 93% 0%, rgba(35,102,105,.21), transparent 33%), #071b20; }
.academy-topbar { display: flex; align-items: center; justify-content: space-between; height: 80px; border-bottom: 1px solid var(--academy-line); }.academy-crumb { display: flex; gap: 10px; color: #8da39f; font-size: 12px; }.academy-crumb a:hover { color: var(--academy-gold-light); }.academy-crumb strong { color: #e9e0cf; }.academy-top-actions { display: flex; align-items: center; gap: 13px; }.academy-demo-pill { display: inline-flex; align-items: center; gap: 6px; padding: 6px 9px; border: 1px solid rgba(155,199,165,.25); border-radius: 99px; color: #bfe1c4; background: rgba(155,199,165,.08); font-size: 9px; font-weight: 800; letter-spacing: .08em; }.academy-demo-pill i { width: 6px; height: 6px; border-radius: 50%; background: var(--academy-mint); }.academy-session-button { padding: 6px 8px; border: 1px solid rgba(232,220,195,.15); border-radius: 8px; color: #b9c9c2; background: transparent; font-size: 9px; font-weight: 700; }.academy-session-button:hover { border-color: rgba(241,213,162,.5); color: #f4e4c7; }.academy-bell { position: relative; width: 33px; height: 33px; padding: 0; border: 1px solid var(--academy-line); border-radius: 50%; color: #e7dcc8; background: transparent; font-size: 17px; }.academy-bell i { position: absolute; top: 7px; right: 6px; width: 6px; height: 6px; border: 1px solid var(--academy-deep); border-radius: 50%; background: var(--academy-coral); }
.academy-view { display: none; animation: academy-fade .3s ease; }.academy-view.is-active { display: block; }@keyframes academy-fade { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }.academy-kicker { margin: 0; color: var(--academy-gold-light); font-size: 9px; font-weight: 850; letter-spacing: .14em; }.academy-primary-button, .academy-secondary-button, .quiet-button, .text-button { border: 0; font-size: 11px; font-weight: 850; letter-spacing: .035em; }.academy-primary-button { padding: 13px 16px; border-radius: 9px; color: #191912; background: var(--academy-gold-light); }.academy-primary-button:hover { background: #ffe3ad; }.academy-primary-button span { margin-left: 7px; font-size: 15px; vertical-align: -1px; }.academy-secondary-button { width: 100%; padding: 12px; border: 1px solid rgba(241,213,162,.4); border-radius: 8px; color: #ffe9c5; background: rgba(241,213,162,.08); }.academy-secondary-button:hover { background: rgba(241,213,162,.15); }.quiet-button { padding: 9px 11px; border: 1px solid var(--academy-line); border-radius: 8px; color: #c3d0ca; background: transparent; }.quiet-button:hover { border-color: rgba(241,213,162,.45); color: #fff1d8; }.text-button { padding: 4px 0; color: var(--academy-gold-light); background: transparent; }.text-button span { margin-left: 5px; font-size: 14px; }

.academy-hero { position: relative; min-height: 315px; margin: 38px 0 18px; overflow: hidden; border: 1px solid rgba(232,220,195,.16); border-radius: 22px; background: #0d282d; }.academy-hero img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: .83; }.academy-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,18,23,.94) 2%, rgba(4,18,23,.68) 49%, rgba(4,18,23,.18)), linear-gradient(0deg, rgba(4,18,23,.5), transparent 62%); }.academy-hero-content { position: relative; max-width: 530px; padding: 47px 45px; }.academy-hero h1, .quiz-page-head h1, .ranking-page-head h1, .manager-page-head h1 { margin: 9px 0 13px; color: #fff5e5; font-size: clamp(36px, 4.4vw, 58px); line-height: .98; letter-spacing: -3px; }.academy-hero h1 em, .manager-page-head h1 em { color: var(--academy-gold-light); font-family: Georgia, serif; font-weight: 500; }.academy-hero-copy { max-width: 420px; margin: 0; color: #d3dbd3; font-size: 13px; line-height: 1.5; }.academy-hero-meta { display: flex; gap: 18px; margin-top: 24px; color: #d9e1d9; font-size: 10px; }.academy-hero-meta span { padding-right: 18px; border-right: 1px solid rgba(232,220,195,.22); }.academy-hero-meta span:last-child { border: 0; }.academy-hero-meta b { color: var(--academy-gold-light); }
.academy-home-grid { display: grid; grid-template-columns: minmax(310px, 1.4fr) minmax(210px, .6fr); gap: 18px; }.daily-challenge-card, .streak-card, .academy-learning-section, .ranking-board, .rank-insight-card, .category-card, .manager-alert-card, .manager-feedback { border: 1px solid var(--academy-line); border-radius: 17px; background: rgba(12,42,48,.7); }.daily-challenge-card { padding: 25px; background: linear-gradient(128deg, rgba(217,173,101,.15), rgba(18,67,74,.75) 54%); }.challenge-topline, .challenge-title-row, .challenge-progress, .academy-section-heading, .ranking-board-head, .manager-card-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; }.challenge-time { padding: 4px 7px; border: 1px solid rgba(241,213,162,.32); border-radius: 99px; color: #ffe9be; font-size: 8px; font-weight: 800; letter-spacing: .11em; }.challenge-title-row { justify-content: flex-start; margin: 20px 0 20px; }.challenge-sun { display: grid; flex: 0 0 auto; width: 46px; height: 46px; place-items: center; border-radius: 50%; color: #5d4426; background: var(--academy-gold-light); font-size: 20px; }.challenge-title-row h2 { margin: 0 0 3px; color: #fff5e6; font-size: 23px; line-height: 1.02; letter-spacing: -1px; }.challenge-title-row p { margin: 0; color: #b8c6bd; font-size: 10px; }.challenge-progress { margin-bottom: 20px; color: #c0cfc6; font-size: 10px; }.challenge-progress div { display: flex; gap: 5px; }.challenge-progress i { width: 21px; height: 5px; border-radius: 99px; background: rgba(232,220,195,.18); }.daily-challenge-card .academy-primary-button { width: 100%; }.streak-card { padding: 24px; }.streak-number { display: flex; align-items: baseline; margin: 12px 0 7px; }.streak-number > span { margin-right: 8px; color: var(--academy-coral); font-size: 24px; }.streak-number strong { color: #fff4e0; font-size: 47px; line-height: 1; letter-spacing: -2px; }.streak-number small { margin-left: 5px; color: #aabbb4; font-size: 11px; }.streak-card p { margin: 0 0 18px; color: #bac9c2; font-size: 11px; line-height: 1.4; }.week-dots { display: flex; justify-content: space-between; padding-top: 12px; border-top: 1px solid var(--academy-line); }.week-dots b, .week-dots i { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: #634824; background: var(--academy-gold-light); font-size: 8px; font-style: normal; }.week-dots i { color: #829490; background: rgba(232,220,195,.1); }
.academy-learning-section { margin-top: 18px; padding: 25px; }.academy-section-heading { margin-bottom: 19px; }.academy-section-heading h2, .manager-card-head h2, .ranking-board-head h2, .manager-feedback h2 { margin: 5px 0 0; color: #f8efdf; font-size: 22px; letter-spacing: -1.1px; }.academy-topic-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }.academy-topic-card { position: relative; min-height: 170px; padding: 17px; overflow: hidden; border: 1px solid rgba(232,220,195,.13); border-radius: 12px; }.academy-topic-card span { font-size: 8px; font-weight: 850; letter-spacing: .12em; }.academy-topic-card h3 { max-width: 175px; margin: 13px 0 7px; color: #fdf5e7; font-size: 16px; line-height: 1.07; letter-spacing: -.7px; }.academy-topic-card p { max-width: 180px; margin: 0; color: #bbcbc5; font-size: 10px; line-height: 1.45; }.academy-topic-card i { position: absolute; right: 13px; bottom: -8px; color: rgba(255,255,255,.16); font-size: 70px; font-style: normal; }.topic-sushi { background: linear-gradient(135deg, #173e47, #0e2932); }.topic-sushi span { color: #acd6dc; }.topic-allergen { background: linear-gradient(135deg, #463b2b, #2d2b24); }.topic-allergen span { color: #f2dba8; }.topic-wine { background: linear-gradient(135deg, #3f3949, #262534); }.topic-wine span { color: #d6c5ef; }

.wine-learning-card { display: grid; grid-template-columns: minmax(190px,.9fr) minmax(250px,1.1fr) minmax(190px,.72fr); gap: 22px; align-items: center; margin-top: 13px; padding: 22px; overflow: hidden; border: 1px solid rgba(214,197,239,.24); border-radius: 14px; background: radial-gradient(circle at 94% 5%, rgba(179,133,172,.2), transparent 34%), linear-gradient(125deg, rgba(57,47,70,.94), rgba(21,37,45,.93)); }.wine-learning-intro h3 { margin: 8px 0 8px; color: #fff0ea; font-size: 22px; line-height: .98; letter-spacing: -1.1px; }.wine-learning-intro h3 em { color: #dcc6f1; font-family: Georgia,serif; font-weight: 500; }.wine-learning-intro > p:not(.academy-kicker) { max-width: 260px; margin: 0; color: #c2c1cc; font-size: 10px; line-height: 1.45; }.wine-reference-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 14px; margin: 0; padding: 0; list-style: none; }.wine-reference-list li { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 7px 0; border-bottom: 1px solid rgba(232,220,195,.1); }.wine-reference-list p { min-width: 0; margin: 0; }.wine-reference-list strong,.wine-reference-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.wine-reference-list strong { color: #f4e9dd; font-size: 10px; }.wine-reference-list small { margin-top: 3px; color: #b4acba; font-size: 8px; }.wine-dot { width: 11px; height: 11px; flex: 0 0 auto; border: 2px solid rgba(255,255,255,.25); border-radius: 50%; box-shadow: 0 0 0 3px rgba(255,255,255,.04); }.wine-dot-white { background: #e5d29d; }.wine-dot-rose { background: #bd718b; }.wine-dot-red { background: #7e2d40; }.wine-learning-action { padding-left: 20px; border-left: 1px solid rgba(232,220,195,.13); }.wine-learning-action p { margin: 0 0 14px; }.wine-learning-action strong,.wine-learning-action small { display: block; }.wine-learning-action strong { color: #f6e6d0; font-size: 11px; line-height: 1.35; }.wine-learning-action small { margin-top: 5px; color: #b6b6bd; font-size: 9px; line-height: 1.4; }.wine-quiz-button { width: 100%; padding: 11px 10px; font-size: 9px; }
.dish-gallery-section { margin-top: 18px; padding: 25px; border: 1px solid var(--academy-line); border-radius: 17px; background: rgba(12,42,48,.7); }.dish-gallery-note { color: #90a59f; font-size: 9px; }.dish-gallery-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }.dish-photo-card { min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(232,220,195,.13); border-radius: 12px; background: rgba(4,24,29,.7); }.dish-photo-open { position: relative; display: block; width: 100%; padding: 0; overflow: hidden; border: 0; background: #071b20; cursor: zoom-in; }.dish-photo-open img { display: block; width: 100%; aspect-ratio: 1 / 1.03; object-fit: cover; transition: transform .35s ease, filter .25s ease; }.dish-photo-open::after { position: absolute; inset: 0; content: ''; background: linear-gradient(0deg, rgba(3,16,20,.58), transparent 48%); opacity: 0; transition: opacity .22s ease; }.dish-photo-open > span { position: absolute; z-index: 1; right: 9px; bottom: 8px; color: #fff1d3; font-size: 7px; font-weight: 850; letter-spacing: .09em; opacity: 0; transform: translateY(4px); transition: .22s ease; }.dish-photo-open:hover::after, .dish-photo-open:focus-visible::after { opacity: 1; }.dish-photo-open:hover img, .dish-photo-open:focus-visible img { filter: saturate(1.08); transform: scale(1.05); }.dish-photo-open:hover > span, .dish-photo-open:focus-visible > span { opacity: 1; transform: none; }.dish-photo-open:focus-visible { outline: 2px solid #fff0ce; outline-offset: -3px; }.dish-photo-card figcaption { padding: 11px 11px 12px; }.dish-photo-card figcaption > span { color: #d9bb80; font-size: 7px; font-weight: 850; letter-spacing: .11em; }.dish-photo-card h3 { margin: 6px 0 5px; color: #f4eadb; font-size: 12px; line-height: 1.14; letter-spacing: -.35px; }.dish-photo-card p { margin: 0; color: #9eb1ab; font-size: 8px; line-height: 1.4; }
.dish-lightbox { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 22px; background: rgba(2,12,16,.83); backdrop-filter: blur(11px); }.dish-lightbox[hidden] { display: none; }.dish-lightbox-card { position: relative; display: grid; grid-template-columns: minmax(0,1fr) minmax(210px,.42fr); width: min(100%,980px); max-height: min(760px,calc(100vh - 44px)); overflow: hidden; border: 1px solid rgba(241,213,162,.35); border-radius: 18px; background: #0d2b30; box-shadow: 0 28px 84px rgba(0,0,0,.45); }.dish-lightbox-card > img { width: 100%; height: 100%; min-height: 0; max-height: min(760px,calc(100vh - 44px)); object-fit: contain; background: #06171b; }.dish-lightbox-info { display: flex; flex-direction: column; justify-content: end; padding: 29px; background: radial-gradient(circle at 100% 0%, rgba(217,173,101,.14), transparent 34%), linear-gradient(155deg,#1d555d,#0d2b30); }.dish-lightbox-info h2 { margin: 9px 0 9px; color: #fff0d9; font-size: clamp(24px,3vw,36px); line-height: 1; letter-spacing: -1.3px; }.dish-lightbox-info > p:not(.academy-kicker) { margin: 0; color: #c1d0c8; font-size: 12px; line-height: 1.5; }.dish-lightbox-close { position: absolute; z-index: 2; top: 12px; right: 12px; display: grid; width: 35px; height: 35px; place-items: center; padding: 0; border: 1px solid rgba(255,245,226,.48); border-radius: 50%; color: #fff4de; background: rgba(4,20,24,.72); font-size: 25px; line-height: 1; }.dish-lightbox-close:hover,.dish-lightbox-close:focus-visible { border-color: #fff1d1; background: #375b5d; outline: none; }.is-viewing-dish { overflow: hidden; }

.profile-page-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding: 45px 0 28px; }.profile-page-head h1 { margin: 9px 0 12px; color: #fff5e5; font-size: clamp(39px, 4.4vw, 58px); line-height: .98; letter-spacing: -3px; }.profile-page-head h1 em { color: var(--academy-gold-light); font-family: Georgia, serif; font-weight: 500; }.profile-page-head > div > p:not(.academy-kicker) { max-width: 520px; margin: 0; color: #b8c9c2; font-size: 12px; line-height: 1.55; }.profile-private-badge { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid rgba(155,199,165,.28); border-radius: 99px; color: #c7e5cb; background: rgba(155,199,165,.08); font-size: 10px; font-weight: 750; }.profile-private-badge i { color: var(--academy-mint); font-style: normal; }.profile-layout { display: grid; grid-template-columns: minmax(205px,.56fr) minmax(0,1.35fr) minmax(205px,.56fr); gap: 15px; align-items: start; }.profile-identity-card, .personalization-card, .profile-summary-card { border: 1px solid var(--academy-line); border-radius: 17px; background: rgba(12,42,48,.72); }.profile-identity-card { min-height: 425px; padding: 22px; background: linear-gradient(155deg, #1b5059, #0e2930 70%); }.profile-identity-top { display: flex; align-items: start; justify-content: space-between; gap: 8px; margin-bottom: 27px; }.profile-avatar-large { display: grid; width: 62px; height: 62px; place-items: center; border: 2px solid rgba(241,213,162,.35); border-radius: 20px; color: #172126; background: linear-gradient(145deg, #f0d49c, #b9785a); font-size: 18px; font-weight: 850; }.profile-online { display: inline-flex; align-items: center; gap: 5px; padding: 5px 7px; border-radius: 99px; color: #cde6d1; background: rgba(155,199,165,.13); font-size: 8px; font-weight: 800; }.profile-online i { width: 6px; height: 6px; border-radius: 50%; background: var(--academy-mint); }.profile-identity-card h2, .personalization-card h2, .profile-summary-card h2 { margin: 7px 0; color: #fff2df; font-size: 24px; letter-spacing: -1.2px; }.profile-identity-role { margin: 0; color: #b8cbc4; font-size: 10px; }.profile-identity-role strong { color: var(--academy-gold-light); font-size: 9px; letter-spacing: .06em; }.profile-stat-row { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin: 26px 0 19px; padding-top: 16px; border-top: 1px solid rgba(232,220,195,.18); }.profile-stat-row span { color: #a9bbb4; font-size: 9px; }.profile-stat-row strong { display: block; margin-bottom: 3px; color: #fff0d9; font-size: 15px; }.profile-privacy-note { display: flex; gap: 7px; margin: 0; color: #a8bcb4; font-size: 10px; line-height: 1.5; }.profile-privacy-note span { color: var(--academy-mint); }.personalization-card { padding: 24px; }.personalization-card-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; padding-bottom: 21px; border-bottom: 1px solid var(--academy-line); }.personalization-card-head h2 { margin-bottom: 0; }.personalization-card-head > span { padding: 5px 7px; border-radius: 99px; color: #edcf9c; background: rgba(217,173,101,.14); font-size: 9px; font-weight: 800; }.profile-fieldset { min-width: 0; margin: 0; padding: 21px 0; border: 0; border-bottom: 1px solid var(--academy-line); }.profile-fieldset legend { padding: 0; color: #f1eadb; font-size: 13px; font-weight: 780; }.profile-fieldset > p { margin: 6px 0 13px; color: #9eb2aa; font-size: 10px; line-height: 1.4; }.profile-choice-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; }.profile-choice, .profile-time, .profile-focus { border: 1px solid rgba(232,220,195,.17); color: #b9cbc4; background: rgba(255,255,255,.025); transition: .16s ease; }.profile-choice:hover, .profile-time:hover, .profile-focus:hover { border-color: rgba(241,213,162,.5); }.profile-choice.is-selected, .profile-time.is-selected, .profile-focus.is-selected { border-color: rgba(241,213,162,.72); color: #fff0d3; background: rgba(217,173,101,.14); box-shadow: inset 0 0 0 1px rgba(217,173,101,.08); }.profile-choice { display: grid; min-height: 65px; place-items: center; gap: 5px; padding: 8px 4px; border-radius: 10px; font-size: 10px; font-weight: 750; }.profile-choice span { color: var(--academy-gold-light); font-size: 15px; }.profile-focus-list { display: flex; flex-wrap: wrap; gap: 7px; }.profile-focus { display: inline-flex; align-items: center; gap: 6px; padding: 9px 10px; border-radius: 99px; font-size: 10px; font-weight: 700; }.profile-focus span { color: var(--academy-gold-light); }.profile-time-list { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }.profile-time { padding: 9px 10px; border-radius: 9px; font-size: 10px; font-weight: 700; }.profile-reminder { display: flex; align-items: center; gap: 9px; margin: 19px 0; color: #dce5de; cursor: pointer; }.profile-reminder input { width: 15px; height: 15px; accent-color: var(--academy-gold-light); }.profile-reminder strong, .profile-reminder small { display: block; }.profile-reminder strong { font-size: 10px; }.profile-reminder small { margin-top: 2px; color: #9cb0a8; font-size: 9px; }.profile-save-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; }.profile-save-row > small { max-width: 200px; color: #8fa39b; font-size: 9px; line-height: 1.4; }.profile-summary-card { min-height: 425px; padding: 22px; background: linear-gradient(155deg, rgba(82,58,39,.88), rgba(30,43,41,.9)); }.profile-summary-card h2 { margin-top: 9px; }.profile-summary-card > p { margin: 0; color: #d7d4c8; font-size: 11px; line-height: 1.5; }.profile-summary-card > p strong { color: #fff0cf; }.profile-summary-list { display: grid; gap: 12px; margin: 26px 0 auto; }.profile-summary-list > div { display: flex; align-items: center; gap: 9px; padding-bottom: 12px; border-bottom: 1px solid rgba(232,220,195,.15); }.profile-summary-list > div > span { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 8px; color: #604929; background: var(--academy-gold-light); font-size: 13px; }.profile-summary-list p { margin: 0; }.profile-summary-list small, .profile-summary-list strong { display: block; }.profile-summary-list small { color: #afafa2; font-size: 8px; font-weight: 800; letter-spacing: .09em; }.profile-summary-list strong { margin-top: 2px; color: #fff0d8; font-size: 11px; }.profile-summary-card .academy-secondary-button { margin-top: 25px; }

.quiz-page-head, .ranking-page-head, .manager-page-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding: 45px 0 28px; }.quiz-page-head h1 { font-size: 47px; }.quiz-layout { display: grid; grid-template-columns: minmax(0, 1fr) 245px; gap: 20px; align-items: stretch; }.quiz-card { overflow: hidden; border: 1px solid rgba(232,220,195,.2); border-radius: 18px; background: #0c292e; }.quiz-card-top { display: flex; align-items: center; justify-content: space-between; padding: 22px 25px; border-bottom: 1px solid var(--academy-line); }.quiz-tags { display: flex; flex-wrap: wrap; gap: 5px; }.quiz-tags span { padding: 4px 7px; border-radius: 99px; color: #f3d69e; background: rgba(217,173,101,.14); font-size: 8px; font-weight: 850; letter-spacing: .09em; }.quiz-tags span + span { color: #b3c9c2; background: rgba(155,199,165,.12); }.quiz-clock { position: relative; display: grid; width: 43px; height: 43px; place-items: center; }.quiz-clock svg { position: absolute; inset: 0; transform: rotate(-90deg); }.quiz-clock circle { fill: none; stroke: rgba(232,220,195,.17); stroke-width: 3; }.quiz-clock circle:last-child { stroke: var(--academy-gold-light); stroke-linecap: round; stroke-dasharray: 113; stroke-dashoffset: 0; transition: stroke-dashoffset 1s linear; }.quiz-clock strong { position: relative; color: #ffefcf; font-size: 12px; }.quiz-question-wrap { max-width: 770px; padding: 30px 25px 23px; }.quiz-question-number { margin: 0 0 9px; color: #98aaa4; font-size: 9px; font-weight: 850; letter-spacing: .12em; }.quiz-question-number span { color: var(--academy-gold-light); }.quiz-question-wrap h2 { margin: 0; color: #fff5e6; font-size: clamp(22px, 2.3vw, 31px); line-height: 1.14; letter-spacing: -1.3px; }.quiz-options { display: grid; gap: 9px; padding: 0 25px 20px; }.quiz-option { display: grid; grid-template-columns: 25px 1fr; align-items: center; gap: 10px; width: 100%; padding: 14px 15px; border: 1px solid rgba(232,220,195,.16); border-radius: 10px; color: #e2e7df; background: rgba(255,255,255,.025); text-align: left; font-size: 12px; line-height: 1.36; transition: .16s ease; }.quiz-option:hover:not(:disabled) { border-color: rgba(241,213,162,.55); background: rgba(217,173,101,.09); }.quiz-option > span { display: grid; width: 23px; height: 23px; place-items: center; border: 1px solid #5d7572; border-radius: 50%; color: #b8c9c2; font-size: 9px; font-weight: 800; }.quiz-option.is-correct { border-color: rgba(155,199,165,.75); background: rgba(155,199,165,.15); }.quiz-option.is-correct > span { color: #1c3e32; border-color: var(--academy-mint); background: var(--academy-mint); }.quiz-option.is-wrong { border-color: rgba(221,132,110,.7); background: rgba(221,132,110,.11); }.quiz-option.is-wrong > span { color: #5d2922; border-color: var(--academy-coral); background: var(--academy-coral); }.quiz-feedback { margin: 0 25px 20px; padding: 12px 13px; border-radius: 9px; color: #cae7ce; background: rgba(155,199,165,.12); font-size: 11px; line-height: 1.45; }.quiz-feedback.is-warning { color: #ffe1d7; background: rgba(221,132,110,.12); }.quiz-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 16px 25px; border-top: 1px solid var(--academy-line); }.quiz-card-footer > span { color: #a7b8b2; font-size: 10px; }.quiz-next[disabled] { opacity: .45; cursor: not-allowed; }.quiz-side-note { padding: 24px; border: 1px solid rgba(241,213,162,.25); border-radius: 17px; background: linear-gradient(180deg, rgba(217,173,101,.15), rgba(35,53,48,.68)); }.side-note-icon { display: grid; width: 33px; height: 33px; place-items: center; margin-bottom: 20px; border-radius: 50%; color: #594020; background: var(--academy-gold-light); }.quiz-side-note h3 { margin: 9px 0 7px; color: #fff0d8; font-size: 22px; letter-spacing: -1px; }.quiz-side-note p { margin: 0; color: #d0d7ce; font-size: 11px; line-height: 1.5; }.quiz-side-note small { display: block; margin-top: 27px; padding-top: 13px; border-top: 1px solid rgba(232,220,195,.2); color: #9cad9f; font-size: 9px; line-height: 1.4; }

.ranking-page-head { align-items: end; }.ranking-page-head h1 { margin-bottom: 0; }.ranking-message { display: flex; width: 245px; gap: 10px; padding: 13px; border: 1px solid rgba(217,173,101,.26); border-radius: 11px; background: rgba(217,173,101,.09); }.ranking-message > span { color: var(--academy-gold-light); font-size: 18px; }.ranking-message p { margin: 0; color: #e2d9c7; font-size: 10px; line-height: 1.4; }.ranking-layout { display: grid; grid-template-columns: minmax(0, 1fr) 255px; gap: 18px; }.ranking-board { overflow: hidden; }.ranking-board-head { padding: 20px 22px; border-bottom: 1px solid var(--academy-line); }.ranking-board-head h2 { margin: 0; }.ranking-board-head span { color: #90a39d; font-size: 9px; }.ranking-list { display: grid; gap: 1px; margin: 0; padding: 8px; list-style: none; }.ranking-list li { display: grid; grid-template-columns: 30px 37px minmax(0,1fr) 52px 75px; align-items: center; gap: 9px; min-height: 59px; padding: 8px 11px; border-radius: 10px; color: #dfe7df; font-size: 12px; }.ranking-list li:not(.rank-you):hover { background: rgba(255,255,255,.04); }.ranking-list .rank-first { background: linear-gradient(90deg, rgba(217,173,101,.19), rgba(217,173,101,.03)); }.ranking-list .rank-you { border: 1px solid rgba(155,199,165,.35); background: rgba(155,199,165,.09); }.rank-medal { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 50%; color: #aabcb5; background: rgba(255,255,255,.07); font-size: 10px; font-weight: 800; }.rank-first .rank-medal { color: #5f4625; background: var(--academy-gold-light); }.rank-avatar { display: grid; width: 33px; height: 33px; place-items: center; border-radius: 50%; color: #10212a; font-size: 9px; font-weight: 800; }.rank-avatar.amber { background: #e9bd78; }.rank-avatar.sea { background: #82c3bf; }.rank-avatar.coral { background: #e79a83; }.rank-avatar.lime { background: #b8d995; }.rank-avatar.lavender { background: #c2b5db; }.ranking-list strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.ranking-list strong em { margin-left: 4px; padding: 2px 5px; border-radius: 5px; color: #8dba96; background: rgba(155,199,165,.12); font-size: 8px; font-style: normal; }.rank-streak { color: #dda08b; font-size: 10px; }.ranking-list b { color: #f0e3cf; font-size: 10px; text-align: right; }.rank-insight-card { display: flex; flex-direction: column; min-height: 280px; padding: 23px; background: linear-gradient(155deg, #20515a, #102f35 72%); }.rank-insight-card > strong { margin-top: 18px; color: #fff2dc; font-size: 42px; letter-spacing: -2px; }.rank-insight-card p { margin: 2px 0 17px; color: #b9cbc3; font-size: 11px; }.rank-meter { height: 7px; overflow: hidden; border-radius: 99px; background: rgba(232,220,195,.18); }.rank-meter span { display: block; width: 72%; height: 100%; border-radius: inherit; background: var(--academy-gold-light); }.rank-insight-card small { margin: 13px 0 auto; color: #a7b9b2; font-size: 10px; line-height: 1.4; }.rank-insight-card .academy-primary-button { width: 100%; margin-top: 21px; padding: 11px; }

.manager-page-head { padding-bottom: 25px; }.manager-page-head h1 { margin-bottom: 0; }.manager-period { display: grid; grid-template-columns: 1fr 13px; gap: 3px 12px; min-width: 190px; padding: 11px 12px; border: 1px solid var(--academy-line); border-radius: 10px; background: rgba(255,255,255,.025); }.manager-period span { grid-column: 1; color: #92a49e; font-size: 8px; font-weight: 850; letter-spacing: .1em; }.manager-period strong { color: #e7dfcf; font-size: 11px; }.manager-period button { grid-row: 1 / span 2; grid-column: 2; padding: 0; border: 0; color: #b3c1bb; background: transparent; }.manager-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }.manager-kpis article { padding: 19px; border: 1px solid var(--academy-line); border-radius: 14px; background: rgba(12,42,48,.75); }.manager-kpis article > span { color: #a8bbb3; font-size: 8px; font-weight: 850; letter-spacing: .1em; }.manager-kpis strong { display: block; margin: 10px 0 5px; color: #fff2de; font-size: 32px; letter-spacing: -1.7px; }.manager-kpis strong span { margin-left: 2px; color: #9aada6; font-size: 14px; letter-spacing: 0; }.manager-kpis p { margin: 0 0 13px; color: #a9bbb4; font-size: 10px; }.manager-kpis p i { font-style: normal; }.manager-kpis p .up { color: var(--academy-mint); }.mini-bar { height: 5px; overflow: hidden; border-radius: 99px; background: rgba(232,220,195,.12); }.mini-bar i { display: block; height: 100%; border-radius: inherit; background: #6eb2ad; }.mini-bar.lime i { background: var(--academy-mint); }.mini-bar.gold i { background: var(--academy-gold); }.manager-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(240px,.65fr); gap: 15px; margin-top: 15px; }.category-card { padding: 24px; }.manager-card-head { align-items: start; }.manager-card-head h2 { font-size: 20px; }.category-bars { display: grid; gap: 15px; margin: 25px 0 18px; }.category-bars > div { display: grid; grid-template-columns: 120px 1fr 34px; align-items: center; gap: 10px; color: #c8d5cd; font-size: 11px; }.category-bars i { display: block; height: 7px; overflow: hidden; border-radius: 99px; background: rgba(232,220,195,.12); }.category-bars i b { display: block; height: 100%; border-radius: inherit; background: #78b6b1; }.category-bars .category-alert i b { background: var(--academy-coral); }.category-bars strong { color: #e5eadf; font-size: 10px; text-align: right; }.category-note { display: flex; gap: 8px; margin: 0; padding-top: 14px; border-top: 1px solid var(--academy-line); color: #d8c9b7; font-size: 10px; line-height: 1.45; }.category-note span { display: grid; flex: 0 0 auto; width: 16px; height: 16px; place-items: center; border-radius: 50%; color: #512b22; background: var(--academy-coral); font-size: 10px; font-weight: 800; }.manager-alert-card { display: flex; flex-direction: column; padding: 22px; border-color: rgba(221,132,110,.3); background: linear-gradient(160deg, rgba(127,59,49,.42), rgba(45,34,31,.84)); }.alert-label { color: #ffc6b6; font-size: 8px; font-weight: 850; letter-spacing: .12em; }.alert-label span { display: inline-grid; width: 14px; height: 14px; place-items: center; margin-right: 4px; border-radius: 50%; color: #5e2b24; background: #f1a18a; }.manager-alert-card h2 { margin: 13px 0 7px; color: #ffede3; font-size: 23px; letter-spacing: -1.1px; }.manager-alert-card p { margin: 0; color: #e0c8bd; font-size: 11px; line-height: 1.45; }.alert-stat { display: flex; align-items: baseline; gap: 8px; margin: 18px 0 auto; }.alert-stat strong { color: #ffb49e; font-size: 36px; letter-spacing: -2px; }.alert-stat span { color: #e3c5b8; font-size: 10px; line-height: 1.25; }.manager-alert-card .academy-secondary-button { margin-top: 19px; border-color: rgba(255,215,199,.35); color: #ffdfd2; }.manager-feedback { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 15px; padding: 22px 24px; background: linear-gradient(100deg, rgba(20,65,69,.85), rgba(16,43,48,.67)); }.manager-feedback h2 { font-size: 20px; }.manager-feedback > div > p:not(.academy-kicker) { max-width: 500px; margin: 6px 0 0; color: #afc2ba; font-size: 10px; }.feedback-score { display: grid; grid-template-columns: auto auto; align-items: baseline; column-gap: 3px; padding: 9px 15px; border-left: 1px solid var(--academy-line); }.feedback-score strong { color: var(--academy-gold-light); font-size: 43px; letter-spacing: -2px; }.feedback-score > span { color: #b7c8c2; font-size: 15px; }.feedback-score small { grid-column: 1 / -1; color: #aabdb5; font-size: 9px; }

.profile-avatar-large { overflow: hidden; }.profile-avatar-large img { border-radius: 18px; }.profile-photo-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }.profile-photo-edit, .profile-photo-clear { padding: 7px 8px; border-radius: 8px; font-size: 9px; font-weight: 800; }.profile-photo-edit { border: 1px solid rgba(241,213,162,.52); color: #ffe2ad; background: rgba(217,173,101,.12); }.profile-photo-edit:hover { background: rgba(217,173,101,.22); }.profile-photo-clear { border: 1px solid rgba(232,220,195,.16); color: #b6c7c0; background: transparent; }.profile-photo-clear:hover { color: #fff0d8; border-color: rgba(232,220,195,.35); }

.english-page-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding: 45px 0 28px; }.english-page-head h1 { margin: 7px 0 10px; color: #f6eedf; font-size: 47px; line-height: .96; letter-spacing: -2.6px; }.english-page-head h1 em { color: var(--academy-gold-light); font-family: Georgia, serif; font-weight: 500; }.english-page-head > div > p:not(.academy-kicker) { max-width: 580px; margin: 0; color: var(--academy-muted); font-size: 13px; line-height: 1.65; }.english-progress-badge { display: inline-flex; align-items: center; gap: 8px; padding: 9px 11px; border: 1px solid rgba(217,173,101,.3); border-radius: 10px; color: #f3e5cc; background: rgba(217,173,101,.08); font-size: 10px; font-weight: 700; white-space: nowrap; }.english-progress-badge b { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 7px; color: #1c211d; background: var(--academy-gold-light); font-size: 10px; }
.english-layout { display: grid; grid-template-columns: minmax(0,1.14fr) minmax(0,.88fr) minmax(190px,.58fr); gap: 14px; align-items: stretch; }.english-situation-card, .english-practice-card, .english-phrase-bank { overflow: hidden; border: 1px solid rgba(232,220,195,.13); border-radius: 16px; }.english-situation-card { padding: 23px; background: radial-gradient(circle at 80% 10%, rgba(217,173,101,.2), transparent 31%), linear-gradient(140deg, #164650, #0d2c34); }.english-card-top, .english-practice-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }.english-card-top > span:last-child { padding: 4px 7px; border: 1px solid rgba(232,220,195,.2); border-radius: 99px; color: #d2ddd6; font-size: 9px; font-weight: 800; }.english-role-label { color: var(--academy-gold-light); font-size: 9px; font-weight: 800; letter-spacing: .1em; }.english-situation-card h2 { margin: 16px 0 17px; color: #f7efdf; font-family: Georgia, serif; font-size: 27px; font-weight: 500; letter-spacing: -.7px; }.english-role-tabs { display: grid; grid-template-columns: repeat(4,1fr); gap: 5px; padding: 4px; border: 1px solid rgba(232,220,195,.12); border-radius: 10px; background: rgba(0,0,0,.13); }.english-role-tabs button { min-height: 30px; padding: 4px; border: 0; border-radius: 7px; color: #b7c9c2; background: transparent; font-size: 9px; font-weight: 800; transition: .18s ease; }.english-role-tabs button:hover { color: #fff4df; background: rgba(255,255,255,.08); }.english-role-tabs button.is-selected { color: #16201d; background: var(--academy-gold-light); }.english-phrase-wrap { min-height: 213px; margin-top: 18px; padding: 18px; border: 1px solid rgba(232,220,195,.14); border-radius: 12px; background: rgba(3,18,22,.24); }.english-phrase-wrap .academy-kicker { color: #b9d7ca; }.english-phrase-wrap > p { margin: 0; }.english-phrase-wrap #english-phrase { margin-top: 11px; color: #fff6e7; font-family: Georgia, serif; font-size: 23px; line-height: 1.23; letter-spacing: -.45px; }.english-pronunciation { margin-top: 12px !important; color: #d8bc87; font-size: 11px; line-height: 1.55; }.english-translation { margin-top: 7px !important; color: #c0d0c9; font-size: 11px; line-height: 1.5; }.english-audio-actions { display: flex; gap: 7px; margin-top: 15px; }.english-listen, .english-slow { min-height: 34px; border-radius: 8px; font-size: 9px; font-weight: 800; }.english-listen { padding: 0 12px; border: 0; color: #1b221f; background: var(--academy-gold-light); }.english-listen:hover { background: #f8e1b7; }.english-listen span { margin-right: 5px; font-size: 14px; vertical-align: -1px; }.english-slow { padding: 0 10px; border: 1px solid rgba(232,220,195,.19); color: #d9e4dd; background: transparent; }.english-slow:hover { border-color: rgba(232,220,195,.42); color: #fff2dc; }
.english-practice-card { display: flex; flex-direction: column; padding: 21px; background: linear-gradient(145deg, rgba(23,64,67,.84), rgba(8,29,34,.96)); }.english-practice-head .academy-kicker { margin-bottom: 4px; }.english-practice-head h2 { margin: 0; color: #f4ebdd; font-family: Georgia, serif; font-size: 21px; font-weight: 500; }.english-practice-head > span { padding: 5px 7px; border-radius: 7px; color: #d8e3dc; background: rgba(255,255,255,.07); font-size: 9px; font-weight: 800; }.english-practice-card > p { margin: 24px 0 15px; color: #f5efe3; font-size: 15px; font-weight: 700; line-height: 1.4; }.english-options { display: grid; gap: 8px; }.english-option { display: grid; grid-template-columns: 25px minmax(0,1fr); align-items: center; gap: 9px; width: 100%; min-height: 46px; padding: 8px 10px; border: 1px solid rgba(232,220,195,.14); border-radius: 9px; color: #dce7e0; background: rgba(255,255,255,.035); text-align: left; transition: .18s ease; }.english-option:hover:not(:disabled) { border-color: rgba(217,173,101,.55); background: rgba(217,173,101,.1); }.english-option > span { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 6px; color: #e6c995; background: rgba(217,173,101,.12); font-size: 9px; font-weight: 800; }.english-option b { font-size: 11px; line-height: 1.3; }.english-option:disabled { cursor: default; }.english-option.is-correct { border-color: rgba(155,199,165,.75); color: #e0f0e2; background: rgba(92,158,108,.17); }.english-option.is-correct > span { color: #16301f; background: var(--academy-mint); }.english-option.is-wrong { border-color: rgba(221,132,110,.65); color: #f0c7bd; background: rgba(221,132,110,.12); }.english-option.is-wrong > span { color: #381915; background: var(--academy-coral); }.english-feedback { margin-top: 12px; padding: 10px; border: 1px solid rgba(155,199,165,.35); border-radius: 9px; color: #d7eadb; background: rgba(92,158,108,.11); font-size: 10px; line-height: 1.5; }.english-feedback.is-warning { border-color: rgba(221,132,110,.35); color: #f0cfc7; background: rgba(221,132,110,.11); }.english-practice-card > small { margin-top: auto; padding-top: 15px; color: #96aaa3; font-size: 9px; line-height: 1.45; }.english-phrase-bank { padding: 20px; background: linear-gradient(155deg, rgba(217,173,101,.13), rgba(14,45,50,.72)); }.english-phrase-bank h2 { margin: 7px 0 20px; color: #f4e9d5; font-family: Georgia, serif; font-size: 22px; font-weight: 500; }.english-phrase-bank ul { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }.english-phrase-bank li { padding-bottom: 12px; border-bottom: 1px solid rgba(232,220,195,.11); }.english-phrase-bank li:last-child { padding-bottom: 0; border-bottom: 0; }.english-phrase-bank li strong, .english-phrase-bank li span { display: block; }.english-phrase-bank li strong { color: #f6eddf; font-size: 11px; line-height: 1.35; }.english-phrase-bank li span { margin-top: 4px; color: #a9bbb4; font-size: 9px; line-height: 1.35; }.english-bank-note { margin: 21px 0 0; color: #c4d7cc; font-size: 10px; line-height: 1.55; }.english-bank-note span { margin-right: 4px; color: var(--academy-gold-light); }

.assistant-home-card { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 18px; padding: 21px 24px; border: 1px solid rgba(241,213,162,.25); border-radius: 17px; background: radial-gradient(circle at 88% 22%, rgba(217,173,101,.15), transparent 30%), linear-gradient(110deg, rgba(21,65,72,.82), rgba(10,31,36,.84)); }.assistant-home-card h2 { margin: 6px 0; color: #fff1dd; font-size: 22px; letter-spacing: -1px; }.assistant-home-card p:not(.academy-kicker) { max-width: 470px; margin: 0; color: #b8c9c0; font-size: 11px; line-height: 1.55; }.assistant-home-card .academy-secondary-button { width: auto; flex: 0 0 auto; padding-left: 16px; padding-right: 16px; }
.assistant-page-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding: 45px 0 28px; }.assistant-page-head h1 { margin: 7px 0 10px; color: #f6eedf; font-size: 47px; line-height: .96; letter-spacing: -2.6px; }.assistant-page-head h1 em { color: var(--academy-gold-light); font-family: Georgia, serif; font-weight: 500; }.assistant-page-head > div > p:not(.academy-kicker) { max-width: 610px; margin: 0; color: var(--academy-muted); font-size: 13px; line-height: 1.65; }.assistant-source-badge { display: inline-flex; align-items: center; gap: 7px; padding: 9px 11px; border: 1px solid rgba(155,199,165,.3); border-radius: 10px; color: #d4ead7; background: rgba(155,199,165,.08); font-size: 9px; font-weight: 800; white-space: nowrap; }.assistant-source-badge i { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; color: #12351f; background: var(--academy-mint); font-style: normal; }
.assistant-layout { display: grid; grid-template-columns: minmax(0,1.22fr) minmax(265px,.6fr); gap: 15px; align-items: stretch; }.assistant-chat-card, .assistant-safety-card, .manager-assistant-review { border: 1px solid var(--academy-line); border-radius: 17px; }.assistant-chat-card { display: flex; flex-direction: column; min-height: 510px; overflow: hidden; background: linear-gradient(145deg, rgba(22,67,73,.9), rgba(7,27,32,.97)); }.assistant-chat-head { display: flex; align-items: start; justify-content: space-between; gap: 15px; padding: 23px 24px 19px; border-bottom: 1px solid var(--academy-line); }.assistant-chat-head h2 { margin: 5px 0 0; color: #f7edde; font-family: Georgia, serif; font-size: 22px; font-weight: 500; letter-spacing: -.65px; }.assistant-mode { padding: 5px 7px; border: 1px solid rgba(155,199,165,.32); border-radius: 99px; color: #c3e2ca; background: rgba(155,199,165,.08); font-size: 8px; font-weight: 850; letter-spacing: .08em; white-space: nowrap; }.assistant-mode.is-thinking { border-color: rgba(241,213,162,.38); color: #f7ddae; background: rgba(217,173,101,.11); }.assistant-mode.is-review { border-color: rgba(221,132,110,.45); color: #f4c5ba; background: rgba(221,132,110,.12); }
.assistant-messages { display: grid; align-content: start; gap: 11px; min-height: 270px; max-height: 410px; padding: 22px 24px; overflow-y: auto; }.assistant-message { display: flex; max-width: 88%; gap: 10px; }.assistant-message-mark { display: grid; flex: 0 0 auto; width: 27px; height: 27px; place-items: center; border-radius: 9px; color: #574023; background: var(--academy-gold-light); font-size: 14px; }.assistant-message > div { padding: 11px 13px; border: 1px solid rgba(232,220,195,.13); border-radius: 4px 12px 12px; background: rgba(0,0,0,.13); }.assistant-message strong { display: block; color: #efdcb9; font-size: 9px; }.assistant-message p { margin: 5px 0 0; color: #e2e7dd; font-size: 11px; line-height: 1.55; }.assistant-message-user { justify-self: end; flex-direction: row-reverse; }.assistant-message-user > div { border-color: rgba(217,173,101,.3); border-radius: 12px 4px 12px 12px; background: rgba(217,173,101,.12); }.assistant-message-user strong { color: #ffdfaa; }.assistant-message-user .assistant-message-mark { color: #133237; background: #82b9b3; }.assistant-answer-meta { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }.assistant-answer-meta span { padding: 3px 5px; border-radius: 5px; color: #aabeb5; background: rgba(255,255,255,.06); font-size: 8px; line-height: 1.2; }.assistant-message.is-safety > div { border-color: rgba(221,132,110,.45); background: rgba(127,59,49,.17); }.assistant-message.is-safety strong { color: #ffc5b5; }
.assistant-form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 9px; margin: auto 24px 10px; padding-top: 14px; border-top: 1px solid var(--academy-line); }.assistant-form textarea { width: 100%; min-height: 54px; resize: vertical; padding: 11px 12px; border: 1px solid rgba(232,220,195,.18); border-radius: 10px; outline: none; color: #f8efdf; background: rgba(0,0,0,.17); font: inherit; font-size: 11px; line-height: 1.45; }.assistant-form textarea:focus { border-color: rgba(241,213,162,.65); box-shadow: 0 0 0 3px rgba(217,173,101,.1); }.assistant-form textarea::placeholder { color: #819690; }.assistant-form button { align-self: end; min-height: 54px; }.assistant-form button:disabled { cursor: wait; opacity: .67; }.assistant-examples { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 24px 21px; }.assistant-examples button { padding: 5px 7px; border: 1px solid rgba(232,220,195,.18); border-radius: 99px; color: #bcd0c6; background: rgba(255,255,255,.035); font-size: 9px; font-weight: 700; }.assistant-examples button:hover { border-color: rgba(241,213,162,.5); color: #ffe5b8; background: rgba(217,173,101,.09); }
.assistant-safety-card { padding: 24px; background: radial-gradient(circle at 85% 7%, rgba(221,132,110,.18), transparent 29%), linear-gradient(160deg, rgba(69,48,43,.64), rgba(16,43,48,.87)); }.assistant-safety-icon { display: grid; width: 38px; height: 38px; place-items: center; margin-bottom: 20px; border-radius: 12px; color: #562d25; background: #edab94; font-size: 21px; font-weight: 900; }.assistant-safety-card h2 { margin: 8px 0; color: #ffede3; font-size: 24px; line-height: 1.04; letter-spacing: -1.05px; }.assistant-safety-card > p:not(.academy-kicker) { margin: 0; color: #dbc7bd; font-size: 11px; line-height: 1.6; }.assistant-safety-steps { display: grid; gap: 13px; margin-top: 22px; }.assistant-safety-steps > div { display: grid; grid-template-columns: 24px 1fr; gap: 9px; align-items: start; }.assistant-safety-steps > div > span { display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid rgba(255,218,204,.33); border-radius: 8px; color: #ffe2d2; background: rgba(255,255,255,.07); font-size: 9px; font-weight: 850; }.assistant-safety-steps p { margin: 0; }.assistant-safety-steps strong, .assistant-safety-steps small { display: block; }.assistant-safety-steps strong { color: #f6e7dc; font-size: 10px; }.assistant-safety-steps small { margin-top: 3px; color: #c9b7ac; font-size: 9px; line-height: 1.4; }.assistant-review-note { display: block; margin-top: 22px; padding-top: 13px; border-top: 1px solid rgba(255,218,204,.15); color: #d7c1b5; font-size: 9px; line-height: 1.45; }
.manager-assistant-review { margin-top: 15px; padding: 23px 24px; background: linear-gradient(110deg, rgba(20,65,69,.84), rgba(10,31,36,.78)); }.manager-assistant-review .manager-card-head > div > p:not(.academy-kicker) { max-width: 530px; margin: 7px 0 0; color: #aebfb8; font-size: 10px; line-height: 1.55; }.manager-assistant-count { padding: 6px 8px; border-radius: 7px; color: #e3c99a; background: rgba(217,173,101,.13); font-size: 8px; font-weight: 850; letter-spacing: .08em; white-space: nowrap; }.manager-assistant-list { display: grid; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }.manager-assistant-list li { display: grid; grid-template-columns: 25px minmax(0,1fr); gap: 10px; align-items: start; padding: 11px; border: 1px solid rgba(232,220,195,.1); border-radius: 10px; background: rgba(0,0,0,.1); }.manager-review-mark { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 8px; color: #153324; background: var(--academy-mint); font-size: 11px; font-weight: 900; }.manager-assistant-list li.is-pending .manager-review-mark { color: #52281f; background: var(--academy-coral); }.manager-assistant-list p { margin: 0; }.manager-assistant-list strong, .manager-assistant-list small { display: block; }.manager-assistant-list strong { color: #f3eadb; font-size: 10px; }.manager-assistant-list small { margin-top: 3px; color: #aebfb8; font-size: 9px; line-height: 1.45; }.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.academy-mobile-nav { display: none; }.academy-toast { position: fixed; bottom: 28px; left: 50%; z-index: 30; max-width: min(91vw, 420px); padding: 12px 15px; border: 1px solid rgba(241,213,162,.28); border-radius: 9px; color: #f7ead4; background: #12363c; box-shadow: 0 12px 35px rgba(0,0,0,.28); font-size: 11px; transform: translate(-50%, 100px); opacity: 0; transition: .22s; pointer-events: none; }.academy-toast.show { transform: translate(-50%, 0); opacity: 1; }
.academy-celebration { position: fixed; inset: 0; z-index: 60; display: grid; place-items: center; padding: 24px; overflow: hidden; background: rgba(3,17,21,.76); backdrop-filter: blur(8px); }.academy-celebration[hidden] { display: none; }.academy-celebration::before { position: absolute; width: min(73vw,620px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(241,213,162,.2), rgba(39,119,120,.11) 38%, transparent 68%); content: ''; }.academy-celebration-card { position: relative; z-index: 1; width: min(100%, 390px); padding: 35px 30px 29px; border: 1px solid rgba(241,213,162,.45); border-radius: 22px; color: #f7ead4; background: linear-gradient(150deg, rgba(33,86,89,.98), rgba(10,35,40,.99) 65%); box-shadow: 0 28px 80px rgba(0,0,0,.42), inset 0 1px rgba(255,255,255,.08); text-align: center; animation: academy-celebration-card .46s cubic-bezier(.18,.89,.32,1.28) both; }.academy-celebration-seal { display: grid; width: 57px; height: 57px; place-items: center; margin: 0 auto 19px; border: 1px solid rgba(255,240,207,.52); border-radius: 50%; color: #644824; background: var(--academy-gold-light); box-shadow: 0 0 0 8px rgba(241,213,162,.1); font-size: 25px; }.academy-celebration-card h2 { margin: 8px 0 9px; color: #fff4df; font-size: clamp(30px,6vw,39px); line-height: .98; letter-spacing: -1.8px; }.academy-celebration-card > p:not(.academy-kicker) { max-width: 300px; margin: 0 auto 23px; color: #cad8d0; font-size: 12px; line-height: 1.5; }.academy-celebration-card .academy-primary-button { min-width: 205px; }.academy-celebration-sparks { position: absolute; inset: 0; pointer-events: none; }.academy-celebration-spark { position: absolute; top: 48%; left: 50%; display: block; width: 9px; height: 9px; border-radius: 50%; opacity: 0; transform: translate(-50%,-50%); animation: academy-celebration-spark 1.18s cubic-bezier(.14,.69,.23,1) var(--celebration-delay) both; }.academy-celebration-spark.is-spark { width: 5px; height: 17px; border-radius: 99px; }.academy-celebration-spark.is-leaf { width: 11px; height: 17px; border-radius: 100% 0 100% 0; }.academy-celebration-spark.is-dot { width: 8px; height: 8px; }.is-celebrating { overflow: hidden; }@keyframes academy-celebration-card { from { opacity: 0; transform: translateY(20px) scale(.91); } to { opacity: 1; transform: none; } }@keyframes academy-celebration-spark { 0% { opacity: 0; transform: translate(-50%,-50%) scale(.2) rotate(0deg); } 14% { opacity: 1; } 100% { opacity: 0; transform: translate(-50%,-50%) translate(var(--celebration-x),var(--celebration-y)) rotate(var(--celebration-spin)) scale(.82); } }html.reduce-motion .academy-celebration-sparks { display: none; }html.reduce-motion .academy-celebration-card { animation: none; }html.reduce-motion .academy-view { animation: none; }@media (prefers-reduced-motion: reduce) { .academy-celebration-sparks { display: none; }.academy-celebration-card, .academy-view { animation: none; }.academy-toast { transition: none; } }

.manager-command-center { display: grid; grid-template-columns: minmax(0,.88fr) minmax(400px,1.12fr); gap: 24px; margin-bottom: 13px; padding: 24px; overflow: hidden; border: 1px solid rgba(241,213,162,.3); border-radius: 17px; background: radial-gradient(circle at 92% 8%, rgba(217,173,101,.13), transparent 31%), linear-gradient(115deg, rgba(25,72,77,.94), rgba(11,35,40,.95)); }.manager-command-lead h2 { max-width: 370px; margin: 8px 0; color: #fff3df; font-size: 27px; line-height: 1.02; letter-spacing: -1.35px; }.manager-command-lead > p:not(.academy-kicker) { max-width: 410px; margin: 0; color: #b8cac2; font-size: 11px; line-height: 1.55; }.manager-command-meta { display: flex; flex-wrap: wrap; gap: 10px 14px; margin-top: 20px; color: #a8bbb4; font-size: 9px; }.manager-command-meta span { display: inline-flex; align-items: center; gap: 6px; }.manager-command-meta i { width: 6px; height: 6px; border-radius: 50%; background: var(--academy-mint); box-shadow: 0 0 0 3px rgba(155,199,165,.1); }.manager-priority-list { display: grid; gap: 8px; align-content: center; }.manager-priority-list article { display: grid; grid-template-columns: 28px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 11px 12px; border: 1px solid rgba(232,220,195,.12); border-radius: 11px; background: rgba(3,22,26,.29); }.manager-priority-list article.is-priority { border-color: rgba(221,132,110,.48); background: rgba(127,59,49,.22); }.manager-priority-list > article > span { display: grid; width: 26px; height: 26px; place-items: center; border-radius: 8px; color: #654824; background: var(--academy-gold-light); font-size: 9px; font-weight: 900; }.manager-priority-list article.is-priority > span { color: #582d25; background: #ecab96; }.manager-priority-list p { min-width: 0; margin: 0; }.manager-priority-list strong, .manager-priority-list small { display: block; }.manager-priority-list strong { overflow: hidden; color: #f1eadc; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }.manager-priority-list small { color: #93aaa2; font-size: 8px; line-height: 1.35; }.manager-priority-list small:first-child { margin-bottom: 2px; color: #d1b77f; font-size: 7px; font-weight: 850; letter-spacing: .1em; }.manager-priority-list .quiet-button { padding: 7px 8px; font-size: 9px; }.manager-kpis { margin-top: 0; }
.team-goal-banner { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(245px,.75fr); gap: 24px; margin: 0 0 18px; padding: 25px; overflow: hidden; border: 1px solid rgba(241,213,162,.38); border-radius: 17px; background: radial-gradient(circle at 94% 10%, rgba(217,173,101,.2), transparent 29%), linear-gradient(112deg, rgba(43,75,70,.91), rgba(17,51,56,.96)); }.team-goal-copy h2 { margin: 8px 0 7px; color: #fff2de; font-size: 28px; line-height: 1.03; letter-spacing: -1.4px; }.team-goal-copy > p:not(.academy-kicker) { max-width: 590px; margin: 0; color: #c0d0c7; font-size: 11px; line-height: 1.55; }.team-goal-track { height: 8px; margin-top: 20px; overflow: hidden; border-radius: 99px; background: rgba(232,220,195,.16); box-shadow: inset 0 1px rgba(0,0,0,.13); }.team-goal-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #72b7b0, #f1d5a2 76%); }.team-goal-count { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px; margin-top: 8px; }.team-goal-count strong { color: #fff2de; font-size: 24px; letter-spacing: -1px; }.team-goal-count > span { color: #c5d2c9; font-size: 11px; }.team-goal-count small { margin-left: 8px; color: #b5d8b7; font-size: 9px; }.team-goal-reward { align-self: stretch; padding: 19px; border: 1px solid rgba(241,213,162,.2); border-radius: 13px; background: rgba(4,28,31,.3); }.team-goal-medal { display: grid; width: 38px; height: 38px; place-items: center; margin-bottom: 17px; border-radius: 12px; color: #5d4222; background: var(--academy-gold-light); font-size: 17px; }.team-goal-reward h3 { margin: 7px 0 6px; color: #fff0da; font-size: 20px; letter-spacing: -1px; }.team-goal-reward > p:not(.academy-kicker) { margin: 0; color: #bdcec5; font-size: 10px; line-height: 1.5; }.team-goal-reward .academy-primary-button { width: 100%; margin-top: 17px; padding: 10px; font-size: 10px; }.manager-team-goal { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 15px; padding: 19px 22px; border: 1px solid rgba(241,213,162,.24); border-radius: 14px; background: linear-gradient(104deg, rgba(68,72,52,.57), rgba(18,52,55,.77)); }.manager-team-goal h2 { margin: 6px 0 5px; color: #f8ecd8; font-size: 21px; letter-spacing: -1px; }.manager-team-goal > div > p:not(.academy-kicker) { max-width: 590px; margin: 0; color: #b8c9c0; font-size: 10px; line-height: 1.45; }.manager-team-goal > div > p strong { color: #f3d89e; }.manager-team-goal-status { display: grid; grid-template-columns: auto auto; align-items: center; column-gap: 13px; flex: 0 0 auto; padding-left: 19px; border-left: 1px solid rgba(232,220,195,.17); }.manager-team-goal-status > span { grid-column: 1 / -1; margin-bottom: 4px; color: #baddb9; font-size: 8px; font-weight: 850; letter-spacing: .1em; }.manager-team-goal-status > strong { color: #fff0d8; font-size: 28px; letter-spacing: -1.4px; }.manager-team-goal-status > strong small { color: #b8c8c0; font-size: 12px; letter-spacing: 0; }.manager-team-goal-status .quiet-button { padding: 7px 8px; font-size: 9px; }
@media (max-width: 1100px) { .profile-layout { grid-template-columns: minmax(0,1fr) minmax(235px,.8fr); }.profile-identity-card { min-height: auto; grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; column-gap: 22px; }.profile-identity-top { margin-bottom: 11px; }.profile-identity-card > .academy-kicker, .profile-identity-card > h2, .profile-identity-card > .profile-identity-role { grid-column: 1; }.profile-identity-card > .profile-stat-row, .profile-identity-card > .profile-privacy-note { grid-column: 2; }.profile-stat-row { margin-top: 0; } }
@media (max-width: 960px) { .academy-app { grid-template-columns: 215px minmax(0,1fr); }.academy-sidebar { padding-left: 11px; padding-right: 11px; }.academy-main { padding-left: 34px; padding-right: 34px; }.academy-topic-grid { grid-template-columns: 1fr; }.academy-topic-card { min-height: 125px; }.academy-topic-card h3 { max-width: 300px; }.quiz-layout, .ranking-layout, .manager-grid, .english-layout, .assistant-layout { grid-template-columns: 1fr; }.english-phrase-bank { min-height: 0; }.quiz-side-note { display: grid; grid-template-columns: 33px 1fr; column-gap: 13px; }.side-note-icon { grid-row: span 3; }.quiz-side-note h3 { margin-top: 9px; }.quiz-side-note small { grid-column: 2; margin-top: 13px; }.rank-insight-card { min-height: 230px; }.rank-insight-card > strong { margin-top: 10px; }.manager-alert-card { min-height: 230px; }.manager-feedback { align-items: start; }.category-bars > div { grid-template-columns: 105px 1fr 34px; }.profile-layout { grid-template-columns: 1fr; }.profile-identity-card { display: block; }.profile-identity-card > .profile-stat-row { margin-top: 26px; }.profile-summary-card { min-height: 0; }.profile-summary-list { margin-bottom: 0; } }
@media (max-width: 700px) { body { padding-bottom: 66px; }.academy-app { display: block; }.academy-sidebar { display: none; }.academy-main { padding: 0 16px 30px; }.academy-topbar { height: 64px; }.academy-crumb a, .academy-crumb > span { display: none; }.academy-demo-pill { font-size: 8px; }.academy-hero { min-height: 340px; margin-top: 21px; border-radius: 17px; }.academy-hero img { object-position: 69% center; }.academy-hero-shade { background: linear-gradient(0deg, rgba(4,18,23,.94), rgba(4,18,23,.2) 100%), linear-gradient(90deg, rgba(4,18,23,.58), transparent); }.academy-hero-content { display: flex; flex-direction: column; min-height: 340px; padding: 28px 23px; }.academy-hero h1 { margin-top: 8px; font-size: 42px; letter-spacing: -2.4px; }.academy-hero-copy { margin-top: auto; font-size: 12px; }.academy-hero-meta { margin-top: 16px; }.academy-home-grid { grid-template-columns: 1fr; gap: 11px; }.daily-challenge-card, .streak-card, .academy-learning-section, .assistant-home-card { border-radius: 14px; }.daily-challenge-card { padding: 20px; }.streak-card { padding: 19px; }.streak-number { margin-top: 8px; }.streak-card p { margin-bottom: 13px; }.academy-learning-section { margin-top: 11px; padding: 19px; }.academy-section-heading h2 { font-size: 19px; }.academy-topic-grid { gap: 9px; }.academy-topic-card { min-height: 122px; }.assistant-home-card { display: block; margin-top: 11px; padding: 19px; }.assistant-home-card .academy-secondary-button { width: 100%; margin-top: 16px; }.academy-mobile-nav { position: fixed; inset: auto 0 0; z-index: 20; display: grid; grid-template-columns: repeat(6,1fr); padding: 7px 3px calc(7px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(232,220,195,.1); background: #061419; }.academy-mobile-nav.is-manager-session { grid-template-columns: repeat(7,1fr); }.academy-mobile-nav button { display: grid; gap: 3px; place-items: center; padding: 3px 1px; border: 0; color: #9bb1aa; background: transparent; font-size: 7px; }.academy-mobile-nav span { font-size: 16px; }.academy-mobile-nav button.is-active { color: var(--academy-gold-light); }.english-page-head, .assistant-page-head { display: block; padding: 28px 0 20px; }.english-page-head h1, .assistant-page-head h1 { font-size: 41px; letter-spacing: -2.3px; }.english-page-head > div > p:not(.academy-kicker), .assistant-page-head > div > p:not(.academy-kicker) { font-size: 11px; }.english-progress-badge, .assistant-source-badge { margin-top: 17px; }.english-layout, .assistant-layout { gap: 11px; }.english-situation-card, .english-practice-card, .english-phrase-bank, .assistant-chat-card, .assistant-safety-card { border-radius: 14px; }.english-situation-card, .english-practice-card, .english-phrase-bank, .assistant-safety-card { padding: 18px; }.english-situation-card h2 { font-size: 24px; }.english-role-tabs { grid-template-columns: repeat(2,1fr); }.english-phrase-wrap { min-height: 194px; padding: 15px; }.english-phrase-wrap #english-phrase { font-size: 21px; }.assistant-chat-card { min-height: 480px; }.assistant-chat-head { padding: 18px; }.assistant-chat-head h2 { font-size: 20px; }.assistant-mode { font-size: 7px; }.assistant-messages { min-height: 250px; max-height: 355px; padding: 18px; }.assistant-message { max-width: 96%; }.assistant-form { margin-left: 18px; margin-right: 18px; grid-template-columns: 1fr; }.assistant-form button { width: 100%; min-height: 43px; }.assistant-examples { padding-left: 18px; padding-right: 18px; }.profile-page-head { display: block; padding: 28px 0 20px; }.profile-page-head h1 { font-size: 42px; letter-spacing: -2.4px; }.profile-page-head > div > p:not(.academy-kicker) { font-size: 11px; }.profile-private-badge { margin-top: 17px; }.profile-layout { gap: 11px; }.profile-identity-card, .personalization-card, .profile-summary-card { border-radius: 14px; }.profile-identity-card { padding: 19px; }.personalization-card { padding: 19px; }.profile-choice-grid { grid-template-columns: repeat(2,1fr); }.profile-save-row { align-items: end; }.profile-save-row > small { max-width: 115px; }.profile-save-row .academy-primary-button { padding: 11px 12px; font-size: 10px; }.quiz-page-head, .ranking-page-head, .manager-page-head { align-items: start; padding: 28px 0 20px; }.quiz-page-head h1 { font-size: 38px; }.quiz-layout { gap: 11px; }.quiz-card { border-radius: 14px; }.quiz-card-top { padding: 17px; }.quiz-question-wrap { padding: 25px 17px 18px; }.quiz-question-wrap h2 { font-size: 23px; }.quiz-options { padding: 0 17px 16px; }.quiz-option { padding: 12px; font-size: 11px; }.quiz-card-footer { padding: 14px 17px; }.quiz-card-footer > span { display: none; }.quiz-next { margin-left: auto; }.quiz-side-note { padding: 17px; border-radius: 13px; }.ranking-page-head { display: block; }.ranking-page-head h1 { font-size: 42px; }.ranking-message { width: 100%; margin-top: 20px; }.ranking-board { border-radius: 14px; }.ranking-board-head { padding: 17px; }.ranking-board-head h2 { font-size: 20px; }.ranking-board-head span { display: none; }.ranking-list { padding: 5px; }.ranking-list li { grid-template-columns: 24px 33px minmax(0,1fr) 51px; gap: 7px; min-height: 55px; padding: 8px; }.ranking-list li b { display: none; }.rank-insight-card { padding: 19px; }.manager-page-head { display: block; }.manager-page-head h1 { font-size: 42px; }.manager-period { width: max-content; margin-top: 18px; }.manager-kpis { grid-template-columns: 1fr 1fr; gap: 9px; }.manager-kpis article:last-child { grid-column: 1 / -1; }.manager-kpis article { padding: 15px; }.manager-kpis strong { font-size: 29px; }.manager-grid { gap: 10px; margin-top: 10px; }.category-card, .manager-alert-card, .manager-assistant-review { padding: 18px; border-radius: 14px; }.manager-card-head { display: block; }.manager-card-head .quiet-button { margin-top: 13px; }.manager-assistant-count { display: inline-block; margin-top: 13px; }.category-bars { gap: 13px; margin: 20px 0 16px; }.category-bars > div { grid-template-columns: 95px 1fr 30px; gap: 7px; font-size: 10px; }.manager-feedback { display: block; margin-top: 10px; padding: 19px; border-radius: 14px; }.feedback-score { width: max-content; margin-top: 17px; padding: 0 0 0 14px; }.academy-toast { bottom: 80px; } }
@media (max-width: 700px) { .academy-auth-gate { min-height: 100svh; padding: 16px; }.academy-login-shell { display: block; border-radius: 17px; }.academy-login-intro { min-height: auto; padding: 27px 23px 24px; }.academy-login-brand { margin-bottom: 39px; }.academy-login-intro h1 { font-size: 39px; letter-spacing: -2.4px; }.academy-login-intro > p:not(.academy-kicker) { font-size: 11px; }.academy-login-promise { margin-top: 22px; }.academy-login-card { padding: 25px 23px 27px; }.academy-login-card h2 { font-size: 25px; }.academy-login-field { margin-top: 14px; }.academy-login-field input { height: 41px; }.academy-session-button { padding: 5px 6px; font-size: 7px; }.academy-top-actions { gap: 6px; } }
@media (max-width: 380px) { .academy-main { padding-left: 11px; padding-right: 11px; }.academy-hero-content { padding-left: 18px; padding-right: 18px; }.academy-hero h1 { font-size: 37px; }.daily-challenge-card { padding: 17px; }.challenge-title-row h2 { font-size: 21px; }.manager-kpis article { padding: 12px; }.manager-kpis strong { font-size: 25px; }.academy-demo-pill { display: none; } }
@media (max-width: 960px) { .manager-command-center { grid-template-columns: 1fr; gap: 18px; }.manager-command-lead h2 { max-width: none; }.manager-command-lead > p:not(.academy-kicker) { max-width: 560px; } }
@media (max-width: 700px) { .manager-command-center { gap: 16px; margin-bottom: 10px; padding: 18px; border-radius: 14px; }.manager-command-lead h2 { font-size: 24px; }.manager-command-meta { display: grid; gap: 6px; margin-top: 16px; }.manager-priority-list { gap: 7px; }.manager-priority-list article { grid-template-columns: 27px minmax(0,1fr); padding: 10px; }.manager-priority-list .quiet-button { grid-column: 2; justify-self: start; margin-top: 2px; } }
@media (max-width: 960px) { .team-goal-banner { grid-template-columns: 1fr; gap: 15px; }.team-goal-reward { display: grid; grid-template-columns: 45px minmax(0,1fr) auto; align-items: center; gap: 11px; }.team-goal-medal { margin: 0; }.team-goal-reward .academy-kicker { grid-column: 2; }.team-goal-reward h3 { grid-column: 2; margin: -4px 0 0; }.team-goal-reward > p:not(.academy-kicker) { grid-column: 2; }.team-goal-reward .academy-primary-button { grid-column: 3; grid-row: 1 / span 3; width: auto; margin: 0; }.manager-team-goal { align-items: start; } }
@media (max-width: 700px) { .team-goal-banner { gap: 14px; margin-bottom: 11px; padding: 18px; border-radius: 14px; }.team-goal-copy h2 { font-size: 24px; }.team-goal-count small { width: 100%; margin-left: 0; }.team-goal-reward { display: block; padding: 17px; }.team-goal-medal { margin-bottom: 14px; }.team-goal-reward h3 { margin-top: 7px; }.team-goal-reward .academy-primary-button { width: 100%; margin-top: 15px; }.manager-team-goal { display: block; margin-top: 10px; padding: 18px; border-radius: 14px; }.manager-team-goal h2 { font-size: 20px; }.manager-team-goal-status { width: max-content; margin-top: 17px; padding: 0; border: 0; } }
.academy-top-profile { display: grid; width: 33px; height: 33px; place-items: center; padding: 0; overflow: hidden; border: 1px solid rgba(241,213,162,.32); border-radius: 50%; background: rgba(241,213,162,.08); }.academy-top-profile:hover { border-color: rgba(241,213,162,.75); box-shadow: 0 0 0 3px rgba(217,173,101,.09); }.academy-top-profile .profile-photo { width: 100%; height: 100%; border-radius: 50%; background: transparent; }.academy-top-profile .profile-photo img { border-radius: 50%; }.manager-schedule { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(270px,.85fr); gap: 0; margin-top: 15px; overflow: hidden; border: 1px solid var(--academy-line); border-radius: 16px; background: rgba(12,42,48,.72); }.manager-schedule-main { padding: 22px 24px; }.manager-schedule-head { display: flex; align-items: start; justify-content: space-between; gap: 18px; }.manager-schedule-head h2 { margin: 7px 0 5px; color: #f8ecda; font-size: 22px; letter-spacing: -1.1px; }.manager-schedule-head > div > p:not(.academy-kicker) { max-width: 440px; margin: 0; color: #aebfb8; font-size: 10px; line-height: 1.5; }.manager-schedule-head .quiet-button { flex: 0 0 auto; }.manager-calendar { display: grid; grid-template-columns: repeat(7,1fr); gap: 7px; margin-top: 21px; }.manager-calendar button { display: grid; min-height: 83px; place-items: center; align-content: center; gap: 3px; padding: 7px 3px; border: 1px solid rgba(232,220,195,.12); border-radius: 10px; color: #b6c9c1; background: rgba(255,255,255,.025); transition: .16s ease; }.manager-calendar button:hover { border-color: rgba(241,213,162,.5); background: rgba(217,173,101,.08); }.manager-calendar button.is-selected { border-color: rgba(241,213,162,.72); color: #5b4223; background: var(--academy-gold-light); box-shadow: 0 6px 16px rgba(0,0,0,.16); }.manager-calendar span { font-size: 9px; font-weight: 850; letter-spacing: .08em; }.manager-calendar strong { color: #f3e9d8; font-size: 18px; line-height: 1; }.manager-calendar small { color: #8fa6a0; font-size: 8px; }.manager-calendar button.is-selected strong { color: #594021; }.manager-calendar button.is-selected small { color: #755a32; }.manager-schedule-note { display: flex; gap: 7px; margin: 15px 0 0; padding-top: 13px; border-top: 1px solid rgba(232,220,195,.13); color: #92a9a1; font-size: 9px; line-height: 1.45; }.manager-schedule-note span { color: var(--academy-mint); }.manager-schedule-detail { display: flex; flex-direction: column; padding: 22px; border-left: 1px solid var(--academy-line); background: linear-gradient(150deg, rgba(27,76,79,.52), rgba(8,30,35,.39)); }.manager-schedule-detail-head { display: flex; align-items: start; justify-content: space-between; gap: 12px; }.manager-schedule-detail h2 { margin: 7px 0 0; color: #fff0dc; font-size: 20px; letter-spacing: -1px; }.manager-schedule-total { padding: 6px 8px; border-radius: 8px; color: #f7e4bd; background: rgba(217,173,101,.14); font-size: 14px; font-weight: 850; white-space: nowrap; }.manager-schedule-total small { color: #b8c9c2; font-size: 9px; }.manager-schedule-detail > p { margin: 13px 0 16px; color: #b9c9c2; font-size: 10px; line-height: 1.45; }.manager-coverage-list { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }.manager-coverage-list li { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3px 9px; padding: 9px 0; border-bottom: 1px solid rgba(232,220,195,.11); }.manager-coverage-list li:last-child { border-bottom: 0; }.manager-coverage-list span { color: #dfe6dd; font-size: 10px; }.manager-coverage-list strong { color: #f3d79f; font-size: 13px; text-align: right; }.manager-coverage-list small { color: #91a79f; font-size: 8px; }.manager-coverage-list small { grid-column: 1 / -1; }.manager-schedule-detail .text-button { align-self: start; margin-top: auto; padding-top: 15px; font-size: 9px; }
@media (max-width: 960px) { .manager-schedule { grid-template-columns: 1fr; }.manager-schedule-detail { border-top: 1px solid var(--academy-line); border-left: 0; }.manager-coverage-list { grid-template-columns: repeat(2,1fr); column-gap: 16px; }.manager-coverage-list li:nth-last-child(-n+2) { border-bottom: 0; } }
@media (max-width: 700px) { .academy-mobile-nav { grid-template-columns: repeat(5,1fr); }.academy-mobile-nav.is-manager-session { grid-template-columns: repeat(6,1fr); }.academy-top-profile { width: 31px; height: 31px; }.manager-schedule { margin-top: 10px; border-radius: 14px; }.manager-schedule-main, .manager-schedule-detail { padding: 18px; }.manager-schedule-head { display: block; }.manager-schedule-head .quiet-button { margin-top: 13px; }.manager-calendar { gap: 4px; margin-top: 17px; }.manager-calendar button { min-height: 70px; border-radius: 8px; }.manager-calendar strong { font-size: 16px; }.manager-calendar small { font-size: 7px; }.manager-schedule-detail h2 { font-size: 19px; }.manager-coverage-list { grid-template-columns: 1fr; }.manager-coverage-list li:nth-last-child(-n+2) { border-bottom: 1px solid rgba(232,220,195,.11); }.manager-coverage-list li:last-child { border-bottom: 0; }.manager-schedule-detail .text-button { margin-top: 8px; } }
.profile-access-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 15px; padding: 18px 22px; border: 1px solid var(--academy-line); border-radius: 15px; background: rgba(12,42,48,.54); }.profile-access-footer .academy-kicker { display: block; margin-bottom: 6px; }.profile-access-footer strong { display: block; color: #f4ead8; font-size: 13px; }.profile-access-footer p { margin: 4px 0 0; color: #93a9a1; font-size: 10px; }.profile-access-button { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 8px; padding: 10px 12px; border-color: rgba(241,213,162,.35); color: #f4dfb8; font-size: 10px; }.profile-access-button:hover { border-color: rgba(241,213,162,.7); background: rgba(217,173,101,.1); }
@media (max-width: 700px) { .profile-access-footer { display: block; margin-top: 11px; padding: 18px; border-radius: 14px; }.profile-access-button { width: 100%; justify-content: center; margin-top: 15px; } }
.profile-experience-fieldset { padding-top: 19px; }.profile-experience-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }.profile-experience-choice { min-height: 77px; padding: 11px 9px; border: 1px solid rgba(232,220,195,.17); border-radius: 10px; color: #bccdc6; background: rgba(255,255,255,.025); text-align: left; transition: .16s ease; }.profile-experience-choice:hover { border-color: rgba(241,213,162,.5); }.profile-experience-choice.is-selected { border-color: rgba(241,213,162,.7); color: #fff0d8; background: rgba(217,173,101,.13); box-shadow: inset 0 0 0 1px rgba(217,173,101,.08); }.profile-experience-choice strong, .profile-experience-choice small { display: block; }.profile-experience-choice strong { font-size: 10px; }.profile-experience-choice small { margin-top: 5px; color: #91a69f; font-size: 8px; line-height: 1.35; }.profile-experience-choice.is-selected small { color: #e4c99d; }
.academy-journey-setup { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 22px; background: rgba(3,16,20,.78); backdrop-filter: blur(10px); }.journey-setup-card { width: min(100%, 690px); padding: 31px; border: 1px solid rgba(241,213,162,.33); border-radius: 20px; background: radial-gradient(circle at 92% 6%, rgba(217,173,101,.16), transparent 31%), linear-gradient(145deg, #173f48, #0a242a 72%); box-shadow: 0 28px 80px rgba(0,0,0,.4); }.journey-setup-card h2 { margin: 8px 0 9px; color: #fff1dc; font-size: clamp(27px,4vw,39px); letter-spacing: -1.8px; }.journey-setup-card > p:not(.academy-kicker) { max-width: 520px; margin: 0; color: #b9cbc3; font-size: 12px; line-height: 1.55; }.journey-setup-options { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 25px; }.journey-setup-options button { display: grid; min-height: 164px; align-content: start; gap: 7px; padding: 16px; border: 1px solid rgba(232,220,195,.16); border-radius: 13px; color: #edf0e7; background: rgba(5,25,30,.39); text-align: left; transition: .18s ease; }.journey-setup-options button:hover, .journey-setup-options button:focus-visible { border-color: rgba(241,213,162,.75); background: rgba(217,173,101,.13); outline: none; transform: translateY(-2px); }.journey-setup-options span { color: var(--academy-gold-light); font-size: 10px; font-weight: 850; letter-spacing: .11em; }.journey-setup-options strong { margin-top: 7px; font-size: 15px; line-height: 1.05; }.journey-setup-options small { color: #a5b8b0; font-size: 10px; line-height: 1.45; }.journey-setup-note { display: block; margin-top: 18px; color: #9cb0a8; font-size: 9px; }.is-newcomer-journey .daily-challenge-card { border-color: rgba(155,199,165,.35); background: linear-gradient(135deg, rgba(50,91,80,.9), rgba(17,66,73,.94)); }
@media (max-width: 700px) { .profile-experience-grid, .journey-setup-options { grid-template-columns: 1fr; }.profile-experience-choice { min-height: 0; }.journey-setup { align-items: end; padding: 12px; }.journey-setup-card { padding: 24px 19px; border-radius: 18px; }.journey-setup-card h2 { font-size: 30px; }.journey-setup-options { gap: 7px; margin-top: 19px; }.journey-setup-options button { min-height: 0; grid-template-columns: 28px minmax(0,1fr); gap: 2px 9px; padding: 13px; }.journey-setup-options span { grid-row: 1 / span 2; }.journey-setup-options strong { margin-top: 0; font-size: 13px; }.journey-setup-options small { grid-column: 2; font-size: 9px; } }

/* Planificación: en la demo se usan puestos genéricos; los datos reales requieren acceso seguro. */
.manager-planner { margin-top: 15px; padding: 24px; border: 1px solid rgba(241,213,162,.2); border-radius: 16px; background: radial-gradient(circle at 88% 5%, rgba(217,173,101,.1), transparent 24%), linear-gradient(145deg, rgba(18,57,63,.85), rgba(7,29,34,.9)); }
.planner-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }.planner-head h2 { margin: 7px 0 5px; color: #fff0da; font-size: 24px; letter-spacing: -1.2px; }.planner-head > div > p:not(.academy-kicker) { max-width: 600px; margin: 0; color: #afc1ba; font-size: 11px; line-height: 1.5; }.planner-head-actions { display: flex; align-items: center; gap: 9px; flex: 0 0 auto; }.planner-head-actions .academy-primary-button { min-height: 38px; padding: 10px 12px; font-size: 9px; }
.planner-status { display: inline-flex; align-items: center; gap: 6px; padding: 7px 8px; border: 1px solid rgba(232,220,195,.17); border-radius: 7px; color: #e8d5a9; background: rgba(255,255,255,.04); font-size: 8px; font-weight: 850; letter-spacing: .09em; white-space: nowrap; }.planner-status i { width: 6px; height: 6px; border-radius: 50%; background: #d9ad65; box-shadow: 0 0 0 3px rgba(217,173,101,.1); }.planner-status.is-published { color: #c9e4c9; border-color: rgba(155,199,165,.35); }.planner-status.is-published i { background: #9bc7a5; box-shadow: 0 0 0 3px rgba(155,199,165,.1); }
.planner-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 21px; overflow: hidden; border: 1px solid rgba(232,220,195,.12); border-radius: 11px; background: rgba(232,220,195,.12); }.planner-stats > div { min-height: 83px; padding: 14px 16px; background: rgba(5,25,30,.5); }.planner-stats span { display: block; color: #9fb3ab; font-size: 8px; font-weight: 850; letter-spacing: .1em; }.planner-stats strong { display: block; margin-top: 7px; color: #f8e6be; font-size: 23px; letter-spacing: -1px; }.planner-stats strong span { display: inline; margin-left: 2px; color: #b2c5bd; font-size: 11px; letter-spacing: 0; }.planner-stats small { display: block; margin-top: 3px; color: #8fa59d; font-size: 8px; }
.planner-layout { display: grid; grid-template-columns: minmax(0,1fr) 230px; gap: 14px; margin-top: 14px; }.planner-workspace { min-width: 0; padding: 14px; border: 1px solid rgba(232,220,195,.12); border-radius: 12px; background: rgba(4,22,27,.47); }.planner-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 13px; margin-bottom: 12px; }.planner-toolbar > small { color: #91a69f; font-size: 8px; line-height: 1.35; text-align: right; }.planner-filters { display: flex; flex-wrap: wrap; gap: 5px; }.planner-filters button { padding: 7px 8px; border: 1px solid rgba(232,220,195,.14); border-radius: 7px; color: #aebfb7; background: rgba(255,255,255,.025); font-size: 8px; font-weight: 800; }.planner-filters button:hover, .planner-filters button.is-selected { border-color: rgba(241,213,162,.6); color: #ffebbd; background: rgba(217,173,101,.12); }
.planner-grid-wrap { overflow: auto; border: 1px solid rgba(232,220,195,.11); border-radius: 10px; outline: none; }.planner-grid-wrap:focus-visible { box-shadow: 0 0 0 2px rgba(241,213,162,.45); }.planner-grid { width: 100%; min-width: 650px; border-collapse: collapse; table-layout: fixed; }.planner-grid caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }.planner-grid th, .planner-grid td { border-right: 1px solid rgba(232,220,195,.1); border-bottom: 1px solid rgba(232,220,195,.1); }.planner-grid tr:last-child th, .planner-grid tr:last-child td { border-bottom: 0; }.planner-grid th:last-child, .planner-grid td:last-child { border-right: 0; }.planner-grid thead th { padding: 9px 3px; color: #aebfb8; background: rgba(255,255,255,.035); font-size: 8px; font-weight: 850; letter-spacing: .08em; text-align: center; }.planner-grid thead th:first-child { width: 102px; padding-left: 11px; text-align: left; }.planner-grid thead th span { display: block; margin-top: 2px; color: #f3d79f; font-size: 13px; letter-spacing: 0; }.planner-grid tbody th { padding: 8px 10px; color: #e7eee7; background: rgba(255,255,255,.018); text-align: left; }.planner-grid tbody th strong, .planner-grid tbody th small { display: block; }.planner-grid tbody th strong { font-size: 9px; }.planner-grid tbody th small { margin-top: 3px; color: #8ca29a; font-size: 7px; font-weight: 600; }.planner-grid td { height: 52px; padding: 3px; }
.planner-shift { display: grid; width: 100%; min-height: 43px; place-content: center; gap: 1px; padding: 4px 1px; border: 1px solid transparent; border-radius: 6px; color: #1d302d; font-family: inherit; text-align: center; transition: transform .14s ease, box-shadow .14s ease; }.planner-shift:hover { transform: translateY(-1px); box-shadow: 0 4px 9px rgba(0,0,0,.18); }.planner-shift:focus-visible { outline: 2px solid #fff0d8; outline-offset: 1px; }.planner-shift span { font-size: 9px; font-weight: 850; }.planner-shift small { font-size: 7px; font-weight: 750; }.shift-morning { background: #f0c1a7; }.shift-late { background: #b8db9f; }.shift-medium { background: #9bd4e7; }.shift-split { background: #d9a3d5; }.shift-rest { color: #97a9a3; background: rgba(186,207,200,.14); }.shift-rest span { font-size: 13px; }.planner-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 10px; margin: 11px 0 0; color: #a9bbb3; font-size: 8px; }.planner-legend span { width: 10px; height: 10px; border-radius: 3px; }
.planner-insights { display: flex; flex-direction: column; padding: 16px; border: 1px solid rgba(232,220,195,.12); border-radius: 12px; background: linear-gradient(145deg, rgba(26,70,71,.7), rgba(7,30,34,.66)); }.planner-insights h3 { margin: 6px 0 0; color: #fff0d8; font-size: 17px; letter-spacing: -.7px; }.planner-insights ul { display: grid; gap: 10px; margin: 18px 0; padding: 0; list-style: none; }.planner-insights li { display: flex; gap: 8px; align-items: flex-start; }.planner-insights li > span { display: grid; width: 17px; height: 17px; flex: 0 0 auto; place-items: center; border-radius: 50%; color: #a9d3b0; background: rgba(155,199,165,.13); font-size: 10px; font-weight: 850; }.planner-insights li.is-warning > span { color: #6a4826; background: #f0d39b; }.planner-insights p { margin: 0; }.planner-insights strong, .planner-insights small { display: block; }.planner-insights strong { color: #e9efe6; font-size: 9px; }.planner-insights small { margin-top: 3px; color: #9fb3ab; font-size: 8px; line-height: 1.4; }.planner-insights .academy-secondary-button { width: 100%; margin-top: auto; padding: 10px; font-size: 8px; }
@media (max-width: 960px) { .planner-layout { grid-template-columns: 1fr; }.planner-insights { min-height: 0; }.planner-insights ul { grid-template-columns: repeat(3,1fr); }.planner-insights .academy-secondary-button { width: auto; align-self: flex-start; }.planner-head { display: block; }.planner-head-actions { margin-top: 15px; } }
@media (max-width: 700px) { .manager-planner { margin-top: 10px; padding: 18px; border-radius: 14px; }.planner-head h2 { font-size: 22px; }.planner-head-actions { display: grid; grid-template-columns: 1fr auto; }.planner-head-actions .academy-primary-button { grid-column: 1 / -1; width: 100%; }.planner-stats { grid-template-columns: 1fr; }.planner-stats > div { min-height: 66px; padding: 12px 14px; }.planner-stats strong { margin-top: 4px; font-size: 20px; }.planner-toolbar { display: block; }.planner-toolbar > small { display: block; margin-top: 9px; text-align: left; }.planner-grid-wrap { margin-right: -4px; }.planner-grid { min-width: 610px; }.planner-grid thead th:first-child { width: 91px; }.planner-grid tbody th { padding-right: 6px; padding-left: 8px; }.planner-filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; }.planner-filters button { white-space: nowrap; }.planner-insights { padding: 15px; }.planner-insights ul { grid-template-columns: 1fr; margin: 16px 0; }.planner-insights .academy-secondary-button { width: 100%; }.planner-legend { gap: 5px 8px; } }
.shift-vacation { color: #5d4917; background: #f0dd6e; }.shift-vacation span { font-size: 13px; }

@media (max-width: 960px) { .wine-learning-card { grid-template-columns: 1fr 1fr; }.wine-learning-intro { grid-column: 1 / -1; }.wine-learning-action { padding-left: 0; border-top: 1px solid rgba(232,220,195,.13); border-left: 0; padding-top: 16px; }.dish-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 700px) { .wine-learning-card { display: block; margin-top: 11px; padding: 18px; border-radius: 12px; }.wine-reference-list { margin-top: 16px; gap: 5px 12px; }.wine-learning-action { margin-top: 15px; }.dish-gallery-section { margin-top: 11px; padding: 18px; border-radius: 14px; }.dish-gallery-section .academy-section-heading { align-items: end; }.dish-gallery-note { max-width: 90px; line-height: 1.4; text-align: right; }.dish-gallery-grid { gap: 8px; }.dish-photo-card { border-radius: 10px; }.dish-photo-card figcaption { padding: 9px; }.dish-photo-card h3 { font-size: 11px; }.dish-photo-card p { font-size: 7px; }.dish-lightbox { align-items: end; padding: 10px; }.dish-lightbox-card { display: flex; flex-direction: column; width: 100%; max-height: calc(100vh - 20px); border-radius: 16px; }.dish-lightbox-card > img { height: min(62vh,530px); max-height: none; object-fit: contain; }.dish-lightbox-info { min-height: 134px; padding: 20px 18px; }.dish-lightbox-info h2 { font-size: 28px; }.dish-lightbox-close { top: 10px; right: 10px; width: 33px; height: 33px; } }

/* Eventos: una ficha operativa común para evitar información dispersa durante un cerrado. */
.events-page-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding: 45px 0 28px; }.events-page-head h1 { margin: 9px 0 11px; color: #fff4e3; font-size: clamp(39px,4.4vw,58px); line-height: .98; letter-spacing: -3px; }.events-page-head h1 em { color: var(--academy-gold-light); font-family: Georgia,serif; font-weight: 500; }.events-page-head > div > p:not(.academy-kicker) { max-width: 560px; margin: 0; color: #b7c9c2; font-size: 12px; line-height: 1.55; }.event-demo-badge { flex: 0 0 auto; padding: 8px 10px; border: 1px solid rgba(241,213,162,.26); border-radius: 99px; color: #e6cc9a; background: rgba(217,173,101,.08); font-size: 8px; font-weight: 850; letter-spacing: .1em; }
.event-command-card { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(230px,.55fr); overflow: hidden; border: 1px solid rgba(241,213,162,.25); border-radius: 18px; background: radial-gradient(circle at 90% 6%, rgba(217,173,101,.15), transparent 27%), linear-gradient(135deg,#1a4f56,#0d2a30 70%); }.event-command-lead { padding: 28px; }.event-status { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 16px; color: #c9e4ca; font-size: 8px; font-weight: 850; letter-spacing: .11em; }.event-status i { width: 7px; height: 7px; border-radius: 50%; background: var(--academy-mint); box-shadow: 0 0 0 4px rgba(155,199,165,.1); }.event-command-lead h2 { margin: 8px 0 9px; color: #fff1db; font-size: 31px; letter-spacing: -1.5px; }.event-command-lead > p:not(.academy-kicker) { max-width: 620px; margin: 0; color: #bfd0c8; font-size: 12px; line-height: 1.55; }.event-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }.event-meta span { padding: 7px 9px; border: 1px solid rgba(232,220,195,.13); border-radius: 8px; color: #afc2bb; background: rgba(3,20,24,.2); font-size: 9px; }.event-meta b { margin-right: 3px; color: #f4d898; font-size: 13px; }.event-command-side { display: flex; flex-direction: column; justify-content: end; padding: 27px; border-left: 1px solid rgba(232,220,195,.13); background: rgba(4,25,30,.25); }.event-command-side strong { display: block; margin: 8px 0 5px; color: #fff0da; font-size: 20px; line-height: 1.05; letter-spacing: -1px; }.event-command-side small { color: #aec1ba; font-size: 10px; line-height: 1.45; }.event-command-side .academy-primary-button { width: 100%; margin-top: 21px; padding: 11px 10px; font-size: 9px; }
.event-briefing { display: grid; grid-template-columns: minmax(220px,.83fr) minmax(0,1.17fr) auto; align-items: end; gap: 22px; margin-top: 14px; padding: 21px 24px; border: 1px solid rgba(155,199,165,.28); border-radius: 15px; background: linear-gradient(135deg,rgba(36,79,70,.76),rgba(9,35,39,.85)); }.event-briefing h2 { margin: 7px 0 6px; color: #f3eddc; font-size: 21px; letter-spacing: -1px; }.event-briefing > div > p:not(.academy-kicker) { margin: 0; color: #b4c7bd; font-size: 10px; line-height: 1.45; }.event-briefing ol { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin: 0; padding: 0; list-style: none; }.event-briefing li { display: flex; gap: 7px; padding: 5px 0; }.event-briefing li > span { display: grid; width: 22px; height: 22px; flex: 0 0 auto; place-items: center; border-radius: 7px; color: #5c482c; background: #efd49e; font-size: 8px; font-weight: 850; }.event-briefing li p { margin: 0; }.event-briefing li strong,.event-briefing li small { display: block; }.event-briefing li strong { color: #f3f0e3; font-size: 9px; }.event-briefing li small { margin-top: 3px; color: #a8beb4; font-size: 8px; line-height: 1.35; }.event-briefing .academy-secondary-button { align-self: center; white-space: nowrap; font-size: 8px; }.event-briefing .academy-secondary-button.is-complete { border-color: rgba(155,199,165,.55); color: #d0ebd4; background: rgba(155,199,165,.14); }
.event-main-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(230px,.65fr); gap: 14px; margin-top: 14px; }.event-phases,.event-safety-card { padding: 24px; border: 1px solid var(--academy-line); border-radius: 16px; background: rgba(12,42,48,.72); }.event-phase-status { padding: 6px 8px; border-radius: 8px; color: #ead39f; background: rgba(217,173,101,.13); font-size: 8px; font-weight: 850; letter-spacing: .08em; white-space: nowrap; }.event-phase-tabs { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin-top: 19px; }.event-phase-tabs button { min-height: 91px; padding: 12px 10px; border: 1px solid rgba(232,220,195,.13); border-radius: 11px; color: #9fb4ad; background: rgba(255,255,255,.022); text-align: left; transition: .16s ease; }.event-phase-tabs button:hover,.event-phase-tabs button.is-active { border-color: rgba(241,213,162,.6); color: #fff0d4; background: rgba(217,173,101,.12); }.event-phase-tabs span,.event-phase-tabs strong,.event-phase-tabs small { display: block; }.event-phase-tabs span { color: #ddb871; font-size: 8px; font-weight: 850; }.event-phase-tabs strong { margin-top: 8px; font-size: 12px; }.event-phase-tabs small { margin-top: 4px; color: #9db2a9; font-size: 8px; }.event-phase-detail { display: grid; grid-template-columns: 37px minmax(0,1fr) auto; align-items: start; gap: 13px; margin-top: 14px; padding: 18px 0 0; border-top: 1px solid rgba(232,220,195,.13); }.event-phase-detail > span { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: #61482a; background: #efd49e; font-size: 10px; font-weight: 850; }.event-phase-detail h3 { margin: 6px 0; color: #f4ead8; font-size: 18px; letter-spacing: -.8px; }.event-phase-detail p:not(.academy-kicker) { max-width: 470px; margin: 0; color: #b9cbc3; font-size: 10px; line-height: 1.5; }.event-phase-detail small { display: block; margin-top: 9px; color: #90a89f; font-size: 8px; line-height: 1.45; }.event-phase-detail .quiet-button { margin-top: 2px; font-size: 8px; white-space: nowrap; }
.event-safety-card { position: relative; overflow: hidden; background: radial-gradient(circle at 100% 0%,rgba(215,151,94,.14),transparent 30%),linear-gradient(145deg,rgba(74,59,43,.76),rgba(22,47,48,.82)); }.event-safety-icon { display: grid; width: 31px; height: 31px; place-items: center; margin-bottom: 21px; border-radius: 10px; color: #5d3d25; background: #f0c899; font-weight: 900; }.event-safety-card h2 { margin: 7px 0 8px; color: #fff0dc; font-size: 22px; line-height: 1; letter-spacing: -1px; }.event-safety-card > p:not(.academy-kicker) { margin: 0; color: #c5cec3; font-size: 10px; line-height: 1.55; }.event-safety-card > p strong { color: #f4d79e; }.event-safety-card ul { display: grid; gap: 8px; margin: 20px 0; padding: 0; list-style: none; }.event-safety-card li { display: flex; align-items: center; gap: 7px; color: #d9e2d8; font-size: 9px; }.event-safety-card li span { display: grid; width: 17px; height: 17px; place-items: center; border-radius: 50%; color: #46603f; background: #bad7af; font-size: 9px; font-weight: 850; }.event-safety-card li:last-child span { color: #6b4327; background: #f2c693; }.event-safety-card .text-button { padding: 0; font-size: 8px; }
.event-manager-strip { display: grid; grid-template-columns: minmax(0,1fr) minmax(245px,.65fr) auto; align-items: center; gap: 22px; margin-top: 14px; padding: 22px 24px; border: 1px solid rgba(241,213,162,.24); border-radius: 16px; background: linear-gradient(135deg,rgba(16,54,61,.86),rgba(13,38,44,.9)); }.event-manager-strip h2 { margin: 7px 0 6px; color: #f9edd9; font-size: 20px; letter-spacing: -1px; }.event-manager-strip > div > p:not(.academy-kicker) { max-width: 480px; margin: 0; color: #acc0b8; font-size: 10px; line-height: 1.5; }.event-manager-checks { display: grid; gap: 6px; }.event-manager-checks span { color: #cbd9cf; font-size: 9px; }.event-manager-checks i { display: inline-grid; width: 15px; height: 15px; place-items: center; margin-right: 5px; border-radius: 50%; color: #3e5c41; background: #b9d8b2; font-style: normal; font-size: 8px; font-weight: 850; }.event-manager-checks span:last-child i { color: #67442a; background: #f1c895; }.event-manager-strip .academy-primary-button { padding: 11px 12px; font-size: 8px; white-space: nowrap; }
.pilot-scorecard { margin-top: 15px; padding: 24px; border: 1px solid rgba(155,199,165,.26); border-radius: 16px; background: radial-gradient(circle at 91% 7%,rgba(155,199,165,.13),transparent 23%),linear-gradient(145deg,rgba(18,57,59,.85),rgba(8,31,36,.92)); }.pilot-scorecard header { display: flex; align-items: start; justify-content: space-between; gap: 20px; }.pilot-scorecard h2 { margin: 7px 0 6px; color: #f7ebd9; font-size: 23px; letter-spacing: -1.1px; }.pilot-scorecard header > div > p:not(.academy-kicker) { max-width: 610px; margin: 0; color: #b3c6be; font-size: 10px; line-height: 1.5; }.pilot-metrics { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; margin-top: 20px; overflow: hidden; border: 1px solid rgba(232,220,195,.12); border-radius: 11px; background: rgba(232,220,195,.12); }.pilot-metrics article { min-height: 119px; padding: 15px; background: rgba(5,25,30,.49); }.pilot-metrics span { color: #9eb4aa; font-size: 8px; font-weight: 850; letter-spacing: .1em; }.pilot-metrics strong { display: block; margin-top: 9px; color: #efdaaa; font-size: 27px; line-height: 1; letter-spacing: -1px; }.pilot-metrics strong small { color: #9fb3aa; font-size: 12px; }.pilot-metrics p { margin: 8px 0 0; color: #8fa69d; font-size: 8px; line-height: 1.4; }.pilot-privacy-note { display: flex; gap: 7px; margin: 16px 0 0; color: #a8beb4; font-size: 9px; line-height: 1.45; }.pilot-privacy-note span { color: var(--academy-mint); }
@media (max-width: 960px) { .event-command-card,.event-main-grid { grid-template-columns: 1fr; }.event-command-side { border-top: 1px solid rgba(232,220,195,.13); border-left: 0; }.event-briefing { grid-template-columns: 1fr; }.event-briefing ol { grid-template-columns: repeat(3,1fr); }.event-briefing .academy-secondary-button { justify-self: start; }.event-manager-strip { grid-template-columns: 1fr 1fr; }.event-manager-strip .academy-primary-button { grid-column: 1 / -1; justify-self: start; }.pilot-metrics { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 700px) { .academy-mobile-nav { grid-template-columns: repeat(6,1fr); }.academy-mobile-nav.is-manager-session { grid-template-columns: repeat(7,1fr); }.events-page-head { display: block; padding: 28px 0 20px; }.events-page-head h1 { font-size: 42px; letter-spacing: -2.4px; }.events-page-head > div > p:not(.academy-kicker) { font-size: 11px; }.event-demo-badge { display: inline-block; margin-top: 17px; }.event-command-card,.event-phases,.event-safety-card,.event-manager-strip,.pilot-scorecard { border-radius: 14px; }.event-command-lead,.event-command-side,.event-phases,.event-safety-card,.pilot-scorecard { padding: 19px; }.event-command-lead h2 { font-size: 25px; }.event-command-side { padding-top: 18px; }.event-meta { gap: 6px; margin-top: 17px; }.event-meta span { padding: 6px 7px; font-size: 8px; }.event-briefing { display: block; margin-top: 10px; padding: 19px; border-radius: 14px; }.event-briefing h2 { font-size: 20px; }.event-briefing ol { grid-template-columns: 1fr; gap: 7px; margin-top: 17px; }.event-briefing .academy-secondary-button { width: 100%; margin-top: 18px; }.event-main-grid { gap: 10px; margin-top: 10px; }.event-phases .academy-section-heading { align-items: end; }.event-phase-status { max-width: 104px; line-height: 1.35; text-align: right; }.event-phase-tabs { gap: 5px; margin-top: 15px; }.event-phase-tabs button { min-height: 84px; padding: 10px 7px; }.event-phase-tabs strong { font-size: 10px; }.event-phase-tabs small { font-size: 7px; }.event-phase-detail { grid-template-columns: 31px minmax(0,1fr); gap: 10px; }.event-phase-detail .quiet-button { grid-column: 2; justify-self: start; margin-top: 2px; }.event-phase-detail h3 { font-size: 17px; }.event-safety-icon { margin-bottom: 17px; }.event-manager-strip { display: block; margin-top: 10px; padding: 19px; }.event-manager-checks { margin: 17px 0; }.event-manager-strip .academy-primary-button { width: 100%; }.pilot-scorecard { margin-top: 10px; }.pilot-scorecard header { display: block; }.pilot-scorecard header .quiet-button { margin-top: 15px; }.pilot-scorecard h2 { font-size: 21px; }.pilot-metrics { grid-template-columns: 1fr 1fr; margin-top: 17px; }.pilot-metrics article { min-height: 107px; padding: 13px; }.pilot-metrics strong { font-size: 23px; } }

.pilot-setup-card { margin-bottom: 15px; }.pilot-setup-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-top: 20px; }.pilot-setup-grid article { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 9px; min-height: 78px; padding: 13px; border: 1px solid rgba(232,220,195,.12); border-radius: 10px; background: rgba(5,25,30,.42); }.pilot-setup-grid article > span { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 8px; color: #574429; background: #efd49e; font-size: 8px; font-weight: 850; }.pilot-setup-grid p { margin: 0; }.pilot-setup-grid strong,.pilot-setup-grid small { display: block; }.pilot-setup-grid strong { color: #edf0e8; font-size: 10px; }.pilot-setup-grid small { margin-top: 4px; color: #93aaa1; font-size: 8px; line-height: 1.4; }
@media (max-width: 700px) { .pilot-setup-card { margin-bottom: 10px; }.pilot-setup-grid { grid-template-columns: 1fr; gap: 7px; margin-top: 17px; }.pilot-setup-grid article { min-height: 0; padding: 12px; } }

/* Eventos queda fuera de la demo hasta validar el alcance con gerencia. */
@media (max-width: 700px) { .academy-mobile-nav { grid-template-columns: repeat(5,1fr); }.academy-mobile-nav.is-manager-session { grid-template-columns: repeat(6,1fr); } }
