*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f3f7fb;color:#102a56}a{text-decoration:none;color:inherit}.app{display:flex;min-height:100vh}.sidebar{width:260px;background:linear-gradient(180deg,#05294d,#071b33);color:#fff;position:fixed;left:0;top:0;bottom:0;z-index:10;padding:18px 14px;overflow:auto}.brand{display:flex;gap:12px;align-items:center;padding:8px 8px 18px;border-bottom:1px solid #244565}.brand img{width:54px;height:54px;object-fit:contain;border-radius:50%;background:#fff}.brand b{font-size:16px}.brand small{display:block;color:#b9d0e8;margin-top:3px}.nav{margin-top:14px}.nav a{display:flex;gap:13px;align-items:center;padding:11px 13px;border-radius:10px;color:#e8f1fb;margin:3px 0;font-size:14px}.nav a:hover,.nav a.active{background:#0d8bf2;color:#fff;box-shadow:0 7px 18px #0087ff35}.nav .section{font-size:10px;color:#79a1c5;letter-spacing:1px;padding:15px 13px 6px;text-transform:uppercase}.main{margin-left:260px;width:calc(100% - 260px);min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid #e2eaf2;display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:5}.welcome{font-size:14px}.welcome b{display:block;font-size:17px}.profile{display:flex;align-items:center;gap:10px}.avatar{width:40px;height:40px;border-radius:50%;background:#0b82e9;color:#fff;display:grid;place-items:center;font-weight:700}.content{padding:24px}.hero{background:linear-gradient(110deg,#e1f5ff,#fff);border:1px solid #d7e8f5;border-radius:16px;padding:24px;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.hero h1{margin:4px 0;font-size:28px}.hero p{margin:6px 0;color:#4b6480}.hero img{width:110px;height:110px;object-fit:contain}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0}.card{background:#fff;border-radius:14px;padding:18px;box-shadow:0 5px 18px #15385d0c;border:1px solid #e4edf5}.stat{color:#fff;min-height:118px;position:relative;overflow:hidden}.stat.blue{background:#0d8cf0}.stat.green{background:#17b96c}.stat.yellow{background:#f5b817}.stat.red{background:#ef4444}.stat .num{font-size:32px;font-weight:800;margin-top:8px}.stat small{opacity:.9}.grid2{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}.panel{background:#fff;border:1px solid #e4edf5;border-radius:14px;padding:18px;box-shadow:0 5px 18px #15385d0c}.panel h3{margin:0 0 14px}.program{display:flex;align-items:center;gap:14px;padding:13px;border-radius:10px;margin:8px 0;background:#eef8ff}.program:nth-child(3){background:#ecfff3}.program:nth-child(4){background:#fff9dc}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px 10px;border-bottom:1px solid #edf1f5;text-align:left;font-size:13px;white-space:nowrap}.table th{background:#f8fbfe;color:#58708b}.toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.toolbar h2{margin:0}.btn{border:0;border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:700;display:inline-block}.btn.primary{background:#0d8cf0;color:#fff}.btn.green{background:#16a76a;color:#fff}.btn.red{background:#e5484d;color:#fff}.btn.gray{background:#edf3f8;color:#29415d}.btn.sm{padding:7px 10px;font-size:12px}.input,.form-grid input,.form-grid select,.form-grid textarea,input,select,textarea{width:100%;padding:10px 11px;border:1px solid #d9e4ee;border-radius:8px;outline:none;background:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.form-grid .full{grid-column:1/-1}label{font-size:12px;font-weight:700;color:#4b6480;display:block}label input,label select,label textarea{margin-top:6px;font-weight:400}.actions{display:flex;gap:6px}.badge{display:inline-block;border-radius:20px;padding:4px 9px;font-size:11px;background:#eaf4ff;color:#0876d1}.alert{padding:12px 14px;border-radius:9px;margin-bottom:15px}.alert.success{background:#e9fff4;color:#087a4b}.alert.error{background:#fff0f0;color:#b22}.alert.info{background:#edf7ff;color:#096db8}.muted{color:#71849a;font-size:12px}.footer{padding:20px 0;color:#7890a6;font-size:12px;text-align:center}.login-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#05294d,#0d8cf0);padding:20px}.login-card{width:min(430px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 25px 70px #001a3a55}.login-card{text-align:center}.login-card form{text-align:left}.login-logo{width:90px;height:90px;object-fit:contain}.login-card h1{margin:10px 0 3px}.login-card p{color:#68809a}.login-card label{margin:12px 0}.login-card .btn{width:100%;margin-top:10px}.mobile-menu{display:none}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar div{padding:10px;background:#f6faff;border-radius:7px;text-align:center;font-size:12px}.calendar .head{font-weight:800;background:#e9f3fc}.calendar .today{background:#0d8cf0;color:#fff}.modal{background:#fff;border:1px solid #e1eaf2;border-radius:12px;padding:18px;margin-bottom:15px}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.main{margin-left:0;width:100%}.mobile-menu{display:block;border:0;background:none;font-size:23px}.cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.topbar{padding:0 14px}.content{padding:14px}}

