:root{
  --dvlmpq-primary:var(--dvlm-primary,var(--dvl-primary,#d18062));
  --dvlmpq-secondary:var(--dvlm-secondary,var(--dvl-secondary,#a9553d));
  --dvlmpq-text:var(--dvlm-text,#2b1814);
  --dvlmpq-heading:var(--dvlm-heading,#1a0f0c);
  --dvlmpq-border:rgba(43,24,20,.12);
  --dvlmpq-soft:#fff8f4;
  --dvlmpq-shadow:0 10px 28px rgba(43,24,20,.06);
}
.dvlmpq-wrap,
.dvlmpq-wrap *{box-sizing:border-box}
.dvlmpq-wrap{
  color:var(--dvlmpq-text);
  direction:rtl;
  text-align:right;
}
.dvlmpq-hero,
.dvlmpq-form,
.dvlmpq-list-head,
.dvlmpq-quiz-card,
.dvlmpq-empty{
  border:1px solid var(--dvlmpq-border);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--dvlmpq-shadow);
}
.dvlmpq-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:20px;
  background:linear-gradient(135deg,#fffaf7,#fff);
  margin-bottom:14px;
}
.dvlmpq-hero span{
  display:block;
  color:var(--dvlmpq-secondary);
  font-weight:900;
  font-size:13px;
}
.dvlmpq-hero h3{
  margin:4px 0 0;
  color:var(--dvlmpq-heading);
  font-size:25px;
  line-height:1.2;
}
.dvlmpq-hero p{
  margin:8px 0 0;
  color:#765b52;
  line-height:1.65;
}
.dvlmpq-hero-icon{
  display:grid;
  place-items:center;
  min-width:56px;
  height:56px;
  border-radius:16px;
  background:#fff1ea;
  color:var(--dvlmpq-secondary);
  border:1px solid rgba(209,128,98,.24);
}
.dvlmpq-hero-icon .dashicons{font-size:28px;width:28px;height:28px}
.dvlmpq-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 14px;
}
.dvlmpq-tabs a,
.dvlmpq-primary-btn,
.dvlmpq-secondary-btn,
.dvlmpq-danger-btn,
.dvlmpq-mini-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  padding:0 14px;
  border-radius:10px;
  border:1px solid rgba(209,128,98,.24);
  text-decoration:none!important;
  font-weight:900;
  cursor:pointer;
  line-height:1;
  transition:.15s ease;
}
.dvlmpq-tabs a,
.dvlmpq-secondary-btn,
.dvlmpq-mini-btn{
  background:#fff;
  color:var(--dvlmpq-secondary)!important;
}
.dvlmpq-tabs a.is-active,
.dvlmpq-tabs a:hover,
.dvlmpq-secondary-btn:hover,
.dvlmpq-mini-btn:hover{
  background:#fff1ea;
  color:var(--dvlmpq-heading)!important;
}
.dvlmpq-primary-btn{
  background:var(--dvlmpq-primary);
  color:#1b0d09!important;
}
.dvlmpq-danger-btn{
  background:#fff4f4;
  color:#a12626!important;
  border-color:rgba(190,57,57,.24);
}
.dvlmpq-form{padding:16px}
.dvlmpq-form-head,
.dvlmpq-list-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:15px;
  margin-bottom:14px;
  border-radius:14px;
  background:#fff8f4;
  border:1px solid rgba(209,128,98,.18);
}
.dvlmpq-form-head strong,
.dvlmpq-list-head strong{
  display:block;
  color:var(--dvlmpq-heading);
  font-size:18px;
  margin-bottom:4px;
}
.dvlmpq-form-head span,
.dvlmpq-list-head span{
  display:block;
  color:#7c6158;
  font-size:13px;
  line-height:1.55;
}
.dvlmpq-field{
  display:block;
  margin:0 0 14px;
}
.dvlmpq-field>span,
.dvlmpq-options-head>span,
.dvlmpq-groups-field>span{
  display:block;
  margin-bottom:7px;
  color:var(--dvlmpq-heading);
  font-weight:900;
}
.dvlmpq-field input[type="text"],
.dvlmpq-field textarea,
.dvlmpq-field select,
.dvlmpq-option-row input[type="text"]{
  width:100%;
  min-height:46px;
  border:1px solid rgba(43,24,20,.16);
  border-radius:12px;
  background:#fff;
  padding:10px 12px;
  color:var(--dvlmpq-text);
  font-weight:800;
  outline:none;
}
.dvlmpq-field textarea{resize:vertical;line-height:1.65}
.dvlmpq-field input:focus,
.dvlmpq-field textarea:focus,
.dvlmpq-field select:focus,
.dvlmpq-option-row input:focus{
  border-color:rgba(209,128,98,.55);
  box-shadow:0 0 0 3px rgba(209,128,98,.14);
}
.dvlmpq-target-box,
.dvlmpq-questions-box{
  margin:16px 0;
  padding:16px;
  border:1px solid rgba(209,128,98,.22);
  border-radius:18px;
  background:linear-gradient(180deg,#fffaf7,#fff);
}
.dvlmpq-target-head,
.dvlmpq-questions-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.dvlmpq-target-head strong,
.dvlmpq-questions-head strong{
  display:block;
  color:var(--dvlmpq-heading);
  font-size:18px;
  font-weight:900;
}
.dvlmpq-target-head span,
.dvlmpq-questions-head span{
  display:block;
  margin-top:4px;
  color:#76574b;
  font-weight:700;
  line-height:1.55;
}
.dvlmpq-target-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.dvlmpq-groups-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
.dvlmpq-groups-list p{
  grid-column:1/-1;
  margin:0;
  padding:11px;
  border:1px dashed rgba(209,128,98,.35);
  border-radius:12px;
  background:#fff;
  color:#76574b;
  font-weight:800;
}
.dvlmpq-group-check{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:48px;
  padding:10px 11px;
  border:1px solid rgba(209,128,98,.20);
  border-radius:12px;
  background:#fff;
  color:#2b1814;
  font-weight:800;
}
.dvlmpq-group-check input{accent-color:var(--dvlmpq-secondary);margin:0}
.dvlmpq-question-card{
  padding:14px;
  border:1px solid rgba(43,24,20,.12);
  border-radius:16px;
  background:#fff;
  margin-bottom:12px;
}
.dvlmpq-question-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.dvlmpq-question-top strong{
  color:var(--dvlmpq-heading);
  font-size:16px;
}
.dvlmpq-icon-btn{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(209,128,98,.20);
  background:#fff;
  color:#a9553d;
  cursor:pointer;
}
.dvlmpq-icon-btn .dashicons{font-size:18px;width:18px;height:18px}
.dvlmpq-options-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:4px 0 9px;
}
.dvlmpq-option-row{
  display:grid;
  grid-template-columns:34px 34px minmax(0,1fr) 34px;
  gap:7px;
  align-items:center;
  margin-bottom:7px;
}
.dvlmpq-correct-radio,
.dvlmpq-correct-multi{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid rgba(209,128,98,.22);
  border-radius:10px;
  background:#fff;
  cursor:pointer;
}
.dvlmpq-correct-radio input,
.dvlmpq-correct-multi input{
  accent-color:var(--dvlmpq-secondary);
  margin:0;
}
.dvlmpq-question-card[data-question-type="radio"] .dvlmpq-correct-multi,
.dvlmpq-question-card[data-question-type="multi"] .dvlmpq-correct-radio,
.dvlmpq-question-card[data-question-type="bool"] .dvlmpq-options-box{
  display:none;
}
.dvlmpq-question-card:not([data-question-type="bool"]) .dvlmpq-bool-answer{
  display:none;
}
.dvlmpq-form-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.dvlmpq-quiz-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:11px;
}
.dvlmpq-quiz-card{
  padding:13px;
  border-radius:15px;
  box-shadow:0 8px 22px rgba(43,24,20,.045);
}
.dvlmpq-quiz-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.dvlmpq-status{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  font-size:11.5px;
  font-weight:900;
  background:#fff8e8;
  color:#9b6500;
}
.dvlmpq-status:before{
  content:"";
  width:6px;
  height:6px;
  border-radius:999px;
  background:currentColor;
}
.dvlmpq-status-publish{background:#f2fbf5;color:#237144}
.dvlmpq-status-draft{background:#f5f5f5;color:#666}
.dvlmpq-date{font-size:11.5px;color:#8b7068;font-weight:800}
.dvlmpq-quiz-card h4{
  margin:0 0 8px;
  color:var(--dvlmpq-heading);
  font-size:15.5px;
  line-height:1.45;
}
.dvlmpq-quiz-meta{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-bottom:11px;
  color:#6c4d43;
  font-size:12.3px;
  line-height:1.35;
}
.dvlmpq-quiz-meta span{
  display:flex;
  align-items:center;
  gap:6px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:800;
}
.dvlmpq-quiz-meta .dashicons{
  width:15px;
  height:15px;
  min-width:15px;
  font-size:15px;
  color:var(--dvlmpq-secondary);
}
.dvlmpq-card-actions{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  padding-top:9px;
  border-top:1px solid rgba(43,24,20,.08);
}
.dvlmpq-delete-form{margin:0}
.dvlmpq-empty{text-align:center;padding:34px 18px}
.dvlmpq-empty>.dashicons{font-size:42px;width:42px;height:42px;color:var(--dvlmpq-secondary)}
.dvlmpq-empty strong{display:block;margin:10px 0 6px;color:var(--dvlmpq-heading);font-size:18px}
.dvlmpq-empty p{margin:0 0 14px;color:#765d55}
.dvlmpq-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;
}
.dvlmpq-notice-success{border-color:rgba(42,137,82,.24);background:#f3fbf6;color:#245738}
.dvlmpq-notice-error{border-color:rgba(190,57,57,.24);background:#fff4f4;color:#7b2525}
.dvlmpq-notice-warning{border-color:rgba(209,128,98,.40);background:#fff8ed;color:#73431f}
.dvlmpq-pagination{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:16px;
}
.dvlmpq-pagination a{
  display:grid;
  place-items:center;
  min-width:34px;
  height:34px;
  border-radius:9px;
  border:1px solid rgba(209,128,98,.24);
  text-decoration:none;
  color:var(--dvlmpq-secondary);
  font-weight:900;
}
.dvlmpq-pagination a.is-active{background:#fff1ea;color:var(--dvlmpq-heading)}
@media(max-width:820px){
  .dvlmpq-target-grid,
  .dvlmpq-groups-list{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .dvlmpq-hero,
  .dvlmpq-form-head,
  .dvlmpq-list-head,
  .dvlmpq-target-head,
  .dvlmpq-questions-head{
    display:block;
  }
  .dvlmpq-hero-icon{margin-top:12px}
  .dvlmpq-form,
  .dvlmpq-target-box,
  .dvlmpq-questions-box{
    padding:12px;
    border-radius:15px;
  }
  .dvlmpq-tabs,
  .dvlmpq-form-actions{
    display:grid;
  }
  .dvlmpq-tabs a,
  .dvlmpq-primary-btn,
  .dvlmpq-secondary-btn,
  .dvlmpq-danger-btn{
    width:100%;
  }
  .dvlmpq-option-row{
    grid-template-columns:32px 32px minmax(0,1fr) 32px;
    gap:6px;
  }
  .dvlmpq-correct-radio,
  .dvlmpq-correct-multi,
  .dvlmpq-icon-btn{
    width:32px;
    height:32px;
  }
  .dvlmpq-quiz-grid{
    grid-template-columns:1fr;
    gap:9px;
  }
  .dvlmpq-card-actions .dvlmpq-secondary-btn,
  .dvlmpq-card-actions .dvlmpq-danger-btn{
    width:auto;
  }
}

/* v1.0.1 compact quiz builder with modal question editor */
.dvlmpq-add-question-btn{
  min-width:42px;
}
.dvlmpq-add-question-btn .dashicons,
.dvlmpq-mini-btn .dashicons{
  width:18px;
  height:18px;
  font-size:18px;
}
.dvlmpq-question-list{
  display:grid;
  gap:8px;
}
.dvlmpq-question-card{
  margin:0!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
.dvlmpq-question-top{
  margin:0!important;
}
.dvlmpq-question-title{
  min-width:0;
}
.dvlmpq-question-title strong{
  display:block;
  color:var(--dvlmpq-heading);
  font-size:14px;
  line-height:1.25;
}
.dvlmpq-question-title small{
  display:block;
  margin-top:3px;
  color:#765b52;
  font-size:12px;
  line-height:1.45;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
}
.dvlmpq-question-actions{
  display:flex;
  align-items:center;
  gap:6px;
  flex-shrink:0;
}
.dvlmpq-question-type-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 8px;
  border-radius:999px;
  background:#fff8f4;
  border:1px solid rgba(209,128,98,.20);
  color:#76574b;
  font-size:11.5px;
  font-weight:900;
  white-space:nowrap;
}
.dvlmpq-close-question-btn{
  display:none!important;
}
.dvlmpq-question-editor{
  display:none;
}
.dvlmpq-modal-backdrop{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(24,12,8,.42);
  z-index:99998;
}
.dvlmpq-modal-backdrop.is-active{
  display:block;
}
html.dvlmpq-modal-open{
  overflow:hidden;
}
.dvlmpq-question-card.is-editing{
  position:fixed!important;
  z-index:99999!important;
  top:50%!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(720px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 28px)!important;
  overflow:auto!important;
  padding:16px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid rgba(209,128,98,.28)!important;
  box-shadow:0 24px 80px rgba(24,12,8,.28)!important;
}
.dvlmpq-question-card.is-editing .dvlmpq-question-editor{
  display:block;
  margin-top:14px;
}
.dvlmpq-question-card.is-editing .dvlmpq-question-title small{
  white-space:normal;
}
.dvlmpq-question-card.is-editing .dvlmpq-close-question-btn{
  display:inline-grid!important;
}
.dvlmpq-question-card.is-editing [data-dvlmpq-edit-question]{
  display:none!important;
}
.dvlmpq-question-card.is-editing .dvlmpq-question-type-badge{
  display:none;
}
.dvlmpq-icon-btn{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  padding:0!important;
}
.dvlmpq-icon-btn.is-danger{
  color:#a12626;
  background:#fff8f8;
  border-color:rgba(190,57,57,.18);
}
.dvlmpq-options-box{
  margin-top:8px;
}
.dvlmpq-option-row{
  grid-template-columns:36px minmax(0,1fr) 36px!important;
  gap:8px!important;
  align-items:center!important;
  padding:6px!important;
  border:1px solid rgba(43,24,20,.10);
  border-radius:12px;
  background:#fff;
}
.dvlmpq-option-row input[type="text"]{
  min-height:38px!important;
  padding:7px 10px!important;
  border-radius:10px!important;
  font-size:13px;
}
.dvlmpq-correct-radio,
.dvlmpq-correct-multi,
.dvlmpq-option-row .dvlmpq-icon-btn{
  width:34px!important;
  height:34px!important;
}
.dvlmpq-correct-radio span,
.dvlmpq-correct-multi span{
  display:none!important;
}
.dvlmpq-question-card[data-question-type="radio"] .dvlmpq-correct-multi,
.dvlmpq-question-card[data-question-type="multi"] .dvlmpq-correct-radio,
.dvlmpq-question-card[data-question-type="bool"] .dvlmpq-options-box{
  display:none!important;
}
.dvlmpq-question-card:not([data-question-type="bool"]) .dvlmpq-bool-answer{
  display:none!important;
}
@media(max-width:640px){
  .dvlmpq-questions-head{
    display:flex!important;
    align-items:center;
  }
  .dvlmpq-add-question-btn{
    width:42px!important;
    min-width:42px!important;
    padding:0!important;
  }
  .dvlmpq-add-question-btn .dvlmpq-btn-text{
    display:none!important;
  }
  .dvlmpq-question-card{
    padding:9px 10px!important;
  }
  .dvlmpq-question-type-badge{
    display:none;
  }
  .dvlmpq-question-title strong{
    font-size:13px;
  }
  .dvlmpq-question-title small{
    font-size:11.5px;
  }
  .dvlmpq-question-card.is-editing{
    width:calc(100vw - 16px)!important;
    max-height:calc(100vh - 16px)!important;
    padding:12px!important;
    border-radius:16px!important;
  }
  .dvlmpq-option-row{
    grid-template-columns:34px minmax(0,1fr) 34px!important;
    gap:6px!important;
    padding:5px!important;
  }
  .dvlmpq-option-row input[type="text"]{
    min-height:36px!important;
    font-size:12.5px;
  }
}

/* v1.0.2 question images + settings */
.dvlmpq-image-field{
  margin:0 0 14px;
  padding:12px;
  border:1px solid rgba(209,128,98,.18);
  border-radius:14px;
  background:#fffaf7;
}
.dvlmpq-image-field>span{
  display:block;
  margin-bottom:8px;
  color:var(--dvlmpq-heading);
  font-weight:900;
}
.dvlmpq-image-field small{
  display:block;
  margin-top:7px;
  color:#76574b;
  font-weight:700;
  font-size:12px;
  line-height:1.5;
}
.dvlmpq-current-image{
  display:grid;
  grid-template-columns:86px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin-bottom:10px;
}
.dvlmpq-current-image img{
  width:86px;
  height:64px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid rgba(43,24,20,.12);
  background:#fff;
}
.dvlmpq-current-image label{
  display:flex;
  align-items:center;
  gap:7px;
  color:#7b2525;
  font-weight:900;
}
.dvlmpq-upload-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px;
  padding:0 12px;
  border:1px solid rgba(209,128,98,.26);
  border-radius:11px;
  background:#fff;
  color:var(--dvlmpq-secondary);
  font-weight:900;
  cursor:pointer;
}
.dvlmpq-upload-btn input{
  display:none;
}
.dvlmpq-upload-btn .dashicons{
  width:18px;
  height:18px;
  font-size:18px;
}
@media(max-width:640px){
  .dvlmpq-current-image{
    grid-template-columns:72px minmax(0,1fr);
  }
  .dvlmpq-current-image img{
    width:72px;
    height:54px;
  }
  .dvlmpq-upload-btn{
    width:100%;
  }
}

/* v1.0.3 question rich text + instant image preview */
.dvlmpq-rich-field{
  margin:0 0 14px;
}
.dvlmpq-rich-field>span{
  display:block;
  margin-bottom:7px;
  color:var(--dvlmpq-heading);
  font-weight:900;
}
.dvlmpq-rich-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:7px;
  border:1px solid rgba(43,24,20,.12);
  border-bottom:0;
  border-radius:12px 12px 0 0;
  background:#fff8f4;
}
.dvlmpq-rich-toolbar button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:32px;
  padding:0 8px;
  border:1px solid rgba(209,128,98,.20);
  border-radius:8px;
  background:#fff;
  color:#5d342b;
  font-weight:900;
  cursor:pointer;
}
.dvlmpq-rich-toolbar .dashicons{
  width:17px;
  height:17px;
  font-size:17px;
}
.dvlmpq-color-dot{
  width:14px;
  height:14px;
  border-radius:999px;
  background:#a9553d;
  display:block;
}
.dvlmpq-rich-editor{
  min-height:120px;
  padding:12px;
  border:1px solid rgba(43,24,20,.16);
  border-radius:0 0 12px 12px;
  background:#fff;
  color:var(--dvlmpq-text);
  line-height:1.75;
  outline:none;
  overflow:auto;
}
.dvlmpq-rich-editor:focus{
  border-color:rgba(209,128,98,.55);
  box-shadow:0 0 0 3px rgba(209,128,98,.12);
}
.dvlmpq-rich-editor:empty:before{
  content:attr(data-placeholder);
  color:#9b8077;
  pointer-events:none;
}
.dvlmpq-rich-editor ul,
.dvlmpq-rich-editor ol{
  padding-inline-start:24px;
}
.dvlmpq-hidden-question-text{
  display:none!important;
}
.dvlmpq-current-image{
  border:1px solid rgba(209,128,98,.14);
  border-radius:14px;
  padding:8px;
  background:#fff;
}
.dvlmpq-remove-image-label{
  font-size:12.5px;
}
@media(max-width:640px){
  .dvlmpq-rich-toolbar{
    gap:5px;
    padding:6px;
  }
  .dvlmpq-rich-toolbar button{
    min-width:30px;
    height:30px;
    padding:0 7px;
    font-size:11.5px;
  }
  .dvlmpq-rich-editor{
    min-height:110px;
    padding:10px;
  }
}

/* v1.0.4 student quizzes like courses + stable subject colors */
.dvlmpq-student-subject-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:10px;
  align-items:stretch;
}
.dvlmpq-student-subject-card,
.dvlmpq-student-quiz-card,
.dvlmpq-student-quiz-modal{
  --dvlmpq-subject-color:var(--dvlmpq-secondary);
  --dvlmpq-subject-soft:#fff8f4;
  --dvlmpq-subject-border:rgba(209,128,98,.30);
  --dvlmpq-subject-deep:var(--dvlmpq-heading);
}
.dvlmpq-student-subject-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:126px;
  height:100%;
  padding:13px;
  border:1px solid var(--dvlmpq-subject-border);
  border-radius:14px;
  background:linear-gradient(180deg,var(--dvlmpq-subject-soft),#fff);
  text-decoration:none!important;
  color:var(--dvlmpq-heading)!important;
  box-shadow:0 8px 20px rgba(43,24,20,.045);
  transition:.15s ease;
}
.dvlmpq-student-subject-card:hover{
  transform:translateY(-1px);
  border-color:var(--dvlmpq-subject-color);
}
.dvlmpq-subject-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:11px;
  color:var(--dvlmpq-subject-color);
  background:#fff;
  border:1px solid var(--dvlmpq-subject-border);
}
.dvlmpq-subject-icon .dashicons{
  width:18px;
  height:18px;
  font-size:18px;
}
.dvlmpq-student-subject-card strong{
  color:var(--dvlmpq-subject-deep);
  font-size:14px;
  line-height:1.45;
  font-weight:900;
}
.dvlmpq-student-subject-card small{
  margin-top:auto;
  color:var(--dvlmpq-subject-color);
  font-size:11.5px;
  font-weight:900;
}
.dvlmpq-student-subject-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
  padding:14px;
  border:1px solid var(--dvlmpq-subject-border);
  border-radius:15px;
  background:var(--dvlmpq-subject-soft);
}
.dvlmpq-student-subject-head span{
  display:block;
  color:var(--dvlmpq-subject-color);
  font-size:12px;
  font-weight:900;
}
.dvlmpq-student-subject-head h4{
  margin:4px 0 0;
  color:var(--dvlmpq-subject-deep);
  font-size:21px;
  line-height:1.35;
}
.dvlmpq-student-quiz-card{
  border-color:var(--dvlmpq-subject-border);
}
.dvlmpq-student-quiz-card:hover{
  border-color:var(--dvlmpq-subject-color);
}
.dvlmpq-student-quiz-card .dvlmpq-quiz-meta .dashicons{
  color:var(--dvlmpq-subject-color);
}
.dvlmpq-start-quiz-btn{
  color:var(--dvlmpq-subject-color)!important;
  border-color:var(--dvlmpq-subject-border)!important;
}
.dvlmpq-start-quiz-btn:hover{
  background:var(--dvlmpq-subject-soft)!important;
}
html.dvlmpq-student-modal-open{
  overflow:hidden;
}
.dvlmpq-student-quiz-modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:99999;
  padding:18px;
  background:rgba(24,12,8,.50);
}
.dvlmpq-student-quiz-modal.is-active{
  display:flex;
  align-items:center;
  justify-content:center;
}
.dvlmpq-student-quiz-dialog{
  width:min(860px,100%);
  max-height:calc(100vh - 36px);
  overflow:auto;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--dvlmpq-subject-border);
  box-shadow:0 24px 80px rgba(24,12,8,.30);
  padding:16px;
}
.dvlmpq-student-quiz-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border-radius:15px;
  background:var(--dvlmpq-subject-soft);
  border:1px solid var(--dvlmpq-subject-border);
  margin-bottom:12px;
}
.dvlmpq-student-quiz-modal-head span{
  display:block;
  color:var(--dvlmpq-subject-color);
  font-size:12px;
  font-weight:900;
}
.dvlmpq-student-quiz-modal-head h4{
  margin:4px 0 0;
  color:var(--dvlmpq-subject-deep);
  font-size:22px;
  line-height:1.35;
}
.dvlmpq-student-quiz-warning{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:12px;
  padding:10px 12px;
  border:1px solid rgba(209,128,98,.24);
  border-radius:12px;
  background:#fffaf7;
  color:#76574b;
  font-weight:800;
  line-height:1.6;
}
.dvlmpq-student-quiz-warning .dashicons{
  color:var(--dvlmpq-subject-color);
}
.dvlmpq-student-question{
  padding:13px;
  border:1px solid rgba(43,24,20,.10);
  border-radius:14px;
  background:#fff;
  margin-bottom:10px;
}
.dvlmpq-student-question-title{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:9px;
  align-items:flex-start;
  margin-bottom:10px;
}
.dvlmpq-student-question-title>span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:10px;
  background:var(--dvlmpq-subject-soft);
  color:var(--dvlmpq-subject-color);
  border:1px solid var(--dvlmpq-subject-border);
  font-weight:900;
}
.dvlmpq-student-question-title div{
  color:var(--dvlmpq-heading);
  line-height:1.75;
  font-weight:800;
}
.dvlmpq-student-question-title ul,
.dvlmpq-student-question-title ol{
  padding-inline-start:22px;
}
.dvlmpq-student-question-image{
  display:block;
  max-width:100%;
  max-height:360px;
  object-fit:contain;
  border-radius:14px;
  border:1px solid rgba(43,24,20,.12);
  margin:8px 0 12px;
  background:#fff;
}
.dvlmpq-student-answer-list{
  display:grid;
  gap:7px;
}
.dvlmpq-student-answer{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 11px;
  border:1px solid rgba(43,24,20,.10);
  border-radius:12px;
  background:#fffaf7;
  color:#2b1814;
  font-weight:800;
  cursor:pointer;
}
.dvlmpq-student-answer input{
  accent-color:var(--dvlmpq-subject-color);
  margin:0;
}
.dvlmpq-student-quiz-actions{
  display:flex;
  justify-content:flex-start;
  gap:9px;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(43,24,20,.10);
}
@media(max-width:640px){
  .dvlmpq-student-subject-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .dvlmpq-student-subject-card{
    min-height:126px;
    padding:11px;
  }
  .dvlmpq-student-subject-card strong{
    font-size:12.5px;
  }
  .dvlmpq-student-subject-card small{
    font-size:10.5px;
  }
  .dvlmpq-student-subject-head{
    flex-direction:column-reverse;
    align-items:stretch;
  }
  .dvlmpq-student-subject-head .dvlmpq-secondary-btn{
    width:100%;
  }
  .dvlmpq-student-quiz-modal{
    padding:8px;
  }
  .dvlmpq-student-quiz-dialog{
    max-height:calc(100vh - 16px);
    border-radius:16px;
    padding:12px;
  }
  .dvlmpq-student-quiz-modal-head{
    padding:12px;
  }
  .dvlmpq-student-quiz-modal-head h4{
    font-size:18px;
  }
  .dvlmpq-student-quiz-actions{
    flex-direction:column;
  }
  .dvlmpq-student-question{
    padding:11px;
  }
  .dvlmpq-student-question-title{
    grid-template-columns:28px minmax(0,1fr);
  }
  .dvlmpq-student-question-title>span{
    width:28px;
    height:28px;
  }
}

