*{box-sizing:border-box}body.hdt-body{margin:0;background:#e9eff5;font-family:Arial,Helvetica,sans-serif;color:#1f2937}.hdt-shell{display:flex;min-height:100vh}aside{width:220px;background:#17262d;color:#d7e7ef;flex:0 0 220px}.brand{background:#2f91bd;color:white;text-align:center;padding:18px;font-size:14px}.brand small{display:block;margin-top:4px;font-size:12px;opacity:.9}nav a{display:block;color:#d7e7ef;text-decoration:none;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.04)}nav a:hover{background:#233942}nav span{display:inline-block;width:28px}main{flex:1;display:flex;flex-direction:column}.top{height:58px;background:#3d95bf;color:white;display:flex;align-items:center;gap:20px;padding:0 20px}.top span{margin-left:auto}.top a{color:white;text-decoration:none;background:rgba(0,0,0,.18);padding:8px 12px;border-radius:6px}.hamb{background:transparent;border:0;color:white;font-size:22px}.content{padding:14px;flex:1;overflow:hidden}.content h1{font-size:26px;font-weight:500;border-bottom:1px solid #cbd5e1;padding-bottom:14px;margin:0 0 18px}.bar{display:flex;gap:10px;justify-content:flex-end;margin-bottom:12px}.btn{background:#0aa05b;color:white;border:0;border-radius:4px;padding:10px 14px;text-decoration:none;display:inline-block;cursor:pointer}.btn.blue{background:#328cbd}.btn.green{background:#10a66a}.hdt-table{width:100%;border-collapse:collapse;background:white;border-top:3px solid #2996c9}.hdt-table th,.hdt-table td{padding:12px;border-bottom:1px solid #ddd;text-align:left}.hdt-table tr:nth-child(even){background:#f7f7f7}.compact th,.compact td{padding:4px;text-align:center;font-size:12px;white-space:nowrap}.wide{overflow:auto;border:1px solid #cbd5e1;background:#fff;max-width:100%}.filters{display:flex;gap:18px;align-items:center;margin-bottom:28px;border-bottom:1px solid #cbd5e1;padding-bottom:10px}.filters select{padding:9px;min-width:120px}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99;align-items:center;justify-content:center}.modal form{background:white;border-top:4px solid #15aee2;width:min(620px,94vw);padding:25px;border-radius:4px}.modal label{display:grid;grid-template-columns:180px 1fr;gap:10px;align-items:center;margin:12px 0}.modal input,.modal select{padding:9px;border:1px solid #cbd5e1}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px}.cards>div{background:white;padding:22px;border-radius:8px;border-top:4px solid #16935a}.code{width:25px;height:28px;text-align:center;border:1px solid #aaa;border-radius:3px;font-weight:bold;padding:2px}.lesson-table{min-width:0}.lesson-table th{font-size:11px}.lesson-table .student-col{min-width:120px;text-align:left}.going-input{width:54px;height:28px;text-align:center;border:1px solid #aaa;border-radius:3px}.lesson-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px}.save-note{font-size:14px}.bulk-fill{margin-left:auto;display:flex;align-items:center;gap:8px}.bulk-fill select{padding:8px;max-width:150px}.mini{width:42px}.hint{font-size:13px;text-align:center}.hdt-login-body{margin:0;min-height:100vh;background:radial-gradient(circle at top,#fff 0,#fff7e8 52%,#075d2d 53%,#064625 100%);font-family:Arial,Helvetica,sans-serif}.login-wrap{max-width:980px;margin:0 auto;text-align:center;padding:45px 20px}.logo-circle{width:150px;height:150px;margin:0 auto 18px;background:#fff;border:6px solid #8fd000;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.2);overflow:hidden}.logo-circle img{width:100%;height:100%;object-fit:cover;display:block}.login-wrap h2{color:#075d2d;margin:0;font-size:30px}.login-wrap h1{font-size:48px;color:#075d2d;margin:22px 0 10px}.login-wrap p{font-size:20px;color:#555}.login-card{display:inline-block;vertical-align:top;width:30%;min-width:260px;margin:12px;background:white;border-radius:18px;padding:22px;box-shadow:0 8px 30px rgba(0,0,0,.16);border:1px solid #eee}.login-card h3{color:#075d2d;font-size:24px}.login-card input{width:100%;padding:12px;margin:8px 0;border:1px solid #cbd5e1;border-radius:7px}.login-card button{width:100%;padding:13px;background:#0b8c4a;color:white;border:0;border-radius:7px;font-weight:bold;font-size:16px}.alert{background:#fee2e2;color:#991b1b;padding:12px;border-radius:8px;margin:12px auto;max-width:420px}@media(max-width:1100px){aside{width:190px;flex-basis:190px}.top span{font-size:16px}.content h1{font-size:22px}.bulk-fill{margin-left:0}.code{width:24px}.lesson-table .student-col{min-width:105px}}@media(max-width:800px){aside{display:none}.login-card{width:100%}.login-wrap h1{font-size:34px}.content{padding:10px}.filters{flex-wrap:wrap}}
.bulk-row td{background:#eef8ff!important;border-bottom:2px solid #2996c9}.bulk-row input{width:25px;height:26px;text-align:center;border:1px solid #77a9c9;border-radius:3px;font-weight:bold;background:#fff}.request-box{background:white;border-top:4px solid #2996c9;padding:20px;border-radius:6px;margin-bottom:20px;max-width:780px}.request-box label{display:grid;grid-template-columns:180px 1fr;gap:10px;margin:12px 0;align-items:center}.request-box select,.request-box textarea{padding:9px;border:1px solid #cbd5e1;border-radius:4px;width:100%}
.list-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 12px;padding:10px;background:#f8fafc;border:1px solid #dbe4ee;border-radius:6px}.list-tools input,.list-tools select{padding:9px;border:1px solid #cbd5e1;border-radius:4px;min-width:170px}.btn.light{background:#64748b}.btn:disabled{opacity:.55;cursor:not-allowed}.actions{white-space:nowrap}.actions form{display:inline}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:32px;margin:0 2px;border:0;border-radius:5px;cursor:pointer;font-size:17px;transition:.12s transform,.12s filter}.icon-btn:hover{transform:scale(1.12);filter:brightness(.92)}.icon-btn.view{background:#e0f2fe}.icon-btn.edit{background:#fef3c7}.icon-btn.del{background:#fee2e2}.modal-card{background:white;border-top:4px solid #15aee2;width:min(560px,94vw);padding:25px;border-radius:4px;box-shadow:0 20px 50px rgba(0,0,0,.25)}.modal-card button{padding:8px 14px;border:0;border-radius:4px;background:#64748b;color:white;cursor:pointer}.hdt-table th{white-space:nowrap}.hdt-table td{vertical-align:middle}
/* v0.1.7 form/list düzeni */
.modal form.hdt-form-list{width:min(720px,94vw);padding:28px 34px;max-height:86vh;overflow:auto}.hdt-form-list h2{margin:0 0 18px;text-align:left;font-size:26px;color:#111827}.hdt-form-list .form-section{margin:18px 0 10px;padding:10px 12px;background:#eef8ff;border-left:4px solid #2996c9;font-weight:bold;color:#0f4f6d}.modal form.hdt-form-list label{display:grid;grid-template-columns:170px 1fr;gap:14px;align-items:center;margin:10px 0;font-weight:600}.modal form.hdt-form-list input,.modal form.hdt-form-list select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:4px;font-weight:400}.hdt-form-list .form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:18px;border-top:1px solid #e5e7eb;padding-top:14px}.icon-btn.archive{background:#ede9fe}.modal-card h2{margin-top:0}.modal-card p{padding:8px 0;margin:0;border-bottom:1px solid #edf2f7}
@media(max-width:700px){.modal form.hdt-form-list label{grid-template-columns:1fr}.hdt-form-list .form-actions{justify-content:stretch}.hdt-form-list .form-actions .btn{flex:1;text-align:center}}


/* v0.1.8 modal hizalama düzeltmesi */
.modal{
  display:none;
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  background:rgba(15,23,42,.55)!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
}
.modal[style*="flex"]{display:flex!important;}
.modal form.hdt-form-list{
  display:block!important;
  position:relative!important;
  width:min(700px,94vw)!important;
  max-width:700px!important;
  max-height:86vh!important;
  overflow:auto!important;
  margin:0 auto!important;
  padding:28px 34px!important;
  background:#fff!important;
  color:#111827!important;
  border-top:5px solid #15aee2!important;
  border-radius:8px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.35)!important;
}
.modal form.hdt-form-list h2{
  display:block!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:0 0 14px!important;
  border-bottom:1px solid #e5e7eb!important;
  font-size:26px!important;
  font-weight:600!important;
  line-height:1.25!important;
  text-align:left!important;
}
.modal form.hdt-form-list .form-section{
  display:block!important;
  width:100%!important;
  margin:16px 0 12px!important;
  padding:10px 12px!important;
  background:#eef8ff!important;
  border-left:4px solid #2996c9!important;
  font-weight:700!important;
  color:#0f4f6d!important;
}
.modal form.hdt-form-list label{
  display:grid!important;
  grid-template-columns:160px minmax(0,1fr)!important;
  column-gap:18px!important;
  row-gap:6px!important;
  align-items:center!important;
  width:100%!important;
  margin:12px 0!important;
  font-size:16px!important;
  font-weight:600!important;
  white-space:normal!important;
}
.modal form.hdt-form-list input,
.modal form.hdt-form-list select,
.modal form.hdt-form-list textarea{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  padding:10px 12px!important;
  border:1px solid #cbd5e1!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#111827!important;
  font-size:15px!important;
  font-weight:400!important;
}
.modal form.hdt-form-list .form-actions{
  display:flex!important;
  flex-direction:row!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin-top:20px!important;
  padding-top:16px!important;
  border-top:1px solid #e5e7eb!important;
}
.modal form.hdt-form-list .form-actions button,
.modal form.hdt-form-list .form-actions .btn{
  width:auto!important;
  min-width:90px!important;
}
@media(max-width:700px){
  .modal{padding:10px!important;align-items:flex-start!important;}
  .modal form.hdt-form-list{padding:22px 18px!important;max-height:94vh!important;}
  .modal form.hdt-form-list label{grid-template-columns:1fr!important;}
  .modal form.hdt-form-list .form-actions{flex-direction:column!important;}
  .modal form.hdt-form-list .form-actions button{width:100%!important;}
}
/* v0.1.9 toplu öğrenci/öğretmen düzenlemeleri */
.modal form.wide-form{width:min(980px,96vw)!important;}
.bulk-student-box{max-height:55vh;overflow:auto;border:1px solid #dbe4ee;background:#fff;margin-top:12px;}
.bulk-student-box .hdt-table{border-top:0;margin:0;}
.bulk-student-box th,.bulk-student-box td{padding:8px!important;font-size:13px!important;text-align:left!important;}
.muted{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:10px;line-height:1.45;color:#475569;font-size:14px;}
