*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f5f7fb;color:#1f2937}.top{background:#0b3a66;color:white;padding:15px 28px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 3px 12px rgba(0,0,0,.12)}.top a{color:#ffffff;margin-left:15px}.wrap{max-width:1100px;margin:34px auto;padding:0 16px;min-height:calc(100vh - 170px)}.foot{background:#0b3a66;color:#ffffff;text-align:center;padding:18px 20px;margin-top:40px}.card{background:white;border:1px solid #e5e7eb;border-radius:14px;padding:20px;margin-bottom:18px;box-shadow:0 4px 14px rgba(0,0,0,.04)}.small{max-width:420px;margin:60px auto}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.row{display:flex;justify-content:space-between;align-items:center;gap:12px}label{display:block;margin:12px 0;font-weight:600}input,textarea,select{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:10px;margin-top:6px}button,.btn{display:inline-block;background:#2563eb;color:white;border:0;border-radius:10px;padding:11px 16px;text-decoration:none;cursor:pointer;font-weight:700}button:disabled{background:#9ca3af}.err{background:#fee2e2;color:#991b1b;padding:10px;border-radius:10px}.muted{color:#6b7280}.pill{display:inline-flex;gap:7px;align-items:center;width:auto;background:#eef2ff;padding:8px 12px;border-radius:999px;margin:5px}.pill input{width:auto;margin:0}.game-head{display:flex;justify-content:space-between;align-items:center;background:white;border-radius:14px;padding:14px 20px;margin-bottom:16px}.challenge{display:none;background:white;border-radius:16px;padding:24px;border:1px solid #e5e7eb}.challenge.active{display:block}.mission-text{font-size:1.25rem;line-height:2.2}.dropzone{display:inline-flex;min-width:120px;min-height:36px;align-items:center;justify-content:center;border:2px dashed #94a3b8;border-radius:10px;background:#f8fafc;color:#64748b;padding:3px 12px;margin:0 4px}.dropzone.filled{background:#dcfce7;border-color:#22c55e;color:#14532d}.wordbank{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.word{background:#111827;color:white;border-radius:999px;padding:10px 14px;cursor:grab;user-select:none}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid #e5e7eb;text-align:left;padding:10px}.hidden{display:none}
.brand{letter-spacing:.5px;font-size:1.05rem}.brand-bold{font-weight:800}.brand-light{font-weight:400}.foot{font-size:.95rem}

.brand-gap{display:inline-block;width:6px}