/* v1.0.5 quiz timer + professional runner */
.dvlmpq-basic-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:12px;
  align-items:start;
}
.dvlmpq-duration-field small{
  display:block;
  margin-top:6px;
  color:#76574b;
  font-size:12px;
  font-weight:700;
  line-height:1.5;
}
.dvlmpq-student-quiz-timer{
  position:sticky;
  top:0;
  z-index:2;
  margin:0 0 12px;
  padding:11px 12px;
  border:1px solid var(--dvlmpq-subject-border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(43,24,20,.06);
}
.dvlmpq-timer-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:var(--dvlmpq-subject-color);
  font-weight:900;
}
.dvlmpq-timer-line .dashicons{
  width:20px;
  height:20px;
  font-size:20px;
}
.dvlmpq-timer-line strong{
  direction:ltr;
  font-size:20px;
  line-height:1;
  letter-spacing:.5px;
}
.dvlmpq-timer-track{
  height:8px;
  margin-top:10px;
  border-radius:999px;
  background:rgba(43,24,20,.08);
  overflow:hidden;
}
.dvlmpq-timer-track span{
  display:block;
  width:100%;
  height:100%;
  border-radius:inherit;
  background:var(--dvlmpq-subject-color);
  transition:width .25s linear, background .2s ease;
}
.dvlmpq-student-quiz-modal.is-time-low .dvlmpq-timer-track span,
.dvlmpq-student-quiz-modal.is-time-low .dvlmpq-timer-line{
  color:#b42318;
}
.dvlmpq-student-quiz-modal.is-time-low .dvlmpq-timer-track span{
  background:#b42318;
}
.dvlmpq-student-quiz-modal.is-time-ended .dvlmpq-student-quiz-timer{
  border-color:rgba(180,35,24,.35);
  background:#fff5f5;
}
.dvlmpq-student-question-image{
  display:block!important;
  margin:12px auto 14px!important;
  max-width:min(100%,720px)!important;
  max-height:380px!important;
  object-fit:contain!important;
  border-radius:18px!important;
  border:1px solid rgba(43,24,20,.12)!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(43,24,20,.05);
}
.dvlmpq-student-quiz-warning{
  display:none!important;
}
@media(max-width:760px){
  .dvlmpq-basic-grid{
    grid-template-columns:1fr;
    gap:0;
  }
  .dvlmpq-student-quiz-timer{
    padding:10px;
    border-radius:13px;
  }
  .dvlmpq-timer-line strong{
    font-size:18px;
  }
  .dvlmpq-student-question-image{
    max-height:280px!important;
    border-radius:15px!important;
  }
}