.list-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf2f6;font-size:13px}.list-row span{color:#71849a;font-size:12px;text-align:right}.question{padding:18px 0;border-bottom:1px solid #e7eef5}.option{display:block;margin:10px 0;padding:10px;border:1px solid #e2eaf1;border-radius:8px;font-weight:400}.option input{width:auto;margin-right:7px}.panel hr{border:0;border-top:1px solid #e5edf4;margin:18px 0}.panel>form{margin-bottom:4px}

/* V16 - UI Data Siswa per Kelas */
.top-left{display:flex;align-items:center;gap:12px}.topbar .profile small{display:block;color:#789;font-size:11px;margin-top:2px}.logout-link{margin-top:15px!important;border-top:1px solid #244565;padding-top:15px!important}
.class-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.class-page-head h1{margin:3px 0 5px;font-size:25px;color:#0b2e58}.class-page-head p{margin:0;color:#71849a;font-size:13px}.class-page-head p span{padding:0 6px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#0d8cf0}.page-actions{display:flex;gap:8px;flex-wrap:wrap}
.class-summary{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1.3fr;align-items:center;gap:16px;background:linear-gradient(110deg,#e9f7ff,#fff);border:1px solid #dbeaf4;border-radius:14px;padding:16px 20px;margin-bottom:16px}.summary-icon{width:48px;height:48px;border-radius:12px;background:#0d8cf0;color:#fff;display:grid;place-items:center;font-size:22px}.class-summary small{display:block;color:#71849a;font-size:11px}.class-summary strong{display:block;font-size:21px;color:#10335f;margin:2px 0}.class-summary .summary-text{font-size:14px}.class-summary span{font-size:11px;color:#8193a5}.summary-divider{width:1px;height:42px;background:#dce7ef}
.search-panel{margin-bottom:16px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.panel-title h3{margin:0 0 3px}.search-form{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.search-input{position:relative}.search-input>span{position:absolute;left:12px;top:9px;font-size:18px;color:#7b91a8}.search-input input{padding-left:38px}
.students-table th{font-size:11px;text-transform:uppercase;letter-spacing:.35px}.students-table td{vertical-align:middle}.row-number{color:#789;font-weight:700}.student-cell{display:flex;align-items:center;gap:10px;min-width:190px}.student-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e7f3ff;color:#0876d1;font-weight:800}.student-cell b{display:block;color:#123a67}.student-cell small,.id-sub{display:block;color:#8193a5;font-size:10px;margin-top:2px}.id-main{display:block;font-weight:600}.status-pill{display:inline-block;padding:5px 9px;border-radius:20px;background:#e9fff4;color:#087a4b;font-size:10px;font-weight:700}.empty-state{padding:45px 20px;text-align:center;color:#71849a}.empty-state div{font-size:30px;margin-bottom:8px}.empty-state b{display:block;color:#284665;margin-bottom:3px}.empty-state span{font-size:12px}
@media(max-width:850px){.class-page-head{flex-direction:column}.class-summary{grid-template-columns:auto 1fr;}.summary-divider{display:none}.search-form{grid-template-columns:1fr}.page-actions{width:100%}.page-actions .btn{flex:1;text-align:center}}

/* V18 - Role specific navigation */
.nav .section{font-size:9px;letter-spacing:1.1px;font-weight:800;color:#7f9ab4;margin:18px 10px 7px;text-transform:uppercase}
.nav>a{transition:all .18s ease}.nav>a:hover{transform:translateX(2px)}
.role-chip{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700}

/* V19 - Menu sidebar Guru/Siswa ringkas */
.nav .section{display:none}.nav>a{margin-top:3px}

/* V20 - Guru grouped navigation */
.nav .section{display:block;margin:16px 10px 7px}.nav>a{margin-top:3px}

/* V21 - Clean Guru sidebar */
.nav .section{display:block;margin:16px 10px 7px}.nav>a{margin-top:3px}


/* V25/V26 - Raport PKBM profesional */
.report-sheet{background:#fff;border:1px solid #d9e2ec;border-radius:14px;padding:34px;max-width:900px;margin:0 auto 24px;box-shadow:0 10px 30px rgba(15,53,90,.08);color:#172b4d}
.report-print-head{display:grid;grid-template-columns:125px 1fr;align-items:center;gap:18px;padding:0 0 12px}
.report-print-logo{display:flex;align-items:center;justify-content:center}
.report-print-logo img{width:108px;height:108px;object-fit:contain}
.report-print-head-text{text-align:center;line-height:1.05}
.report-org-name{font-size:22px;font-weight:800;letter-spacing:.2px;color:#111}
.report-school-name{font-size:38px;font-weight:900;letter-spacing:1px;margin-top:4px;color:#111}
.report-legal,.report-npsn{font-size:15px;font-weight:700;margin-top:5px;color:#111}
.report-print-address{border-top:3px solid #111;border-bottom:6px double #111;text-align:center;padding:8px 4px;font-size:12px;font-weight:600;line-height:1.25;margin-bottom:22px;color:#111}
.report-title{display:block;background:transparent;color:#111;text-align:center;font-size:24px;font-weight:900;padding:0;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}
.report-title:after{content:'TAHUN PELAJARAN 2026/2027';display:block;font-size:15px;margin-top:6px;letter-spacing:.3px}
.report-identitas{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:18px 0 20px;padding:17px 20px;background:#f5f9fd;border:1px solid #b9d7f2;border-radius:10px;font-size:13px}
.report-identitas>div{display:grid;grid-template-columns:145px 1fr;gap:8px 10px}.report-identitas b{color:#172b4d}.report-identitas span{color:#34495e}
.report-table-wrap{overflow:auto}.report-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.report-table th{background:#2879b9;color:#fff;padding:10px 8px;border:1px solid #fff;text-align:center}.report-table td{padding:9px 8px;border:1px solid #aebdca;background:#fff;vertical-align:top;line-height:1.3}.report-table td small{display:block;color:#5b7083;font-size:10px;margin-top:3px}.report-table .score{text-align:center;font-size:16px;font-weight:800}.report-table .empty-report{text-align:center;background:#f8fafc;color:#687789}.report-subtitle{display:block;background:transparent;color:#111;font-weight:900;padding:0 0 6px;margin:22px 0 7px;border-bottom:2px solid #2879b9;border-radius:0;font-size:15px;text-transform:uppercase}.absence-table{border-collapse:collapse;width:330px;font-size:12px}.absence-table td{padding:8px 10px;border:1px solid #aebdca}.absence-table td:first-child{background:#f1f5f9;font-weight:600}.report-bottom{display:grid;grid-template-columns:1fr 1.6fr;gap:22px;margin-top:6px}.report-note{border:1px solid #b9d7f2;border-radius:9px;padding:13px;background:#f5f9fd;font-size:12px}.report-note p{min-height:50px;margin:8px 0 0;white-space:normal}.report-sign{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px;text-align:center;font-size:12px;align-items:start}.signature-box{display:grid;grid-template-rows:34px 58px 18px 1px;justify-items:center;align-items:start;min-width:0}.signature-title{height:34px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;line-height:1.2}.signature-title span,.signature-title b{display:block;margin:0;min-height:0}.signature-title b{font-weight:800}.sign-space{height:58px;width:100%}.signature-box strong{display:block;font-weight:700;height:18px;line-height:18px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.sign-line{width:78%;border-top:1px solid #111;margin:0;height:1px}.report-actions{text-align:right;margin-top:20px}.report-selector{margin-bottom:16px}.report-input-table{overflow:auto}.report-input-table .table td{vertical-align:top}.report-input-table small{display:block;color:#7b8da0;font-size:10px;margin-top:3px}.report-input-table textarea{min-width:300px}.report-edit-grid{margin-top:16px}.extra-row{display:grid;grid-template-columns:1fr 1.3fr auto;gap:7px;margin:7px 0}.report-publish{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-top:12px}.report-publish label{max-width:220px}
@page{size:A4 portrait;margin:10mm 10mm 11mm}
@media print{
  html,body{background:#fff!important;color:#111!important;margin:0!important;padding:0!important;font-family:Arial,Helvetica,sans-serif!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .sidebar,.topbar,.footer,.report-actions,.toolbar,.report-filter{display:none!important}
  .app,.main{display:block!important;margin:0!important;width:100%!important;min-width:0!important}
  .content{padding:0!important}
  .report-sheet{box-shadow:none!important;border:0!important;border-radius:0!important;max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
  .report-print-head{display:grid!important;grid-template-columns:29mm 1fr;align-items:center;gap:5mm;min-height:31mm;padding:0 0 2mm}
  .report-print-logo{display:flex;align-items:center;justify-content:center}.report-print-logo img{width:27mm;height:27mm;object-fit:contain}
  .report-print-head-text{text-align:center;line-height:1.05}.report-org-name{font-size:14pt;font-weight:800}.report-school-name{font-size:25pt;font-weight:900;letter-spacing:1.1px;margin-top:1mm}.report-legal,.report-npsn{font-size:10pt;font-weight:700;margin-top:1mm}
  .report-print-address{border-top:2px solid #111;border-bottom:5px double #111;text-align:center;padding:2.2mm 1mm;font-size:8.5pt;font-weight:600;line-height:1.15;margin-bottom:4mm}
  .report-title{display:block!important;background:transparent!important;color:#111!important;text-align:center;font-size:16pt!important;font-weight:900;padding:0!important;border-radius:0!important;margin:0 0 4mm!important;text-transform:uppercase}.report-title:after{content:'TAHUN PELAJARAN 2026/2027';display:block;font-size:9pt;margin-top:1.5mm}
  .report-identitas{display:grid;grid-template-columns:1fr 1fr;gap:5mm;margin-bottom:4mm;padding:4mm 5mm;background:#f7fafc!important;border:1px solid #9fc8e9!important;border-radius:3mm;font-size:8.5pt}.report-identitas>div{grid-template-columns:36mm 1fr;gap:1.2mm 1.5mm}.report-identitas b,.report-identitas span{color:#111!important}
  .report-table-wrap{overflow:visible!important}.report-table{font-size:8pt!important;width:100%;table-layout:fixed}.report-table th{background:#2879b9!important;color:#fff!important;border:1px solid #2b4f6d!important;padding:1.8mm 1.5mm!important}.report-table td{background:#fff!important;color:#111!important;border:1px solid #6f7f8c!important;padding:1.8mm 1.5mm!important;line-height:1.2}.report-table th:nth-child(1){width:9mm}.report-table th:nth-child(2){width:48mm}.report-table th:nth-child(3){width:17mm}.report-table th:nth-child(4){width:20mm}.report-table td small{color:#333!important;font-size:7pt;margin-top:.6mm}.report-table .score{font-size:10pt!important}
  .report-subtitle{display:block;background:transparent!important;color:#111!important;border-bottom:1.5px solid #2879b9!important;border-radius:0!important;padding:0 0 1mm!important;margin:4mm 0 1.5mm!important;font-size:9pt!important}.absence-table{width:65mm!important;font-size:8pt!important}.absence-table td{border:1px solid #6f7f8c!important;padding:1.5mm 2mm!important}.absence-table td:first-child{background:#f1f5f9!important}.report-bottom{grid-template-columns:65mm 1fr;gap:5mm;margin-top:1mm}.report-note{border:1px solid #9fc8e9!important;border-radius:2mm!important;padding:3mm;background:#f7fafc!important;font-size:8pt}.report-note p{min-height:15mm;margin:2mm 0 0}.report-sign{grid-template-columns:1fr 1fr 1fr;gap:5mm;margin-top:10mm;font-size:8pt}.signature-box{grid-template-rows:10mm 17mm 5mm 0.3mm}.signature-title{height:10mm;line-height:1.2}.sign-space{height:17mm}.signature-box strong{height:5mm;line-height:5mm}.sign-line{margin:0}.report-sheet table,.report-sheet tr,.report-sheet td,.report-sheet th{page-break-inside:avoid}.report-subtitle{page-break-after:avoid}.report-print-head,.report-print-address,.report-title,.report-identitas{page-break-inside:avoid}
}

/* V44 - Profil Siswa profesional dan responsif */
.student-profile-card{padding:0;overflow:hidden;background:#fff;border:1px solid #dce8f2;box-shadow:0 10px 30px rgba(14,55,92,.08)}
.student-profile-head{display:grid;grid-template-columns:170px 1fr;align-items:center;gap:24px;padding:24px;background:linear-gradient(120deg,#eef8ff 0%,#fff 62%,#f5fbff 100%);border-bottom:1px solid #dce8f2;position:relative;overflow:hidden}
.student-profile-head:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-100px;top:-150px;background:rgba(13,140,240,.07);pointer-events:none}
.student-profile-head>div:last-child{position:relative;z-index:1}
.student-avatar-img{display:block!important;width:150px!important;height:190px!important;max-width:150px!important;max-height:190px!important;min-width:150px!important;min-height:190px!important;object-fit:cover!important;object-position:center top!important;border-radius:14px!important;border:4px solid #fff!important;box-shadow:0 8px 22px rgba(7,56,96,.16)!important;background:#f0443d!important}
.student-placeholder{display:grid!important;place-items:center!important;background:#eaf4fb!important;color:#6d8498!important;font-size:42px!important}
.student-profile-head h3{margin:0 0 8px;font-size:26px;color:#103a64;letter-spacing:.2px}
.student-profile-head .badge{margin-bottom:8px}
.student-profile-head .muted{margin:5px 0 0;font-size:13px}
.profile-section-title{grid-column:1/-1;margin:8px 0 0!important;padding:11px 14px;border-left:4px solid #0d8cf0;background:#f3f9fe;border-radius:7px;color:#123b63!important;font-size:15px!important}
.student-profile-card+.panel{margin-top:16px}
.form-grid .profile-section-title~label{min-width:0}
.panel .form-grid{align-items:start}
.panel .form-grid input,.panel .form-grid select,.panel .form-grid textarea{font-size:13px}
.doc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:15px}
.doc-card{border:1px solid #dce7f0;border-radius:11px;padding:13px;background:#f9fcff;display:flex;flex-direction:column;gap:7px;min-width:0}
.doc-card b{font-size:12px;color:#173d62}.doc-card small{color:#7890a5;font-size:11px}.doc-card form{margin:0}.doc-card .btn{width:max-content}
@media(max-width:850px){.student-profile-head{grid-template-columns:130px 1fr;gap:18px;padding:18px}.student-avatar-img{width:120px!important;height:155px!important;max-width:120px!important;max-height:155px!important;min-width:120px!important;min-height:155px!important}.student-profile-head h3{font-size:21px}.doc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.student-profile-head{grid-template-columns:1fr;text-align:center;justify-items:center}.student-profile-head>div:last-child{width:100%}.student-avatar-img{width:125px!important;height:160px!important;max-width:125px!important;max-height:160px!important;min-width:125px!important;min-height:160px!important}.doc-grid{grid-template-columns:1fr}.profile-section-title{font-size:14px!important}}

/* DASHBOARD REFINEMENT - profile photos are intentionally constrained */
.hero{min-height:150px}
.hero>img{width:88px!important;height:88px!important;max-width:88px!important;max-height:88px!important;flex:0 0 88px;object-fit:contain}
.guru-hero{gap:22px;padding:22px 24px}
.guru-hero-info{display:flex;align-items:center;gap:18px;min-width:0}
.guru-dashboard-photo{width:76px!important;height:92px!important;max-width:76px!important;max-height:92px!important;min-width:76px;min-height:92px;display:block;object-fit:cover;object-position:center top;border-radius:12px;border:3px solid #fff;box-shadow:0 8px 22px rgba(9,65,112,.16);background:#eef6fb;flex:0 0 auto}
.guru-photo-placeholder{display:grid!important;place-items:center;font-size:30px!important;object-fit:initial!important}
.student-dashboard-profile{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:16px 0}
.student-dashboard-id{display:flex;align-items:center;gap:18px;min-width:0}
.student-dashboard-photo{width:96px!important;height:120px!important;max-width:96px!important;max-height:120px!important;min-width:96px;min-height:120px;display:block;object-fit:cover;object-position:center top;border-radius:12px;border:3px solid #fff;box-shadow:0 8px 22px rgba(9,65,112,.14);background:#eef6fb;flex:0 0 auto}
.student-placeholder{display:grid!important;place-items:center;font-size:34px!important;object-fit:initial!important}
.student-dashboard-id h3{margin:5px 0 7px;font-size:22px;color:#10345e}
.student-dashboard-id .muted{margin:4px 0}
.student-dashboard-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}
.dashboard-report-card{display:flex;justify-content:space-between;align-items:center;gap:18px}
.dashboard-report-card h3{margin:5px 0 6px}
.dashboard-report-card p{margin:5px 0}
@media(max-width:760px){
 .hero{padding:18px;min-height:120px}.hero>img{width:64px!important;height:64px!important;max-width:64px!important;max-height:64px!important;flex-basis:64px}
 .guru-hero-info{gap:12px}.guru-dashboard-photo{width:62px!important;height:76px!important;max-width:62px!important;max-height:76px!important;min-width:62px;min-height:76px}
 .student-dashboard-profile{align-items:flex-start;flex-direction:column}.student-dashboard-actions{justify-content:flex-start;width:100%}
 .dashboard-report-card{align-items:flex-start;flex-direction:column}.dashboard-report-card .btn{width:100%;text-align:center}
}


/* PROFIL GURU - PROFESSIONAL LAYOUT */
.teacher-profile-card{overflow:hidden;padding:0!important;border:1px solid #dbe7f3;background:#fff}
.teacher-profile-head{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:26px;padding:24px 28px;background:linear-gradient(135deg,#f5fbff,#ffffff);border-bottom:1px solid #e3edf5}
.teacher-profile-head .teacher-avatar,.teacher-profile-head .teacher-avatar-img{width:150px!important;height:190px!important;max-width:150px!important;max-height:190px!important;min-width:150px!important;min-height:190px!important;display:block;object-fit:cover;object-position:center top;border-radius:14px;border:4px solid #fff;box-shadow:0 8px 24px rgba(10,67,110,.16);background:#edf5fb;overflow:hidden}
.teacher-profile-head .teacher-avatar{display:grid!important;place-items:center;font-size:42px!important;color:#1b5f91}
.teacher-profile-head h3{margin:0 0 8px;font-size:27px;line-height:1.15;color:#10345e}
.teacher-profile-head .badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#e8f4ff;color:#1264a0;font-weight:700;font-size:12px}
.teacher-profile-head .muted{margin:10px 0 0;line-height:1.6}
.teacher-profile-card + .panel{margin-top:16px}
.teacher-profile-card + .panel form.form-grid{padding-top:4px}
.profile-section-title{grid-column:1/-1;margin:8px 0 2px;padding:11px 14px;border-left:4px solid #0b84d8;border-radius:8px;background:#f3f9fe;color:#123f67;font-size:15px}
.teacher-profile-card~.panel .form-grid label{min-width:0}
.teacher-profile-card~.panel .form-grid input,.teacher-profile-card~.panel .form-grid select,.teacher-profile-card~.panel .form-grid textarea{width:100%;box-sizing:border-box}
.teacher-profile-card~.panel .doc-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:900px){.teacher-profile-card~.panel .doc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.teacher-profile-head{grid-template-columns:1fr;text-align:center;justify-items:center;padding:20px}.teacher-profile-head>div{width:100%}.teacher-profile-head .teacher-avatar,.teacher-profile-head .teacher-avatar-img{width:130px!important;height:165px!important;max-width:130px!important;max-height:165px!important;min-width:130px!important;min-height:165px!important}.teacher-profile-head h3{font-size:22px}.teacher-profile-card~.panel .doc-grid{grid-template-columns:1fr}}

/* V44 — TKA exam components */
.tka-question{position:relative;border:1px solid #e6eaf0;border-radius:14px;padding:18px;margin:0 0 16px;background:#fff}
.tka-question-text{font-size:15px;line-height:1.65;margin:10px 0 14px;font-weight:600}
.tka-stimulus{background:#f7f9fc;border-left:4px solid #2563eb;border-radius:8px;padding:14px 16px;margin:0 0 12px;line-height:1.65}
.tka-instruction{background:#fff8e8;border:1px solid #f2dfaa;border-radius:8px;padding:10px 12px;margin:0 0 12px;line-height:1.55}
.tka-matrix td,.tka-matrix th{vertical-align:middle}
.tka-matrix td:not(:first-child),.tka-matrix th:not(:first-child){text-align:center;width:120px}
.tka-matrix input[type=radio]{transform:scale(1.15)}
.tka-builder{background:#fbfcff;border:1px solid #dfe7f4}
.tka-statement-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:10px;margin:8px 0}
.tka-statement-row input,.tka-statement-row select{width:100%}
@media(max-width:720px){.tka-statement-row{grid-template-columns:1fr}.tka-matrix td:not(:first-child),.tka-matrix th:not(:first-child){width:90px}}
