/* v3: giriş səhifəsi, menyu animasiyası, vahid jurnal, rəsmi komponentlər, admin modulları */

/* ---------- Açılış ekranı: ATU loqosu ---------- */
.boot{height:100%;display:grid;place-items:center;background:var(--bg)}
.boot img{width:88px;height:88px;border-radius:50%;animation:bootIn .9s var(--ease,ease) both,pulse 1.6s ease-in-out .9s infinite}
@keyframes bootIn{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:none}}

/* ---------- Giriş səhifəsi: burqund plakat, kölgəsiz ---------- */
.login,.login *{box-shadow:none!important}
.login .btn,.login .inp,.login .demo button{box-shadow:none!important;filter:none}
.lg-atu{background:var(--burg-2,#6E0E24)!important;background-image:none!important;display:grid!important;place-items:center;padding:48px!important;isolation:isolate}
.lg-atu::before{display:none!important}
.lg-atu .lg-mascot,.lg-atu .lg-hero,.lg-atu .lg-mods,.lg-atu .lg-top{display:none!important}
.lg-waves{position:absolute!important;left:0;right:0;bottom:0;width:100%;height:58%;z-index:0!important;pointer-events:none}
.lg-waves path{fill:none;stroke:#fff;stroke-width:1;opacity:.16;vector-effect:non-scaling-stroke}
.lg-wm{position:absolute!important;right:-8%;top:-6%;width:62%;max-width:560px;opacity:.06;z-index:0!important;pointer-events:none}
.lg-logo{width:min(440px,78%);height:auto;z-index:1;animation:lgIn .8s var(--ease,ease) both}
.lg-foot{position:absolute!important;left:48px;bottom:32px;font-size:12.5px;color:rgba(255,255,255,.62);letter-spacing:.02em}
@keyframes lgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.lg-form{background:var(--surface)}
.lg-box h2{font-size:26px;letter-spacing:-.01em}
.lg-emb-m{display:none;border-radius:50%}
.login .btn.pri{background:var(--burg-2,#6E0E24);border-color:var(--burg-2,#6E0E24)}
.login .btn.pri:hover{background:var(--burg-1,#4C031A)}
.login .inp:focus{outline:2px solid color-mix(in srgb,var(--burg-1,#7B1631) 35%,transparent);outline-offset:0;border-color:var(--burg-1,#7B1631)}
@media (max-width:900px){
  .lg-atu{min-height:200px;padding:32px 20px!important}
  .lg-logo{width:min(300px,76%)}
  .lg-waves{height:70%}
  .lg-foot{display:none}
  .lg-emb-m{display:none!important}
}

/* ---------- Menyu: yavaş və hamar açılıb bağlanma ---------- */
@media (min-width:901px){
  .shell{transition:grid-template-columns .5s cubic-bezier(.4,0,.2,1)!important}
  .side{overflow-x:hidden}
  .side .nav button{white-space:nowrap;overflow:hidden}
  .side .nav button span,.side .brand>div:not(.mark),.side .nav-sec,.side .sf-t{transition:opacity .3s ease,max-width .5s cubic-bezier(.4,0,.2,1);max-width:220px;white-space:nowrap;overflow:hidden}
  .shell.nav-anim.mini .nav button span,.shell.nav-anim.mini .brand>div:not(.mark),.shell.nav-anim.mini .sf-t{display:block!important;max-width:0;opacity:0}
  .shell.nav-anim.mini .nav-sec{display:block!important;max-width:0;opacity:0;height:0;margin:0;padding:0}
  .shell.nav-anim.mini .nav button{gap:0}
}
@media (max-width:900px){
  .side{transition:transform .45s cubic-bezier(.4,0,.2,1)!important}
  .nav-open .side{box-shadow:none!important}
  .scrim{transition:opacity .45s ease}
}

/* ---------- Maskotlar ---------- */
.hero-m{filter:none!important}
.empty-m{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 12px;text-align:center;color:var(--ink-3)}
.empty-m img,.em-m{height:120px;width:auto}
.pf-m{position:absolute;right:16px;bottom:0;pointer-events:none}
.pf-m img{height:150px;width:auto;display:block}
@media (max-width:640px){.pf-m{display:none}}

/* ---------- Bildirişlər: yeni gələnlər ---------- */
.ni.fresh{background:color-mix(in srgb,var(--accent-soft) 55%,transparent)}
.ni .nw,.nw{display:inline-block;margin-left:6px;padding:0 7px;border-radius:99px;font-size:10.5px;font-weight:600;background:var(--primary);color:var(--on-primary,#fff);vertical-align:middle}

/* ---------- Jurnal: işarələr ---------- */
.legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:var(--ink-2);margin:2px 0 4px}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:5px;font-style:normal;font-size:10.5px;font-weight:600}
.lg-e{background:var(--surface);border:1px solid var(--line)}
.lg-a{background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 25%,transparent)}
.lg-l{background:var(--warn-soft,#FFF4DC);color:var(--warn,#A06A00)}
.lg-l svg,.lk svg{width:11px;height:11px}
.lk{display:inline-flex;color:var(--warn,#A06A00);vertical-align:middle}

/* Davamiyyət düymələri */
.att{min-width:26px;height:24px;padding:0 6px;border-radius:6px;border:1px dashed var(--line);background:var(--surface);color:var(--ink-3);font:600 11.5px/1 inherit;cursor:pointer;display:inline-grid;place-items:center}
.att.present{background:var(--ok-soft,#E3F4EA);color:var(--ok,#1E7A46);border:1px solid color-mix(in srgb,var(--ok,#1E7A46) 30%,transparent)}
.att.absent{background:var(--danger-soft,#FDE6E6);color:var(--danger,#B42318);border:1px solid color-mix(in srgb,var(--danger,#B42318) 30%,transparent)}
.att.lk{border-style:solid;opacity:.8;cursor:not-allowed}
.att.lk:not([disabled]){cursor:pointer;opacity:1}
.att[disabled]{cursor:not-allowed}
.att:not([disabled]):hover{border-color:var(--primary)}

/* Vahid jurnal cədvəli */
.jsec,.qs,.op{overflow:hidden}
.jtw{max-height:none}
.jt3,.qt3{border-collapse:separate;border-spacing:0}
.jt3 th,.jt3 td,.qt3 th,.qt3 td{white-space:nowrap}
.stk{position:sticky;left:0;z-index:2;background:var(--surface);border-right:1px solid var(--line)}
thead .stk{z-index:3}
.jt3 th.jl{padding:4px 4px;text-align:center;vertical-align:bottom}
.jt3 .colh{display:flex;flex-direction:column;align-items:center;gap:2px;border:0;background:none;cursor:pointer;padding:4px 6px;border-radius:6px;color:var(--ink-2);font:inherit}
.jt3 .colh:hover{background:var(--primary-soft);color:var(--primary)}
.jt3 .colh b{font-size:12px}
.jt3 .colh span{font-size:10.5px;font-weight:500;display:inline-flex;align-items:center;gap:3px}
.jt3 .colh svg{width:10px;height:10px}
.jt3 th.k-kollokvium .colh{color:var(--warn,#A06A00)}
.jt3 th.k-muhazir,.jt3 th.k-muhazire,.jt3 th[class*="k-m"] .colh{opacity:.95}
.jc{text-align:center;padding:5px 4px!important;border-left:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.jc.same{border-left-style:dashed}
.jc{min-width:58px}
.jc input,.qt3 input{width:46px;height:26px;padding:0 4px;text-align:center;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;font-size:12.5px;margin-left:3px}
.qt3 input{width:56px;margin:0}
.jc input:focus,.qt3 input:focus{outline:2px solid color-mix(in srgb,var(--primary) 35%,transparent);border-color:var(--primary)}
.jc input.lo,.qt3 input.lo{color:var(--danger,#B42318);border-color:color-mix(in srgb,var(--danger,#B42318) 40%,transparent)}
input.off{background:var(--warn-soft,#FFF4DC);border-color:color-mix(in srgb,var(--warn,#A06A00) 40%,transparent)!important}
.c-auto{background:color-mix(in srgb,var(--primary-soft) 55%,transparent)}
.c-edit{background:var(--surface)}
.c-off,.c-offh{background:color-mix(in srgb,var(--warn-soft,#FFF4DC) 70%,transparent)}
.c-offh svg{width:11px;height:11px;vertical-align:-1px;color:var(--warn,#A06A00)}
.c-auto.fin b{font-size:14px}
.lockv{display:inline-flex;align-items:center;gap:4px;border:1px solid color-mix(in srgb,var(--warn,#A06A00) 30%,transparent);background:var(--warn-soft,#FFF4DC);color:var(--ink);border-radius:6px;padding:3px 7px;font:600 12.5px/1.2 inherit;cursor:pointer}
button.lockv:hover{border-color:var(--warn,#A06A00)}
span.lockv{cursor:default}
.lockv svg{width:11px;height:11px;color:var(--warn,#A06A00)}
.lockv.sm{padding:2px 5px;font-size:11.5px;margin-left:3px}
.lockv.lo{color:var(--danger,#B42318)}
.rov{display:inline-block;min-width:30px;text-align:center;font-weight:600}

/* Fənn zolağı və rəsmi komponentlər */
.cstrip{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-card,12px);background:var(--surface);font-size:13px;color:var(--ink-2)}
.cstrip b{color:var(--ink)}
.op-r{display:grid;grid-template-columns:1.4fr repeat(3,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.op-r:first-child{border-top:0}
.op-r>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.op-r>div:last-child{align-items:flex-end}
.op .card-h h3 svg{width:15px;height:15px;vertical-align:-2px;color:var(--warn,#A06A00)}
.bdg.off{background:var(--warn-soft,#FFF4DC);color:var(--warn,#A06A00)}
@media (max-width:760px){.op-r{grid-template-columns:1fr 1fr}.op-r>div:first-child{grid-column:1/-1}.op-r>div:last-child{align-items:flex-start}}

/* Meyarlar pəncərəsi */
.crit-h{margin:14px 0 8px;font-size:13px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;gap:6px}
.crit-h:first-child{margin-top:0}
.offc{display:flex;align-items:center;gap:8px;font-size:13px}
.m-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}

/* ---------- Profil ---------- */
.pw-inline{display:grid;gap:10px;max-width:420px}
.tr-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.tag{display:inline-block;padding:2px 9px;border-radius:99px;background:var(--surface-2);border:1px solid var(--line);font-size:12px;margin:0 4px 4px 0}

/* ---------- Admin: axtarış, filtrlər, tablar ---------- */
.tc{display:inline-block;min-width:20px;padding:0 6px;margin-left:4px;border-radius:99px;background:var(--surface-2);color:var(--ink-2);font-size:11px;font-weight:600;text-align:center}
.tabs button.on .tc{background:var(--primary-soft);color:var(--primary)}
.filt{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}
.filt .inp,.filt select{height:34px;min-width:0;width:auto;max-width:210px;font-size:13px}
.filt .fld{margin:0}
@media (max-width:640px){.filt .inp,.filt select,.filt .qbox{flex:1 1 calc(50% - 8px);max-width:none}}

/* Qrup üzvləri */
.mem-g{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.mem-l{max-height:340px;overflow:auto;border:1px solid var(--line);border-radius:10px}
.mem-l .li{padding:8px 10px}
.mem-l .li.ck{display:flex;align-items:center;gap:8px;cursor:pointer}
@media (max-width:760px){.mem-g{grid-template-columns:1fr}}

/* Fənn təyinatı: 3 addım */
.as-steps{display:grid;gap:14px}
.as-st{display:flex;gap:12px;align-items:flex-start}
.as-n{flex:none;width:26px;height:26px;border-radius:50%;background:var(--primary);color:var(--on-primary,#fff);display:grid;place-items:center;font-weight:600;font-size:13px;margin-top:22px}
.as-info{margin-top:6px;font-size:12.5px;color:var(--ink-3)}
.as-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px;max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:8px}
.as-g label{display:flex;align-items:center;gap:6px;font-size:13px;padding:3px 4px}
.sum-chk{min-height:34px;display:flex;align-items:center;font-size:13px;font-weight:500}
.sum-chk.ok{color:var(--ok,#1E7A46)}.sum-chk.bad{color:var(--danger,#B42318)}
.modal.wide{width:min(860px,calc(100vw - 32px))!important;max-width:none!important}
.nw-f{white-space:nowrap}
/* Jurnalda yekun sütunları sağda sabit qalır, çox dərs olduqda da görünür */
.jt3 th:nth-last-child(-n+3),.jt3 td:nth-last-child(-n+3){position:sticky;z-index:2;width:88px;min-width:88px;max-width:88px;padding-left:4px;padding-right:4px;background:var(--surface);text-align:center}
.jt3 th:nth-last-child(1),.jt3 td:nth-last-child(1){right:0}
.jt3 th:nth-last-child(2),.jt3 td:nth-last-child(2){right:88px}
.jt3 th:nth-last-child(3),.jt3 td:nth-last-child(3){right:176px;border-left:1px solid var(--line)}
.jt3 td.c-auto:nth-last-child(-n+3){background:color-mix(in srgb,var(--primary-soft) 55%,var(--surface))}
.jt3 td[colspan]{position:static;width:auto;max-width:none}
.jt3 td .meter{margin-top:4px}
a.btn{color:var(--ink);text-decoration:none}a.btn.pri{color:var(--on-primary,#fff)}