/* v1.0.6 complete quiz flow + import/export */
.dvlmpq-import-box{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 0 13px;
  padding:12px;
  border:1px dashed rgba(209,128,98,.30);
  border-radius:14px;
  background:#fffaf7;
}
.dvlmpq-import-box label{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  color:var(--dvlmpq-heading);
  font-weight:900;
}
.dvlmpq-import-box label .dashicons{
  color:var(--dvlmpq-secondary);
}
.dvlmpq-import-box input[type="file"]{
  max-width:260px;
  font-size:12px;
}
.dvlmpq-export-form,
.dvlmpq-delete-form{
  margin:0;
}
.dvlmpq-export-form .dashicons{
  width:15px;
  height:15px;
  font-size:15px;
}
.dvlmpq-student-quiz-message{
  display:none;
  margin:0 0 12px;
  padding:10px 12px;
  border-radius:12px;
  font-weight:900;
  line-height:1.6;
}
.dvlmpq-student-quiz-message.is-success{
  display:block;
  border:1px solid rgba(42,137,82,.24);
  background:#f3fbf6;
  color:#245738;
}
.dvlmpq-student-quiz-message.is-warning{
  display:block;
  border:1px solid rgba(209,128,98,.38);
  background:#fff8ed;
  color:#73431f;
}
.dvlmpq-student-question.is-missing{
  border-color:rgba(180,35,24,.42);
  background:#fffafa;
}
.dvlmpq-student-question.is-missing .dvlmpq-student-question-title>span{
  background:#fff1f1;
  color:#b42318;
  border-color:rgba(180,35,24,.28);
}
.dvlmpq-student-quiz-modal.is-completed .dvlmpq-student-answer{
  opacity:.78;
  cursor:default;
}
.dvlmpq-student-quiz-modal.is-time-ended .dvlmpq-student-answer{
  opacity:.68;
  cursor:default;
}
.dvlmpq-student-answer input:disabled{
  cursor:not-allowed;
}
.dvlmpq-student-quiz-actions .dvlmpq-primary-btn:disabled{
  opacity:.65;
  cursor:not-allowed;
}
@media(max-width:640px){
  .dvlmpq-import-box{
    display:grid;
    gap:9px;
  }
  .dvlmpq-import-box input[type="file"]{
    max-width:100%;
    width:100%;
  }
  .dvlmpq-import-box .dvlmpq-secondary-btn{
    width:100%;
  }
  .dvlmpq-card-actions .dvlmpq-btn-text{
    display:none;
  }
  .dvlmpq-export-form .dvlmpq-secondary-btn{
    width:36px!important;
    padding:0!important;
  }
}

