:root{
  --dvlmpqr-primary:var(--dvlm-primary,var(--dvl-primary,#d18062));
  --dvlmpqr-secondary:var(--dvlm-secondary,var(--dvl-secondary,#a9553d));
  --dvlmpqr-text:var(--dvlm-text,#2b1814);
  --dvlmpqr-heading:var(--dvlm-heading,#1a0f0c);
  --dvlmpqr-border:rgba(43,24,20,.12);
  --dvlmpqr-soft:#fff8f4;
  --dvlmpqr-shadow:0 10px 28px rgba(43,24,20,.06);
}
.dvlmpqr-wrap,
.dvlmpqr-wrap *{box-sizing:border-box}
.dvlmpqr-wrap{
  color:var(--dvlmpqr-text);
  direction:rtl;
  text-align:right;
}
.dvlmpqr-hero,
.dvlmpqr-filters,
.dvlmpqr-result-card,
.dvlmpqr-empty{
  border:1px solid var(--dvlmpqr-border);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--dvlmpqr-shadow);
}
.dvlmpqr-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:20px;
  background:linear-gradient(135deg,#fffaf7,#fff);
  margin-bottom:14px;
}
.dvlmpqr-hero span{
  display:block;
  color:var(--dvlmpqr-secondary);
  font-weight:900;
  font-size:13px;
}
.dvlmpqr-hero h3{
  margin:4px 0 0;
  color:var(--dvlmpqr-heading);
  font-size:25px;
  line-height:1.2;
}
.dvlmpqr-hero p{
  margin:8px 0 0;
  color:#765b52;
  line-height:1.65;
}
.dvlmpqr-hero-icon{
  display:grid;
  place-items:center;
  min-width:56px;
  height:56px;
  border-radius:16px;
  background:#fff1ea;
  color:var(--dvlmpqr-secondary);
  border:1px solid rgba(209,128,98,.24);
}
.dvlmpqr-hero-icon .dashicons{
  font-size:28px;
  width:28px;
  height:28px;
}
.dvlmpqr-filters{
  display:grid;
  grid-template-columns:1.3fr repeat(3,minmax(150px,1fr)) auto;
  gap:10px;
  padding:14px;
  margin-bottom:12px;
  align-items:end;
}
.dvlmpqr-filters label{
  display:block;
  min-width:0;
}
.dvlmpqr-filters label span{
  display:block;
  margin-bottom:6px;
  color:var(--dvlmpqr-heading);
  font-weight:900;
  font-size:12px;
}
.dvlmpqr-filters input,
.dvlmpqr-filters select{
  width:100%;
  min-height:42px;
  border:1px solid rgba(43,24,20,.16);
  border-radius:11px;
  background:#fff;
  padding:9px 10px;
  color:var(--dvlmpqr-text);
  font-weight:800;
  outline:none;
}
.dvlmpqr-filters input:focus,
.dvlmpqr-filters select:focus{
  border-color:rgba(209,128,98,.55);
  box-shadow:0 0 0 3px rgba(209,128,98,.14);
}
.dvlmpqr-primary-btn,
.dvlmpqr-secondary-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:42px;
  padding:0 14px;
  border-radius:11px;
  border:1px solid rgba(209,128,98,.24);
  text-decoration:none!important;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}
.dvlmpqr-primary-btn{
  background:var(--dvlmpqr-primary);
  color:#1b0d09!important;
}
.dvlmpqr-secondary-btn{
  background:#fff;
  color:var(--dvlmpqr-secondary)!important;
}
.dvlmpqr-secondary-btn:hover{
  background:#fff1ea;
  color:var(--dvlmpqr-heading)!important;
}
.dvlmpqr-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 12px;
}
.dvlmpqr-results-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(270px,1fr));
  gap:10px;
}
.dvlmpqr-result-card{
  --dvlmpqr-subject-color:var(--dvlmpqr-secondary);
  --dvlmpqr-subject-soft:#fff8f4;
  --dvlmpqr-subject-border:rgba(209,128,98,.30);
  --dvlmpqr-subject-deep:var(--dvlmpqr-heading);
  padding:13px;
  border-radius:15px;
  border-color:var(--dvlmpqr-subject-border);
  box-shadow:0 8px 22px rgba(43,24,20,.045);
}
.dvlmpqr-result-card:hover{
  border-color:var(--dvlmpqr-subject-color);
}
.dvlmpqr-result-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.dvlmpqr-score{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
}
.dvlmpqr-score.is-good{
  background:#f2fbf5;
  color:#237144;
}
.dvlmpqr-score.is-medium{
  background:#fff8e8;
  color:#9b6500;
}
.dvlmpqr-score.is-low{
  background:#fff4f4;
  color:#a12626;
}
.dvlmpqr-date{
  color:#8b7068;
  font-size:11.5px;
  font-weight:800;
}
.dvlmpqr-result-card h4{
  margin:0 0 9px;
  color:var(--dvlmpqr-subject-deep);
  font-size:15.5px;
  line-height:1.45;
}
.dvlmpqr-meta{
  display:flex;
  flex-direction:column;
  gap:5px;
  color:#6c4d43;
  font-size:12.5px;
  line-height:1.35;
}
.dvlmpqr-meta span{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:800;
}
.dvlmpqr-meta .dashicons{
  width:15px;
  height:15px;
  min-width:15px;
  font-size:15px;
  color:var(--dvlmpqr-subject-color);
}
.dvlmpqr-empty{
  text-align:center;
  padding:34px 18px;
}
.dvlmpqr-empty>.dashicons{
  font-size:42px;
  width:42px;
  height:42px;
  color:var(--dvlmpqr-secondary);
}
.dvlmpqr-empty strong{
  display:block;
  margin:10px 0 6px;
  color:var(--dvlmpqr-heading);
  font-size:18px;
}
.dvlmpqr-empty p{
  margin:0;
  color:#765d55;
}
.dvlmpqr-notice{
  margin:0 0 13px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(80,120,160,.22);
  background:#f3f8fc;
  color:#274c68;
  font-weight:800;
}
.dvlmpqr-notice-warning{
  border-color:rgba(209,128,98,.40);
  background:#fff8ed;
  color:#73431f;
}
@media(max-width:980px){
  .dvlmpqr-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dvlmpqr-filters .dvlmpqr-primary-btn{
    width:100%;
  }
}
@media(max-width:640px){
  .dvlmpqr-hero{
    display:block;
    padding:16px;
  }
  .dvlmpqr-hero-icon{
    margin-top:12px;
  }
  .dvlmpqr-filters{
    grid-template-columns:1fr;
    padding:12px;
    border-radius:15px;
  }
  .dvlmpqr-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .dvlmpqr-results-grid{
    grid-template-columns:1fr;
    gap:9px;
  }
}

/* v1.0.1 compact result list */
.dvlmpqr-results-grid,
.dvlmpqr-result-card{
  display:none!important;
}
.dvlmpqr-results-list{
  border:1px solid var(--dvlmpqr-border);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  box-shadow:var(--dvlmpqr-shadow);
}
.dvlmpqr-result-header,
.dvlmpqr-result-row{
  display:grid;
  grid-template-columns:minmax(210px,1.6fr) minmax(120px,.95fr) minmax(150px,1fr) minmax(90px,.7fr) minmax(95px,.7fr) minmax(95px,.7fr);
  gap:8px;
  align-items:center;
}
.dvlmpqr-result-header.is-student,
.dvlmpqr-result-row.is-student{
  grid-template-columns:minmax(240px,1.7fr) minmax(170px,1fr) minmax(90px,.7fr) minmax(95px,.7fr) minmax(95px,.7fr);
}
.dvlmpqr-result-header{
  padding:10px 12px;
  background:#fff8f4;
  color:#76574b;
  font-size:11.5px;
  font-weight:900;
  border-bottom:1px solid rgba(43,24,20,.08);
}
.dvlmpqr-result-row{
  --dvlmpqr-subject-color:var(--dvlmpqr-secondary);
  --dvlmpqr-subject-soft:#fff8f4;
  --dvlmpqr-subject-border:rgba(209,128,98,.30);
  --dvlmpqr-subject-deep:var(--dvlmpqr-heading);
  padding:9px 12px;
  border-bottom:1px solid rgba(43,24,20,.07);
  font-size:12.5px;
  color:#5f443b;
  font-weight:800;
}
.dvlmpqr-result-row:last-child{
  border-bottom:0;
}
.dvlmpqr-result-row:hover{
  background:var(--dvlmpqr-subject-soft);
}
.dvlmpqr-row-main{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.dvlmpqr-row-main strong{
  color:var(--dvlmpqr-subject-deep);
  font-size:13px;
  line-height:1.4;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.dvlmpqr-row-dot{
  display:block;
  width:8px;
  height:28px;
  min-width:8px;
  border-radius:999px;
  background:var(--dvlmpqr-subject-color);
}
.dvlmpqr-result-row>div{
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.dvlmpqr-row-score{
  display:flex;
  align-items:center;
  gap:6px;
}
.dvlmpqr-row-score .dvlmpqr-score{
  min-height:24px;
  padding:0 8px;
  font-size:11px;
}
.dvlmpqr-row-score small{
  color:#7b6259;
  font-weight:900;
  font-size:11.5px;
}
.dvlmpqr-row-date{
  color:#8b7068;
  font-size:11.5px;
}
@media(max-width:820px){
  .dvlmpqr-result-header{
    display:none;
  }
  .dvlmpqr-results-list{
    display:grid;
    gap:8px;
    border:0;
    background:transparent;
    box-shadow:none;
    overflow:visible;
  }
  .dvlmpqr-result-row,
  .dvlmpqr-result-row.is-student{
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
    padding:11px;
    border:1px solid var(--dvlmpqr-subject-border);
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 20px rgba(43,24,20,.045);
  }
  .dvlmpqr-row-main strong{
    white-space:normal;
  }
  .dvlmpqr-result-row>div:not(.dvlmpqr-row-main){
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    padding-top:5px;
    border-top:1px solid rgba(43,24,20,.06);
  }
  .dvlmpqr-result-row>div:not(.dvlmpqr-row-main):before{
    content:attr(data-label);
    color:#8b7068;
    font-size:11px;
    font-weight:900;
  }
}

/* v1.0.3 hard fix: centered icons in result buttons */
.dvlmpqr-wrap .dvlmpqr-primary-btn,
.dvlmpqr-wrap .dvlmpqr-secondary-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  line-height:1!important;
}
.dvlmpqr-wrap .dvlmpqr-primary-btn .dashicons,
.dvlmpqr-wrap .dvlmpqr-secondary-btn .dashicons{
  display:inline-block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  font-size:18px!important;
  line-height:18px!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  vertical-align:middle!important;
  position:static!important;
  transform:none!important;
}

/* v1.0.4 final score popup */
.dvlmpqr-final-popup{
  position:fixed;
  inset:0;
  z-index:100000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(24,12,8,.52);
  direction:rtl;
  text-align:center;
}
.dvlmpqr-final-dialog{
  width:min(430px,100%);
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(209,128,98,.28);
  box-shadow:0 24px 80px rgba(24,12,8,.28);
  padding:24px 18px 18px;
}
.dvlmpqr-final-score{
  display:grid;
  place-items:center;
  width:92px;
  height:92px;
  margin:0 auto 14px;
  border-radius:50%;
  background:#fff1ea;
  border:1px solid rgba(209,128,98,.28);
  color:#a9553d;
  font-size:24px;
  font-weight:900;
  direction:ltr;
}
.dvlmpqr-final-dialog h3{
  margin:0 0 8px;
  color:#1a0f0c;
  font-size:22px;
}
.dvlmpqr-final-dialog p{
  margin:0;
  color:#5f443b;
  font-size:14px;
  line-height:1.8;
  font-weight:800;
}
.dvlmpqr-final-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  margin-top:16px;
  padding:0 18px;
  border:1px solid rgba(209,128,98,.26);
  border-radius:12px;
  background:#d18062;
  color:#1b0d09;
  font-weight:900;
  cursor:pointer;
}

/* v1.0.5 student score visibility in results tab */
.dvlmpqr-score.is-private{
  background:#f5f5f5!important;
  color:#666!important;
}
.dvlmpqr-row-score.is-hidden-score small{
  color:#8b7068;
  font-size:11px;
}

/* v1.0.6 final popup always appears, score optional */
.dvlmpqr-final-score.is-done{
  background:#f2fbf5;
  color:#237144;
  font-size:34px;
}


/* v1.0.7 final UI: remove instructional notes */
.dvlmpqr-hero p,
.dvlmpqr-empty p{
  display:none!important;
}


/* v1.0.9 remove only useless content labels; keep navigation tab names */
.dvlmpqr-hero,
.dvlmpqr-empty p{
  display:none!important;
}
.dvlmpqr-wrap > :first-child{
  margin-top:0!important;
}
