:root{--bg:#f6f8f6;--paper:#fff;--ink:#14241d;--text:#3c4b44;--muted:#748078;--green:#173f33;--green2:#245b49;--sage:#e8f0ea;--mint:#dff3ed;--gold:#b89354;--warn:#fff4e8;--danger:#fff0ee;--line:rgba(23,63,51,.11);--shadow:0 10px 28px rgba(24,59,46,.07);--r:16px;--container:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.wrap{width:min(calc(100% - 28px),var(--container));margin:18px auto 72px}.appbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.appbar-in{width:min(calc(100% - 28px),var(--container));min-height:62px;margin:auto;display:flex;align-items:center;gap:14px}.logo{font-weight:950;color:var(--ink);letter-spacing:-.02em;white-space:nowrap}.logo small{display:block;font-size:8px;letter-spacing:.16em;color:var(--muted)}.nav{margin-left:auto;display:flex;gap:4px;align-items:center;flex-wrap:wrap}.nav a{padding:8px 10px;border-radius:9px;font-size:11px;font-weight:800;color:#344a40}.nav a:hover,.nav a.active{background:var(--sage);color:var(--green)}.mobile-menu{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;font-weight:900;color:var(--green)}
.hero{padding:22px;border-radius:18px;background:linear-gradient(135deg,#fff,#edf5ef);border:1px solid var(--line);box-shadow:var(--shadow)}.hero.compact{padding:18px}.hero h1{margin:4px 0 8px;color:var(--ink);font-size:clamp(28px,4vw,44px);line-height:1.05;letter-spacing:-.04em}.hero p{margin:7px 0;color:var(--muted);max-width:860px}.eyebrow,.tag{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:var(--mint);color:var(--green2);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.tag.gold{background:#f4ead8;color:#76572e}.tag.warn{background:var(--warn);color:#7a5829}.tag.gray{background:#edf0ee;color:#66736c}.tag.red{background:var(--danger);color:#984b41}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.grid.two{grid-template-columns:repeat(2,1fr)}.grid.four{grid-template-columns:repeat(4,1fr)}.card{padding:17px;border-radius:15px;background:#fff;border:1px solid var(--line);box-shadow:0 6px 18px rgba(24,59,46,.04)}.card h2,.card h3,.card h4{margin:0 0 8px;color:var(--ink)}.card p{margin:6px 0}.muted{color:var(--muted)}.stat{font-size:27px;font-weight:950;color:var(--ink);line-height:1}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:850;cursor:pointer}.btn:hover{background:var(--green2)}.btn.light{background:#fff;color:var(--green);border:1px solid var(--line)}.btn.soft{background:var(--sage);color:var(--green)}.btn.danger{background:var(--danger);color:#99473e;border:1px solid #f0d2cd}.notice{padding:11px 13px;border-radius:11px;background:var(--warn);border:1px solid #eeddbd;color:#70572f;margin:10px 0}.notice.ok{background:#edf7f0;border-color:#cfe7d6;color:#2c6845}.notice.info{background:#eef5fb;border-color:#d9e6f1;color:#36566d}.progress{height:7px;background:#e8ede9;border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--green2),var(--gold));border-radius:99px}.spacer{height:12px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:20px 0 10px}.section-title h2{margin:0;color:var(--ink);font-size:22px}.section-title p{margin:0;color:var(--muted);font-size:12px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}.table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:12px}.table th{background:#f0f5f2;color:var(--ink);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.field{display:grid;gap:5px;margin:10px 0}.field label{font-size:11px;font-weight:850;color:var(--ink)}input,select,textarea{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}textarea{min-height:100px;resize:vertical}.split{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.course-shell{display:grid;grid-template-columns:270px 1fr;gap:14px;align-items:start}.course-side{position:sticky;top:78px}.course-side .card{padding:13px}.course-nav{display:grid;gap:4px;margin-top:10px}.course-nav a{display:grid;grid-template-columns:28px 1fr auto;gap:7px;align-items:center;padding:8px;border-radius:9px;font-size:11px}.course-nav a:hover,.course-nav a.active{background:var(--sage)}.course-nav .num{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#f2f5f3;color:var(--green);font-weight:900}.course-nav .done{color:var(--gold);font-weight:900}.course-main{min-width:0}.course-summary{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.module-list{display:grid;gap:8px}.module-card{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}.module-card:hover{border-color:rgba(23,63,51,.25);box-shadow:var(--shadow)}.module-card .n{width:42px;height:42px;border-radius:12px;background:var(--sage);display:grid;place-items:center;font-weight:950;color:var(--green)}.module-card h3{font-size:14px;margin:0 0 3px;color:var(--ink)}.module-card p{font-size:11px;margin:0;color:var(--muted)}.module-status{font-size:10px;font-weight:900;color:var(--muted);white-space:nowrap}.module-status.done{color:var(--gold)}
.lesson-head{padding:18px;border-radius:16px;background:#fff;border:1px solid var(--line)}.lesson-head h1{font-size:clamp(26px,4vw,40px);margin:6px 0;color:var(--ink);line-height:1.07}.lesson-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.learning-objectives{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.objective{padding:10px;border-radius:10px;background:var(--sage);font-size:11px;font-weight:700;color:#315046}.lesson-blocks{display:grid;gap:10px;margin-top:12px}.lesson-block{padding:18px;border-radius:14px;background:#fff;border:1px solid var(--line)}.lesson-block h3{margin:5px 0 9px;color:var(--ink);font-size:18px}.lesson-block p{white-space:pre-line;margin:0;color:#405048}.lesson-block ul,.lesson-block ol{margin:8px 0 0;padding-left:20px}.lesson-block[data-type="Важно"]{border-left:4px solid var(--gold);background:#fffdf8}.lesson-block[data-type="Практика"],.lesson-block[data-type="Задание"]{border-left:4px solid var(--green2);background:#f8fcf9}.lesson-block[data-type="Кейс"]{background:#f4f1f8}.lesson-block[data-type="Источники"]{background:#f2f6fa}.lesson-nav{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.lesson-nav .btn{max-width:48%}.sticky-complete{position:sticky;bottom:10px;z-index:15;margin-top:12px;padding:9px;border-radius:13px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;justify-content:space-between;align-items:center;gap:10px}.notes-box textarea{min-height:120px}
.dashboard-strip{display:grid;grid-template-columns:1.2fr repeat(3,.6fr);gap:10px;margin-top:12px}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.quick-actions a{padding:12px;border-radius:12px;background:#fff;border:1px solid var(--line);font-size:11px;font-weight:850;color:var(--green)}.attention{display:grid;gap:7px}.attention-item{padding:11px 12px;border-radius:11px;background:#fff;border:1px solid var(--line);font-size:11px}.empty{padding:28px;text-align:center;color:var(--muted)}
.mobile-bottom{display:none}.desktop-only{display:block}
@media(max-width:980px){.nav{display:none}.mobile-menu{display:block}.appbar.open .nav{display:flex;position:absolute;left:14px;right:14px;top:62px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav a{font-size:12px}.course-shell{grid-template-columns:1fr}.course-side{position:relative;top:auto}.course-nav{grid-template-columns:repeat(2,1fr)}.course-summary{grid-template-columns:1fr}.grid.four{grid-template-columns:repeat(2,1fr)}.dashboard-strip{grid-template-columns:1fr 1fr}.quick-actions{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{padding-bottom:62px}.wrap{width:min(calc(100% - 18px),var(--container));margin-top:10px}.appbar-in{width:min(calc(100% - 18px),var(--container));min-height:56px}.hero,.hero.compact{padding:15px;border-radius:14px}.hero h1{font-size:29px}.grid,.grid.two,.grid.four,.split,.dashboard-strip{grid-template-columns:1fr}.card{padding:14px}.course-nav{grid-template-columns:1fr}.module-card{grid-template-columns:38px 1fr}.module-card .n{width:36px;height:36px}.module-card .module-status{grid-column:2}.learning-objectives{grid-template-columns:1fr}.lesson-block{padding:15px}.lesson-nav{display:grid;grid-template-columns:1fr 1fr}.lesson-nav .btn{max-width:none}.sticky-complete{bottom:68px;display:grid}.desktop-only{display:none}.mobile-bottom{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);left:0;right:0;bottom:0;z-index:45;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:5px 6px calc(5px + env(safe-area-inset-bottom))}.mobile-bottom a{display:grid;place-items:center;gap:1px;padding:5px 2px;font-size:9px;font-weight:800;color:var(--muted)}.mobile-bottom b{font-size:16px;line-height:1}.table-wrap{margin-left:-2px;margin-right:-2px}.section-title{align-items:start;flex-direction:column}.row.mobile-stack{display:grid}.btn{min-height:42px}.course-side .card{padding:10px}}


/* =========================================================
   GAR ACADEMY V7 — UNIFIED PREMIUM UI
   Unified with the public GAR Academy visual language.
   ========================================================= */
:root{
  --bg:#fbfcfd;--paper:#ffffff;--ink:#17212d;--text:#465564;--muted:#788694;
  --green:#173f33;--green2:#245b49;--mint:#49d3c5;--mint-soft:#ecfffb;
  --blue:#78c7f2;--purple:#a980c9;--rose:#ffb7c4;--gold:#d8ad57;
  --sage:#eef8f4;--warn:#fff8e8;--danger:#fff0ee;--line:rgba(23,33,45,.09);
  --shadow:0 18px 55px rgba(54,78,96,.09);--r:20px;--container:1240px
}
html{background:#fbfcfd}body{background:radial-gradient(circle at 8% 0,rgba(73,211,197,.09),transparent 25%),radial-gradient(circle at 92% 5%,rgba(169,128,201,.08),transparent 26%),linear-gradient(180deg,#fff,#f8fbfb 48%,#fcfbff);color:var(--text)}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 48% 85%,rgba(120,199,242,.07),transparent 30%)}
.appbar{background:rgba(255,255,255,.93);border-bottom:1px solid rgba(23,33,45,.07);box-shadow:0 5px 24px rgba(23,33,45,.035)}
.appbar-in{min-height:70px;gap:18px}.logo{font-size:16px;letter-spacing:-.035em}.logo small{font-size:8px;color:#8b98a3;letter-spacing:.18em;margin-top:1px}
.nav{gap:3px;flex-wrap:nowrap}.nav a{padding:9px 10px;border-radius:12px;font-size:11px;color:#425464;white-space:nowrap}.nav a:hover,.nav a.active{background:linear-gradient(135deg,#effffb,#f3f0fb);color:#173f33}
.wrap{width:min(calc(100% - 32px),var(--container));margin:22px auto 86px}.hero{padding:26px;border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.97),#f2fffc 62%,#f6f0fb);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow)}
.hero h1{font-size:clamp(31px,4.4vw,53px);color:var(--ink);letter-spacing:-.055em}.hero p{font-size:14px;line-height:1.65}.tag,.eyebrow{padding:6px 10px;background:linear-gradient(135deg,#fff4d8,#ffeef1,#e8fffb);color:#9a6c2a;border:1px solid rgba(216,173,87,.16);font-size:9px}
.card{border-radius:20px;border:1px solid rgba(23,33,45,.075);box-shadow:0 10px 32px rgba(54,78,96,.055);background:rgba(255,255,255,.96)}.card:hover{border-color:rgba(73,211,197,.22)}
.btn{min-height:43px;border-radius:13px;padding:0 16px}.btn:not(.light):not(.soft):not(.danger){background:linear-gradient(135deg,#173f33,#27624f)}.btn.light{box-shadow:0 7px 20px rgba(54,78,96,.05)}.btn.soft{background:linear-gradient(135deg,#eafff9,#f4effc);color:#173f33}
input,select,textarea{border-radius:13px;padding:12px 13px;border:1px solid rgba(23,33,45,.11);background:#fff}input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(73,211,197,.75);box-shadow:0 0 0 4px rgba(73,211,197,.10)}
.auth-shell{min-height:calc(100vh - 150px);display:grid;place-items:center;padding:30px 0}.auth-card{width:min(100%,620px);padding:30px;border-radius:28px;background:linear-gradient(145deg,#fff,#f4fffc 62%,#f7f3fb);border:1px solid rgba(255,255,255,.95);box-shadow:0 26px 80px rgba(54,78,96,.12)}.auth-card h1{margin:9px 0 8px;font-size:clamp(32px,5vw,48px);line-height:1.02;letter-spacing:-.055em;color:var(--ink)}.auth-card .auth-lead{margin:0 0 20px;color:var(--muted)}.auth-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.auth-divider{height:1px;background:var(--line);margin:22px 0}.auth-foot{font-size:12px;color:var(--muted)}
.welcome-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.dashboard-strip{grid-template-columns:1.25fr repeat(3,.65fr)}.quick-actions a{border-radius:15px;background:linear-gradient(145deg,#fff,#f6fbf9)}
.course-shell{grid-template-columns:285px minmax(0,1fr);gap:16px}.course-side .card{border-radius:20px}.module-card{border-radius:16px;padding:14px}.module-card .n{background:linear-gradient(135deg,#edfffa,#f3effa)}.lesson-head{border-radius:22px;background:linear-gradient(145deg,#fff,#f3fffb)}.lesson-block{border-radius:18px}.sticky-complete{border-radius:16px}
.table-wrap{border-radius:18px;box-shadow:0 8px 30px rgba(54,78,96,.04)}.table th{background:linear-gradient(180deg,#f6fbf9,#f4f7f6)}
.role-chip{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;border-radius:999px;background:#f3f7f5;color:#52655c;font-size:10px;font-weight:850}.role-chip i{width:7px;height:7px;border-radius:50%;background:#49d3c5}
.empty-state{padding:34px;border:1px dashed rgba(23,33,45,.14);border-radius:20px;text-align:center;background:rgba(255,255,255,.68)}.empty-state h3{margin:0 0 7px;color:var(--ink)}
@media(max-width:1120px){.nav{display:none}.mobile-menu{display:block}.appbar.open .nav{display:flex;position:absolute;left:16px;right:16px;top:66px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav a{font-size:12px}.welcome-grid{grid-template-columns:1fr}}
@media(max-width:760px){body{padding-bottom:68px}.wrap{width:min(calc(100% - 18px),var(--container));margin-top:10px}.appbar-in{width:min(calc(100% - 18px),var(--container));min-height:60px}.hero{padding:18px;border-radius:20px}.hero h1{font-size:34px}.auth-shell{padding:12px 0;align-items:start}.auth-card{padding:20px 17px;border-radius:22px}.auth-card h1{font-size:36px}.auth-actions{display:grid}.auth-actions .btn{width:100%}.grid,.grid.two,.grid.four,.split,.dashboard-strip{grid-template-columns:1fr}.course-shell{grid-template-columns:1fr}.course-side{position:relative;top:auto}.course-nav{grid-template-columns:1fr}.mobile-bottom{background:rgba(255,255,255,.97);box-shadow:0 -8px 30px rgba(54,78,96,.06)}}

/* =========================================================
   GAR ACADEMY V9 — STABLE SCROLL + UNIFIED PAGE EDGES
   Additive patch. Existing GMS logic/styles are preserved.
   ========================================================= */
:root{--container:1320px;--page-gap:24px;--bg:#fbfaf8}
html{width:100%;max-width:100%;overflow-x:clip;background:#fbfaf8}
body{width:100%;max-width:100%;min-width:320px;overflow-x:clip;background:#fbfaf8!important;background-image:linear-gradient(180deg,#fffdfb 0,#f7faf8 54%,#fffdfb 100%)!important;background-attachment:scroll!important}
.wrap,.appbar-in{width:min(var(--container),calc(100% - (var(--page-gap) * 2)))!important;max-width:var(--container)!important;margin-left:auto!important;margin-right:auto!important}
.appbar{background:#fffdfb!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:0 5px 18px rgba(24,59,46,.05)!important;transform:none!important;will-change:auto!important}
.sticky-complete,.mobile-bottom{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fffdfb!important}
.course-shell,.course-main,.grid,.card,.hero,.lesson-block,.table-wrap{min-width:0;max-width:100%}
img,svg,video,canvas{max-width:100%}
@media(max-width:1400px){:root{--page-gap:18px}}
@media(max-width:700px){:root{--page-gap:9px}.wrap,.appbar-in{width:calc(100% - 18px)!important}.mobile-bottom{background:#fffdfb!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.module-card{transition:none!important;transform:none!important}}


/* =========================================================
   GAR ACADEMY V10 FULL — EQUAL LEFT / RIGHT GUTTERS
   Additive only. Existing design, GMS and courses are preserved.
   ========================================================= */
:root{--container:1320px;--page-gap:24px}
html,body{width:100%;max-width:100%;overflow-x:hidden}
.container,.wrap,.appbar-in{width:100%!important;max-width:var(--container)!important;margin-left:auto!important;margin-right:auto!important;padding-left:var(--page-gap)!important;padding-right:var(--page-gap)!important}
.topbar .container,.price-lock-strip .container,.hero .container,.section .container,footer .container{width:100%!important;max-width:var(--container)!important;margin-left:auto!important;margin-right:auto!important;padding-left:var(--page-gap)!important;padding-right:var(--page-gap)!important}
.nav,.hero-grid,.audience,.tracks,.popular,.catalog-grid,.detail-grid,.demo-grid,.package-grid,.result-grid,.review-grid,.seo-grid,.payment-grid,.corporate-form,.checkout-form,.lesson-grid,.course-shell,.course-main,.grid,.card,.hero,.lesson-block,.table-wrap{min-width:0;max-width:100%}
img,svg,video,canvas{max-width:100%;height:auto}
@media(max-width:1400px){:root{--page-gap:20px}}
@media(max-width:700px){:root{--page-gap:14px}.container,.wrap,.appbar-in,.topbar .container,.price-lock-strip .container,.hero .container,.section .container,footer .container{padding-left:var(--page-gap)!important;padding-right:var(--page-gap)!important}}


/* GAR ACADEMY V11 — mobile app navigation + registration UX */
.consent-row{display:flex;gap:9px;align-items:flex-start;margin:14px 0;font-size:12px;color:var(--muted)}
.consent-row input{width:auto;margin-top:3px;flex:0 0 auto}
.auth-main-btn{width:100%}.hero-actions-app{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.welcome-notice{margin:0 0 12px}
@media(max-width:760px){
  body{padding-bottom:82px!important}
  .mobile-bottom{display:grid!important;left:8px!important;right:8px!important;bottom:8px!important;border:1px solid rgba(23,33,45,.08)!important;border-radius:20px!important;padding:7px 5px calc(7px + env(safe-area-inset-bottom))!important;background:#fffdfb!important;box-shadow:0 12px 38px rgba(23,63,51,.14)!important}
  .mobile-bottom.student-nav,.mobile-bottom.admin-nav{grid-template-columns:repeat(5,1fr)!important}
  .mobile-bottom.instructor-nav{grid-template-columns:repeat(4,1fr)!important}
  .mobile-bottom a{min-width:0!important;padding:5px 1px!important;font-size:9px!important;border-radius:12px!important}
  .mobile-bottom a:active{background:#eef8f4!important;color:#173f33!important}
  .mobile-bottom b{font-size:17px!important}
  .appbar{position:sticky!important;top:0!important}
  .appbar-in{min-height:58px!important}
  .mobile-menu{border:1px solid var(--line)!important;background:#fff!important;border-radius:12px!important;padding:8px 11px!important;font-weight:800!important}
  .hero-actions-app{display:grid!important;grid-template-columns:1fr!important}
  .hero-actions-app .btn{width:100%!important}
  .auth-card .grid.two{grid-template-columns:1fr!important}
}
