:root{
  --tl-page:#c8c1b4; --tl-page-2:#beb6a7;
  --tl-panel:#303638; --tl-panel-2:#383e40; --tl-panel-3:#414749;
  --tl-line:#596163; --tl-line-soft:#4a5152;
  --tl-cream:#eadfc8; --tl-cream-2:#d5c8af; --tl-muted:#aea491;
  --tl-copper:#a56f50; --tl-copper-2:#bf8060; --tl-copper-soft:rgba(165,111,80,.12);
  --tl-text:#222627; --tl-text-soft:#53504a;
}
html,body{background:var(--tl-page)!important}
body{margin:0;background:radial-gradient(circle at 18% -10%,rgba(255,255,255,.23),transparent 34%),linear-gradient(180deg,var(--tl-page) 0%,var(--tl-page-2) 100%)!important;color:var(--tl-text)}
.site-shell{width:min(1480px,calc(100% - 48px));margin:0 auto}
.topbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;min-height:58px;padding:0!important;border-bottom:1px solid rgba(48,54,56,.20)!important;background:transparent!important;box-shadow:none!important}
.brand{display:flex;align-items:baseline;gap:7px;text-decoration:none;white-space:nowrap}
.brand strong{color:#202426!important;font-size:1rem!important;font-weight:900!important;letter-spacing:-.02em!important}
.brand span{color:var(--tl-copper)!important;font-size:.66rem!important;font-weight:950!important;text-transform:uppercase;letter-spacing:.12em!important}
.header-right{display:flex;align-items:center;gap:14px;margin-left:auto}
.main-nav{display:flex!important;align-items:center;gap:5px}
.main-nav a{padding:8px 11px!important;border:1px solid transparent!important;border-radius:9px!important;background:transparent!important;color:#4c4a45!important;text-decoration:none;font-size:.82rem!important;line-height:1}
.main-nav a.is-active{border-color:rgba(48,54,56,.12)!important;background:rgba(48,54,56,.08)!important;color:#202426!important}
.lang-switch{display:flex;align-items:center;gap:5px}
.lang-switch button{appearance:none;min-width:40px;height:32px;padding:0 9px;border:1px solid #716c63;border-radius:999px;background:rgba(255,255,255,.24);color:#272b2c;font:inherit;font-size:.72rem;font-weight:900;letter-spacing:.03em;cursor:pointer}
.lang-switch button:hover{background:rgba(255,255,255,.48);border-color:#4c5050}
.lang-switch button.is-active{background:var(--tl-copper);border-color:var(--tl-copper);color:#fff8ec}
.lang-switch button:focus-visible{outline:3px solid rgba(165,111,80,.25);outline-offset:2px}
.page-intro{padding:20px 0 15px!important}
.page-intro h1{margin:0 0 7px!important;color:#202426!important;font-size:clamp(2.25rem,4vw,3.7rem)!important;line-height:1!important;font-weight:900!important;letter-spacing:-.055em!important}
.page-intro .lead{max-width:980px;margin:0!important;color:var(--tl-text-soft)!important;font-size:1rem!important;line-height:1.5!important}
.course-nav-wrap{margin:0 0 14px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.course-label{display:none!important}
.theory-progress{display:flex!important;flex-wrap:wrap;gap:7px!important;align-items:center}
.theory-progress a{display:flex;align-items:center;gap:6px;min-height:36px;padding:0 11px!important;border:1px solid rgba(48,54,56,.18)!important;border-radius:999px!important;background:rgba(255,255,255,.22)!important;color:#4a4945!important;text-decoration:none;font-size:.72rem!important;font-weight:700!important;line-height:1!important}
.theory-progress a b{color:#777168!important;font-size:.68rem!important;font-weight:900!important}
.theory-progress a.is-active{border-color:rgba(165,111,80,.48)!important;background:rgba(165,111,80,.10)!important;color:#222627!important}
.theory-progress a.is-active b{color:var(--tl-copper)!important}
.tool-panel{min-height:360px;padding:18px;border:1px solid var(--tl-line);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0)),var(--tl-panel-2);color:var(--tl-cream)}
.placeholder-panel{display:block}
@media(max-width:760px){.site-shell{width:min(100% - 24px,1480px)}.topbar{flex-wrap:wrap;min-height:auto;padding:10px 0!important}.header-right{width:100%;justify-content:space-between}.theory-progress{gap:5px!important}.theory-progress a{min-height:34px;padding:0 9px!important;font-size:.68rem!important}}
@media(max-width:520px){.page-intro h1{font-size:clamp(2rem,10vw,3rem)!important}.main-nav a{padding:7px 9px!important}.lang-switch button{min-width:36px;height:30px;padding:0 7px}}