/* v1.0.7 quiz settings popup */
.dvlmpq-form-head-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-shrink:0;
}
.dvlmpq-settings-open-btn{
  color:var(--dvlmpq-secondary)!important;
  background:#fff!important;
}
.dvlmpq-settings-modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:99999;
  padding:18px;
  background:rgba(24,12,8,.48);
}
.dvlmpq-settings-modal.is-active{
  display:flex;
  align-items:center;
  justify-content:center;
}
html.dvlmpq-settings-modal-open{
  overflow:hidden;
}
.dvlmpq-settings-dialog{
  width:min(680px,100%);
  max-height:calc(100vh - 36px);
  overflow:auto;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(209,128,98,.28);
  box-shadow:0 24px 80px rgba(24,12,8,.28);
  padding:16px;
}
.dvlmpq-settings-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border-radius:15px;
  background:#fff8f4;
  border:1px solid rgba(209,128,98,.20);
  margin-bottom:14px;
}
.dvlmpq-settings-head strong{
  display:block;
  color:var(--dvlmpq-heading);
  font-size:18px;
  font-weight:900;
}
.dvlmpq-settings-head span{
  display:block;
  margin-top:4px;
  color:#76574b;
  font-size:13px;
  line-height:1.6;
  font-weight:700;
}
.dvlmpq-settings-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.dvlmpq-settings-grid .dvlmpq-field small{
  display:block;
  margin-top:6px;
  color:#76574b;
  font-size:12px;
  line-height:1.45;
  font-weight:700;
}
.dvlmpq-settings-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(43,24,20,.08);
}
.dvlmpq-status-locked{
  background:#f5f5f5!important;
  color:#666!important;
}
.dvlmpq-start-quiz-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
}
.dvlmpq-password-gate{
  display:none;
  text-align:center;
  margin:0 0 14px;
  padding:18px;
  border:1px solid var(--dvlmpq-subject-border);
  border-radius:16px;
  background:var(--dvlmpq-subject-soft);
}
.dvlmpq-student-quiz-modal.has-password:not(.is-password-ok) .dvlmpq-password-gate{
  display:grid;
  gap:10px;
  justify-items:center;
}
.dvlmpq-password-gate>.dashicons{
  width:34px;
  height:34px;
  font-size:34px;
  color:var(--dvlmpq-subject-color);
}
.dvlmpq-password-gate strong{
  color:var(--dvlmpq-subject-deep);
  font-size:17px;
}
.dvlmpq-password-gate input{
  width:min(360px,100%);
  min-height:44px;
  border:1px solid rgba(43,24,20,.16);
  border-radius:12px;
  background:#fff;
  padding:10px 12px;
  color:var(--dvlmpq-text);
  font-weight:900;
  text-align:center;
  outline:none;
}
.dvlmpq-password-gate small{
  color:#b42318;
  min-height:18px;
  font-weight:900;
}
.dvlmpq-student-quiz-modal.has-password:not(.is-password-ok) .dvlmpq-student-quiz-timer,
.dvlmpq-student-quiz-modal.has-password:not(.is-password-ok) .dvlmpq-student-quiz-message,
.dvlmpq-student-quiz-modal.has-password:not(.is-password-ok) .dvlmpq-student-quiz-questions,
.dvlmpq-student-quiz-modal.has-password:not(.is-password-ok) .dvlmpq-student-quiz-actions{
  display:none!important;
}
.dvlmpq-main-title-field{
  margin-bottom:14px;
}
@media(max-width:640px){
  .dvlmpq-form-head-actions{
    display:grid;
    grid-template-columns:44px 1fr;
    margin-top:12px;
  }
  .dvlmpq-form-head-actions .dvlmpq-primary-btn{
    width:100%;
  }
  .dvlmpq-settings-modal{
    padding:8px;
  }
  .dvlmpq-settings-dialog{
    max-height:calc(100vh - 16px);
    border-radius:16px;
    padding:12px;
  }
  .dvlmpq-settings-head{
    padding:12px;
  }
  .dvlmpq-settings-grid{
    grid-template-columns:1fr;
    gap:8px;
  }
  .dvlmpq-settings-actions .dvlmpq-primary-btn{
    width:100%;
  }
}

