.academy-app{--academy-bg:#07090b;--academy-bg-secondary:#090c0f;--academy-surface:#0d1115;--academy-surface-light:#11161b;--academy-surface-hover:#151b21;--academy-border:rgba(255,255,255,.075);--academy-border-strong:rgba(255,255,255,.12);--academy-text:#f4f6f8;--academy-text-secondary:#9ca4ae;--academy-text-muted:#646d78;--academy-primary:#ff294d;--academy-primary-hover:#ff3a58;--academy-primary-soft:rgba(255,41,77,.12);--academy-yellow:#ffb020;--academy-blue:#2c9eff;--academy-green:#22d676;--line:var(--academy-border);--muted:var(--academy-text-secondary);--red:var(--academy-primary);background:var(--academy-bg);color:var(--academy-text);letter-spacing:0}
.academy-app .layout{grid-template-columns:230px minmax(0,1fr)}
.academy-app .sidebar{padding:24px 16px 16px;background:var(--academy-bg-secondary);gap:24px;scrollbar-width:none;z-index:30}
.academy-app .sidebar::-webkit-scrollbar{display:none}
.academy-app .brand{display:inline-flex;flex-direction:column;line-height:1;min-height:44px;justify-content:center}
.academy-app .academy-wordmark{width:168px;height:38px;object-fit:cover;object-position:center 47%}
.academy-app .academy-wordmark>span{color:var(--red)}
.academy-app .academy-wordmark.academy-full-logo{width:180px;max-width:100%;height:auto;aspect-ratio:3/1;object-fit:contain}
.academy-app .academy-mobile-brand .academy-wordmark.academy-full-logo{width:120px;height:auto}
.academy-app .brand small{font-size:12px;margin-top:8px;letter-spacing:0;word-spacing:0}
.academy-app .academy-brand-row{padding:0 12px;display:flex;align-items:center;justify-content:space-between}
.academy-app .sidebar nav{gap:4px}
.academy-app .sidebar nav a{position:relative;display:flex;align-items:center;gap:14px;min-height:44px;padding:10px 12px;border:1px solid transparent;border-radius:8px;color:var(--muted)}
.academy-app .sidebar nav a:hover{color:var(--academy-text);background:var(--academy-surface)}
.academy-app .sidebar nav a[aria-current=page]{border:1px solid #ff294d59;background:var(--academy-primary-soft);color:var(--red)}
.academy-app .sidebar nav a[aria-current=page]::before{content:'';position:absolute;left:-1px;top:12px;bottom:12px;width:2px;background:var(--red)}
.academy-app .sidebar hr{border:0;border-top:1px solid var(--line);width:100%;margin:14px 0}
.academy-app .academy-icon{display:inline-block;width:20px;height:20px;object-fit:contain;flex:none;filter:invert(1);opacity:.8;vertical-align:middle}
.academy-app .sidebar a[aria-current=page] .academy-icon,.academy-app .academy-hero-links .academy-icon{filter:invert(30%) sepia(87%) saturate(3580%) hue-rotate(330deg) brightness(105%);opacity:1}
.academy-app .academy-studio-promo{margin-top:auto;border:1px solid #ffb02030;border-radius:8px;padding:16px;background:linear-gradient(145deg,#ffb02008,transparent 50%,#ff294d12)}
.academy-app .academy-studio-promo h2{font-size:18px;line-height:1.25;margin:12px 0 10px}
.academy-app .academy-studio-promo>.academy-icon{display:block;margin-inline:auto}
.academy-app .academy-studio-promo p{font-size:13px;line-height:1.5;color:var(--muted)}
.academy-app .academy-studio-promo .button{padding:0 10px;font-size:13px;width:100%}
.academy-app .sidebar footer a{display:flex;align-items:center;justify-content:space-between;font-size:12px;min-height:44px}
.academy-app .topbar{min-height:76px;padding:14px 30px;background:var(--academy-bg);gap:20px}
.academy-app .search{position:relative;max-width:620px;align-items:center;gap:0}
.academy-app .search>.academy-icon{position:absolute;left:16px;pointer-events:none}
.academy-app .search input{height:46px;padding:0 16px 0 48px;background:var(--academy-surface);border-radius:8px;font-size:14px}
.academy-app .account{min-width:0;flex-shrink:0}
.academy-app .academy-account-menu{position:relative}
.academy-app .academy-account-menu summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer;min-height:44px;font-size:14px}
.academy-app .academy-account-menu summary::-webkit-details-marker{display:none}
.academy-app .avatar,.academy-app .academy-avatar-fallback{width:36px;height:36px;border-radius:50%;background:var(--academy-surface-hover);display:grid;place-items:center}
.academy-app .academy-account-options{position:absolute;right:0;top:calc(100% + 8px);z-index:60;background:var(--academy-surface-light);border:1px solid var(--line);border-radius:8px;padding:8px;width:220px;box-shadow:0 12px 32px #0008;display:grid}
.academy-app .academy-account-options a,.academy-app .academy-account-options button{padding:10px 12px;text-align:left;border:0;border-radius:4px;min-height:44px;font-size:14px;background:transparent}
.academy-app .academy-account-options a:hover,.academy-app .academy-account-options button:hover{background:var(--academy-surface-hover)}
.academy-app .content{max-width:1560px;padding:0 30px 48px}
.academy-app .content:not(:has(.academy-hero)){padding-top:30px}
.academy-app .academy-hero{position:relative;isolation:isolate;margin:0 -30px 28px;min-height:330px;display:flex;align-items:center;padding:32px 30px;overflow:hidden;border-bottom:1px solid var(--line)}
.academy-app .academy-hero-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.academy-app .academy-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#050709f5 0%,#050709bd 42%,#05070915 73%,#05070980)}
.academy-app .academy-hero-copy{max-width:620px;width:65%;position:relative}
.academy-app .academy-hero h1{font-size:42px;font-weight:950;font-style:italic;line-height:1.04;margin:0 0 16px;overflow-wrap:normal}
.academy-app .academy-hero h1 em{color:var(--red);font-style:inherit}
.academy-app .academy-hero-copy>p:not(.kicker){max-width:510px;font-size:15px;line-height:1.6;color:#d0d5da;margin-bottom:20px}
.academy-app .kicker{letter-spacing:0;color:var(--red);font-size:12px}
.academy-app .button,.academy-app button{border-radius:8px}
.academy-app .button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 20px}
.academy-app button.primary,.academy-app .button.primary{background:var(--red);border-color:var(--red)}
.academy-app button.primary:hover,.academy-app .button.primary:hover{background:var(--academy-primary-hover)}
.academy-app .academy-hero .actions button{display:inline-flex;gap:10px;align-items:center;border-color:#ff294d70;background:#07090b99;min-height:46px}
.academy-app .academy-hero-links{display:grid;gap:8px;width:180px;margin-left:auto}
.academy-app .academy-hero-links a{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--academy-border-strong);border-radius:8px;background:#07090b75;min-height:60px}
.academy-app .academy-hero-links strong{display:block;font-size:12px;text-transform:uppercase}
.academy-app .academy-hero-links small{display:block;font-size:10px;margin-top:3px}
.academy-app .academy-section{margin-bottom:30px}
.academy-app .section-head{margin-bottom:14px;align-items:center;gap:12px}
.academy-app .section-head h2{font-size:25px;line-height:1.2;margin:0}
.academy-app .section-head p{font-size:13px;color:var(--muted);margin:6px 0 0}
.academy-app .section-head>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:var(--red);flex:none}
.academy-app .academy-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}
.academy-app .academy-category{min-width:0;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:end;gap:10px;min-height:94px;border:1px solid var(--academy-border-strong);border-radius:8px;padding:14px;font-size:12px;font-weight:700;background:#07090b}
.academy-app .academy-category>img:not(.academy-icon){position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:75% center;opacity:.5}
.academy-app .academy-category::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#07090bee,#07090b22)}
.academy-app .academy-category:hover{border-color:var(--red)}
.academy-app .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.academy-app .academy-card{border:1px solid var(--academy-border-strong);border-radius:8px;background:var(--academy-surface);position:relative}
.academy-app .academy-card-link{display:flex;flex-direction:column;height:100%;min-width:0}
.academy-app .academy-cover-wrap{position:relative}
.academy-app .academy-cover-wrap .cover{aspect-ratio:16/9;height:auto;object-fit:cover}
.academy-app .academy-type{position:absolute;top:10px;left:10px;display:flex;align-items:center;gap:5px;padding:4px 7px;background:var(--red);border:1px solid transparent;border-radius:4px;color:white;font-size:10px;text-transform:uppercase;font-weight:700}
.academy-app .academy-type .academy-icon{width:12px;height:12px;opacity:1}
.academy-app .academy-type--article{background:#071723e8;color:#78c7ff;border-color:#2c9eff66}
.academy-app .academy-type--manual{background:#261b09e8;color:#ffcb68;border-color:#ffb02066}
.academy-app .academy-access-icon{position:absolute;right:10px;top:10px;background:#07090b99;border-radius:4px;padding:3px}
.academy-app .academy-access-icon .academy-icon{width:16px;height:16px}
.academy-app .card-body{padding:14px;gap:9px}
.academy-app .card-body h3{font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.academy-app .card-body>p{font-size:13px;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.academy-app .academy-card-author{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;margin-top:auto;padding-top:4px}
.academy-app .academy-card-author .academy-icon{width:16px;height:16px}
.academy-app .academy-card-metadata{font-size:11px;color:var(--muted);line-height:1.5}
.academy-app .academy-card-metadata:empty{display:none}
.academy-app .academy-mobile-brand .academy-wordmark{width:100px;height:24px}
.academy-app .academy-card-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:space-between;font-size:11px;color:var(--muted)}
.academy-app .academy-card-bottom .price{font-size:12px;color:var(--academy-text)}
.academy-app .academy-card-bottom .academy-free{color:#86d6a9}
.academy-app .academy-card:hover{border-color:#ff294d40}
.academy-app .academy-article-section .academy-cover-wrap .cover{aspect-ratio:2/1}
.academy-app .academy-manual-section .academy-cover-wrap .cover{aspect-ratio:4/3}
.academy-app .academy-preparing{display:flex;align-items:center;gap:24px;padding:32px 0;border-block:1px solid var(--line);margin-top:30px}
.academy-app .academy-preparing>.academy-icon{width:42px;height:42px}
.academy-app .academy-preparing h2{font-size:24px;margin:0 0 8px}
.academy-app .academy-preparing p:last-child{font-size:14px;color:var(--muted);max-width:580px;margin:0}
.academy-app .academy-preparing>.button{margin-left:auto;flex:none}
.academy-app .academy-resume-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.academy-app .academy-resume{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:8px;min-width:0;background:var(--academy-surface)}
.academy-app .academy-resume>img{width:72px;height:60px;border-radius:4px;object-fit:cover}
.academy-app .academy-resume>div{flex:1;min-width:0}
.academy-app .academy-resume h3{font-size:13px;margin:0 0 10px;overflow-wrap:anywhere}
.academy-app .academy-resume-progress{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.academy-app .academy-resume progress{width:100%;height:5px;accent-color:var(--red);min-width:0}
.academy-app .academy-resume-play{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;flex:none}
.academy-app .filters{background:var(--academy-surface);padding:18px;border:1px solid var(--line);border-radius:8px}
.academy-app .academy-filter-tools{display:flex;align-items:center;gap:12px;margin-left:auto;flex:none;font-size:14px}
.academy-app .academy-filter-trigger,.academy-app .academy-filter-heading button{width:44px;height:44px;padding:0;display:grid;place-items:center}
.academy-app .academy-filter-trigger:hover{border-color:var(--red)}
.academy-app .academy-filter-popover{position:fixed;inset:auto var(--filter-right,16px) auto auto;top:var(--filter-top,160px);margin:0;width:520px;max-width:calc(100vw - 32px);max-height:calc(100dvh - var(--filter-top,160px) - 16px);overflow:auto;box-sizing:border-box;padding:18px;background:var(--academy-surface-light);color:var(--academy-text);border:1px solid var(--academy-border-strong);border-radius:8px;box-shadow:0 12px 36px #0008}
.academy-app .academy-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.academy-app .academy-filter-heading h2{font-size:18px;margin:0}
.academy-app .academy-filter-popover .filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:0;border:0;background:transparent;margin:0}
@media(max-width:430px){.academy-app .academy-filter-popover .filters{grid-template-columns:1fr}.academy-app .academy-filter-tools{gap:8px;font-size:12px}}
.academy-app .academy-mobile-brand,.academy-app .academy-drawer-close{display:none}
.academy-app .academy-scrim{position:fixed;inset:0;background:#000b;border:0;border-radius:0;z-index:29;width:100%;height:100%}
.academy-app .academy-scrim[hidden]{display:none}
.academy-app :is(a,button,summary,input,select):focus-visible{outline:2px solid #f4f6f8;outline-offset:3px}
.academy-app button:disabled{opacity:.45}
.academy-app .academy-price-covered{display:flex;flex-direction:column;gap:8px}
.academy-app .academy-price-covered s{color:var(--academy-text-secondary);font-size:16px;font-weight:400;text-decoration-thickness:2px}
.academy-app .academy-price-covered span{color:#86d6a9;font-size:16px;line-height:1.4}
.academy-app .academy-manual-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}
.academy-app .academy-manual-reader{display:block;width:100%;height:75dvh;min-height:420px;border:1px solid var(--academy-border);border-radius:8px;background:#050505}
.academy-app .detail-grid:has(.academy-manual-reader){grid-template-columns:minmax(0,1fr)}
.academy-app #academy>p[role=status],.academy-app #content>p[role=status]{display:grid;place-items:center;min-height:180px;margin:0;font-size:0;color:transparent}
.academy-app #academy>p[role=status]{min-height:100dvh}
.academy-app #academy>p[role=status]::after,.academy-app #content>p[role=status]::after{content:'';display:block;box-sizing:border-box;width:44px;height:44px;border-radius:50%;border:3px solid #353c44;border-top-color:#ff294d;border-right-color:#e3e7ec;border-bottom-color:#747f8b;animation:academy-loading-spin .85s linear infinite}
@keyframes academy-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.academy-app #academy>p[role=status]::after,.academy-app #content>p[role=status]::after{animation:none}}
@media(min-width:1440px){.academy-app .academy-hero h1{font-size:48px}.academy-app .academy-hero-copy{max-width:690px}}
@media(max-width:1199px){.academy-app .layout{grid-template-columns:200px minmax(0,1fr)}.academy-app .sidebar{padding-inline:12px}.academy-app .academy-wordmark{font-size:28px}.academy-app .topbar{padding-inline:24px}.academy-app .content{padding-inline:24px}.academy-app .academy-hero{margin-inline:-24px;padding:28px 24px}.academy-app .academy-hero-copy{width:85%;max-width:580px}.academy-app .academy-hero h1{font-size:38px}.academy-app .academy-hero-links{display:none}.academy-app .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-app .academy-resume-grid{grid-template-columns:1fr 1fr}.academy-app .academy-preparing{flex-wrap:wrap}.academy-app .academy-preparing>.button{margin-left:0}}
@media(max-width:767px){.academy-app .layout{display:block}.academy-app .sidebar{width:min(290px,88vw);position:fixed;top:0;left:0;height:100dvh;box-shadow:none}.academy-app .sidebar.open{display:flex}.academy-app .academy-drawer-close{display:inline-flex;align-items:center;justify-content:center;width:44px;padding:0}.academy-app .topbar{padding:12px 16px;gap:10px;min-height:72px}.academy-app .mobile-menu{padding:0;width:44px;height:44px}.academy-app .academy-mobile-brand{display:flex}.academy-app .academy-mobile-brand .academy-wordmark{font-size:23px}.academy-app .academy-mobile-brand small{font-size:9px;margin-top:4px}.academy-app .topbar .search{flex-basis:100%;order:3;max-width:none}.academy-app .account{margin-left:auto}.academy-app .academy-account-menu summary>span:not(.academy-avatar-fallback){display:none}.academy-app .academy-account-menu summary>.academy-icon{display:none}.academy-app .academy-signin{padding-inline:12px;font-size:13px}.academy-app .content{padding:0 16px 32px}.academy-app .content:not(:has(.academy-hero)){padding-top:24px}.academy-app .academy-hero{margin:0 -16px 24px;padding:28px 16px;min-height:330px}.academy-app .academy-hero-copy{width:100%;max-width:520px}.academy-app .academy-hero h1{font-size:34px}.academy-app .academy-hero-copy>p:not(.kicker){font-size:14px;max-width:440px}.academy-app .academy-hero-image{object-position:65% center;opacity:.7}.academy-app .academy-hero::before{background:linear-gradient(90deg,#050709f5,#050709b0 65%,#05070955)}.academy-app .academy-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-app .academy-category{min-height:88px}.academy-app .section-head h2{font-size:23px}.academy-app .section-head>a{font-size:12px}.academy-app .section-head{align-items:flex-start}.academy-app .section-head p{font-size:12px}.academy-app .academy-resume-grid{grid-template-columns:1fr}.academy-app .academy-preparing{gap:16px;padding:24px 0}.academy-app .academy-preparing h2{font-size:22px}.academy-app .academy-preparing>.academy-icon{display:none}.academy-app .filters{grid-template-columns:1fr 1fr;padding:12px}}
@media(max-width:430px){.academy-app .catalog-grid{grid-template-columns:1fr}.academy-app .academy-hero h1{font-size:30px}.academy-app .academy-hero .actions{display:grid;grid-template-columns:1fr}.academy-app .academy-hero .actions>*{width:100%;justify-content:center}.academy-app .academy-hero{min-height:360px}.academy-app .section-head{flex-wrap:wrap}.academy-app .section-head>a{min-height:32px}.academy-app .filters{grid-template-columns:1fr}.academy-app .academy-preparing>.button{width:100%}}
@media(prefers-reduced-motion:no-preference){.academy-app .academy-card{transition:transform .16s,border-color .16s}.academy-app .academy-card:hover{transform:translateY(-2px)}.academy-app .academy-category>img:not(.academy-icon){transition:transform .2s}.academy-app .academy-category:hover>img:not(.academy-icon){transform:scale(1.04)}}
