:root{font-family:Arial,sans-serif;color:#182638;background:#f0f4f8;font-size:16px}*{box-sizing:border-box}body{margin:0}header{background:#132b43;color:white;padding:28px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px}h1{font-size:28px;margin:8px 0 0}.eyebrow{font-size:11px;letter-spacing:2px;color:#a9cad9}main{max-width:1700px;margin:26px auto;padding:0 24px}.card{background:white;border:1px solid #dde4eb;border-radius:14px;box-shadow:0 3px 12px #213a5010}.narrow{max-width:480px;margin:45px auto;padding:28px}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:bold}input,select{font:inherit;padding:12px;border:1px solid #bac8d6;border-radius:8px;min-height:44px;background:white;color:#182638}form{display:grid;gap:18px}button{font:inherit;font-size:14px;min-height:44px;padding:10px 14px;background:#edf2f7;color:#193650;border:1px solid #c8d6e2;border-radius:8px;cursor:pointer}button:hover{filter:brightness(.95)}button:disabled{opacity:.4;cursor:default}.primary{background:#183e62;color:white;border-color:#183e62;font-weight:bold}.danger{color:#b52b32}.toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:18px}.toolbar select{min-width:190px}.heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:26px 0 16px}.heading h2{margin:0}.heading p,.hint{color:#63748a;font-size:14px}.heading button{margin:4px}.student{display:grid;grid-template-columns:minmax(200px,1.1fr) 210px 135px 110px minmax(160px,1fr);align-items:center;gap:18px;padding:18px;margin:12px 0}.name{display:flex;align-items:center;gap:12px}.number{color:#7c8da0;font-size:14px}h3{font-size:34px;margin:0 0 10px}.small-actions{display:flex;gap:4px;flex-wrap:wrap}.small-actions button{font-size:11px;padding:4px 7px;min-height:32px}.points{display:flex;gap:8px}.counter{width:101px;padding:9px;border-radius:10px}.counter>div{display:flex;align-items:center;justify-content:space-between;margin-top:7px}.counter button{min-height:36px;padding:3px 8px;background:#ffffff80;border:0;font-size:22px}.counter strong{font-size:23px}.positive{background:#d9f3d0;color:#225c25}.negative{background:#ffe0d5;color:#a42c21}.totals{display:grid;grid-template-columns:1fr 1fr;gap:5px}.total{padding:10px 6px;text-align:center;border-radius:8px}.total strong{display:block;font-size:25px;margin-top:5px}.totals>button{grid-column:span 2;min-height:28px;font-size:11px;padding:5px}.convert{display:grid;gap:5px}.convert button{font-size:12px;padding:7px;min-height:37px}.grade5{background:#98db78;color:#193e17;border-color:#98db78}.grade6{background:#34771b;color:white;border-color:#34771b}.grade1{background:#d63232;color:white;border-color:#d63232}.grades>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.grade{min-width:68px;min-height:62px;padding:6px}.grade small{display:block;font-size:10px}.grade strong{display:block;font-size:26px;margin-top:4px}.no-grades{font-size:13px;color:#98a6b7;padding:15px 0}small{font-size:11px}#error{color:#af2222;white-space:pre-line}details{margin-top:24px;font-size:14px}summary{cursor:pointer}details p{line-height:1.5}.empty{padding:30px;text-align:center;color:#63748a}[hidden]{display:none!important}.busy #panel button,.busy #panel input,.busy #panel select{pointer-events:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #409ada;outline-offset:2px}@media(max-width:1100px){.student{grid-template-columns:1fr 210px 135px}.convert{grid-column:2;grid-row:2;display:flex}.grades{grid-column:1/-1;border-top:1px solid #e3eaf0;padding-top:10px}}@media(max-width:620px){header{padding:20px}h1{font-size:23px}main{padding:0 12px}.heading{display:block}.student{grid-template-columns:1fr 135px;gap:12px}.name{grid-column:1/-1}.points{grid-column:1}.totals{grid-column:2}.convert{grid-column:1/-1;grid-row:auto;display:flex}.convert button{flex:1}.toolbar{padding:12px}.toolbar label{flex:1}.toolbar button{flex:1}.toolbar select{min-width:140px}.narrow{padding:20px;margin-top:20px}}
@media(max-width:420px){.student{grid-template-columns:minmax(0,1fr)}.totals{grid-column:1;max-width:210px}.toolbar select{min-width:0;width:100%}.toolbar label{min-width:130px}}
dialog{width:min(600px,calc(100% - 24px));max-height:90vh;overflow:auto;border:1px solid #c8d6e2;border-radius:14px;padding:24px;color:#182638}dialog::backdrop{background:#102b43aa}dialog p{font-size:14px;line-height:1.5}dialog table{width:100%;border-collapse:collapse;margin:14px 0}dialog th,dialog td{text-align:left;border-bottom:1px solid #dde4eb;padding:9px;font-size:14px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.number{min-width:24px;font-weight:bold}
/* Odstępy między sekcjami wiersza ucznia */
@media (min-width: 1101px) {
  #students .student {
    grid-template-columns:
      300px
      210px
      135px
      110px
      minmax(160px, 1fr) !important;
    column-gap: 50px !important;
  }
}
.total {
  border: 5px solid black;
}