/* Profesor panel v1.1 */
.page-title{margin-bottom:18px}.test-grid{align-items:stretch}.test-card{display:flex;flex-direction:column;gap:8px}.test-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.test-card h2{margin:0}.subject{font-weight:700;margin:.2rem 0}.status{display:inline-block;border-radius:999px;padding:5px 10px;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.3px}.status-active{background:#dcfce7;color:#166534}.status-draft{background:#fef3c7;color:#92400e}.status-closed{background:#e5e7eb;color:#374151}.stats{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.stats span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:7px 10px;font-size:.92rem}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.inline-actions{margin-top:0}.smallbtn{padding:8px 11px;border-radius:9px;font-size:.9rem}.secondary{background:#e5e7eb!important;color:#111827!important}.danger{background:#fee2e2!important;color:#991b1b!important}.danger-button{background:#dc2626!important}.danger-card{border-color:#fecaca;background:#fff7f7}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.empty-state{text-align:center;padding:34px}.paragraph-card h2{margin:0}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stat-card{text-align:center}.stat-card b{display:block;font-size:2rem}.stat-card span{color:#64748b}.check{display:flex;gap:10px;align-items:center}.check input{width:auto;margin:0}.preview{background:#f8fafc;margin-top:18px}
@media(max-width:720px){.row{align-items:flex-start;flex-direction:column}.top{align-items:flex-start;gap:10px;flex-direction:column}.actions,.toolbar{width:100%}.smallbtn{width:auto}table{display:block;overflow-x:auto;white-space:nowrap}}


/* NEXUS EVALUACIJA vizuelni identitet */
.brand{display:flex;align-items:baseline;text-decoration:none;color:#ffffff!important;letter-spacing:.6px;margin-left:0!important}
.brand-bold{font-weight:900;font-size:1.65rem;line-height:1}
.brand-light{font-weight:400;font-size:1.22rem;line-height:1}
.brand-gap{display:inline-block;width:8px}
.top-nav{display:flex;align-items:center;gap:18px;font-weight:700}
.top-nav a{margin-left:0;color:#ffffff;text-decoration:underline;text-underline-offset:3px}
.role-badge{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.24);padding:6px 11px;border-radius:999px;color:#ffffff}
.page-toolbar{display:flex;justify-content:flex-end;margin-bottom:22px}
.status{font-size:.78rem}
.status-label{display:inline-block}
@media(max-width:720px){.brand-bold{font-size:1.35rem}.brand-light{font-size:1.05rem}.top{padding:14px 18px}.top-nav{gap:10px}}

/* Studentski timer - v1.3 */
.game-head{
  position:sticky;
  top:0;
  z-index:20;
  border:1px solid #dbeafe;
  box-shadow:0 10px 30px rgba(15,23,42,.08);
}
.game-head h1{margin:0 0 6px 0}.game-subtitle{margin:0;color:#64748b;font-weight:600}
.game-status-panel{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.xp-badge{background:#eef2ff;color:#1e3a8a;border:1px solid #c7d2fe;border-radius:999px;padding:10px 14px;font-weight:800}
.countdown-badge{display:flex;align-items:center;gap:9px;background:linear-gradient(135deg,#0b3a66,#2563eb);color:#fff;border-radius:16px;padding:10px 15px;box-shadow:0 10px 22px rgba(37,99,235,.25);min-width:245px;justify-content:center}
.countdown-badge .clock-icon{font-size:1.35rem;line-height:1}.countdown-badge .timer-label{font-size:.85rem;opacity:.92;font-weight:700;text-transform:uppercase;letter-spacing:.35px}.countdown-badge #timer{font-size:1.55rem;letter-spacing:1px;font-variant-numeric:tabular-nums;line-height:1}
.countdown-badge.warning{background:linear-gradient(135deg,#92400e,#f59e0b);animation:pulseTimer 1s infinite}.countdown-badge.expired{background:linear-gradient(135deg,#7f1d1d,#dc2626)}
@keyframes pulseTimer{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
@media(max-width:720px){.game-head{position:static;align-items:flex-start}.game-status-panel{justify-content:flex-start;width:100%}.countdown-badge{width:100%;min-width:0}.xp-badge{width:100%;text-align:center}}

/* Interaktivna provjera odgovora - v1.4 */
.game-instruction{margin:8px 0 18px;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;font-weight:600}.dropzone.correct{background:#dcfce7;border-color:#16a34a;color:#14532d;font-weight:800;box-shadow:0 0 0 4px rgba(34,197,94,.12)}.dropzone.wrong{background:#fee2e2;border-color:#dc2626;color:#991b1b;font-weight:800;box-shadow:0 0 0 4px rgba(220,38,38,.10)}.dropzone.retry{animation:shakeZone .22s linear 2}.dropzone.locked-wrong{background:#fecaca;border-style:solid;color:#7f1d1d;cursor:not-allowed}.dropzone.correct::after{content:'✓';font-weight:900;margin-left:8px}.dropzone.locked-wrong::after{content:'✕';font-weight:900;margin-left:8px}.challenge-feedback{min-height:42px;margin:12px 0 16px;border-radius:12px;padding:10px 12px;background:#f8fafc;color:#475569;border:1px solid #e2e8f0;font-weight:700}.challenge-feedback:empty{display:none}.challenge-feedback.ok{background:#ecfdf5;color:#166534;border-color:#bbf7d0}.challenge-feedback.warn{background:#fffbeb;color:#92400e;border-color:#fde68a}.challenge-feedback.bad{background:#fef2f2;color:#991b1b;border-color:#fecaca}@keyframes shakeZone{0%,100%{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}


/* v1.5 - puno bojenje polja za jasnu povratnu informaciju */
.dropzone.correct{
  background:#16a34a!important;
  border-color:#15803d!important;
  border-style:solid!important;
  color:#ffffff!important;
  font-weight:900!important;
  box-shadow:0 8px 20px rgba(22,163,74,.22), 0 0 0 4px rgba(22,163,74,.12)!important;
}
.dropzone.wrong,
.dropzone.locked-wrong{
  background:#dc2626!important;
  border-color:#991b1b!important;
  border-style:solid!important;
  color:#ffffff!important;
  font-weight:900!important;
  box-shadow:0 8px 20px rgba(220,38,38,.22), 0 0 0 4px rgba(220,38,38,.10)!important;
}
.dropzone.locked-wrong{
  background:#b91c1c!important;
  cursor:not-allowed!important;
}
.dropzone.correct::after,
.dropzone.locked-wrong::after{
  color:#ffffff!important;
}
.dropzone.checking{
  pointer-events:none;
}
/* NEXUS EVALUACIJA v2.5 admin CRUD dopune */
.actions.compact{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.inline-form{display:inline-flex;gap:6px;align-items:center;margin:0}.mini-input{width:150px!important;margin:0!important;padding:8px!important;border-radius:8px!important}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:end}.form-grid label{margin:0}.grid.two{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.smallbtn{padding:8px 11px!important;border-radius:9px!important;font-size:.9rem!important}.danger{background:#fee2e2!important;color:#991b1b!important}.secondary{background:#e5e7eb!important;color:#111827!important}@media(max-width:800px){.inline-form{display:flex;width:100%;margin-top:6px}.mini-input{width:100%!important}.actions.compact{flex-direction:column;align-items:flex-start}}

/* v2.6 friendly admin notices */
.notice-error{background:#fff1f2;border-color:#fecdd3;color:#7f1d1d;}
.notice-success{background:#ecfdf5;border-color:#bbf7d0;color:#064e3b;}

/* v2.9 - rezultati, brisanje pokušaja i izvoz zapisnika */
.results-toolbar .toolbar{justify-content:flex-start;gap:10px}.results-toolbar form{margin:0}.notice-success{background:#ecfdf5;border-color:#bbf7d0;color:#064e3b}.notice-error{background:#fff1f2;border-color:#fecdd3;color:#7f1d1d}.danger-button{background:#dc2626!important;color:#fff!important}.results-toolbar .btn{white-space:nowrap}
@media(max-width:800px){.results-toolbar .toolbar{flex-direction:column;align-items:flex-start}.results-toolbar .btn,.results-toolbar form,.results-toolbar button{width:100%;text-align:center}}

/* v3.0 - dostupnost testa, tehničko uputstvo i odustajanje */
.guide-card{max-width:980px;margin:0 auto}.guide-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin:14px 0 18px}.guide-meta p{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px;margin:0}.guide-box{background:#f8fafc;border:1px solid #dbeafe;border-radius:16px;padding:18px;margin:18px 0;line-height:1.65}.green-text{color:#15803d}.red-text{color:#b91c1c}.mini-guide{font-size:.95rem;color:#475569;background:#f8fafc;border-color:#e2e8f0}.challenge-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}.challenge-actions .abandon{border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer}.result-pass{background:#dcfce7;color:#166534;border-radius:999px;padding:6px 10px;font-weight:900;display:inline-block}.result-fail{background:#fee2e2;color:#991b1b;border-radius:999px;padding:6px 10px;font-weight:900;display:inline-block}.status-abandoned{background:#fee2e2;color:#991b1b}.availability-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:10px;color:#1e3a8a;font-weight:700}

/* v3.3 - mobilni režim izbora pojmova */
.mobile-word-modal-backdrop{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.58);
  z-index:9998;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:14px;
}
.mobile-word-modal{
  width:min(560px,100%);
  max-height:82vh;
  overflow:auto;
  background:#ffffff;
  border-radius:22px 22px 18px 18px;
  border:1px solid #dbeafe;
  box-shadow:0 24px 70px rgba(15,23,42,.32);
  padding:18px;
}
.mobile-word-modal h3{
  margin:0 0 6px 0;
  color:#0b3a66;
  font-size:1.2rem;
}
.mobile-word-modal p{
  margin:0 0 14px 0;
  color:#64748b;
  font-weight:600;
}
.mobile-word-options{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.mobile-word-option{
  width:100%;
  text-align:left;
  background:#0b3a66;
  color:#ffffff;
  border:0;
  border-radius:14px;
  padding:14px 15px;
  font-weight:900;
  font-size:1rem;
  box-shadow:0 6px 16px rgba(11,58,102,.16);
}
.mobile-word-close{
  width:100%;
  margin-top:14px;
  background:#e5e7eb!important;
  color:#111827!important;
}
.mobile-mode-note{display:none}
@media(max-width:768px){
  .wrap{margin:18px auto;padding:0 10px}
  .game-head{position:sticky;top:0;z-index:40;border-radius:0;margin-left:-10px;margin-right:-10px;padding:12px 14px}
  .game-head h1{font-size:1.15rem;line-height:1.25}
  .game-subtitle{font-size:.86rem;line-height:1.35}
  .challenge{padding:16px 12px;border-radius:14px}
  .challenge h2{font-size:1.12rem;line-height:1.35}
  .game-instruction{font-size:.92rem;line-height:1.45}
  .mission-text{font-size:1.05rem;line-height:2.35;word-break:normal}
  .dropzone{
    min-width:92px;
    min-height:42px;
    padding:6px 12px;
    margin:4px 3px;
    border-radius:12px;
    border-style:solid;
    background:#eff6ff;
    border-color:#93c5fd;
    color:#1e3a8a;
    font-weight:900;
    cursor:pointer;
    vertical-align:middle;
    touch-action:manipulation;
  }
  .dropzone:not(.correct):not(.locked-wrong)::before{content:'👆 ';font-size:.9rem}
  .dropzone.retry::before{content:''}
  .dropzone.correct::before,.dropzone.locked-wrong::before{content:''}
  .wordbank{
    display:none;
  }
  .mobile-mode-note{display:block;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;border-radius:12px;padding:10px 12px;font-weight:700;margin:10px 0 14px}
  .challenge-actions button{width:100%;text-align:center}
}
@media(min-width:769px){
  .mobile-word-modal-backdrop{display:none!important}
}


/* v3.4 - hitna korekcija mobilnog režima: ponuđene riječi se ne prikazuju ispod footera, već isključivo u modalnom prozoru */
body.mobile-input-mode .wordbank{display:none!important}
body.mobile-input-mode .dropzone{
  min-width:96px;
  min-height:42px;
  padding:7px 12px;
  margin:4px 3px;
  border-radius:12px;
  border-style:solid;
  background:#eff6ff;
  border-color:#93c5fd;
  color:#1e3a8a;
  font-weight:900;
  cursor:pointer;
  vertical-align:middle;
  touch-action:manipulation;
}
body.mobile-input-mode .dropzone:not(.correct):not(.locked-wrong)::before{content:'👆 ';font-size:.9rem}
body.mobile-input-mode .dropzone.retry::before,
body.mobile-input-mode .dropzone.correct::before,
body.mobile-input-mode .dropzone.locked-wrong::before{content:''}
body.mobile-input-mode .mobile-mode-note{display:block;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;border-radius:12px;padding:10px 12px;font-weight:700;margin:10px 0 14px}
body.modal-open{overflow:hidden}
body.mobile-input-mode .mobile-word-modal-backdrop,
.mobile-word-modal-visible{
  display:flex!important;
  position:fixed!important;
  left:0!important;
  right:0!important;
  top:0!important;
  bottom:0!important;
  width:100vw!important;
  height:100dvh!important;
  background:rgba(15,23,42,.62)!important;
  z-index:2147483000!important;
  align-items:flex-end!important;
  justify-content:center!important;
  padding:12px!important;
}
body.mobile-input-mode .mobile-word-modal,
.mobile-word-modal-visible .mobile-word-modal{
  width:100%!important;
  max-width:560px!important;
  max-height:78dvh!important;
  overflow:auto!important;
  background:#fff!important;
  border-radius:22px 22px 18px 18px!important;
  padding:18px!important;
  box-shadow:0 -10px 50px rgba(15,23,42,.35)!important;
}
body.mobile-input-mode .mobile-word-options{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
body.mobile-input-mode .mobile-word-option{width:100%!important;min-height:48px!important;font-size:1rem!important}
@media(max-width:768px){.foot{margin-top:24px}.wrap{padding-bottom:20px}}
