.prr-card{background:#fff;border:1px solid #dcdcde;border-radius:8px;padding:20px;margin:16px 0;box-sizing:border-box}
.prr-grid{display:grid;gap:16px}
.prr-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.prr-grid.one{grid-template-columns:1fr}
.prr-card label{display:block;font-weight:600;margin:0 0 6px}
.prr-card input[type=text],.prr-card input[type=email],.prr-card input[type=date],.prr-card textarea,.prr-card select{width:100%;padding:9px 11px;border:1px solid #c3c4c7;border-radius:6px;box-sizing:border-box}
.prr-card textarea{min-height:86px;resize:vertical}
.prr-section-title{font-size:18px;font-weight:700;margin:24px 0 12px}
.prr-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.prr-table-wrap{overflow:auto}
.prr-table{width:100%;border-collapse:collapse}
.prr-table th,.prr-table td{border:1px solid #dcdcde;padding:10px;text-align:left;vertical-align:top}
.prr-filter-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:16px}
.prr-notice{padding:12px 14px;border-radius:6px;margin:12px 0}
.prr-notice.success{background:#ecf9f1;border:1px solid #7ad39b}
.prr-notice.error{background:#fff0f0;border:1px solid #e29f9f}
.prr-admin-nav{display:flex;gap:14px;flex-wrap:wrap;margin:0 0 16px}
.prr-admin-link{display:inline-block;padding:10px 14px;background:#fff;border:1px solid #dcdcde;border-radius:6px;text-decoration:none}
.prr-inline-check-row{display:flex;gap:16px;flex-wrap:wrap;margin:10px 0 16px}
.prr-inline-check{display:inline-flex!important;align-items:center;gap:8px;margin-right:18px;font-weight:500}
.prr-inline-check input{margin:0}
.prr-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}
.prr-modal:target,.prr-modal.is-open{display:flex!important}
.prr-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.prr-modal__dialog{position:relative;background:#fff;width:min(720px,95vw);max-height:90vh;overflow:auto;border-radius:12px;padding:24px;box-shadow:0 16px 40px rgba(0,0,0,.22)}
.prr-modal__dialog--lg{width:min(860px,95vw)}
.prr-modal__close{position:absolute;top:10px;right:10px;border:0;background:#f1f1f1;border-radius:999px;width:34px;height:34px;font-size:24px;cursor:pointer;text-decoration:none;color:#111;display:flex;align-items:center;justify-content:center}
.prr-modal-trigger{margin-left:8px}
body.prr-modal-open{overflow:hidden}
@media (max-width:782px){.prr-grid.two{grid-template-columns:1fr}.prr-modal-trigger{display:block;margin:8px 0 0}}

.prr-modal[hidden]{display:none!important}

.prr-modal__backdrop{border:0;padding:0;margin:0;cursor:pointer}
.prr-modal__close{line-height:1}

.prr-hidden{display:none!important}
.prr-select-with-trigger{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.prr-select-with-trigger select{flex:1 1 240px}

.prr-admin-spacer{flex:1 1 auto}
.prr-admin-link-auth{margin-left:auto}
.prr-auth-links{display:flex;gap:10px;justify-content:flex-end;margin:0 0 12px}
@media (max-width:782px){.prr-admin-link-auth{margin-left:0}.prr-admin-spacer{display:none}.prr-auth-links{justify-content:flex-start}}


.prr-admin-nav{align-items:center;gap:10px 12px}
.prr-admin-link{padding:8px 12px;font-size:15px;line-height:1.25;border-radius:8px;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.prr-card .button,
.prr-card .button.button-primary,
.prr-admin-link{
  min-height:auto;
  height:auto;
  padding:8px 14px;
  border-radius:8px;
  font-weight:600;
}
.prr-table-actions{white-space:nowrap}
.prr-table-actions .prr-btn--action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:96px;
  padding:7px 12px;
  margin:0 6px 0 0;
}
.prr-table-actions .prr-btn--action:last-child{margin-right:0}
.prr-status-badge{
  display:inline-block;
  padding:7px 12px;
  border-radius:999px;
  font-weight:700;
  line-height:1.1;
}
.prr-status-badge--complete{
  background:#e7f6ea;
  color:#1f6f3d;
  border:1px solid #8dc79d;
}
.prr-status-badge--incomplete{
  background:#f4f4f4;
  color:#555;
  border:1px solid #d0d0d0;
}
@media (max-width:782px){
  .prr-admin-link{font-size:14px;padding:8px 10px}
  .prr-table-actions .prr-btn--action{min-width:86px;margin-bottom:6px}
}


.prr-stack-fields > div{margin-bottom:16px;}
.prr-stack-fields > div:last-child{margin-bottom:0;}

.prr-form-divider{border:0;border-top:1px solid #dcdcde;margin:18px 0 22px;}
.prr-status-badge--archived{
  background:#fff4d6;
  color:#7a5500;
  border:1px solid #e4c36a;
}

.prr-grades-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin-top:12px}
.prr-grade-average{margin-top:14px;padding:10px 12px;background:#f6f7f7;border:1px solid #dcdcde;border-radius:6px}
@media (max-width:782px){.prr-grades-grid{grid-template-columns:1fr}}


.prr-grades-details{
  margin:18px 0;
  padding:14px;
  border:1px solid #dcdcde;
  border-radius:8px;
  background:#fbfbfb;
}
.prr-grades-summary{
  cursor:pointer;
  display:inline-flex!important;
  align-items:center;
  gap:12px;
  list-style:none;
  user-select:none;
}
.prr-grades-summary::-webkit-details-marker{display:none}
.prr-grades-summary::before{content:'▸';font-size:13px;line-height:1}
.prr-grades-details[open] .prr-grades-summary::before{content:'▾'}
.prr-grades-summary-meta{
  font-weight:500;
  color:#555;
  font-size:13px;
}
.prr-grades-panel{margin-top:16px}
@media print{.prr-no-print,.prr-grades-details{display:none!important}}


.prr-grades-launch{
  margin:18px 0;
  padding:14px;
  border:1px solid #dcdcde;
  border-radius:8px;
  background:#fbfbfb;
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.prr-grades-open{display:inline-flex!important;align-items:center;gap:8px}
.prr-grades-open::before{content:'▣';font-size:13px;line-height:1}
.prr-grades-student{margin:0 0 12px;font-size:15px}
.prr-grades-modal-dialog .prr-section-title{margin-top:8px}
.prr-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
@media print{.prr-grades-launch,#prr-modal-grades{display:none!important}}

.prr-grade-status-badge{display:inline-block;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700;line-height:1.4;background:#eef2f7;color:#24344d;white-space:nowrap}
.prr-grade-status-badge--tikrinta{background:#e4f7e7;color:#155724}
.prr-grade-status-badge--netikrinta{background:#fff3cd;color:#856404}
.prr-grade-status-badge--neivesta{background:#f1f3f5;color:#495057}
.prr-grade-status-field{margin:10px 0 14px;padding:12px;border:1px solid #d8dee8;border-radius:8px;background:#f8fafc}
.prr-grade-status-field label{display:block;margin-bottom:6px;font-weight:700}
.prr-grade-status-field select{max-width:260px;width:100%}
@media print{.prr-grade-status-field{display:none!important}}

.prr-grades-import-box{
  margin:0 0 16px;
  padding:12px;
  border:1px solid #d8dee8;
  border-radius:8px;
  background:#f8fafc;
}
.prr-grades-import-box h4{margin:0 0 8px;font-size:15px}
.prr-ocr-debug{margin:0 0 16px;padding:12px;border:1px dashed #8c8f94;border-radius:8px;background:#fff}
.prr-ocr-debug h4{margin:0 0 8px;font-size:15px}
@media print{.prr-grades-import-box,.prr-ocr-debug{display:none!important}}
