/* ═══ TG Academy UI · the redesign of academia.tg.tours ════════════════════════════════════
   From the «Platform Redesign Board» (https://claude.ai/artifact/SYqs2gBkumGgb4QdQ9Lyah).
   Team pick, 9 Oct 2026: the WARM colours everywhere (frame N0: the brand book's sunset),
   except «Все курсы», which stays PURPLE (frames A1/A2). Everything is scoped under body.tgui,
   so switching the plugin off (Tools → TG Academy UI) brings the old look back at once.
   ══════════════════════════════════════════════════════════════════════════════════════════ */

body.tgui{
  --tg-page:#FEF0E7; --tg-card:#FFFFFF; --tg-ink:#3A1E2F; --tg-ink2:#6E4B55; --tg-quiet:#7E5F67;
  --tg-plum:#4E213E; --tg-brand:#4C1F3C; --tg-amber:#F0B760; --tg-amber-h:#E9A94E; --tg-amber-ink:#8A5A2B;
  --tg-coral:#DD5A5F; --tg-coral-d:#C2454B; --tg-soft:#F1D087; --tg-here:#F7E2AE; --tg-edge:#A8826F;
  --tg-line:rgba(120,64,48,.14); --tg-line2:rgba(120,64,48,.24); --tg-green:#2E7D4F; --tg-green-bg:#E6F2EA;
  --tg-sun:linear-gradient(90deg,#8D6496,#E3878A 52%,#F3C27B);
  --tg-r:16px; --tg-r-s:12px;
  --tg-serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --tg-sans:Raleway,'Segoe UI',-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;
  /* Tutor's own variables: links and outlines in plum ink, borders warm */
  --tutor-color-primary:#4E213E; --tutor-color-primary-rgb:78,33,62;
  --tutor-color-primary-hover:#3A1E2F; --tutor-color-primary-hover-rgb:58,30,47;
  --tutor-body-color:#3A1E2F; --tutor-body-color-rgb:58,30,47;
  --tutor-border-color:#E8D6CA; --tutor-border-color-rgb:232,214,202;
  --tutor-color-gray:#F3E4D9; --tutor-color-gray-rgb:243,228,217;
  background:var(--tg-page)!important; color:var(--tg-ink); font-family:var(--tg-sans);
  font-variant-numeric:lining-nums;
}
body.tgui,body.tgui button,body.tgui input,body.tgui select,body.tgui textarea,
body.tgui .tutor-wrap,body.tgui [class*="tutor-fs-"],body.tgui .tutor-btn{font-family:var(--tg-sans)}
body.tgui h1,body.tgui h2,body.tgui h3,body.tgui .tutor-fs-3,body.tgui .tutor-fs-4,body.tgui .tutor-course-name,
body.tgui .tutor-dashboard-content > .tutor-fs-5{font-family:var(--tg-serif);font-weight:500;letter-spacing:-.005em;color:var(--tg-ink)}
body.tgui #page,body.tgui .site-content,body.tgui .tutor-wrap,body.tgui .tutor-course-single-content-wrapper{background:transparent}
body.tgui a{color:var(--tg-plum)}
body.tgui a:hover{color:var(--tg-ink)}
body.tgui :focus-visible{outline:3px solid var(--tg-coral)!important;outline-offset:2px}
body.tgui ::selection{background:var(--tg-soft);color:var(--tg-ink)}

/* ── the site header: white, a thin sunset strip on top (like the e-mails) ───────────────── */
body.tgui header.header-default{background:linear-gradient(90deg,#8D6496,#E3878A 52%,#F3C27B) top/100% 4px no-repeat,#FFFFFF!important;
  border-bottom:1px solid var(--tg-line);box-shadow:none}
body.tgui header.header-default .navbar{min-height:72px}
body.tgui header.header-default .navbar-nav > li > a{font:600 16px/1.2 var(--tg-sans);color:var(--tg-plum)!important;padding:10px 16px;border-radius:12px}
body.tgui header.header-default .navbar-nav > li.current-menu-item > a{background:var(--tg-here);box-shadow:inset 0 -3px 0 var(--tg-amber);color:var(--tg-ink)!important}
/* as A1 draws the header: the menu and nothing else (no search box, no shop cart); students have their
   places in the menu itself, so the avatar's copy of them goes */
body.tgui header.header-default .search-field,body.tgui .tutorstarter-cart-placeholder{display:none!important}
body.tgui.tgui-student .tutor-header-profile-menu-items{display:none!important}
@media (min-width:992px){
  body.tgui header.header-default .navbar-nav > .menu-item{margin-right:6px!important}
  body.tgui header.header-default .navbar-nav > .menu-item > a::after{display:none!important}
}
/* phones and tablets (the theme folds the menu below 992 px): a «Меню» button with the word, as A2 draws it,
   44 px tall; the open menu in big rows, plum words (the theme's navy is not in the brand book) */
@media (max-width:991px){
  body.tgui header.header-default .navbar-toggler{display:inline-flex!important;align-items:center;gap:10px;min-height:44px;padding:0 14px!important;
    border-radius:10px;background:rgba(255,255,255,.6)!important;box-shadow:inset 0 0 0 1.5px var(--tg-line2)}
  body.tgui header.header-default .navbar-toggler::after{content:"Меню";font:600 16px/1 var(--tg-sans);color:var(--tg-ink)}
  body.tgui header.header-default .navbar-toggler .toggle-icon{width:22px;height:20px}
  body.tgui header.header-default .navbar-toggler .toggle-icon span,
  body.tgui header.header-default .navbar-toggler .toggle-icon span::before,
  body.tgui header.header-default .navbar-toggler .toggle-icon span::after{width:22px;height:2.5px;background:var(--tg-plum)!important}
  body.tgui.tgui-student header.header-default .navbar-toggler{margin-left:auto}
  body.tgui header.header-default .navbar-nav .menu-item a{min-height:50px;margin:4px 0!important;padding:0 14px!important;border-radius:12px;
    font:600 18px/1.2 var(--tg-sans)!important;color:var(--tg-plum)!important}
  body.tgui header.header-default .navbar-nav .current-menu-item > a{background:var(--tg-here)!important;box-shadow:inset 0 -3px 0 var(--tg-amber)!important;color:var(--tg-ink)!important}
}
body.tgui .tutor-header-submenu{border-radius:var(--tg-r-s);border:1px solid var(--tg-line);box-shadow:0 18px 40px rgba(120,64,48,.14)}
body.tgui .tutor-header-submenu a{color:var(--tg-plum)!important;font:600 15px/1.3 var(--tg-sans)}
body.tgui .tutor-avatar{background:var(--tg-plum);color:#fff}

/* ── the course page: no «Закладки» / «Поделиться» (founder 12 Oct: «useless … just removed»; D10 dropped bookmarks) ── */
body.tgui .tutor-course-details-actions,body.tgui .tutor-course-wishlist-btn,body.tgui .tutor-course-share-btn{display:none!important}

/* ── the footer ──────────────────────────────────────────────────────────────────────────── */
body.tgui footer,body.tgui .site-footer{background:#FFFFFF!important;color:var(--tg-ink2);border-top:1px solid var(--tg-line)}
body.tgui footer a{color:var(--tg-plum)!important}

/* ── buttons: the MAIN one amber with plum text; the second one a plum outline ──────────── */
body.tgui .tgui-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 24px;border-radius:14px;
  font:600 17px/1.2 var(--tg-sans);text-decoration:none;box-sizing:border-box;width:100%;border:0;cursor:pointer;
  transition:background-color .2s,box-shadow .2s,transform .12s cubic-bezier(.16,1,.3,1)}
body.tgui .tgui-btn:active{transform:scale(.98)}
body.tgui .tgui-btn--main{background:var(--tg-amber);color:var(--tg-ink)!important}
body.tgui .tgui-btn--main:hover{background:var(--tg-amber-h);color:var(--tg-ink)!important}
body.tgui .tgui-btn--soft{background:transparent;color:var(--tg-plum)!important;box-shadow:inset 0 0 0 2px var(--tg-plum)}
body.tgui .tgui-btn--soft:hover{background:rgba(255,255,255,.6);color:var(--tg-ink)!important}
body.tgui .tutor-btn{border-radius:12px;font-weight:600}
body.tgui .tutor-btn-primary{background:var(--tg-amber)!important;border-color:var(--tg-amber)!important;color:var(--tg-ink)!important}
body.tgui .tutor-btn-primary:hover{background:var(--tg-amber-h)!important;border-color:var(--tg-amber-h)!important;color:var(--tg-ink)!important}
body.tgui .tutor-btn-outline-primary{background:transparent!important;border:2px solid var(--tg-plum)!important;color:var(--tg-plum)!important}
body.tgui .tutor-btn-outline-primary:hover{background:rgba(78,33,62,.06)!important;color:var(--tg-ink)!important}
body.tgui .tutor-btn-secondary{background:#FFFFFF!important;border:1px solid var(--tg-line2)!important;color:var(--tg-plum)!important}

/* ── fields: edges you can see (field edge #A8826F, 3.4 : 1), coral when focused ─────────── */
body.tgui .tutor-form-control,body.tgui input[type=text],body.tgui input[type=email],body.tgui input[type=tel],
body.tgui input[type=password],body.tgui input[type=url],body.tgui select,body.tgui textarea{
  border:1.5px solid var(--tg-edge)!important;border-radius:12px!important;background:#FFFFFF;color:var(--tg-ink);min-height:50px;font-size:17px}
body.tgui textarea{min-height:140px}
body.tgui .tutor-form-control:focus,body.tgui input:focus,body.tgui select:focus,body.tgui textarea:focus{
  border-color:var(--tg-coral)!important;box-shadow:0 0 0 3px rgba(221,90,95,.18)!important;outline:none}
body.tgui .tutor-form-label,body.tgui label{color:var(--tg-ink);font-weight:600}

/* ══ «ВСЕ КУРСЫ»: PURPLE (team pick: «keep it purple») ════════════════════════════════════ */
body.tgui.tgui-catalogue{background:#EEE5F4!important;color:#2A1428}
body.tgui.tgui-catalogue header.header-default{background:#EEE5F4!important;border-bottom:1px solid rgba(78,33,62,.14)}
body.tgui.tgui-catalogue header.header-default .navbar-nav > li.current-menu-item > a{background:rgba(255,255,255,.6);box-shadow:none;color:#2A1428!important}
body.tgui.tgui-catalogue footer,body.tgui.tgui-catalogue .site-footer{background:#EEE5F4!important}
.tgui-cat{max-width:1240px;margin:0 auto;padding:44px 32px 72px;display:flex;flex-direction:column;gap:30px;box-sizing:border-box}
.tgui-cat__head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.tgui-cat__h{margin:0;font:500 46px/1.1 var(--tg-serif);color:#2A1428}
body.tgui .tgui-cat .tgui-btn--main{background:#4E213E;color:#FFFFFF!important}
body.tgui .tgui-cat .tgui-btn--main:hover{background:#3A1730;color:#FFFFFF!important}
body.tgui .tgui-cat .tgui-btn--soft{box-shadow:inset 0 0 0 2px #4E213E;color:#4E213E!important}
.tgui-cat__go{width:auto!important;min-height:58px!important;padding:0 30px!important;font-size:18px!important}
.tgui-cat__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:40px 36px;align-items:start}
.tgui-book{display:flex;flex-direction:column;gap:12px;min-width:0}
.tgui-book__top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px;flex-wrap:wrap}
.tgui-book__step{font:700 13px/1.2 var(--tg-sans);letter-spacing:.12em;text-transform:uppercase;color:#8A5A2B}
.tgui-book__next{font:700 14px/1.2 var(--tg-sans);color:#7A4B12}
.tgui-book__h{margin:0;font:500 26px/1.2 var(--tg-serif);color:#2A1428}
.tgui-book__facts{margin:0;font-size:17px;line-height:1.5;color:#4A3647}
.tgui-book__prog{display:flex;flex-direction:column;gap:8px}
.tgui-bar{height:8px;border-radius:999px;background:rgba(78,33,62,.12);overflow:hidden}
.tgui-bar span{display:block;height:8px;border-radius:999px;background:#C9973F}
.tgui-book__progt{font-size:15px;font-weight:600;color:#4E213E}
.tgui-book__note{margin:0;font-size:15px;line-height:1.45;color:#5D4A5B;text-align:center}

/* the book: a real hardcover in CSS 3D (board A1), opening on hover; on phones a soft peek, open on a tap (A2) */
.bk{--w:340px;--d:30px;--b:3px;--s:3px;--edge:#5A3560;--h:calc(var(--w) * .5623);position:relative;display:block;width:var(--w);max-width:100%;margin:0 auto;padding:26px 0 70px;perspective:1600px;perspective-origin:50% 38%;text-decoration:none;color:inherit;border-radius:12px;-webkit-tap-highlight-color:transparent}
.bk:focus-visible{outline:3px solid #C9973F!important;outline-offset:8px}
.bk__box{position:relative;display:block;width:var(--w);height:var(--h);transform-style:preserve-3d;transform:rotateX(-21deg) rotateY(25deg) rotateZ(-2deg);transition:transform .75s cubic-bezier(.16,1,.3,1)}
.bk:hover .bk__box,.bk:focus-visible .bk__box,.bk.is-open .bk__box{transform:translateX(calc(var(--w) * .3)) translateY(-4px) rotateX(-14deg) rotateY(-9deg) rotateZ(0deg) scale(.6)}
.bk__f{position:absolute;left:0;top:0;display:block;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.bk__f *{-webkit-backface-visibility:hidden;backface-visibility:hidden}
.bk__back{width:var(--w);height:var(--h);transform:rotateY(180deg) translateZ(calc(var(--d) / 2));border-radius:6px 3px 3px 6px;background:#3A1A36 url(img/tex-paper-plum.webp) 0 0/256px 256px}
.bk__backin{width:var(--w);height:var(--h);transform:translateZ(calc(var(--d) / -2 + var(--b)));border-radius:3px 6px 6px 3px;background:#4C1F3C url(img/tex-paper-plum.webp) 0 0/256px 256px}
.bk__be{background:#3A1A36 url(img/tex-paper-plum.webp) 0 0/256px 256px}
.bk__be--t{width:var(--w);height:var(--b);top:calc(var(--b) / -2);transform:translateZ(calc(var(--d) / -2 + var(--b) / 2)) rotateX(90deg)}
.bk__be--r{width:var(--b);height:var(--h);left:calc(var(--w) - var(--b) / 2);transform:translateZ(calc(var(--d) / -2 + var(--b) / 2)) rotateY(90deg)}
.bk__be--b{width:var(--w);height:var(--b);top:calc(var(--h) - var(--b) / 2);transform:translateZ(calc(var(--d) / -2 + var(--b) / 2)) rotateX(-90deg);filter:brightness(.8)}
.bk__spine{width:var(--d);height:var(--h);left:calc(var(--d) / -2);transform:rotateY(-90deg);border-radius:4px;overflow:hidden;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(255,255,255,.10) 28%,rgba(255,255,255,0) 55%,rgba(0,0,0,.36)),repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,rgba(0,0,0,.05) 1px 2px),#4C1F3C url(img/tex-paper-plum.webp) 0 0/256px 256px}
.bk__spine::before,.bk__spine::after{content:"";position:absolute;left:4px;right:4px;height:2px;background:linear-gradient(90deg,rgba(232,199,126,0),#E8C77E,rgba(232,199,126,0))}
.bk__spine::before{top:12px}.bk__spine::after{bottom:12px}
.bk__spine span{display:block;white-space:nowrap;transform:rotate(-90deg);font:700 11px/1 var(--tg-sans);letter-spacing:.24em;text-transform:uppercase;color:#F1D087;text-shadow:0 1px 0 rgba(0,0,0,.5)}
.bk__pages--t,.bk__pages--b{left:2px;width:calc(var(--w) - var(--s) - 2px);height:calc(var(--d) - var(--b) * 2)}
.bk__pages--t{top:calc(var(--s) - var(--d) / 2 + var(--b));transform:rotateX(90deg);background:linear-gradient(0deg,rgba(90,55,25,.30),rgba(90,55,25,0) 24%,rgba(90,55,25,0) 76%,rgba(90,55,25,.30)),repeating-linear-gradient(0deg,rgba(150,115,75,.22) 0 1px,rgba(255,255,255,0) 1px 2.6px),#F8F0E3}
.bk__pages--b{top:calc(var(--h) - var(--s) - var(--d) / 2 + var(--b));transform:rotateX(-90deg);background:linear-gradient(0deg,rgba(90,55,25,.36),rgba(90,55,25,.08) 24%,rgba(90,55,25,.08) 76%,rgba(90,55,25,.36)),repeating-linear-gradient(0deg,rgba(150,115,75,.22) 0 1px,rgba(255,255,255,0) 1px 2.6px),#EDE2D1}
.bk__pages--r{width:calc(var(--d) - var(--b) * 2);height:calc(var(--h) - var(--s) * 2);top:var(--s);left:calc(var(--w) - var(--s) - var(--d) / 2 + var(--b));transform:rotateY(90deg);background:linear-gradient(90deg,rgba(90,55,25,.30),rgba(90,55,25,0) 24%,rgba(90,55,25,0) 76%,rgba(90,55,25,.30)),repeating-linear-gradient(90deg,rgba(150,115,75,.22) 0 1px,rgba(255,255,255,0) 1px 2.6px),#F3EADB}
.bk__hb{position:absolute;left:0;top:0;bottom:0;width:5px;background:repeating-linear-gradient(0deg,#E8C77E 0 1.5px,#5B2748 1.5px 3px);box-shadow:1px 0 1px rgba(60,20,40,.35)}
.bk__gutter{left:0;top:var(--s);width:3px;height:calc(var(--h) - var(--s) * 2);transform:translateZ(calc(var(--d) / 2 - var(--b) - 1px));background:linear-gradient(90deg,#24091F,#4C1F3C)}
.bk__inside{left:2px;top:var(--s);width:calc(var(--w) - var(--s) - 2px);height:calc(var(--h) - var(--s) * 2);transform:translateZ(calc(var(--d) / 2 - var(--b) - .5px));border-radius:1px 2px 2px 1px;background:#FBF4EA url(img/tex-paper-ivory.webp) 0 0/512px 512px;box-shadow:inset 22px 0 24px -16px rgba(60,25,10,.4),inset -1px 0 0 rgba(120,80,40,.15)}
.bk__stack{position:absolute;top:2px;bottom:2px;right:1px;width:3px;border-radius:0 2px 2px 0;background:repeating-linear-gradient(90deg,#E2D0B6 0 1px,#FFF8EE 1px 2px);box-shadow:1px 0 1px rgba(0,0,0,.10)}
.bk__pg{position:absolute;top:11%;bottom:11%;left:15%;right:11%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;border:1px solid rgba(176,128,52,.55);outline:1px solid rgba(176,128,52,.28);outline-offset:3px}
.bk__pg-top{font:700 10px/1.2 var(--tg-sans);letter-spacing:.22em;text-transform:uppercase;color:#8A5A2B}
.bk__orn{position:relative;display:block;width:78px;height:8px}
.bk__orn::before{content:"";position:absolute;left:0;right:0;top:3.5px;height:1px;background:linear-gradient(90deg,rgba(176,128,52,0),#B08034 45%,rgba(176,128,52,0) 45%,rgba(176,128,52,0) 55%,#B08034 55%,rgba(176,128,52,0))}
.bk__orn::after{content:"";position:absolute;left:35px;top:0;width:7px;height:7px;transform:rotate(45deg);background:#C9973F}
.bk__in1{font:italic 600 36px/1.05 var(--tg-serif);color:#4C1F3C;letter-spacing:.01em}
.bk__pg-bot{font:600 9px/1.2 var(--tg-sans);letter-spacing:.26em;text-transform:uppercase;color:#9A7A55}
.bk__cover{position:absolute;left:0;top:0;display:block;width:var(--w);height:var(--h);transform-style:preserve-3d;transform-origin:0 50%;transform:translateZ(calc(var(--d) / 2));transition:transform .9s cubic-bezier(.55,.05,.2,1)}
.bk:hover .bk__cover,.bk:focus-visible .bk__cover,.bk.is-open .bk__cover{transform:translateZ(calc(var(--d) / 2)) rotateY(-178deg)}
.bk__front{width:100%;height:100%;border-radius:3px 6px 6px 3px;overflow:hidden;background:#3D213D;box-shadow:inset 0 0 0 1px rgba(255,236,210,.2)}
.bk__front img{display:block;width:100%;height:100%;object-fit:cover;max-width:none}
.bk__front::before{content:"";position:absolute;z-index:2;left:3.2%;top:0;bottom:0;width:7px;background:linear-gradient(90deg,rgba(0,0,0,.28),rgba(255,240,220,.22) 45%,rgba(0,0,0,.12))}
.bk__glare{position:absolute;inset:0;z-index:3;background:linear-gradient(112deg,rgba(255,255,255,0) 18%,rgba(255,250,240,.22) 38%,rgba(255,255,255,0) 56%),linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,0) 30%,rgba(40,10,30,.18))}
.bk__coverback{width:100%;height:100%;transform:rotateY(180deg) translateZ(var(--b));border-radius:6px 3px 3px 6px;background:#4C1F3C url(img/tex-paper-plum.webp) 0 0/256px 256px}
.bk__coverback::before,.bk__coverback::after{content:"";position:absolute;pointer-events:none;border:1px solid rgba(232,199,126,.55);border-radius:3px}
.bk__coverback::before{inset:9px}.bk__coverback::after{inset:13px;border-color:rgba(232,199,126,.28)}
.bk__fe{background:var(--edge)}
.bk__fe--t{width:var(--w);height:var(--b);top:calc(var(--b) / -2);transform:translateZ(calc(var(--b) / -2)) rotateX(90deg);filter:brightness(1.12)}
.bk__fe--r{width:var(--b);height:var(--h);left:calc(var(--w) - var(--b) / 2);transform:translateZ(calc(var(--b) / -2)) rotateY(90deg);filter:brightness(.85)}
.bk__fe--b{width:var(--w);height:var(--b);top:calc(var(--h) - var(--b) / 2);transform:translateZ(calc(var(--b) / -2)) rotateX(-90deg);filter:brightness(.7)}
.bk__seal{position:absolute;z-index:4;right:5%;bottom:8%;width:74px;height:74px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transform:rotate(-11deg);text-align:center;color:#371536;background:#F0B760 url(img/tex-paper-gold.webp) 0 0/256px 256px;box-shadow:inset 0 0 0 3px rgba(255,248,230,.45),inset 0 0 0 5px rgba(150,95,20,.35),inset 0 -6px 10px rgba(120,70,10,.28),0 6px 14px rgba(26,6,24,.45)}
.bk__seal b{font:italic 600 15px/1 var(--tg-serif)}
.bk__seal i{font:700 8px/1 var(--tg-sans);letter-spacing:.14em;text-transform:uppercase;font-style:normal}
.bk__ribbon{position:absolute;left:74%;top:calc(var(--h) - var(--s) - 8px);width:14px;height:54px;transform-origin:50% 0;transform:translateZ(1px);background:linear-gradient(90deg,#A86F1C,#F1D087 38%,#FFF1CC 52%,#D9A04A 70%,#9A630F);clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);animation:bkSway 5.2s cubic-bezier(.37,0,.63,1) infinite}
@keyframes bkSway{0%,100%{transform:translateZ(1px) rotate(2.5deg)}50%{transform:translateZ(1px) rotate(-3deg)}}
.bk__shadow{position:absolute;left:12%;right:4%;bottom:36px;height:40px;border-radius:50%;pointer-events:none;background:radial-gradient(closest-side,rgba(42,10,36,.42),rgba(42,10,36,0));filter:blur(7px);transition:transform .75s cubic-bezier(.16,1,.3,1)}
.bk:hover .bk__shadow,.bk.is-open .bk__shadow{transform:scale(.8)}
/* phones (A2): no hover there, so the cover lifts a little once every 9 s, one book after another, and the
   book opens fully only on a tap on it or on its button (founder, 8 Oct: «flash them a bit … but dont open
   fully, untill clicked the button or on it») */
@media (hover:none){
  .bk__cover{animation:tguiPeek 9s cubic-bezier(.45,0,.25,1) infinite;animation-delay:var(--delay,0s)}
  .bk.is-open .bk__cover{animation:none}
  .bk.is-open .bk__box{transform:translateX(calc(var(--w) * .3)) translateY(-4px) rotateX(-14deg) rotateY(-9deg) rotateZ(0deg) scale(.58)}
}
@keyframes tguiPeek{0%{transform:translateZ(calc(var(--d) / 2)) rotateY(0deg)}15%{transform:translateZ(calc(var(--d) / 2)) rotateY(-15deg)}32%,100%{transform:translateZ(calc(var(--d) / 2)) rotateY(0deg)}}

/* ══ WELCOME (shown once after sign-up) ════════════════════════════════════════════════ */
.tgui-welcome{display:flex;justify-content:center;padding:56px 24px 80px}
.tgui-welcome__in{width:100%;max-width:980px;display:flex;gap:56px;align-items:center;flex-wrap:wrap}
.tgui-welcome__txt{flex:1 1 400px;min-width:0;display:flex;flex-direction:column;gap:22px}
.tgui-welcome__h{margin:0;font:500 46px/1.1 var(--tg-serif);color:var(--tg-ink)}
.tgui-welcome__lead{margin:0;font-size:20px;line-height:1.55;color:var(--tg-ink2)}
.tgui-welcome__list{list-style:none;margin:0;padding:4px 0 0;display:flex;flex-direction:column;gap:14px}
.tgui-welcome__list li{display:flex;gap:14px;align-items:baseline;font-size:18px;line-height:1.5;color:var(--tg-ink)}
.tgui-welcome__list span{flex:0 0 auto;font:500 24px/1 var(--tg-serif);color:var(--tg-amber-ink)}
.tgui-welcome__act{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding-top:6px}
body.tgui .tgui-welcome__act .tgui-btn{width:auto;min-height:58px;padding:0 28px;font-size:18px}
.tgui-welcome__all{display:inline-flex;align-items:center;min-height:48px;font-size:17px;font-weight:600}
.tgui-welcome__pic{flex:0 1 420px;min-width:0}
.tgui-welcome__pic img{display:block;width:100%;height:auto;aspect-ratio:1100/619;object-fit:cover;border-radius:4px 8px 8px 4px;box-shadow:0 22px 40px rgba(42,10,36,.28);transform:rotate(-2deg)}

/* ══ THE STUDENT'S ROOM (dashboard): calm, the 4-item menu, «you are here» in soft gold ══════ */
body.tgui .tutor-dashboard{padding-top:32px}
body.tgui.tgui-student .tutor-frontend-dashboard-header.tutor-row{display:none!important}
body.tgui.tgui-student .tutor-dashboard-left-menu{padding-top:4px}
body.tgui .tutor-dashboard-permalinks{background:transparent;border:0;padding:0}
body.tgui .tutor-dashboard-permalinks .tutor-dashboard-menu-item a{display:flex;align-items:center;min-height:54px;padding:0 18px!important;border-radius:14px;
  font:500 18px/1.2 var(--tg-sans)!important;color:var(--tg-plum)!important;background:transparent}
body.tgui .tutor-dashboard-permalinks .tutor-dashboard-menu-item a:hover{background:rgba(255,255,255,.7)}
body.tgui .tutor-dashboard-permalinks .tutor-dashboard-menu-item.active a{background:var(--tg-here)!important;box-shadow:inset 0 -3px 0 var(--tg-amber);font-weight:700!important;color:var(--tg-ink)!important}
body.tgui .tutor-dashboard-permalinks .tutor-dashboard-menu-item-icon{color:inherit!important;font-size:20px}
body.tgui .tutor-dashboard-menu-divider{display:none}
/* N-D1: «Календарь» says what it is for */
body.tgui .tutor-dashboard-menu-calendar a{justify-content:flex-start;gap:10px}
body.tgui .tutor-dashboard-menu-calendar a::after{content:"живые встречи";margin-left:auto;font:600 14px/1.2 var(--tg-sans);color:#7A4B12}
body.tgui .tutor-dashboard-content{background:#FFFFFF;border-radius:var(--tg-r);box-shadow:0 2px 4px rgba(120,64,48,.05),0 16px 40px rgba(120,64,48,.08);padding:32px}
body.tgui .tutor-dashboard-content > .tutor-fs-5{font-size:32px!important;margin-bottom:22px!important}
body.tgui .tutor-card{border-radius:var(--tg-r);border:1px solid var(--tg-line);box-shadow:none}
body.tgui .tutor-nav-link.is-active,body.tgui .tutor-nav-tabs .is-active{color:var(--tg-ink)!important;border-color:var(--tg-amber)!important}
body.tgui #tutor-dashboard-footer-mobile{background:#FFFFFF;border-top:1px solid var(--tg-line)}
body.tgui #tutor-dashboard-footer-mobile a{color:var(--tg-plum)!important}
body.tgui #tutor-dashboard-footer-mobile a.active{color:var(--tg-ink)!important;background:var(--tg-here)}

/* ══ THE COURSE PLAYER (B1 lesson, B2 homework): the contents column on the cream page, the lesson
   in one white sheet; where she is, what is done and what is next, in words ═══════════════════ */
body.tgui.tgui-player{background:var(--tg-page)!important}
body.tgui.tgui-player .tutor-course-single-content-wrapper{background:var(--tg-page)}
/* the top bar: phones and tablets only; on a computer the contents column carries it (B1) */
body.tgui .tutor-course-topic-single-header{background:linear-gradient(90deg,#8D6496,#E3878A 52%,#F3C27B) top/100% 4px no-repeat,#FFFFFF!important;
  border-bottom:1px solid var(--tg-line);min-height:64px;padding:8px 16px!important;gap:10px}
body.tgui .tutor-course-topic-single-header-title{font:500 19px/1.25 var(--tg-serif)!important;color:var(--tg-ink)!important}
body.tgui .tutor-course-topic-single-header .tutor-iconic-btn.tutor-d-xl-none{display:none!important}
body.tgui .academy-core-mobile-sidebar-toggle{min-height:44px;border-radius:12px!important;font-weight:600!important}
@media (min-width:1200px){
  body.tgui.tgui-player .tutor-course-topic-single-header{display:none!important}
}
.tgui-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border-radius:12px;font:600 16px/1 var(--tg-sans);color:var(--tg-plum)!important;text-decoration:none;white-space:nowrap}
.tgui-back:hover{background:rgba(78,33,62,.06)}
.tgui-aplus{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:44px;padding:0 12px;border-radius:12px;border:1.5px solid var(--tg-line2);
  background:#FFFFFF;font:700 16px/1 var(--tg-sans);color:var(--tg-plum);cursor:pointer;flex:0 0 auto}
.tgui-aplus[aria-pressed="true"]{background:var(--tg-here);border-color:var(--tg-amber);color:var(--tg-ink)}

/* the contents column (B1) */
body.tgui .tutor-course-single-sidebar-wrapper{background:var(--tg-page)!important;border-right:1px solid var(--tg-line)}
.tgui-side-head{display:flex;flex-direction:column;gap:10px;padding:18px 18px 16px;border-bottom:1px solid var(--tg-line2)}
.tgui-side-head .tgui-back{align-self:flex-start;margin-left:-12px}
.tgui-side-head__t{font:500 26px/1.2 var(--tg-serif);color:var(--tg-ink)}
.tgui-side-head .tgui-bar{height:8px;background:rgba(120,64,48,.12)}
.tgui-side-head .tgui-bar span{height:8px;background:linear-gradient(90deg,#E3878A,#F0B760)}
.tgui-side-head__p{font-size:15px;line-height:1.45;color:var(--tg-ink2)}
.tgui-side-head__p b{font-weight:700;color:var(--tg-ink)}
body.tgui .tutor-course-single-sidebar-title{background:transparent;border-bottom:0;padding:10px 18px!important}
body.tgui .tutor-course-single-sidebar-title > span:first-child{font:700 13px/1.2 var(--tg-sans)!important;letter-spacing:.12em;text-transform:uppercase;color:var(--tg-amber-ink)!important}
@media (min-width:1200px){ body.tgui .tutor-course-single-sidebar-title{display:none!important} }
body.tgui .tutor-course-topic{border-bottom:0;padding:2px 8px}
body.tgui .tutor-accordion-item-header{padding:12px 10px!important;background:transparent!important;border-radius:12px;cursor:pointer}
body.tgui .tutor-accordion-item-header:hover{background:rgba(255,255,255,.55)!important}
body.tgui .tutor-course-topic-title{display:grid!important;grid-template-columns:32px minmax(0,1fr);column-gap:12px;row-gap:3px;align-items:start;
  font:600 16px/1.35 var(--tg-sans)!important;color:var(--tg-ink)!important}
.tgui-mod-badge{grid-column:1;grid-row:1 / span 2;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.75);
  color:var(--tg-plum);font:700 15px/1 var(--tg-sans)}
.tgui-mod-badge.is-now{background:var(--tg-plum);color:#FFFFFF}
.tgui-mod-badge.is-done{background:var(--tg-green-bg);color:var(--tg-green)}
.tgui-mod-status{grid-column:2;display:block;font:500 14px/1.35 var(--tg-sans);color:var(--tg-ink2)}
.tgui-mod-status.is-done{color:var(--tg-green)}
body.tgui .tutor-course-topic-summary,body.tgui .tutor-course-topic-title-info{display:none!important}
body.tgui .tutor-accordion-item-body{padding:2px 0 8px 44px!important;background:transparent!important}
body.tgui .tutor-course-topic-item a{display:flex;align-items:center;gap:10px;min-height:46px;padding:4px 10px!important;border-radius:10px;color:var(--tg-ink)!important;border:0;
  background:transparent!important}
body.tgui .tutor-course-topic-item a:hover{background:rgba(255,255,255,.55)!important}
body.tgui .tutor-course-topic-item.is-active a{background:#FFFFFF!important;box-shadow:0 2px 8px rgba(120,64,48,.10)}
body.tgui .tutor-course-topic-item a > .tutor-d-flex:first-child{margin-right:8px!important;min-width:0}
body.tgui .tutor-course-topic-item-title{font:500 16px/1.35 var(--tg-sans)!important;color:var(--tg-ink)!important}
body.tgui .tutor-course-topic-item-icon,body.tgui .tutor-course-topic-item-duration{display:none!important}
body.tgui .tutor-course-topic-item .tutor-form-check-input{display:none}
.tgui-state{flex:0 0 auto;margin-left:8px;font:600 13px/1.3 var(--tg-sans);white-space:nowrap}
.tgui-state--done{color:var(--tg-green)}
.tgui-state--now{color:#7A4B12}
.tgui-state--todo{color:#B03A2E}
.tgui-state--lock{color:var(--tg-ink2)}
/* Tutor's «this feature was switched off» line for admins under the list: noise in the student view */
body.tgui .tutor-lesson-sidebar > .tutor-fs-1{display:none!important}

/* the lesson: one white sheet (B1): «Модуль 1 · часть 3 из 5», the name, the video, the buttons, the text */
body.tgui .tutor-course-topic-single-body{width:min(1000px,calc(100% - 48px));max-width:none;margin:24px auto 0;background:#FFFFFF;border-radius:22px 22px 0 0;padding:30px 36px 8px;
  box-sizing:border-box;box-shadow:0 14px 36px rgba(120,64,48,.10)}
/* homework has its own sheet (#tutor-assignment-wrap): no sheet around it */
body.tgui.tgui-homework .tutor-course-topic-single-body{width:auto;margin:0;padding:0;background:transparent;border-radius:0;box-shadow:none}
.tgui-head__p{display:none;font-size:15px;line-height:1.45;color:var(--tg-ink2)}
.tgui-head__p b{color:var(--tg-ink)}
@media (max-width:1199px){ .tgui-head__p{display:block} }
/* Tutor's own phone progress strip («68% Завершено»): the sheet says it in words now */
body.tgui .tutor-spotlight-mobile-progress-complete{display:none!important}
.tgui-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}
.tgui-head__txt{display:flex;flex-direction:column;gap:6px;min-width:0}
.tgui-head__k{font:700 14px/1.3 var(--tg-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--tg-amber-ink)}
.tgui-head__h{margin:0!important;font:500 36px/1.15 var(--tg-serif)!important;color:var(--tg-ink)!important}
body.tgui .tutor-video-player-wrapper{max-width:none;margin:0;padding:0}
body.tgui .tutor-video-player{border-radius:16px;overflow:hidden;box-shadow:none}
/* 19 Oct 2026, founder: «the video is taking 120% of the page». A phone-shaped lesson video (1080×1920) was
   stretched to the sheet's width: 1650 px high on a 776 px screen. No lesson video is taller than 3/4 of the
   screen now; a tall one keeps its shape in the middle of a dark frame, a wide one is unchanged; full screen
   is left alone. Measured live: 928×582, the controls inside. */
body.tgui .tutor-video-player .plyr--video:not(.plyr--fullscreen-active) video{max-height:75vh;max-height:75dvh;object-fit:contain;background:#000}
.tgui-acts{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 4px}
/* 19 Oct 2026: the matrix gift in the first lesson of each course (as on the €15 page: a gold «М», the name, «Скачать») */
.tgui-gift{display:flex;align-items:center;gap:16px;margin:18px 0 6px;padding:16px 18px;border-radius:var(--tg-r);background:#FFF6E6;box-shadow:inset 0 0 0 1.5px var(--tg-soft)}
.tgui-gift__tag{flex:0 0 auto;width:46px;height:46px;border-radius:var(--tg-r-s);display:grid;place-items:center;font:600 23px/1 var(--tg-serif);color:#FFFFFF;background:linear-gradient(145deg,#E9B65B,#B9822A)}
.tgui-gift__txt{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 auto}
.tgui-gift__txt b{font:700 17px/1.3 var(--tg-sans);color:var(--tg-ink)}
.tgui-gift__txt span{font-size:15px;line-height:1.4;color:var(--tg-ink2)}
body.tgui .tgui-gift .tgui-gift__dl{width:auto;min-height:50px;padding:0 26px;flex:0 0 auto}
body.tgui .tgui-acts .tgui-btn{width:auto;min-height:52px;padding:0 22px}
body.tgui .tgui-btn--done{background:var(--tg-green-bg);color:#1E5B35!important;box-shadow:inset 0 0 0 2px var(--tg-green);cursor:default}
body.tgui .tgui-btn:disabled{opacity:.7;cursor:wait}
body.tgui .tutor-course-spotlight-wrapper{max-width:none;margin:0;padding:0}
body.tgui .tutor-course-spotlight-nav{border-bottom:1px solid #F2E0D4;margin-top:18px}
body.tgui .tutor-course-spotlight-nav .tutor-nav-link{font:600 16px/1.2 var(--tg-sans);color:var(--tg-ink2)!important;min-height:48px}
body.tgui .tutor-course-spotlight-nav .tutor-nav-link.is-active{color:var(--tg-ink)!important;box-shadow:inset 0 -3px 0 var(--tg-amber)}
body.tgui .tutor-course-spotlight-tab .tutor-container{padding-left:0;padding-right:0}
body.tgui .tutor-course-spotlight-tab .tutor-col-xl-8{flex:0 0 100%;max-width:100%}
body.tgui .tutor-course-spotlight-wrapper .tutor-tab,body.tgui .tutor-course-spotlight-wrapper .tutor-lesson-wrapper{font-size:18px;line-height:1.7;color:var(--tg-ink)}
body.tgui .tutor-course-spotlight-wrapper p,body.tgui .tutor-course-spotlight-wrapper li{font-size:18px;line-height:1.7;max-width:68ch}
body.tgui .tutor-course-spotlight-wrapper h1,body.tgui .tutor-course-spotlight-wrapper h2{font:500 30px/1.2 var(--tg-serif)}
body.tgui .tutor-course-spotlight-wrapper h3{font:500 24px/1.25 var(--tg-serif)}
html.tgui-big body.tgui .tutor-course-spotlight-wrapper p,html.tgui-big body.tgui .tutor-course-spotlight-wrapper li,
html.tgui-big body.tgui .tutor-course-spotlight-wrapper .tutor-tab{font-size:21px;line-height:1.75}
html.tgui-big body.tgui .tutor-assignment-description-details p,html.tgui-big body.tgui .tutor-assignment-description-details li{font-size:21px;line-height:1.75}
html.tgui-big .tgui-head__h{font-size:40px!important}
/* the lesson's materials (Academy Core's «Материалы модуля» tab) */
body.tgui .academy-core-lesson-files__heading{font:700 19px/1.3 var(--tg-sans);color:var(--tg-ink);margin:8px 0}
body.tgui .tutor-course-spotlight-wrapper a[download],body.tgui .tutor-course-attachment{border-radius:var(--tg-r-s)}
/* the bottom of the sheet: «← Назад: Часть 2» and «Дальше: Часть 4. Теория →» (D6) */
body.tgui .tgui-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(1000px,calc(100% - 48px));max-width:none;height:auto!important;min-height:0!important;
  margin:0 auto 32px!important;padding:16px 36px 28px!important;box-sizing:border-box;background:#FFFFFF!important;border-top:1px solid #F2E0D4;border-radius:0 0 22px 22px;
  box-shadow:0 14px 36px rgba(120,64,48,.10)}
body.tgui .tgui-footer > div{display:flex!important;align-items:center;flex:1 1 0;min-width:0;height:auto!important;text-align:left}
body.tgui .tgui-footer > .tutor-single-course-content-next{justify-content:flex-end}
body.tgui .tgui-footer .tgui-nav{height:auto!important;padding-top:0!important;padding-bottom:0!important}
.tgui-nav{display:inline-flex;align-items:center;min-height:52px;max-width:460px;padding:0 22px;border-radius:14px;text-decoration:none;border:0;cursor:pointer;
  font:600 17px/1.2 var(--tg-sans);transition:background-color .2s,transform .12s cubic-bezier(.16,1,.3,1)}
.tgui-nav:active{transform:scale(.98)}
.tgui-nav__t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.tgui .tgui-nav--back{background:transparent;color:var(--tg-plum)!important;box-shadow:inset 0 0 0 2px var(--tg-plum)}
body.tgui .tgui-nav--back:hover{background:#FCEEE6}
body.tgui .tgui-nav--next{background:var(--tg-amber);color:var(--tg-ink)!important;margin-left:auto}
body.tgui .tgui-nav--next:hover{background:var(--tg-amber-h)}
body.tgui .tgui-nav.is-loading{opacity:.7;cursor:wait}

/* ══ HOMEWORK (B2): a focused sheet, the whole task, four steps that tick as she goes ═══════ */
.tgui-hwbar{display:none}
@media (min-width:1200px){
  /* one sheet, no contents column; «Содержание курса» opens the list over the page */
  body.tgui.tgui-homework .tutor-course-single-sidebar-wrapper{display:none!important}
  body.tgui.tgui-homework.tgui-side-open .tutor-course-single-sidebar-wrapper{display:block!important;position:fixed;z-index:1000;top:0;bottom:0;left:0;
    width:390px;max-width:92vw;overflow:auto;box-shadow:0 0 0 100vmax rgba(58,30,47,.28),0 20px 50px rgba(58,30,47,.25)}
  body.tgui.tgui-homework #tutor-single-entry-content{width:100%!important;max-width:none!important;flex:1 1 auto}
  .tgui-hwbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:4px max(24px,calc((100% - 1000px) / 2));
    background:linear-gradient(90deg,#8D6496,#E3878A 52%,#F3C27B) top/100% 4px no-repeat;border-bottom:1px solid var(--tg-line)}
}
.tgui-hwbar__mid{font-size:15px;color:var(--tg-ink2);text-align:center}
.tgui-hwbar__open{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:12px;
  font:600 16px/1 var(--tg-sans);color:var(--tg-plum);cursor:pointer}
.tgui-hwbar__open:hover{background:rgba(78,33,62,.06)}
.tgui-hwbar__open:focus-visible{outline:3px solid var(--tg-coral);outline-offset:2px}
body.tgui.tgui-homework .tutor-quiz-wrapper{padding:24px 24px 0!important;margin-top:0!important}
body.tgui #tutor-assignment-wrap{position:relative;width:100%;max-width:860px;margin:0 auto;background:#FFFFFF;border-radius:22px;
  box-shadow:0 14px 36px rgba(120,64,48,.10);padding:34px 40px 36px;box-sizing:border-box}
body.tgui #tutor-assignment-wrap > .tutor-fs-7:first-child{font:700 14px/1.3 var(--tg-sans)!important;letter-spacing:.12em;text-transform:uppercase;color:var(--tg-amber-ink)!important;padding-right:64px}
body.tgui #tutor-assignment-wrap .header-title{font:500 40px/1.12 var(--tg-serif)!important;color:var(--tg-ink)!important;margin:10px 0 10px!important}
body.tgui #tutor-assignment-wrap > .tgui-aplus{position:absolute;top:28px;right:32px}
body.tgui .tutor-assignment-meta-info{display:none!important}
.tgui-hw-meta{margin:0 0 4px;font-size:17px;line-height:1.55;color:var(--tg-ink2)}
body.tgui .tutor-assignment-description-details #content-section{max-height:none!important;padding-top:12px!important}
body.tgui .tutor-assignment-description-details .tutor-btn-show-more{display:none!important}
body.tgui .tutor-toggle-more-collapsed::before,body.tgui .tutor-toggle-more-collapsed::after{display:none!important}
body.tgui .tutor-assignment-description-details > div > .tutor-fs-6.tutor-fw-medium{display:none}
body.tgui .tutor-assignment-description-details .tutor-entry-content{font-size:18px;line-height:1.65;color:var(--tg-ink)!important}
body.tgui .tutor-assignment-description-details li{margin-bottom:4px}
body.tgui .tutor-assignment-border-bottom{border-bottom:0!important;padding-bottom:0!important}
.tgui-step{display:flex;align-items:center;gap:12px;margin:24px 0 12px;padding-top:24px;border-top:1px solid #F2E0D4}
.tgui-step__n{flex:0 0 34px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#FBEAE0;color:var(--tg-plum);font:700 16px/1 var(--tg-sans)}
.tgui-step__t{font:700 22px/1.3 var(--tg-sans);color:var(--tg-ink)}
.tgui-step.is-done .tgui-step__n{background:var(--tg-green-bg);color:var(--tg-green)}
.tgui-step.is-now .tgui-step__n{background:var(--tg-plum);color:#FFFFFF}
body.tgui .tutor-assignment-submission .tutor-to-title,body.tgui .tutor-assignment-submission .tutor-to-title + .tutor-fs-7{display:none}
body.tgui .tutor-assignment-body{padding-top:0!important}
body.tgui .tutor-assignment-text-area{padding-top:0!important}
body.tgui .tutor-assignment-text-area .wp-editor-container{border:2px solid var(--tg-edge)!important;border-radius:16px;overflow:hidden}
/* step 3: one outline button «Прикрепить файл» and the limits beside it (B2) */
body.tgui .tutor-assignment-attachment{margin-top:0!important;padding:0!important;background:transparent!important;border:0!important}
body.tgui .tutor-assignment-attachment > .tutor-fs-7:first-child,body.tgui .tutor-assignment-attachment .tutor-input-type-size{display:none!important}
body.tgui .tutor-attachment-files{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:0!important}
body.tgui .tutor-assignment-upload-btn{margin-top:0!important}
body.tgui .tutor-assignment-upload-btn .tutor-btn{background:transparent!important;border:0!important;box-shadow:inset 0 0 0 2px var(--tg-plum);color:var(--tg-plum)!important;
  display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;white-space:nowrap;min-height:52px;padding:0 22px;border-radius:14px;font:600 17px/1.2 var(--tg-sans)}
body.tgui .tutor-assignment-submission,body.tgui .tutor-assignment-body,body.tgui .tutor-assignment-text-area,body.tgui .tutor-text-editor-wrapper{width:100%;max-width:none!important}
body.tgui .tutor-assignment-upload-btn .tutor-btn:hover{background:#FCEEE6!important}
.tgui-hw-files{margin:0;font-size:16px;line-height:1.45;color:var(--tg-ink2)}
/* step 4 */
body.tgui .tutor-assignment-submit-btn{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:0!important}
body.tgui #tutor_assignment_submit_btn{min-height:58px;padding:0 32px;font-size:18px}
body.tgui #tutor_assignment_submit_btn.tgui-off{background:#F2E0D4!important;border-color:#F2E0D4!important;color:var(--tg-quiet)!important;cursor:not-allowed}
.tgui-hw-hint{margin:0;font-size:16px;line-height:1.5;color:var(--tg-ink2)}
.tgui-hw-hint.is-alert{color:var(--tg-coral-d);font-weight:600}
/* under the sheet: «Дальше: Модуль 2 →» */
body.tgui .tutor-assignment-footer{display:flex!important;justify-content:flex-end;max-width:860px;margin:20px auto 40px;padding:0!important}
body.tgui .tgui-hw-next{width:auto!important;min-height:52px}
body.tgui .tuttor-assignment-skip-button:not(.tgui-hw-next){display:none!important}

/* ══ PHONES (D17, approved 9 Oct, not drawn): one column, big tap targets, the footer in reach ══ */
@media (max-width:760px){
  .tgui-cat{padding:28px 16px 56px;gap:22px}
  .tgui-cat__h{font-size:36px}
  .tgui-cat__go{width:100%!important}
  .tgui-cat__grid{grid-template-columns:minmax(0,1fr);gap:34px}
  .bk{--w:300px;--d:26px}
  .tgui-welcome{padding:32px 16px 56px}
  .tgui-welcome__h{font-size:34px}
  body.tgui .tgui-welcome__act .tgui-btn{width:100%}
  body.tgui .tutor-dashboard-content{padding:22px 18px}
  body.tgui .tutor-dashboard-content > .tutor-fs-5{font-size:26px!important}
  body.tgui .tutor-course-topic-single-header{min-height:58px;padding:6px 10px!important}
  body.tgui .tutor-course-topic-single-header-title{display:none!important}
  body.tgui .tutor-course-topic-single-body{width:100%;margin:0;border-radius:0;padding:20px 16px 4px;box-shadow:none}
  body.tgui.tgui-homework .tutor-course-topic-single-body{padding:0}
  body.tgui .tutor-course-spotlight-nav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}
  body.tgui .tutor-course-spotlight-nav .tutor-nav-item{flex:0 0 auto}
  .tgui-head__h{font-size:28px!important}
  html.tgui-big .tgui-head__h{font-size:31px!important}
  body.tgui .tgui-acts .tgui-btn{width:100%}
  .tgui-gift{flex-wrap:wrap}
  body.tgui .tgui-gift .tgui-gift__dl{width:100%}
  body.tgui .tgui-footer{position:sticky;bottom:0;z-index:20;width:100%;margin:0;border-radius:0;padding:10px 12px!important;gap:10px;box-shadow:0 -8px 20px rgba(120,64,48,.10)}
  .tgui-nav{min-height:52px;padding:0 14px;font-size:15px;max-width:none}
  body.tgui .tgui-nav--back{flex:0 0 auto}
  body.tgui .tgui-nav--back .tgui-nav__t{font-size:0}
  body.tgui .tgui-nav--back .tgui-nav__t::before{content:"← Назад";font-size:15px}
  body.tgui .tgui-nav--next{flex:1 1 auto;justify-content:center}
  body.tgui.tgui-homework .tutor-quiz-wrapper{padding:0}
  body.tgui #tutor-assignment-wrap{padding:24px 16px 28px;border-radius:0;box-shadow:none}
  body.tgui #tutor-assignment-wrap > .tgui-aplus{top:18px;right:14px}
  body.tgui #tutor-assignment-wrap .header-title{font-size:28px!important}
  .tgui-step__t{font-size:20px}
  body.tgui #tutor_assignment_submit_btn{width:100%}
  body.tgui .tutor-assignment-upload-btn,body.tgui .tutor-assignment-upload-btn .tutor-btn{width:100%}
  body.tgui .tutor-assignment-footer{margin:16px 16px 32px}
  body.tgui .tgui-hw-next{width:100%!important}
}

@media (prefers-reduced-motion:reduce){
  .bk__box,.bk__cover,.bk__shadow{transition:none}
  .bk__ribbon,.bk__cover{animation:none!important}
  body.tgui .tgui-btn,.tgui-nav{transition:none}
}
/* phones: nothing wider than the screen (12 Oct scan at 390 px): Tutor's hidden hover hint on module titles
   (masterclass page, +83 px) and the photo-size line on «Профиль и пароль» (+35 px) */
@media (max-width:767px){
  body.tgui .tutor-accordion-item-header .tooltip-txt{display:none!important}
  body.tgui #tutor_photo_meta_area{flex-wrap:wrap;height:auto;max-width:100%;box-sizing:border-box}
  body.tgui #tutor_photo_meta_area span{white-space:normal!important;min-width:0}
}

/* 12 Oct, live check as a visitor: the page colours must not reach the cookie banner (its own dark card:
   the title went plum on plum) or Academy Core's footer (white text on our light page) */
body.tgui #tgConsent .cc__ttl{color:var(--cream)!important;font-family:var(--serif)!important}
body.tgui #tgConsent .cc__txt a{color:var(--gold)!important}
body.tgui #tgConsent .cc__txt a:hover{color:var(--gold-lt)!important}
/* 16 Oct 2026 (bug and leak check): the theme's fonts (Inter, Sora) no longer come from Google's servers
   (includes/guard.php rule 16). The theme's and the cookie banner's font names point to the platform's own
   Raleway; Inter only ever showed in the banner text, Sora nowhere. */
body.tgui{--body-font:var(--tg-sans);--heading-font:var(--tg-sans)}
body.tgui #tgConsent{--sans:var(--tg-sans)}
body.tgui .academy-site-footer .academy-footer-link{color:var(--tg-plum)!important}
body.tgui .academy-site-footer .academy-footer-copy,body.tgui .academy-site-footer .academy-footer-note p{color:var(--tg-ink2)!important}
body.tgui .academy-site-footer .academy-footer-top{border-color:var(--tg-line)!important}

/* ══ N-S1 SHORT SIGN-UP (founder 12 Oct: «Build the sign up»): five fields on the cream page, one amber
   button. Only while the switch «Короткая регистрация» lets this browser see it ═══════════════════ */
body.tgui-signup .entry-header,body.tgui-signup .page-header{display:none!important}
body.tgui-signup .entry-content,body.tgui-signup article{margin:0;padding:0;max-width:none;background:transparent;box-shadow:none;border:0}
.tgui-su{display:flex;justify-content:center;padding:48px 24px 72px;color:var(--tg-ink);font-family:var(--tg-sans)}
.tgui-su__in{width:100%;max-width:520px;display:flex;flex-direction:column;gap:22px}
.tgui-su__head{display:flex;flex-direction:column;gap:8px;text-align:center}
.tgui-su__brand{font:600 20px/1.2 var(--tg-serif);letter-spacing:.04em;color:var(--tg-plum)}
.tgui-su__brand span{font:700 12px/1 var(--tg-sans);letter-spacing:.2em;color:var(--tg-amber-ink)}
body.tgui .tgui-su__h{margin:0;font:500 40px/1.12 var(--tg-serif);color:var(--tg-ink)}
.tgui-su__form{display:flex;flex-direction:column;gap:22px;margin:0}
.tgui-su__two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tgui-su__f{display:flex;flex-direction:column;gap:8px;min-width:0}
.tgui-su__f label{font:600 17px/1.3 var(--tg-sans);color:var(--tg-ink);margin:0}
body.tgui .tgui-su__fld{box-sizing:border-box;width:100%;min-height:56px;margin:0;padding:0 16px;border-radius:14px;border:2px solid var(--tg-edge);
  background:#FFFFFF;font:400 18px/1.3 var(--tg-sans);color:var(--tg-ink);box-shadow:none;outline:none}
body.tgui .tgui-su__fld:focus{border-color:var(--tg-plum);outline:3px solid var(--tg-coral)!important;outline-offset:2px}
body.tgui .tgui-su__fld::placeholder{color:var(--tg-quiet);opacity:1}
body.tgui .tgui-su__fld.is-bad{border-color:var(--tg-coral-d)}
.tgui-su__bad{font:600 15px/1.35 var(--tg-sans);color:#A6363C}
.tgui-su__bad[hidden]{display:none}
.tgui-su__hint{font-size:14px;line-height:1.4;color:var(--tg-ink2)}
.tgui-su__pw{position:relative}
body.tgui .tgui-su__pw .tgui-su__fld{padding-right:120px}
body.tgui .tgui-su__eye{all:unset;box-sizing:border-box;position:absolute;right:8px;top:6px;height:44px;padding:0 12px;border-radius:10px;
  font:600 15px/44px var(--tg-sans);color:var(--tg-plum);cursor:pointer}
body.tgui .tgui-su__eye:hover{background:#FBEAE0}
body.tgui .tgui-su__eye:focus-visible{outline:3px solid var(--tg-coral)!important}
body.tgui .tgui-su__cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;margin:0;padding:0 24px;border:0;border-radius:14px;
  background:var(--tg-amber);color:var(--tg-ink)!important;font:600 18px/1.2 var(--tg-sans);cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:0}
body.tgui .tgui-su__cta:hover{background:var(--tg-amber-h)}
body.tgui .tgui-su__cta:focus-visible{outline:3px solid var(--tg-coral)!important;outline-offset:3px}
body.tgui .tgui-su__cta[aria-busy="true"]{opacity:.75;cursor:progress}
.tgui-su__legal{margin:0;font-size:14px;line-height:1.5;color:var(--tg-ink2);text-align:center}
.tgui-su__login{margin:0;font-size:16px;line-height:1.5;text-align:center;color:var(--tg-ink)}
.tgui-su__login a{font-weight:600}
.tgui-su__err{border-radius:14px;background:#FBE6E2;border:1px solid rgba(194,69,75,.35);padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.tgui-su__err p{margin:0;font:600 16px/1.45 var(--tg-sans);color:#7E2A2F}
.tgui-su__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.tgui-su__off{max-width:520px;margin:48px auto;padding:0 24px;font-size:18px;line-height:1.5}
@media (max-width:560px){
  .tgui-su{padding:28px 16px 56px}
  body.tgui .tgui-su__h{font-size:32px}
  .tgui-su__two{grid-template-columns:1fr}
}

/* ══ N-S3 HER PROFILE (built 12 Oct): photo, fixed details as plain text, «Откуда вы», a few questions,
   the password, one «Сохранить». Inside the dashboard's white sheet ════════════════════════════════ */
.tgui-prof{display:flex;flex-direction:column;gap:26px;max-width:860px;color:var(--tg-ink);font-family:var(--tg-sans)}
body.tgui .tgui-prof__h{margin:0;font:500 40px/1.1 var(--tg-serif);color:var(--tg-ink)}
.tgui-prof__form{display:flex;flex-direction:column;gap:26px;margin:0}
.tgui-prof__photo{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.tgui-prof__ava{flex:0 0 104px;width:104px;height:104px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font:600 34px/1 var(--tg-serif);color:#FFFFFF;background:linear-gradient(135deg,#8D6496,#E3878A 60%,#F3C27B);background-size:cover;background-position:center;
  box-shadow:0 8px 20px rgba(120,64,48,.18)}
.tgui-prof__photobtns{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.tgui-prof__file{position:relative;cursor:pointer;width:auto!important}
.tgui-prof__file input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.tgui-prof__rm{display:flex;align-items:center;gap:8px;min-height:40px;font-size:16px;cursor:pointer}
.tgui-prof__sec{display:flex;flex-direction:column;gap:16px;border-top:1px solid #F2E0D4;padding-top:24px}
body.tgui .tgui-prof__sec h2{margin:0;font:700 20px/1.3 var(--tg-sans);color:var(--tg-ink)}
body.tgui .tgui-prof__sec h2 span{margin-left:10px;font:500 14px/1.3 var(--tg-sans);color:var(--tg-ink2)}
.tgui-prof__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tgui-prof__ro{display:flex;flex-direction:column;gap:4px;min-width:0}
.tgui-prof__ro span{font:500 15px/1.3 var(--tg-sans);color:var(--tg-ink2)}
.tgui-prof__ro b{font:600 18px/1.35 var(--tg-sans);color:var(--tg-ink);overflow-wrap:anywhere}
.tgui-prof__cell{display:flex;flex-direction:column;gap:8px;min-width:0}
.tgui-prof__cell label{font:600 17px/1.3 var(--tg-sans);color:var(--tg-ink);margin:0}
body.tgui .tgui-prof__fld{box-sizing:border-box;width:100%;min-height:54px;margin:0;padding:0 16px;border:2px solid var(--tg-edge);border-radius:14px;
  font:400 18px/1.3 var(--tg-sans);color:var(--tg-ink);background:#FFFFFF;box-shadow:none}
body.tgui .tgui-prof__fld:focus{border-color:var(--tg-plum);outline:3px solid var(--tg-coral)!important;outline-offset:2px}
body.tgui .tgui-prof__fld::placeholder{color:var(--tg-quiet);opacity:1}
.tgui-prof__pw{position:relative}
body.tgui .tgui-prof__pw .tgui-prof__fld{padding-right:116px}
body.tgui .tgui-prof__pw .tgui-su__eye{top:5px}
.tgui-prof__hint{margin:0;font-size:15px;line-height:1.45;color:var(--tg-ink2)}
.tgui-prof__save{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid #F2E0D4;padding-top:24px}
body.tgui .tgui-prof__save .tgui-btn{width:auto;padding:0 32px}
.tgui-prof__msg{font:600 17px/1.3 var(--tg-sans)}
.tgui-prof__msg--ok{color:#2E7D4F}
.tgui-prof__msg--bad{color:#A6363C}
@media (max-width:640px){
  .tgui-prof__grid{grid-template-columns:minmax(0,1fr)}
  body.tgui .tgui-prof__h{font-size:32px}
}

/* 1.8.0 (founder 13 Oct): «Поправить кадр», the read-only login line, the «found by your device» note */
body.tgui .tgui-prof__frame{min-height:44px;padding:0 4px;border:0;background:none;font:600 16px/1.3 var(--tg-sans);
  color:var(--tg-plum);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
body.tgui .tgui-prof__frame:hover{color:var(--tg-coral-d)}
.tgui-prof__ro em{font-style:normal}
body.tgui .tgui-prof__fld[readonly]{background:#F7EFEA;color:var(--tg-ink2);cursor:not-allowed}
.tgui-prof__auto{margin:0;padding:12px 16px;border-radius:12px;background:var(--tg-green-bg);color:var(--tg-green);font:600 15px/1.45 var(--tg-sans)}
/* 1.8.1 «Определить мой город» */
body.tgui .tgui-prof__locate{width:100%;min-height:48px;font-size:16px}
body.tgui .tgui-prof__locate[aria-busy="true"]{opacity:.7;cursor:progress}
.tgui-prof__hint.is-ok{color:var(--tg-green);font-weight:600}
.tgui-prof__hint.is-bad{color:#A6363C;font-weight:600}
/* 1.9.0 «Имя в Академии» across the whole row; the «you are shown as …» note in amber */
.tgui-prof__cell--wide{grid-column:1/-1}
/* the photo buttons stay beside the picture, the longer hint wraps under them (1.9.1) */
.tgui-prof__photobtns{flex:1 1 260px;min-width:0}
.tgui-prof__auto--warm{background:var(--tg-here);color:var(--tg-amber-ink)}

/* the photo framing window: the round frame is what the avatar shows */
html.tgui-crop-on{overflow:hidden}
.tgui-crop{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(40,18,32,.62)}
.tgui-crop[hidden]{display:none}
.tgui-crop__box{box-sizing:border-box;width:100%;max-width:480px;max-height:100%;overflow:auto;display:flex;flex-direction:column;gap:14px;
  padding:22px;border-radius:20px;background:#FFFDF9;box-shadow:0 24px 60px rgba(40,18,32,.35);font-family:var(--tg-sans);color:var(--tg-ink)}
body.tgui .tgui-crop__h{margin:0;font:500 26px/1.2 var(--tg-serif);color:var(--tg-ink)}
.tgui-crop__stage{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:14px;background:#2B1D28;
  touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
.tgui-crop__stage.is-moving{cursor:grabbing}
.tgui-crop__stage:focus-visible{outline:3px solid var(--tg-amber);outline-offset:3px}
.tgui-crop__img{position:absolute;left:0;top:0;max-width:none!important;max-height:none!important;transform-origin:0 0;pointer-events:none}
.tgui-crop__ring{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 999px rgba(40,18,32,.55);border:2px solid rgba(255,255,255,.9);pointer-events:none}
.tgui-crop__hint{margin:0;font-size:16px;line-height:1.45;color:var(--tg-ink2)}
.tgui-crop__zoom{display:flex;align-items:center;gap:12px}
body.tgui .tgui-crop__z{flex:0 0 52px;width:52px;height:52px;border:0;border-radius:50%;background:#F4E6DC;color:var(--tg-plum);
  font:600 28px/1 var(--tg-sans);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
body.tgui .tgui-crop__z:hover{background:var(--tg-here)}
.tgui-crop__range{flex:1 1 auto;min-width:0;height:44px;accent-color:var(--tg-plum);margin:0}
.tgui-crop__acts{display:flex;gap:12px;flex-wrap:wrap}
body.tgui .tgui-crop__acts .tgui-btn{flex:1 1 150px;width:auto}
@media (max-width:640px){
  .tgui-crop{padding:10px}
  .tgui-crop__box{padding:16px;gap:12px}
  body.tgui .tgui-crop__h{font-size:22px}
}

/* ══ THE LOGIN PAGE (founder 12 Oct: «so ugly … doesn't match anything»): the sign-up's look ══════ */
.tgui-login__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tgui-login__row label{font:600 17px/1.3 var(--tg-sans);color:var(--tg-ink);margin:0}
.tgui-login__lost{font-size:15px;font-weight:600}
.tgui-login__keep{display:flex;align-items:center;gap:10px;min-height:44px;font-size:16px;color:var(--tg-ink);cursor:pointer}
.tgui-login__keep input{width:20px;height:20px;accent-color:var(--tg-plum)}
.tgui-login .tgui-cap{margin:0}

/* ══ «ЧТО ДАЛЬШЕ?» after the masterclass / the intensive (founder 12 Oct): two clear choices, one main ═══ */
.tgui-next{display:flex;justify-content:center;padding:48px 24px 80px}
.tgui-next__in{width:100%;max-width:1040px;display:flex;flex-direction:column;gap:14px}
.tgui-next__kicker{margin:0;font:700 13px/1.2 var(--tg-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--tg-amber-ink)}
body.tgui .tgui-next__h{margin:0;font:500 46px/1.1 var(--tg-serif);color:var(--tg-ink)}
.tgui-next__lead{margin:0 0 14px;font-size:19px;line-height:1.5;color:var(--tg-ink2)}
.tgui-next__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.tgui-next__card{display:flex;flex-direction:column;gap:12px;background:#FFFFFF;border-radius:var(--tg-r);padding:24px 26px 26px;
  box-shadow:0 2px 4px rgba(120,64,48,.05),0 16px 40px rgba(120,64,48,.10);border:1px solid var(--tg-line)}
.tgui-next__card.is-main{box-shadow:0 2px 4px rgba(120,64,48,.06),0 18px 44px rgba(120,64,48,.16),inset 0 0 0 2px var(--tg-soft)}
.tgui-next__cover{display:block;width:100%;height:auto;aspect-ratio:1100/619;object-fit:cover;border-radius:6px 10px 10px 6px;box-shadow:0 14px 28px rgba(42,10,36,.22);margin-bottom:6px}
.tgui-next__step{font:700 13px/1.2 var(--tg-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--tg-amber-ink)}
body.tgui .tgui-next__title{margin:0;font:500 30px/1.15 var(--tg-serif);color:var(--tg-ink)}
.tgui-next__facts{margin:0;font-size:17px;color:var(--tg-ink2)}
.tgui-next__txt{margin:0;font-size:17px;line-height:1.55;color:var(--tg-ink);flex:1 1 auto}
body.tgui .tgui-next__card .tgui-btn{margin-top:6px}
.tgui-next__note{margin:0;font-size:15px;line-height:1.45;color:var(--tg-ink2)}
.tgui-next__back{align-self:flex-start;margin-top:14px;display:inline-flex;align-items:center;min-height:48px;font-size:17px;font-weight:600}
body.tgui .tgui-nav--onward{background:var(--tg-amber)!important;color:var(--tg-ink)!important;box-shadow:none!important}
@media (max-width:760px){
  .tgui-next{padding:28px 16px 56px}
  body.tgui .tgui-next__h{font-size:36px}
  .tgui-next__grid{grid-template-columns:minmax(0,1fr)}
  .tgui-next__card{padding:20px 18px 22px}
}

/* ── final test, 12 Oct ───────────────────────────────────────────────────────────────────
   «Страница не найдена» (includes/notfound.php): the page fills the screen, the footer stays at the bottom */
.tgui-nf{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 360px);padding:64px 24px 80px}
.tgui-nf__in{width:100%;max-width:640px;display:flex;flex-direction:column;gap:14px;text-align:left}
.tgui-nf__kicker{margin:0;font:700 13px/1.2 var(--tg-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--tg-amber-ink)}
body.tgui .tgui-nf__h{margin:0;font:500 clamp(36px,5vw,52px)/1.1 var(--tg-serif);color:var(--tg-ink)}
.tgui-nf__txt{margin:0 0 10px;font-size:19px;line-height:1.5;color:var(--tg-ink2)}
.tgui-nf__btns{display:flex;flex-wrap:wrap;gap:12px}
/* a table inside a lesson (e.g. «Часть 4. Теория») was wider than a phone: it scrolls sideways inside itself */
@media (max-width:760px){
  body.tgui-player table:not(.tutor-table){display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  /* the legal pages: «Политика конфиденциальности» was wider than the screen, with huge gaps between its lines */
  body.tgui .entry-header .entry-title{font-size:clamp(28px,8.4vw,40px)!important;line-height:1.15!important;overflow-wrap:anywhere;hyphens:auto}
  body.tgui .entry-content h2,body.tgui .entry-content h3{line-height:1.25!important;overflow-wrap:anywhere}
  .tgui-nf{padding:40px 16px 56px}
  .tgui-nf__btns .tgui-btn{flex:1 1 100%}
}
