*{box-sizing:border-box}body{margin:0;background:#0b1220;color:#e5eaf3;font:14px system-ui,-apple-system,Segoe UI,sans-serif}button,input,select{font:inherit}button{background:#26354d;border:1px solid #3a4d69;border-radius:6px;padding:9px 12px;color:#e5eaf3;cursor:pointer}button:hover{background:#354968}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:#2563eb;border-color:#2563eb;color:#fff}.primary:hover{background:#1d4ed8}input,select{padding:10px;background:#172237;color:#fff;border:1px solid #40506a;border-radius:6px;width:100%}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.loginCard{width:min(440px,100%);background:#151f30;padding:36px;border:1px solid #34445f;border-radius:14px}.loginCard h1{margin:0 0 8px}.loginCard p,.loginCard small,.welcome p{color:#aebbd0;line-height:1.6}.loginCard form{display:grid;gap:12px;margin:24px 0}.loginCard label{font-weight:600}.shell{height:100vh;display:flex;flex-direction:column}header{height:58px;flex-shrink:0;display:flex;align-items:center;gap:26px;padding:0 18px;background:#111b2c;border-bottom:1px solid #34445f}header b{font-size:18px;margin-right:auto}header span{color:#b5c2d6}.welcome{max-width:760px;margin:8vh auto;padding:32px;background:#151f30;border:1px solid #34445f;border-radius:12px}.toolbar{display:flex;flex-wrap:wrap;gap:16px;background:#17253a;padding:9px 16px;color:#b7c9e5;font-size:12px}.warning{background:#4b3519;border-bottom:1px solid #aa792c;color:#ffe6ad;padding:9px 16px;display:flex;justify-content:space-between;align-items:center}.warning button{padding:4px 8px}.error{color:#ff9292;padding:8px}.workspace{flex:1;display:grid;grid-template-columns:180px minmax(280px,1.1fr) minmax(280px,1fr);min-height:0}.workspace aside{padding:12px;background:#111b2c;border-right:1px solid #34445f;display:flex;flex-direction:column;gap:8px;overflow:auto}.workspace aside h3{margin:10px 0}.workspace aside button{text-align:left}.workspace aside .active,nav .active{background:#1e4f9b}.workspace aside small{color:#99a9c0;line-height:1.5}.upload{border:1px solid #3a4d69;border-radius:6px;padding:9px 12px;cursor:pointer}.upload input{display:none}.editor{min-height:0;display:flex;flex-direction:column;overflow:hidden}.paneTitle{padding:12px;background:#172237;border-bottom:1px solid #34445f;display:flex;justify-content:space-between}.paneTitle span{font-size:12px;color:#94a3b8}.right{min-width:0;display:flex;flex-direction:column;border-left:1px solid #34445f}.right nav{display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:#172237}.right nav button{padding:6px 9px;text-transform:capitalize;font-size:12px}.paneBody{flex:1;min-height:0;overflow:auto;padding:12px}.paneBody iframe{width:100%;height:95%;background:#fff;border:0;border-radius:6px}.paneBody a{color:#8bb7ff}.pass{color:#76e6ae}.fail{color:#ff9a9a}.event{border-bottom:1px solid #334155;padding:10px 0}.event small,.event span{margin-left:10px;color:#9aabc5}.event pre{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;color:#a8c6e7;max-height:170px;overflow:auto}footer{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#111b2c;border-top:1px solid #34445f}footer span{margin-left:auto;color:#9aabc5}.admin{overflow:auto;padding:28px}.admin p{color:#aab8ca}.stats{display:flex;gap:16px;margin:20px 0}.stats div{padding:20px;background:#172237;border-radius:8px;min-width:150px}.stats strong{display:block;font-size:26px}table{border-collapse:collapse;width:100%;background:#172237}th,td{text-align:left;padding:12px;border-bottom:1px solid #34445f}.detail{margin-top:26px;background:#172237;padding:20px;border-radius:10px}.row{display:flex;align-items:center;justify-content:space-between}.timeline{max-height:500px;overflow:auto}@media(max-width:900px){.workspace{grid-template-columns:130px 1fr}.right{grid-column:1/-1;min-height:300px}.shell{height:auto;min-height:100vh}.editor{height:420px}header{gap:10px;flex-wrap:wrap;height:auto;padding:10px}footer{flex-wrap:wrap}}
