/* FINAL BENAR: menu laporan guru dipisah dari finance + dashboard bersih tombol aktif */
.guru-report-menu{border:1px solid rgba(56,189,248,.34)!important;background:linear-gradient(180deg,rgba(14,165,233,.10),rgba(15,23,42,.06))!important}
.finance-only-menu{border:1px solid rgba(34,197,94,.20)!important;background:rgba(15,23,42,.10)!important}
.dashboard-clean-hero{max-width:1380px;margin:0 auto 16px;padding:28px 30px;border-radius:24px;background:linear-gradient(135deg,#0b65d8,#10b6c9);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 18px 50px rgba(14,165,233,.22);overflow:hidden;position:relative}
.dashboard-clean-hero:after{content:"";position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.14)}
.dashboard-clean-hero h2{font-size:clamp(28px,3.4vw,52px);line-height:1;margin:8px 0 10px;font-weight:1000;letter-spacing:-.04em}.dashboard-clean-hero p{max-width:850px;font-weight:800;line-height:1.65;margin:0}.dashboard-stat-rapi{max-width:1380px;margin:0 auto 16px}.dashboard-action-panel,.dashboard-guru-note{max-width:1380px;margin-left:auto;margin-right:auto}.dashboard-important-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px}.dashboard-important-buttons a{min-height:84px;display:flex;align-items:center;gap:12px;padding:14px;border-radius:18px;background:linear-gradient(180deg,#ffffff,#f4f9ff);border:1px solid rgba(147,197,253,.8);box-shadow:0 10px 24px rgba(15,23,42,.06);text-decoration:none;color:#0f2747}.dashboard-important-buttons a span{width:44px;height:44px;display:grid;place-items:center;border-radius:15px;background:#e0f2fe;font-size:20px;flex:0 0 auto}.dashboard-important-buttons a b{display:block;font-size:15px;font-weight:1000}.dashboard-important-buttons a small{display:block;margin-top:5px;color:#4a607a;font-weight:800;line-height:1.35}.dashboard-important-buttons a:hover{transform:translateY(-1px);border-color:#38bdf8;box-shadow:0 16px 34px rgba(14,165,233,.16)}.dashboard-roadmap-clean{grid-template-columns:repeat(4,minmax(0,1fr))}.report-dashboard-clean{max-width:1380px;margin:0 auto 16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.report-dashboard-clean article{padding:18px;border-radius:18px;background:#fff;border:1px solid #cfe1f5;box-shadow:0 12px 30px rgba(15,23,42,.06)}.report-dashboard-clean b{font-size:32px;font-weight:1000;color:#063b76}.report-dashboard-clean span{display:block;margin-top:4px;font-weight:1000;color:#0e2a47}.report-dashboard-clean small{display:block;margin-top:4px;color:#55708b;font-weight:800}.guru-filter-card,.guru-output-table,.guru-report-note{max-width:1380px;margin-left:auto;margin-right:auto}.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.fitur-tabs-benar{max-width:1380px;margin:16px auto}.guru-output-table small{display:block;margin-top:4px;color:#55708b;font-weight:800;line-height:1.35}.selected-output-card{border:2px solid rgba(14,165,233,.25)!important;background:linear-gradient(180deg,#fff,#f1f9ff)!important}.empty-state{padding:18px;border-radius:16px;background:#f8fafc;border:1px dashed #bdd7f4;font-weight:900;color:#4b647f}
@media(max-width:1100px){.dashboard-important-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.report-dashboard-clean{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-roadmap-clean{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-clean-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.dashboard-important-buttons,.report-dashboard-clean,.form-grid.five,.dashboard-roadmap-clean{grid-template-columns:1fr}.dashboard-clean-hero{padding:22px 18px;border-radius:20px}.dashboard-important-buttons a{min-height:74px}.report-table th,.report-table td{font-size:12px}}
@media print{.sidebar,.topbar,.actions,.mobile-menu-btn{display:none!important}.main{margin:0!important;padding:0!important}.card,.report-dashboard-clean article{box-shadow:none!important}.report-tabs-grid,.guru-filter-card{display:none!important}}

/* FIX PERMINTAAN: dashboard depan berisi tombol penting saja */
.dashboard-hero-buttons-only{margin-bottom:14px!important}.dashboard-primary-panel{max-width:1380px;margin:0 auto 16px;padding:18px;border-radius:24px;background:#fff;border:1px solid #cfe1f5;box-shadow:0 14px 34px rgba(15,23,42,.06)}.dashboard-primary-panel.secondary{padding:16px}.dashboard-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}.dashboard-panel-head h2{font-size:22px;font-weight:1000;margin:0;color:#082a4d}.dashboard-panel-head p{margin:5px 0 0;color:#536b86;font-weight:800}.dashboard-important-big{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-important-buttons a.primary{background:linear-gradient(135deg,#0b7df0,#12b8d0)!important;color:#fff!important;border-color:rgba(14,165,233,.25)!important;box-shadow:0 18px 34px rgba(14,116,224,.20)!important}.dashboard-important-buttons a.primary small{color:rgba(255,255,255,.86)!important}.dashboard-important-buttons a.primary span{background:rgba(255,255,255,.20)!important;color:#fff}.dashboard-stat-small{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:2px!important}.dashboard-note-mini{max-width:1380px;margin:0 auto 16px;padding:18px!important}.dashboard-note-mini h2{margin-bottom:8px}.dashboard-note-mini p{margin:0;font-weight:850;line-height:1.65;color:#405b77}
@media(max-width:1050px){.dashboard-important-big,.dashboard-important-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dashboard-stat-small{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:650px){.dashboard-important-big,.dashboard-important-buttons,.dashboard-stat-small{grid-template-columns:1fr!important}.dashboard-primary-panel{padding:14px;border-radius:20px}.dashboard-panel-head{display:block}.dashboard-panel-head h2{font-size:20px}.dashboard-clean-hero h2{font-size:32px!important}.dashboard-clean-hero p{font-size:13px!important}}

/* LOCK FINAL: Rubrik penilaian dan format print nilai pendidikan */
.assessment-input-grid .card{align-self:start}.rubric-card-pro .rubric-print table,.assessment-print-doc table{width:100%;border-collapse:collapse}.rubric-print th,.rubric-print td,.assessment-print-table th,.assessment-print-table td{border:1px solid #d9e6f2;padding:9px 10px;vertical-align:top}.rubric-print th,.assessment-print-table th{background:#eef7ff;color:#0b2a4a;font-weight:900}.info-box{background:#ecfeff;border:1px solid #bae6fd;color:#0b3b58;padding:14px;border-radius:16px;margin-top:14px;line-height:1.6}.inline-filter{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.inline-filter select{border:1px solid #cfe3f5;border-radius:12px;padding:10px 12px}.btn-mini{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#0ea5e9;color:#fff!important;text-decoration:none;padding:6px 10px;font-size:12px;font-weight:800}.print-toolbar{display:flex;gap:10px;margin:10px 0 18px}.assessment-print-doc{background:#fff;color:#111;max-width:1200px;margin:0 auto;padding:28px;border-radius:12px;box-shadow:0 12px 35px rgba(15,23,42,.08)}.doc-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 18px}.doc-meta-grid>div{border:1px solid #d9e6f2;border-radius:10px;padding:10px;background:#f8fbff}.assessment-print-table{font-size:12px}.predicate-note{border:1px solid #e5e7eb;border-radius:10px;padding:10px;margin-top:12px;background:#fafafa}.signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px;text-align:center}.signature-grid p{min-height:40px}.signature-grid b{display:inline-block;border-bottom:1px solid #111;padding:0 15px 2px}.kop-image img{width:100%;max-height:135px;object-fit:contain;margin-bottom:8px}.doc-kop{display:flex;align-items:center;gap:16px;text-align:left}.doc-kop img{width:70px;height:70px;object-fit:contain}.doc-kop h2{margin:0;font-size:21px;text-transform:uppercase}.doc-kop h3{margin:3px 0;font-size:18px}.doc-kop p{margin:2px 0}.kop-line{border:0;border-top:3px double #111;margin:12px 0 16px}
@media print{body{background:#fff!important}.no-print,.sidebar,.topbar,.app-sidebar,.app-topbar,.mobile-nav{display:none!important}.app-main,.content,main{margin:0!important;padding:0!important;width:100%!important}.print-box,.assessment-print-doc{box-shadow:none!important;border:0!important;border-radius:0!important;max-width:none!important;padding:0!important}.assessment-print-table th,.assessment-print-table td,.rubric-print th,.rubric-print td{border:1px solid #222!important;color:#000!important}.assessment-print-table th,.rubric-print th{background:#f0f0f0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.signature-grid{break-inside:avoid}.doc-meta-grid{break-inside:avoid}.rubric-print{break-inside:avoid;margin-top:14px}@page{size:A4 landscape;margin:12mm}}


/* === FINAL KUNCI DASHBOARD ROLE TERPISAH === */
.role-separated-hero{border:1px solid rgba(14,165,233,.25);}
.role-separated-panel .dashboard-panel-head h2{margin-bottom:4px}
.role-separated-buttons a{min-height:86px;align-items:center}
.role-separated-buttons a.primary{box-shadow:0 14px 32px rgba(14,116,255,.18)}
.role-separated-buttons a span{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:rgba(14,165,233,.13);font-size:22px}
.role-separated-buttons a div{min-width:0}
.role-separated-buttons a b{display:block;line-height:1.2}
.role-separated-buttons a small{display:block;line-height:1.35;margin-top:5px}
.role-separated-note{border-left:6px solid #0ea5e9}
@media (max-width:720px){
  .role-separated-buttons{grid-template-columns:1fr!important}
  .role-separated-buttons a{min-height:auto;padding:14px}
  .role-separated-buttons a span{width:42px;height:42px;flex-basis:42px}
}
/* FINAL V35 - registrasi langganan dan role terpisah */
.subscription-choice{gap:12px}
.school-subscription-fields{margin:14px 0;padding:16px;border:1px solid rgba(14,165,233,.22);border-radius:18px;background:linear-gradient(135deg,#f8fbff,#eef8ff)}
.school-subscription-fields h3{margin:0 0 12px;color:#082f49;font-size:18px}
.subscription-admin-head .filterbar{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.inline-form{display:inline-block;margin:2px}.badge.warning{background:#fef3c7;color:#92400e}.badge.success{background:#dcfce7;color:#166534}.badge.error{background:#fee2e2;color:#991b1b}.btn.danger{background:#ef4444;color:white;border-color:#ef4444}