/* v1.0.8 attempts enforcement */
.dvlmpq-status-locked{
  background:#f5f5f5!important;
  color:#666!important;
}
.dvlmpq-start-quiz-btn:disabled{
  opacity:.58!important;
  cursor:not-allowed!important;
  background:#f7f7f7!important;
  color:#777!important;
  border-color:rgba(43,24,20,.12)!important;
}

/* v1.0.9 hard fix: perfectly centered icon buttons everywhere */
.dvlmpq-wrap .dvlmpq-icon-btn,
.dvlmpq-form .dvlmpq-icon-btn,
.dvlmpq-student-quiz-modal .dvlmpq-icon-btn,
.dvlmpq-settings-modal .dvlmpq-icon-btn,
button.dvlmpq-icon-btn,
a.dvlmpq-icon-btn{
  display:inline-grid!important;
  place-items:center!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
  text-align:center!important;
  vertical-align:middle!important;
  overflow:hidden!important;
  flex:0 0 38px!important;
}
.dvlmpq-wrap .dvlmpq-icon-btn .dashicons,
.dvlmpq-form .dvlmpq-icon-btn .dashicons,
.dvlmpq-student-quiz-modal .dvlmpq-icon-btn .dashicons,
.dvlmpq-settings-modal .dvlmpq-icon-btn .dashicons,
button.dvlmpq-icon-btn .dashicons,
a.dvlmpq-icon-btn .dashicons{
  display:block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  margin:0!important;
  padding:0!important;
  font-size:18px!important;
  line-height:18px!important;
  text-align:center!important;
  position:static!important;
  transform:none!important;
}
.dvlmpq-wrap .dvlmpq-secondary-btn .dashicons,
.dvlmpq-wrap .dvlmpq-primary-btn .dashicons,
.dvlmpq-wrap .dvlmpq-mini-btn .dashicons,
.dvlmpq-form .dvlmpq-secondary-btn .dashicons,
.dvlmpq-form .dvlmpq-primary-btn .dashicons,
.dvlmpq-form .dvlmpq-mini-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;
}
.dvlmpq-wrap .dvlmpq-secondary-btn,
.dvlmpq-wrap .dvlmpq-primary-btn,
.dvlmpq-form .dvlmpq-secondary-btn,
.dvlmpq-form .dvlmpq-primary-btn,
.dvlmpq-mini-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  line-height:1!important;
}
.dvlmpq-settings-open-btn{
  border-radius:12px!important;
}
.dvlmpq-card-actions form{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
@media(max-width:640px){
  .dvlmpq-wrap .dvlmpq-icon-btn,
  .dvlmpq-form .dvlmpq-icon-btn,
  .dvlmpq-student-quiz-modal .dvlmpq-icon-btn,
  .dvlmpq-settings-modal .dvlmpq-icon-btn,
  button.dvlmpq-icon-btn,
  a.dvlmpq-icon-btn{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    flex-basis:40px!important;
  }
}

/* v1.1.0 score visibility setting */
.dvlmpq-check-setting{
  grid-column:1 / -1;
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:12px;
  border:1px solid rgba(209,128,98,.20);
  border-radius:14px;
  background:#fffaf7;
  cursor:pointer;
}
.dvlmpq-check-setting input{
  width:18px;
  height:18px;
  margin-top:3px;
  accent-color:var(--dvlmpq-secondary);
}
.dvlmpq-check-setting span{
  display:block;
}
.dvlmpq-check-setting strong{
  display:block;
  color:var(--dvlmpq-heading);
  font-size:13.5px;
  font-weight:900;
  line-height:1.5;
}
.dvlmpq-check-setting small{
  display:block;
  margin-top:3px;
  color:#76574b;
  font-size:12px;
  font-weight:700;
  line-height:1.5;
}


/* v1.1.1 final UI: remove instructional notes */
.dvlmpq-hero p,
.dvlmpq-form-head span:not(.dashicons),
.dvlmpq-questions-head span:not(.dashicons),
.dvlmpq-settings-head span,
.dvlmpq-list-head span,
.dvlmpq-empty p,
.dvlmpq-field small,
.dvlmpq-image-field small,
.dvlmpq-check-setting small,
.dvlmpq-duration-field small{
  display:none!important;
}


/* v1.1.3 remove only useless content labels; keep navigation tab names */
.dvlmpq-hero,
.dvlmpq-target-head,
.dvlmpq-list-head span,
.dvlmpq-settings-head span,
.dvlmpq-field small,
.dvlmpq-image-field small,
.dvlmpq-check-setting small,
.dvlmpq-duration-field small{
  display:none!important;
}
.dvlmpq-wrap > :first-child{
  margin-top:0!important;
}
