/* Kurs sayfası şablonu. Her kurs sayfası kendi rengini
   <style>:root{--brand:...; --brand-ink:...; --final:...}</style> ile verir. */
:root{
  --brand:var(--blue); --brand-ink:var(--blue-deep); --final:var(--blue); --on-brand:#FFFFFF;
  --accent:var(--brand);
}

/* hero */
.hero{background:var(--brand);color:var(--on-brand);position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-8%;top:-30%;width:55%;height:160%;background:rgba(255,255,255,.06);transform:skewX(-12deg);pointer-events:none}
.hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;padding-block:4.5rem 5rem;position:relative;z-index:1}
.hero h1{font-size:clamp(2.4rem,5.4vw,4.1rem);font-weight:800}
.hero h1.uzun{font-size:clamp(2rem,3.9vw,3rem);line-height:1.12}
.hero p.promise{font-size:1.25rem;max-width:40ch;margin:1.1rem 0 1.6rem;opacity:.95}
.ai-line{display:inline-block;margin:-.4rem 0 1.25rem;background:#FFFFFF;color:var(--brand-ink);font-weight:700;font-size:1.05rem;line-height:1.45;padding:.7rem 1.1rem;border-radius:10px;max-width:46ch;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.prior{margin:0 0 1.6rem;max-width:48ch;font-size:1rem;line-height:1.5;opacity:.9}
.prereq{margin:0 0 1.6rem;max-width:48ch;background:rgba(255,217,90,.16);border-left:4px solid var(--yellow);padding:.75rem 1rem;border-radius:0 10px 10px 0;font-size:1rem;line-height:1.5}
.prereq a{color:var(--yellow);font-weight:700}
.facts{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 2rem;padding:0;list-style:none}
.facts li{background:rgba(255,255,255,.14);border-radius:999px;padding:.35rem .85rem;font-weight:600;font-size:.95rem}
.buy{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
.buy .price{font:800 2.2rem var(--display)}
.buy .price small{display:block;font:600 .85rem var(--body);opacity:.85}
.hero .btn{background:var(--yellow);color:#1B1B1B;font-size:1.1rem;padding:.95rem 1.6rem}
.hero .btn:hover{background:var(--yellow-hi)}

/* paylaş satırı (kurs.js fiyatın altına ekler) */
.paylas{display:flex;align-items:center;gap:.55rem;margin-top:1.4rem}
.paylas > span{font-weight:700;font-size:.95rem;opacity:.85;margin-right:.15rem}
.paylas > a,.paylas button,.paylas summary{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;border:0;cursor:pointer;padding:0;
  background:rgba(255,255,255,.14);color:#fff;position:relative;transition:background .15s}
.paylas > a:hover,.paylas button:hover,.paylas summary:hover{background:rgba(255,255,255,.28)}
.paylas svg{width:19px;height:19px}
/* üst alan overflow:hidden: e-posta menüsü yukarı açılır ve dar ekranda taşmasın diye satırın soluna hizalanır */
.paylas{position:relative}
.paylas details.eposta-menu{position:static}
.paylas .eposta-liste{top:auto;bottom:calc(100% + .45rem);left:0}
.paylas .durum{position:absolute;left:calc(100% + .5rem);white-space:nowrap;font:700 .9rem var(--body);color:#fff}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr;gap:2.25rem;padding-block:2.75rem 3rem}}

/* "kurs sonunda" paneli */
.panel{background:var(--surface);color:var(--ink);border-radius:18px;padding:1.75rem;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.panel h2{font-size:1.4rem;font-weight:700;margin-bottom:1.2rem}
.panel-foot{margin:1.3rem 0 0;padding-top:1rem;border-top:1px solid var(--line);font-size:.95rem;color:var(--muted);display:flex;justify-content:space-between;gap:.5rem 1rem;flex-wrap:wrap}
.panel-foot a{font-weight:700;text-decoration:none}
.panel-test{margin:.9rem 0 0;padding:.7rem .9rem;background:var(--chip);border-radius:10px;font-size:.95rem;color:var(--ink)}
.panel-test a{font-weight:700}
.ticks{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}
.ticks li{display:grid;grid-template-columns:24px 1fr;gap:.6rem}
.ticks li::before{content:"";width:20px;height:20px;margin-top:.2rem;border-radius:50%;
  background:var(--brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}

/* müfredat */
.cur-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.toggle-all{background:none;border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:.5rem .9rem;font:600 .95rem var(--body);cursor:pointer}
.modules{list-style:none;padding:0;margin:2rem 0 0;counter-reset:m}
.mod{border-left:3px solid var(--line);padding-left:1.5rem;position:relative}
.mod::before{counter-increment:m;content:counter(m);position:absolute;left:-17px;top:1.05rem;width:31px;height:31px;border-radius:50%;
  display:grid;place-items:center;background:var(--bg-alt);border:3px solid var(--line);font:800 .9rem var(--display);color:var(--muted)}
.mod.open{border-left-color:var(--brand)}
.mod.open::before{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}
.mod-btn{all:unset;box-sizing:border-box;display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;width:100%;padding:1.1rem 0;cursor:pointer}
.mod-btn:focus-visible{outline:3px solid var(--yellow);outline-offset:4px;border-radius:6px}
.mod-btn h3{font-size:1.25rem;font-weight:700}
.mod-meta{grid-column:1;color:var(--muted);font-size:.95rem}
.chev{grid-row:1/3;grid-column:2;align-self:center;transition:transform .2s}
.mod-btn.tek .chev{grid-row:1}
.mod.open .chev{transform:rotate(180deg)}
.mod-body{display:none;padding:0 0 1.4rem}
.mod.open .mod-body{display:block}
.topics{list-style:none;padding:0;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.topics li{padding:.7rem 1rem;display:flex;gap:.75rem;align-items:baseline}
.topics li+li{border-top:1px solid var(--line)}
.topics li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent);transform:translateY(-2px)}
.tag{margin-left:auto;flex:none;font-size:.8rem;font-weight:700;color:var(--chip-ink);background:var(--chip);border-radius:6px;padding:.1rem .45rem}

/* kursla birlikte gelenler */
.inc{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 2.5rem;margin-top:2.25rem}
.inc h3{font-size:1.15rem;font-weight:700;margin-bottom:.35rem}
.inc p{margin:0;color:var(--muted)}
.inc .ico{font-size:1.6rem;display:block;margin-bottom:.5rem}
@media (max-width:820px){.inc{grid-template-columns:1fr}}

/* son çağrı */
.final{background:var(--final);color:#fff;border-radius:22px;padding:3rem;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}
.final p{margin:.6rem 0 0;opacity:.9;max-width:52ch}
.final .btn{background:var(--yellow);color:#1B1B1B;font-size:1.1rem;padding:.95rem 1.6rem}
.final .btn:hover{background:var(--yellow-hi)}
@media (max-width:720px){.final{grid-template-columns:1fr;padding:2rem}}

/* mobil satın alma çubuğu */
.mbar{display:none}
@media (max-width:820px){
  footer{padding-bottom:6rem}
  .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9;background:var(--surface);border-top:1px solid var(--line);
    padding:.7rem 1.25rem calc(.7rem + env(safe-area-inset-bottom,0px));align-items:center;justify-content:space-between;gap:1rem;
    transform:translateY(110%);transition:transform .25s}
  .mbar.show{transform:none}
  .mbar strong{font:800 1.3rem var(--display)}
  .mbar small{display:block;color:var(--muted);font-size:.8rem}
}
