*{box-sizing:border-box}
:root{
  --bg:#05091b;
  --panel:#0d1428;
  --panel2:#111a31;
  --line:#25304a;
  --text:#f7f8fb;
  --muted:#919bb2;
  --teal:#16c7ad;
  --blue:#4678ff;
  --purple:#7257ff;
  --danger:#ff5b7f;
  --warning:#ffbe2e;
}
html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
body{min-width:0}
.login-page{display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#10204a 0,#05091b 45%)}
.login-shell{width:min(440px,100%)}
.login-card,.panel{background:rgba(13,20,40,.96);border:1px solid var(--line);border-radius:28px;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.login-card{padding:28px}
.brand-block{display:flex;align-items:center;gap:16px}
.brand-block h1{margin:0;font-size:27px;line-height:1.1}
.brand-block p{margin:6px 0 0;color:var(--teal);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.brand-ball{width:74px;height:74px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#0f203e,#121931);border:1px solid #2d3a5b;font-size:36px}
.brand-block.compact .brand-ball{width:58px;height:58px;border-radius:18px;font-size:30px}
.brand-block.compact h1{font-size:22px}
.brand-block.compact p{font-size:11px}
.brand-ball.brand-logo{padding:0;overflow:hidden;border-radius:50%;background:#030816;border:2px solid rgba(255,255,255,.10);box-shadow:0 8px 22px rgba(0,0,0,.28)}
.brand-ball.brand-logo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
.login-card .brand-ball.brand-logo{width:84px;height:84px;min-width:84px;border-radius:50%}
@media(max-width:480px){.login-card .brand-ball.brand-logo{width:70px;height:70px;min-width:70px}}
html[data-theme="light"] .brand-ball.brand-logo{background:#fff;border-color:#d7dfeb;box-shadow:0 8px 20px rgba(24,40,72,.10)}

.form-stack,.student-form{display:grid;gap:15px;margin-top:26px}
label{display:grid;gap:7px;color:#cdd3e2;font-weight:700;font-size:14px}
input,select,textarea{width:100%;border:1px solid var(--line);border-radius:14px;background:#070d20;color:var(--text);padding:14px 15px;outline:none}
input:focus,select:focus,textarea:focus{border-color:#526cff;box-shadow:0 0 0 3px rgba(82,108,255,.12)}
.btn{border:0;border-radius:14px;min-height:48px;padding:0 18px;font-weight:900}
.btn-primary{color:#fff;background:linear-gradient(135deg,#3588ff,#6a55ff)}
.btn-secondary{color:#cbd2e3;background:#121a30;border:1px solid var(--line)}
.btn-danger-outline{background:#2a0d1b;color:#ff7592;border:1px solid #5d1730}
.form-message{min-height:20px;margin:0;color:var(--muted);font-size:13px}
.form-message.error{color:#ff8aa2}.form-message.success{color:#42d8bd}
.app-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px max(18px,calc((100vw - 1180px)/2));background:rgba(5,9,27,.94);backdrop-filter:blur(14px);border-bottom:1px solid #172039}
.app-shell{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:24px 0 60px}

/* AK-v54 — Mobil kart dashboard menüsü */
.dashboard-summary{
  display:grid;
  grid-template-columns:1fr 1fr 1.7fr 1fr;
  gap:0;
  margin-bottom:24px;
  background:linear-gradient(180deg,#10182d,#0d1428);
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:0 16px 42px rgba(0,0,0,.18);
  overflow:hidden;
}
.summary-item{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:18px 14px;
  position:relative;
}
.summary-item:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;
  top:20%;
  width:1px;
  height:60%;
  background:var(--line);
}
.summary-icon{
  width:46px;
  height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:22px;
  flex:0 0 auto;
}
.summary-members .summary-icon{background:rgba(49,196,106,.14)}
.summary-lessons .summary-icon{background:rgba(62,126,255,.15)}
.summary-cash-combined .summary-icon{background:linear-gradient(135deg,rgba(255,174,35,.18),rgba(134,94,255,.18))}
.summary-clock .summary-icon{background:rgba(134,94,255,.16)}
.summary-item strong{display:block;font-size:18px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-members strong{color:#37d66f}.summary-lessons strong{color:#5a91ff}.lesson-income-cell strong{color:#ffb536}.string-income-cell strong{color:#9f80ff}.summary-clock strong{color:#54c8ff}
.summary-item small{display:block;margin-top:5px;color:var(--muted);font-size:12px;font-weight:700}

.summary-cash-combined{justify-content:flex-start;gap:12px;padding-left:18px;padding-right:18px}
.summary-cash-split{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);align-items:center;gap:14px;width:100%;min-width:0}
.summary-cash-cell{min-width:0}
.summary-cash-divider{width:1px;height:42px;background:var(--line)}
.summary-cash-cell strong{font-size:17px}
.summary-cash-cell small{white-space:nowrap}

.module-nav.dashboard-menu{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:24px;
}
.dashboard-menu-card{
  --card-accent:#4d8dff;
  --card-soft:rgba(77,141,255,.12);
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  gap:22px;
  align-items:center;
  padding:22px;
  border-radius:26px;
  background:linear-gradient(135deg,var(--card-soft),#0d1428 52%);
  border:1px solid color-mix(in srgb,var(--card-accent) 34%,var(--line));
  box-shadow:0 16px 40px rgba(0,0,0,.16);
}
.menu-card-members{--card-accent:#4489ff;--card-soft:rgba(68,137,255,.14)}
.menu-card-lessons{--card-accent:#27ca69;--card-soft:rgba(39,202,105,.13)}
.menu-card-payments{--card-accent:#ff9d14;--card-soft:rgba(255,157,20,.13)}
.menu-card-strings{--card-accent:#8d67ff;--card-soft:rgba(141,103,255,.14)}
.menu-card-admin{--card-accent:#2c9fd6;--card-soft:rgba(44,159,214,.14)}
.dashboard-menu-icon{
  width:116px;
  height:116px;
  border-radius:28px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(145deg,color-mix(in srgb,var(--card-accent) 80%,#fff 20%),color-mix(in srgb,var(--card-accent) 80%,#061329 20%));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.26),0 14px 28px color-mix(in srgb,var(--card-accent) 24%,transparent);
  font-size:52px;
}
.dashboard-menu-icon svg{width:62px;height:62px;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.dashboard-menu-icon.racket-icon{font-size:54px}
.dashboard-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dashboard-menu-head>div{display:flex;align-items:baseline;gap:8px;min-width:0}
.menu-index{font-size:24px;font-weight:950;color:var(--text)}
.dashboard-menu-head h3{margin:0;font-size:25px;line-height:1.15;color:var(--text)}
.menu-chevron{font-size:40px;line-height:1;color:var(--card-accent);font-weight:300}
.dashboard-menu-body>p{margin:7px 0 16px;color:var(--muted);line-height:1.45;font-size:14px}
.dashboard-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dashboard-menu-actions.single-action{grid-template-columns:minmax(0,240px)}
.nav-pill{
  width:100%;
  min-height:50px;
  padding:10px 13px;
  border-radius:15px;
  border:1px solid color-mix(in srgb,var(--card-accent) 24%,var(--line));
  background:rgba(8,14,31,.72);
  color:#d7deed;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  line-height:1.15;
  transition:.18s ease;
}
.nav-pill:hover{transform:translateY(-1px);border-color:var(--card-accent)}
.nav-pill.active{background:linear-gradient(135deg,#3e8cff,#715aff);color:#fff;border-color:transparent;box-shadow:0 10px 22px rgba(83,97,255,.24)}
.nav-pill.disabled{opacity:.45;cursor:not-allowed}

@media(max-width:980px){
  .module-nav.dashboard-menu{grid-template-columns:1fr}
}
@media(max-width:800px){
  .dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:20px}
  .summary-item:after{display:block}
  .summary-item:nth-child(2):after{display:none}
  .summary-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .summary-cash-combined{grid-column:1/-1;border-bottom:1px solid var(--line)}
  .summary-cash-combined:after{display:none}
  .summary-clock{grid-column:1/-1}
  .summary-clock:after{display:none}
  .module-nav.dashboard-menu{display:grid;grid-template-columns:1fr;gap:14px}
  .dashboard-menu-card{grid-template-columns:88px minmax(0,1fr);gap:16px;padding:17px;border-radius:22px}
  .dashboard-menu-icon{width:88px;height:88px;border-radius:22px;font-size:40px}
  .dashboard-menu-icon svg{width:48px;height:48px}
  .menu-index{font-size:20px}
  .dashboard-menu-head h3{font-size:22px}
  .dashboard-menu-body>p{font-size:13px;margin-bottom:13px}
  .nav-pill{min-height:46px;font-size:13px}
}
@media(max-width:520px){
  .app-shell{width:min(100% - 16px,1180px)}
  .dashboard-summary{margin-bottom:14px}
  .summary-item{justify-content:flex-start;padding:13px 12px;gap:9px}
  .summary-icon{width:38px;height:38px;font-size:18px}
  .summary-item strong{font-size:15px}.summary-item small{font-size:10px}
  .summary-cash-combined{padding:13px 12px}
  .summary-cash-split{gap:10px}
  .summary-cash-divider{height:36px}
  .summary-cash-cell strong{font-size:14px}
  .dashboard-menu-card{grid-template-columns:72px minmax(0,1fr);gap:13px;padding:14px}
  .dashboard-menu-icon{width:72px;height:72px;border-radius:19px;font-size:34px;align-self:start}
  .dashboard-menu-icon svg{width:40px;height:40px}
  .dashboard-menu-head h3{font-size:19px}.menu-index{font-size:18px}.menu-chevron{font-size:30px}
  .dashboard-menu-body>p{font-size:12px;margin-top:5px;margin-bottom:10px}
  .dashboard-menu-actions{grid-template-columns:1fr 1fr;gap:8px}
  .dashboard-menu-actions.single-action{grid-template-columns:1fr}
  .nav-pill{min-height:44px;padding:8px 7px;font-size:11.5px;border-radius:13px;gap:5px}
}
@media(max-width:380px){
  .dashboard-menu-card{grid-template-columns:1fr}
  .dashboard-menu-icon{width:64px;height:64px}
  .dashboard-menu-actions{grid-template-columns:1fr}
}

html[data-theme="light"] .dashboard-summary{background:#fff;border-color:#d7deea;box-shadow:0 14px 34px rgba(31,53,90,.08)}
html[data-theme="light"] .dashboard-menu-card{background:linear-gradient(135deg,var(--card-soft),#ffffff 52%);border-color:color-mix(in srgb,var(--card-accent) 28%,#d7deea);box-shadow:0 12px 30px rgba(31,53,90,.07)}
html[data-theme="light"] .dashboard-menu-head h3,html[data-theme="light"] .menu-index{color:#172033}
html[data-theme="light"] .nav-pill{background:#fff;color:#23304a;border-color:color-mix(in srgb,var(--card-accent) 22%,#d2dae7)}
html[data-theme="light"] .nav-pill.active{color:#fff}

@media(max-width:1100px) and (min-width:801px){
  .dashboard-summary{grid-template-columns:1fr 1fr 1.7fr}
  .summary-cash-combined:after{display:none}
  .summary-clock{grid-column:1/-1;border-top:1px solid var(--line)}
  .summary-clock:after{display:none}
}

/* AK-v56 — Mobil Başa Dön */
.scroll-top-btn{
  position:fixed;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(22px,calc(env(safe-area-inset-bottom) + 16px));
  z-index:90;
  min-height:52px;
  padding:0 17px;
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:linear-gradient(135deg,#3e8cff,#715aff);
  color:#fff;
  box-shadow:0 14px 34px rgba(55,75,210,.36);
  font-weight:900;
  opacity:0;
  visibility:hidden;
  transform:translateY(18px) scale(.96);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}
.scroll-top-btn.visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.scroll-top-btn span{font-size:24px;line-height:1}
.scroll-top-btn strong{font-size:13px;white-space:nowrap}
.scroll-top-btn:active{transform:scale(.96)}
html[data-theme="light"] .scroll-top-btn{border-color:rgba(57,86,180,.14);box-shadow:0 14px 30px rgba(57,86,180,.22)}
@media(max-width:520px){
  .scroll-top-btn{right:12px;bottom:max(14px,calc(env(safe-area-inset-bottom) + 10px));min-height:48px;padding:0 14px}
  .scroll-top-btn strong{font-size:12px}
}

.panel{display:none;padding:26px}.panel.active-view{display:block}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:20px}
.kicker{color:var(--teal);font-size:12px;font-weight:900;letter-spacing:.14em}
.panel-head h2{font-size:30px;margin:7px 0 0}
.toolbar{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}
.students-list{display:grid;gap:14px}
.student-card{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:18px;align-items:center;background:#10192d;border:1px solid var(--line);border-radius:22px;padding:20px}
.avatar{width:64px;height:64px;border-radius:18px;background:#17223a;display:grid;place-items:center;font-size:30px;border:1px solid #2e3a57;overflow:hidden;padding:0}
.student-main h3{margin:0;font-size:20px}
.student-meta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:7px;color:var(--muted);font-size:13px}
.student-phone{margin-top:9px;color:var(--teal);font-weight:800}
.debt-badge{display:inline-flex;margin-top:10px;padding:8px 12px;border-radius:11px;background:#070d20;border:1px solid #26324d;color:#a7b0c6;font-size:13px;font-weight:800}
.debt-badge strong{color:var(--danger);margin-left:6px;font-size:18px}
.student-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:250px}
.action-btn{border:1px solid var(--line);background:#070d20;color:#cbd2e2;border-radius:12px;min-height:42px;padding:0 12px;font-weight:800}
.action-btn.edit{color:var(--warning)}
.action-btn.plan{color:#28d1ad;border-color:#145548;background:#09241f}
.action-btn.delete{color:#ff829a}
.student-form{grid-template-columns:1fr 1fr}
.student-form .full{grid-column:1/-1}
.check-row{display:flex;align-items:center;gap:10px}.check-row input{width:20px;height:20px}
.form-actions{display:flex;gap:10px;flex-wrap:wrap}
.empty-state{padding:40px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px}
.status-inactive{color:#ff9aae;font-weight:900}
@media(max-width:800px){
  .app-header{padding:14px}
  .brand-block.compact .brand-ball{width:46px;height:46px}
  .brand-block.compact h1{font-size:18px}
  .app-shell{width:min(100% - 20px,1180px);padding-top:16px}
  .module-nav{grid-template-columns:1fr 1fr;gap:10px}
  .menu-group{padding:12px;border-radius:20px}
  .menu-group-title{font-size:11px}
  .nav-pill{min-height:48px;padding:10px 9px;font-size:13px}
  .panel{padding:18px;border-radius:22px}
  .toolbar{grid-template-columns:1fr}
  .student-card{grid-template-columns:56px minmax(0,1fr);padding:16px;gap:13px}
  .avatar{width:52px;height:52px;font-size:24px}
  .student-actions{grid-column:1/-1;min-width:0;width:100%}
  .student-form{grid-template-columns:1fr}
  .student-form .full{grid-column:auto}
  .panel-head h2{font-size:25px}
}
@media(max-width:480px){
  .brand-block.compact p{display:none}
  .btn-danger-outline{min-height:42px;padding:0 12px}
  .student-actions{grid-template-columns:1fr 1fr}
}


/* V2 - ÜYE KAYIT PROTOKOLÜ */
.protocol-form{max-width:760px;margin-left:auto;margin-right:auto}
.form-intro{text-align:center;padding:8px 0 12px}
.form-intro h3{margin:0;font-size:clamp(28px,5vw,42px);letter-spacing:.04em}
.form-intro p{color:var(--muted);margin:10px 0 0}
.form-label-strong,.field-caption{color:#aeb7cc;font-size:13px;font-weight:900;letter-spacing:.08em}
.phone-field-wrap{display:grid;gap:9px}
.phone-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px}
.field-help{color:#6f7890;font-size:12px;line-height:1.5}
.whatsapp-toggle-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;background:#070d20;border:1px solid var(--line);border-radius:16px}
.whatsapp-toggle-card strong{display:block;color:#fff;font-size:17px}
.whatsapp-toggle-card small{display:block;margin-top:5px;color:var(--muted);font-weight:500;line-height:1.45}
.toggle{position:relative;width:62px;height:34px;flex:0 0 auto}
.toggle input{position:absolute;opacity:0;pointer-events:none}
.toggle-ui{position:absolute;inset:0;border-radius:999px;background:#273149;transition:.2s}
.toggle-ui:after{content:"";position:absolute;width:26px;height:26px;top:4px;left:4px;border-radius:50%;background:#fff;transition:.2s}
.toggle input:checked + .toggle-ui{background:#0bc597}
.toggle input:checked + .toggle-ui:after{transform:translateX(28px)}
.photo-method-block{display:grid;gap:12px}
.photo-tabs{display:grid;grid-template-columns:1fr 1fr;background:#070d20;border:1px solid var(--line);border-radius:14px;padding:6px;gap:6px}
.photo-tab{min-height:44px;border:0;border-radius:11px;background:transparent;color:#8f99b2;font-weight:900}
.photo-tab.active{background:#1b2a43;color:#20d3b8}
.photo-drop-button{width:100%;min-height:170px;border:1px dashed #78829a;border-radius:18px;background:#070d20;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.photo-drop-button>span{font-size:40px}
.photo-drop-button small{color:var(--muted)}
.photo-preview-wrap{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#070d20}
.photo-preview-wrap img,.student-photo{width:64px;height:64px;object-fit:cover;border-radius:18px;border:1px solid #2e3a57}
.btn-save-protocol{min-height:58px;background:linear-gradient(90deg,#14c8b1,#04c381);color:#001812;font-size:16px;letter-spacing:.04em}
@media(max-width:520px){.phone-grid{grid-template-columns:120px minmax(0,1fr)}.photo-tabs{grid-template-columns:1fr}.whatsapp-toggle-card{padding:16px}}


/* ==========================================================
   V3 - CİNSİYETE GÖRE OTOMATİK VARSAYILAN PROFİL İKONU
   ========================================================== */
.default-avatar{font-size:31px;background:linear-gradient(180deg,#ffffff,#eef2f7);border-color:#b8c6d9;padding:0;overflow:hidden}
.default-avatar.female{background:linear-gradient(180deg,#ffffff,#f1f4fa)}
.default-avatar.male{background:linear-gradient(180deg,#ffffff,#eef3f8)}
.default-avatar .avatar-svg{width:100%;height:100%;display:block}
@media(max-width:800px){.default-avatar{font-size:26px}}


/* ==========================================================
   V4 - DERS GIRIS MODULU
   ========================================================== */
.align-left{text-align:left}
.lesson-form{max-width:820px;margin-left:auto;margin-right:auto;display:grid;gap:18px}
.lesson-form .form-intro h3{font-size:clamp(26px,4.6vw,38px)}
.lesson-form .form-intro p{font-size:15px}
.lesson-program-head{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;align-items:start}
.lesson-program-links{display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.text-link-btn{border:0;background:transparent;padding:0;color:#28d1ad;text-decoration:underline;font-weight:900;font-size:15px;cursor:pointer}
.text-link-btn.danger{color:#ff8fc1}
.checklist-card{padding:14px 16px;background:#040a1d;border:1px solid #dfe7ff;border-radius:24px}
.program-list{display:grid;gap:10px;max-height:480px;overflow:auto;padding:6px 4px 12px}
.program-item{display:grid;grid-template-columns:30px 0 1fr;align-items:center;gap:14px;padding:10px 10px;color:#f6f8ff;font-size:16px;font-weight:500;cursor:pointer}
.program-item input{width:26px;height:26px;margin:0;accent-color:#ffffff}
.program-box{display:none}
.program-name{line-height:1.45}
.sub-card{padding:18px;border:1px solid var(--line);border-radius:20px;background:#0a1126}
.sub-card-head{display:grid;gap:6px;margin-bottom:14px}
.sub-card-head strong{font-size:18px}
.sub-card-head small{color:var(--muted)}
.program-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px}
.small-btn{min-height:52px}
.program-manager-list{display:grid;gap:10px;margin-top:14px}
.manager-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.manager-input{min-width:0}
.manager-actions{display:flex;gap:8px;flex-wrap:wrap}
.lesson-submit{min-height:64px;font-size:17px;background:linear-gradient(90deg,#8754f4,#d14df3)}
.single-action{justify-content:stretch}
.single-action .btn{width:100%}
.empty-state.compact{padding:18px;font-size:14px}
@media(max-width:800px){
  .lesson-program-head{grid-template-columns:1fr}
  .program-admin-grid{grid-template-columns:1fr}
  .manager-row{grid-template-columns:1fr}
  .lesson-program-links{gap:12px}
}


/* ==========================================================
   V5 - ODEME AL / GUVENLI TAHSILAT PANELI
   ========================================================== */
.payment-form{
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
  display:grid;
  gap:22px;
  padding-top:8px;
}
.payment-form .form-intro{
  padding-bottom:10px;
}
.payment-form .form-intro h3{
  font-size:clamp(26px,4.5vw,38px);
  letter-spacing:.02em;
}
.payment-form .form-intro p{
  color:#75829d;
  font-size:14px;
}
.payment-debt-info{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 18px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#080f22;
}
.payment-debt-info[hidden]{
  display:none;
}
.payment-debt-info span{
  color:#8f99b2;
  font-size:13px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.payment-debt-info strong{
  color:#ff6b8d;
  font-size:20px;
}
.payment-submit{
  min-height:58px;
  border:0;
  color:#110900;
  background:linear-gradient(90deg,#ff9d00,#ff6a00);
  box-shadow:0 12px 28px rgba(255,123,0,.17);
  font-size:16px;
  letter-spacing:.035em;
}
.payment-submit:disabled{
  opacity:.6;
  cursor:not-allowed;
}
@media(max-width:600px){
  .payment-form{
    gap:18px;
  }
  .payment-submit{
    min-height:56px;
    font-size:14px;
  }
}

.payment-history-shell{
  max-width:980px;
  margin:34px auto 0;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:var(--panel2);
}
.payment-history-head{
  padding:24px 26px 12px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.payment-history-head h3{
  margin:0;
  font-size:24px;
  letter-spacing:.04em;
}
.payment-history-head p{
  margin:7px 0 0;
  color:var(--muted);
}
.payment-history-count-badge{
  min-width:94px;
  min-height:44px;
  padding:0 16px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#1b2842;
  color:#a8b6cf;
  font-weight:900;
  white-space:nowrap;
}
.payment-history-controls{
  padding:0 26px 18px;
}
.payment-history-content{
  border-top:1px solid var(--line);
}
.payment-history-scroll-note{
  padding:0 26px 12px;
  color:var(--muted);
  font-size:12px;
}
.payment-history-table-wrap{
  max-height:660px;
  overflow-x:auto;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
.payment-history-table thead th{
  position:sticky;
  top:0;
  z-index:2;
  background:var(--panel2);
}
.payment-history-table{
  width:100%;
  min-width:760px;
  border-collapse:collapse;
}
.payment-history-table th,
.payment-history-table td{
  padding:18px 20px;
  text-align:left;
  border-bottom:1px solid var(--line);
  vertical-align:middle;
}
.payment-history-table th{
  color:#8c97ad;
  font-size:12px;
  letter-spacing:.09em;
}
.payment-history-table td{
  color:var(--text);
  font-size:14px;
}
.payment-history-name{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
}
.payment-history-name .customer-dot{
  flex:0 0 auto;
}
.payment-amount-value{
  color:#13d7ae;
  font-weight:900;
}
.payment-history-mobile{
  display:none;
  max-height:760px;
  overflow-y:auto;
}
.payment-mobile-card{
  display:grid;
  gap:10px;
  padding:18px;
  border-bottom:1px solid var(--line);
}
.payment-mobile-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.payment-mobile-date{
  color:#7b5cff;
  font-weight:900;
}
.payment-mobile-time,
.payment-mobile-account{
  color:var(--muted);
  font-size:13px;
}
html[data-theme="light"] .payment-history-shell{
  background:#fff;
}
html[data-theme="light"] .payment-history-count-badge{
  background:#eef3f8;
  color:#60708a;
}
html[data-theme="light"] .payment-history-table thead th{
  background:#fff;
}
@media(max-width:760px){
  .payment-history-shell{
    border-radius:20px;
    margin-top:26px;
  }
  .payment-history-head{
    padding:20px 18px 10px;
    display:grid;
  }
  .payment-history-controls{
    padding:0 18px 18px;
  }
  .payment-history-scroll-note{
    padding:0 18px 12px;
  }
  .payment-history-table-wrap{
    display:none;
  }
  .payment-history-mobile{
    display:grid;
    max-height:720px;
  }
}


/* ==========================================================
   V6 - AYDINLIK / KARANLIK TEMA
   ========================================================== */
html{
  color-scheme:dark;
}
html[data-theme="light"]{
  color-scheme:light;
  --bg:#f4f6fa;
  --panel:#ffffff;
  --panel2:#f7f9fc;
  --line:#d8dee9;
  --text:#172033;
  --muted:#6f7889;
  --teal:#009d88;
  --blue:#2f6feb;
  --purple:#6951dd;
  --danger:#dc3e63;
  --warning:#b97700;
}

.header-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.theme-toggle{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 14px;
  border-radius:13px;
  border:1px solid var(--line);
  background:#0b1225;
  color:#dbe2f1;
  font-weight:900;
  cursor:pointer;
}
.login-theme-toggle{
  position:fixed;
  right:18px;
  top:18px;
  z-index:20;
}
html[data-theme="light"] .theme-toggle{
  background:#ffffff;
  color:#263247;
  border-color:#cfd6e2;
  box-shadow:0 5px 18px rgba(25,38,60,.08);
}
html[data-theme="light"] body,
html[data-theme="light"] .app-page{
  background:#f4f6fa;
  color:#172033;
}
html[data-theme="light"] .login-page{
  background:
    radial-gradient(circle at top,#e8eefc 0,#f4f6fa 48%);
}
html[data-theme="light"] .login-card,
html[data-theme="light"] .panel{
  background:#ffffff;
  border-color:#d9e0ea;
  box-shadow:0 18px 55px rgba(38,53,78,.10);
}
html[data-theme="light"] .app-header{
  background:rgba(255,255,255,.95);
  border-bottom-color:#dde3ec;
}
html[data-theme="light"] .brand-ball{
  background:linear-gradient(135deg,#eef4ff,#ffffff);
  border-color:#d4dce8;
}
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{
  background:#ffffff;
  color:#172033;
  border-color:#cfd7e3;
}
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder{
  color:#8d96a7;
}
html[data-theme="light"] .nav-pill{
  background:#ffffff;
  color:#586378;
  border-color:#d3dae6;
}
html[data-theme="light"] .nav-pill.active{
  color:#ffffff;
}
html[data-theme="light"] .student-card{
  background:#f8fafc;
  border-color:#d9e0e9;
}
html[data-theme="light"] .avatar,
html[data-theme="light"] .default-avatar,
html[data-theme="light"] .debt-badge,
html[data-theme="light"] .action-btn,
html[data-theme="light"] .whatsapp-toggle-card,
html[data-theme="light"] .photo-tabs,
html[data-theme="light"] .photo-drop-button,
html[data-theme="light"] .checklist-card,
html[data-theme="light"] .sub-card,
html[data-theme="light"] .payment-debt-info{
  background:#ffffff;
  border-color:#d3dbe7;
  color:#172033;
}
html[data-theme="light"] .default-avatar.female{
  background:linear-gradient(180deg,#ffffff,#f7f9fc);
}
html[data-theme="light"] .default-avatar.male{
  background:linear-gradient(180deg,#ffffff,#f4f8fc);
}
html[data-theme="light"] .student-main h3,
html[data-theme="light"] .whatsapp-toggle-card strong,
html[data-theme="light"] .program-item,
html[data-theme="light"] .sub-card-head strong{
  color:#172033;
}
html[data-theme="light"] .student-meta,
html[data-theme="light"] .field-help,
html[data-theme="light"] .whatsapp-toggle-card small,
html[data-theme="light"] .sub-card-head small{
  color:#6f7889;
}
html[data-theme="light"] .manager-input{
  background:#ffffff;
}
html[data-theme="light"] .photo-tab.active{
  background:#eef3fb;
  color:#009d88;
}
html[data-theme="light"] .btn-secondary{
  background:#ffffff;
  color:#354157;
  border-color:#cfd7e3;
}
html[data-theme="light"] .btn-danger-outline{
  background:#fff1f4;
  color:#c83d5f;
  border-color:#efc3cd;
}
html[data-theme="light"] .empty-state{
  border-color:#cdd5e0;
  color:#707b8f;
}
html[data-theme="light"] .checklist-card{
  border-color:#cfd7e3;
}
html[data-theme="light"] .program-item input{
  accent-color:#2f6feb;
}

@media(max-width:620px){
  .theme-toggle{
    min-height:42px;
    padding:0 11px;
    font-size:12px;
  }
  .header-actions{
    gap:7px;
  }
  .login-theme-toggle{
    top:12px;
    right:12px;
  }
}


/* ==========================================================
   V7 - KORDAJ KAYIT PROTOKOLU
   ========================================================== */
.kordaj-kicker{
  color:#ff2d88;
}
.stringing-form{
  max-width:800px;
  margin-left:auto;
  margin-right:auto;
  display:grid;
  gap:20px;
}
.stringing-intro h3{
  color:#ff2d88;
  font-size:clamp(27px,4.6vw,40px);
}
.stringing-intro p{
  color:#7d879d;
}
.string-brand-block{
  display:grid;
  gap:9px;
}
.string-brand-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
}
.string-manage-link{
  color:#ff70ad;
}
.string-catalog-admin{
  border-color:#48203a;
}
.btn-string-small{
  min-height:52px;
  background:linear-gradient(90deg,#f42a86,#ff4d8f);
  color:#fff;
}
.stringing-two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.stringing-submit{
  min-height:62px;
  color:#fff;
  background:linear-gradient(90deg,#f1288b,#ff275b);
  box-shadow:0 14px 30px rgba(255,39,108,.18);
  font-size:17px;
  letter-spacing:.03em;
}
html[data-theme="light"] .stringing-intro h3,
html[data-theme="light"] .kordaj-kicker{
  color:#d91f70;
}
html[data-theme="light"] .string-manage-link{
  color:#c83278;
}
html[data-theme="light"] .string-catalog-admin{
  border-color:#efd0df;
}
@media(max-width:620px){
  .string-brand-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .stringing-two-col{
    grid-template-columns:1fr;
    gap:18px;
  }
  .stringing-submit{
    min-height:58px;
    font-size:15px;
  }
}


/* ==========================================================
   V9 - AYDINLIK MOD AKTIF MENU DUZELTMESI
   ========================================================== */
html[data-theme="light"] .nav-pill.active{
  background:linear-gradient(135deg,#3e8cff,#715aff);
  color:#ffffff;
  border-color:transparent;
  box-shadow:0 8px 20px rgba(75,93,220,.18);
}


/* ==========================================================
   V10 - KORDAJLAR KAYIT LISTESI
   ========================================================== */
.stringing-list-shell{
  max-width:1050px;
  margin:20px auto 0;
  border:1px solid var(--line);
  border-radius:26px;
  overflow:hidden;
  background:var(--panel2);
}
.stringing-list-head{
  padding:28px 30px 12px;
}
.stringing-list-head h3{
  margin:0;
  font-size:25px;
  letter-spacing:.04em;
}
.stringing-list-head p{
  margin:7px 0 0;
  color:var(--muted);
}
.stringing-filters{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:14px;
  padding:14px 30px 28px;
}
.stringing-sort-row{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
}
.stringing-count-badge{
  min-width:86px;
  min-height:50px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#1a2740;
  color:#aab6ca;
  font-weight:900;
}
.stringing-records-content{
  border-top:1px solid var(--line);
}
.stringing-table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.stringing-table{
  width:100%;
  border-collapse:collapse;
  min-width:980px;
}
.stringing-table th,
.stringing-table td{
  padding:20px 24px;
  text-align:left;
  border-bottom:1px solid var(--line);
  vertical-align:middle;
}
.stringing-table th{
  color:#8c97ad;
  font-size:12px;
  letter-spacing:.09em;
}
.stringing-table td{
  color:var(--text);
  font-size:14px;
}
.customer-dot{
  display:inline-block;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#ff9d00;
  margin-right:10px;
  box-shadow:0 0 0 3px rgba(255,157,0,.08);
}
.string-chip{
  display:inline-block;
  max-width:300px;
  padding:8px 11px;
  border:1px solid #455269;
  border-radius:11px;
  color:#aab4c7;
  line-height:1.35;
}
.tension-chip{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:10px;
  border:1px solid #6b4b12;
  background:#221708;
  color:#ffbd32;
  font-weight:900;
}
.fee-value{
  color:#10c98d;
}
.stringing-mobile-list{
  display:none;
}

.stringing-form-actions{justify-content:stretch}
.stringing-form-actions .btn{flex:1 1 240px}
.stringing-actions-cell{width:180px}
.stringing-row-actions{display:flex;gap:8px;flex-wrap:wrap}
.stringing-edit-btn,
.stringing-delete-btn,
.stringing-cancel-btn{border:1px solid var(--line);border-radius:12px;min-height:40px;padding:0 14px;font-weight:900;cursor:pointer}
.stringing-edit-btn{background:#13233a;color:#ffbf5e;border-color:#54411d}
.stringing-delete-btn{background:#28111b;color:#ff87a1;border-color:#5b2435}
.stringing-cancel-btn{background:#18253d;color:#cbd7ea;border-color:#33445f}
.stringing-mobile-actions{display:flex;gap:10px;flex-wrap:wrap}
.stringing-mobile-actions .stringing-edit-btn,
.stringing-mobile-actions .stringing-delete-btn{flex:1 1 160px}
html[data-theme="light"] .stringing-edit-btn{background:#fff8eb;color:#a56400;border-color:#ecd4a3}
html[data-theme="light"] .stringing-delete-btn{background:#fff1f5;color:#c33a5d;border-color:#e9bfd0}
html[data-theme="light"] .stringing-cancel-btn{background:#f4f7fb;color:#405372;border-color:#d5deea}

html[data-theme="light"] .stringing-list-shell{
  background:#ffffff;
}
html[data-theme="light"] .stringing-count-badge{
  background:#eef3f8;
  color:#60708a;
}
html[data-theme="light"] .string-chip{
  border-color:#d3dbe7;
  color:#44526a;
  background:#f9fbfd;
}
html[data-theme="light"] .tension-chip{
  border-color:#f0cf8e;
  background:#fff8e8;
  color:#a66500;
}
html[data-theme="light"] .fee-value{
  color:#008b67;
}
@media(max-width:760px){
  .stringing-list-shell{
    border-radius:20px;
  }
  .stringing-list-head{
    padding:22px 18px 10px;
  }
  .stringing-filters{
    grid-template-columns:1fr;
    padding:12px 18px 20px;
  }
  .stringing-sort-row{
    grid-column:auto;
    grid-template-columns:minmax(0,1fr) auto;
  }
  .stringing-table-wrap{
    display:none;
  }
  .stringing-mobile-list{
    display:grid;
  }
  .stringing-mobile-card{
    display:grid;
    gap:12px;
    padding:18px;
    border-bottom:1px solid var(--line);
  }
  .stringing-mobile-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
  }
  .stringing-mobile-model{
    color:var(--muted);
    line-height:1.45;
  }
  .stringing-mobile-meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px;
    color:var(--muted);
    font-size:13px;
  }
  .stringing-form-actions{
    flex-direction:column;
  }
  .stringing-form-actions .btn{
    width:100%;
  }
}
@media(max-width:440px){
  .stringing-sort-row{
    grid-template-columns:1fr;
  }
  .stringing-count-badge{
    min-width:0;
    width:100%;
  }
}

/* ==========================================================
   V11 - KASA OZETI
   ========================================================== */
.cash-shell{
  max-width:980px;
  margin:18px auto 0;
  padding:12px 0 0;
}
.cash-filter-card{
  border:1px solid var(--line);
  background:var(--panel2);
  border-radius:26px;
  padding:22px 22px 20px;
}
.cash-filter-title{
  color:#aeb7cc;
  font-size:15px;
  font-weight:900;
  margin-bottom:14px;
}
.cash-filter-pills{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}
.cash-filter-pill{
  min-height:48px;
  padding:0 22px;
  border-radius:18px;
  border:1px solid transparent;
  background:#091127;
  color:#bcc5d8;
  font-weight:900;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
}
.cash-filter-pill.active{
  background:linear-gradient(135deg,#24d1ff,#18bee5);
  color:#04131a;
  box-shadow:0 12px 28px rgba(36,209,255,.22);
}
.cash-cards-grid{
  display:grid;
  gap:20px;
  margin-top:24px;
}
.cash-summary-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:172px;
  padding:28px 28px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.08);
  position:relative;
  overflow:hidden;
}
.cash-summary-card::after{
  content:"";
  position:absolute;
  right:-24px;
  bottom:-32px;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.12),rgba(255,255,255,0) 65%);
  pointer-events:none;
}
.cash-summary-card h3{
  margin:0 0 18px;
  font-size:20px;
  letter-spacing:.08em;
}
.cash-summary-card strong{
  display:block;
  font-size: clamp(34px, 5vw, 56px);
  line-height:1;
  letter-spacing:-.02em;
}
.cash-card-icon{
  width:90px;
  height:90px;
  border-radius:22px;
  display:grid;
  place-items:center;
  font-size:40px;
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(9,17,39,.45);
  backdrop-filter:blur(4px);
}
.cash-summary-card.income{
  background:linear-gradient(135deg,rgba(5,56,58,.95),rgba(11,50,72,.95));
  border-color:rgba(33,190,154,.28);
}
.cash-summary-card.income strong{color:#17e0ad}
.cash-summary-card.stringing{
  background:linear-gradient(135deg,rgba(28,25,82,.95),rgba(26,20,62,.95));
  border-color:rgba(126,103,255,.28);
}
.cash-summary-card.stringing strong{color:#8f87ff}
.cash-summary-card.total{
  background:linear-gradient(135deg,rgba(3,60,80,.96),rgba(6,35,65,.96));
  border-color:rgba(45,200,255,.28);
}
.cash-summary-card.total strong{color:#21d8ff}
.cash-summary-card.receivable{
  background:linear-gradient(135deg,rgba(56,41,8,.96),rgba(31,24,13,.96));
  border-color:rgba(255,198,59,.28);
}
.cash-summary-card.receivable strong{color:#ffc31d}
.cash-message{
  text-align:center;
  margin-top:16px;
}
html[data-theme="light"] .cash-filter-card{
  background:#ffffff;
  border-color:#d9e0ea;
  box-shadow:0 18px 55px rgba(38,53,78,.10);
}
html[data-theme="light"] .cash-filter-title{color:#556276}
html[data-theme="light"] .cash-filter-pill{
  background:#edf2f8;
  color:#536174;
  border-color:#d8e0ea;
  box-shadow:none;
}
html[data-theme="light"] .cash-filter-pill.active{
  background:linear-gradient(135deg,#29d2ff,#18bde2);
  color:#06212d;
  border-color:transparent;
}
html[data-theme="light"] .cash-summary-card{
  box-shadow:0 14px 34px rgba(35,45,72,.08);
}
html[data-theme="light"] .cash-summary-card h3{color:#dce5f2}
html[data-theme="light"] .cash-card-icon{
  background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.22);
}
@media(max-width:760px){
  .cash-filter-card{
    border-radius:22px;
    padding:18px 16px;
  }
  .cash-filter-pills{
    gap:10px;
  }
  .cash-filter-pill{
    min-height:44px;
    padding:0 16px;
    font-size:14px;
  }
  .cash-cards-grid{
    gap:16px;
  }
  .cash-summary-card{
    min-height:140px;
    padding:22px 18px;
    border-radius:24px;
  }
  .cash-summary-card h3{
    font-size:16px;
    margin-bottom:14px;
  }
  .cash-card-icon{
    width:74px;
    height:74px;
    font-size:32px;
  }
}
@media(max-width:480px){
  .cash-summary-card{
    align-items:flex-start;
  }
  .cash-summary-card strong{
    font-size: clamp(24px, 9vw, 38px);
  }
  .cash-card-icon{
    width:62px;
    height:62px;
    font-size:28px;
    border-radius:18px;
  }
}


/* ==========================================================
   V13 - DERS GIRIS LISTESI
   ========================================================== */
.lesson-list-kicker{color:#7b5cff}
.lesson-list-shell{
  max-width:1050px;
  margin:20px auto 0;
  border:1px solid var(--line);
  border-radius:26px;
  overflow:hidden;
  background:var(--panel2);
}
.lesson-list-head{
  padding:28px 30px 12px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}
.lesson-list-head h3{margin:0;font-size:25px;letter-spacing:.04em}
.lesson-list-head p{margin:7px 0 0;color:var(--muted)}
.today-lesson-badge{
  min-height:44px;
  display:flex;
  align-items:center;
  padding:0 16px;
  border-radius:14px;
  background:#202b42;
  color:#aab5c8;
  font-weight:900;
  white-space:nowrap;
}
.today-lesson-badge.has-lessons{
  background:#08392f;
  color:#20d6aa;
  border:1px solid #11604e;
}
.lesson-list-filters{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:14px;
  padding:14px 30px 28px;
}
.lesson-list-sort-row{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
}
.lesson-list-count-badge{
  min-width:86px;
  min-height:50px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#1a2740;
  color:#aab6ca;
  font-weight:900;
}
.lesson-records-content{border-top:1px solid var(--line)}
.lesson-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.lesson-table{width:100%;border-collapse:collapse;min-width:900px}
.lesson-table th,.lesson-table td{padding:20px 22px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}
.lesson-table th{color:#8c97ad;font-size:12px;letter-spacing:.09em}
.lesson-table td{color:var(--text);font-size:14px}
.lesson-note-cell{display:block;max-width:320px;color:var(--muted);line-height:1.45}
.lesson-delete-btn{
  min-height:42px;
  padding:0 17px;
  border-radius:12px;
  border:1px solid #63182f;
  background:#3b1021;
  color:#ff7897;
  font-weight:900;
}
.lesson-delete-btn:disabled{opacity:.55;cursor:not-allowed}
.lesson-mobile-list{display:none}
html[data-theme="light"] .lesson-list-shell{background:#fff}
html[data-theme="light"] .lesson-list-count-badge{background:#eef3f8;color:#60708a}
html[data-theme="light"] .today-lesson-badge{background:#eef3f8;color:#627087}
html[data-theme="light"] .today-lesson-badge.has-lessons{background:#e7fbf4;color:#007f61;border-color:#bfeadc}
html[data-theme="light"] .lesson-delete-btn{background:#fff0f4;color:#c93357;border-color:#efc0cc}
@media(max-width:760px){
  .lesson-list-shell{border-radius:20px}
  .lesson-list-head{padding:22px 18px 10px;display:grid}
  .today-lesson-badge{width:max-content}
  .lesson-list-filters{grid-template-columns:1fr;padding:12px 18px 20px}
  .lesson-list-sort-row{grid-column:auto;grid-template-columns:minmax(0,1fr) auto}
  .lesson-table-wrap{display:none}
  .lesson-mobile-list{display:grid}
  .lesson-mobile-card{display:grid;gap:12px;padding:18px;border-bottom:1px solid var(--line)}
  .lesson-mobile-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
  .lesson-mobile-date{font-weight:900;color:#7b5cff}
  .lesson-mobile-info{display:grid;gap:7px;color:var(--muted);font-size:13px;line-height:1.45}
  .lesson-delete-btn.mobile{width:100%;margin-top:2px}
}
@media(max-width:440px){
  .lesson-list-sort-row{grid-template-columns:1fr}
  .lesson-list-count-badge{min-width:0;width:100%}
}


body.modal-open{overflow:hidden}
.modal-shell[hidden]{display:none!important}
.modal-shell{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:18px}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.56);backdrop-filter:blur(4px)}
.modal-card{position:relative;z-index:1;width:min(760px,100%);max-height:min(92vh,980px);overflow:auto;background:rgba(13,20,40,.98);border:1px solid var(--line);border-radius:28px;box-shadow:0 24px 70px rgba(0,0,0,.45);padding:26px}
.modal-medium{width:min(760px,100%)}
.modal-small{width:min(560px,100%)}
.modal-wide{width:min(1180px,100%)}
.modal-close{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:#18233e;color:#cbd8ee;font-size:20px;font-weight:900}
.modal-title-block{display:grid;gap:6px;margin-bottom:20px;padding-right:52px}
.modal-title-block h3{margin:0;font-size:20px}
.modal-title-block p{margin:0;color:var(--muted)}
.modal-title-block.compact-gap{margin-bottom:12px}
.modal-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.modal-form .full{grid-column:1 / -1}
.single-column-form{grid-template-columns:1fr}
.quick-edit-avatar-wrap{display:grid;place-items:center;margin-top:4px}
.quick-edit-photo,.detail-photo{width:96px;height:96px;object-fit:cover;border-radius:22px;border:2px solid rgba(255,255,255,.18);background:#0a1020}
.quick-edit-avatar-wrap .avatar{width:96px;height:96px;font-size:44px;border-radius:22px}
.plan-checklist-card{max-height:260px;overflow:auto}
.detail-modal-card{padding:22px 24px 28px}
.detail-modal-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}
.back-chip{min-height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:#091022;color:#dce4f7;font-weight:800}
.detail-topbar-kicker{color:#7f8aab;font-size:12px;font-weight:900;letter-spacing:.14em}
.detail-page-grid{display:grid;gap:18px}
.detail-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;border:1px solid var(--line);border-radius:24px;background:#0b1328;padding:22px}
.detail-hero h3{margin:0;font-size:24px}
.detail-hero-meta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:8px;color:var(--muted);font-size:14px}
.detail-debt-chip{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:#071022;color:#aeb9d1;font-weight:800}
.detail-debt-chip strong{color:var(--danger);font-size:16px}
.detail-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.detail-summary-card{border:1px solid var(--line);border-radius:22px;background:#081127;padding:18px 20px;display:grid;gap:8px;justify-items:center;text-align:center}
.detail-summary-card h4{margin:0;color:#95a1bb;font-size:13px;letter-spacing:.12em}
.detail-summary-card strong{font-size:24px}
.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.detail-panel{border:1px solid var(--line);border-radius:24px;background:#081127;padding:18px 20px;min-height:360px}
.detail-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.detail-panel-head h4{margin:0;font-size:16px;letter-spacing:.03em}
.detail-panel-head .accent-lessons{color:#cf8cff}
.detail-panel-head .accent-payments{color:#26dfb6}
.detail-scroll{max-height:420px;overflow:auto;padding-right:4px;margin-top:14px;display:grid;gap:14px}
.detail-record-card{border:1px solid var(--line);border-radius:18px;background:#0d1832;padding:16px}
.detail-record-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.detail-record-title{font-weight:900;font-size:16px}
.detail-record-date{color:#93a0bb;font-size:13px;white-space:nowrap}
.detail-record-amount{font-weight:900;font-size:18px}
.detail-record-amount.plus{color:#b06dff}
.detail-record-amount.minus{color:#16d9af}
.detail-record-meta{display:grid;gap:8px;color:#d3dcf1;font-size:14px}
.detail-note-chip{padding:10px 12px;border-radius:12px;background:#111f3f;color:#dfe7fb}
.detail-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:12px}
.detail-link-btn{border:0;background:transparent;padding:0;color:#24deb4;font-weight:800}
.detail-link-btn.danger{color:#ff6f94}
.detail-empty{padding:18px;text-align:center;border:1px dashed var(--line);border-radius:16px;color:var(--muted)}
.align-end{justify-content:flex-end}
html[data-theme="light"] .modal-card{background:rgba(255,255,255,.98);box-shadow:0 24px 60px rgba(15,27,54,.18)}
html[data-theme="light"] .modal-close{background:#eff3fb;color:#33425f}
html[data-theme="light"] .back-chip{background:#f4f7fb;color:#2b3b58}
html[data-theme="light"] .detail-hero,
html[data-theme="light"] .detail-summary-card,
html[data-theme="light"] .detail-panel,
html[data-theme="light"] .detail-record-card,
html[data-theme="light"] .detail-debt-chip,
html[data-theme="light"] .detail-note-chip{background:#fff}
@media(max-width:900px){
  .detail-columns,.detail-summary-grid{grid-template-columns:1fr}
}
@media(max-width:800px){
  .modal-shell{padding:10px}
  .modal-card{padding:18px;border-radius:22px;max-height:94vh}
  .modal-form{grid-template-columns:1fr}
  .detail-modal-topbar{align-items:flex-start;flex-direction:column}
  .detail-hero{grid-template-columns:1fr;justify-items:center;text-align:center}
  .detail-hero-meta{justify-content:center}
  .detail-summary-card strong{font-size:22px}
}


/* ==========================================================
   V16 - ANRENMAN PLANI PROGRAMLARI AYRI YONETIM
   ========================================================== */
.plan-program-admin{
  border-color:rgba(22,199,173,.35);
  background:#0b1728;
}
.plan-program-admin .program-manager-list{
  max-height:250px;
  overflow:auto;
}
html[data-theme="light"] .plan-program-admin{
  background:#f8fbfc;
  border-color:#bfe9e1;
}


/* ==========================================================
   V17 - KISISSEL TENIS PROFILI
   ========================================================== */
.public-profile-page{
  min-height:100vh;
  background:#f4f7f5;
  color:#16251f;
}
.public-profile-shell{
  width:min(1080px,calc(100% - 28px));
  margin:0 auto;
  padding:28px 0 60px;
}
.public-profile-brand{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:22px;
}
.public-profile-brand .brand-ball{
  background:#ffffff;
  border-color:#d7e2dd;
}
.public-profile-brand h1{margin:0;font-size:24px}
.public-profile-brand p{margin:5px 0 0;color:#078b68;font-weight:900}
.public-profile-loading,.public-profile-error{
  padding:34px;
  border-radius:22px;
  background:#fff;
  border:1px solid #dbe5e0;
  text-align:center;
  color:#67756f;
}
.public-profile-error{color:#b43e58}
.public-profile-content{display:grid;gap:20px}
.public-profile-hero{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:20px;
  align-items:center;
  padding:24px;
  border-radius:26px;
  background:#ffffff;
  border:1px solid #dbe5e0;
  box-shadow:0 14px 38px rgba(32,67,54,.07);
}
.public-profile-hero .avatar{width:98px;height:98px;font-size:46px;background:#eef6f2;border-color:#d3e3db}
.public-profile-hero h2{margin:7px 0 0;font-size:30px}
.public-profile-meta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:8px;color:#6e7c76;font-size:14px}
.public-profile-hero .detail-debt-chip{background:#f7faf8;border-color:#d7e2dd;color:#65736d}
.public-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.public-summary-card{
  padding:22px;
  border-radius:22px;
  background:#ffffff;
  border:1px solid #dbe5e0;
  display:grid;
  gap:8px;
  text-align:center;
}
.public-summary-card span{font-size:12px;font-weight:900;letter-spacing:.1em;color:#7b8883}
.public-summary-card strong{font-size:26px;color:#078b68}
.public-history-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}
.public-history-card{background:#ffffff;border:1px solid #dbe5e0;border-radius:24px;padding:20px;min-width:0}
.public-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid #e2eae6}
.public-history-head h3{margin:0;font-size:18px}
.public-history-head span{color:#7b8883;font-size:13px}
.public-history-list{display:grid;gap:12px;margin-top:14px;max-height:620px;overflow:auto;padding-right:3px}
.public-record-card{border:1px solid #dde6e2;border-radius:18px;padding:16px;background:#fbfdfc}
.public-record-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.public-record-amount{font-weight:900;color:#8b55d9}
.public-payment-amount{font-weight:900;color:#079d76}
.public-score{margin-top:12px;color:#5f6d67;font-size:14px}
.public-programs{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.public-program-chip{padding:7px 10px;border-radius:999px;background:#eef7f3;color:#246653;font-size:13px}
.public-note{margin-top:10px;padding:10px 12px;border-radius:12px;background:#f4f6fb;color:#5c6579;font-size:13px}
.public-muted{color:#89958f;font-size:13px}
.public-profile-page .detail-empty{background:#fbfdfc;border-color:#dce5e1;color:#819089}
@media(max-width:780px){
  .public-profile-shell{width:min(100% - 20px,1080px);padding-top:18px}
  .public-profile-brand h1{font-size:19px}
  .public-profile-hero{grid-template-columns:1fr;justify-items:center;text-align:center;padding:20px}
  .public-profile-meta{justify-content:center}
  .public-summary-grid,.public-history-grid{grid-template-columns:1fr}
  .public-profile-hero h2{font-size:25px}
}


/* ==========================================================
   V19 - KISA LINKLI SPORCU BILGI SISTEMI
   ========================================================== */
.athlete-profile-page{margin:0;min-height:100vh;background:radial-gradient(circle at 80% 5%,#06212a 0,#07091e 32%,#090520 70%);color:#fff;font-family:Inter,Arial,sans-serif}
.athlete-profile-shell{width:min(820px,calc(100% - 28px));margin:0 auto;padding:28px 0 70px}
.athlete-profile-head{text-align:center;padding:0 10px 28px}
.athlete-live-pill{display:inline-flex;align-items:center;gap:12px;padding:10px 22px;border:1px solid #273452;border-radius:999px;background:#11192d;color:#aab5cc;font-weight:900;letter-spacing:.17em;font-size:12px}
.athlete-live-pill span{width:13px;height:13px;border-radius:50%;background:#13c7a0;box-shadow:0 0 18px #13c7a0}
.athlete-profile-head h1{font-size:clamp(30px,7vw,48px);margin:24px 0 8px}.athlete-profile-head h1 em{font-style:normal;color:#22d5bd}
.athlete-profile-head p{margin:0;color:#5e6880;letter-spacing:.20em;font-weight:700}
.athlete-state-card{padding:30px;border:1px solid #24304b;border-radius:24px;background:#0d1428;text-align:center;color:#9ba8c1}.athlete-state-card.error{color:#ff829a}
.athlete-profile-content{display:grid;gap:24px}
.athlete-main-card{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;border:1px solid #24304b;border-radius:32px;padding:28px;background:linear-gradient(135deg,#101929,#09202c);box-shadow:0 18px 55px rgba(0,0,0,.22)}
.athlete-initial-avatar{width:150px;height:150px;border-radius:38px;background:#159f96;border:4px solid #35445d;display:grid;place-items:center;font-size:56px;position:relative}.athlete-initial-avatar::after{content:"";position:absolute;width:30px;height:30px;border-radius:50%;background:#05c88e;right:-2px;bottom:-4px;border:5px solid #0b1726}
.athlete-label{color:#18cda6;font-weight:900;letter-spacing:.17em;font-size:12px}.athlete-main-info h2{font-size:34px;margin:13px 0 7px}.athlete-main-info p{margin:0;color:#7c88a2;font-size:16px}
.athlete-account-row{grid-column:1/-1;border-top:1px solid #26334a;margin-top:10px;padding-top:22px;display:flex;justify-content:space-between;align-items:end;gap:18px}.athlete-account-row>div:first-child>span{display:block;color:#75829d;font-size:12px;font-weight:900;letter-spacing:.12em}.athlete-account-row>div:first-child>strong{display:block;margin-top:8px;font-size:18px}
.athlete-debt-pill{min-width:220px;padding:18px 24px;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;border:1px solid;box-shadow:0 12px 32px rgba(0,0,0,.28)}
.athlete-debt-pill span{display:block;font-size:11px;font-weight:900;letter-spacing:.15em}
.athlete-debt-pill strong{display:block;margin:0;font-size:29px;line-height:1.05;font-weight:950}
.athlete-debt-note{display:block;margin-top:4px;font-size:11px;line-height:1.35;font-weight:700;letter-spacing:.02em;opacity:.96}
.athlete-debt-pill.debt{background:linear-gradient(135deg,#5a1230,#2e0b1d);border-color:#ff4f86;box-shadow:0 0 0 1px rgba(255,79,134,.12),0 14px 34px rgba(255,45,106,.22)}
.athlete-debt-pill.debt span{color:#ffabc5}.athlete-debt-pill.debt strong{color:#fff}.athlete-debt-pill.debt .athlete-debt-note{color:#ffd2df}
.athlete-debt-pill.credit{background:linear-gradient(135deg,#0c4938,#08251e);border-color:#18d6a0;box-shadow:0 0 0 1px rgba(24,214,160,.12),0 14px 34px rgba(24,214,160,.18)}
.athlete-debt-pill.credit span{color:#a5f3d8}.athlete-debt-pill.credit strong{color:#fff}.athlete-debt-pill.credit .athlete-debt-note{color:#c6f8e8}
.athlete-debt-pill.zero{background:linear-gradient(135deg,#1b2b43,#0f1928);border-color:#4c6488}
.athlete-debt-pill.zero span{color:#a9b8d1}.athlete-debt-pill.zero strong{color:#fff}.athlete-debt-pill.zero .athlete-debt-note{color:#d3dded}
.athlete-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.athlete-stat-card{min-height:160px;border-radius:26px;border:1px solid #27304d;padding:23px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:14px;background:#101229}.athlete-stat-card span{color:#8490a8;font-weight:900;letter-spacing:.06em}.athlete-stat-card b{font-size:24px}.athlete-stat-card strong{grid-column:1/-1;font-size:34px}.athlete-stat-card strong small{font-size:18px;color:#6a7389}.athlete-stat-card.lesson-total{background:linear-gradient(135deg,#17102f,#101329)}.athlete-stat-card.lesson-total strong{color:#ba66ff}.athlete-stat-card.paid-total{background:linear-gradient(135deg,#071c26,#0a1527)}.athlete-stat-card.paid-total strong{color:#12d9a5}.athlete-stat-card.session-total{background:linear-gradient(135deg,#281025,#101229)}.athlete-stat-card.session-total strong{color:#ff4c9a}.athlete-stat-card.score-average{background:linear-gradient(135deg,#201725,#111224)}.athlete-stat-card.score-average strong{color:#ffb81e}
.athlete-history-section{border:1px solid #27324b;border-radius:30px;background:rgba(10,16,35,.88);padding:28px}.athlete-section-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding-bottom:24px;border-bottom:1px solid #243049}.athlete-section-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:#21143a;border:1px solid #57328b;font-size:28px}.athlete-section-icon.payment{background:#0b2e2e;border-color:#165c55}.athlete-section-head h3{margin:0 0 6px;font-size:22px}.athlete-section-head p{margin:0;color:#707d96}.athlete-count-pill{padding:10px 16px;border-radius:999px;font-weight:900}.athlete-count-pill.purple{background:#26143c;border:1px solid #60318b;color:#d49bff}.athlete-count-pill.green{background:#082c2a;border:1px solid #135e54;color:#31e1b7}
.athlete-history-list{display:grid;gap:20px;margin-top:24px}.athlete-lesson-card,.athlete-payment-card{border:1px solid #243149;border-radius:26px;background:#050a1c;padding:24px}.athlete-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.athlete-record-head>div:first-child{display:grid;gap:7px}.athlete-record-head strong{font-size:20px}.athlete-record-head strong i{display:inline-block;width:15px;height:15px;background:#0bd39d;border-radius:50%;margin-right:11px;box-shadow:0 0 15px #0bd39d}.athlete-record-head span{color:#77849c}.athlete-fee{text-align:right;color:#c269ff;font-weight:900;font-size:23px}.athlete-fee small{display:block;color:#525e75;font-size:11px;letter-spacing:.09em;margin-top:8px}
.athlete-score-box{margin-top:24px;border:1px solid #57421f;border-radius:22px;padding:20px;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;background:#191524}.athlete-score-icon{width:54px;height:54px;border-radius:17px;background:#3a2a15;display:grid;place-items:center;font-size:28px}.athlete-score-box b{display:block;color:#ffc02e;letter-spacing:.08em}.athlete-score-box span{display:block;color:#727c92;margin-top:5px}.athlete-score-box>strong{font-size:34px;color:#ffbd1c}.athlete-score-box>strong small{font-size:15px;color:#6e778b}.athlete-score-bar{grid-column:1/-1;height:10px;background:#26354c;border-radius:999px;overflow:hidden}.athlete-score-bar i{display:block;height:100%;background:linear-gradient(90deg,#ffa117,#ff8a14);border-radius:999px}
.athlete-program-box{margin-top:22px;border:1px solid #4d183e;border-radius:24px;background:#190d27;padding:20px}.athlete-program-title{display:flex;align-items:center;gap:14px}.athlete-program-title>span{width:54px;height:54px;border-radius:17px;background:#381027;display:grid;place-items:center;font-size:26px}.athlete-program-title b{display:block;color:#ff86bd;letter-spacing:.07em}.athlete-program-title small{display:block;color:#7e7389;margin-top:5px}.athlete-program-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px}.athlete-program-chips span{padding:11px 14px;border:1px solid #662448;border-radius:13px;background:#3a1030;color:#ff9ac6;font-weight:800}.athlete-note-box{display:flex;gap:14px;align-items:flex-start;margin-top:20px;padding:18px;border:1px solid #243149;border-radius:20px;background:#0e162c}.athlete-note-box>span{font-size:28px}.athlete-note-box b{display:block;color:#8490a8;letter-spacing:.08em}.athlete-note-box p{margin:8px 0 0;color:#dce3f0;font-size:17px}
.athlete-payment-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}.athlete-payment-check{width:64px;height:64px;border-radius:20px;background:#082c2e;border:1px solid #145c58;display:grid;place-items:center;font-size:32px}.athlete-payment-card strong{font-size:20px}.athlete-payment-card span{display:block;color:#77849b;margin-top:6px}.athlete-payment-amount{padding:13px 17px;border-radius:14px;background:#07322e;border:1px solid #145c54;color:#23dfad;font-size:21px;font-weight:900}.athlete-empty{padding:24px;text-align:center;border:1px dashed #2b3650;border-radius:18px;color:#7e8aa2}.athlete-profile-footer{text-align:center;color:#3c465f;letter-spacing:.20em;font-weight:900;font-size:11px;padding:14px}
@media(max-width:640px){.athlete-profile-shell{width:min(100% - 18px,820px);padding-top:20px}.athlete-profile-head h1{font-size:31px}.athlete-profile-head p{font-size:12px}.athlete-main-card{grid-template-columns:100px 1fr;padding:22px 18px;border-radius:28px}.athlete-initial-avatar{width:100px;height:100px;border-radius:26px;font-size:38px}.athlete-main-info h2{font-size:27px}.athlete-account-row{align-items:center}.athlete-debt-pill{min-width:190px;padding:14px 16px}.athlete-debt-pill strong{font-size:24px}.athlete-stats-grid{gap:12px}.athlete-stat-card{min-height:135px;padding:18px}.athlete-stat-card strong{font-size:27px}.athlete-history-section{padding:20px 16px;border-radius:26px}.athlete-section-head{grid-template-columns:auto 1fr}.athlete-count-pill{grid-column:2;justify-self:start}.athlete-section-icon{width:54px;height:54px}.athlete-section-head h3{font-size:19px}.athlete-lesson-card,.athlete-payment-card{padding:18px;border-radius:22px}.athlete-score-box{grid-template-columns:auto 1fr}.athlete-score-box>strong{grid-column:2}.athlete-payment-card{grid-template-columns:auto 1fr}.athlete-payment-amount{grid-column:2;justify-self:start}.athlete-fee{font-size:19px}}
@media(max-width:420px){.athlete-main-card{grid-template-columns:1fr;justify-items:center;text-align:center}.athlete-account-row{width:100%;text-align:left;flex-direction:column;align-items:stretch}.athlete-debt-pill{width:100%;min-width:0}.athlete-stats-grid{grid-template-columns:1fr 1fr}.athlete-stat-card strong{font-size:24px}.athlete-record-head{align-items:flex-start}.athlete-program-chips span{width:100%}}

/* ==========================================================
   V27 - SAYISAL INPUT ARTIR / AZALT OKLARINI KALDIR
   ========================================================== */
input[type="number"]{
  -moz-appearance:textfield;
  appearance:textfield;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}


/* ==========================================================
   V32 - YONETICI AYARLARI
   ========================================================== */
.admin-settings-shell{
  max-width:920px;
  margin:12px auto 0;
  display:grid;
  gap:20px;
}
.admin-settings-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:18px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:24px;
  background:var(--panel2);
}
.admin-settings-icon{
  width:58px;
  height:58px;
  border-radius:18px;
  display:grid;
  place-items:center;
  font-size:28px;
  background:#101d38;
  border:1px solid #283958;
}
.admin-settings-content{min-width:0}
.admin-settings-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:20px;
}
.admin-settings-heading h3{
  margin:0 0 6px;
  font-size:21px;
}
.admin-settings-heading p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
  font-size:14px;
}
.admin-current-badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:#062f2b;
  color:#20d6b2;
  border:1px solid #105249;
  font-weight:900;
  white-space:nowrap;
}
.admin-settings-form{
  display:grid;
  gap:13px;
}
.admin-password-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.admin-password-btn{
  min-height:54px;
  background:linear-gradient(135deg,#6d5dfc,#9548f5);
  color:white;
  border:0;
}
.admin-security-note{
  padding:18px 20px;
  border-radius:18px;
  border:1px solid #1f4e45;
  background:#082c29;
  color:#c8f5ea;
}
.admin-security-note strong{display:block;margin-bottom:6px}
.admin-security-note p{margin:0;color:#a8d8ce;line-height:1.55}
.login-helper{
  display:block;
  margin-top:-4px;
  color:var(--muted);
  font-size:12px;
}
html[data-theme="light"] .admin-settings-card{
  background:#fff;
  border-color:#d8e0eb;
  box-shadow:0 12px 34px rgba(29,43,68,.07);
}
html[data-theme="light"] .admin-settings-icon{
  background:#eef3fb;
  border-color:#d4deeb;
}
html[data-theme="light"] .admin-current-badge{
  background:#e9fbf5;
  color:#087b65;
  border-color:#b7eadb;
}
html[data-theme="light"] .admin-security-note{
  background:#edfbf7;
  border-color:#c4eadf;
  color:#175f52;
}
html[data-theme="light"] .admin-security-note p{color:#527a72}
@media(max-width:720px){
  .admin-settings-card{
    grid-template-columns:1fr;
    padding:18px;
  }
  .admin-settings-icon{width:52px;height:52px}
  .admin-settings-heading{
    flex-direction:column;
    gap:12px;
  }
  .admin-password-grid{grid-template-columns:1fr}
}

/* Negatif hesap / fazla ödeme (avans) */
.debt-badge.credit{border-color:#5b3aa8;background:#17102a}
.debt-badge.credit strong{color:#b99cff}
.detail-debt-chip.credit{border-color:#5b3aa8;background:#17102a}
.detail-debt-chip.credit strong{color:#b99cff}
html[data-theme="light"] .debt-badge.credit,
html[data-theme="light"] .detail-debt-chip.credit{background:#f3efff;border-color:#cbbcff}
html[data-theme="light"] .debt-badge.credit strong,
html[data-theme="light"] .detail-debt-chip.credit strong{color:#6d46c7}

.cash-range-label{margin-top:10px;font-size:.78rem;font-weight:800;color:var(--muted,#64748b);letter-spacing:.02em}
html[data-theme="dark"] .cash-range-label{color:#94a3b8}


/* =========================================================
   AK-v38 — Ders Giriş Listesi Düzenle/Sil
   ========================================================= */
.lesson-row-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.lesson-edit-btn{
  min-height:42px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid #20a889;
  background:#0d3b34;
  color:#71f4d3;
  font-weight:900;
  cursor:pointer;
  transition:.18s ease;
}
.lesson-edit-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
}
html[data-theme="light"] .lesson-edit-btn{
  background:#e9fbf6;
  border-color:#9de4d3;
  color:#087a62;
}
.lesson-mobile-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:12px;
}
.lesson-mobile-actions .lesson-edit-btn,
.lesson-mobile-actions .lesson-delete-btn{
  width:100%;
}
.lesson-edit-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.lesson-edit-actions .lesson-submit{
  flex:1 1 260px;
}
.lesson-edit-actions #cancelLessonEditBtn{
  flex:0 1 230px;
}
@media(max-width:640px){
  .lesson-edit-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .lesson-edit-actions button{
    width:100%;
  }
}

/* =========================================================
   AK-v47 — Yönetici / Yedekleme
   ========================================================= */
.admin-subnav{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 18px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--panel2);
}
.admin-subnav-btn{
  min-height:44px;
  padding:0 18px;
  border:1px solid transparent;
  border-radius:13px;
  background:transparent;
  color:var(--muted);
  font-weight:900;
  cursor:pointer;
}
.admin-subnav-btn.active{
  background:linear-gradient(135deg,#635bff,#794cff);
  color:#fff;
  box-shadow:0 9px 22px rgba(91,79,255,.22);
}
.admin-subsection{display:none}
.admin-subsection.active{display:block}
.backup-settings-shell{gap:18px}
.backup-card{border-color:#33466f}
.backup-create-card{border-left:4px solid #18d6a0}
.backup-restore-card{border-left:4px solid #ffb020}
.backup-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:16px 0;
}
.backup-summary-grid>div,
.backup-restore-preview>div{
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.025);
}
.backup-summary-grid span,
.backup-restore-preview span{
  display:block;
  color:var(--muted);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.backup-summary-grid strong,
.backup-restore-preview strong{
  display:block;
  margin-top:5px;
  font-size:20px;
}
.backup-main-btn,
.backup-restore-btn{
  min-height:52px;
  width:100%;
  margin-top:4px;
}
.backup-restore-btn{
  background:linear-gradient(135deg,#b56a00,#ff9f0a);
  border-color:#ffb13b;
  color:#171007;
  font-weight:950;
}
.backup-restore-btn:disabled{
  opacity:.45;
  cursor:not-allowed;
  filter:grayscale(.25);
}
.backup-file-picker{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  padding:14px;
  border:1px dashed #455679;
  border-radius:15px;
  background:rgba(255,255,255,.018);
}
#selectedBackupFileName{
  color:var(--muted);
  font-size:13px;
  overflow-wrap:anywhere;
}
.backup-restore-preview{
  display:grid;
  grid-template-columns:1.6fr repeat(4,1fr);
  gap:9px;
  margin:14px 0;
}
.backup-warning-note{
  padding:16px 18px;
  border:1px solid #735422;
  border-radius:16px;
  background:#2a1e0d;
  color:#ffd893;
}
.backup-warning-note strong{display:block;margin-bottom:6px}
.backup-warning-note p{margin:0;color:#dfc9a0;line-height:1.55}
html[data-theme="light"] .admin-subnav{background:#f6f8fb}
html[data-theme="light"] .backup-summary-grid>div,
html[data-theme="light"] .backup-restore-preview>div,
html[data-theme="light"] .backup-file-picker{background:#f8fafc}
html[data-theme="light"] .backup-warning-note{
  background:#fff8e8;
  border-color:#f0ce87;
  color:#76500d;
}
html[data-theme="light"] .backup-warning-note p{color:#806631}
@media(max-width:760px){
  .admin-subnav{display:grid;grid-template-columns:1fr 1fr}
  .admin-subnav-btn{padding:0 10px;font-size:13px}
  .backup-summary-grid{grid-template-columns:1fr 1fr}
  .backup-restore-preview{grid-template-columns:1fr 1fr}
  .backup-restore-preview>div:first-child{grid-column:1/-1}
  .backup-file-picker{align-items:stretch}
  .backup-file-picker .btn{width:100%}
}

/* AK-v48: Şifre ve Yedekleme ana menü ekranları */
#passwordView .admin-settings-shell,
#backupView .admin-settings-shell{margin-top:0}
#passwordView .admin-settings-card{max-width:980px}
#backupView .backup-settings-shell{display:grid;gap:20px}
@media(max-width:900px){
  .module-nav{gap:8px}
}


/* AK-v49 — Yönetici tek menü, içeride ayrı alanlar */
.admin-main-description{margin:7px 0 0;color:var(--muted);font-size:14px}
.admin-unified-shell{display:grid;gap:28px;max-width:1120px;margin:0 auto}
.admin-unified-section{display:grid;gap:14px;padding:22px;border:1px solid var(--line);border-radius:24px;background:var(--panel2)}
.admin-section-title{display:flex;align-items:flex-start;gap:14px;padding:2px 4px}
.admin-section-title h3{margin:3px 0 4px;font-size:22px}
.admin-section-title p{margin:0;color:var(--muted);font-size:14px}
.admin-section-number{width:34px;height:34px;flex:0 0 34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#367cff,#704cff);color:#fff;font-weight:950;box-shadow:0 8px 18px rgba(75,90,255,.20)}
.admin-unified-section>.admin-settings-card{max-width:none;margin:0}
.backup-two-column{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.backup-two-column .admin-settings-card{margin:0;min-width:0}
html[data-theme="light"] .admin-unified-section{background:#fbfcff}
@media(max-width:900px){.backup-two-column{grid-template-columns:1fr}}
@media(max-width:640px){.admin-unified-shell{gap:18px}.admin-unified-section{padding:14px;border-radius:19px}.admin-section-title h3{font-size:19px}.admin-section-number{width:30px;height:30px;flex-basis:30px}.admin-password-grid{grid-template-columns:1fr}}


/* AK-v52 — Yedek JSON + Excel güvenli indirme */
.backup-download-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:10px;
}
.backup-download-actions[hidden]{display:none!important}
.backup-download-actions .btn{min-height:44px}
.backup-excel-btn{border-color:#1c8a5f!important;color:#087649!important;background:#eaf9f1!important}
html[data-theme="dark"] .backup-excel-btn{background:#0e3025!important;color:#68f0ba!important;border-color:#246d56!important}
@media(max-width:620px){.backup-download-actions{grid-template-columns:1fr}}

/* AK-v54 final theme overrides */
html[data-theme="light"] .dashboard-menu .nav-pill{background:#fff;color:#23304a;border-color:#d4dce8}
html[data-theme="light"] .dashboard-menu .nav-pill.active{background:linear-gradient(135deg,#3e8cff,#715aff);color:#fff;border-color:transparent}


/* AK-v58 — Bugünkü Antrenmanlar */
.today-training-board{
  margin:0 0 18px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(10,35,48,.96),rgba(11,22,43,.96));
  box-shadow:0 12px 30px rgba(0,0,0,.14);
}
.today-training-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.today-training-kicker{color:#22d6b4;font-size:11px;font-weight:950;letter-spacing:.12em}
.today-training-head h2{margin:5px 0 0;font-size:19px;line-height:1.2}
.today-training-count{display:inline-flex;align-items:center;justify-content:center;min-width:70px;height:34px;padding:0 12px;border-radius:999px;background:rgba(34,214,180,.12);border:1px solid rgba(34,214,180,.28);color:#52e8ca;font-size:12px;font-weight:900;white-space:nowrap}
.today-training-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:9px}
.today-training-item{position:relative;display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:72px;padding:10px 12px;border:1px solid rgba(110,132,173,.24);border-radius:16px;background:rgba(5,12,30,.58)}
.today-training-time{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:13px;background:linear-gradient(135deg,#13bf9d,#178db6);color:#fff;font-size:16px;font-weight:950;letter-spacing:.03em}
.today-training-person{min-width:0}
.today-training-person strong{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.today-training-person small{display:block;margin-top:5px;color:#96a2b9;font-size:11px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.today-training-note{color:#c1cadb!important;margin-top:4px!important}
.today-training-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;min-width:132px}
.today-plan-btn{min-height:34px;padding:0 10px;border-radius:10px;border:1px solid rgba(113,132,173,.35);background:#0a1225;color:#d5dded;font-size:11px;font-weight:900}
.today-plan-btn.edit{color:#ffd15a;border-color:rgba(255,190,46,.34);background:rgba(255,190,46,.08)}
.today-plan-btn.delete{color:#ff8ca3;border-color:rgba(255,91,127,.34);background:rgba(255,91,127,.08)}
.today-plan-btn:active{transform:scale(.97)}
.today-training-empty{padding:13px 14px;border:1px dashed rgba(119,137,175,.28);border-radius:14px;color:#8f9bb3;font-size:13px;text-align:center}
.today-training-empty.error{color:#ff8aa2}
html[data-theme="light"] .today-training-board{background:linear-gradient(135deg,#f0fbf8,#f6f9ff);border-color:#d5e2e6;box-shadow:0 10px 24px rgba(31,53,90,.06)}
html[data-theme="light"] .today-training-head h2{color:#162033}
html[data-theme="light"] .today-training-item{background:#fff;border-color:#dce4ee}
html[data-theme="light"] .today-training-person strong{color:#172033}
html[data-theme="light"] .today-training-person small{color:#6f7b91}
html[data-theme="light"] .today-training-note{color:#59667c!important}
html[data-theme="light"] .today-plan-btn{background:#fff;border-color:#d6deea;color:#344157}
html[data-theme="light"] .today-plan-btn.edit{background:#fff8e8;color:#a66d00;border-color:#f1d697}
html[data-theme="light"] .today-plan-btn.delete{background:#fff0f3;color:#c33758;border-color:#efbac7}
@media(max-width:700px){
  .today-training-board{padding:14px;margin-bottom:14px;border-radius:19px}
  .today-training-head{align-items:flex-start}
  .today-training-head h2{font-size:17px}
  .today-training-list{grid-template-columns:1fr}
  .today-training-item{grid-template-columns:60px minmax(0,1fr);min-height:62px}
  .today-training-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;min-width:0;width:100%}
  .today-plan-btn{min-height:38px;font-size:12px}
  .today-training-time{font-size:15px}
}


/* V60 - Antrenman planında WhatsApp isteğe bağlı */
.training-plan-whatsapp-toggle{margin-top:2px}
.training-plan-toggle-side{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.toggle-status{min-width:58px;text-align:center;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:#121a30;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.04em}
.toggle-status.active{background:rgba(11,197,151,.12);border-color:rgba(11,197,151,.35);color:#20d7ad}
html[data-theme="light"] .toggle-status{background:#f3f6fa;border-color:#d3dbe7;color:#758198}
html[data-theme="light"] .toggle-status.active{background:#e8faf5;border-color:#b9e9dc;color:#079777}
@media(max-width:560px){
  .training-plan-whatsapp-toggle{align-items:flex-start}
  .training-plan-toggle-side{gap:8px}
}
