/* Námsbrú v26.2: skýrara, rólegra vinnuumhverfi – án þess að breyta eldri virkni */
:root{--nb-ink:#173247;--nb-muted:#637b89;--nb-line:#dbe8eb;--nb-accent:#0b6a73;--nb-soft:#f5faf9}
[hidden]{display:none!important}
body{background:#f6f9fa;color:var(--nb-ink)}
.frame{max-width:1250px}
.topbar{position:relative;background:#fff}
.topbar-inner{min-height:70px}
.topbar nav{gap:5px}
.topbar nav .active{color:#07545e;background:#e3f2f0}
.topbar a:focus-visible,.teacher-quickstart a:focus-visible{outline:3px solid #49afad;outline-offset:3px}
.identity-mark{box-shadow:none}
.hero{margin-top:24px;min-height:256px;border-radius:24px;grid-template-columns:minmax(0,1.7fr) minmax(230px,.65fr);background:linear-gradient(110deg,#0b3557 0%,#103f5b 64%,#0b6070 100%)}
.hero-content{padding:clamp(26px,4vw,48px)!important}
.hero-content h1{font-size:clamp(2.15rem,4vw,3.7rem)!important;line-height:1.06;letter-spacing:-.045em;margin:10px 0 14px}
.hero-content>p:not(.eyebrow){max-width:610px;font-size:clamp(.92rem,1.45vw,1.05rem);line-height:1.65;color:#d6e8ee}
.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}
.hero-chips span{font-size:12px;background:#ffffff0d;border:1px solid #ffffff38;padding:7px 12px}
.hero-art{background:transparent;min-height:230px}
.hero-visual-card{width:min(77%,250px);padding:24px;background:#ffffff17;border:1px solid #ffffff44;border-radius:22px;transform:rotate(2deg);box-shadow:0 20px 36px #071c2b2a}
.hero-card-top{display:flex;align-items:center;justify-content:space-between;color:#d0e6e7;font-size:12px;letter-spacing:.12em;font-weight:850}
.hero-card-top b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#77d7c6;color:#084a51;font-size:14px}
.hero-card-line{display:block;width:94%;height:13px;margin-top:22px;border-radius:8px;background:#ffffffb8}
.hero-card-line.short{width:63%;margin-top:12px;opacity:.55}
.hero-card-stats{display:flex;gap:7px;margin:26px 0 11px}
.hero-card-stats b{background:#7ed9c8;border-radius:9px;padding:6px 10px;color:#123c50;font-size:13px}
.hero-visual-card small{font-size:11px;color:#dceeed}
.connection{margin:14px 0 24px;background:#fff;border-color:#dce9e9;border-radius:13px}
.workspace{margin-top:26px}
.workspace-heading h2{font-size:clamp(1.7rem,3vw,2.55rem)}
.workspace-tabs{background:#e9f1f2;border-color:#dce8ea;border-radius:15px;padding:5px;gap:3px}
.workspace-tabs button{font-size:.91rem;min-width:0}
.workspace-tabs button.is-active{background:#0e536a;box-shadow:none}
.teacher-quickstart{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:15px;padding:12px 15px;border:1px solid #dbe9e9;border-radius:15px;background:#fff}
.teacher-quickstart>span{font-size:.68rem;letter-spacing:.1em;font-weight:900;color:#4c7881;margin-right:5px}
.teacher-quickstart a{display:inline-flex;align-items:center;min-height:36px;padding:7px 11px;color:#17566b;background:#f0f6f6;border:1px solid #e4edee;border-radius:10px;text-decoration:none;font-size:.81rem;font-weight:750}
.teacher-quickstart a:hover{background:#e0f0ee}
.teacher-grid{gap:15px}
.panel{padding:clamp(18px,2.2vw,25px);border-radius:19px;box-shadow:0 2px 18px #213d4d07;border-color:#e0e9ed}
.panel-heading{gap:11px}
.panel-heading h3{font-size:clamp(1.1rem,1.7vw,1.38rem);letter-spacing:-.025em}
.form-grid input,.form-grid select,.form-grid textarea{background:#fff;border-color:#ccdfe1;min-height:44px}
.btn.btn-primary{background:#0d536a;border-color:#0d536a}
.btn.btn-primary:hover{background:#0b3e56}
.btn.btn-secondary{color:#14536d;border-color:#c5dae1;background:#f5f9fa}
.btn:disabled{cursor:not-allowed;opacity:.5}
.panel-bulk{grid-column:1/-1;border-color:#bcdddc;background:linear-gradient(125deg,#fff 0%,#fff 65%,#f7fcfb 100%)}
.panel-bulk .panel-number{background:#def2ee;color:#096e74}
.bulk-workflow{display:grid;gap:19px;grid-template-columns:minmax(0,1.12fr) minmax(260px,.88fr);align-items:start}
#bulk-students-form{gap:15px}
.bulk-choice{border:0;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}
.bulk-choice legend{font-size:.85rem;font-weight:800;color:#38556b;margin-bottom:9px}
.bulk-choice label{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:9px 11px;border:1px solid #d7e6e8;border-radius:10px;background:#f8fbfb;font-weight:700;font-size:12px;cursor:pointer}
.bulk-choice input{width:17px;height:17px;margin:0;accent-color:#0d6d72;min-height:auto}
.bulk-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bulk-csv-settings{display:grid;gap:9px}
.bulk-csv-settings input[type="file"]{padding:9px;width:100%;font-size:12px}
.bulk-csv-settings a{font-size:12px;color:#096277;font-weight:800}
.bulk-preview{background:#f4f8f9;border:1px dashed #b5d4d5;border-radius:14px;padding:15px}
.bulk-preview-head{display:flex;justify-content:space-between;gap:15px;color:#183d53}
.bulk-preview-head span{font-size:12px;color:#51717e}
.bulk-preview p{margin:7px 0 10px!important}
.bulk-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:180px;overflow:auto}
.bulk-chip{background:#fff;border:1px solid #d8e6e9;border-radius:7px;padding:4px 8px;font-size:12px;font-weight:750;color:#1f5266}
.bulk-chip.is-existing{background:#fff8e8;border-color:#f0d9a3;color:#76561f}
.bulk-privacy{margin:0;color:#526f7e;font-size:12px;line-height:1.6}
.bulk-buttons{display:flex;gap:9px;flex-wrap:wrap}
.bulk-buttons .btn{flex:1 1 190px;min-height:44px}
.bulk-results{background:#f9fcfb;border:1px solid #d1e4e4;border-radius:16px;padding:17px;min-height:230px}
.bulk-results-header{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bulk-results h4{margin:0;font-size:1.1rem}
.bulk-result-list{max-height:285px;overflow:auto;margin:14px 0}
.bulk-result-row{display:grid;grid-template-columns:1fr auto;gap:2px 9px;padding:9px 0;border-bottom:1px solid #e4eeee;font-size:12px}
.bulk-result-row strong{color:#1b435a}
.bulk-result-row small{grid-column:1/-1;color:#9f523a}
.bulk-status{font-weight:760;color:#3a6575}
.bulk-created{color:#0c7557}.bulk-failed,.bulk-unconfirmed{color:#a04c2d}
.bulk-results .micro{font-size:12px;color:#5a7480}
.teacher-guide-cta{margin:16px 0 10px;padding:19px 23px;border:1px solid #d3e4e6;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px}
.teacher-guide-cta p{margin:4px 0 0;font-size:13px;color:#577585}
.teacher-guide-cta a{color:#0e586d;font-weight:850;font-size:13px;white-space:nowrap}
@media(max-width:900px){.bulk-workflow{grid-template-columns:1fr}.bulk-results{min-height:auto}}
@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-art{display:none}.topbar-inner{align-items:start}.topbar nav{gap:2px}}
@media(max-width:620px){.frame{width:calc(100% - 24px)}.hero{border-radius:19px}.hero-content{padding:26px!important}.hero-chips span{font-size:11px}.teacher-quickstart>span{width:100%}.bulk-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.bulk-fields label:first-child{grid-column:1/-1}.teacher-guide-cta{align-items:start;flex-direction:column}.workspace-tabs button{flex:1 1 44%;font-size:12px}.topbar nav{overflow-x:auto;max-width:100%}.topbar nav a{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.tab-content{animation:none}}
#bulk-print-sheet{display:none}
@media print{
  body.printing-bulk{background:#fff!important}
  body.printing-bulk> :not(#bulk-print-sheet){display:none!important}
  body.printing-bulk #bulk-print-sheet{display:block!important;font-family:Arial,sans-serif;color:#111}
  body.printing-bulk #bulk-print-sheet h1{font-size:19pt;margin:0}
  body.printing-bulk #bulk-print-sheet>p{margin:5px 0 18px;font-size:11pt}
  body.printing-bulk .print-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  body.printing-bulk .print-card{border:1px dashed #777;border-radius:7px;padding:12px;break-inside:avoid;page-break-inside:avoid;font-size:10pt}
  body.printing-bulk .print-card>strong{display:block;margin-bottom:8px}
  body.printing-bulk .print-card>div{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #ddd;padding:7px 0}
  body.printing-bulk .print-card span{color:#555} body.printing-bulk .print-card b{font-size:11pt}
  body.printing-bulk .print-card small{display:block;margin-top:8px}
  @page{size:A4;margin:12mm}
}

.bulk-side{border-radius:17px;background:#f2f8f7;border:1px solid #d5e7e3;padding:25px;min-height:100%;display:grid;align-content:start;gap:11px}
.bulk-side-kicker{font-size:10px;letter-spacing:.11em;color:#0c777d;font-weight:900}
.bulk-side h4{font-size:clamp(1.25rem,2.3vw,1.65rem);line-height:1.26;color:#123d50;letter-spacing:-.035em;margin:0}
.bulk-side ol{list-style:none;margin:7px 0 0;padding:0;display:grid;gap:14px;counter-reset:bulksteps}
.bulk-side li{display:grid;grid-template-columns:31px 1fr;column-gap:11px;font-size:13px;color:#4e6e7c}
.bulk-side li::before{counter-increment:bulksteps;content:counter(bulksteps);grid-row:span 2;display:grid;place-items:center;background:#d5ece7;color:#0b6974;width:29px;height:29px;border-radius:9px;font-size:13px;font-weight:900}
.bulk-side li b{display:block;color:#264f5e}.bulk-side li span{line-height:1.55}
.bulk-side-foot{border-top:1px solid #cfe1df;padding-top:16px;margin-top:7px;font-size:12px;color:#50727b}
.bulk-side-foot strong{color:#0f6468}.bulk-side-foot p{margin:4px 0 0;line-height:1.65}
.bulk-side>a{font-weight:850;color:#0b6974;font-size:12px;text-decoration:none}

/* Námsbrú v26.3 · einstaklingsyfirlit kennara og innfelld Krossgátusmiðja */
.insight-panel{margin-top:18px}
.insight-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
.insight-filters label{display:grid;gap:7px;font-size:13px;font-weight:850;color:#315f70}
.insight-filters select{width:100%;min-height:45px;padding:11px;border:1px solid #cddfe7;background:#fff;border-radius:12px;font:inherit;color:#143e58}
.insight-summary{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:16px 0}
.insight-summary strong{font-size:23px;color:#0d4866}
.insight-chip{border-radius:12px;border:1px solid #d9e9ed;padding:10px 13px;background:#f8fcfc;font-size:12px;color:#466a7b}
.insight-task{border:1px solid #ddeaf1;background:#fff;border-radius:14px;padding:15px;margin:10px 0}
.insight-task h4{margin:3px 0;font-size:16px;color:#0d4562}
.insight-task p{margin:3px 0 8px;font-size:13px;color:#5c798b}
.insight-task-header{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.insight-metrics{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.insight-metrics span{padding:5px 9px;border-radius:9px;background:#e8f6f5;color:#175e5d;font-size:12px;font-weight:700}
.insight-note{font-size:12px!important;color:#5e7587!important}
.crossword-overlay{position:fixed;inset:0;background:#0a2537e0;z-index:1000;padding:12px}
.crossword-overlay[hidden]{display:none!important}
.crossword-shell{width:min(1580px,100%);height:100%;min-height:0;margin:0 auto;display:flex;flex-direction:column;overflow:hidden;border-radius:16px;background:white;box-shadow:0 10px 48px #001b2e80}
.crossword-toolbar{min-height:68px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f2fafb;border-bottom:1px solid #cce6ec;padding:11px 16px}
.crossword-toolbar strong{display:block;font-weight:900;font-size:15px;color:#10465e}
.crossword-toolbar span{display:block;font-size:12px;color:#487386}
.crossword-toolbar .btn{font-size:12px}
/* All three learning activities fill the remaining height under the toolbar.
   Without these rules, the math iframe keeps its browser-default 150px height. */
#crossword-frame,#activity-frame,#math-frame{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  flex:1 1 0;
  border:0;
  background:#f2f7f9;
}
body.crossword-is-open{overflow:hidden}
@media(max-width:680px){.insight-filters{grid-template-columns:1fr}.crossword-overlay{padding:0}.crossword-shell{border-radius:0}.crossword-toolbar{gap:8px;align-items:flex-start;flex-direction:column;padding:10px}.crossword-toolbar .btn{align-self:stretch;min-height:38px}}

.insight-history{border-top:1px solid #e0edf0;margin-top:10px;padding-top:8px;font-size:13px}
.insight-history summary{color:#0b5872;cursor:pointer;font-weight:800}
.insight-history-list{display:grid;gap:7px;margin-top:9px}
.insight-history-list>div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:8px 10px;background:#f5fafc;border-radius:9px}
.insight-history-list strong{font-size:12px}.insight-history-list span{font-size:12px;color:#56768b}
@media(max-width:680px){.insight-history-list>div{flex-direction:column;gap:2px}}
