:root{color-scheme:dark;font-family:system-ui,sans-serif;color:#eaf7f4;background:#081c23}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top right,#164c4b,transparent 65%)}main{max-width:1180px;margin:auto;padding:28px 24px 80px}nav,.inline{display:flex;gap:20px;align-items:center;flex-wrap:wrap}a{color:#70e9c8}h1{font-size:clamp(32px,6vw,54px);letter-spacing:-1.5px;margin:20px 0}h2{font-size:23px;margin:0 0 16px}.eyebrow{letter-spacing:2px;font-size:12px;color:#70e9c8;margin-top:34px}p{line-height:1.7;color:#bdd5d4}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.card{background:#102b32;border:1px solid #315059;border-radius:20px;padding:26px;margin:20px 0;min-width:0}label{display:block;margin:14px 0;font-size:14px}input,select{display:block;width:100%;font:inherit;padding:12px;margin-top:7px;border:1px solid #537278;border-radius:9px;background:#081e27;color:#fff;min-height:44px}input[type=checkbox]{width:22px;min-height:22px;display:inline-block}button,.button{display:inline-block;font:inherit;font-weight:650;padding:12px 18px;border:1px solid #74e6cb;border-radius:10px;background:#74e6cb;color:#092a30;cursor:pointer;text-decoration:none;min-height:44px;margin:5px 0}.secondary{background:transparent;color:#b5e9df;border-color:#52716f}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffdf95;outline-offset:3px}.error{color:#ffb8ac}.secret{padding:20px;border:2px solid #ffdf95;border-radius:12px;color:#ffdf95;overflow-wrap:anywhere}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid #36535b}th{color:#7de0c6;font-size:13px}.inline{margin:12px 0}.student-tools{padding:20px 0;border-top:1px solid #36535b}details{margin-top:25px}summary{cursor:pointer;padding:12px 0}small{color:#b3c8ce}form>button{margin-right:7px}code{overflow-wrap:anywhere}@media(max-width:600px){main{padding:22px 14px}.card{padding:20px}.grid{grid-template-columns:1fr}nav{gap:14px}}

/* v1.2: códigos visibles y lista de alumnos */
.muted{color:#8fb0b2;font-size:14px}.pill{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;letter-spacing:.5px;padding:6px 10px;border-radius:8px;background:#0a2a2f;border:1px solid #2f6d64;color:#b9ffe9}.pill.big{font-size:20px;padding:10px 14px}
.copy{min-height:34px;padding:6px 12px;font-size:13px;border-radius:8px;margin:0 0 0 8px;background:#173c42;color:#9ff3dc;border-color:#3d7f74}.copy.done{background:#74e6cb;color:#092a30}.small{min-height:34px;padding:6px 12px;font-size:13px;margin:0}
.code-list{display:flex;flex-direction:column;gap:10px}.code-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 14px;border:1px solid #2d4d55;border-radius:12px;background:#0c242b}.code-name{font-weight:650;min-width:90px}.row-form{margin-left:auto}
table.students td{vertical-align:middle}table.students tbody tr:hover{background:#12343b}.key-cell{display:inline-flex;align-items:center}
.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.3px}.badge.active{background:#174d3f;color:#8ff5cf}.badge.pending{background:#4d4217;color:#ffe08f}.badge.inactive{background:#3b2b33;color:#ffb8c6}
.filter{max-width:280px}.my-key{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0;padding:16px;border:1px dashed #3d7f74;border-radius:14px}.my-key span{font-weight:650;width:100%}.my-key small{width:100%}
